806 lines
41 KiB
Text
Executable file
806 lines
41 KiB
Text
Executable file
*bufexplorer.txt* Buffer Explorer Last Change: 08 Dec 2018
|
|
|
|
Buffer Explorer *buffer-explorer* *bufexplorer*
|
|
Version 7.4.21
|
|
|
|
Plugin for easily exploring (or browsing) Vim|:buffers|.
|
|
|
|
|bufexplorer-installation| Installation
|
|
|bufexplorer-usage| Usage
|
|
|bufexplorer-windowlayout| Window Layout
|
|
|bufexplorer-customization| Customization
|
|
|bufexplorer-changelog| Change Log
|
|
|bufexplorer-todo| Todo
|
|
|bufexplorer-credits| Credits
|
|
|bufexplorer-copyright| Copyright
|
|
|
|
For Vim version 7.0 and above.
|
|
This plugin is only available if 'compatible' is not set.
|
|
|
|
{Vi does not have any of this}
|
|
|
|
==============================================================================
|
|
INSTALLATION *bufexplorer-installation*
|
|
|
|
To install:
|
|
- Download the bufexplorer.zip from one of the following places:
|
|
https://github.com/jlanzarotta/bufexplorer
|
|
http://www.vim.org/scripts/script.php?script_id=42
|
|
or use a package manager like Vundle.
|
|
- Extract the zip archive into your runtime directory.
|
|
The archive contains plugin/bufexplorer.vim, and doc/bufexplorer.txt.
|
|
- Start Vim or goto an existing instance of Vim.
|
|
- Execute the following command:
|
|
>
|
|
:helptag <your runtime directory>/doc
|
|
<
|
|
This will generate all the help tags for any file located in the doc
|
|
directory.
|
|
|
|
==============================================================================
|
|
USAGE *bufexplorer-usage*
|
|
|
|
To start exploring in the current window, use: >
|
|
<Leader>be or :BufExplorer or Your custom key mapping
|
|
To toggle bufexplorer on or off in the current window, use: >
|
|
<Leader>bt or :ToggleBufExplorer or Your custom key mapping
|
|
To start exploring in a newly split horizontal window, use: >
|
|
<Leader>bs or :BufExplorerHorizontalSplit or Your custom key mapping
|
|
To start exploring in a newly split vertical window, use: >
|
|
<Leader>bv or :BufExplorerVerticalSplit or Your custom key mapping
|
|
|
|
If you would like to use something other than the default leader key - '\' -
|
|
you may simply change the leader (see |mapleader|).
|
|
|
|
When <Leader>bs or <Leader>bv is issued, bufexplorer opens in either a
|
|
horizontally or vertically split window. By issuing either of these commands,
|
|
the user is telling bufexplorer that they want to split the window and have
|
|
bufexplorer show the buffer they are about to select (from the bufexplorer
|
|
windows) in the newly split window. When <Leader>be is issued, bufexplorer
|
|
opens the bufexplorer contents in the current window and the buffer the user
|
|
selects is opened in the current window.
|
|
|
|
Note: If the current buffer is modified when bufexplorer started, the current
|
|
window is always split and the new bufexplorer is displayed in that new
|
|
window.
|
|
|
|
Commands to use once exploring:
|
|
|
|
<F1> Toggle help information.
|
|
<enter> Opens the buffer that is under the cursor into the current
|
|
window.
|
|
<leftmouse> Opens the buffer that is under the cursor into the current
|
|
window.
|
|
<shift-enter> Opens the buffer that is under the cursor in another tab.
|
|
a Toggles whether you are taken to the active window when
|
|
selecting a buffer or not.
|
|
b Fast buffer switching with b<any bufnum>.
|
|
B Works in association with the |ShowTabBuffer| option. If
|
|
|ShowTabBuffer| is set to 1, this toggles if BufExplorer is to
|
|
only store the most recent tab for this buffer or not.
|
|
d |:delete| the buffer under the cursor from the list. The
|
|
buffer's 'buflisted' is cleared. This allows for the buffer to
|
|
be displayed again using the 'show unlisted' command.
|
|
D |:wipeout| the buffer under the cursor from the list. When a
|
|
buffer is wiped, it will not be shown when unlisted buffers are
|
|
displayed.
|
|
F Open selected buffer in another window above the current.
|
|
f Open selected buffer in another window below the current.
|
|
o Opens the buffer that is under the cursor into the current
|
|
window.
|
|
p Toggles the showing of a split filename/pathname.
|
|
q Exit/Close bufexplorer.
|
|
r Reverses the order the buffers are listed in.
|
|
R Toggles relative path/absolute path.
|
|
s Cycle thru how the buffers are listed. Either by buffer
|
|
number, file name, file extension, most recently used (MRU), or
|
|
full path.
|
|
S Cycle thru how the buffers are listed, in reverse order.
|
|
Either by buffer number, file name, file extension, most
|
|
recently used (MRU), or full path.
|
|
t Opens the buffer that is under the cursor in another tab.
|
|
T Toggles to show only buffers for this tab or not.
|
|
u Toggles the showing of "unlisted" buffers.
|
|
V Open the selected buffer in another window on the left of the current.
|
|
v Open the selected buffer in another window on the right of the current.
|
|
|
|
Once invoked, Buffer Explorer displays a sorted list (MRU is the default
|
|
sort method) of all the buffers that are currently opened. You are then
|
|
able to move the cursor to the line containing the buffer's name you are
|
|
wanting to act upon. Once you have selected the buffer you would like,
|
|
you can then either open it, close it (delete), resort the list, reverse
|
|
the sort, quit exploring and so on...
|
|
|
|
===============================================================================
|
|
WINDOW LAYOUT *bufexplorer-windowlayout*
|
|
|
|
-------------------------------------------------------------------------------
|
|
" Press <F1> for Help
|
|
" Sorted by mru | Locate buffer | Absolute Split path
|
|
"=
|
|
1 %a bufexplorer.txt C:\Vim\vimfiles\doc line 87
|
|
2 # bufexplorer.vim c:\Vim\vimfiles\plugin line 1
|
|
-------------------------------------------------------------------------------
|
|
| | | | |
|
|
| | | | +-- Current Line #.
|
|
| | | +-- Relative/Full Path
|
|
| | +-- Buffer Name.
|
|
| +-- Buffer Attributes. See |:buffers| for more information.
|
|
+-- Buffer Number. See |:buffers| for more information.
|
|
|
|
===============================================================================
|
|
CUSTOMIZATION *bufexplorer-customization*
|
|
|
|
If you do not like the default key mappings of <Leader>be, <Leader>bs, and
|
|
<Leader>bv, you can override bufexplorer's default mappings by setting up
|
|
something like the following in your vimrc file:
|
|
|
|
nnoremap <silent> <F11> :BufExplorer<CR>
|
|
nnoremap <silent> <s-F11> :ToggleBufExplorer<CR>
|
|
nnoremap <silent> <m-F11> :BufExplorerHorizontalSplit<CR>
|
|
nnoremap <silent> <c-F11> :BufExplorerVerticalSplit<CR>
|
|
|
|
*g:bufExplorerChgWin*
|
|
If set, bufexplorer will bring up the selected buffer in the window specified
|
|
by g:bufExplorerChgWin.
|
|
|
|
*g:bufExplorerDefaultHelp*
|
|
To control whether the default help is displayed or not, use: >
|
|
let g:bufExplorerDefaultHelp=0 " Do not show default help.
|
|
let g:bufExplorerDefaultHelp=1 " Show default help.
|
|
The default is to show the default help.
|
|
|
|
*g:bufExplorerDisableDefaultKeyMapping*
|
|
To control whether the default key mappings are enabled or not, use: >
|
|
let g:bufExplorerDisableDefaultKeyMapping=0 " Do not disable mapping.
|
|
let g:bufExplorerDisableDefaultKeyMapping=1 " Disable mapping.
|
|
The default is NOT to disable the default key mapping.
|
|
|
|
*g:bufExplorerDetailedHelp*
|
|
To control whether detailed help is display by, use: >
|
|
let g:bufExplorerDetailedHelp=0 " Do not show detailed help.
|
|
let g:bufExplorerDetailedHelp=1 " Show detailed help.
|
|
The default is NOT to show detailed help.
|
|
|
|
*g:bufExplorerFindActive*
|
|
To control whether you are taken to the active window when selecting a buffer,
|
|
use: >
|
|
let g:bufExplorerFindActive=0 " Do not go to active window.
|
|
let g:bufExplorerFindActive=1 " Go to active window.
|
|
The default is to be taken to the active window.
|
|
|
|
*g:bufExplorerFuncRef*
|
|
When a buffer is selected, the functions specified either singly or as a list
|
|
will be called.
|
|
|
|
*g:bufExplorerReverseSort*
|
|
To control whether to sort the buffer in reverse order or not, use: >
|
|
let g:bufExplorerReverseSort=0 " Do not sort in reverse order.
|
|
let g:bufExplorerReverseSort=1 " Sort in reverse order.
|
|
The default is NOT to sort in reverse order.
|
|
|
|
*g:bufExplorerShowDirectories*
|
|
Directories usually show up in the list from using a command like ":e .".
|
|
To control whether to show directories in the buffer list or not, use: >
|
|
let g:bufExplorerShowDirectories=0 " Do not show directories.
|
|
let g:bufExplorerShowDirectories=1 " Show directories.
|
|
The default is to show directories.
|
|
|
|
*g:bufExplorerShowNoName*
|
|
To control whether to show "No Name" buffers or not, use: >
|
|
let g:bufExplorerShowNoName=0 " Do not "No Name" buffers.
|
|
let g:bufExplorerShowNoName=1 " Show "No Name" buffers.
|
|
The default is to NOT show "No Name buffers.
|
|
|
|
*g:bufExplorerShowRelativePath*
|
|
To control whether to show absolute paths or relative to the current
|
|
directory, use: >
|
|
let g:bufExplorerShowRelativePath=0 " Show absolute paths.
|
|
let g:bufExplorerShowRelativePath=1 " Show relative paths.
|
|
The default is to show absolute paths.
|
|
|
|
*g:bufExplorerShowTabBuffer*
|
|
To control whether or not to show buffers on for the specific tab or not, use: >
|
|
let g:bufExplorerShowTabBuffer=0 " No.
|
|
let g:bufExplorerShowTabBuffer=1 " Yes.
|
|
The default is not to show.
|
|
|
|
*g:bufExplorerShowUnlisted*
|
|
To control whether to show unlisted buffers or not, use: >
|
|
let g:bufExplorerShowUnlisted=0 " Do not show unlisted buffers.
|
|
let g:bufExplorerShowUnlisted=1 " Show unlisted buffers.
|
|
The default is to NOT show unlisted buffers.
|
|
|
|
*g:bufExplorerSortBy*
|
|
To control what field the buffers are sorted by, use: >
|
|
let g:bufExplorerSortBy='extension' " Sort by file extension.
|
|
let g:bufExplorerSortBy='fullpath' " Sort by full file path name.
|
|
let g:bufExplorerSortBy='mru' " Sort by most recently used.
|
|
let g:bufExplorerSortBy='name' " Sort by the buffer's name.
|
|
let g:bufExplorerSortBy='number' " Sort by the buffer's number.
|
|
The default is to sort by mru.
|
|
|
|
*g:bufExplorerSplitBelow*
|
|
To control where the new split window will be placed above or below the
|
|
current window, use: >
|
|
let g:bufExplorerSplitBelow=1 " Split new window below current.
|
|
let g:bufExplorerSplitBelow=0 " Split new window above current.
|
|
The default is to use whatever is set by the global &splitbelow
|
|
variable.
|
|
|
|
*g:bufExplorerSplitHorzSize*
|
|
To control the size of the new horizontal split window. use: >
|
|
let g:bufExplorerSplitHorzSize=n " New split window is n rows high.
|
|
let g:bufExplorerSplitHorzSize=0 " New split window size set by Vim.
|
|
The default is 0, so that the size is set by Vim.
|
|
|
|
*g:bufExplorerSplitOutPathName*
|
|
To control whether to split out the path and file name or not, use: >
|
|
let g:bufExplorerSplitOutPathName=1 " Split the path and file name.
|
|
let g:bufExplorerSplitOutPathName=0 " Don't split the path and file
|
|
" name.
|
|
The default is to split the path and file name.
|
|
|
|
*g:bufExplorerSplitRight*
|
|
To control where the new vsplit window will be placed to the left or right of
|
|
current window, use: >
|
|
let g:bufExplorerSplitRight=0 " Split left.
|
|
let g:bufExplorerSplitRight=1 " Split right.
|
|
The default is to use the global &splitright.
|
|
|
|
*g:bufExplorerSplitVertSize*
|
|
To control the size of the new vertical split window, use: >
|
|
let g:bufExplorerSplitVertSize=n " New split window is n columns wide.
|
|
let g:bufExplorerSplitVertSize=0 " New split windows size set by Vim.
|
|
The default is 0, so that the size is set by Vim.
|
|
|
|
*g:bufExplorerVersionWarn*
|
|
To control whether to warning about Vim version or not, use: >
|
|
let g:bufExplorerVersionWarn=1 " Warn if version conflict.
|
|
let g:bufExplorerVersionWarn=0 " Do not warn if version conflict.
|
|
The default is 1.
|
|
|
|
===============================================================================
|
|
CHANGE LOG *bufexplorer-changelog*
|
|
|
|
7.4.21 December 8, 2018
|
|
- Merged in changes from adelarsq that introduced ryanoasis/vim-devicons
|
|
support. If the global g:loaded_webdevicons has been set, bufexplorer
|
|
will now load the associated dev icons for each buffer.
|
|
7.4.20 January 18, 2017
|
|
- Thanks to jpflouret for supplying code that can remove the warning
|
|
messages if you using this plugin on an older version of Vim. The
|
|
global variable is g:bufExplorerVersionWarn.
|
|
7.4.19 September 18, 2017
|
|
- Merged all changes from github back into this version and tried to sync
|
|
to the correct version number.
|
|
7.4.18 - Github.
|
|
7.4.17 - Github.
|
|
7.4.16 August 14, 2017
|
|
- Thanks to Yubo Su for the patch that adds 'f, F, V, and v' commands.
|
|
With this change, the original 'f' command was remapped to 'a'.
|
|
|
|
The set of commands that can be used during exploring are:
|
|
F - Open selected buffer in another window above the current.
|
|
f - Open selected buffer in another window below the current.
|
|
V - Open the selected buffer in another window on the left of the
|
|
current.
|
|
v - Open the selected buffer in another window on the right of the
|
|
current.
|
|
7.4.15 May 01, 2017
|
|
- Finally applied the patch submitted by justfalter. This patch is a
|
|
backward-compatible fix for the "invalid tab range" bug.
|
|
7.4.14 April 10, 2017
|
|
- As suggested by adelarsq way back on January 5th, 2016, a filetype has
|
|
been added. There is now 'filetype=bufexplorer'.
|
|
7.4.13 March 08, 2017
|
|
- Thanks to devakivamsi for pointing out that even though bufexplorer
|
|
turns off line numbers by default within its own window, this did not
|
|
work correctly when using WinManager. This has now been corrected.
|
|
7.4.12 September 30, 2016
|
|
- Thanks again to Martin Vuille for several more fixes related to making
|
|
bufexplorer more tab-friendly.
|
|
7.4.11 September, 20, 2016
|
|
- Thanks to Martin Vuille for reworking the per-tab buffer listing code.
|
|
Fix for g:bufExplorerShowTabBuffer is not working correctly and other
|
|
"gliches" when the ShotTabBuffer option is enabled. For example old
|
|
code would not correctly handle adding/deleting a tab that wasn't the
|
|
highest-numbered tab.
|
|
7.4.10 August 26, 2016
|
|
- Thanks to buddylindsey for fixing a misspelling in the docs.
|
|
7.4.9 April 01, 2016
|
|
- Thanks to ivegotasthma for supplying a patch to fix a major issue with
|
|
plugin performance when lots of buffers are open.
|
|
- Thanks to ershov for the patch to fix grouping of files in ambiguous
|
|
sort modes.
|
|
- Thanks to PhilRunninger for changing documentation to use <Leader>, in
|
|
place of '\'.
|
|
7.4.8 January 27, 2015
|
|
- Thanks to Marius Gedminas for fixing up the documentation and correcting
|
|
various typos.
|
|
7.4.7 January 20, 2015
|
|
- Thanks goes out to Phil Runninger for added the ability to toggle the
|
|
bufexplorer list on and off using the :ToggleBufExplorer command, the
|
|
map <Leader>bt, and the function ToggleBufExplorer().
|
|
7.4.6 November 03, 2014
|
|
- Not sure how, but the file format was converted to Dos instead of Unix.
|
|
I converted the file back to Unix.
|
|
7.4.5 October 24, 2014
|
|
- Dr Michael Henry suggested to change all noremap commands to nnoremap.
|
|
Using noremap is unnecessarily broad and can cause problems, especially
|
|
for select mode.
|
|
7.4.4 August 19, 2014
|
|
- Revert change where bufexplorer windows was closed even if the target
|
|
buffer has not been loaded yet.
|
|
7.4.3 August 13, 2014
|
|
- Ivan Ukhov fixed issue with deleting the last window. This update also
|
|
fixes as well as another. If you have say, NERDtree open on the left
|
|
side and bufexplorer on the right, that bufexplorer would close NERDtree
|
|
erroneously thinking that it is closing itself.
|
|
- Radoslaw Burny fixed a few bugs that surfaced when bufexplorer is used
|
|
within winmanager.
|
|
7.4.2 October 22, 2013
|
|
- Added global option g:bufExplorerDisableDefaultKeyMapping. This option
|
|
controls weather the default key mappings (\be, \bs, and \bv) are
|
|
enabled or not. See documentation for more information.
|
|
7.4.1 October 11, 2013
|
|
- First update related to Vim 7.4.
|
|
- Changed license text.
|
|
- Fixed issue with 'hidden'. If 'hidden' is set, make sure that
|
|
g:bufExplorerFindActive is set to 0. Otherwise, when using \bs or \bv,
|
|
and selecting a buffer, the original buffer will be switched to instead
|
|
of being opened in the newly created windows.
|
|
- Added new 'b' mapping when the bufExplorer window is opened. When 'b'
|
|
is pressed, the user is prompted for the buffer number to switch to, and
|
|
is is then switched to when <CR> is pressed. This allows for somewhat
|
|
faster buffer switching instead of using the j and k keys or the mouse
|
|
to select the buffer to switch to.
|
|
- Removed 'set nolist' from the Initialize() function as well as the
|
|
restore of the 'list' setting in the CleanUp() function. These were
|
|
causing issues when multiple new files were opened from the command
|
|
line. Furthermore, there was really no reason, that I can remember, to
|
|
why the 'list' setting was saved, modified, and restored anyways.
|
|
- Fixed issue with WinManager integration code not working correctly
|
|
anymore.
|
|
- Brought back the xnoremap setup for the 'd' and 'D' keys. These were
|
|
removed for some reason after version 7.2.8.
|
|
- Thanks to all the contributors and testers.
|
|
7.3.6 May 06, 2013
|
|
- Removed the 'drop' window command that was causing issue with the
|
|
argument-list being modified after the BufExplorer windows was
|
|
displayed.
|
|
7.3.5 February 08, 2013
|
|
- Michael Henry added the ability to view "No Name" buffers. This
|
|
functionality was lost since version 7.3.0. He also did some removal of
|
|
"dead" code and cleaned up the code to handle filenames with embedded
|
|
'"'.
|
|
7.3.4 January 28, 2013
|
|
- Thanks go out to John Szakmeister for finding and fixing a bug in the
|
|
RebuildBufferList method. The keepjumps line that clears the list could
|
|
potentially reference a backwards range.
|
|
7.3.3 January 14, 2013
|
|
- Major cleanup and reorganization of the change log.
|
|
- We welcome the return of g:bufExplorerSplitHorzSize and
|
|
g:bufExplorerSplitVertSize. When setting these values, anything less
|
|
than or equal to 0 causes the split windows size to be determined by
|
|
Vim. If for example you want your new horizontal split window 10 rows
|
|
high, set g:bufExplorerSplitHorzSize = 10 in your .vimrc. Similar would
|
|
be done if wanting a vertical split except you would use the
|
|
g:bufExplorerSplitVertSize variable instead.
|
|
7.3.2 December 24, 2012
|
|
- Thanks go out to Michael Henry for pointing out that I completely
|
|
missed yet another function, ReverseSortSelect(), during the
|
|
refactoring. This function has now returned.
|
|
7.3.1 December 06, 2012
|
|
- Thanks go out to Brett Rasmussen for pointing out that the feature
|
|
added way back in version 7.2.3 by Yuriy Ershov to automatically
|
|
reposition the cursor to the line containing the active buffer, was
|
|
no longer in the plugin. That bit of code has been re-added and
|
|
all is well.
|
|
7.3.0 October 09, 2012
|
|
- It has been quite a while since I published a new version and this
|
|
is the first version since Vim 7.3 was released. I have put some
|
|
time into reworking and cleaning up the code as well as various bug
|
|
fixes. Overall, I am hopeful that I not forgotten or lost a feature.
|
|
- Thanks to Tim Johnson for testing out this new version.
|
|
- I have hopefully allowed for better mapping of the main public
|
|
methods as is explained in the |bufexplorer-customization| section
|
|
of the documentation.
|
|
- Add new 'B', 'o', and 'S' key mappings.
|
|
7.2.8 November 08, 2010
|
|
- Thanks to Charles Campbell for integrating bufexplorer with GDBMGR.
|
|
http://mysite.verizon.net/astronaut/vim/index.html#GDBMGR
|
|
7.2.7 April 26, 2010
|
|
- My 1st attempt to fix the "cache" issue where buffers information
|
|
has changed but the cache/display does not reflect those changes.
|
|
More work still needs to be done.
|
|
7.2.6 February 12, 2010
|
|
- Thanks to Michael Henry for pointing out that I totally forgot to
|
|
update the inline help to reflect the previous change to the 'd'
|
|
and 'D' keys. Opps!
|
|
7.2.5 February 10, 2010
|
|
- Philip Morant suggested switching the command (bwipe) associated
|
|
with the 'd' key with the command (bdelete) associated with the 'D'
|
|
key. This made sense since the 'd' key is more likely to be used
|
|
compared to the 'D' key.
|
|
7.2.4 January 14, 2010
|
|
- I did not implement the patch provided by Godefroid Chapelle
|
|
correctly. I missed one line which happened to be the most important
|
|
one :)
|
|
7.2.3 December 15, 2009
|
|
- Hopefully I have not left anyone or anything out :)
|
|
- Thanks to David Fishburn for helping me out with a much needed
|
|
code overhaul as well as some awesome performance enhancements.
|
|
- David also reworked the handling of tabs.
|
|
- Thanks to Vladimir Dobriakov for making the suggestions on
|
|
enhancing the documentation to include a better explaination of
|
|
what is contained in the main bufexplorer window.
|
|
- Thanks to Yuriy Ershov for added code that when the bufexplorer
|
|
window is opened, the cursor is now positioned at the line with the
|
|
active buffer (useful in non-MRU sort modes).
|
|
- Yuriy also added the abiltiy to cycle through the sort fields in
|
|
reverse order.
|
|
- Thanks to Michael Henry for supplying a patch that allows
|
|
bufexplorer to be opened even when there is one buffer or less.
|
|
- Thanks to Godefroid Chapelle for supplying a patch that fixed
|
|
MRU sort order after loading a session.
|
|
7.2.2 November 19, 2008
|
|
- Thanks to David L. Dight for spotting and fixing an issue when using
|
|
ctrl^. bufexplorer would incorrectly handle the previous buffer so
|
|
that when ctrl^ was pressed the incorrect file was opened.
|
|
7.2.1 September 03, 2008
|
|
- Thanks to Dimitar for spotting and fixing a feature that was
|
|
inadvertently left out of the previous version. The feature was when
|
|
bufexplorer was used together with WinManager, you could use the tab
|
|
key to open a buffer in a split window.
|
|
7.2.0 August 15, 2008
|
|
- For all those missing the \bs and \bv commands, these have now
|
|
returned. Thanks to Phil O'Connell for asking for the return of
|
|
these missing features and helping test out this version.
|
|
- Fixed problem with the bufExplorerFindActive code not working
|
|
correctly.
|
|
- Fixed an incompatibility between bufexplorer and netrw that caused
|
|
buffers to be incorrectly removed from the MRU list.
|
|
7.1.7 December 21, 2007
|
|
- TaCahiroy fixed several issues related to opening a buffer in a tab.
|
|
7.1.6 December 01, 2007
|
|
- Removed ff=unix from modeline in bufexplorer.txt. Found by Bill
|
|
McCarthy.
|
|
7.1.5 November 30, 2007
|
|
- Could not open unnamed buffers. Fixed by TaCahiroy.
|
|
7.1.4 November 16, 2007
|
|
- Sometimes when a file's path has 'white space' in it, extra buffers
|
|
would be created containing each piece of the path. i.e:
|
|
opening c:\document and settings\test.txt would create a buffer
|
|
named "and" and a buffer named "Documents". This was reported and
|
|
fixed by TaCa Yoss.
|
|
7.1.3 November 15, 2007
|
|
- Added code to allow only one instance of the plugin to run at a time.
|
|
Thanks Dennis Hostetler.
|
|
7.1.2 November 07, 2007
|
|
- Dave Larson added handling of tabs.
|
|
- Dave Larson removed \bs and \bv commands because these are easier for
|
|
the used to create horizontal and vertical windows.
|
|
- Fixed a jumplist issue spotted by JiangJun. I overlooked the
|
|
'jumplist' and with a couple calls to 'keepjumps', everything is fine
|
|
again.
|
|
- Went back to using just a plugin file, instead of both an autoload
|
|
and plugin file. The splitting of the file caused issues with other
|
|
plugins. So if you have a prior version of bufexplorer that has an
|
|
autoload file, please remove autoload\bufexplorer and
|
|
plugin\bufexplorer before installing this new version.
|
|
- Fixed E493 error spotted by Thomas Arendsen Hein.
|
|
- Minor cosmetic changes.
|
|
- Minor help file changes.
|
|
7.1.1 August 02, 2007
|
|
- A problem spotted by Thomas Arendsen Hein. When running Vim
|
|
(7.1.94), error E493 was being thrown.
|
|
* Added 'D' for 'delete' buffer as the 'd' command was a 'wipe' buffer.
|
|
7.1.0 August 01, 2007
|
|
- Another 'major' update, some by Dave Larson, some by me.
|
|
- Making use of 'autoload' now to make the plugin load quicker.
|
|
- Removed '\bs' and '\bv'. These are now controlled by the user. The
|
|
user can issue a ':sp' or ':vs' to create a horizontal or vertical
|
|
split window and then issue a '\be'
|
|
- Added handling of tabs.
|
|
7.0.17 July 24, 2007
|
|
- Fixed issue with 'drop' command.
|
|
- Various enhancements and improvements.
|
|
7.0.16 May 15, 2007
|
|
- Fixed issue reported by Liu Jiaping on non Windows systems, which was
|
|
...
|
|
Open file1, open file2, modify file1, open bufexplorer, you get the
|
|
following error:
|
|
|
|
--------8<--------
|
|
Error detected while processing function
|
|
<SNR>14_StartBufExplorer..<SNR>14_SplitOpen:
|
|
line 4:
|
|
E37: No write since last change (add ! to override)
|
|
|
|
But the worse thing is, when I want to save the current buffer and
|
|
type ':w', I get another error message:
|
|
E382: Cannot write, 'buftype' option is set
|
|
--------8<--------
|
|
|
|
7.0.15 April 27, 2007
|
|
- Thanks to Mark Smithfield for suggesting bufexplorer needed to handle
|
|
the ':args' command.
|
|
7.0.14 March 23, 2007
|
|
- Thanks to Randall Hansen for removing the requirement of terminal
|
|
versions to be recompiled with 'gui' support so the 'drop' command
|
|
would work. The 'drop' command is really not needed in terminal
|
|
versions.
|
|
7.0.13 February 23, 2007
|
|
- Fixed integration with WinManager.
|
|
- Thanks to Dave Eggum for another update.
|
|
* Fix: The detailed help didn't display the mapping for toggling
|
|
the split type, even though the split type is displayed.
|
|
* Fixed incorrect description in the detailed help for toggling
|
|
relative or full paths.
|
|
* Deprecated s:ExtractBufferNbr(). Vim's str2nr() does the same
|
|
thing.
|
|
* Created a s:Set() function that sets a variable only if it hasn't
|
|
already been defined. It's useful for initializing all those
|
|
default settings.
|
|
* Removed checks for repetitive command definitions. They were
|
|
unnecessary.
|
|
* Made the help highlighting a little more fancy.
|
|
* Minor reverse compatibility issue: Changed ambiguous setting
|
|
names to be more descriptive of what they do (also makes the code
|
|
easier to follow):
|
|
Changed bufExplorerSortDirection to bufExplorerReverseSort
|
|
Changed bufExplorerSplitType to bufExplorerSplitVertical
|
|
Changed bufExplorerOpenMode to bufExplorerUseCurrentWindow
|
|
* When the BufExplorer window closes, all the file-local marks are
|
|
now deleted. This may have the benefit of cleaning up some of the
|
|
jumplist.
|
|
* Changed the name of the parameter for StartBufExplorer from
|
|
"split" to "open". The parameter is a string which specifies how
|
|
the buffer will be open, not if it is split or not.
|
|
* Deprecated DoAnyMoreBuffersExist() - it is a one line function
|
|
only used in one spot.
|
|
* Created four functions (SplitOpen(), RebuildBufferList(),
|
|
UpdateHelpStatus() and ReSortListing()) all with one purpose - to
|
|
reduce repeated code.
|
|
* Changed the name of AddHeader() to CreateHelp() to be more
|
|
descriptive of what it does. It now returns an array instead of
|
|
updating the window directly. This has the benefit of making the
|
|
code more efficient since the text the function returns is used a
|
|
little differently in the two places the function is called.
|
|
* Other minor simplifications.
|
|
7.0.12 November 30, 2006
|
|
- MAJOR Update. This version will ONLY run with Vim version 7.0 or
|
|
greater.
|
|
- Dave Eggum has made some 'significant' updates to this latest
|
|
version:
|
|
* Added BufExplorerGetAltBuf() global function to be used in the
|
|
user's rulerformat.
|
|
* Added g:bufExplorerSplitRight option.
|
|
* Added g:bufExplorerShowRelativePath option with mapping.
|
|
* Added current line highlighting.
|
|
* The split type can now be changed whether bufexplorer is opened
|
|
in split mode or not.
|
|
* Various major and minor bug fixes and speed improvements.
|
|
* Sort by extension.
|
|
- Other improvements/changes:
|
|
* Changed the help key from '?' to <F1> to be more 'standard'.
|
|
* Fixed splitting of vertical bufexplorer window.
|
|
- Hopefully I have not forgot something :)
|
|
7.0.11 March 10, 2006
|
|
- Fixed a couple of highlighting bugs, reported by David Eggum.
|
|
- Dave Eggum also changed passive voice to active on a couple of
|
|
warning messages.
|
|
7.0.10 March 02, 2006
|
|
- Fixed bug report by Xiangjiang Ma. If the 'ssl' option is set,
|
|
the slash character used when displaying the path was incorrect.
|
|
7.0.9 February 28, 2006
|
|
- Martin Grenfell found and eliminated an annoying bug in the
|
|
bufexplorer/winmanager integration. The bug was were an
|
|
annoying message would be displayed when a window was split or
|
|
a new file was opened in a new window. Thanks Martin!
|
|
7.0.8 January 18, 2006
|
|
- Thanks to Mike Li for catching a bug in the WinManager integration.
|
|
The bug was related to the incorrect displaying of the buffer
|
|
explorer's window title.
|
|
7.0.7 December 19, 2005
|
|
- Thanks to Jeremy Cowgar for adding a new enhancement. This
|
|
enhancement allows the user to press 'S', that is capital S, which
|
|
will open the buffer under the cursor in a newly created split
|
|
window.
|
|
7.0.6 November 18, 2005
|
|
- Thanks to Larry Zhang for finding a bug in the "split" buffer code.
|
|
If you force set g:bufExplorerSplitType='v' in your vimrc, and if you
|
|
tried to do a \bs to split the bufexplorer window, it would always
|
|
split horizontal, not vertical.
|
|
- Larry Zhang also found that I had a typeo in that the variable
|
|
g:bufExplorerSplitVertSize was all lower case in the documentation
|
|
which was incorrect.
|
|
7.0.5 October 18, 2005
|
|
- Thanks to Mun Johl for pointing out a bug that if a buffer was
|
|
modified, the '+' was not showing up correctly.
|
|
7.0.4 October 03, 2005
|
|
- Fixed a problem discovered first by Xiangjiang Ma. Well since I've
|
|
been using vim 7.0 and not 6.3, I started using a function (getftype)
|
|
that is not in 6.3. So for backward compatibility, I conditionaly use
|
|
this function now. Thus, the g:bufExplorerShowDirectories feature is
|
|
only available when using vim 7.0 and above.
|
|
7.0.3 September 30, 2005
|
|
- Thanks to Erwin Waterlander for finding a problem when the last
|
|
buffer was deleted. This issue got me to rewrite the buffer display
|
|
logic (which I've wanted to do for sometime now).
|
|
- Also great thanks to Dave Eggum for coming up with idea for
|
|
g:bufExplorerShowDirectories. Read the above information about this
|
|
feature.
|
|
7.0.2 March 25, 2005
|
|
- Thanks to Thomas Arendsen Hein for finding a problem when a user
|
|
has the default help turned off and then brought up the explorer. An
|
|
E493 would be displayed.
|
|
7.0.1 March 10, 2005
|
|
- Thanks to Erwin Waterlander for finding a couple problems.
|
|
The first problem allowed a modified buffer to be deleted. Opps! The
|
|
second problem occurred when several files were opened, BufExplorer
|
|
was started, the current buffer was deleted using the 'd' option, and
|
|
then BufExplorer was exited. The deleted buffer was still visible
|
|
while it is not in the buffers list. Opps again!
|
|
7.0.0 March 10, 205
|
|
- Thanks to Shankar R. for suggesting to add the ability to set
|
|
the fixed width (g:bufExplorerSplitVertSize) of a new window
|
|
when opening bufexplorer vertically and fixed height
|
|
(g:bufExplorerSplitHorzSize) of a new window when opening
|
|
bufexplorer horizontally. By default, the windows are normally
|
|
split to use half the existing width or height.
|
|
6.3.0 July 23, 2004
|
|
- Added keepjumps so that the jumps list would not get cluttered with
|
|
bufexplorer related stuff.
|
|
6.2.3 April 15, 2004
|
|
- Thanks to Jay Logan for finding a bug in the vertical split position
|
|
of the code. When selecting that the window was to be split
|
|
vertically by doing a '\bv', from then on, all splits, i.e. '\bs',
|
|
were split vertically, even though g:bufExplorerSplitType was not set
|
|
to 'v'.
|
|
6.2.2 January 09, 2004
|
|
- Thanks to Patrik Modesto for adding a small improvement. For some
|
|
reason his bufexplorer window was always showing up folded. He added
|
|
'setlocal nofoldenable' and it was fixed.
|
|
6.2.1 October 09, 2003
|
|
- Thanks goes out to Takashi Matsuo for added the 'fullPath' sorting
|
|
logic and option.
|
|
6.2.0 June 13, 2003
|
|
- Thanks goes out to Simon Johann-Ganter for spotting and fixing a
|
|
problem in that the last search pattern is overridden by the search
|
|
pattern for blank lines.
|
|
6.1.6 May 05, 2003
|
|
- Thanks to Artem Chuprina for finding a pesky bug that has been around
|
|
for sometime now. The <esc> key mapping was causing the buffer
|
|
explored to close prematurely when vim was run in an xterm. The <esc>
|
|
key mapping is now removed.
|
|
6.1.5 April 28, 2003
|
|
- Thanks to Khorev Sergey. Added option to show default help or not.
|
|
6.1.4 March 18, 2003
|
|
- Thanks goes out to Valery Kondakoff for suggesting the addition of
|
|
setlocal nonumber and foldcolumn=0. This allows for line numbering
|
|
and folding to be turned off temporarily while in the explorer.
|
|
6.1.3 March 11, 2003
|
|
- Added folding.
|
|
- Did some code cleanup.
|
|
- Added the ability to force the newly split window to be temporarily
|
|
vertical, which was suggested by Thomas Glanzmann.
|
|
6.1.2 November 05, 2002
|
|
- Now pressing the <esc> key will quit, just like 'q'.
|
|
- Added folds to hide winmanager configuration.
|
|
- If anyone had the 'C' option in their cpoptions they would receive
|
|
a E10 error on startup of BufExplorer. cpo is now saved, updated and
|
|
restored. Thanks to Charles E Campbell, Jr.
|
|
- Attempted to make sure there can only be one BufExplorer window open
|
|
at a time.
|
|
6.1.1 March 28, 2002
|
|
- Thanks to Brian D. Goodwin for adding toupper to FileNameCmp. This
|
|
way buffers sorted by name will be in the correct order regardless of
|
|
case.
|
|
6.0.16 March 14, 2002
|
|
- Thanks to Andre Pang for the original patch/idea to get bufexplorer
|
|
to work in insertmode/modeless mode (evim).
|
|
- Added Initialize and Cleanup autocommands to handle commands that
|
|
need to be performed when starting or leaving bufexplorer.
|
|
6.0.15 February 20, 2002
|
|
- Srinath Avadhanulax added a patch for winmanager.vim.
|
|
6.0.14 February 19, 2002
|
|
- Fix a few more bug that I thought I already had fixed.
|
|
- Thanks to Eric Bloodworth for adding 'Open Mode/Edit in Place'.
|
|
- Added vertical splitting.
|
|
6.0.13 February 05, 2002
|
|
- Thanks to Charles E Campbell, Jr. for pointing out some embarrassing
|
|
typos that I had in the documentation. I guess I need to run the
|
|
spell checker more :o)
|
|
6.0.12 February 04, 2002
|
|
- Thanks to Madoka Machitani, for the tip on adding the augroup command
|
|
around the MRUList autocommands.
|
|
6.0.11 January 26, 2002
|
|
- Fixed bug report by Xiangjiang Ma. '"=' was being added to the search
|
|
history which messed up hlsearch.
|
|
6.0.10 January 14, 2002
|
|
- Added the necessary hooks so that the Srinath Avadhanula's
|
|
winmanager.vim script could more easily integrate with this script.
|
|
- Tried to improve performance.
|
|
6.0.9 December 17, 2001
|
|
- Added MRU (Most Recently Used) sort ordering.
|
|
6.0.8 December 03, 2001
|
|
- Was not resetting the showcmd command correctly.
|
|
- Added nifty help file.
|
|
6.0.7 November 19, 2001
|
|
- Thanks to Brett Carlane for some great enhancements. Some are added,
|
|
some are not, yet. Added highlighting of current and alternate
|
|
filenames. Added splitting of path/filename toggle. Reworked
|
|
ShowBuffers().
|
|
- Changed my email address.
|
|
6.0.6 September 05, 2001
|
|
- Copyright notice added. Needed this so that it could be distributed
|
|
with Debian Linux.
|
|
- Fixed problem with the SortListing() function failing when there was
|
|
only one buffer to display.
|
|
6.0.5 August 10, 2001
|
|
- Fixed problems reported by David Pascoe, in that you where unable to
|
|
hit 'd' on a buffer that belonged to a files that no longer existed
|
|
and that the 'yank' buffer was being overridden by the help text when
|
|
the bufexplorer was opened.
|
|
6.0.4 July, 31, 2001
|
|
- Thanks to Charles Campbell, Jr. for making this plugin more plugin
|
|
*compliant*, adding default keymappings of <Leader>be and <Leader>bs
|
|
as well as fixing the 'w:sortDirLabel not being defined' bug.
|
|
6.0.3 July 30, 2001
|
|
- Added sorting capabilities. Sort taken from explorer.vim.
|
|
6.0.2 July 25, 2001
|
|
- Can't remember.
|
|
6.0.1 Sometime before July 25, 2001
|
|
- Initial release.
|
|
|
|
===============================================================================
|
|
TODO *bufexplorer-todo*
|
|
|
|
- Add ability to open a buffer in a horizontal or vertical split after the
|
|
initial bufexplorer window is opened.
|
|
|
|
===============================================================================
|
|
CREDITS *bufexplorer-credits*
|
|
|
|
Author: Jeff Lanzarotta <delux256-vim at outlook dot com>
|
|
|
|
Credit must go out to Bram Moolenaar and all the Vim developers for
|
|
making the world's best editor (IMHO). I also want to thank everyone who
|
|
helped and gave me suggestions. I wouldn't want to leave anyone out so I
|
|
won't list names.
|
|
|
|
===============================================================================
|
|
COPYRIGHT *bufexplorer-copyright*
|
|
|
|
Copyright (c) 2001-2017, Jeff Lanzarotta
|
|
All rights reserved.
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the following conditions are met:
|
|
|
|
* Redistributions of source code must retain the above copyright notice, this
|
|
list of conditions and the following disclaimer.
|
|
|
|
* Redistributions in binary form must reproduce the above copyright notice,
|
|
this list of conditions and the following disclaimer in the documentation
|
|
and/or other materials provided with the distribution.
|
|
|
|
* Neither the name of the {organization} nor the names of its contributors may
|
|
be used to endorse or promote products derived from this software without
|
|
specific prior written permission.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
===============================================================================
|
|
vim:tw=78:noet:wrap:ts=4:ft=help:norl:
|