您希望如何在Vim中的缓冲区之间切换?

时间:2021-01-31 18:17:12

I've tried MiniBufExplorer, but I usually end up with several windows showing it or close it altogether. What I'd like is something like LustyJuggler with incremental search, the way I switch between buffers in Emacs. Surely there is a script like this?

我尝试过MiniBufExplorer,但我通常会在几个窗口中显示它,或者关闭它。我想要的是类似于lusty杂耍的增量搜索,我在Emacs中的缓冲区之间切换的方式。肯定有这样的剧本吗?

16 个解决方案

#1


23  

I have been using Wincent Colaiuta's Command-T vim plugin for a couple months now. Wincent wrote the parts of it that need to be fast in C, and I must say that it is! And, I think its file pattern matching logic is even better than Textmate's Command-T. Check out the screencast.

我已经使用Wincent Colaiuta的Command-T vim插件几个月了。Wincent在C语言中写下了需要快的部分,我必须说它是!而且,我认为它的文件模式匹配逻辑甚至比Textmate的命令t更好。查看视频。

The Command-T plug-in for VIM provides an extremely fast, intuitive mechanism for opening files with a minimal number of keystrokes. It's named "Command-T" because it is inspired by the "Go to File" window bound to Command-T in TextMate.

VIM的Command-T插件提供了一种非常快速、直观的机制,可以用最少的按键打开文件。它被命名为“Command-T”,因为它受到TextMate中绑定到Command-T的“Go to File”窗口的启发。

Files are selected by typing characters that appear in their paths, and are ordered by an algorithm which knows that characters that appear in certain locations (for example, immediately after a path separator) should be given more weight.

文件是通过在其路径中出现的字符来选择的,并由一个算法命令,该算法知道在某些位置出现的字符(例如,在路径分隔符后立即出现的字符)应该被赋予更多的权重。

Easier buffer switching contains many useful tips. I have adapted the following to my .vimrc, which does buffer-name auto-completion, maps the most useful buffer-switching commands to my <Leader> and left-side home row keys, and shows the current buffer number in the status line:

更容易的缓冲区切换包含许多有用的技巧。我调整了下面的.vimrc,它可以自动完成缓冲名称,将最有用的缓冲切换命令映射到我的 和左侧的home行键,并在状态行中显示当前的缓冲区号:

"" Tab triggers buffer-name auto-completion
set wildchar=<Tab> wildmenu wildmode=full

let mapleader = ","

map <Leader>t :CommandT<Return>
map <Leader>a :bprev<Return>
map <Leader>s :bnext<Return>
map <Leader>d :bd<Return>
map <Leader>f :b 

"" Show the buffer number in the status line.
set laststatus=2 statusline=%02n:%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P

I also use MiniBufExplorer, which provides a compact listing of each listed buffer in its own horizontal split up top.

我还使用了MiniBufExplorer,它在自己的水平分割顶部提供了每个列出的缓冲区的紧凑列表。

#2


73  

I used to use a combination of tabs and multiple gvim instances, keeping groups of related files as tabs in each instance. So long as I didn't end up with too many tabs in one instance, the tab bar shows you the name of each file you're editing at a glance.

我曾经使用选项卡和多个gvim实例的组合,在每个实例中保持相关文件组作为选项卡。只要我没有在一个实例中使用太多的选项卡,选项卡栏就会显示您正在编辑的每个文件的名称。

Then I read a post by Jamis Buck on how he switched from TextMate back to vim, and learned some great tricks:

然后我读了Jamis Buck关于他如何从TextMate回到vim的文章,并学到了一些很棒的技巧:

  • Ctrl-w s and Ctrl-w v to split the current window
  • 按Ctrl-w和Ctrl-w v分隔当前窗口。
  • Ctrl-6 to switch back and forth between two buffers in the same window.
  • Ctrl-6在同一窗口的两个缓冲区之间来回切换。
  • the awesome fuzzyfinder.vim which gives you autocompleting search of files in your current directory or of buffers you currently have open
  • 很棒的fuzzyfinder。vim允许您自动完成对当前目录中的文件或当前打开的缓冲区的搜索
  • Jamis' own fuzzy_file_finder and fuzzyfinder_textmate, which slightly modify how fuzzyfinder works to behave more like a similar feature in TextMate (as far as I can tell, the difference is that it matches anywhere in the filename instead of only from the start). Watch this video to see it in action.
  • Jamis'自己的fuzzy_file_finder和fuzzyfinder_textmate,它稍微修改了fuzzyfinder的工作方式,使其在TextMate中更像一个类似的特性(据我所知,区别在于它与文件名中的任何位置匹配,而不是仅从开始的位置)。观看这个视频,看它在行动。

Now I just have one gvim instance, maximised, and split it into multiple windows so I can see several files at once. I bound Ctrl-F to fuzzyfinder_textmate, so now if I type (say) Ctrl-F mod/usob it opens up app/models/user_observer.rb. I almost never bother with tabs any more.

现在我只有一个gvim实例,最大化,并将它分割成多个窗口,这样我可以同时看到几个文件。我将Ctrl-F绑定到fuzzyfinder_textmate,所以现在如果我键入Ctrl-F mod/usob,它将打开app/models/user_observer.rb。我几乎不再为标签操心了。

Update 2010/08/07

更新2010/08/07

While fuzzyfinder_textmate remains awesome, as Casey points out in the comments, it's no longer maintained. Also, it (and/or fuzzyfinder.vim) gets a bit slow and unstable when working with large projects (lots of directories or files), so I've been looking for an alternative.

正如凯西在评论中指出的那样,fuzzyfinder_textmate仍然非常棒,但是它已经不再被维护了。此外,在处理大型项目(大量目录或文件)时,它(和/或模糊查找器.vim)会变得有点慢和不稳定,因此我一直在寻找一种替代方法。

Fortunately, there seems to be a very nice alternative in the form of Wincent Colaiuta's Command-T plugin. This has very similar (if not slightly better) behaviour to fuzzyfinder_textmate, but is noticeably faster; it also has nice features like being able to open the found file in a split or vertical split. Thanks (and upvotes!) to David Rivers for pointing to it.

幸运的是,Wincent Colaiuta的Command-T插件似乎有一个很好的替代方案。它的行为与fuzzyfinder_textmate非常相似(如果不是稍微好一点的话),但明显更快;它还有一些很好的特性,比如可以在分割或垂直分割中打开找到的文件。感谢大卫·里弗斯的指点。

#3


33  

I use the basics - ':ls' + ':bn'/':bp' + ':b <part-of-name>'

我使用最基本的——“:ls”+“:bn”/”:bp ' + ':b < part-of-name > '

#4


31  

I like "ctrl-w s" and "ctlr-w v" to split the window. Then I map the movement keys (h, j, k, l) with ctrl held down to move between the split windows:

我喜欢按ctrl-w s和ctlr-w v来拆分窗口。然后按下ctrl将移动键(h, j, k, l)映射到分割窗口之间:

" Map ctrl-movement keys to window switching
map <C-k> <C-w><Up>
map <C-j> <C-w><Down>
map <C-l> <C-w><Right>
map <C-h> <C-w><Left>

Having to move my hand over to the arrow keys is annoying.

不得不把我的手移到箭头键上是很烦人的。

Next, I set up ctlr-tab to switch between buffers in the current window (like a lot of other environments):

接下来,我设置了ctlr-tab,在当前窗口的缓冲区之间进行切换(与许多其他环境一样):

" Switch to alternate file
map <C-Tab> :bnext<cr>
map <C-S-Tab> :bprevious<cr>

These have worked pretty well for me over the last several years although vim always has more secrets than you can know.

在过去的几年里,这些方法对我来说非常有效,尽管vim总是有很多你无法知道的秘密。

#5


17  

nmap <Leader>bb :ls<CR>:buffer<Space>

and nobody mentioned nice plugin ctrlp.vim. Using this plugin you can search buffer by name.

没有人提到漂亮的ctrl - p.vim插件。使用这个插件,您可以按名称搜索buffer。

#6


14  

I use

我使用

CTRL-J for next buffer

CTRL-J下缓冲

CTRL-K for previous buffer

CTRL-K之前缓冲

CTRL-L for next tab

ctrl - l下标签

CTRL-H for previous tab

CTRL-H为以前的标签

Here is the .vimrc configuration:

以下是.vimrc配置:

map <C-J> :bnext<CR>
map <C-K> :bprev<CR>
map <C-L> :tabn<CR>
map <C-H> :tabp<CR>

See http://syskall.com/my-biggest-vim-productivity-boost/

参见http://syskall.com/my-biggest-vim-productivity-boost/

#7


6  

I've recently gone more minimalistic.

我最近变得更简约了。

To cycle buffers I use ]b and [b from unimpaired: https://github.com/tpope/vim-unimpaired

为了循环缓冲区,我使用]b和[b来自未受损的:https://github.com/tpope/vim

To jump straight to an open buffer just use Vim's tab completion with :b. A few letters is enough to get to any open buffer with a tab or two.

要直接跳转到打开的缓冲区,只需使用Vim的选项卡完成:b。几个字母就足够用一两个标签到达任何打开的缓冲区了。

Similarly to open buffers I use :e with relative paths and tab complete.

类似于我使用的open buffer:e具有相对路径和tab complete。

I also use :ls occasionally to see what buffers I have open (and to check their modified status).

我还使用:ls偶尔查看我打开了哪些缓冲区(并检查它们的修改状态)。

To get rid of a buffer I use :bw to wipe the buffer. I usually make a temporary split and change buffers to preserve my layout though since :bw also closes the active window.

为了删除缓冲区,我使用:bw擦除缓冲区。我通常会做一个临时的分割和更改缓冲区来保存我的布局,不过因为bw也关闭了活动窗口。

All the minibuf things I tried just ended up annoying me, and I don't want some smart-matching thing opening random files for me. If I really need to browse for something I use NERDtree (:e .).

我试过的所有小玩意最后都让我很讨厌,我不想让一些智能匹配的东西为我打开随机文件。如果我真的需要浏览一些我使用NERDtree (:e .)的东西。

IDK, Lately I also dropped Yankring (because it screws up xp) and started using registers, and I recently decided the f/t movements are the greatest thing ever...

IDK,最近我也放弃了Yankring(因为它搞砸了xp),开始使用寄存器,最近我决定f/t的运动是有史以来最伟大的事情……

#8


5  

imap <A-1> <Esc>:tabn 1<CR>i
imap <A-2> <Esc>:tabn 2<CR>i
imap <A-3> <Esc>:tabn 3<CR>i
imap <A-4> <Esc>:tabn 4<CR>i
imap <A-5> <Esc>:tabn 5<CR>i
imap <A-6> <Esc>:tabn 6<CR>i
imap <A-7> <Esc>:tabn 7<CR>i
imap <A-8> <Esc>:tabn 8<CR>i
imap <A-9> <Esc>:tabn 9<CR>i

map <A-1> :tabn 1<CR>
map <A-2> :tabn 2<CR>
map <A-3> :tabn 3<CR>
map <A-4> :tabn 4<CR>
map <A-5> :tabn 5<CR>
map <A-6> :tabn 6<CR>
map <A-7> :tabn 7<CR>
map <A-8> :tabn 8<CR>
map <A-9> :tabn 9<CR>

#9


2  

The excellent Buffer Explorer, the be has gotten to be such strong muscle memory that I find myself wishing I could use it in other applications. I find it to be extremely fast when actively editing more than two files.

优秀的缓冲区资源管理器,be已经成为如此强大的肌肉记忆体,我发现我希望我可以在其他应用程序中使用它。当我主动编辑两个以上的文件时,我发现它非常快。

#10


2  

I've spent quite a while building my .vimrc to work with this HTML::Mason project I've been on for four years, so I have an odd mix of tabs and split windows. For your viewing enjoyment:

我花了很长时间构建我的.vimrc来使用这个HTML::Mason项目,我已经做了四年了,所以我有奇怪的选项卡和分割窗口的混合。你观赏的乐趣:

map ;o :Sex <CR>
map <C-J> <C-W>j
map <C-K> <C-W>k
map <C-l> <C-W>l
map <C-h> <C-W>h
map ;] :tabnext<CR>
map ;[ :tabprev<CR>
map <C-t> :tabe +"browse ."<CR>
map <C-O> :NERDTreeToggle ~/curr/trunk/<CR>

#11


2  

I use tselectbuffer. It's really fast and unlike bufexplorer doesn't take space in your window. It also has a incremental search.I tried minibufexplorer and I found the navigation in the buffer a bit difficult.

我使用tselectbuffer。它非常快,不像bufexplorer不占用你的窗口空间。它还有一个增量搜索。我尝试了minibufexplorer,发现缓冲区中的导航有点困难。

#12


2  

To list and switch between buffers I use:

列出和切换我使用的缓冲区:

nnoremap <Leader>l :ls<CR>:b<space>

To switch between buffers:

缓冲区之间的切换:

map <Leader>n :bn<CR>
map <Leader>p :bp<CR>

#13


2  

I have mapped <S-J> and <S-K> to :bp and :bn, although I admit I don't use it as the number of files is greater than 10. I have then mapped <C-J> and <C-K> to Gnome Terminal's previous and next tabs, and I usually run 4 instances of vim for each of the 4 different projects I work on. I still really wish next and previous buffer would go to the history of buffers I have been working on, and not the order int he buffer list.

我已经将 映射到:bp和:bn,尽管我承认我没有使用它,因为文件的数量大于10。然后,我将 映射到Gnome Terminal的上一个和下一个选项卡,我通常为我所工作的4个不同的项目运行4个vim实例。我仍然希望next和previous buffer都能进入我一直在处理的缓冲区的历史记录,而不是顺序的int he缓冲列表。

#14


2  

I use tselectbuffer. It's really fast and unlike bufexplorer doesn't take space in your window. It also has a incremental search.I tried minibufexplorer and I found the navigation in the buffer a bit difficult.

我使用tselectbuffer。它非常快,不像bufexplorer不占用你的窗口空间。它还有一个增量搜索。我尝试了minibufexplorer,发现缓冲区中的导航有点困难。

#15


0  

i use simple :vsplit with ^W+w/^W+r and :tabnew with Ctrl+Alt+PgUp/PgDown key combinations.

我使用简单:vsplit于W + W / W ^ ^ + r和:tabnew Ctrl + Alt + PgUp / PgDown组合键。

#16


0  

When there are several buffers open in a Vim session, it can become difficult to keep track of the buffers and their respective buffer numbers. If this is the case, switching to a different file can be made easier using a simple map:

当Vim会话中有多个缓冲区打开时,就很难跟踪缓冲区和它们各自的缓冲区编号。如果是这样的话,使用简单的地图切换到不同的文件会更容易:

:nnoremap (F5) :buffers(CR):buffer(Space)

:nnoremap(F5):缓冲区(CR):缓冲区(空间)

vim.wikia.com

vim.wikia.com

#1


23  

I have been using Wincent Colaiuta's Command-T vim plugin for a couple months now. Wincent wrote the parts of it that need to be fast in C, and I must say that it is! And, I think its file pattern matching logic is even better than Textmate's Command-T. Check out the screencast.

我已经使用Wincent Colaiuta的Command-T vim插件几个月了。Wincent在C语言中写下了需要快的部分,我必须说它是!而且,我认为它的文件模式匹配逻辑甚至比Textmate的命令t更好。查看视频。

The Command-T plug-in for VIM provides an extremely fast, intuitive mechanism for opening files with a minimal number of keystrokes. It's named "Command-T" because it is inspired by the "Go to File" window bound to Command-T in TextMate.

VIM的Command-T插件提供了一种非常快速、直观的机制,可以用最少的按键打开文件。它被命名为“Command-T”,因为它受到TextMate中绑定到Command-T的“Go to File”窗口的启发。

Files are selected by typing characters that appear in their paths, and are ordered by an algorithm which knows that characters that appear in certain locations (for example, immediately after a path separator) should be given more weight.

文件是通过在其路径中出现的字符来选择的,并由一个算法命令,该算法知道在某些位置出现的字符(例如,在路径分隔符后立即出现的字符)应该被赋予更多的权重。

Easier buffer switching contains many useful tips. I have adapted the following to my .vimrc, which does buffer-name auto-completion, maps the most useful buffer-switching commands to my <Leader> and left-side home row keys, and shows the current buffer number in the status line:

更容易的缓冲区切换包含许多有用的技巧。我调整了下面的.vimrc,它可以自动完成缓冲名称,将最有用的缓冲切换命令映射到我的 和左侧的home行键,并在状态行中显示当前的缓冲区号:

"" Tab triggers buffer-name auto-completion
set wildchar=<Tab> wildmenu wildmode=full

let mapleader = ","

map <Leader>t :CommandT<Return>
map <Leader>a :bprev<Return>
map <Leader>s :bnext<Return>
map <Leader>d :bd<Return>
map <Leader>f :b 

"" Show the buffer number in the status line.
set laststatus=2 statusline=%02n:%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P

I also use MiniBufExplorer, which provides a compact listing of each listed buffer in its own horizontal split up top.

我还使用了MiniBufExplorer,它在自己的水平分割顶部提供了每个列出的缓冲区的紧凑列表。

#2


73  

I used to use a combination of tabs and multiple gvim instances, keeping groups of related files as tabs in each instance. So long as I didn't end up with too many tabs in one instance, the tab bar shows you the name of each file you're editing at a glance.

我曾经使用选项卡和多个gvim实例的组合,在每个实例中保持相关文件组作为选项卡。只要我没有在一个实例中使用太多的选项卡,选项卡栏就会显示您正在编辑的每个文件的名称。

Then I read a post by Jamis Buck on how he switched from TextMate back to vim, and learned some great tricks:

然后我读了Jamis Buck关于他如何从TextMate回到vim的文章,并学到了一些很棒的技巧:

  • Ctrl-w s and Ctrl-w v to split the current window
  • 按Ctrl-w和Ctrl-w v分隔当前窗口。
  • Ctrl-6 to switch back and forth between two buffers in the same window.
  • Ctrl-6在同一窗口的两个缓冲区之间来回切换。
  • the awesome fuzzyfinder.vim which gives you autocompleting search of files in your current directory or of buffers you currently have open
  • 很棒的fuzzyfinder。vim允许您自动完成对当前目录中的文件或当前打开的缓冲区的搜索
  • Jamis' own fuzzy_file_finder and fuzzyfinder_textmate, which slightly modify how fuzzyfinder works to behave more like a similar feature in TextMate (as far as I can tell, the difference is that it matches anywhere in the filename instead of only from the start). Watch this video to see it in action.
  • Jamis'自己的fuzzy_file_finder和fuzzyfinder_textmate,它稍微修改了fuzzyfinder的工作方式,使其在TextMate中更像一个类似的特性(据我所知,区别在于它与文件名中的任何位置匹配,而不是仅从开始的位置)。观看这个视频,看它在行动。

Now I just have one gvim instance, maximised, and split it into multiple windows so I can see several files at once. I bound Ctrl-F to fuzzyfinder_textmate, so now if I type (say) Ctrl-F mod/usob it opens up app/models/user_observer.rb. I almost never bother with tabs any more.

现在我只有一个gvim实例,最大化,并将它分割成多个窗口,这样我可以同时看到几个文件。我将Ctrl-F绑定到fuzzyfinder_textmate,所以现在如果我键入Ctrl-F mod/usob,它将打开app/models/user_observer.rb。我几乎不再为标签操心了。

Update 2010/08/07

更新2010/08/07

While fuzzyfinder_textmate remains awesome, as Casey points out in the comments, it's no longer maintained. Also, it (and/or fuzzyfinder.vim) gets a bit slow and unstable when working with large projects (lots of directories or files), so I've been looking for an alternative.

正如凯西在评论中指出的那样,fuzzyfinder_textmate仍然非常棒,但是它已经不再被维护了。此外,在处理大型项目(大量目录或文件)时,它(和/或模糊查找器.vim)会变得有点慢和不稳定,因此我一直在寻找一种替代方法。

Fortunately, there seems to be a very nice alternative in the form of Wincent Colaiuta's Command-T plugin. This has very similar (if not slightly better) behaviour to fuzzyfinder_textmate, but is noticeably faster; it also has nice features like being able to open the found file in a split or vertical split. Thanks (and upvotes!) to David Rivers for pointing to it.

幸运的是,Wincent Colaiuta的Command-T插件似乎有一个很好的替代方案。它的行为与fuzzyfinder_textmate非常相似(如果不是稍微好一点的话),但明显更快;它还有一些很好的特性,比如可以在分割或垂直分割中打开找到的文件。感谢大卫·里弗斯的指点。

#3


33  

I use the basics - ':ls' + ':bn'/':bp' + ':b <part-of-name>'

我使用最基本的——“:ls”+“:bn”/”:bp ' + ':b < part-of-name > '

#4


31  

I like "ctrl-w s" and "ctlr-w v" to split the window. Then I map the movement keys (h, j, k, l) with ctrl held down to move between the split windows:

我喜欢按ctrl-w s和ctlr-w v来拆分窗口。然后按下ctrl将移动键(h, j, k, l)映射到分割窗口之间:

" Map ctrl-movement keys to window switching
map <C-k> <C-w><Up>
map <C-j> <C-w><Down>
map <C-l> <C-w><Right>
map <C-h> <C-w><Left>

Having to move my hand over to the arrow keys is annoying.

不得不把我的手移到箭头键上是很烦人的。

Next, I set up ctlr-tab to switch between buffers in the current window (like a lot of other environments):

接下来,我设置了ctlr-tab,在当前窗口的缓冲区之间进行切换(与许多其他环境一样):

" Switch to alternate file
map <C-Tab> :bnext<cr>
map <C-S-Tab> :bprevious<cr>

These have worked pretty well for me over the last several years although vim always has more secrets than you can know.

在过去的几年里,这些方法对我来说非常有效,尽管vim总是有很多你无法知道的秘密。

#5


17  

nmap <Leader>bb :ls<CR>:buffer<Space>

and nobody mentioned nice plugin ctrlp.vim. Using this plugin you can search buffer by name.

没有人提到漂亮的ctrl - p.vim插件。使用这个插件,您可以按名称搜索buffer。

#6


14  

I use

我使用

CTRL-J for next buffer

CTRL-J下缓冲

CTRL-K for previous buffer

CTRL-K之前缓冲

CTRL-L for next tab

ctrl - l下标签

CTRL-H for previous tab

CTRL-H为以前的标签

Here is the .vimrc configuration:

以下是.vimrc配置:

map <C-J> :bnext<CR>
map <C-K> :bprev<CR>
map <C-L> :tabn<CR>
map <C-H> :tabp<CR>

See http://syskall.com/my-biggest-vim-productivity-boost/

参见http://syskall.com/my-biggest-vim-productivity-boost/

#7


6  

I've recently gone more minimalistic.

我最近变得更简约了。

To cycle buffers I use ]b and [b from unimpaired: https://github.com/tpope/vim-unimpaired

为了循环缓冲区,我使用]b和[b来自未受损的:https://github.com/tpope/vim

To jump straight to an open buffer just use Vim's tab completion with :b. A few letters is enough to get to any open buffer with a tab or two.

要直接跳转到打开的缓冲区,只需使用Vim的选项卡完成:b。几个字母就足够用一两个标签到达任何打开的缓冲区了。

Similarly to open buffers I use :e with relative paths and tab complete.

类似于我使用的open buffer:e具有相对路径和tab complete。

I also use :ls occasionally to see what buffers I have open (and to check their modified status).

我还使用:ls偶尔查看我打开了哪些缓冲区(并检查它们的修改状态)。

To get rid of a buffer I use :bw to wipe the buffer. I usually make a temporary split and change buffers to preserve my layout though since :bw also closes the active window.

为了删除缓冲区,我使用:bw擦除缓冲区。我通常会做一个临时的分割和更改缓冲区来保存我的布局,不过因为bw也关闭了活动窗口。

All the minibuf things I tried just ended up annoying me, and I don't want some smart-matching thing opening random files for me. If I really need to browse for something I use NERDtree (:e .).

我试过的所有小玩意最后都让我很讨厌,我不想让一些智能匹配的东西为我打开随机文件。如果我真的需要浏览一些我使用NERDtree (:e .)的东西。

IDK, Lately I also dropped Yankring (because it screws up xp) and started using registers, and I recently decided the f/t movements are the greatest thing ever...

IDK,最近我也放弃了Yankring(因为它搞砸了xp),开始使用寄存器,最近我决定f/t的运动是有史以来最伟大的事情……

#8


5  

imap <A-1> <Esc>:tabn 1<CR>i
imap <A-2> <Esc>:tabn 2<CR>i
imap <A-3> <Esc>:tabn 3<CR>i
imap <A-4> <Esc>:tabn 4<CR>i
imap <A-5> <Esc>:tabn 5<CR>i
imap <A-6> <Esc>:tabn 6<CR>i
imap <A-7> <Esc>:tabn 7<CR>i
imap <A-8> <Esc>:tabn 8<CR>i
imap <A-9> <Esc>:tabn 9<CR>i

map <A-1> :tabn 1<CR>
map <A-2> :tabn 2<CR>
map <A-3> :tabn 3<CR>
map <A-4> :tabn 4<CR>
map <A-5> :tabn 5<CR>
map <A-6> :tabn 6<CR>
map <A-7> :tabn 7<CR>
map <A-8> :tabn 8<CR>
map <A-9> :tabn 9<CR>

#9


2  

The excellent Buffer Explorer, the be has gotten to be such strong muscle memory that I find myself wishing I could use it in other applications. I find it to be extremely fast when actively editing more than two files.

优秀的缓冲区资源管理器,be已经成为如此强大的肌肉记忆体,我发现我希望我可以在其他应用程序中使用它。当我主动编辑两个以上的文件时,我发现它非常快。

#10


2  

I've spent quite a while building my .vimrc to work with this HTML::Mason project I've been on for four years, so I have an odd mix of tabs and split windows. For your viewing enjoyment:

我花了很长时间构建我的.vimrc来使用这个HTML::Mason项目,我已经做了四年了,所以我有奇怪的选项卡和分割窗口的混合。你观赏的乐趣:

map ;o :Sex <CR>
map <C-J> <C-W>j
map <C-K> <C-W>k
map <C-l> <C-W>l
map <C-h> <C-W>h
map ;] :tabnext<CR>
map ;[ :tabprev<CR>
map <C-t> :tabe +"browse ."<CR>
map <C-O> :NERDTreeToggle ~/curr/trunk/<CR>

#11


2  

I use tselectbuffer. It's really fast and unlike bufexplorer doesn't take space in your window. It also has a incremental search.I tried minibufexplorer and I found the navigation in the buffer a bit difficult.

我使用tselectbuffer。它非常快,不像bufexplorer不占用你的窗口空间。它还有一个增量搜索。我尝试了minibufexplorer,发现缓冲区中的导航有点困难。

#12


2  

To list and switch between buffers I use:

列出和切换我使用的缓冲区:

nnoremap <Leader>l :ls<CR>:b<space>

To switch between buffers:

缓冲区之间的切换:

map <Leader>n :bn<CR>
map <Leader>p :bp<CR>

#13


2  

I have mapped <S-J> and <S-K> to :bp and :bn, although I admit I don't use it as the number of files is greater than 10. I have then mapped <C-J> and <C-K> to Gnome Terminal's previous and next tabs, and I usually run 4 instances of vim for each of the 4 different projects I work on. I still really wish next and previous buffer would go to the history of buffers I have been working on, and not the order int he buffer list.

我已经将 映射到:bp和:bn,尽管我承认我没有使用它,因为文件的数量大于10。然后,我将 映射到Gnome Terminal的上一个和下一个选项卡,我通常为我所工作的4个不同的项目运行4个vim实例。我仍然希望next和previous buffer都能进入我一直在处理的缓冲区的历史记录,而不是顺序的int he缓冲列表。

#14


2  

I use tselectbuffer. It's really fast and unlike bufexplorer doesn't take space in your window. It also has a incremental search.I tried minibufexplorer and I found the navigation in the buffer a bit difficult.

我使用tselectbuffer。它非常快,不像bufexplorer不占用你的窗口空间。它还有一个增量搜索。我尝试了minibufexplorer,发现缓冲区中的导航有点困难。

#15


0  

i use simple :vsplit with ^W+w/^W+r and :tabnew with Ctrl+Alt+PgUp/PgDown key combinations.

我使用简单:vsplit于W + W / W ^ ^ + r和:tabnew Ctrl + Alt + PgUp / PgDown组合键。

#16


0  

When there are several buffers open in a Vim session, it can become difficult to keep track of the buffers and their respective buffer numbers. If this is the case, switching to a different file can be made easier using a simple map:

当Vim会话中有多个缓冲区打开时,就很难跟踪缓冲区和它们各自的缓冲区编号。如果是这样的话,使用简单的地图切换到不同的文件会更容易:

:nnoremap (F5) :buffers(CR):buffer(Space)

:nnoremap(F5):缓冲区(CR):缓冲区(空间)

vim.wikia.com

vim.wikia.com