summaryrefslogtreecommitdiff
path: root/doc/fuf.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/fuf.txt')
-rw-r--r--doc/fuf.txt1883
1 files changed, 1883 insertions, 0 deletions
diff --git a/doc/fuf.txt b/doc/fuf.txt
new file mode 100644
index 0000000..2e36831
--- /dev/null
+++ b/doc/fuf.txt
@@ -0,0 +1,1883 @@
+*fuf.txt* buffer/file/command/tag/etc explorer with fuzzy matching.
+
+ Copyright (c) 2007-2010 Takeshi NISHIDA
+
+FuzzyFinder *fuzzyfinder* *fuf*
+
+INTRODUCTION |fuf-introduction|
+INSTALLATION |fuf-installation|
+USAGE |fuf-usage|
+MODES |fuf-modes|
+DETAILED TOPICS |fuf-detailed-topics|
+COMMANDS |fuf-commands|
+OPTIONS |fuf-options|
+VIMRC EXAMPLE |fuf-vimrc-example|
+SPECIAL THANKS |fuf-thanks|
+CHANGELOG |fuf-changelog|
+ABOUT |fuf-about|
+
+==============================================================================
+INTRODUCTION *fuf-introduction*
+
+FuzzyFinder provides convenient ways to quickly reach the
+buffer/file/command/bookmark/tag you want. FuzzyFinder searches with the
+fuzzy/partial pattern to which it converted an entered pattern.
+
+ Entered pattern Fuzzy pattern Partial pattern ~
+>
+ abc *a*b*c* *abc*
+ dir/file dir/*f*i*l*e* dir/*file*
+ d*r/file d*r/*f*i*l*e* d*r/*file*
+ ../**/s ../**/*s* ../**/*s*
+ (** allows searching a directory tree.)
+<
+You will be happy when:
+
+ "./AhLongLongLongLongLongFile.txt"
+ "./AhLongLongLongLongLongName.txt"
+ "./OhLongLongLongLongLongFile.txt"
+ "./OhLongLongLongLongLongName.txt" <- you want :O
+
+Type "ON" and "OhLongLongLongLongLongName.txt" will be selected. :D
+
+FuzzyFinder can search:
+
+ - buffers
+ - files
+ - directories
+ - most recently used files
+ - files around most recently used files
+ - most recently used command-lines
+ - bookmarked files
+ - bookmarked directories
+ - tags
+ - files which are included in current tagfiles
+ - jump list
+ - change list
+ - buffer lines
+ - quickfix
+ - help
+
+FuzzyFinder also provides APIs to use its system of searching files or
+selecting items.
+
+FuzzyFinder supports multibyte characters.
+
+
+==============================================================================
+INSTALLATION *fuf-installation*
+
+Put all files into your runtime directory. If you have the zip file, extract
+it to your runtime directory.
+
+You should place the files as follows:
+>
+ <your runtime directory>/plugin/fuf.vim
+ <your runtime directory>/doc/fuf.txt
+ ...
+<
+If you are disgusted to make your runtime directory confused with a lot of
+plugins, put each of the plugins into a directory individually and just add
+the directory path to 'runtimepath'. It's easy to uninstall plugins.
+
+Then update your help tags files to enable help for this plugin. See
+|add-local-help| for details.
+
+Requirements: ~
+
+- L9 library (vimscript #3252)
+
+
+==============================================================================
+USAGE *fuf-usage*
+
+You can launch FuzzyFinder by the following commands:
+
+ Command Mode ~
+ |:FufBuffer| - Buffer mode (|fuf-buffer-mode|)
+ |:FufFile| - File mode (|fuf-file-mode|)
+ |:FufCoverageFile| - Coverage-File mode (|fuf-coveragefile-mode|)
+ |:FufDir| - Directory mode (|fuf-dir-mode|)
+ |:FufMruFile| - MRU-File mode (|fuf-mrufile-mode|)
+ |:FufMruCmd| - MRU-Command mode (|fuf-mrucmd-mode|)
+ |:FufBookmarkFile| - Bookmark-File mode (|fuf-bookmarkfile-mode|)
+ |:FufBookmarkDir| - Bookmark-Dir mode (|fuf-bookmarkdir-mode|)
+ |:FufTag| - Tag mode (|fuf-tag-mode|)
+ |:FufBufferTag| - Buffer-Tag mode (|fuf-buffertag-mode|)
+ |:FufTaggedFile| - Tagged-File mode (|fuf-taggedfile-mode|)
+ |:FufJumpList| - Jump-List mode (|fuf-jumplist-mode|)
+ |:FufChangeList| - Change-List mode (|fuf-changelist-mode|)
+ |:FufQuickfix| - Quickfix mode (|fuf-quickfix-mode|)
+ |:FufLine| - Line mode (|fuf-line-mode|)
+ |:FufHelp| - Help mode (|fuf-help-mode|)
+
+It is recommended to map these commands.
+
+These commands open 1-line buffer to enter search pattern and start insert
+mode.
+
+FuzzyFinder searchs for matching items with an entered pattern and shows them
+in a completion menu. For more details on pattern matching, see
+|fuf-search-patterns|.
+
+If there are a lot of matching items, FuzzyFinder limits the number of
+enumerating items (|g:fuf_enumeratingLimit|) to speed up a response time, and
+highlights the pattern with "Error" group.
+
+The first item in the completion menu will be selected automatically.
+
+Typing <C-w> deletes one block of an entered pattern before the cursor, like a
+directory name.
+
+with <C-s> (|g:fuf_keyPrevPattern|) and <C-^> (|g:fuf_keyNextPattern|), You
+can recall patterns which have been entered before from history.
+
+You can open a selected item in various ways:
+
+ <CR> (|g:fuf_keyOpen|) - opens in a previous window.
+ <C-j> (|g:fuf_keyOpenSplit|) - opens in a split window.
+ <C-k> (|g:fuf_keyOpenVsplit|) - opens in a vertical-split window.
+ <C-l> (|g:fuf_keyOpenTabpage|) - opens in a new tab page.
+
+To cancel and return to previous window, just leave Insert mode.
+
+With <C-\><C-\> (|g:fuf_keySwitchMatching|), You can switch search method
+between fuzzy matching and partial matching.
+
+With <C-t> (|g:fuf_keyNextMode|) and <C-y> (|g:fuf_keyPrevMode|), You can
+switch current mode without leaving Insert mode .
+
+You can preview selected item with <C-@> (|g:fuf_keyPreview|) in some modes.
+Repeating the key on the same item shows another information. The height
+of command-line area is changed to |g:fuf_previewHeight| when you launch a
+mode supporting preview. This feature is available when |g:fuf_previewHeight|
+is not 0.
+
+
+==============================================================================
+MODES *fuf-modes*
+
+ *fuf-buffer-mode*
+Buffer mode ~
+
+This mode provides an interface to select a buffer from a list of existing
+buffers and open it.
+
+Press <C-]> (|g:fuf_buffer_keyDelete|) in this mode and selected buffer will
+be deleted.
+
+ *fuf-file-mode*
+File mode ~
+
+This mode provides an interface to search a file tree for a file and open it.
+
+ *fuf-coveragefile-mode*
+Coverage-File mode ~
+
+This mode provides an interface to select a file from all files of a preset
+coverage and open it.
+
+By default, This mode lists all files under the current working directory
+recursively. (|g:fuf_coveragefile_globPatterns|)
+
+If you want to search other coverage, execute |FufCoverageFileRegister|
+command to register new search coverage and |FufCoverageFileChange| command to
+choose a search coverage and launch Coverage-File mode.
+
+In addition, there is another way to change a search coverage with
+|fuf#setOneTimeVariables()| function.
+
+Example: search only .h and .c files:
+>
+ call fuf#setOneTimeVariables(['g:fuf_coveragefile_globPatterns', ['**/*.h', '**/*.c']])
+ \ | FufCoverageFile
+<
+Example: search your home directory in addition to the default coverage:
+>
+ call fuf#setOneTimeVariables(['g:fuf_coveragefile_globPatterns', g:fuf_coveragefile_globPatterns + ['~/**/.*', '~/**/*']])
+ \ | FufCoverageFile
+<
+
+ *fuf-dir-mode*
+Directory mode ~
+
+This mode provides an interface to search a file tree for a directory and
+change the current directory.
+
+ *fuf-mrufile-mode*
+MRU-File mode ~
+
+This mode provides an interface to select a file from the most recently used
+files and open it.
+
+Press <C-]> (|g:fuf_mrufile_keyExpand|) in this mode and files around the most
+recently used files are listed. Each time the key is pressed, the search range
+are expanded one level along the directory tree upwardly/downwardly.
+
+This mode is set to disable by default (|g:fuf_modesDisable|) because
+processes for this mode in |BufEnter| and |BufWritePost| could cause
+Performance issue.
+
+See also: |FufMruFileInCwd|
+
+ *fuf-mrucmd-mode*
+MRU-Command mode ~
+
+This mode provides an interface to select a command from the most recently
+used commands and execute it.
+
+This mode is set to disable by default (|g:fuf_modesDisable|) because mapping
+<CR> of Command-line mode required by this mode has side effects.
+
+ *fuf-bookmarkfile-mode*
+Bookmark-File mode ~
+
+This mode provides an interface to select one of the bookmarks you have added
+beforehand and jump there.
+
+You can add a cursor line to bookmarks by |:FufBookmarkFileAdd| command.
+Execute that command and you will be prompted to enter a bookmark name.
+
+FuzzyFinder adjusts a line number for jump. If a line of bookmarked position
+does not match to a pattern when the bookmark was added, FuzzyFinder searches
+a matching line around bookmarked position. So you can jump to a bookmarked
+line even if the line is out of bookmarked position. If you want to jump to
+bookmarked line number without the adjustment, set
+|g:fuf_bookmarkfile_searchRange| option to 0.
+
+Press <C-]> (|g:fuf_bookmarkfile_keyDelete|) in this mode and selected
+bookmark will be deleted.
+
+ *fuf-bookmarkdir-mode*
+Bookmark-Dir mode ~
+
+This mode provides an interface to select one of the bookmarks you have added
+beforehand and change the current directory.
+
+You can add a directory to bookmarks by |:FufBookmarkDirAdd| command. Execute
+that command and you will be prompted to enter a directory path and a
+bookmark name.
+
+Press <C-]> (|g:fuf_bookmarkdir_keyDelete|) in this mode and selected bookmark
+will be deleted.
+
+ *fuf-tag-mode*
+Tag mode ~
+
+This mode provides an interface to select a tag and jump to the definition of
+it.
+
+Following mapping is a replacement for <C-]>:
+>
+ noremap <silent> <C-]> :FufTagWithCursorWord!<CR>
+<
+
+ *fuf-buffertag-mode*
+Buffer-Tag mode ~
+
+This mode provides an interface to select a tag of current buffer or all
+buffers and jump to the definition of it.
+
+Tag list is instantly created when FuzzyFinder is launched, so there is no
+need to make tags file in advance.
+
+|FufBufferTag| covers current buffer and |FufBufferTagAll| covers all buffers.
+
+Following mapping is a replacement for <C-]>:
+>
+ nnoremap <silent> <C-]> :FufBufferTagWithCursorWord!<CR>
+ vnoremap <silent> <C-]> :FufBufferTagAllWithSelectedText!<CR>
+<
+or
+>
+ nnoremap <silent> <C-]> :FufBufferTagAllWithCursorWord!<CR>
+ vnoremap <silent> <C-]> :FufBufferTagAllWithSelectedText!<CR>
+<
+This mode is inspired by taglist.vim (vimscript #273) and refered its codes.
+
+ *fuf-taggedfile-mode*
+Tagged-File mode ~
+
+This mode provides an interface to select one of the files which are included
+in current tagfiles and open it.
+
+ *fuf-jumplist-mode*
+Jump-List mode ~
+
+This mode provides an interface to select one from the |jumplist| of the
+current window and jump there.
+
+ *fuf-changelist-mode*
+Change-List mode ~
+
+This mode provides an interface to select one from the |changelist| of the
+current buffer and jump there.
+
+ *fuf-quickfix-mode*
+Quickfix mode ~
+
+This mode provides an interface to select one from the |quickfix| list and
+jump there.
+
+ *fuf-line-mode*
+Line mode ~
+
+This mode provides an interface to select a line from current buffer and jump
+there.
+
+ *fuf-help-mode*
+Help mode ~
+
+This mode provides an interface to select a help tag and jump to the help
+page.
+
+ *fuf-givenfile-mode*
+Given-File mode ~
+
+This mode provides an API to open a selected file from a given list.
+
+API function:
+>
+ function fuf#givenfile#launch(
+ \ initialPattern, partialMatching, prompt, items)
+<
+ initialPattern - String which is inserted after launching
+ FuzzyFinder.
+ partialMatching - If non-zero, enable partial matching instead of
+ fuzzy matching.
+ prompt - Prompt string
+ items - List of items.
+
+Example of use:
+>
+ " Open one of your dotfiles.
+ call fuf#givenfile#launch('', 0, '>', split(glob('~/.*'), "\n"))
+<
+
+ *fuf-givendir-mode*
+Given-Directory mode ~
+
+This mode provides an API to change current working directory to a selected
+one from a given list.
+
+API function:
+>
+ function fuf#givendir#launch(
+ \ initialPattern, partialMatching, prompt, items)
+<
+ initialPattern - String which is inserted after launching
+ FuzzyFinder.
+ partialMatching - If non-zero, enable partial matching instead of
+ fuzzy matching.
+ prompt - Prompt string
+ items - List of items.
+
+
+Example of use:
+>
+ " Change current working directory to one of your runtime directory.
+ call fuf#givendir#launch('', 0, '>', split(&runtimepath, ','))
+<
+
+ *fuf-givencmd-mode*
+Given-Command mode ~
+
+This mode provides an API to execute a selected command from a given list.
+
+A selected command is executed by |feedkeys()|, so it is able to emulate a
+series of key input in Normal mode.
+
+API function:
+>
+ function fuf#givencmd#launch(
+ \ initialPattern, partialMatching, prompt, items)
+<
+ initialPattern - String which is inserted after launching
+ FuzzyFinder.
+ partialMatching - If non-zero, enable partial matching instead of
+ fuzzy matching.
+ prompt - Prompt string
+ items - List of items.
+
+
+Example of use:
+>
+ function GetAllCommands()
+ redir => commands
+ silent command
+ redir END
+ return map((split(commands, "\n")[3:]),
+ \ '":" . matchstr(v:val, ''^....\zs\S*'')')
+ endfunction
+
+ " execute one of the user-defined commands
+ call fuf#givencmd#launch('', 0, '>', GetAllCommands())
+
+<
+
+ *fuf-callbackfile-mode*
+Callback-File mode ~
+
+This mode provides an API to find and get a file path which is selected by an
+user.
+
+API function:
+>
+ function fuf#callbackfile#launch(
+ \ initialPattern, partialMatching, prompt, exclude, listener)
+<
+ initialPattern - String which is inserted after launching
+ FuzzyFinder.
+ partialMatching - If non-zero, enable partial matching instead of
+ fuzzy matching.
+ prompt - Prompt string.
+ exclude - Regexp pattern for items which you want to exclude
+ from completion list.
+ listener - |Dictionary| which has 'onComplete' and 'onAbort'.
+ They are called at the end of FuzzyFinder.
+ listener.onComplete(item, method) is called with 2
+ arguments which are a name of selected item and a
+ number of open method when completed.
+ listener.onAbort() is called when aborted.
+
+Example of use:
+>
+ let listener = {}
+
+ function listener.onComplete(item, method)
+ echo "Item: " . a:item . "\nMethod: " . a:method
+ endfunction
+
+ function listener.onAbort()
+ echo "Abort"
+ endfunction
+
+ " Find a file from current working directory.
+ call fuf#callbackfile#launch('', 0, '>', '', listener)
+
+ " Find a file from home directory.
+ call fuf#callbackfile#launch('~/', 0, '>', '', listener)
+<
+
+ *fuf-callbackitem-mode*
+Callback-Item mode ~
+
+This mode provides an API to get an item which is selected from a given list
+by an user.
+
+API function:
+>
+ function fuf#callbackitem#launch(
+ \ initialPattern, partialMatching, prompt, listener, items, forPath)
+<
+ initialPattern - String which is inserted after launching
+ FuzzyFinder.
+ partialMatching - If non-zero, enable partial matching instead of
+ fuzzy matching.
+ prompt - Prompt string
+ listener - |Dictionary| which has 'onComplete' and 'onAbort'.
+ They are called at the end of FuzzyFinder.
+ listener.onComplete(item, method) is called with 2
+ arguments which are a name of selected item and a
+ number of open method when completed.
+ listener.onAbort() is called when aborted.
+ items - List of items.
+ forPath - If non-zero, use a matching method for files.
+
+Example of use:
+>
+ let listener = {}
+
+ function listener.onComplete(item, method)
+ echo "Item: " . a:item . "\nMethod: " . a:method
+ endfunction
+
+ function listener.onAbort()
+ echo "Abort"
+ endfunction
+
+ " Select an item from a given list.
+ call fuf#callbackitem#launch('', 0, '>', listener, ['ed', 'vi', 'vim'], 0)
+
+ " Select a file from a given list.
+ call fuf#callbackitem#launch('', 0, '>', listener, ['../foo/bar', 'baz'], 1)
+<
+
+==============================================================================
+DETAILED TOPICS *fuf-detailed-topics*
+
+ *fuf-setting-one-time-option* *fuf#setOneTimeVariables()*
+Setting One-Time Options ~
+
+If you want to set one-time options only for the next FuzzyFinder,
+|fuf#setOneTimeVariables()| function will be of help. This function is used as
+follows:
+>
+ call fuf#setOneTimeVariables(['g:fuf_ignoreCase', 0], ['&lines', 50])
+<
+This function takes 0 or more arguments and each of them is a pair of a
+variable name and its value. Specified options will be set practically next
+time FuzzyFinder is launched, and restored when FuzzyFinder is closed.
+
+ *fuf-search-patterns*
+Search Patterns ~
+
+You can enter one primary pattern and zero or more refining patterns as search
+patterns. An entered pattern is separated by ";" (|g:fuf_patternSeparator|),
+and the first pattern is a primary pattern and the rest of patterns is a
+refining pattern.
+>
+ primary refining refining
+ |----------| |-------| |----|
+ >MruFile>bookmark.vim;autoload/;/home/
+<
+A refining pattern is used to narrow down the list of matching items by
+another pattern.
+
+With a primary pattern, FuzzyFinder does fuzzy matching or partial matching,
+which you specified. With a refining pattern, FuzzyFinder does partial
+matching by default. (|g:fuf_fuzzyRefining|)
+
+When you enter a number as refining pattern, it also can match the index of
+each item.
+
+In a mode which targets a static set of file paths (such as Buffer or MRU-File
+mode, not File or Directory) and |g:fuf_splitPathMatching| is non-zero,
+matching with a primary pattern is divided into head part and tail part and
+done individually.
+>
+ head tail
+ |------||-----|
+ foo/bar/baz.vim
+
+ fuzzy matching example:
+ +----------------+---------+---------+---------+
+ | item \ pattern | foo/bar | foo/ | bar |
+ +----------------+---------+---------+---------+
+ | foo/bar | match | match | match |
+ | foo/abc | unmatch | match | unmatch |
+ | abc/bar | unmatch | unmatch | match |
+ | foobar | unmatch | unmatch | match |
+ | foooo/barrrr | match | match | match |
+ | foooo/fooooo | unmatch | match | unmatch |
+ +----------------+---------+---------+---------+
+<
+refining pattern can match anywhere on each path in the above case.
+
+ *fuf-sorting-of-completion-items*
+Sorting Of Completion Items ~
+
+FuzzyFinder sorts completion items with some rules.
+
+An item, one part of which is matched with a whole pattern, is placed upper.
+E.g., with the pattern "bc", the item "abc" is placed upper than "bac".
+
+In the above case, items, each having matching part at the head of itself, are
+placed upper than others. E.g., with the pattern "foo", the item "foobar" is
+placed upper than "foobarbaz".
+
+And the shorter the length of the item after matching position puts it higher.
+E.g., with the pattern "bar", the item "foobar" is placed upper than
+"foobarbaz".
+
+If a pattern matches an item at only word boundaries of it, the item is placed
+upper. E.g., with a pattern "fb", items such as "fooBarBaz" and "foo_bar_baz"
+is placed upper.
+
+Plus, FuzzyFinder has a learning system. An item which has been completed in
+the past with current pattern is placed upper.
+
+ *fuf-reusing-window*
+Reusing Of A Window Containing Target Buffer/File ~
+
+If a window containing target buffer is found in current tab page when
+FuzzyFinder is going to open the buffer in a split new window, move to it. If
+a window containing target buffer is found in other tab page when FuzzyFinder
+is going to open the buffer in a new tab page, move to it.
+
+You can disable that feature via 'reuse_window' options if always want to open
+a buffer in a new window.
+
+ *fuf-hiding-menu*
+To Hide The Completion Menu Temporarily In FuzzyFinder ~
+
+You can close it by <C-e> and reopen it by <C-x><C-o>.
+
+ *fuf-abbreviation* *fuf-multiple-search*
+Abbreviations And Multiple Search ~
+
+You can use abbreviations and multiple search in all modes by setting
+|g:fuf_abbrevMap| option.
+
+For example, set as below:
+>
+ let g:fuf_abbrevMap = {
+ \ "^doc:" : [
+ \ "~/project/**/doc/",
+ \ ".vim/doc/",
+ \ ],
+ \ }
+<
+and enter "doc:txt" in File mode, then FuzzyFinder searches by the following
+patterns:
+
+ "~/project/**/doc/*t*x*t*"
+ ".vim/doc/*t*x*t*"
+
+and show concatenated search results.
+
+ *fuf-data-file*
+Data File ~
+
+FuzzyFinder writes completion statistics, MRU data, bookmark, etc to files
+under |g:fuf_dataDir|.
+
+|:FufEditDataFile| command is helpful in editing your data files. This command
+reads the data file in new unnamed buffer. Write the buffer and the data file
+will be updated.
+
+ *fuf-cache*
+Cache ~
+
+Once a cache was created, It is not automatically updated to speed up the
+response time by default. To update it, use |:FufRenewCache| command.
+
+ *fuf-dot-sequence*
+Going Up Parent Directories With Dot Sequence ~
+
+You can go up parent directories with entering dot sequence. Dot sequence
+after a path separator is expanded to "../" sequence.
+
+ Dot sequence Expanded pattern ~
+ /.. /../
+ /... /../../
+ /.... /../../../
+
+ *fuf-how-to-add-mode*
+How To Add Mode ~
+
+To add "mymode" mode, put the source file at autoload/fuf/mymode.vim and call
+fuf#addMode("mymode") .
+
+ *fuf-migemo*
+What Is Migemo ~
+
+Migemo is a search method for Japanese language.
+
+
+==============================================================================
+COMMANDS *fuf-commands*
+
+See also: |fuf-vimrc-example|
+
+ *:FufBuffer*
+:FufBuffer[!] [{pattern}]
+ Launchs Buffer mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufFile*
+:FufFile[!] [{pattern}]
+ Launchs File mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufFileWithFullCwd*
+:FufFileWithFullCwd[!] [{pattern}]
+ Is mostly the same as |:FufFile|, except that initial pattern is a
+ full path of current working directory.
+
+ *:FufFileWithCurrentBufferDir*
+:FufFileWithCurrentBufferDir[!] [{pattern}]
+ Is mostly the same as |:FufFile|, except that initial pattern is a
+ path of directory current buffer is in.
+
+ *:FufCoverageFile*
+:FufCoverageFile[!] [{pattern}]
+ Launchs Coverage-File mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufDir*
+:FufDir[!] [{pattern}]
+ Launchs Directory mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufDirWithFullCwd*
+:FufDirWithFullCwd[!] [{pattern}]
+ Is mostly the same as |:FufDir|, except that initial pattern is a full
+ path of current working directory.
+
+ *:FufDirWithCurrentBufferDir*
+:FufDirWithCurrentBufferDir[!] [{pattern}]
+ Is mostly the same as |:FufDir|, except that initial pattern is a path
+ of directory current buffer is in.
+
+ *:FufMruFile*
+:FufMruFile[!] [{pattern}]
+ Launchs MRU-File mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufMruFileInCwd*
+:FufMruFileInCwd[!] [{pattern}]
+ Is mostly the same as |:FufMruFile|, except that files
+ only in current working directory are listed.
+
+ *:FufMruCmd*
+:FufMruCmd[!] [{pattern}]
+ Launchs MRU-Command mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufBookmarkFile*
+:FufBookmarkFile[!] [{pattern}]
+ Launchs Bookmark-File mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufBookmarkDir*
+:FufBookmarkDir[!] [{pattern}]
+ Launchs Bookmark-Dir mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufTag*
+:FufTag[!] [{pattern}]
+ Launchs Tag mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufTagWithCursorWord*
+:FufTagWithCursorWord[!] [{pattern}]
+ Is mostly the same as |:FufTag|, except that initial pattern is the
+ word under the cursor.
+
+ *:FufBufferTag*
+:FufBufferTag[!] [{pattern}]
+ Launchs Buffer-Tag mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufBufferTagAll*
+:FufBufferTagAll[!] [{pattern}]
+ Is mostly the same as |:FufBufferTag|, except that tags are gathered
+ from all other buffers in addition to the current one.
+
+ *:FufBufferTagWithCursorWord*
+:FufBufferTagWithCursorWord[!] [{pattern}]
+ Is mostly the same as |:FufBufferTag|, except that initial pattern is
+ the word under the cursor.
+
+ *:FufBufferTagAllWithCursorWord*
+:FufBufferTagAllWithCursorWord[!] [{pattern}]
+ Is mostly the same as |:FufBufferTagAll|, except that initial pattern
+ is the word under the cursor.
+
+ *:FufBufferTagWithSelectedText*
+:FufBufferTagWithSelectedText[!] [{pattern}]
+ Is mostly the same as |:FufBufferTag|, except that initial pattern is
+ the last selected text.
+
+ *:FufBufferTagAllWithSelectedText*
+:FufBufferTagAllWithSelectedText[!] [{pattern}]
+ Is mostly the same as |:FufBufferTagAll|, except that initial pattern
+ is the last selected text.
+
+ *:FufTaggedFile*
+:FufTaggedFile[!] [{pattern}]
+ Launchs Tagged-File mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufJumpList*
+:FufJumpList[!] [{pattern}]
+ Launchs Jump-List mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufChangeList*
+:FufChangeList[!] [{pattern}]
+ Launchs Change-List mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufQuickfix*
+:FufQuickfix[!] [{pattern}]
+ Launchs Quickfix mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufLine*
+:FufLine[!] [{pattern}]
+ Launchs Line mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufHelp*
+:FufHelp[!] [{pattern}]
+ Launchs Help mode.
+
+ If a command was executed with a ! modifier, it does partial matching
+ instead of fuzzy matching.
+
+ {pattern} will be inserted after launching FuzzyFinder.
+
+ *:FufEditDataFile*
+:FufEditDataFile
+ Opens a buffer for editing your data files. See |fuf-data-file| for
+ details.
+
+ *:FufCoverageFileRegister*
+:FufCoverageFileRegister
+ Registers new search coverage to be searched in Coverage-File mode.
+ First, input glob patterns, like ~/* . You can add patterns unless
+ typing <Esc>. Next, input coverage name.
+
+ See also: |glob()|, |fuf-coveragefile-mode|
+
+ *:FufCoverageFileChange*
+:FufCoverageFileChange [{name}]
+ Launchs Coverage-File mode with a chosen coverage, registered with
+ |FufCoverageFileRegister| command.
+
+ If location name is given, the choise process will be skipped.
+
+ See also: |fuf-coveragefile-mode|
+
+ *:FufBookmarkFileAdd*
+:FufBookmarkFileAdd [{name}]
+ Adds a cursor line to bookmarks.
+
+ See also: |fuf-bookmarkfile-mode|
+
+ *:FufBookmarkFileAddAsSelectedText*
+:FufBookmarkFileAddAsSelectedText
+ Is mostly the same as |:FufBookmarkFileAdd|, except that initial
+ pattern is the last selected one.
+
+ *:FufBookmarkDirAdd*
+:FufBookmarkDirAdd [{name}]
+ Adds a directory to bookmarks.
+
+ See also: |fuf-bookmarkdir-mode|
+
+ *:FufRenewCache*
+:FufRenewCache
+ Removes caches to renew completion items. See |fuf-cache| for details.
+
+
+==============================================================================
+OPTIONS *fuf-options*
+
+ *fuf-options-for-all-modes*
+For All Modes ~
+
+ *g:fuf_modesDisable* >
+ let g:fuf_modesDisable = [ 'mrufile', 'mrucmd', ]
+<
+ List of mode names to disable.
+
+ Modes which are listed will never be initialized and never handle any
+ event.
+
+ *g:fuf_keyOpen* >
+ let g:fuf_keyOpen = '<CR>'
+<
+ Key mapped to select completion item or finish input and open a
+ buffer/file in previous window.
+
+ *g:fuf_keyOpenSplit* >
+ let g:fuf_keyOpenSplit = '<C-j>'
+<
+ Key mapped to select completion item or finish input and open a
+ buffer/file in split new window
+
+ *g:fuf_keyOpenVsplit* >
+ let g:fuf_keyOpenVsplit = '<C-k>'
+<
+ Key mapped to select completion item or finish input and open a
+ buffer/file in vertical-split new window.
+
+ *g:fuf_keyOpenTabpage* >
+ let g:fuf_keyOpenTabpage = '<C-l>'
+<
+
+ Key mapped to select completion item or finish input and open a
+ buffer/file in a new tab page.
+
+ *g:fuf_keyPreview* >
+ let g:fuf_keyPreview = '<C-@>'
+<
+
+ Key mapped to show information of selected completion item on
+ command-line area. This key makes sense only in modes supporting
+ preview.
+
+ *g:fuf_keyNextMode* >
+ let g:fuf_keyNextMode = '<C-t>'
+<
+ Key mapped to switch to next mode.
+
+ *g:fuf_keyPrevMode* >
+ let g:fuf_keyPrevMode = '<C-y>'
+<
+ Key mapped to switch to previous mode.
+
+ *g:fuf_keyPrevPattern* >
+ let g:fuf_keyPrevPattern = '<C-s>'
+<
+ Key mapped to recall previous entered patten from history.
+
+ *g:fuf_keyNextPattern* >
+ let g:fuf_keyNextPattern = '<C-_>'
+<
+ Key mapped to recall next entered patten from history.
+
+ *g:fuf_keySwitchMatching* >
+ let g:fuf_keySwitchMatching = '<C-\><C-\>'
+<
+ Key mapped to switch between fuzzy matching and partial matching.
+
+ *g:fuf_dataDir* >
+ let g:fuf_dataDir = '~/.vim-fuf-data'
+<
+ Directory path to which data files is put. If empty string,
+ FuzzyFinder does not write data files.
+
+ *g:fuf_abbrevMap* >
+ let g:fuf_abbrevMap = {}
+<
+ |Dictionary|. Each value must be a |List|. All matchs of a
+ key in entered text is expanded with the value.
+
+ *g:fuf_patternSeparator* >
+ let g:fuf_patternSeparator = ';'
+<
+ String which sparates a input pattern into a primary pattern and
+ refining patterns.
+
+ *g:fuf_promptHighlight* >
+ let g:fuf_promptHighlight = 'Question'
+<
+ a highlight group name for a prompt string.
+
+ *g:fuf_ignoreCase* >
+ let g:fuf_ignoreCase = 1
+<
+ If non-zero, FuzzyFinder ignores case in search patterns.
+
+ *g:fuf_splitPathMatching* >
+ let g:fuf_splitPathMatching = 1
+<
+ If non-zero, matching with a primary pattern is divided into head part
+ and tail part and done individually.
+
+ See also: |fuf-search-patterns|
+
+ *g:fuf_fuzzyRefining* >
+ let g:fuf_fuzzyRefining = 0
+<
+ If non-zero, fuzzy matching is done with refining pattern instead of
+ partial matching.
+
+ See also: |fuf-search-patterns|
+
+ *g:fuf_reuseWindow* >
+ let g:fuf_reuseWindow = 1
+<
+ If non-zero and when FuzzyFinder opens a buffer which has already been
+ opened, it reuses a window containing the target buffer.
+
+ *g:fuf_timeFormat* >
+ let g:fuf_timeFormat = '(%Y-%m-%d %H:%M:%S)'
+<
+ String to format time string. See |strftime()| for details.
+
+ *g:fuf_learningLimit* >
+ let g:fuf_learningLimit = 100
+<
+ Ceiling for the number of completion statistics to be stored.
+
+ *g:fuf_enumeratingLimit* >
+ let g:fuf_enumeratingLimit = 50
+<
+ To speed up the response time, FuzzyFinder ends enumerating completion
+ items when found over this.
+
+ *g:fuf_maxMenuWidth* >
+ let g:fuf_maxMenuWidth = 78
+<
+ If a length of a completion item is more than this, it is snipped in
+ completion menu.
+
+ *g:fuf_previewHeight* >
+ let g:fuf_previewHeight = 0
+<
+ 'cmdheight' is set to this when a mode supporting preview is launched.
+ Information of selected completion item will be shown on command-line
+ area. If zero, preview feature is disabled.
+
+ *g:fuf_autoPreview* >
+ let g:fuf_autoPreview = 0
+<
+ If non-zero, previews will be shown automatically.
+
+ *g:fuf_useMigemo* >
+ let g:fuf_useMigemo = 0
+<
+ If non-zero, FuzzyFinder uses Migemo.
+
+ *fuf-options-for-buffer-mode*
+For Buffer Mode ~
+
+ *g:fuf_buffer_prompt* >
+ let g:fuf_buffer_prompt = '>Buffer[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_buffer_switchOrder* >
+ let g:fuf_buffer_switchOrder = 10
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_buffer_mruOrder* >
+ let g:fuf_buffer_mruOrder = 1
+<
+ If non-zero, completion items is sorted in order of recently used.
+
+ *g:fuf_buffer_keyDelete* >
+ let g:fuf_buffer_keyDelete = '<C-]>'
+<
+ Key mapped to delete selected buffer.
+
+ *fuf-options-for-file-mode*
+For File Mode ~
+
+ *g:fuf_file_prompt* >
+ let g:fuf_file_prompt = '>File[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_file_switchOrder* >
+ let g:fuf_file_switchOrder = 20
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_file_exclude* >
+ let g:fuf_file_exclude = '\v\~$|\.(o|exe|dll|bak|orig|swp)$|(^|[/\\])\.(hg|git|bzr)($|[/\\])'
+<
+ Regexp pattern for items which you want to exclude from completion
+ list.
+
+ *fuf-options-for-coveragefile-mode*
+For Coverage-File Mode ~
+
+ *g:fuf_coveragefile_prompt* >
+ let g:fuf_coveragefile_prompt = '>CoverageFile[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_coveragefile_switchOrder* >
+ let g:fuf_coveragefile_switchOrder = 30
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_coveragefile_exclude* >
+ let g:fuf_coveragefile_exclude = '\v\~$|\.(o|exe|dll|bak|orig|swp)$|(^|[/\\])\.(hg|git|bzr)($|[/\\])'
+<
+ Regexp pattern for items which you want to exclude from completion
+ list.
+
+ *g:fuf_coveragefile_globPatterns* >
+ let g:fuf_coveragefile_globPatterns = ['**/.*', '**/*']
+<
+ List of glob patterns to get file paths to be searched.
+
+ See also: |glob()|
+
+ *fuf-options-for-dir-mode*
+For Directory Mode ~
+
+ *g:fuf_dir_prompt* >
+ let g:fuf_dir_prompt = '>Dir[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_dir_switchOrder* >
+ let g:fuf_dir_switchOrder = 40
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_dir_exclude* >
+ let g:fuf_dir_exclude = '\v(^|[/\\])\.(hg|git|bzr)($|[/\\])'
+<
+ Regexp pattern for items which you want to exclude from completion
+ list.
+
+ *fuf-options-for-mrufile-mode*
+For MRU-File Mode ~
+
+ *g:fuf_mrufile_prompt* >
+ let g:fuf_mrufile_prompt = '>MRU-File[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_mrufile_switchOrder* >
+ let g:fuf_mrufile_switchOrder = 50
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_mrufile_exclude* >
+ let g:fuf_mrufile_exclude = '\v\~$|\.(o|exe|dll|bak|orig|sw[po])$|^(\/\/|\\\\|\/mnt\/|\/media\/)'
+<
+ Regexp pattern for items which you want to exclude from completion
+ list.
+
+ *g:fuf_mrufile_maxItem* >
+ let g:fuf_mrufile_maxItem = 200
+<
+ Ceiling for the number of MRU items to be stored.
+
+ *g:fuf_mrufile_maxItemDir* >
+ let g:fuf_mrufile_maxItemDir = 50
+<
+ Ceiling for the number of parent directories of MRU items to be
+ stored, which are used for around search.
+
+ *g:fuf_mrufile_keyExpand* >
+ let g:fuf_mrufile_keyExpand = '<C-]>'
+<
+ Key mapped to expand search range.
+
+ *fuf-options-for-mrucmd-mode*
+For MRU-Cmd Mode ~
+
+ *g:fuf_mrucmd_prompt* >
+ let g:fuf_mrucmd_prompt = '>MRU-Cmd[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_mrucmd_switchOrder* >
+ let g:fuf_mrucmd_switchOrder = 60
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_mrucmd_exclude* >
+ let g:fuf_mrucmd_exclude = '^$'
+<
+ Regexp pattern for items which you want to exclude from completion
+ list.
+
+ *g:fuf_mrucmd_maxItem* >
+ let g:fuf_mrucmd_maxItem = 200
+<
+ This is the ceiling for the number of MRU items to be stored.
+
+ *fuf-options-for-bookmarkfile-mode*
+For Bookmark-File Mode ~
+
+ *g:fuf_bookmarkfile_prompt* >
+ let g:fuf_bookmarkfile_prompt = '>BookmarkFile[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_bookmarkfile_switchOrder* >
+ let g:fuf_bookmarkfile_switchOrder = 70
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_bookmarkfile_searchRange* >
+ let g:fuf_bookmarkfile_searchRange = 400
+<
+ Number of lines which FuzzyFinder searches a matching line from
+ bookmarked position within.
+
+ *g:fuf_bookmarkfile_keyDelete* >
+ let g:fuf_bookmarkfile_keyDelete = '<C-]>'
+<
+ Key mapped to delete selected bookmark.
+
+ *fuf-options-for-bookmarkdir-mode*
+For Bookmark-Dir Mode ~
+
+ *g:fuf_bookmarkdir_prompt* >
+ let g:fuf_bookmarkdir_prompt = '>BookmarkDir[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_bookmarkdir_switchOrder* >
+ let g:fuf_bookmarkdir_switchOrder = 80
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_bookmarkdir_keyDelete* >
+ let g:fuf_bookmarkdir_keyDelete = '<C-]>'
+<
+ Key mapped to delete selected bookmark.
+
+ *fuf-options-for-tag-mode*
+For Tag Mode ~
+
+ *g:fuf_tag_prompt* >
+ let g:fuf_tag_prompt = '>Tag[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_tag_switchOrder* >
+ let g:fuf_tag_switchOrder = 90
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-buffertag-mode*
+For Buffer-Tag Mode ~
+
+ *g:fuf_buffertag_prompt* >
+ let g:fuf_buffertag_prompt = '>Buffer-Tag[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_buffertag_switchOrder* >
+ let g:fuf_buffertag_switchOrder = 100
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *g:fuf_buffertag_ctagsPath* >
+ let g:fuf_buffertag_ctagsPath = 'ctags'
+<
+ Executable file path of Ctags.
+
+ *fuf-options-for-taggedfile-mode*
+For Tagged-File Mode ~
+
+ *g:fuf_taggedfile_prompt* >
+ let g:fuf_taggedfile_prompt = '>Tagged-File[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_taggedfile_switchOrder* >
+ let g:fuf_taggedfile_switchOrder = 110
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-jumplist-mode*
+For Jump-List Mode ~
+
+ *g:fuf_jumplist_prompt* >
+ let g:fuf_jumplist_prompt = '>Jump-List[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_jumplist_switchOrder* >
+ let g:fuf_jumplist_switchOrder = 120
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-changelist-mode*
+For Change-List Mode ~
+
+ *g:fuf_changelist_prompt* >
+ let g:fuf_changelist_prompt = '>Change-List[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_changelist_switchOrder* >
+ let g:fuf_changelist_switchOrder = 130
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-quickfix-mode*
+For Quickfix Mode ~
+
+ *g:fuf_quickfix_prompt* >
+ let g:fuf_quickfix_prompt = '>Quickfix[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_quickfix_switchOrder* >
+ let g:fuf_quickfix_switchOrder = 140
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-line-mode*
+For Line Mode ~
+
+ *g:fuf_line_prompt* >
+ let g:fuf_line_prompt = '>Line[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_line_switchOrder* >
+ let g:fuf_line_switchOrder = 150
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+ *fuf-options-for-help-mode*
+For Help Mode ~
+
+ *g:fuf_help_prompt* >
+ let g:fuf_help_prompt = '>Help[]>'
+<
+ Prompt string. "[]" will be substituted with indicators.
+
+ *g:fuf_help_switchOrder* >
+ let g:fuf_help_switchOrder = 160
+<
+ Number of order for switching to the next/previous mode. If negative
+ number, Fuzzyfinder never switches to this mode.
+
+
+==============================================================================
+VIMRC EXAMPLE *fuf-vimrc-example*
+
+>
+ let g:fuf_modesDisable = []
+ let g:fuf_mrufile_maxItem = 400
+ let g:fuf_mrucmd_maxItem = 400
+ nnoremap <silent> sj :FufBuffer<CR>
+ nnoremap <silent> sk :FufFileWithCurrentBufferDir<CR>
+ nnoremap <silent> sK :FufFileWithFullCwd<CR>
+ nnoremap <silent> s<C-k> :FufFile<CR>
+ nnoremap <silent> sl :FufCoverageFileChange<CR>
+ nnoremap <silent> sL :FufCoverageFileChange<CR>
+ nnoremap <silent> s<C-l> :FufCoverageFileRegister<CR>
+ nnoremap <silent> sd :FufDirWithCurrentBufferDir<CR>
+ nnoremap <silent> sD :FufDirWithFullCwd<CR>
+ nnoremap <silent> s<C-d> :FufDir<CR>
+ nnoremap <silent> sn :FufMruFile<CR>
+ nnoremap <silent> sN :FufMruFileInCwd<CR>
+ nnoremap <silent> sm :FufMruCmd<CR>
+ nnoremap <silent> su :FufBookmarkFile<CR>
+ nnoremap <silent> s<C-u> :FufBookmarkFileAdd<CR>
+ vnoremap <silent> s<C-u> :FufBookmarkFileAddAsSelectedText<CR>
+ nnoremap <silent> si :FufBookmarkDir<CR>
+ nnoremap <silent> s<C-i> :FufBookmarkDirAdd<CR>
+ nnoremap <silent> st :FufTag<CR>
+ nnoremap <silent> sT :FufTag!<CR>
+ nnoremap <silent> s<C-]> :FufTagWithCursorWord!<CR>
+ nnoremap <silent> s, :FufBufferTag<CR>
+ nnoremap <silent> s< :FufBufferTag!<CR>
+ vnoremap <silent> s, :FufBufferTagWithSelectedText!<CR>
+ vnoremap <silent> s< :FufBufferTagWithSelectedText<CR>
+ nnoremap <silent> s} :FufBufferTagWithCursorWord!<CR>
+ nnoremap <silent> s. :FufBufferTagAll<CR>
+ nnoremap <silent> s> :FufBufferTagAll!<CR>
+ vnoremap <silent> s. :FufBufferTagAllWithSelectedText!<CR>
+ vnoremap <silent> s> :FufBufferTagAllWithSelectedText<CR>
+ nnoremap <silent> s] :FufBufferTagAllWithCursorWord!<CR>
+ nnoremap <silent> sg :FufTaggedFile<CR>
+ nnoremap <silent> sG :FufTaggedFile!<CR>
+ nnoremap <silent> so :FufJumpList<CR>
+ nnoremap <silent> sp :FufChangeList<CR>
+ nnoremap <silent> sq :FufQuickfix<CR>
+ nnoremap <silent> sy :FufLine<CR>
+ nnoremap <silent> sh :FufHelp<CR>
+ nnoremap <silent> se :FufEditDataFile<CR>
+ nnoremap <silent> sr :FufRenewCache<CR>
+<
+
+==============================================================================
+SPECIAL THANKS *fuf-thanks*
+
+- Vincent Wang
+- Ingo Karkat
+- Nikolay Golubev
+- Brian Doyle
+- id:secondlife
+- Nathan Neff
+
+
+==============================================================================
+CHANGELOG *fuf-changelog*
+
+4.2.2:
+ - Fixed a bug that unloaded buffers weren't covered by FufBufferTagAll.
+
+4.2.1:
+ - Improved response of Buffer-Tag mode.
+ - Fixed a bug that buffers which had been opened weren't listed in
+ Coverage-File mode
+ - Fixed a bug that tag entries including tab characters weren't parsed
+ correctly in Coverage-File mode
+
+4.2:
+ - L9 library (vimscript #3252) version 1.1 is required.
+ - Added Buffer-Tag mode, inspired by taglist.vim (vimscript #273).
+ - Added :FufMruFileInCwd command.
+
+4.1.1:
+ - Fixed a bug causing a error in MRU-File mode.
+
+4.1:
+ - Added Bookmark-Dir mode.
+ - Added Bookmark-File mode and removed Bookmark mode.
+ - Changed the filename to store data of Coverage-File mode, from
+ '~/.vim-fuf-data/coveragefile/items' to
+ '~/.vim-fuf-data/coveragefile/coverages' .
+ - Fixed a bug that floating point numbers weren't evaluated correctly and
+ caused errors on some non-English locales.
+ - Removed Around-MRU-File mode and integrated its feature to MRU-File mode.
+
+4.0:
+ - From this version, L9 library (vimscript #3252) is required.
+ - Added Coverage-File mode for users wanting something like TextMate's
+ command-t. (But I've never used it.)
+ - Added Around-MRU-File mode. (Too slow. There is room for improvement.)
+ - Added new feature which deletes selected buffer with FuzzyFinder and
+ g:fuf_buffer_keyDelete option.
+ - Added new feature which allows to set one-time options/variables with
+ fuf#setOneTimeVariables() function.
+ - Added g:fuf_dataDir option and removed g:fuf_infoFile,
+ g:g:fuf_tag_cache_dir, g:fuf_taggedfile_cache_dir, and
+ g:fuf_help_cache_dir options.
+ - Added :FufEditDataFile command and removed :FufEditInfo command.
+ - Added g:fuf_fuzzyRefining option.
+ - Added new feature which is auto-preview and g:fuf_autoPreview option.
+ - Changed the default value of g:fuf_previewHeight to 0 in order to disable
+ preview feature. There is an unfixable problem which is caused by a Vim's
+ bug.
+ - Changed the default value of g:fuf_modesDisable option.
+ - Changed the default value of g:fuf_*_switchOrder options.
+ - Improved speed of changing buffers.
+ - Improved the way to add user-defined mode.
+ - Fixed a bug that FuzzyFinder caused reseting window layout.
+ - Removed g:fuf_smartBs option. Use <C-w> instead.
+
+3.5:
+ - Added Line mode.
+ - Added Help mode.
+ - Added key mapping to switch between fuzzy matching and partial matching.
+ - Changed the default values of g:fuf_file_exclude for ignoring "*.dll".
+ - Changed Tag mode and Tagged-File mode to cache parsed data to files in
+ "~/.vim-fuf-cache/".
+ - Fixed a bug that repeating preview key produced no effect.
+ - Fixed a bug that File mode and Directory mode didn't list items in a
+ directory whose name includes uppercase characters. (Thanks, ryo7000)
+
+3.4:
+ - Added new feature which makes it possible to preview selected completion
+ item.
+ - Changed matching rules and added g:fuf_splitPathMatching.
+ - Changed sorting rules.
+ - Changed the default values of g:fuf_file_exclude and g:fuf_dir_exclude in
+ order to ignore ".hg", ".git", and ".bzr" directories.
+ - Changed the default value of g:fuf_mrufile_exclude in order to ignore
+ network files (\\*) on Windows and ignore /mnt/* and /media/* on Unix like
+ systems.
+ - Fixed a bug that an exclude pattern of File, Dir, and Callback-File mode
+ can't be changed.
+
+3.3:
+ - Added Jump-List mode, Change-List mode, and Quickfix mode which enable
+ jumps with jump list, change list, and quickfix list.
+ - Added new feature which deletes selected bookmark with FuzzyFinder and
+ g:fuf_bookmark_keyDelete option.
+ - Changed default values of g:fuf_keyPrevPattern.
+ - Changed to show error message when incompatible with a installed vim.
+
+3.2:
+ - Added g:fuf_promptHighlight option to integrate such options for each
+ mode.
+ - Changed APIs of Given-File, Given-Directory, Given-Command, Callback-File,
+ and Callback-Item modes to be able to set a prompt string.
+ - Changed default values of g:fuf_keyPrevPattern and g:fuf_keyNextPattern.
+ - Fixed a bug that MRU-File data was not updated When a file was opened with
+ FuzzyFinder.
+ - Fixed a bug with scoring matchings for sorting. Thanks to Vincent.
+ - Brought back the removed feature which is switching to an other mode in
+ FuzzyFinder.
+
+3.1:
+ - Added new feature to recall patterns which have been entered before from
+ history.
+
+3.0:
+ - Redesigned the whole plugin for improvements of maintainability and
+ performance. "fuzzyfinder" is abbreviated to "fuf" in the sorce code and
+ filenames. All commands and options are renamed.
+ - Added new feature which is refining pattern.
+ - Improved the rules for sorting completion items. Thanks to the suggestion
+ by Nathan, the rule for boundary matching was implemented.
+ - Changed to open one line buffer of FuzzyFinder with :topleft command
+ instead of :leftabove. The window will alway appear at the top and occupy
+ the full with of the vim window. Thanks to Jan Christoph.
+ - Changed default filename of information file.
+ - Changed MRU-File mode and MRU-Command mode to be disabled by default
+ due to performance and side effect issues.
+ - Removed the feature which is switching to an other mode in FuzzyFinder.
+ - Removed the feature which is temporarily switching 'ignorecase' in
+ FuzzyFinder.
+
+2.22.3:
+ - Fixed a bug that Fuzzyfinder could not open files with '$' in the name on
+ Windows.
+
+2.22.2:
+ - Changed to consider a length of a date/time string when abbreviates long
+ completion items.
+ - Fixed a bug that '**/' pattern did not search for files directly under the
+ current working directory in File mode. Thanks to Martin for reporting.
+
+2.22.1:
+ - Fixed a bug that Fuzzyfinder could not expand abbreviations to patterns
+ including '\' correctly.
+ - Fixed to show item number in Given-File, Given-Directory, and
+ Given-Command mode.
+
+2.22.0:
+ - More improved the abbreviation method for long completion items.
+ - Added Given-File mode for third-party script to select a file from a given
+ list and open.
+ - Added Given-Directory mode for third-party script to select a directory
+ from a given list and change current working directory to it.
+ - Added Given-Command mode for third-party script to select a command from a
+ given list and execute.
+ - Changed ways to launch Callback-File mode and Callback-item mode.
+
+2.21.0:
+ - Improved a method of trimming long completion items. Thanks to Andy,
+ pyrhockz, and Nathan.
+ - Changed not to map command-line <CR> for MRU-Command mode if
+ g:FuzzyFinderOptions.MruCmd.mode_available is set 0 before loading
+ fuzzyfinder.vim.
+ - Added Callback-File mode and Callback-Item mode for third-party script to
+ find a file/directory or an item from a given list using Fuzzyfinder.
+ - Changed not to append ".." to a completion menu in File/Directory mode.
+ Use dot sequence feature.
+ - Changed default value of g:FuzzyFinderOptions.File.excluded_path option.
+ - Changed default value of g:FuzzyFinderOptions.Dir.excluded_path option.
+ - Fixed a bug that couldn't jump to a tag. Thanks to Thinca.
+
+2.20:
+ - Added help files which are doc/fuzzyfinder.txt and doc/fuzzyfinder.jax.
+ - Fixed a bug that an error occurs if current directory included spaces.
+ Thanks id:cho45 and id:secondlife.
+ - Implemented a feature to reuse a window containing target buffer.
+ - Added g:FuzzyFinderOptions.Buffer.reuse_window option.
+ - Added g:FuzzyFinderOptions.File.reuse_window option.
+ - Added g:FuzzyFinderOptions.MruFile.reuse_window option.
+ - Added g:FuzzyFinderOptions.Bookmark.reuse_window option.
+ - Added g:FuzzyFinderOptions.TaggedFile.reuse_window option.
+ - Changed to use 'omnifunc' instead of 'completefunc'. Now you can use <C-u>
+ to delete all entered characters.
+ - Changed default value of g:FuzzyFinderOptions.Base.key_open_tab option.
+ - Changed default value of g:FuzzyFinderOptions.Base.key_next_mode option.
+ - Changed default value of g:FuzzyFinderOptions.Base.key_prev_mode option.
+ - Changed default value of g:FuzzyFinderOptions.Base.key_ignore_case option.
+ - Changed to truncate long completion items from the head instead of tail.
+ - Added g:FuzzyFinderOptions.Base.max_menu_width option instead of
+ g:FuzzyFinderOptions.Base.trim_length option.
+ - Added :FuzzyFinderFileWithFullCwd command.
+ - Added :FuzzyFinderFileWithCurrentBufferDir command.
+ - Added :FuzzyFinderDirWithFullCwd command.
+ - Added :FuzzyFinderDirWithCurrentBufferDir command.
+ - Added :FuzzyFinderTagWithCursorWord command.
+ - Renamed :FuzzyFinderRemoveCache command to :FuzzyFinderRenewCache.
+
+2.19:
+ - Changed MRU-File mode that always formats completion items to be relative
+ to the home directory.
+ - Fixed a bug that a file was opened in an unintended window with Tag List
+ plugin. Thanks Alexey.
+ - Fixed a bug that garbage characters were entered when switched current
+ mode. Thanks id:lugecy.
+
+2.18:
+ - Improved rules for the sorting of completion items.
+ - Changed not to learn a completion if an entered pattern is empty.
+ - Fixed a bug that Buffer mode did not work. Thanks ryo7000.
+
+2.17:
+ - Introduced a learning system for the sorting of completion items.
+ - Added g:FuzzyFinderOptions.Base.learning_limit option.
+ - Changed the specification of the information file. Please remove your
+ information file for Fuzzyfinder.
+
+2.16:
+ - Improved response time by caching in MRU-File mode.
+ - Fixed a bug in Bookmark mode that Fuzzyfinder did not jump to the
+ Bookmarked line number when Bookmarked pattern was not found.
+
+2.15:
+ - Added Bookmark mode.
+ - Removed Favorite-file mode. Use Bookmark mode instead.
+ - Fixed not to record a entry of input() in MRU-Command mode.
+
+2.14:
+ - Changed to show buffer status in Buffer mode.
+ - Fixed a bug that an error occurs when nonexistent buffer-name was entered
+ in Buffer mode. Thanks Maxim Kim.
+ - Added 'enumerating_limit' option. Thanks id:secondlife.
+ - Removed 'matching_limit' option. Use 'enumerating_limit' instead.
+
+2.13:
+ - Fixed a bug that a directory disappeared when a file in that directory was
+ being opened in File/Mru-File mode.
+
+2.12:
+ - Changed to be able to show completion items in the order of recently used
+ in Buffer mode.
+ - Added g:FuzzyFinderOptions.Buffer.mru_order option.
+
+2.11:
+ - Changed that a dot sequence of entered pattern is expanded to parent
+ directories in File/Dir mode.
+ E.g.: "foo/...bar" -> "foo/../../bar"
+ - Fixed a bug that a prompt string was excessively inserted.
+
+2.10:
+ - Changed not to show a current buffer in a completion menu.
+ - Fixed a bug that a filename to open was not been escaped.
+ - Added 'prompt' option.
+ - Added 'prompt_highlight' option.
+ - Removed g:FuzzyFinderOptions.MruFile.no_special_buffer option.
+
+2.9:
+ - Enhanced <BS> behavior in Fuzzyfinder and added 'smart_bs' option.
+ - Fixed a bug that entered pattern was not been escaped.
+ - Fixed not to insert "zv" with "c/pattern<CR>" command in Normal mode.
+ - Avoid the slow down problem caused by filereadable() check for the MRU
+ information in BufEnter/BufWritePost.
+
+2.8.1:
+ - Fixed a bug caused by the non-escaped buffer name "[Fuzzyfinder]".
+ - Fixed a command to open in a new tab page in Buffer mode.
+2.8:
+ - Added 'trim_length' option.
+ - Added 'switch_order' option.
+ - Fixed a bug that entered command did not become the newest in the history.
+ - Fixed a bug that folds could not open with <CR> in a command-line when
+ searching.
+ - Removed 'excluded_indicator' option. Now a completion list in Buffer mode
+ is the same as a result of :buffers.
+
+2.7:
+ - Changed to find an item whose index is matched with the number suffixed
+ with entered pattern.
+ - Fixed the cache bug after changing current directory in File mode.
+
+2.6.2:
+ - Fixed not to miss changes in options when updates the MRU information.
+
+2.6.1:
+ - Fixed a bug related to floating-point support.
+ - Added support for GetLatestVimScripts.
+
+2.6:
+ - Revived MRU-command mode. The problem with a command-line abbreviation was
+ solved.
+ - Changed the specification of the information file.
+ - Added :FuzzyFinderEditInfo command.
+
+2.5.1:
+ - Fixed to be able to match "foo/./bar" by "foo/**/bar" in File mode.
+ - Fixed to be able to open a space-containing file in File mode.
+ - Fixed to honor the current working directory properly in File mode.
+
+2.5:
+ - Fixed the bug that a wrong initial text is entered after switching to a
+ next mode.
+ - Fixed the bug that it does not return to previous window after leaving
+ Fuzzyfinder one.
+
+2.4:
+ - Fixed the bug that Fuzzyfinder fails to open a file caused by auto-cd
+ plugin/script.
+
+2.3:
+ - Added a key mapping to open items in a new tab page and
+ g:FuzzyFinderOptions.Base.key_open_tab option.
+ - Changed to show Fuzzyfinder window above last window even if 'splitbelow'
+ was set.
+ - Changed to set nocursorline and nocursorcolumn in Fuzzyfinder.
+ - Fixed not to push up a buffer number unlimitedly.
+
+2.2:
+ - Added new feature, which is the partial matching.
+ - Fixed the bug that an error occurs when "'" was entered.
+
+2.1:
+ - Restructured the option system AGAIN. Sorry :p
+ - Changed to inherit a typed text when switching a mode without leaving
+ Insert mode.
+ - Changed commands which launch explorers to be able to take a argument for
+ initial text.
+ - Changed to complete file names by relative path and not full path in the
+ buffer/mru-file/tagged-file mode.
+ - Changed to highlight a typed text when the completion item was not found
+ or the completion process was aborted.
+ - Changed to create caches for each tag file and not working directory in
+ the tag/tagged-file mode.
+ - Fixed the bug that the buffer mode couldn't open a unnamed buffer.
+ - Added 'matching_limit' option.
+ - Removed 'max_match' option. Use 'matching_limit' option instead.
+ - Removed 'initial_text' option. Use command argument instead.
+ - Removed the MRU-command mode.
+
+2.0:
+ - Added the tag mode.
+ - Added the tagged-file mode.
+ - Added :FuzzyFinderRemoveCache command.
+ - Restructured the option system. many options are changed names or default
+ values of some options.
+ - Changed to hold and reuse caches of completion lists by default.
+ - Changed to set filetype 'fuzzyfinder'.
+ - Disabled the MRU-command mode by default because there are problems.
+ - Removed FuzzyFinderAddMode command.
+
+1.5:
+ - Added the directory mode.
+ - Fixed the bug that it caused an error when switch a mode in Insert mode.
+ - Changed g:FuzzyFinder_KeySwitchMode type to a list.
+
+1.4:
+ - Changed the specification of the information file.
+ - Added the MRU-commands mode.
+ - Renamed :FuzzyFinderAddFavorite command to :FuzzyFinderAddFavFile.
+ - Renamed g:FuzzyFinder_MruModeVars option to g:FuzzyFinder_MruFileModeVars.
+ - Renamed g:FuzzyFinder_FavoriteModeVars option to
+ g:FuzzyFinder_FavFileModeVars.
+ - Changed to show registered time of each item in MRU/favorite mode.
+ - Added 'timeFormat' option for MRU/favorite modes.
+
+1.3:
+ - Fixed a handling of multi-byte characters.
+
+1.2:
+ - Added support for Migemo. (Migemo is Japanese search method.)
+
+1.1:
+ - Added the favorite mode.
+ - Added new features, which are abbreviations and multiple search.
+ - Added 'abbrevMap' option for each mode.
+ - Added g:FuzzyFinder_MruModeVars['ignoreSpecialBuffers'] option.
+ - Fixed the bug that it did not work correctly when a user have mapped <C-p>
+ or <Down>.
+
+1.0:
+ - Added the MRU mode.
+ - Added commands to add and use original mode.
+ - Improved the sorting algorithm for completion items.
+ - Added 'initialInput' option to automatically insert a text at the
+ beginning of a mode.
+ - Changed that 'excludedPath' option works for the entire path.
+ - Renamed some options.
+ - Changed default values of some options.
+ - Packed the mode-specific options to dictionaries.
+ - Removed some options.
+
+0.6:
+ - Fixed some bugs.
+
+0.5:
+ - Improved response by aborting processing too many items.
+ - Changed to be able to open a buffer/file not only in previous window but
+ also in new window.
+ - Fixed a bug that recursive searching with '**' does not work.
+ - Added g:FuzzyFinder_CompletionItemLimit option.
+ - Added g:FuzzyFinder_KeyOpen option.
+
+0.4:
+ - Improved response of the input.
+ - Improved the sorting algorithm for completion items. It is based on the
+ matching level. 1st is perfect matching, 2nd is prefix matching, and 3rd
+ is fuzzy matching.
+ - Added g:FuzzyFinder_ExcludePattern option.
+ - Removed g:FuzzyFinder_WildIgnore option.
+ - Removed g:FuzzyFinder_EchoPattern option.
+ - Removed g:FuzzyFinder_PathSeparator option.
+ - Changed the default value of g:FuzzyFinder_MinLengthFile from 1 to 0.
+
+0.3:
+ - Added g:FuzzyFinder_IgnoreCase option.
+ - Added g:FuzzyFinder_KeyToggleIgnoreCase option.
+ - Added g:FuzzyFinder_EchoPattern option.
+ - Changed the open command in a buffer mode from ":edit" to ":buffer" to
+ avoid being reset cursor position.
+ - Changed the default value of g:FuzzyFinder_KeyToggleMode from <C-Space> to
+ <F12> because <C-Space> does not work on some CUI environments.
+ - Changed to avoid being loaded by Vim before 7.0.
+ - Fixed a bug with making a fuzzy pattern which has '\'.
+
+0.2:
+ - A bug it does not work on Linux is fixed.
+
+0.1:
+ - First release.
+
+
+==============================================================================
+ABOUT *fuf-about* *fuf-contact* *fuf-author*
+
+Author: Takeshi NISHIDA <ns9tks@DELETE-ME.gmail.com>
+Licence: MIT Licence
+URL: http://www.vim.org/scripts/script.php?script_id=1984
+ http://bitbucket.org/ns9tks/vim-fuzzyfinder/
+
+Bugs/Issues/Suggestions/Improvements ~
+
+Please submit to http://bitbucket.org/ns9tks/vim-fuzzyfinder/issues/ .
+
+==============================================================================
+ vim:tw=78:ts=8:ft=help:norl: