Ⅰ. 插件描述
Tagma Buffer Manager for VimⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'jessicakmcintosh/tagmabufmgr'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'jessicakmcintosh/tagmabufmgr'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'jessicakmcintosh/tagmabufmgr'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/jessicakmcintosh/tagmabufmgr
Ⅳ. 文档说明
TagmaBufMgr.txt Buffer Manager
For Vim version 7.x.
Last Changed: Thu Jun 27 12:51 PM 2013 EDT
https://github.com/JessicaKMcIntosh/TagmaBufMgr
http://www.vim.org/scripts/script.php?script_id=3792
By Jessica K McIntosh AT Gmail...
Contents: tagmabufmgr TagmaBufMgr
Description |tagmabufmgr-description|
Installation |tagmabufmgr-installation|
Features |tagmabufmgr-features|
Commands |tagmabufmgr-commands|
Usage |tagmabufmgr-usage|
Key Mappings |tagmabufmgr-mappings|
Settings |tagmabufmgr-settings|
Color Scheme |tagmabufmgr-colors|
==============================================================================
DESCRIPTION tagmabufmgr-description
Simple Buffer Manager similar to Mini Buffer Explorer and others. The
interface and code is kept as simple as possible. Several ideas are borrowed
from Mini Buffer Explorer but all code is original.
==============================================================================
INSTALLATION tagmabufmgr-installation
Copy the files to your ~/.vim or ~/vimfiles directory.
If using a package manager like pathogen place the whole directory in the
bundle directory.
==============================================================================
FEATURES tagmabufmgr-features
Smaller code base and as little code run on updates as possible. For example
the modification check that is performed after the |CursorHold| interval tries
to bail out as fast as possible if there is no change to the modification
state.
As much information as possible is cached for each buffer. This allows some
updates to perform very few actions. Unfortunately there are rare cases where
this causes stale data to display in the Buffer Window. Using the Manager
Refresh or switching to the Manager Window clears this data.
Addition to the Right-Click PopUp menu. Menu items are added to toggle the
Manager Window, Refresh the Manager Window and switch to each buffer.
Tool tips for the buffers listed in the Manager Window.
The Tool Tips display the following lines:
* Buffer name and number. Also flags the current buffer.
* Full file name, truncated with '~' for home where possible.
* The file type and format.
* Indicates if the buffer is Modified or Read-only
Preserves the window history. This allows the command <C-W>p to work as
expected.
Prevents files from being opened in the Buffer Manager Window. All Edit,
Buffer and Write commands are redirected to the previous window.
==============================================================================
COMMANDS tagmabufmgr-commands
Commands for controlling the Buffer Manager from the command line.
:MgrOpen MgrOpen
Open the Buffer Manager Window.
:MgrClose MgrClose
Close the Buffer Manager window.
:MgrToggle MgrToggle
Toggle the Buffer Manager Window open or closed.
:MgrUpdate MgrUpdate
Update the Buffer Manager Window. If the cache has invalid information
and thus displaying something incorrectly this will flush the cache
and rebuild it. This is also performed when switching into the Buffer
Manager Window.
:MgrPopUp MgrPopUp
Display the Buffer SwitchTo PopUp. This is a sub-section of the
Right-Click PopUp menu.
==============================================================================
USAGE tagmabufmgr-usage
Double clicking on a buffer listed in the Buffer Manager Window will switch to
that buffer. Control double clicking performs a ':split' to open the buffer.
Shift double clicking performs a ':vsplit' to open the buffer. Any time a
buffer is switched to it is done in the previous window if the buffer manager
was selected to perform the switch.
The following keys are remapped in the Manager Buffer to make navigation
These mappings apply only within the Buffer Manager.
<Tab> l w Move to the next buffer in the list. <S-Tab> h b Move to the previous buffer in the list. D d Delete the buffer under the cursor. <Cr> O o Switch to the buffer under the cursor. S s Split then switch to the buffer under the cursor. V v VSplit then switch to the buffer under the cursor. P p Return to the previous window. C c Close the Buffer Manager Window. R r Refresh the Buffer Manager Window. ? H Display help text for the Manager. Cleared when the Manager is left or updated.
The Buffer Manager Window has a custom Right-Click PopUp Menu. This menu is
different than the PopUp menu addition mentioned in |tagmabufmgr-features|.
Right clicking on a buffer in the list presents options to control the Buffer
Manager, switch to the buffer in a variety of ways and to delete a buffer.
Note: The custom PopUp menu only appears if the Buffer Manager Window is
selected before performing the Right-Click.
Each buffer in the Buffer Manager List can have several flags that indicate
the status or type of the buffer. For example here are all possible flags: >
[+1:MyBuffer.txt!?$&]<
The meaning of each flag is:
+ = The buffer has been modified.
! = The buffer is the active buffer.
? = The buffer is a |help| buffer.
$ = The Buffer is a |quickfix| or |location-list| buffer.
& = The buffer is not loaded or hidden.
Each flag also gets a distinct color.
*Comment normal buffers, visible in a window
*Identifier the currently active buffer, flag !
*String modified buffer, flag +
(takes precedence over the flag &)
*Error active buffer that is also modified, flags +!
*Type help buffer, flag ?
*Special quickfix or location list buffer, flag $
*Statement unloaded or hidden buffer, flag &
==============================================================================
MAPPINGS tagmabufmgr-mappings
The above commands are mapped to global key mappings.
See |tagmabufmgr-settings| for information on controlling the key mappings.
To use custom mappings simply configure the mapping in your |vimrc| file.
Note: The |Leader| key is normally set to "".
<Leader>tbo <Plug>OpenMgr
Open the Buffer Manager Window. >
map <silent> <Leader>tbo <Plug>OpenMgr<
<Leader>tbc <Plug>CloseMgr
Close the Buffer Manager window. >
map <silent> <Leader>tbc <Plug>CloseMgr<
<Leader>tbt <Plug>ToggleMgr
Toggle the Buffer Manager Window open or closed. >
map <silent> <Leader>tbt <Plug>ToggleMgr<
<Leader>tbu <Plug>UpdateMgr
Update the Buffer Manager Window. If the cache has invalid information
and thus displaying something incorrectly this will flush the cache
and rebuild it. This is also performed when switching into the Buffer
Manager Window. >
map <silent> <Leader>tbu <Plug>UpdateMgr<
<Leader>tbp <Plug>ShowPopUp
Display the Buffer SwitchTo PopUp. This is a sub-section of the
Right-Click PopUp menu. >
map <silent> <Leader>tbp<Plug>ShowPopUp<
==============================================================================
SETTINGS tagmabufmgr-settings
To change the behavior of the Buffer Manager these settings can be placed in
your |vimrc| file.
g:TagmaBufMgrAutoDisplay
Automatically open the Buffer Manager Window when starting VIM.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrAutoDisplay = 1<
g:TagmaBufMgrBufferNumbers
Show the buffer numbers in the Buffer list.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrBufferNumbers = 1<
g:TagmaBufMgrCloseSelect
Close the manager window after selecting a buffer.
Defaults to 0. Set to 1 to enable. >
let g:TagmaBufMgrCloseSelect = 0<
g:TagmaBufMgrLastLine
Display the Manager Window on the last line with no status line.
The Manager Window will be immediately above the command line and
below the status line of the bottom window(s).
Defaults to 0. Set to 1 to enable. >
let g:TagmaBufMgrLastLine = 0<
g:TagmaBufMgrLastWindow
Closing the last window (besides the Buffer Manager) quits Vim.
Otherwise a new window will be created.
Defaults to 0. Set to 1 to enable. >
let g:TagmaBufMgrLastWindow = 0<
g:TagmaBufMgrLocation
The Manager Window location.
(T)op, (B)ottom, (L)eft, (R)ight, (F)loat
When set to (F)loat the window will not be managed/resized.
All other settings and TagmaBufMgr will manage the location and size
of the buffer. Resizing as needed.
Defaults to (T)op. >
let g:TagmaBufMgrLocation = 'T'<
g:TagmaBufMgrMapCArrow
Map Ctrl-Arrow keys to window navigation.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrMapCArrow = 1<
g:TagmaBufMgrMapChjkl
Map Ctrl-[hjkl] keys to window navigation.
Overrides setting g:TagmaBufMgrMapChjklbuf.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrMapChjkl = 1<
g:TagmaBufMgrMapChjklbuf
Map Ctrl-[hjkl] keys to switch buffers in the current window.
Disabled when g:TagmaBufMgrMapChjkl is enabled.
Ctrl-h and Ctrl-k switch to the previous buffer.
Ctrl-j and Ctrl-l switch to the next buffer.
Defaults to 0. Set to 1 to enable. >
let g:TagmaBufMgrMapChjklbuf = 0<
g:TagmaBufMgrMapCTab
Map Ctrl-Tab and Ctrl-Shift-Tab to switch buffers in the current
window.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrMapCTab = 1<
g:TagmaBufMgrMapMouseFB
Map the Mouse Foward/Back buttons to switch buffers in the current
window. The mapping is for <X1Mouse> and <X2Mouse>. These might not
exist on all platforms.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrMapMouseFB = 1<
g:TagmaBufMgrPrefix
Key map prefix for all commands.
Set to an empty string to disable keymaps.
Defaults to '<Leader>tb'. >
let g:TagmaBufMgrPrefix = '<Leader>tb'<
g:TagmaBufMgrPopUp
Enable the addition to the Right-Click PopUp menu.
Adds entries to control the Buffer Manager Window and an entry to
switch between buffers.
Defaults to 1. Set to 0 to disable. >
let g:TagmaBufMgrPopUp = 1<
g:TagmaBufMgrWidth
The Manager Window Width, when at the Left or Right.
Set to 0 to disable resizing.
Defaults to 25. >
let g:TagmaBufMgrWidth = 25<
g:TagmaBufMgrStatusLine
Default status line text when visible. >
let g:TagmaBufMgrStatusLine = 'FooBar'<
==============================================================================
COLOR SCHEME tagmabufmgr-colors
The color scheme can be changed by including higlight definitions in your
|vimrc| file. See |syntax| for more information on syntax highlighting.
hi def link TagmaBufMgrPlain Identifier hi def link TagmaBufMgrActive Type hi def link TagmaBufMgrChanged Directory hi def link TagmaBufMgrChgAct Statement hi def link TagmaBufMgrHelp Special hi def link TagmaBufMgrQFoLL Special hi def link TagmaBufMgrHelpText String hi def link TagmaBufMgrUnloaded Comment<
vim:ts=8:sw=8:tw=78:ft=help: