On Fri, Oct 21, 2011 at 11:10:45PM +0200, Ingo Karkat wrote:
> On 21-Oct-2011 22:51, LHB Jr wrote:
> 
> > -----Original Message-----
> > From: Ingo Karkat <[email protected]>
> > To: vim_dev <[email protected]>
> > Sent: Fri, Oct 21, 2011 11:02 am
> > Subject: Re: [feature request] tab with independent buffer list
> > 
> > 
> > On 21-Oct-2011 07:32, Yue Wu wrote:
> >> Hello, list,
> >>
> >> As the title, if a tab can have a buffer list independent with other
> >> tabs, then I can use tab to category the buffers, and one tab for one
> >> project.
> > 
> > This is against Vim's model, and therefore unlikely to be implemented. 
> > However,
> > you could write overloaded commands / command-completions (which commands 
> > do you
> > have in mind? :ls, :buf, :sbuf?) in Vimscript that achieve just that. (And 
> > with
> > the cmdalias plugin could even replace the built-in commands).
> > 
> > For example, I have written a custom command that :bdeletes all buffers 
> > which
> > are only visible in the current tab page, so that I can wipe an entire tab 
> > page
> > from my Vim instance.
> > 
> > Alternatively, there are several buffer-management plugins on vim.org, maybe
> > it'll help to investigate those and adapt your style of use?!
> > 
> > -- regards, ingo
> > 
> > -- 
> > 
> > I don't like this notion that a buffer group is against 'vims model' . 
> 
> If it's (further) complicating the mental model a user needs to have, it's 
> just
> unlikely to be added. Also, a lot of plugins may break because of this change.
> 
> > After a brief perusing of the vim code I noticed that at +1619
> > structs.h  the following:
> > 
> > /* Two special kinds of buffers:
> > 1620      * help buffer  - used for help files, won't use a swap file.
> > 1621      * spell buffer - used for spell info, never displayed and doesn't 
> > have a
> > 1622      *                file name.
> > 1623      */
> > 1624     int         b_help;         /* TRUE for help file buffer (when set 
> > b_p_bt
> > 1625                                    is "help") */
> > 1626 #ifdef FEAT_SPELL
> > 1627     int         b_spell;        /* TRUE for a spell file buffer, most 
> > fields
> > 1628                                    are not used!  Use the B_SPELL 
> > macro to
> > 1629                                    access b_spell without #ifdef. */
> > 
> > In short,  vim already has special groups of buffers.  Normal buffers, help
> > buffers,  and spelling buffers. 
> 
> That's an implementation detail, without much effect to the actual use. But
> right, this may mean that an implementation isn't so difficult.
> 
> > Adding a more versatile buffer 'tag' feature accessible to vimscript
> > might be worthwhile.   I would have to look at the code some more,
> > but it might not be such a challenge if already existing functionality
> > is used.
> 
> What about the 'buflisted' option: "When this option is set, the buffer shows 
> up
> in the buffer list." One could (in pure Vimscript) implement a set of autocmds
> on TabLeave/TabEnter that use setbufvar() to toggle the 'buflisted' option of
> the desired buffers, and store the buffers currently "in scope" in a tab-local
> variable. Unless I'm missing something, this would have the desired effect.

Hi, it will make things too complicated... I think the concept of tag
system for buffers that Ingo mensioned above sounds great, so I can let
one tab show only a/some tag(s) I want. It won't break any plugins if
it's default setting is to show buffers in all tags.

-- 
Regards,
Yue Wu

State Key laboratory of Natural Products and Functions
Key Laboratory of Modern Chinese Medicines
Department of Traditional Chinese Medicine
China Pharmaceutical University
No.24, Tongjia Xiang Street, Nanjing 210009, China

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui