aboutsummaryrefslogtreecommitdiff
path: root/modules/vim/vim.dot.link/doc
diff options
context:
space:
mode:
Diffstat (limited to 'modules/vim/vim.dot.link/doc')
-rw-r--r--modules/vim/vim.dot.link/doc/NERD_tree.txt1222
-rw-r--r--modules/vim/vim.dot.link/doc/bufexplorer.txt547
-rw-r--r--modules/vim/vim.dot.link/doc/git-vim.txt95
-rw-r--r--modules/vim/vim.dot.link/doc/indexer.txt211
-rw-r--r--modules/vim/vim.dot.link/doc/project.txt710
-rw-r--r--modules/vim/vim.dot.link/doc/snipMate.txt286
-rwxr-xr-xmodules/vim/vim.dot.link/doc/taglist.txt1501
-rw-r--r--modules/vim/vim.dot.link/doc/tags304
-rw-r--r--modules/vim/vim.dot.link/doc/vcscommand.txt835
9 files changed, 0 insertions, 5711 deletions
diff --git a/modules/vim/vim.dot.link/doc/NERD_tree.txt b/modules/vim/vim.dot.link/doc/NERD_tree.txt
deleted file mode 100644
index 2e2278c..0000000
--- a/modules/vim/vim.dot.link/doc/NERD_tree.txt
+++ /dev/null
@@ -1,1222 +0,0 @@
-*NERD_tree.txt* A tree explorer plugin that owns your momma!
-
-
-
- omg its ... ~
-
- ________ ________ _ ____________ ____ __________ ____________~
- /_ __/ / / / ____/ / | / / ____/ __ \/ __ \ /_ __/ __ \/ ____/ ____/~
- / / / /_/ / __/ / |/ / __/ / /_/ / / / / / / / /_/ / __/ / __/ ~
- / / / __ / /___ / /| / /___/ _, _/ /_/ / / / / _, _/ /___/ /___ ~
- /_/ /_/ /_/_____/ /_/ |_/_____/_/ |_/_____/ /_/ /_/ |_/_____/_____/ ~
-
-
- Reference Manual~
-
-
-
-
-==============================================================================
-CONTENTS *NERDTree-contents*
-
- 1.Intro...................................|NERDTree|
- 2.Functionality provided..................|NERDTreeFunctionality|
- 2.1.Global commands...................|NERDTreeGlobalCommands|
- 2.2.Bookmarks.........................|NERDTreeBookmarks|
- 2.2.1.The bookmark table..........|NERDTreeBookmarkTable|
- 2.2.2.Bookmark commands...........|NERDTreeBookmarkCommands|
- 2.2.3.Invalid bookmarks...........|NERDTreeInvalidBookmarks|
- 2.3.NERD tree mappings................|NERDTreeMappings|
- 2.4.The NERD tree menu................|NERDTreeMenu|
- 3.Options.................................|NERDTreeOptions|
- 3.1.Option summary....................|NERDTreeOptionSummary|
- 3.2.Option details....................|NERDTreeOptionDetails|
- 4.The NERD tree API.......................|NERDTreeAPI|
- 4.1.Key map API.......................|NERDTreeKeymapAPI|
- 4.2.Menu API..........................|NERDTreeMenuAPI|
- 5.About...................................|NERDTreeAbout|
- 6.Changelog...............................|NERDTreeChangelog|
- 7.Credits.................................|NERDTreeCredits|
- 8.License.................................|NERDTreeLicense|
-
-==============================================================================
-1. Intro *NERDTree*
-
-What is this "NERD tree"??
-
-The NERD tree allows you to explore your filesystem and to open files and
-directories. It presents the filesystem to you in the form of a tree which you
-manipulate with the keyboard and/or mouse. It also allows you to perform
-simple filesystem operations.
-
-The following features and functionality are provided by the NERD tree:
- * Files and directories are displayed in a hierarchical tree structure
- * Different highlighting is provided for the following types of nodes:
- * files
- * directories
- * sym-links
- * windows .lnk files
- * read-only files
- * executable files
- * Many (customisable) mappings are provided to manipulate the tree:
- * Mappings to open/close/explore directory nodes
- * Mappings to open files in new/existing windows/tabs
- * Mappings to change the current root of the tree
- * Mappings to navigate around the tree
- * ...
- * Directories and files can be bookmarked.
- * Most NERD tree navigation can also be done with the mouse
- * Filtering of tree content (can be toggled at runtime)
- * custom file filters to prevent e.g. vim backup files being displayed
- * optional displaying of hidden files (. files)
- * files can be "turned off" so that only directories are displayed
- * The position and size of the NERD tree window can be customised
- * The order in which the nodes in the tree are listed can be customised.
- * A model of your filesystem is created/maintained as you explore it. This
- has several advantages:
- * All filesystem information is cached and is only re-read on demand
- * If you revisit a part of the tree that you left earlier in your
- session, the directory nodes will be opened/closed as you left them
- * The script remembers the cursor position and window position in the NERD
- tree so you can toggle it off (or just close the tree window) and then
- reopen it (with NERDTreeToggle) the NERD tree window will appear exactly
- as you left it
- * You can have a separate NERD tree for each tab, share trees across tabs,
- or a mix of both.
- * By default the script overrides the default file browser (netw), so if
- you :edit a directory a (slighly modified) NERD tree will appear in the
- current window
- * A programmable menu system is provided (simulates right clicking on a
- node)
- * one default menu plugin is provided to perform basic filesytem
- operations (create/delete/move/copy files/directories)
- * There's an API for adding your own keymappings
-
-
-==============================================================================
-2. Functionality provided *NERDTreeFunctionality*
-
-------------------------------------------------------------------------------
-2.1. Global Commands *NERDTreeGlobalCommands*
-
-:NERDTree [<start-directory> | <bookmark>] *:NERDTree*
- Opens a fresh NERD tree. The root of the tree depends on the argument
- given. There are 3 cases: If no argument is given, the current directory
- will be used. If a directory is given, that will be used. If a bookmark
- name is given, the corresponding directory will be used. For example: >
- :NERDTree /home/marty/vim7/src
- :NERDTree foo (foo is the name of a bookmark)
-<
-:NERDTreeFromBookmark <bookmark> *:NERDTreeFromBookmark*
- Opens a fresh NERD tree with the root initialized to the dir for
- <bookmark>. This only reason to use this command over :NERDTree is for
- the completion (which is for bookmarks rather than directories).
-
-:NERDTreeToggle [<start-directory> | <bookmark>] *:NERDTreeToggle*
- If a NERD tree already exists for this tab, it is reopened and rendered
- again. If no NERD tree exists for this tab then this command acts the
- same as the |:NERDTree| command.
-
-:NERDTreeMirror *:NERDTreeMirror*
- Shares an existing NERD tree, from another tab, in the current tab.
- Changes made to one tree are reflected in both as they are actually the
- same buffer.
-
- If only one other NERD tree exists, that tree is automatically mirrored. If
- more than one exists, the script will ask which tree to mirror.
-
-:NERDTreeClose *:NERDTreeClose*
- Close the NERD tree in this tab.
-
-:NERDTreeFind *:NERDTreeFind*
- Find the current file in the tree. If no tree exists for the current tab,
- or the file is not under the current root, then initialize a new tree where
- the root is the directory of the current file.
-
-------------------------------------------------------------------------------
-2.2. Bookmarks *NERDTreeBookmarks*
-
-Bookmarks in the NERD tree are a way to tag files or directories of interest.
-For example, you could use bookmarks to tag all of your project directories.
-
-------------------------------------------------------------------------------
-2.2.1. The Bookmark Table *NERDTreeBookmarkTable*
-
-If the bookmark table is active (see |NERDTree-B| and
-|'NERDTreeShowBookmarks'|), it will be rendered above the tree. You can double
-click bookmarks or use the |NERDTree-o| mapping to activate them. See also,
-|NERDTree-t| and |NERDTree-T|
-
-------------------------------------------------------------------------------
-2.2.2. Bookmark commands *NERDTreeBookmarkCommands*
-
-Note that the following commands are only available in the NERD tree buffer.
-
-:Bookmark <name>
- Bookmark the current node as <name>. If there is already a <name>
- bookmark, it is overwritten. <name> must not contain spaces.
-
-:BookmarkToRoot <bookmark>
- Make the directory corresponding to <bookmark> the new root. If a treenode
- corresponding to <bookmark> is already cached somewhere in the tree then
- the current tree will be used, otherwise a fresh tree will be opened.
- Note that if <bookmark> points to a file then its parent will be used
- instead.
-
-:RevealBookmark <bookmark>
- If the node is cached under the current root then it will be revealed
- (i.e. directory nodes above it will be opened) and the cursor will be
- placed on it.
-
-:OpenBookmark <bookmark>
- <bookmark> must point to a file. The file is opened as though |NERDTree-o|
- was applied. If the node is cached under the current root then it will be
- revealed and the cursor will be placed on it.
-
-:ClearBookmarks [<bookmarks>]
- Remove all the given bookmarks. If no bookmarks are given then remove all
- bookmarks on the current node.
-
-:ClearAllBookmarks
- Remove all bookmarks.
-
-:ReadBookmarks
- Re-read the bookmarks in the |'NERDTreeBookmarksFile'|.
-
-See also |:NERDTree| and |:NERDTreeFromBookmark|.
-
-------------------------------------------------------------------------------
-2.2.3. Invalid Bookmarks *NERDTreeInvalidBookmarks*
-
-If invalid bookmarks are detected, the script will issue an error message and
-the invalid bookmarks will become unavailable for use.
-
-These bookmarks will still be stored in the bookmarks file (see
-|'NERDTreeBookmarksFile'|), down the bottom. There will always be a blank line
-after the valid bookmarks but before the invalid ones.
-
-Each line in the bookmarks file represents one bookmark. The proper format is:
-<bookmark name><space><full path to the bookmark location>
-
-After you have corrected any invalid bookmarks, either restart vim, or go
-:ReadBookmarks from the NERD tree window.
-
-------------------------------------------------------------------------------
-2.3. NERD tree Mappings *NERDTreeMappings*
-
-Default Description~ help-tag~
-Key~
-
-o.......Open files, directories and bookmarks....................|NERDTree-o|
-go......Open selected file, but leave cursor in the NERDTree.....|NERDTree-go|
-t.......Open selected node/bookmark in a new tab.................|NERDTree-t|
-T.......Same as 't' but keep the focus on the current tab........|NERDTree-T|
-i.......Open selected file in a split window.....................|NERDTree-i|
-gi......Same as i, but leave the cursor on the NERDTree..........|NERDTree-gi|
-s.......Open selected file in a new vsplit.......................|NERDTree-s|
-gs......Same as s, but leave the cursor on the NERDTree..........|NERDTree-gs|
-O.......Recursively open the selected directory..................|NERDTree-O|
-x.......Close the current nodes parent...........................|NERDTree-x|
-X.......Recursively close all children of the current node.......|NERDTree-X|
-e.......Edit the current dif.....................................|NERDTree-e|
-
-<CR>...............same as |NERDTree-o|.
-double-click.......same as the |NERDTree-o| map.
-middle-click.......same as |NERDTree-i| for files, same as
- |NERDTree-e| for dirs.
-
-D.......Delete the current bookmark .............................|NERDTree-D|
-
-P.......Jump to the root node....................................|NERDTree-P|
-p.......Jump to current nodes parent.............................|NERDTree-p|
-K.......Jump up inside directories at the current tree depth.....|NERDTree-K|
-J.......Jump down inside directories at the current tree depth...|NERDTree-J|
-<C-J>...Jump down to the next sibling of the current directory...|NERDTree-C-J|
-<C-K>...Jump up to the previous sibling of the current directory.|NERDTree-C-K|
-
-C.......Change the tree root to the selected dir.................|NERDTree-C|
-u.......Move the tree root up one directory......................|NERDTree-u|
-U.......Same as 'u' except the old root node is left open........|NERDTree-U|
-r.......Recursively refresh the current directory................|NERDTree-r|
-R.......Recursively refresh the current root.....................|NERDTree-R|
-m.......Display the NERD tree menu...............................|NERDTree-m|
-cd......Change the CWD to the dir of the selected node...........|NERDTree-cd|
-
-I.......Toggle whether hidden files displayed....................|NERDTree-I|
-f.......Toggle whether the file filters are used.................|NERDTree-f|
-F.......Toggle whether files are displayed.......................|NERDTree-F|
-B.......Toggle whether the bookmark table is displayed...........|NERDTree-B|
-
-q.......Close the NERDTree window................................|NERDTree-q|
-A.......Zoom (maximize/minimize) the NERDTree window.............|NERDTree-A|
-?.......Toggle the display of the quick help.....................|NERDTree-?|
-
-------------------------------------------------------------------------------
- *NERDTree-o*
-Default key: o
-Map option: NERDTreeMapActivateNode
-Applies to: files and directories.
-
-If a file node is selected, it is opened in the previous window.
-
-If a directory is selected it is opened or closed depending on its current
-state.
-
-If a bookmark that links to a directory is selected then that directory
-becomes the new root.
-
-If a bookmark that links to a file is selected then that file is opened in the
-previous window.
-
-------------------------------------------------------------------------------
- *NERDTree-go*
-Default key: go
-Map option: None
-Applies to: files.
-
-If a file node is selected, it is opened in the previous window, but the
-cursor does not move.
-
-The key combo for this mapping is always "g" + NERDTreeMapActivateNode (see
-|NERDTree-o|).
-
-------------------------------------------------------------------------------
- *NERDTree-t*
-Default key: t
-Map option: NERDTreeMapOpenInTab
-Applies to: files and directories.
-
-Opens the selected file in a new tab. If a directory is selected, a fresh
-NERD Tree for that directory is opened in a new tab.
-
-If a bookmark which points to a directory is selected, open a NERD tree for
-that directory in a new tab. If the bookmark points to a file, open that file
-in a new tab.
-
-------------------------------------------------------------------------------
- *NERDTree-T*
-Default key: T
-Map option: NERDTreeMapOpenInTabSilent
-Applies to: files and directories.
-
-The same as |NERDTree-t| except that the focus is kept in the current tab.
-
-------------------------------------------------------------------------------
- *NERDTree-i*
-Default key: i
-Map option: NERDTreeMapOpenSplit
-Applies to: files.
-
-Opens the selected file in a new split window and puts the cursor in the new
-window.
-
-------------------------------------------------------------------------------
- *NERDTree-gi*
-Default key: gi
-Map option: None
-Applies to: files.
-
-The same as |NERDTree-i| except that the cursor is not moved.
-
-The key combo for this mapping is always "g" + NERDTreeMapOpenSplit (see
-|NERDTree-i|).
-
-------------------------------------------------------------------------------
- *NERDTree-s*
-Default key: s
-Map option: NERDTreeMapOpenVSplit
-Applies to: files.
-
-Opens the selected file in a new vertically split window and puts the cursor in
-the new window.
-
-------------------------------------------------------------------------------
- *NERDTree-gs*
-Default key: gs
-Map option: None
-Applies to: files.
-
-The same as |NERDTree-s| except that the cursor is not moved.
-
-The key combo for this mapping is always "g" + NERDTreeMapOpenVSplit (see
-|NERDTree-s|).
-
-------------------------------------------------------------------------------
- *NERDTree-O*
-Default key: O
-Map option: NERDTreeMapOpenRecursively
-Applies to: directories.
-
-Recursively opens the selelected directory.
-
-All files and directories are cached, but if a directory would not be
-displayed due to file filters (see |'NERDTreeIgnore'| |NERDTree-f|) or the
-hidden file filter (see |'NERDTreeShowHidden'|) then its contents are not
-cached. This is handy, especially if you have .svn directories.
-
-------------------------------------------------------------------------------
- *NERDTree-x*
-Default key: x
-Map option: NERDTreeMapCloseDir
-Applies to: files and directories.
-
-Closes the parent of the selected node.
-
-------------------------------------------------------------------------------
- *NERDTree-X*
-Default key: X
-Map option: NERDTreeMapCloseChildren
-Applies to: directories.
-
-Recursively closes all children of the selected directory.
-
-Tip: To quickly "reset" the tree, use |NERDTree-P| with this mapping.
-
-------------------------------------------------------------------------------
- *NERDTree-e*
-Default key: e
-Map option: NERDTreeMapOpenExpl
-Applies to: files and directories.
-
-|:edit|s the selected directory, or the selected file's directory. This could
-result in a NERD tree or a netrw being opened, depending on
-|'NERDTreeHijackNetrw'|.
-
-------------------------------------------------------------------------------
- *NERDTree-D*
-Default key: D
-Map option: NERDTreeMapDeleteBookmark
-Applies to: lines in the bookmarks table
-
-Deletes the currently selected bookmark.
-
-------------------------------------------------------------------------------
- *NERDTree-P*
-Default key: P
-Map option: NERDTreeMapJumpRoot
-Applies to: no restrictions.
-
-Jump to the tree root.
-
-------------------------------------------------------------------------------
- *NERDTree-p*
-Default key: p
-Map option: NERDTreeMapJumpParent
-Applies to: files and directories.
-
-Jump to the parent node of the selected node.
-
-------------------------------------------------------------------------------
- *NERDTree-K*
-Default key: K
-Map option: NERDTreeMapJumpFirstChild
-Applies to: files and directories.
-
-Jump to the first child of the current nodes parent.
-
-If the cursor is already on the first node then do the following:
- * loop back thru the siblings of the current nodes parent until we find an
- open dir with children
- * go to the first child of that node
-
-------------------------------------------------------------------------------
- *NERDTree-J*
-Default key: J
-Map option: NERDTreeMapJumpLastChild
-Applies to: files and directories.
-
-Jump to the last child of the current nodes parent.
-
-If the cursor is already on the last node then do the following:
- * loop forward thru the siblings of the current nodes parent until we find
- an open dir with children
- * go to the last child of that node
-
-------------------------------------------------------------------------------
- *NERDTree-C-J*
-Default key: <C-J>
-Map option: NERDTreeMapJumpNextSibling
-Applies to: files and directories.
-
-Jump to the next sibling of the selected node.
-
-------------------------------------------------------------------------------
- *NERDTree-C-K*
-Default key: <C-K>
-Map option: NERDTreeMapJumpPrevSibling
-Applies to: files and directories.
-
-Jump to the previous sibling of the selected node.
-
-------------------------------------------------------------------------------
- *NERDTree-C*
-Default key: C
-Map option: NERDTreeMapChdir
-Applies to: directories.
-
-Make the selected directory node the new tree root. If a file is selected, its
-parent is used.
-
-------------------------------------------------------------------------------
- *NERDTree-u*
-Default key: u
-Map option: NERDTreeMapUpdir
-Applies to: no restrictions.
-
-Move the tree root up a dir (like doing a "cd ..").
-
-------------------------------------------------------------------------------
- *NERDTree-U*
-Default key: U
-Map option: NERDTreeMapUpdirKeepOpen
-Applies to: no restrictions.
-
-Like |NERDTree-u| except that the old tree root is kept open.
-
-------------------------------------------------------------------------------
- *NERDTree-r*
-Default key: r
-Map option: NERDTreeMapRefresh
-Applies to: files and directories.
-
-If a dir is selected, recursively refresh that dir, i.e. scan the filesystem
-for changes and represent them in the tree.
-
-If a file node is selected then the above is done on it's parent.
-
-------------------------------------------------------------------------------
- *NERDTree-R*
-Default key: R
-Map option: NERDTreeMapRefreshRoot
-Applies to: no restrictions.
-
-Recursively refresh the tree root.
-
-------------------------------------------------------------------------------
- *NERDTree-m*
-Default key: m
-Map option: NERDTreeMapMenu
-Applies to: files and directories.
-
-Display the NERD tree menu. See |NERDTreeMenu| for details.
-
-------------------------------------------------------------------------------
- *NERDTree-cd*
-Default key: cd
-Map option: NERDTreeMapChdir
-Applies to: files and directories.
-
-Change vims current working directory to that of the selected node.
-
-------------------------------------------------------------------------------
- *NERDTree-I*
-Default key: I
-Map option: NERDTreeMapToggleHidden
-Applies to: no restrictions.
-
-Toggles whether hidden files (i.e. "dot files") are displayed.
-
-------------------------------------------------------------------------------
- *NERDTree-f*
-Default key: f
-Map option: NERDTreeMapToggleFilters
-Applies to: no restrictions.
-
-Toggles whether file filters are used. See |'NERDTreeIgnore'| for details.
-
-------------------------------------------------------------------------------
- *NERDTree-F*
-Default key: F
-Map option: NERDTreeMapToggleFiles
-Applies to: no restrictions.
-
-Toggles whether file nodes are displayed.
-
-------------------------------------------------------------------------------
- *NERDTree-B*
-Default key: B
-Map option: NERDTreeMapToggleBookmarks
-Applies to: no restrictions.
-
-Toggles whether the bookmarks table is displayed.
-
-------------------------------------------------------------------------------
- *NERDTree-q*
-Default key: q
-Map option: NERDTreeMapQuit
-Applies to: no restrictions.
-
-Closes the NERDtree window.
-
-------------------------------------------------------------------------------
- *NERDTree-A*
-Default key: A
-Map option: NERDTreeMapToggleZoom
-Applies to: no restrictions.
-
-Maximize (zoom) and minimize the NERDtree window.
-
-------------------------------------------------------------------------------
- *NERDTree-?*
-Default key: ?
-Map option: NERDTreeMapHelp
-Applies to: no restrictions.
-
-Toggles whether the quickhelp is displayed.
-
-------------------------------------------------------------------------------
-2.3. The NERD tree menu *NERDTreeMenu*
-
-The NERD tree has a menu that can be programmed via the an API (see
-|NERDTreeMenuAPI|). The idea is to simulate the "right click" menus that most
-file explorers have.
-
-The script comes with two default menu plugins: exec_menuitem.vim and
-fs_menu.vim. fs_menu.vim adds some basic filesystem operations to the menu for
-creating/deleting/moving/copying files and dirs. exec_menuitem.vim provides a
-menu item to execute executable files.
-
-Related tags: |NERDTree-m| |NERDTreeApi|
-
-==============================================================================
-3. Customisation *NERDTreeOptions*
-
-
-------------------------------------------------------------------------------
-3.1. Customisation summary *NERDTreeOptionSummary*
-
-The script provides the following options that can customise the behaviour the
-NERD tree. These options should be set in your vimrc.
-
-|'loaded_nerd_tree'| Turns off the script.
-
-|'NERDChristmasTree'| Tells the NERD tree to make itself colourful
- and pretty.
-
-|'NERDTreeAutoCenter'| Controls whether the NERD tree window centers
- when the cursor moves within a specified
- distance to the top/bottom of the window.
-|'NERDTreeAutoCenterThreshold'| Controls the sensitivity of autocentering.
-
-|'NERDTreeCaseSensitiveSort'| Tells the NERD tree whether to be case
- sensitive or not when sorting nodes.
-
-|'NERDTreeChDirMode'| Tells the NERD tree if/when it should change
- vim's current working directory.
-
-|'NERDTreeHighlightCursorline'| Tell the NERD tree whether to highlight the
- current cursor line.
-
-|'NERDTreeHijackNetrw'| Tell the NERD tree whether to replace the netrw
- autocommands for exploring local directories.
-
-|'NERDTreeIgnore'| Tells the NERD tree which files to ignore.
-
-|'NERDTreeBookmarksFile'| Where the bookmarks are stored.
-
-|'NERDTreeMouseMode'| Tells the NERD tree how to handle mouse
- clicks.
-
-|'NERDTreeQuitOnOpen'| Closes the tree window after opening a file.
-
-|'NERDTreeShowBookmarks'| Tells the NERD tree whether to display the
- bookmarks table on startup.
-
-|'NERDTreeShowFiles'| Tells the NERD tree whether to display files
- in the tree on startup.
-
-|'NERDTreeShowHidden'| Tells the NERD tree whether to display hidden
- files on startup.
-
-|'NERDTreeShowLineNumbers'| Tells the NERD tree whether to display line
- numbers in the tree window.
-
-|'NERDTreeSortOrder'| Tell the NERD tree how to sort the nodes in
- the tree.
-
-|'NERDTreeStatusline'| Set a statusline for NERD tree windows.
-
-|'NERDTreeWinPos'| Tells the script where to put the NERD tree
- window.
-
-|'NERDTreeWinSize'| Sets the window size when the NERD tree is
- opened.
-
-------------------------------------------------------------------------------
-3.2. Customisation details *NERDTreeOptionDetails*
-
-To enable any of the below options you should put the given line in your
-~/.vimrc
-
- *'loaded_nerd_tree'*
-If this plugin is making you feel homicidal, it may be a good idea to turn it
-off with this line in your vimrc: >
- let loaded_nerd_tree=1
-<
-------------------------------------------------------------------------------
- *'NERDChristmasTree'*
-Values: 0 or 1.
-Default: 1.
-
-If this option is set to 1 then some extra syntax highlighting elements are
-added to the nerd tree to make it more colourful.
-
-Set it to 0 for a more vanilla looking tree.
-
-------------------------------------------------------------------------------
- *'NERDTreeAutoCenter'*
-Values: 0 or 1.
-Default: 1
-
-If set to 1, the NERD tree window will center around the cursor if it moves to
-within |'NERDTreeAutoCenterThreshold'| lines of the top/bottom of the window.
-
-This is ONLY done in response to tree navigation mappings,
-i.e. |NERDTree-J| |NERDTree-K| |NERDTree-C-J| |NERDTree-C-K| |NERDTree-p|
-|NERDTree-P|
-
-The centering is done with a |zz| operation.
-
-------------------------------------------------------------------------------
- *'NERDTreeAutoCenterThreshold'*
-Values: Any natural number.
-Default: 3
-
-This option controls the "sensitivity" of the NERD tree auto centering. See
-|'NERDTreeAutoCenter'| for details.
-
-------------------------------------------------------------------------------
- *'NERDTreeCaseSensitiveSort'*
-Values: 0 or 1.
-Default: 0.
-
-By default the NERD tree does not sort nodes case sensitively, i.e. nodes
-could appear like this: >
- bar.c
- Baz.c
- blarg.c
- boner.c
- Foo.c
-<
-But, if you set this option to 1 then the case of the nodes will be taken into
-account. The above nodes would then be sorted like this: >
- Baz.c
- Foo.c
- bar.c
- blarg.c
- boner.c
-<
-------------------------------------------------------------------------------
- *'NERDTreeChDirMode'*
-
-Values: 0, 1 or 2.
-Default: 0.
-
-Use this option to tell the script when (if at all) to change the current
-working directory (CWD) for vim.
-
-If it is set to 0 then the CWD is never changed by the NERD tree.
-
-If set to 1 then the CWD is changed when the NERD tree is first loaded to the
-directory it is initialized in. For example, if you start the NERD tree with >
- :NERDTree /home/marty/foobar
-<
-then the CWD will be changed to /home/marty/foobar and will not be changed
-again unless you init another NERD tree with a similar command.
-
-If the option is set to 2 then it behaves the same as if set to 1 except that
-the CWD is changed whenever the tree root is changed. For example, if the CWD
-is /home/marty/foobar and you make the node for /home/marty/foobar/baz the new
-root then the CWD will become /home/marty/foobar/baz.
-
-------------------------------------------------------------------------------
- *'NERDTreeHighlightCursorline'*
-Values: 0 or 1.
-Default: 1.
-
-If set to 1, the current cursor line in the NERD tree buffer will be
-highlighted. This is done using the |'cursorline'| option.
-
-------------------------------------------------------------------------------
- *'NERDTreeHijackNetrw'*
-Values: 0 or 1.
-Default: 1.
-
-If set to 1, doing a >
- :edit <some directory>
-<
-will open up a "secondary" NERD tree instead of a netrw in the target window.
-
-Secondary NERD trees behaves slighly different from a regular trees in the
-following respects:
- 1. 'o' will open the selected file in the same window as the tree,
- replacing it.
- 2. you can have as many secondary tree as you want in the same tab.
-
-------------------------------------------------------------------------------
- *'NERDTreeIgnore'*
-Values: a list of regular expressions.
-Default: ['\~$'].
-
-This option is used to specify which files the NERD tree should ignore. It
-must be a list of regular expressions. When the NERD tree is rendered, any
-files/dirs that match any of the regex's in 'NERDTreeIgnore' wont be
-displayed.
-
-For example if you put the following line in your vimrc: >
- let NERDTreeIgnore=['\.vim$', '\~$']
-<
-then all files ending in .vim or ~ will be ignored.
-
-Note: to tell the NERD tree not to ignore any files you must use the following
-line: >
- let NERDTreeIgnore=[]
-<
-
-The file filters can be turned on and off dynamically with the |NERDTree-f|
-mapping.
-
-------------------------------------------------------------------------------
- *'NERDTreeBookmarksFile'*
-Values: a path
-Default: $HOME/.NERDTreeBookmarks
-
-This is where bookmarks are saved. See |NERDTreeBookmarkCommands|.
-
-------------------------------------------------------------------------------
- *'NERDTreeMouseMode'*
-Values: 1, 2 or 3.
-Default: 1.
-
-If set to 1 then a double click on a node is required to open it.
-If set to 2 then a single click will open directory nodes, while a double
-click will still be required for file nodes.
-If set to 3 then a single click will open any node.
-
-Note: a double click anywhere on a line that a tree node is on will
-activate it, but all single-click activations must be done on name of the node
-itself. For example, if you have the following node: >
- | | |-application.rb
-<
-then (to single click activate it) you must click somewhere in
-'application.rb'.
-
-------------------------------------------------------------------------------
- *'NERDTreeQuitOnOpen'*
-
-Values: 0 or 1.
-Default: 0
-
-If set to 1, the NERD tree window will close after opening a file with the
-|NERDTree-o|, |NERDTree-i|, |NERDTree-t| and |NERDTree-T| mappings.
-
-------------------------------------------------------------------------------
- *'NERDTreeShowBookmarks'*
-Values: 0 or 1.
-Default: 0.
-
-If this option is set to 1 then the bookmarks table will be displayed.
-
-This option can be toggled dynamically, per tree, with the |NERDTree-B|
-mapping.
-
-------------------------------------------------------------------------------
- *'NERDTreeShowFiles'*
-Values: 0 or 1.
-Default: 1.
-
-If this option is set to 1 then files are displayed in the NERD tree. If it is
-set to 0 then only directories are displayed.
-
-This option can be toggled dynamically, per tree, with the |NERDTree-F|
-mapping and is useful for drastically shrinking the tree when you are
-navigating to a different part of the tree.
-
-------------------------------------------------------------------------------
- *'NERDTreeShowHidden'*
-Values: 0 or 1.
-Default: 0.
-
-This option tells vim whether to display hidden files by default. This option
-can be dynamically toggled, per tree, with the |NERDTree-I| mapping. Use one
-of the follow lines to set this option: >
- let NERDTreeShowHidden=0
- let NERDTreeShowHidden=1
-<
-
-------------------------------------------------------------------------------
- *'NERDTreeShowLineNumbers'*
-Values: 0 or 1.
-Default: 0.
-
-This option tells vim whether to display line numbers for the NERD tree
-window. Use one of the follow lines to set this option: >
- let NERDTreeShowLineNumbers=0
- let NERDTreeShowLineNumbers=1
-<
-
-------------------------------------------------------------------------------
- *'NERDTreeSortOrder'*
-Values: a list of regular expressions.
-Default: ['\/$', '*', '\.swp$', '\.bak$', '\~$']
-
-This option is set to a list of regular expressions which are used to
-specify the order of nodes under their parent.
-
-For example, if the option is set to: >
- ['\.vim$', '\.c$', '\.h$', '*', 'foobar']
-<
-then all .vim files will be placed at the top, followed by all .c files then
-all .h files. All files containing the string 'foobar' will be placed at the
-end. The star is a special flag: it tells the script that every node that
-doesnt match any of the other regexps should be placed here.
-
-If no star is present in 'NERDTreeSortOrder' then one is automatically
-appended to the array.
-
-The regex '\/$' should be used to match directory nodes.
-
-After this sorting is done, the files in each group are sorted alphabetically.
-
-Other examples: >
- (1) ['*', '\/$']
- (2) []
- (3) ['\/$', '\.rb$', '\.php$', '*', '\.swp$', '\.bak$', '\~$']
-<
-1. Directories will appear last, everything else will appear above.
-2. Everything will simply appear in alphabetical order.
-3. Dirs will appear first, then ruby and php. Swap files, bak files and vim
- backup files will appear last with everything else preceding them.
-
-------------------------------------------------------------------------------
- *'NERDTreeStatusline'*
-Values: Any valid statusline setting.
-Default: %{b:NERDTreeRoot.path.strForOS(0)}
-
-Tells the script what to use as the |'statusline'| setting for NERD tree
-windows.
-
-Note that the statusline is set using |:let-&| not |:set| so escaping spaces
-isn't necessary.
-
-Setting this option to -1 will will deactivate it so that your global
-statusline setting is used instead.
-
-------------------------------------------------------------------------------
- *'NERDTreeWinPos'*
-Values: "left" or "right"
-Default: "left".
-
-This option is used to determine where NERD tree window is placed on the
-screen.
-
-This option makes it possible to use two different explorer plugins
-simultaneously. For example, you could have the taglist plugin on the left of
-the window and the NERD tree on the right.
-
-------------------------------------------------------------------------------
- *'NERDTreeWinSize'*
-Values: a positive integer.
-Default: 31.
-
-This option is used to change the size of the NERD tree when it is loaded.
-
-==============================================================================
-4. The NERD tree API *NERDTreeAPI*
-
-The NERD tree script allows you to add custom key mappings and menu items via
-a set of API calls. Any scripts that use this API should be placed in
-~/.vim/nerdtree_plugin/ (*nix) or ~/vimfiles/nerdtree_plugin (windows).
-
-The script exposes some prototype objects that can be used to manipulate the
-tree and/or get information from it: >
- g:NERDTreePath
- g:NERDTreeDirNode
- g:NERDTreeFileNode
- g:NERDTreeBookmark
-<
-See the code/comments in NERD_tree.vim to find how to use these objects. The
-following code conventions are used:
- * class members start with a capital letter
- * instance members start with a lower case letter
- * private members start with an underscore
-
-See this blog post for more details:
- http://got-ravings.blogspot.com/2008/09/vim-pr0n-prototype-based-objects.html
-
-------------------------------------------------------------------------------
-4.1. Key map API *NERDTreeKeymapAPI*
-
-NERDTreeAddKeyMap({options}) *NERDTreeAddKeyMap()*
- Adds a new keymapping for all NERD tree buffers.
- {options} must be a dictionary, and must contain the following keys:
- "key" - the trigger key for the new mapping
- "callback" - the function the new mapping will be bound to
- "quickhelpText" - the text that will appear in the quickhelp (see
- |NERDTree-?|)
-
- Example: >
- call NERDTreeAddKeyMap({
- \ 'key': 'b',
- \ 'callback': 'NERDTreeEchoCurrentNode',
- \ 'quickhelpText': 'echo full path of current node' })
-
- function! NERDTreeEchoCurrentNode()
- let n = g:NERDTreeFileNode.GetSelected()
- if n != {}
- echomsg 'Current node: ' . n.path.str()
- endif
- endfunction
-<
- This code should sit in a file like ~/.vim/nerdtree_plugin/mymapping.vim.
- It adds a (rather useless) mapping on 'b' which echos the full path to the
- current node.
-
-------------------------------------------------------------------------------
-4.2. Menu API *NERDTreeMenuAPI*
-
-NERDTreeAddSubmenu({options}) *NERDTreeAddSubmenu()*
- Creates and returns a new submenu.
-
- {options} must be a dictionary and must contain the following keys:
- "text" - the text of the submenu that the user will see
- "shortcut" - a shortcut key for the submenu (need not be unique)
-
- The following keys are optional:
- "isActiveCallback" - a function that will be called to determine whether
- this submenu item will be displayed or not. The callback function must return
- 0 or 1.
- "parent" - the parent submenu of the new submenu (returned from a previous
- invocation of NERDTreeAddSubmenu()). If this key is left out then the new
- submenu will sit under the top level menu.
-
- See below for an example.
-
-NERDTreeAddMenuItem({options}) *NERDTreeAddMenuItem()*
- Adds a new menu item to the NERD tree menu (see |NERDTreeMenu|).
-
- {options} must be a dictionary and must contain the
- following keys:
- "text" - the text of the menu item which the user will see
- "shortcut" - a shortcut key for the menu item (need not be unique)
- "callback" - the function that will be called when the user activates the
- menu item.
-
- The following keys are optional:
- "isActiveCallback" - a function that will be called to determine whether
- this menu item will be displayed or not. The callback function must return
- 0 or 1.
- "parent" - if the menu item belongs under a submenu then this key must be
- specified. This value for this key will be the object that
- was returned when the submenu was created with |NERDTreeAddSubmenu()|.
-
- See below for an example.
-
-NERDTreeAddMenuSeparator([{options}]) *NERDTreeAddMenuSeparator()*
- Adds a menu separator (a row of dashes).
-
- {options} is an optional dictionary that may contain the following keys:
- "isActiveCallback" - see description in |NERDTreeAddMenuItem()|.
-
-Below is an example of the menu API in action. >
- call NERDTreeAddMenuSeparator()
-
- call NERDTreeAddMenuItem({
- \ 'text': 'a (t)op level menu item',
- \ 'shortcut': 't',
- \ 'callback': 'SomeFunction' })
-
- let submenu = NERDTreeAddSubmenu({
- \ 'text': 'a (s)ub menu',
- \ 'shortcut': 's' })
-
- call NERDTreeAddMenuItem({
- \ 'text': '(n)ested item 1',
- \ 'shortcut': 'n',
- \ 'callback': 'SomeFunction',
- \ 'parent': submenu })
-
- call NERDTreeAddMenuItem({
- \ 'text': '(n)ested item 2',
- \ 'shortcut': 'n',
- \ 'callback': 'SomeFunction',
- \ 'parent': submenu })
-<
-This will create the following menu: >
- --------------------
- a (t)op level menu item
- a (s)ub menu
-<
-Where selecting "a (s)ub menu" will lead to a second menu: >
- (n)ested item 1
- (n)ested item 2
-<
-When any of the 3 concrete menu items are selected the function "SomeFunction"
-will be called.
-
-------------------------------------------------------------------------------
-NERDTreeRender() *NERDTreeRender()*
- Re-renders the NERD tree buffer. Useful if you change the state of the
- tree and you want to it to be reflected in the UI.
-
-==============================================================================
-5. About *NERDTreeAbout*
-
-The author of the NERD tree is a terrible terrible monster called Martyzilla
-who gobbles up small children with milk and sugar for breakfast.
-
-He can be reached at martin.grenfell at gmail dot com. He would love to hear
-from you, so feel free to send him suggestions and/or comments about this
-plugin. Don't be shy --- the worst he can do is slaughter you and stuff you in
-the fridge for later ;)
-
-The latest stable versions can be found at
- http://www.vim.org/scripts/script.php?script_id=1658
-
-The latest dev versions are on github
- http://github.com/scrooloose/nerdtree
-
-
-==============================================================================
-6. Changelog *NERDTreeChangelog*
-
-4.1.0
- features:
- - NERDTreeFind to reveal the node for the current buffer in the tree,
- see |NERDTreeFind|. This effectively merges the FindInNERDTree plugin (by
- Doug McInnes) into the script.
- - make NERDTreeQuitOnOpen apply to the t/T keymaps too. Thanks to Stefan
- Ritter and Rémi Prévost.
- - truncate the root node if wider than the tree window. Thanks to Victor
- Gonzalez.
-
- bugfixes:
- - really fix window state restoring
- - fix some win32 path escaping issues. Thanks to Stephan Baumeister, Ricky,
- jfilip1024, and Chris Chambers
-
-4.0.0
- - add a new programmable menu system (see :help NERDTreeMenu).
- - add new APIs to add menus/menu-items to the menu system as well as
- custom key mappings to the NERD tree buffer (see :help NERDTreeAPI).
- - removed the old API functions
- - added a mapping to maximize/restore the size of nerd tree window, thanks
- to Guillaume Duranceau for the patch. See :help NERDTree-A for details.
-
- - fix a bug where secondary nerd trees (netrw hijacked trees) and
- NERDTreeQuitOnOpen didnt play nicely, thanks to Curtis Harvey.
- - fix a bug where the script ignored directories whose name ended in a dot,
- thanks to Aggelos Orfanakos for the patch.
- - fix a bug when using the x mapping on the tree root, thanks to Bryan
- Venteicher for the patch.
- - fix a bug where the cursor position/window size of the nerd tree buffer
- wasnt being stored on closing the window, thanks to Richard Hart.
- - fix a bug where NERDTreeMirror would mirror the wrong tree
-
-3.1.1
- - fix a bug where a non-listed no-name buffer was getting created every
- time the tree windows was created, thanks to Derek Wyatt and owen1
- - make <CR> behave the same as the 'o' mapping
- - some helptag fixes in the doc, thanks strull
- - fix a bug when using :set nohidden and opening a file where the previous
- buf was modified. Thanks iElectric
- - other minor fixes
-
-3.1.0
- New features:
- - add mappings to open files in a vsplit, see :help NERDTree-s and :help
- NERDTree-gs
- - make the statusline for the nerd tree window default to something
- hopefully more useful. See :help 'NERDTreeStatusline'
- Bugfixes:
- - make the hijack netrw functionality work when vim is started with "vim
- <some dir>" (thanks to Alf Mikula for the patch).
- - fix a bug where the CWD wasnt being changed for some operations even when
- NERDTreeChDirMode==2 (thanks to Lucas S. Buchala)
- - add -bar to all the nerd tree :commands so they can chain with other
- :commands (thanks to tpope)
- - fix bugs when ignorecase was set (thanks to nach)
- - fix a bug with the relative path code (thanks to nach)
- - fix a bug where doing a :cd would cause :NERDTreeToggle to fail (thanks nach)
-
-
-3.0.1
- Bugfixes:
- - fix bugs with :NERDTreeToggle and :NERDTreeMirror when 'hidden
- was not set
- - fix a bug where :NERDTree <path> would fail if <path> was relative and
- didnt start with a ./ or ../ Thanks to James Kanze.
- - make the q mapping work with secondary (:e <dir> style) trees,
- thanks to jamessan
- - fix a bunch of small bugs with secondary trees
-
- More insane refactoring.
-
-3.0.0
- - hijack netrw so that doing an :edit <directory> will put a NERD tree in
- the window rather than a netrw browser. See :help 'NERDTreeHijackNetrw'
- - allow sharing of trees across tabs, see :help :NERDTreeMirror
- - remove "top" and "bottom" as valid settings for NERDTreeWinPos
- - change the '<tab>' mapping to 'i'
- - change the 'H' mapping to 'I'
- - lots of refactoring
-
-==============================================================================
-7. Credits *NERDTreeCredits*
-
-Thanks to the following people for testing, bug reports, ideas etc. Without
-you I probably would have got bored of the hacking the NERD tree and
-just downloaded pr0n instead.
-
- Tim Carey-Smith (halorgium)
- Vigil
- Nick Brettell
- Thomas Scott Urban
- Terrance Cohen
- Yegappan Lakshmanan
- Jason Mills
- Michael Geddes (frogonwheels)
- Yu Jun
- Michael Madsen
- AOYAMA Shotaro
- Zhang Weiwu
- Niels Aan de Brugh
- Olivier Yiptong
- Zhang Shuhan
- Cory Echols
- Piotr Czachur
- Yuan Jiang
- Matan Nassau
- Maxim Kim
- Charlton Wang
- Matt Wozniski (godlygeek)
- knekk
- Sean Chou
- Ryan Penn
- Simon Peter Nicholls
- Michael Foobar
- Tomasz Chomiuk
- Denis Pokataev
- Tim Pope (tpope)
- James Kanze
- James Vega (jamessan)
- Frederic Chanal (nach)
- Alf Mikula
- Lucas S. Buchala
- Curtis Harvey
- Guillaume Duranceau
- Richard Hart (hates)
- Doug McInnes
- Stefan Ritter
- Rémi Prévost
- Victor Gonzalez
- Stephan Baumeister
- Ricky
- jfilip1024
- Chris Chambers
-
-==============================================================================
-8. License *NERDTreeLicense*
-
-The NERD tree is released under the wtfpl.
-See http://sam.zoy.org/wtfpl/COPYING.
diff --git a/modules/vim/vim.dot.link/doc/bufexplorer.txt b/modules/vim/vim.dot.link/doc/bufexplorer.txt
deleted file mode 100644
index 5d2fbcf..0000000
--- a/modules/vim/vim.dot.link/doc/bufexplorer.txt
+++ /dev/null
@@ -1,547 +0,0 @@
-*bufexplorer.txt* Buffer Explorer Last Change: 23 Dec 2012
-
-Buffer Explorer *buffer-explorer* *bufexplorer*
- Version 7.3.2
-
-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
-
-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.
- - 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: >
- \be or :BufExplorer or Your custom key mapping
-To start exploring in a newly split horizontal window, use: >
- \bs or :BufExplorerHorizontalSplit or Your custom key mapping
-To start exploring in a newly split vertical window, use: >
- \bv or :BufExplorerVerticalSplit or Your custom key mapping
-
-If you would like to use something other than '\', you may simply change the
-leader (see |mapleader|).
-
-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.
- 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
- buffers is wiped, it will not be shown when unlisted buffer are
- displayed.
- f Toggles whether you are taken to the active window when
- selecting a buffer or not.
- 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 Toggles to show only buffers for this tab or not.
- t Opens the buffer that is under the cursor in another tab.
- u Toggles the showing of "unlisted" buffers.
-
-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
-"=
- 01 %a bufexplorer.txt C:\Vim\vimfiles\doc line 87
- 02 # 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 \be, \bs, and \bv, you can
-override bufexplorer's default mappings by setting up something like the
-following in your vimrc file:
-
- noremap <silent> <F11> :BufExplorer<CR>
- noremap <silent> <m-F11> :BufExplorerHorizontalSplit<CR>
- noremap <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: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=1 " Show directories.
- let g:bufExplorerShowDirectories=0 " Don't show directories.
-The default is to show directories.
-
- *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 weither 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 buffer 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 what ever is set by the global &splitbelow
-variable.
-
- *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.
-
-===============================================================================
-CHANGE LOG *bufexplorer-changelog*
-
-7.3.2 - Fix:
- * 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 - Fix:
- * 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 - It has been quite a while since I published a new version and this
- is the first version since Vim 7.3 was released.
- * Thanks to Tim Johnson for testing out this new version.
- * I have put some time into reworking and cleaning up the code as
- * well as various bug fixes.
- * 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.
- * Overall, I am hopeful that I not forgotten or lost a feature.
-7.2.8 - Enhancements:
- * Thanks to Charles Campbell for integrating bufexplorer with GDBMGR.
- http://mysite.verizon.net/astronaut/vim/index.html#GDBMGR
-7.2.7 - Fix:
- * 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 - Fix:
- * 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 - Fix:
- * 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 - Fix:
- * 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 - Enhancements:
- * Thanks to David Fishburn for helping me out with a much needed
- code overhaul as well as some awesome performance enhancements.
- He 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.
- Fixes:
- * 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 - Fixes:
- * 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 - Fixes:
- * 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 - Enhancements:
- * 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.
- Fixes:
- * 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 - Fixes:
- * TaCahiroy fixed several issues related to opening a buffer in a
- tab.
-7.1.6 - Fixes:
- * Removed ff=unix from modeline in bufexplorer.txt. Found by Bill
- McCarthy.
-7.1.5 - Fixes:
- * Could not open unnamed buffers. Fixed by TaCahiroy.
-7.1.4 - Fixes:
- * 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 - Fixes:
- * Added code to allow only one instance of the plugin to run at a
- time. Thanks Dennis Hostetler.
-7.1.2 - Fixes:
- * 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 just having a plugin file, no autoload file. By having
- the autoload, WinManager was no longer working and without really
- digging into the cause, it was easier to go back to using just a
- plugin file.
-7.1.1 - Fixes:
- * A problem spotted by Thomas Arendsen Hein.
- When running Vim (7.1.94), error E493 was being thrown.
- Enhancements:
- * Added 'D' for 'delete' buffer as the 'd' command was a 'wipe'
- buffer.
-7.1.0 - 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 - Fixed issue with 'drop' command.
- Various enhancements and improvements.
-7.0.16 - 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 - Thanks to Mark Smithfield for suggesting bufexplorer needed to handle
- the ':args' command.
-7.0.14 - 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 - 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 - 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 - Fixed a couple of highlighting bugs, reported by David Eggum. He also
- changed passive voice to active on a couple of warning messages.
-7.0.10 - 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 - 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 - 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 - 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 - 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. He 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 - Thanks to Mun Johl for pointing out a bug that if a buffer was
- modified, the '+' was not showing up correctly.
-7.0.4 - 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 - 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 - 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 - 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 - 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 - Added keepjumps so that the jumps list would not get cluttered with
- bufexplorer related stuff.
-6.2.3 - 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 - 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 - Thanks goes out to Takashi Matsuo for added the 'fullPath' sorting
- logic and option.
-6.2.0 - 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 - 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 - Thanks to Khorev Sergey. Added option to show default help or not.
-6.1.4 - 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 - 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 - 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 - 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 - 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 - Srinath Avadhanulax added a patch for winmanager.vim.
-6.0.14 - 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 - 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 - Thanks to Madoka Machitani, for the tip on adding the augroup command
- around the MRUList autocommands.
-6.0.11 - Fixed bug report by Xiangjiang Ma. '"=' was being added to the
- search history which messed up hlsearch.
-6.0.10 - 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 - Added MRU (Most Recently Used) sort ordering.
-6.0.8 - Was not resetting the showcmd command correctly.
- Added nifty help file.
-6.0.7 - 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 - 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 - 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 - 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 - Added sorting capabilities. Sort taken from explorer.vim.
-6.0.2 - Can't remember. (2001-07-25)
-6.0.1 - Initial release.
-
-===============================================================================
-TODO *bufexplorer-todo*
-
-- Nothing as of now, buf if you have any suggestions, drop me an email.
-
-===============================================================================
-CREDITS *bufexplorer-credits*
-
-Author: Jeff Lanzarotta <delux256-vim at yahoo 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.
-
-===============================================================================
-vim:tw=78:noet:wrap:ts=8:ft=help:norl:
diff --git a/modules/vim/vim.dot.link/doc/git-vim.txt b/modules/vim/vim.dot.link/doc/git-vim.txt
deleted file mode 100644
index 5fba807..0000000
--- a/modules/vim/vim.dot.link/doc/git-vim.txt
+++ /dev/null
@@ -1,95 +0,0 @@
-*git-vim.txt* Git Bindings for Vim
-
-==============================================================================
-CONTENTS *git-vim-contents*
-
- 1. Introduction.............................|git-vim|
- 2. Commands.................................|git-vim-commands|
- 3. Keymaps..................................|git-vim-keymaps|
- 4. License..................................|git-vim-license|
-
-==============================================================================
-1. Introduction *git-vim*
-
-Git-vim provides:
-
-* Plugin files for calling git functions from inside Vim
-* Syntax files for git displays
-
-==============================================================================
-2. Commands *git-vim-commands*
-
-:GitAdd <file>
- git-add <file> or current file if not specified.
-
-:GitCommit <args>
- git-commit.
-
-:GitStatus
- Show git-status of current file or repository.
-
-:GitLog
- Show git-log of current file or repository.
-
-:GitCheckout <args>
- git-checkout. Completes git commits.
-
-:GitDiff <args>
- git-diff. Completes git commits.
-
-:GitPull <args>
- git-pull.
-
-:GitPullRebase
- git-pull —rebase.
-
-:GitPush <args>
- git-push. Defaults to +git push origin <current-branch>+.
-
-:GitCatFile <args>
- git-cat-file.
-
-:Git <args>
- Does any git command.
-
-:GitVimDiffMerge
- Experimental. Call this command on unmerged file to enter vimdiff mode.
-
-:GitVimDiffMergeDone
- Call this command after merging.
-
-==============================================================================
-3. Keymaps *git-vim-keymaps*
-
-<Leader>gd
- :GitDiff
-
-<Leader>gD
- :GitDiff —cached
-
-<Leader>gs
- :GitStatus
-
-<Leader>gl
- :GitLog
-
-<Leader>ga
- :GitAdd
-
-<Leader>gA
- :GitAdd <cfile>
-
-<Leader>gc
- :GitCommit
-
-In the git-status buffer:
-
-<Enter>
- :GitAdd <cfile>
-
-==============================================================================
-4. License *git-vim-license*
-
-The MIT License
-
- vim:tw=78:ts=8:ft=help
diff --git a/modules/vim/vim.dot.link/doc/indexer.txt b/modules/vim/vim.dot.link/doc/indexer.txt
deleted file mode 100644
index 330b486..0000000
--- a/modules/vim/vim.dot.link/doc/indexer.txt
+++ /dev/null
@@ -1,211 +0,0 @@
-*indexer.txt* Plugin for automatically index project files using ctags
- For Vim 7.x version
-
-
-
- By Dmitry Frank
- dimon.frank email-at-sign gmail.com
-
-
- *indexer* *indexer-plugin*
- Contents:
-
- Options.....................|indexer-options|
- Commands...................|indexer-commands|
-
-You can use this plugin to automatically index your project files
-using ctags. This can be very useful when it's used together with plugins
-omnicppcomplete (for c, c++ development), code_complete.vim
-and other plugins that using tags.
-You also will able to jump from function call to its definition
-just by pressing Ctrl-] or g]
-
-This plugin can work as add-on for project.tar.gz plugin.
-Indexer reads project file, parses it and builds tags for all files
-in project. But it can also work without this plugin.
-
-Actually, if you using project.vim plugin and you projects file is
-default (~/.vimprojects), then setting indexer up is very easily:
-you can just copy indexer.vim to your plugins directory, start Vim
-and open any file from your project.
-The indexer plugin will detect that opened file from project
-and automatically start ctags for each file in this project.
-It also set &path and &tags options for Vim.
-
-If you are using project.vim but you have another projects file,
-you should set option g:indexer_projectsSettingsFilename in your
-vimrc. See |indexer-options| for details
-
-If you don't use project.vim then you can use ".indexer_files" to
-define projects to index.
-Default location of this file is "~/.indexer_files". You can change
-it by modifying variable g:indexer_indexerListFilename
-
-Note that this file overrides "~/.vimprojects". If both files exists
-only "~/.indexer_files" will be used.
-
-Syntax of this file is very easy. Propably the best way to explain it
-is show an example.
-
-Example file "~/.indexer_files" >
- [CoolProject]
-
- /home/user/myproject/src/*.c
- /home/user/myproject/src/*.h
- /home/user/myproject/inc/*.h
-
- [AnotherProject]
-
- /home/user/myproject2**/*.c
- /home/user/myproject2**/*.h
-
-
-I think, there's all obvious:
-there's two projects: CoolProject and AnotherProject.
-in CoolProject there's all *.c files in "myproject/src" and all header
-files in "myproject/inc". in AnotherProject there's both *.c and *.h
-files in "myproject2" and all subdirectories recursively.
-( "**" means recursively )
-It's able to use environment variables in your paths.
-
-You can define the same AnotherProject simplier:
- >
- [AnotherProject]
-
- /home/user/myproject2**/*.[ch]
-
-And, finally, it can autodetect project root. So, you can move your
-project to another place in filesystem, and all files will indexed anyway.
-More detailed see in options, variable "g:indexer_lookForProjectDir".
-
-========================================================================
-OPTIONS *indexer-options*
-
-You can set these variables in your vimrc file before the plugin is loaded to
-change its default behavior
-
-g:indexer_lookForProjectDir (default: 1)
-
- if on, then plugin will recursively-up search for ".vimprj" directory.
- If it will be found, then plugin will source all "*.vim" files in it,
- and also will set environment variable $INDEXER_PROJECT_ROOT to
- directory in which is ".vimprj" directory.
-
- Your directory tree example:
-
- | home
- | | user
- | | | myproject
- | | | | src
- | | | | |-file1.c
- | | | | |-file2.c
- | | | | |-file3.c
- | | | | |
- | | | | inc
- | | | | |-file1.h
- | | | | |-file2.h
- | | | | |-file3.h
- | | | | |
- | | | | .vimprj
- | | | | |-conf.vim
-
- For example, you typing: >
- $ gvim /home/user/myproject/src/file1.c
-----
-
- Then indexer will detect your /home/user/myproject/.vimprj directory
- and source all files *.vim from it,
- and set $INDEXER_PROJECT_ROOT="/home/user/myproject"
-
- so, you can define any settings that are individual for
- your project, such as another .vimprojects file, or any other.
-
- This is great for people like me, that likes when ALL project files
- is in only one directory.
-
- When i need to copy project to another computer i just copying the
- whole folder, and all is done. I using $INDEXER_PROJECT_ROOT variable
- in my .vimprojects file, so that i can put project in any place in
- filesystem, and all files will be indexed, because
- $INDEXER_PROJECT_ROOT will be always my real project root.
-
-g:indexer_dirNameForSearch (default: ".vimprj")
-
- directory name with project settings for search (".vimprj" by default)
-
-g:indexer_recurseUpCount (default: 10)
-
- count of recurse-up for search ".vimprj" directory
-
-g:indexer_indexerListFilename (default: "~/.indexer_files")
-
- indexer filename. If this file exists then projects file are ignored.
-
-g:indexer_projectsSettingsFilename (default: "~/.vimprojects")
-
- project filename. (the project file that plugin project.vim using)
-
-g:indexer_projectName (default: '')
-
- if you don't wand to index any project, you can define one name.
- If it is empty, then indexes any found projects.
- By default is empty.
-
-g:indexer_enableWhenProjectDirFound (default: 1)
-
- If this option is set, then if gvim started from project directory, this project
- will be indexed. Otherwise project will be indexed only if there's file
- from this project opened
-
-g:indexer_tagsDirname (default: "~/.vimtags")
-
- directory to save tags file. (this is directory because there's propably
- several files in next versions)
-
- Note: If ".vimprj" directory is found, then this option is ignored and tags
- directory becomes ".vimprj/tags"
-
-g:indexer_ctagsCommandLineOptions
-
- ctags command line options. By default is:
- "--c++-kinds=+p+l --fields=+iaS --extra=+q"
-
-g:indexer_ctagsJustAppendTagsAtFileSave (default: 1)
-
- when there's project file saving, we need to update tags.
- If this option is on, then ctags will be started just for
- current file with "-a" key, otherwise tags for all project
- files will be rebuild.
-
- There is different sides:
- If just append tags, then old tags will not be removed until
- you rebuild all tags by typing ":IndexerRebuild" or just restart
- Vim. If rebuild tags every time, it would take long time
- (depending on project size, of course)
-
- By default this option is on.
-
-========================================================================
-COMMANDS *indexer-commands*
-
-:IndexerInfo
-
- prints information about current state of plugin, such as projects file
- using, files not found, and other.
-
- The first thing you should do if plugin doesn't work is type this command :)
-
-:IndexerFiles
-
- prints list of indexed files
-
-:IndexerRebuild
-
- rebuild tags for all files in project
-
-:IndexerFilesAvail
-
- prints list of all available files that has been read from projects file
-
-
- vim:ft=help:tw=78:
diff --git a/modules/vim/vim.dot.link/doc/project.txt b/modules/vim/vim.dot.link/doc/project.txt
deleted file mode 100644
index 8f85c23..0000000
--- a/modules/vim/vim.dot.link/doc/project.txt
+++ /dev/null
@@ -1,710 +0,0 @@
-*project.txt* Plugin for managing multiple projects with multiple sources
- For Vim version 6.x and Vim version 7.x.
- Last Change: Fri 13 Oct 2006 10:20:13 AM EDT
-
-
- By Aric Blumer
- aricvim email-at-sign charter.net
-
- *project* *project-plugin*
- Contents:
-
- Commands...................|project-invoking|
- Inheritance.............|project-inheritance|
- Mappings...................|project-mappings|
- Adding Mappings.....|project-adding-mappings|
- Settings...................|project-settings|
- Example File................|project-example|
- Tips...........................|project-tips|
-
-
-You can use this plugin's basic functionality to set up a list of
-frequently-accessed files for easy navigation. The list of files will be
-displayed in a window on the left side of the Vim window, and you can press
-<Return> or double-click on filenames in the list to open the files. I find
-this easier to use than having to navigate a directory hierarchy with the
-|file-explorer|.
-
-You can also instruct the Plugin to change to a directory and to run Vim
-scripts when you select a file. These scripts can, for example, modify the
-environment to include compilers in $PATH. This makes it very easy to use
-quickfix with multiple projects that use different environments.
-
-Other features include:
- o Loading/Unloading all the files in a Project (\l, \L, \w, and \W)
- o Grepping all the files in a Project (\g and \G)
- o Running a user-specified script on a file (can be used to launch an
- external program on the file) (\1 through \9)
- o Running a user-specified script on all the files in a Project
- (\f1-\f9 and \F1-\F9)
- o High degree of user-configurability
- o Also works with |netrw| using the XXXX://... notation where XXXX is
- ftp, rcp, scp, or http.
-
-All of this is specified within a simple text file and a few global variables
-in your vimrc file.
-
-You must set 'nocompatible' in your |vimrc| file to use this plugin. You can
-stop the plugin from being loaded by setting the "loaded_project" variable: >
- :let loaded_project = 1
-
-
-==============================================================================
-COMMANDS *project-invoking*
-
-You can use the plugin by placing it in your plugin directory (e.g.,
-~/.vim/plugin). See |add-global-plugin|. When you start vim the next time, you
-then enter the command >
- :Project
-or >
- :Project {file}
-
-If you do not specify the filename, $HOME/.vimprojects is used.
-
-To have Vim come up with the Project Window enabled automatically (say, from a
-GUI launcher), run Vim like this: [g]vim +Project
-
-Note that you can invoke :Project on only one file at a time. If you wish to
-change the Project File, do a :bwipe in the Project Buffer, then re-invoke the
-Plugin as described above.
-
-Several Projects can be kept and displayed in the same file, each in a fold
-delimited by { and } (see |fold.txt|). There can be any number of nested
-folds to provide you with a Project hierarchy. Any line without a { or a } in
-the file is considered to be a filename. Blank lines are ignored, and any
-text after a # is ignored.
-
-Because the plugin uses standard Vim folds, you can use any of the
-|fold-commands|. You can double-click on the first line of a fold to open and
-close it. You can select a file to open by putting the cursor on its name and
-pressing <Return> or by double-clicking on it. The plugin will create a new
-window to the right or use the |CTRL-W_p| equivalent if it exists.
-
- *project-syntax*
-Each Project Entry has this form:
-
-project_entry ::=
- <Description>={projpath} [{options}] {
- [ filename ]
- [ project_entry ]
- }
-
-{options} is one or more of the following (on the same line):
- CD={path}
- in={filename}
- out={filename}
- filter="{pat}"
- flags={flag}
-
-Note that a project_entry can reside within a project_entry. This allows you
-to set up a hierarchy within your Project.
-
-The <Description> will be displayed in the foldtext and cannot contain "=".
-There can be no space character directly on either side of the =.
-
-The {projpath} is the path in which the files listed in the Project's fold
-will be found, and it may contain environment variables. If the path is a
-relative path, then the plugin constructs the whole path from the Project's
-parent, grandparent, etc., all the way up the hierarchy. An outermost
-project_entry must have an absolute path. See the |project-inheritance|
-example below. {projpath} may contain spaces, but they must be escaped like
-normal Vim escapes. Here are two examples of the same directory:
->
- Example=/my/directory/with\ spaces {
- }
- Example="/my/directory/with spaces" {
- }
-
-I recommend this for Windows®: >
-
- Example="c:\My Documents" {
- }
-
-But Vim is smart enough to do this, too: >
-
- Example=c:\My\ Documents {
- }
-
-CD= provides the directory that Vim will change to when you select a file in
-that fold (using |:cd|). This allows you, for example, to enter |:make| to use
-the local Makefile. A CD=. means that Vim will make {projpath} or its
-inherited equivalent the current working directory. When CD is omitted, the
-directory is not changed. There can be no space on either side of the =. The
-value of CD can also be a relative path from a parent's CD. See the
-|project-inheritance| example below. This directive is ignored for |netrw|
-projects. Spaces are allowed in the path as for {projpath}.
-
-in= and out= provide the means to run arbitrary Vim scripts whenever you enter
-or leave a file's buffer (see the |BufEnter| and |BufLeave| autocommand
-events). The idea is to have a Vim script that sets up or tears down the
-environment for the Project like this:
-
-in.vim: >
- let $PROJECT_HOME='~/my_project'
- " Put the compiler in $PATH
- if $PATH !~ '/path/to/my/compiler'
- let $PATH=$PATH.':/path/to/my/compiler'
- endif
-
-out.vim: >
- " Remove compiler from $PATH
- if $PATH =~ '/path/to/my/compiler'
- let $PATH=substitute($PATH, ':/path/to/my/compiler', '', 'g')
- endif
-
-Then you can use :make with the proper environment depending on what file you
-are currently editing. If the path to the script is relative, then it is
-relative from {projpath}. These directives are inherited by Subprojects
-unless the Subproject specifies its own. For use with |netrw| projects, the
-paths specified for in= and out= must be absolute and local.
-
-filter= specifies a |glob()| file pattern. It is used to regenerate the list
-of files in a Project fold when using the \r (<LocalLeader>r) map in the
-Project Window. The filter value must be in quotes because it can contain
-multiple file patterns. If filter is omitted, then the * pattern is used.
-There can be no space on either side of the =. A Subproject will inherit the
-filter of its parent unless it specifies its own filter.
-
-flags= provides the means to enable/disable features for a particular fold.
-The general mnemonic scheme is for lower case to turn something off and upper
-case to turn something on. {flag} can contain any of the following
-characters:
-
- flag Description ~
-
- l Turn off recursion for this fold for \L. Subfolds are also
- blocked from the recursion.
-
- r Turn off refresh. When present, do not refresh this fold when
- \r or \R is used. This does not affect subfold recursion.
-
- S Turn on sorting for refresh and create.
-
- s Turn off sorting for refresh and create.
-
- T Turn on top gravity. Forces folds to the top of the current
- fold when refreshing. It has the same affect as the 'T' flag
- in g:proj_flags, but controls the feature on a per-fold basis.
-
- t Turn off top gravity. Forces folds to the bottom of the
- current fold when refreshing.
-
- w Turn off recursion for this fold for \W. Subfolds are also
- blocked from the recursion.
-
-
-Flags are not inherited by Subprojects.
-
-Any text outside a fold is ignored.
-
-
-==============================================================================
-INHERITANCE *project-inheritance*
-
-It's best to show inheritance by comparing these two Project Files:
->
- Parent=~/my_project CD=. filter="Make* *.mk" flags=r {
- Child1=c_code {
- }
- Child2=include CD=. filter="*.h" {
- }
- }
-
-Child1's path is "~/my_project/c_code" because ~/my_project is inherited. It
-also inherits the CD from Parent. Since Parent has CD=., the Parent's cwd is
-"~/my_project". Child1 therefore inherits a CD of "~/my_project". Finally,
-Child1 inherits the filter from Parent. The flags are not inherited.
-
-Child2 only inherits the "~/my_project" from Parent.
-
-Thus, the example above is exactly equivalent to this:
->
- Parent=~/my_project CD=. filter="Make* *.mk" flags=r {
- Child1=~/my_project/c_code CD=~/my_project filter="Make* *.mk" {
- }
- Child2=~/my_project/include CD=~/my_project/include filter="*.h" {
- }
- }
-
-(For a real Project, Child1 would not want to inherit its parent's filter, but
-this example shows the concept.) You can always enter \i to display what the
-cursor's project inherits.
-
-
-==============================================================================
-MAPPINGS *project-mappings*
-
-Map Action ~
-
-\r Refreshes the Project fold that the cursor is in by placing in the
- fold all the files that match the filter. The Project is refreshed
- using an indent of one space for every foldlevel in the hierarchy.
-
- You may place a "# pragma keep" (without the quotes) at the end of a
- line, and the file entry on that line will not be removed when you
- refresh. This is useful, for example, when you have . as an entry so
- you can easily browse the directory.
-
- Note that this mapping is actually <LocalLeader>r, and the default of
- |<LocalLeader>| is \.
-
- This does not work for Projects using |netrw|.
-
-\R Executes \r recursively in the current fold and all folds below.
- This does not work for Projects using |netrw|.
-
-\c Creates a Project fold entry. It asks for the description, the path
- to the files, the CD parameter, and the filename |glob()| pattern.
- From this information, it will create the Project Entry below the
- cursor.
-
- This does not work for Projects using |netrw|.
-
-\C Creates a Project fold entry like \c, but recursively includes all the
- subdirectories.
-
-<Return>
- Select a file to open in the |CTRL-W_p| window or in a new window. If
- the cursor is on a fold, open or close it.
-
-<S-Return>
-\s
- Same as <Return> but horizontally split the target window.
- <LocalLeader>s is provided for those terminals that don't recognize
- <S-Return>.
-
-\S
- Load all files in a project by doing horizontal splits.
-
-<C-Return>
-\o
- Same as <Return> but ensure that the opened file is the only other
- window. <LocalLeader>o is provided for those terminals that don't
- recognize <C-Return>.
-
-<M-Return>
-\v
- Same as <Return> but only display the file--the cursor stays in the
- Project Window.
-
-<2-LeftMouse>
- (Double-click) If on a closed fold, open it. If on an open fold
- boundary, close it. If on a filename, open the file in the |CTRL-W_p|
- window or in a new window.
-
-<S-2-LeftMouse>
- Same as <S-Return>.
-
-<C-2-LeftMouse>
- Same as <C-Return>.
-
-<RightMouse>
- Increase the width of the Project Window by g:proj_window_increment or
- toggle between a width of
- g:proj_window_width + g:proj_window_increment
- and
- g:proj_window_width.
-
- Whether you toggle or monotonically increase the width is determined
- by the 't' flag of the g:proj_flags variable (see |project-flags|).
-
- Note that a Right Mouse click will not automatically place the cursor
- in the Project Window if it is in a different window. The window will
- go back to the g:proj_window_width width when you leave the window.
-
-<space> Same as <RightMouse>
-
-<CTRL-Up>
-\<Up>
- Move the text or fold under the cursor up one row. This may not work
- in a terminal because the terminal is unaware of this key combination.
- <LocalLeader><Up> is provided for those terminals that don't recognize
- <C-Up>.
-
-
-<CTRL-Down>
-\<Down>
- Move the text or fold under the cursor down one row. This may not work
- in a terminal because the terminal is unaware of this key combination.
- <LocalLeader><Down> is provided for those terminals that don't
- recognize <C-Down>.
-
-\i Show in the status line the completely resolved and inherited
- parameters for the fold the cursor is in. This is intended for
- debugging your relative path and inherited parameters for manually
- entered Projects.
-
-\I Show in the status line the completely resolved filename. Uses the
- Project_GetFname(line('.')) function.
-
-\1 - \9
- Run the command specified in g:proj_run{x} where {x} is the number
- of the key. See the documentation of g:proj_run1 below.
-
-\f1-\f9
- Run the command specified in g:proj_run_fold{x} where {x} is the
- number of the key. The command is run on the files at the current
- Project level. See the |project-settings| below.
-
-\F1-\F9
- Run the command specified in g:proj_run_fold{x} where {x} is the
- number of the key. The command is run on the files at the current
- Project level and all Subprojects. See the |project-settings| below.
-
-\0 Display the commands that are defined for \1 through \9.
-
-\f0 Display the commands that are defined for \f1 through \f9 and \F1
- through \F0. Same as \F0.
-
-\l Load all the files in the current Project level into Vim. While files
- are being loaded, you may press any key to stop.
-
-\L Load all the files in the current Project and all Subprojects into
- Vim. Use this mapping with caution--I wouldn't suggest using \L to
- load a Project with thousands of files. (BTW, my Project file has more
- than 5,300 files in it!) While files are being loaded, you may press
- any key to stop.
-
-\w Wipe all the files in the current Project level from Vim. (If files
- are modified, they will be saved first.) While files are being wiped,
- you may press any key to stop.
-
-\W Wipe all the files in the current Project and all Subprojects from
- Vim. (If files are modified, they will be saved first.) While files
- are being wiped, you may press any key to stop.
-
-\g Grep all the files in the current Project level.
-
-\G Grep all the files in the current Project level and all Subprojects.
-
-\e Set up the Environment for the Project File as though you had selected
- it with <Return>. This allows you to do a \e and a :make without
- having to open any files in the project.
-
-\E Explore (using |file-explorer|) the directory of the project the
- cursor is in. Does not work with netrw.
-
-<F12> When the 'g' flag is present in g:proj_flags (see |project-flags|)
- this key toggles the Project Window open and closed. You may remap
- this toggle function by putting the following in your vimrc and
- replacing <Leader>P with whatever key combination you wish:
-
- nmap <silent> <Leader>P <Plug>ToggleProject
-
-Note that the Project Plugin remaps :help because the Help Window and the
-Project Window get into a fight over placement. The mapping avoids the
-problem.
-
-==============================================================================
-ADDING MAPPINGS *project-adding-mappings*
-
-You can add your own mappings or change the mappings of the plugin by placing
-them in the file $HOME/.vimproject_mappings. This file, if it exists, will be
-sourced when the plugin in loaded. Here is an example that will count the
-number of entries in a project when you press \K (Kount, C is taken :-): >
-
- function! s:Wc()
- let b:loadcount=0
- function! SpawnExec(infoline, fname, lineno, data)
- let b:loadcount = b:loadcount + 1
- if getchar(0) != 0 | let b:stop_everything=1 | endif
- endfunction
- call Project_ForEach(1, line('.'), "*SpawnExec", 0, '')
- delfunction SpawnExec
- echon b:loadcount." Files\r"
- unlet b:loadcount
- if exists("b:stop_everything")
- unlet b:stop_everything
- echon "Aborted.\r"
- endif
- endfunction
-
- nnoremap <buffer> <silent> <LocalLeader>K :call <SID>Wc()<CR>
-
-Here's another example of how I integrated the use of perforce with the plugin
-in my $HOME/.vimproject_mappings:
->
- function! s:DoP4(cmd)
- let name=Project_GetFname(line('.'))
- let dir=substitute(name, '\(.*\)/.*', '\1', 'g')
- exec 'cd '.dir
- exec "!".a:cmd.' '.Project_GetFname(line('.'))
- cd -
- endfunction
-
- nmap <buffer> <silent> \pa :call <SID>DoP4("p4add")<CR>
- nmap <buffer> <silent> \pe :call <SID>DoP4("p4edit")<CR>
-<
-(Note that I CD to the directory the file is in so I can pick of the $P4CONFIG
-file. See the perforce documentation.)
-
-This creates the mappings \pe to check out the file for edit and \pa to add
-the file to the depot.
-
-Here is another example where I remap the <Return> mapping to use an external
-program to launch a special kind of file (in this case, it launches ee to view
-a jpg file). It is a bit contrived, but it works.
->
- let s:sid = substitute(maparg('<Return>', 'n'), '.*\(<SNR>.\{-}\)_.*', '\1', '')
- function! s:LaunchOrWhat()
- let fname=Project_GetFname(line('.'))
- if fname =~ '\.jpg$'
- exec 'silent! !ee "'.fname.'"&'
- else
- call {s:sid}_DoFoldOrOpenEntry('', 'e')
- endif
- endfunction
- nnoremap <buffer> <silent> <Return> \|:call <SID>LaunchOrWhat()<CR>
-<
-If the file ends in .jpg, the external program is launched, otherwise the
-original mapping of <Return> is run.
-
-==============================================================================
-SETTINGS *project-settings*
-
-You can set these variables in your vimrc file before the plugin is loaded to
-change its default behavior
-
-g:proj_window_width
- The width of the Project Window that the plugin attempts to maintain.
- Default: 24
-
- The Project Plugin is not always successful in keeping the window
- where I want it with the size specified here, but it does a decent
- job.
-
-g:proj_window_increment
- The increment by which to increase the width of the Project Window
- when pressing <space> or clicking the <LeftMouse>. Default: 100
- (See |project-mappings|.)
-
- *project-flags*
-g:proj_flags
- Default: "imst"
- Various flags to control the behavior of the Project Plugin. This
- variable can contain any of the following character flags.
-
- flag Description ~
-
- b When present, use the |browse()| when selecting directories
- for \c and \C. This is off by default for Windows, because
- the windows browser does not allow you to select directories.
-
- c When present, the Project Window will automatically close when
- you select a file.
-
- F Float the Project Window. That is, turn off automatic
- resizing and placement. This allows placement between other
- windows that wish to share similar placement at the side of
- the screen. It is also particularly helpful for external
- window managers.
-
- g When present, the mapping for <F12> will be created to toggle
- the Project Window open and closed.
-
- i When present, display the filename and the current working
- directory in the command line when a file is selected for
- opening.
-
- l When present, the Project Plugin will use the |:lcd| command
- rather than |:cd| to change directories when you select a file
- to open. This flag is really obsolete and not of much use
- because of L below.
-
- L Similar to l, but install a BufEnter/Leave |:autocommand| to
- ensure that the current working directory is changed to the
- one specified in the fold CD specification whenever that
- buffer is active. (|:lcd| only changes the CWD for a window,
- not a buffer.)
-
- m Turn on mapping of the |CTRL-W_o| and |CTRL-W_CTRL_O| normal
- mode commands to make the current buffer the only visible
- buffer, but keep the Project Window visible, too.
-
- n When present, numbers will be turned on for the project
- window.
-
- s When present, the Project Plugin will use syntax highlighting
- in the Project Window.
-
- S Turn on sorting for refresh and create.
-
- t When present, toggle the size of the window rather than just
- increase the size when pressing <space> or right-clicking.
- See the entry for <RightMouse> in |project-mappings|.
-
- T When present, put Subproject folds at the top of the fold when
- refreshing.
-
- v When present, use :vimgrep rather than :grep when using \G.
-
-g:proj_run1 ... g:proj_run9
- Contains a Vim command to execute on the file. See the
- mappings of \1 to \9 above.
-
- %f is replaced with the full path and filename
- %F is replaced with the full path and filename with spaces
- quoted
- %n is replaced with the filename alone
- %N is replaced with the filename alone with spaces quoted
- %h is replaced with the home directory
- %H is replaced with the home directory with spaces quoted
- %r is replaced with the directory relative to the CD path
- %R is replaced with the directory relative to the CD path
- with spaces quoted
- %d is replaced with the CD directory.
- %D is replaced with the CD directory.with spaces quoted
- %% is replaced with a single % that is not used in
- expansion.
-
- (Deprecated: %s is also replaced with the full path and
- filename for backward compatibility.)
-
- For example, gvim will be launched on the file under the
- cursor when you enter \3 if the following is in your vimrc
- file: >
- let g:proj_run3='silent !gvim %f'
-< Here are a few other examples: >
- let g:proj_run1='!p4 edit %f'
- let g:proj_run2='!p4 add %f'
- let g:proj_run4="echo 'Viewing %f'|sil !xterm -e less %f &"
-<
- On Windows systems you will want to put the %f, %h, and %d in
- single quotes to avoid \ escaping.
-
-g:proj_run_fold1 ... g:proj_run_fold9
- Contains a Vim command to execute on the files in a fold. See
- the mappings of \f1 to \f9 and \F1 to \F9 above.
-
- %f is the filename, %h is replaced with the project home
- directory, and %d is replaced with the CD directory. Multiple
- filenames can be handled in two ways:
-
- The first (default) way is to have %f replaced with all the
- absolute filenames, and the command is run once. The second
- is to have the command run for each of the non-absolute
- filenames (%f is replaced with one filename at a time). To
- select the second behavior, put an '*' character at the
- beginning of the g:proj_run_fold{x} variable. (The '*' is
- stripped before the command is run.)
-
- For example, note the difference between the following: >
- let g:proj_run_fold3="*echo '%h/%f'"
- let g:proj_run_fold4="echo '%f'"
-<
- Note that on Windows systems, you will want the %f, %h, and %c
- within single quotes, or the \ in the paths will cause
- problems. The alternative is to put them in |escape()|.
-
-
-==============================================================================
-PROJECT EXAMPLE FILE *project-example*
-
-Here is an example ~/.vimprojects file: >
-
- 1 My Project=~/c/project CD=. in=in.vim out=out.vim flags=r {
- 2 Makefile
- 3 in.vim
- 4 out.vim
- 5 GUI Files=. filter="gui*.c gui*.h" {
- 6 gui_window.c
- 7 gui_dialog.c
- 8 gui_list.c
- 9 gui.h # Header file
- 10 }
- 11 Database Files=. filter="data*.c data*.h" {
- 12 data_read.c
- 13 data_write.c
- 14 data.h
- 15 }
- 16 OS-Specific Files {
- 17 Win32=. filter="os_win32*.c os_win32*.h" {
- 18 os_win32_gui.c
- 19 os_win32_io.c
- 20 }
- 21 Unix=. filter="os_unix*.c os_unix*.h" {
- 22 os_unix_gui.c
- 23 os_unix_io.c
- 24 }
- 25 }
- 26 }
-
-(Don't type in the line numbers, of course.)
-
-
-==============================================================================
-TIPS ON USING PROJECT PLUGIN *project-tips*
-
-1. You can create a Project Entry by entering this: >
-
- Label=~/wherever CD=. filter="*.c *.h" {
- }
-<
- Then you can put the cursor in the fold and press \r. The script will fill
- in the files (C files in this case) from this directory for you. This is
- equivalent to \c without any dialogs.
-
-2. You can edit the Project File at any time to add, remove, or reorder files
- in the Project list.
-
-3. If the Project Window ever gets closed, you can just enter >
- :Project
-< to bring it back again. (You don't need to give it the filename; the
- plugin remembers.)
-
- If you have the 'm' flag set in g:proj_flags, then you get the Project
- Window to show up again by pressing |CTRL-W_o|. This, of course, will
- close any other windows that may be open that the cursor is not in.
-
-4. Adding files to a Project is very easy. To add, for example, the 'more.c'
- file to the Project, just insert the filename in the Project Entry then
- hit <Return> on it.
-
-5. When |quickfix| loads files, it is not equivalent to pressing <Return> on
- a filename, so the directory will not be changed and the scripts will not
- be run. (If I could make this otherwise, I would.) The solution is to use
- the \L key to load all of the files in the Project before running
- quickfix.
-
-6. If the Project window gets a bit cluttered with folds partially
- open/closed, you can press |zM| to close everything and tidy it up.
-
-7. For advanced users, I am exporting the function Project_GetAllFnames()
- which returns all the filenames within a fold and optionally all its
- Subprojects. Also, I export Project_ForEach() for running a function for
- each filename in the project. See the code for examples on how to use
- these. Finally, I export Project_GetFname(line_number) so that you can
- write your own mappings and get the filename for it.
-
-8. Some people have asked how to do a global mapping to take the cursor to
- the Project window. One of my goals for the plugin is for it to be as
- self-contained as possible, so I'm not going to add it by default. But you
- can put this in your vimrc:
->
- nmap <silent> <Leader>P :Project<CR>
-
-<
-9. You can put the . entry in a project, and it will launch the
- |file-explorer| plugin on the directory. To avoid removal when you
- refresh, make the entry look like this:
->
- . # pragma keep
-<
-==============================================================================
-THANKS
-
- The following people have sent me patches to help with the Project
- Plugin development:
-
- Tomas Zellerin
- Lawrence Kesteloot
- Dave Eggum
- A Harrison
- Thomas Link
- Richard Bair
- Eric Arnold
- Peter Jones
- Eric Van Dewoestine
-
-
- vim:ts=8 sw=8 noexpandtab tw=78 ft=help:
diff --git a/modules/vim/vim.dot.link/doc/snipMate.txt b/modules/vim/vim.dot.link/doc/snipMate.txt
deleted file mode 100644
index 704d44a..0000000
--- a/modules/vim/vim.dot.link/doc/snipMate.txt
+++ /dev/null
@@ -1,286 +0,0 @@
-*snipMate.txt* Plugin for using TextMate-style snippets in Vim.
-
-snipMate *snippet* *snippets* *snipMate*
-Last Change: July 13, 2009
-
-|snipMate-description| Description
-|snipMate-syntax| Snippet syntax
-|snipMate-usage| Usage
-|snipMate-settings| Settings
-|snipMate-features| Features
-|snipMate-disadvantages| Disadvantages to TextMate
-|snipMate-contact| Contact
-
-For Vim version 7.0 or later.
-This plugin only works if 'compatible' is not set.
-{Vi does not have any of these features.}
-
-==============================================================================
-DESCRIPTION *snipMate-description*
-
-snipMate.vim implements some of TextMate's snippets features in Vim. A
-snippet is a piece of often-typed text that you can insert into your
-document using a trigger word followed by a <tab>.
-
-For instance, in a C file using the default installation of snipMate.vim, if
-you type "for<tab>" in insert mode, it will expand a typical for loop in C: >
-
- for (i = 0; i < count; i++) {
-
- }
-
-
-To go to the next item in the loop, simply <tab> over to it; if there is
-repeated code, such as the "i" variable in this example, you can simply
-start typing once it's highlighted and all the matches specified in the
-snippet will be updated. To go in reverse, use <shift-tab>.
-
-==============================================================================
-SYNTAX *snippet-syntax*
-
-Snippets can be defined in two ways. They can be in their own file, named
-after their trigger in 'snippets/<filetype>/<trigger>.snippet', or they can be
-defined together in a 'snippets/<filetype>.snippets' file. Note that dotted
-'filetype' syntax is supported -- e.g., you can use >
-
- :set ft=html.eruby
-
-to activate snippets for both HTML and eRuby for the current file.
-
-The syntax for snippets in *.snippets files is the following: >
-
- snippet trigger
- expanded text
- more expanded text
-
-Note that the first hard tab after the snippet trigger is required, and not
-expanded in the actual snippet. The syntax for *.snippet files is the same,
-only without the trigger declaration and starting indentation.
-
-Also note that snippets must be defined using hard tabs. They can be expanded
-to spaces later if desired (see |snipMate-indenting|).
-
-"#" is used as a line-comment character in *.snippets files; however, they can
-only be used outside of a snippet declaration. E.g.: >
-
- # this is a correct comment
- snippet trigger
- expanded text
- snippet another_trigger
- # this isn't a comment!
- expanded text
-<
-This should hopefully be obvious with the included syntax highlighting.
-
- *snipMate-${#}*
-Tab stops ~
-
-By default, the cursor is placed at the end of a snippet. To specify where the
-cursor is to be placed next, use "${#}", where the # is the number of the tab
-stop. E.g., to place the cursor first on the id of a <div> tag, and then allow
-the user to press <tab> to go to the middle of it:
- >
- snippet div
- <div id="${1}">
- ${2}
- </div>
-<
- *snipMate-placeholders* *snipMate-${#:}* *snipMate-$#*
-Placeholders ~
-
-Placeholder text can be supplied using "${#:text}", where # is the number of
-the tab stop. This text then can be copied throughout the snippet using "$#",
-given # is the same number as used before. So, to make a C for loop: >
-
- snippet for
- for (${2:i}; $2 < ${1:count}; $1++) {
- ${4}
- }
-
-This will cause "count" to first be selected and change if the user starts
-typing. When <tab> is pressed, the "i" in ${2}'s position will be selected;
-all $2 variables will default to "i" and automatically be updated if the user
-starts typing.
-NOTE: "$#" syntax is used only for variables, not for tab stops as in TextMate.
-
-Variables within variables are also possible. For instance: >
-
- snippet opt
- <option value="${1:option}">${2:$1}</option>
-
-Will, as usual, cause "option" to first be selected and update all the $1
-variables if the user starts typing. Since one of these variables is inside of
-${2}, this text will then be used as a placeholder for the next tab stop,
-allowing the user to change it if he wishes.
-
-To copy a value throughout a snippet without supplying default text, simply
-use the "${#:}" construct without the text; e.g.: >
-
- snippet foo
- ${1:}bar$1
-< *snipMate-commands*
-Interpolated Vim Script ~
-
-Snippets can also contain Vim script commands that are executed (via |eval()|)
-when the snippet is inserted. Commands are given inside backticks (`...`); for
-TextMates's functionality, use the |system()| function. E.g.: >
-
- snippet date
- `system("date +%Y-%m-%d")`
-
-will insert the current date, assuming you are on a Unix system. Note that you
-can also (and should) use |strftime()| for this example.
-
-Filename([{expr}] [, {defaultText}]) *snipMate-filename* *Filename()*
-
-Since the current filename is used often in snippets, a default function
-has been defined for it in snipMate.vim, appropriately called Filename().
-
-With no arguments, the default filename without an extension is returned;
-the first argument specifies what to place before or after the filename,
-and the second argument supplies the default text to be used if the file
-has not been named. "$1" in the first argument is replaced with the filename;
-if you only want the filename to be returned, the first argument can be left
-blank. Examples: >
-
- snippet filename
- `Filename()`
- snippet filename_with_default
- `Filename('', 'name')`
- snippet filename_foo
- `filename('$1_foo')`
-
-The first example returns the filename if it the file has been named, and an
-empty string if it hasn't. The second returns the filename if it's been named,
-and "name" if it hasn't. The third returns the filename followed by "_foo" if
-it has been named, and an empty string if it hasn't.
-
- *multi_snip*
-To specify that a snippet can have multiple matches in a *.snippets file, use
-this syntax: >
-
- snippet trigger A description of snippet #1
- expand this text
- snippet trigger A description of snippet #2
- expand THIS text!
-
-In this example, when "trigger<tab>" is typed, a numbered menu containing all
-of the descriptions of the "trigger" will be shown; when the user presses the
-corresponding number, that snippet will then be expanded.
-
-To create a snippet with multiple matches using *.snippet files,
-simply place all the snippets in a subdirectory with the trigger name:
-'snippets/<filetype>/<trigger>/<name>.snippet'.
-
-==============================================================================
-USAGE *snipMate-usage*
-
- *'snippets'* *g:snippets_dir*
-Snippets are by default looked for any 'snippets' directory in your
-'runtimepath'. Typically, it is located at '~/.vim/snippets/' on *nix or
-'$HOME\vimfiles\snippets\' on Windows. To change that location or add another
-one, change the g:snippets_dir variable in your |.vimrc| to your preferred
-directory, or use the |ExtractSnips()|function. This will be used by the
-|globpath()| function, and so accepts the same syntax as it (e.g.,
-comma-separated paths).
-
-ExtractSnipsFile({directory}, {filetype}) *ExtractSnipsFile()* *.snippets*
-
-ExtractSnipsFile() extracts the specified *.snippets file for the given
-filetype. A .snippets file contains multiple snippet declarations for the
-filetype. It is further explained above, in |snippet-syntax|.
-
-ExtractSnips({directory}, {filetype}) *ExtractSnips()* *.snippet*
-
-ExtractSnips() extracts *.snippet files from the specified directory and
-defines them as snippets for the given filetype. The directory tree should
-look like this: 'snippets/<filetype>/<trigger>.snippet'. If the snippet has
-multiple matches, it should look like this:
-'snippets/<filetype>/<trigger>/<name>.snippet' (see |multi_snip|).
-
- *ResetSnippets()*
-The ResetSnippets() function removes all snippets from memory. This is useful
-to put at the top of a snippet setup file for if you would like to |:source|
-it multiple times.
-
- *list-snippets* *i_CTRL-R_<Tab>*
-If you would like to see what snippets are available, simply type <c-r><tab>
-in the current buffer to show a list via |popupmenu-completion|.
-
-==============================================================================
-SETTINGS *snipMate-settings* *g:snips_author*
-
-The g:snips_author string (similar to $TM_FULLNAME in TextMate) should be set
-to your name; it can then be used in snippets to automatically add it. E.g.: >
-
- let g:snips_author = 'Hubert Farnsworth'
- snippet name
- `g:snips_author`
-<
- *snipMate-expandtab* *snipMate-indenting*
-If you would like your snippets to be expanded using spaces instead of tabs,
-just enable 'expandtab' and set 'softtabstop' to your preferred amount of
-spaces. If 'softtabstop' is not set, 'shiftwidth' is used instead.
-
- *snipMate-remap*
-snipMate does not come with a setting to customize the trigger key, but you
-can remap it easily in the two lines it's defined in the 'after' directory
-under 'plugin/snipMate.vim'. For instance, to change the trigger key
-to CTRL-J, just change this: >
-
- ino <tab> <c-r>=TriggerSnippet()<cr>
- snor <tab> <esc>i<right><c-r>=TriggerSnippet()<cr>
-
-to this: >
- ino <c-j> <c-r>=TriggerSnippet()<cr>
- snor <c-j> <esc>i<right><c-r>=TriggerSnippet()<cr>
-
-==============================================================================
-FEATURES *snipMate-features*
-
-snipMate.vim has the following features among others:
- - The syntax of snippets is very similar to TextMate's, allowing
- easy conversion.
- - The position of the snippet is kept transparently (i.e. it does not use
- markers/placeholders written to the buffer), which allows you to escape
- out of an incomplete snippet, something particularly useful in Vim.
- - Variables in snippets are updated as-you-type.
- - Snippets can have multiple matches.
- - Snippets can be out of order. For instance, in a do...while loop, the
- condition can be added before the code.
- - [New] File-based snippets are supported.
- - [New] Triggers after non-word delimiters are expanded, e.g. "foo"
- in "bar.foo".
- - [New] <shift-tab> can now be used to jump tab stops in reverse order.
-
-==============================================================================
-DISADVANTAGES *snipMate-disadvantages*
-
-snipMate.vim currently has the following disadvantages to TextMate's snippets:
- - There is no $0; the order of tab stops must be explicitly stated.
- - Placeholders within placeholders are not possible. E.g.: >
-
- '<div${1: id="${2:some_id}}">${3}</div>'
-<
- In TextMate this would first highlight ' id="some_id"', and if
- you hit delete it would automatically skip ${2} and go to ${3}
- on the next <tab>, but if you didn't delete it it would highlight
- "some_id" first. You cannot do this in snipMate.vim.
- - Regex cannot be performed on variables, such as "${1/.*/\U&}"
- - Placeholders cannot span multiple lines.
- - Activating snippets in different scopes of the same file is
- not possible.
-
-Perhaps some of these features will be added in a later release.
-
-==============================================================================
-CONTACT *snipMate-contact* *snipMate-author*
-
-To contact the author (Michael Sanders), please email:
- msanders42+snipmate <at> gmail <dot> com
-
-I greatly appreciate any suggestions or improvements offered for the script.
-
-==============================================================================
-
-vim:tw=78:ts=8:ft=help:norl:
diff --git a/modules/vim/vim.dot.link/doc/taglist.txt b/modules/vim/vim.dot.link/doc/taglist.txt
deleted file mode 100755
index 6a62b39..0000000
--- a/modules/vim/vim.dot.link/doc/taglist.txt
+++ /dev/null
@@ -1,1501 +0,0 @@
-*taglist.txt* Plugin for browsing source code
-
-Author: Yegappan Lakshmanan (yegappan AT yahoo DOT com)
-For Vim version 6.0 and above
-Last change: 2007 May 24
-
-1. Overview |taglist-intro|
-2. Taglist on the internet |taglist-internet|
-3. Requirements |taglist-requirements|
-4. Installation |taglist-install|
-5. Usage |taglist-using|
-6. Options |taglist-options|
-7. Commands |taglist-commands|
-8. Global functions |taglist-functions|
-9. Extending |taglist-extend|
-10. FAQ |taglist-faq|
-11. License |taglist-license|
-12. Todo |taglist-todo|
-
-==============================================================================
- *taglist-intro*
-1. Overview~
-
-The "Tag List" plugin is a source code browser plugin for Vim. This plugin
-allows you to efficiently browse through source code files for different
-programming languages. The "Tag List" plugin provides the following features:
-
- * Displays the tags (functions, classes, structures, variables, etc.)
- defined in a file in a vertically or horizontally split Vim window.
- * In GUI Vim, optionally displays the tags in the Tags drop-down menu and
- in the popup menu.
- * Automatically updates the taglist window as you switch between
- files/buffers. As you open new files, the tags defined in the new files
- are added to the existing file list and the tags defined in all the
- files are displayed grouped by the filename.
- * When a tag name is selected from the taglist window, positions the
- cursor at the definition of the tag in the source file.
- * Automatically highlights the current tag name.
- * Groups the tags by their type and displays them in a foldable tree.
- * Can display the prototype and scope of a tag.
- * Can optionally display the tag prototype instead of the tag name in the
- taglist window.
- * The tag list can be sorted either by name or by chronological order.
- * Supports the following language files: Assembly, ASP, Awk, Beta, C,
- C++, C#, Cobol, Eiffel, Erlang, Fortran, HTML, Java, Javascript, Lisp,
- Lua, Make, Pascal, Perl, PHP, Python, Rexx, Ruby, Scheme, Shell, Slang,
- SML, Sql, TCL, Verilog, Vim and Yacc.
- * Can be easily extended to support new languages. Support for
- existing languages can be modified easily.
- * Provides functions to display the current tag name in the Vim status
- line or the window title bar.
- * The list of tags and files in the taglist can be saved and
- restored across Vim sessions.
- * Provides commands to get the name and prototype of the current tag.
- * Runs in both console/terminal and GUI versions of Vim.
- * Works with the winmanager plugin. Using the winmanager plugin, you
- can use Vim plugins like the file explorer, buffer explorer and the
- taglist plugin at the same time like an IDE.
- * Can be used in both Unix and MS-Windows systems.
-
-==============================================================================
- *taglist-internet*
-2. Taglist on the internet~
-
-The home page of the taglist plugin is at:
->
- http://vim-taglist.sourceforge.net/
-<
-You can subscribe to the taglist mailing list to post your questions or
-suggestions for improvement or to send bug reports. Visit the following page
-for subscribing to the mailing list:
->
- http://groups.yahoo.com/group/taglist
-<
-==============================================================================
- *taglist-requirements*
-3. Requirements~
-
-The taglist plugin requires the following:
-
- * Vim version 6.0 and above
- * Exuberant ctags 5.0 and above
-
-The taglist plugin will work on all the platforms where the exuberant ctags
-utility and Vim are supported (this includes MS-Windows and Unix based
-systems).
-
-The taglist plugin relies on the exuberant ctags utility to dynamically
-generate the tag listing. The exuberant ctags utility must be installed in
-your system to use this plugin. The exuberant ctags utility is shipped with
-most of the Linux distributions. You can download the exuberant ctags utility
-from
->
- http://ctags.sourceforge.net
-<
-The taglist plugin doesn't use or create a tags file and there is no need to
-create a tags file to use this plugin. The taglist plugin will not work with
-the GNU ctags or the Unix ctags utility.
-
-This plugin relies on the Vim "filetype" detection mechanism to determine the
-type of the current file. You have to turn on the Vim filetype detection by
-adding the following line to your .vimrc file:
->
- filetype on
-<
-The taglist plugin will not work if you run Vim in the restricted mode (using
-the -Z command-line argument).
-
-The taglist plugin uses the Vim system() function to invoke the exuberant
-ctags utility. If Vim is compiled without the system() function then you
-cannot use the taglist plugin. Some of the Linux distributions (Suse) compile
-Vim without the system() function for security reasons.
-
-==============================================================================
- *taglist-install*
-4. Installation~
-
-1. Download the taglist.zip file and unzip the files to the $HOME/.vim or the
- $HOME/vimfiles or the $VIM/vimfiles directory. After this step, you should
- have the following two files (the directory structure should be preserved):
-
- plugin/taglist.vim - main taglist plugin file
- doc/taglist.txt - documentation (help) file
-
- Refer to the |add-plugin|and |'runtimepath'| Vim help pages for more
- details about installing Vim plugins.
-2. Change to the $HOME/.vim/doc or $HOME/vimfiles/doc or $VIM/vimfiles/doc
- directory, start Vim and run the ":helptags ." command to process the
- taglist help file. Without this step, you cannot jump to the taglist help
- topics.
-3. If the exuberant ctags utility is not present in one of the directories in
- the PATH environment variable, then set the 'Tlist_Ctags_Cmd' variable to
- point to the location of the exuberant ctags utility (not to the directory)
- in the .vimrc file.
-4. If you are running a terminal/console version of Vim and the terminal
- doesn't support changing the window width then set the
- 'Tlist_Inc_Winwidth' variable to 0 in the .vimrc file.
-5. Restart Vim.
-6. You can now use the ":TlistToggle" command to open/close the taglist
- window. You can use the ":help taglist" command to get more information
- about using the taglist plugin.
-
-To uninstall the taglist plugin, remove the plugin/taglist.vim and
-doc/taglist.txt files from the $HOME/.vim or $HOME/vimfiles directory.
-
-==============================================================================
- *taglist-using*
-5. Usage~
-
-The taglist plugin can be used in several different ways.
-
-1. You can keep the taglist window open during the entire editing session. On
- opening the taglist window, the tags defined in all the files in the Vim
- buffer list will be displayed in the taglist window. As you edit files, the
- tags defined in them will be added to the taglist window. You can select a
- tag from the taglist window and jump to it. The current tag will be
- highlighted in the taglist window. You can close the taglist window when
- you no longer need the window.
-2. You can configure the taglist plugin to process the tags defined in all the
- edited files always. In this configuration, even if the taglist window is
- closed and the taglist menu is not displayed, the taglist plugin will
- processes the tags defined in newly edited files. You can then open the
- taglist window only when you need to select a tag and then automatically
- close the taglist window after selecting the tag.
-3. You can configure the taglist plugin to display only the tags defined in
- the current file in the taglist window. By default, the taglist plugin
- displays the tags defined in all the files in the Vim buffer list. As you
- switch between files, the taglist window will be refreshed to display only
- the tags defined in the current file.
-4. In GUI Vim, you can use the Tags pull-down and popup menu created by the
- taglist plugin to display the tags defined in the current file and select a
- tag to jump to it. You can use the menu without opening the taglist window.
- By default, the Tags menu is disabled.
-5. You can configure the taglist plugin to display the name of the current tag
- in the Vim window status line or in the Vim window title bar. For this to
- work without the taglist window or menu, you need to configure the taglist
- plugin to process the tags defined in a file always.
-6. You can save the tags defined in multiple files to a taglist session file
- and load it when needed. You can also configure the taglist plugin to not
- update the taglist window when editing new files. You can then manually add
- files to the taglist window.
-
-Opening the taglist window~
-You can open the taglist window using the ":TlistOpen" or the ":TlistToggle"
-commands. The ":TlistOpen" command opens the taglist window and jumps to it.
-The ":TlistToggle" command opens or closes (toggle) the taglist window and the
-cursor remains in the current window. If the 'Tlist_GainFocus_On_ToggleOpen'
-variable is set to 1, then the ":TlistToggle" command opens the taglist window
-and moves the cursor to the taglist window.
-
-You can map a key to invoke these commands. For example, the following command
-creates a normal mode mapping for the <F8> key to toggle the taglist window.
->
- nnoremap <silent> <F8> :TlistToggle<CR>
-<
-Add the above mapping to your ~/.vimrc or $HOME/_vimrc file.
-
-To automatically open the taglist window on Vim startup, set the
-'Tlist_Auto_Open' variable to 1.
-
-You can also open the taglist window on startup using the following command
-line:
->
- $ vim +TlistOpen
-<
-Closing the taglist window~
-You can close the taglist window from the taglist window by pressing 'q' or
-using the Vim ":q" command. You can also use any of the Vim window commands to
-close the taglist window. Invoking the ":TlistToggle" command when the taglist
-window is opened, closes the taglist window. You can also use the
-":TlistClose" command to close the taglist window.
-
-To automatically close the taglist window when a tag or file is selected, you
-can set the 'Tlist_Close_On_Select' variable to 1. To exit Vim when only the
-taglist window is present, set the 'Tlist_Exit_OnlyWindow' variable to 1.
-
-Jumping to a tag or a file~
-You can select a tag in the taglist window either by pressing the <Enter> key
-or by double clicking the tag name using the mouse. To jump to a tag on a
-single mouse click set the 'Tlist_Use_SingleClick' variable to 1.
-
-If the selected file is already opened in a window, then the cursor is moved
-to that window. If the file is not currently opened in a window then the file
-is opened in the window used by the taglist plugin to show the previously
-selected file. If there are no usable windows, then the file is opened in a
-new window. The file is not opened in special windows like the quickfix
-window, preview window and windows containing buffer with the 'buftype' option
-set.
-
-To jump to the tag in a new window, press the 'o' key. To open the file in the
-previous window (Ctrl-W_p) use the 'P' key. You can press the 'p' key to jump
-to the tag but still keep the cursor in the taglist window (preview).
-
-To open the selected file in a tab, use the 't' key. If the file is already
-present in a tab then the cursor is moved to that tab otherwise the file is
-opened in a new tab. To jump to a tag in a new tab press Ctrl-t. The taglist
-window is automatically opened in the newly created tab.
-
-Instead of jumping to a tag, you can open a file by pressing the <Enter> key
-or by double clicking the file name using the mouse.
-
-In the taglist window, you can use the [[ or <Backspace> key to jump to the
-beginning of the previous file. You can use the ]] or <Tab> key to jump to the
-beginning of the next file. When you reach the first or last file, the search
-wraps around and the jumps to the next/previous file.
-
-Highlighting the current tag~
-The taglist plugin automatically highlights the name of the current tag in the
-taglist window. The Vim |CursorHold| autocmd event is used for this. If the
-current tag name is not visible in the taglist window, then the taglist window
-contents are scrolled to make that tag name visible. You can also use the
-":TlistHighlightTag" command to force the highlighting of the current tag.
-
-The tag name is highlighted if no activity is performed for |'updatetime'|
-milliseconds. The default value for this Vim option is 4 seconds. To avoid
-unexpected problems, you should not set the |'updatetime'| option to a very
-low value.
-
-To disable the automatic highlighting of the current tag name in the taglist
-window, set the 'Tlist_Auto_Highlight_Tag' variable to zero.
-
-When entering a Vim buffer/window, the taglist plugin automatically highlights
-the current tag in that buffer/window. If you like to disable the automatic
-highlighting of the current tag when entering a buffer, set the
-'Tlist_Highlight_Tag_On_BufEnter' variable to zero.
-
-Adding files to the taglist~
-When the taglist window is opened, all the files in the Vim buffer list are
-processed and the supported files are added to the taglist. When you edit a
-file in Vim, the taglist plugin automatically processes this file and adds it
-to the taglist. If you close the taglist window, the tag information in the
-taglist is retained.
-
-To process files even when the taglist window is not open, set the
-'Tlist_Process_File_Always' variable to 1.
-
-You can manually add multiple files to the taglist without opening them using
-the ":TlistAddFiles" and the ":TlistAddFilesRecursive" commands.
-
-For example, to add all the C files in the /my/project/dir directory to the
-taglist, you can use the following command:
->
- :TlistAddFiles /my/project/dir/*.c
-<
-Note that when adding several files with a large number of tags or a large
-number of files, it will take several seconds to several minutes for the
-taglist plugin to process all the files. You should not interrupt the taglist
-plugin by pressing <CTRL-C>.
-
-You can recursively add multiple files from a directory tree using the
-":TlistAddFilesRecursive" command:
->
- :TlistAddFilesRecursive /my/project/dir *.c
-<
-This command takes two arguments. The first argument specifies the directory
-from which to recursively add the files. The second optional argument
-specifies the wildcard matching pattern for selecting the files to add. The
-default pattern is * and all the files are added.
-
-Displaying tags for only one file~
-The taglist window displays the tags for all the files in the Vim buffer list
-and all the manually added files. To display the tags for only the current
-active buffer, set the 'Tlist_Show_One_File' variable to 1.
-
-Removing files from the taglist~
-You can remove a file from the taglist window, by pressing the 'd' key when the
-cursor is on one of the tags listed for the file in the taglist window. The
-removed file will no longer be displayed in the taglist window in the current
-Vim session. To again display the tags for the file, open the file in a Vim
-window and then use the ":TlistUpdate" command or use ":TlistAddFiles" command
-to add the file to the taglist.
-
-When a buffer is removed from the Vim buffer list using the ":bdelete" or the
-":bwipeout" command, the taglist is updated to remove the stored information
-for this buffer.
-
-Updating the tags displayed for a file~
-The taglist plugin keeps track of the modification time of a file. When the
-modification time changes (the file is modified), the taglist plugin
-automatically updates the tags listed for that file. The modification time of
-a file is checked when you enter a window containing that file or when you
-load that file.
-
-You can also update or refresh the tags displayed for a file by pressing the
-"u" key in the taglist window. If an existing file is modified, after the file
-is saved, the taglist plugin automatically updates the tags displayed for the
-file.
-
-You can also use the ":TlistUpdate" command to update the tags for the current
-buffer after you made some changes to it. You should save the modified buffer
-before you update the taglist window. Otherwise the listed tags will not
-include the new tags created in the buffer.
-
-If you have deleted the tags displayed for a file in the taglist window using
-the 'd' key, you can again display the tags for that file using the
-":TlistUpdate" command.
-
-Controlling the taglist updates~
-To disable the automatic processing of new files or modified files, you can
-set the 'Tlist_Auto_Update' variable to zero. When this variable is set to
-zero, the taglist is updated only when you use the ":TlistUpdate" command or
-the ":TlistAddFiles" or the ":TlistAddFilesRecursive" commands. You can use
-this option to control which files are added to the taglist.
-
-You can use the ":TlistLock" command to lock the taglist contents. After this
-command is executed, new files are not automatically added to the taglist.
-When the taglist is locked, you can use the ":TlistUpdate" command to add the
-current file or the ":TlistAddFiles" or ":TlistAddFilesRecursive" commands to
-add new files to the taglist. To unlock the taglist, use the ":TlistUnlock"
-command.
-
-Displaying the tag prototype~
-To display the prototype of the tag under the cursor in the taglist window,
-press the space bar. If you place the cursor on a tag name in the taglist
-window, then the tag prototype is displayed at the Vim status line after
-|'updatetime'| milliseconds. The default value for the |'updatetime'| Vim
-option is 4 seconds.
-
-You can get the name and prototype of a tag without opening the taglist window
-and the taglist menu using the ":TlistShowTag" and the ":TlistShowPrototype"
-commands. These commands will work only if the current file is already present
-in the taglist. To use these commands without opening the taglist window, set
-the 'Tlist_Process_File_Always' variable to 1.
-
-You can use the ":TlistShowTag" command to display the name of the tag at or
-before the specified line number in the specified file. If the file name and
-line number are not supplied, then this command will display the name of the
-current tag. For example,
->
- :TlistShowTag
- :TlistShowTag myfile.java 100
-<
-You can use the ":TlistShowPrototype" command to display the prototype of the
-tag at or before the specified line number in the specified file. If the file
-name and the line number are not supplied, then this command will display the
-prototype of the current tag. For example,
->
- :TlistShowPrototype
- :TlistShowPrototype myfile.c 50
-<
-In the taglist window, when the mouse is moved over a tag name, the tag
-prototype is displayed in a balloon. This works only in GUI versions where
-balloon evaluation is supported.
-
-Taglist window contents~
-The taglist window contains the tags defined in various files in the taglist
-grouped by the filename and by the tag type (variable, function, class, etc.).
-For tags with scope information (like class members, structures inside
-structures, etc.), the scope information is displayed in square brackets "[]"
-after the tag name.
-
-The contents of the taglist buffer/window are managed by the taglist plugin.
-The |'filetype'| for the taglist buffer is set to 'taglist'. The Vim
-|'modifiable'| option is turned off for the taglist buffer. You should not
-manually edit the taglist buffer, by setting the |'modifiable'| flag. If you
-manually edit the taglist buffer contents, then the taglist plugin will be out
-of sync with the taglist buffer contents and the plugin will no longer work
-correctly. To redisplay the taglist buffer contents again, close the taglist
-window and reopen it.
-
-Opening and closing the tag and file tree~
-In the taglist window, the tag names are displayed as a foldable tree using
-the Vim folding support. You can collapse the tree using the '-' key or using
-the Vim |zc| fold command. You can open the tree using the '+' key or using
-the Vim |zo| fold command. You can open all the folds using the '*' key or
-using the Vim |zR| fold command. You can also use the mouse to open/close the
-folds. You can close all the folds using the '=' key. You should not manually
-create or delete the folds in the taglist window.
-
-To automatically close the fold for the inactive files/buffers and open only
-the fold for the current buffer in the taglist window, set the
-'Tlist_File_Fold_Auto_Close' variable to 1.
-
-Sorting the tags for a file~
-The tags displayed in the taglist window can be sorted either by their name or
-by their chronological order. The default sorting method is by the order in
-which the tags appear in a file. You can change the default sort method by
-setting the 'Tlist_Sort_Type' variable to either "name" or "order". You can
-sort the tags by their name by pressing the "s" key in the taglist window. You
-can again sort the tags by their chronological order using the "s" key. Each
-file in the taglist window can be sorted using different order.
-
-Zooming in and out of the taglist window~
-You can press the 'x' key in the taglist window to maximize the taglist
-window width/height. The window will be maximized to the maximum possible
-width/height without closing the other existing windows. You can again press
-'x' to restore the taglist window to the default width/height.
-
- *taglist-session*
-Taglist Session~
-A taglist session refers to the group of files and their tags stored in the
-taglist in a Vim session.
-
-You can save and restore a taglist session (and all the displayed tags) using
-the ":TlistSessionSave" and ":TlistSessionLoad" commands.
-
-To save the information about the tags and files in the taglist to a file, use
-the ":TlistSessionSave" command and specify the filename:
->
- :TlistSessionSave <file name>
-<
-To load a saved taglist session, use the ":TlistSessionLoad" command: >
-
- :TlistSessionLoad <file name>
-<
-When you load a taglist session file, the tags stored in the file will be
-added to the tags already stored in the taglist.
-
-The taglist session feature can be used to save the tags for large files or a
-group of frequently used files (like a project). By using the taglist session
-file, you can minimize the amount to time it takes to load/refresh the taglist
-for multiple files.
-
-You can create more than one taglist session file for multiple groups of
-files.
-
-Displaying the tag name in the Vim status line or the window title bar~
-You can use the Tlist_Get_Tagname_By_Line() function provided by the taglist
-plugin to display the current tag name in the Vim status line or the window
-title bar. Similarly, you can use the Tlist_Get_Tag_Prototype_By_Line()
-function to display the current tag prototype in the Vim status line or the
-window title bar.
-
-For example, the following command can be used to display the current tag name
-in the status line:
->
- :set statusline=%<%f%=%([%{Tlist_Get_Tagname_By_Line()}]%)
-<
-The following command can be used to display the current tag name in the
-window title bar:
->
- :set title titlestring=%<%f\ %([%{Tlist_Get_Tagname_By_Line()}]%)
-<
-Note that the current tag name can be displayed only after the file is
-processed by the taglist plugin. For this, you have to either set the
-'Tlist_Process_File_Always' variable to 1 or open the taglist window or use
-the taglist menu. For more information about configuring the Vim status line,
-refer to the documentation for the Vim |'statusline'| option.
-
-Changing the taglist window highlighting~
-The following Vim highlight groups are defined and used to highlight the
-various entities in the taglist window:
-
- TagListTagName - Used for tag names
- TagListTagScope - Used for tag scope
- TagListTitle - Used for tag titles
- TagListComment - Used for comments
- TagListFileName - Used for filenames
-
-By default, these highlight groups are linked to the standard Vim highlight
-groups. If you want to change the colors used for these highlight groups,
-prefix the highlight group name with 'My' and define it in your .vimrc or
-.gvimrc file: MyTagListTagName, MyTagListTagScope, MyTagListTitle,
-MyTagListComment and MyTagListFileName. For example, to change the colors
-used for tag names, you can use the following command:
->
- :highlight MyTagListTagName guifg=blue ctermfg=blue
-<
-Controlling the taglist window~
-To use a horizontally split taglist window, instead of a vertically split
-window, set the 'Tlist_Use_Horiz_Window' variable to 1.
-
-To use a vertically split taglist window on the rightmost side of the Vim
-window, set the 'Tlist_Use_Right_Window' variable to 1.
-
-You can specify the width of the vertically split taglist window, by setting
-the 'Tlist_WinWidth' variable. You can specify the height of the horizontally
-split taglist window, by setting the 'Tlist_WinHeight' variable.
-
-When opening a vertically split taglist window, the Vim window width is
-increased to accommodate the new taglist window. When the taglist window is
-closed, the Vim window is reduced. To disable this, set the
-'Tlist_Inc_Winwidth' variable to zero.
-
-To reduce the number of empty lines in the taglist window, set the
-'Tlist_Compact_Format' variable to 1.
-
-To not display the Vim fold column in the taglist window, set the
-'Tlist_Enable_Fold_Column' variable to zero.
-
-To display the tag prototypes instead of the tag names in the taglist window,
-set the 'Tlist_Display_Prototype' variable to 1.
-
-To not display the scope of the tags next to the tag names, set the
-'Tlist_Display_Tag_Scope' variable to zero.
-
- *taglist-keys*
-Taglist window key list~
-The following table lists the description of the keys that can be used
-in the taglist window.
-
- Key Description~
-
- <CR> Jump to the location where the tag under cursor is
- defined.
- o Jump to the location where the tag under cursor is
- defined in a new window.
- P Jump to the tag in the previous (Ctrl-W_p) window.
- p Display the tag definition in the file window and
- keep the cursor in the taglist window itself.
- t Jump to the tag in a new tab. If the file is already
- opened in a tab, move to that tab.
- Ctrl-t Jump to the tag in a new tab.
- <Space> Display the prototype of the tag under the cursor.
- For file names, display the full path to the file,
- file type and the number of tags. For tag types, display the
- tag type and the number of tags.
- u Update the tags listed in the taglist window
- s Change the sort order of the tags (by name or by order)
- d Remove the tags for the file under the cursor
- x Zoom-in or Zoom-out the taglist window
- + Open a fold
- - Close a fold
- * Open all folds
- = Close all folds
- [[ Jump to the beginning of the previous file
- <Backspace> Jump to the beginning of the previous file
- ]] Jump to the beginning of the next file
- <Tab> Jump to the beginning of the next file
- q Close the taglist window
- <F1> Display help
-
-The above keys will work in both the normal mode and the insert mode.
-
- *taglist-menu*
-Taglist menu~
-When using GUI Vim, the taglist plugin can display the tags defined in the
-current file in the drop-down menu and the popup menu. By default, this
-feature is turned off. To turn on this feature, set the 'Tlist_Show_Menu'
-variable to 1.
-
-You can jump to a tag by selecting the tag name from the menu. You can use the
-taglist menu independent of the taglist window i.e. you don't need to open the
-taglist window to get the taglist menu.
-
-When you switch between files/buffers, the taglist menu is automatically
-updated to display the tags defined in the current file/buffer.
-
-The tags are grouped by their type (variables, functions, classes, methods,
-etc.) and displayed as a separate sub-menu for each type. If all the tags
-defined in a file are of the same type (e.g. functions), then the sub-menu is
-not used.
-
-If the number of items in a tag type submenu exceeds the value specified by
-the 'Tlist_Max_Submenu_Items' variable, then the submenu will be split into
-multiple submenus. The default setting for 'Tlist_Max_Submenu_Items' is 25.
-The first and last tag names in the submenu are used to form the submenu name.
-The menu items are prefixed by alpha-numeric characters for easy selection by
-keyboard.
-
-If the popup menu support is enabled (the |'mousemodel'| option contains
-"popup"), then the tags menu is added to the popup menu. You can access
-the popup menu by right clicking on the GUI window.
-
-You can regenerate the tags menu by selecting the 'Tags->Refresh menu' entry.
-You can sort the tags listed in the menu either by name or by order by
-selecting the 'Tags->Sort menu by->Name/Order' menu entry.
-
-You can tear-off the Tags menu and keep it on the side of the Vim window
-for quickly locating the tags.
-
-Using the taglist plugin with the winmanager plugin~
-You can use the taglist plugin with the winmanager plugin. This will allow you
-to use the file explorer, buffer explorer and the taglist plugin at the same
-time in different windows. To use the taglist plugin with the winmanager
-plugin, set 'TagList' in the 'winManagerWindowLayout' variable. For example,
-to use the file explorer plugin and the taglist plugin at the same time, use
-the following setting: >
-
- let winManagerWindowLayout = 'FileExplorer|TagList'
-<
-Getting help~
-If you have installed the taglist help file (this file), then you can use the
-Vim ":help taglist-<keyword>" command to get help on the various taglist
-topics.
-
-You can press the <F1> key in the taglist window to display the help
-information about using the taglist window. If you again press the <F1> key,
-the help information is removed from the taglist window.
-
- *taglist-debug*
-Debugging the taglist plugin~
-You can use the ":TlistDebug" command to enable logging of the debug messages
-from the taglist plugin. To display the logged debug messages, you can use the
-":TlistMessages" command. To disable the logging of the debug messages, use
-the ":TlistUndebug" command.
-
-You can specify a file name to the ":TlistDebug" command to log the debug
-messages to a file. Otherwise, the debug messages are stored in a script-local
-variable. In the later case, to minimize memory usage, only the last 3000
-characters from the debug messages are stored.
-
-==============================================================================
- *taglist-options*
-6. Options~
-
-A number of Vim variables control the behavior of the taglist plugin. These
-variables are initialized to a default value. By changing these variables you
-can change the behavior of the taglist plugin. You need to change these
-settings only if you want to change the behavior of the taglist plugin. You
-should use the |:let| command in your .vimrc file to change the setting of any
-of these variables.
-
-The configurable taglist variables are listed below. For a detailed
-description of these variables refer to the text below this table.
-
-|'Tlist_Auto_Highlight_Tag'| Automatically highlight the current tag in the
- taglist.
-|'Tlist_Auto_Open'| Open the taglist window when Vim starts.
-|'Tlist_Auto_Update'| Automatically update the taglist to include
- newly edited files.
-|'Tlist_Close_On_Select'| Close the taglist window when a file or tag is
- selected.
-|'Tlist_Compact_Format'| Remove extra information and blank lines from
- the taglist window.
-|'Tlist_Ctags_Cmd'| Specifies the path to the ctags utility.
-|'Tlist_Display_Prototype'| Show prototypes and not tags in the taglist
- window.
-|'Tlist_Display_Tag_Scope'| Show tag scope next to the tag name.
-|'Tlist_Enable_Fold_Column'| Show the fold indicator column in the taglist
- window.
-|'Tlist_Exit_OnlyWindow'| Close Vim if the taglist is the only window.
-|'Tlist_File_Fold_Auto_Close'| Close tag folds for inactive buffers.
-|'Tlist_GainFocus_On_ToggleOpen'|
- Jump to taglist window on open.
-|'Tlist_Highlight_Tag_On_BufEnter'|
- On entering a buffer, automatically highlight
- the current tag.
-|'Tlist_Inc_Winwidth'| Increase the Vim window width to accommodate
- the taglist window.
-|'Tlist_Max_Submenu_Items'| Maximum number of items in a tags sub-menu.
-|'Tlist_Max_Tag_Length'| Maximum tag length used in a tag menu entry.
-|'Tlist_Process_File_Always'| Process files even when the taglist window is
- closed.
-|'Tlist_Show_Menu'| Display the tags menu.
-|'Tlist_Show_One_File'| Show tags for the current buffer only.
-|'Tlist_Sort_Type'| Sort method used for arranging the tags.
-|'Tlist_Use_Horiz_Window'| Use a horizontally split window for the
- taglist window.
-|'Tlist_Use_Right_Window'| Place the taglist window on the right side.
-|'Tlist_Use_SingleClick'| Single click on a tag jumps to it.
-|'Tlist_WinHeight'| Horizontally split taglist window height.
-|'Tlist_WinWidth'| Vertically split taglist window width.
-
- *'Tlist_Auto_Highlight_Tag'*
-Tlist_Auto_Highlight_Tag~
-The taglist plugin will automatically highlight the current tag in the taglist
-window. If you want to disable this, then you can set the
-'Tlist_Auto_Highlight_Tag' variable to zero. Note that even though the current
-tag highlighting is disabled, the tags for a new file will still be added to
-the taglist window.
->
- let Tlist_Auto_Highlight_Tag = 0
-<
-With the above variable set to 1, you can use the ":TlistHighlightTag" command
-to highlight the current tag.
-
- *'Tlist_Auto_Open'*
-Tlist_Auto_Open~
-To automatically open the taglist window, when you start Vim, you can set the
-'Tlist_Auto_Open' variable to 1. By default, this variable is set to zero and
-the taglist window will not be opened automatically on Vim startup.
->
- let Tlist_Auto_Open = 1
-<
-The taglist window is opened only when a supported type of file is opened on
-Vim startup. For example, if you open text files, then the taglist window will
-not be opened.
-
- *'Tlist_Auto_Update'*
-Tlist_Auto_Update~
-When a new file is edited, the tags defined in the file are automatically
-processed and added to the taglist. To stop adding new files to the taglist,
-set the 'Tlist_Auto_Update' variable to zero. By default, this variable is set
-to 1.
->
- let Tlist_Auto_Update = 0
-<
-With the above variable set to 1, you can use the ":TlistUpdate" command to
-add the tags defined in the current file to the taglist.
-
- *'Tlist_Close_On_Select'*
-Tlist_Close_On_Select~
-If you want to close the taglist window when a file or tag is selected, then
-set the 'Tlist_Close_On_Select' variable to 1. By default, this variable is
-set zero and when you select a tag or file from the taglist window, the window
-is not closed.
->
- let Tlist_Close_On_Select = 1
-<
- *'Tlist_Compact_Format'*
-Tlist_Compact_Format~
-By default, empty lines are used to separate different tag types displayed for
-a file and the tags displayed for different files in the taglist window. If
-you want to display as many tags as possible in the taglist window, you can
-set the 'Tlist_Compact_Format' variable to 1 to get a compact display.
->
- let Tlist_Compact_Format = 1
-<
- *'Tlist_Ctags_Cmd'*
-Tlist_Ctags_Cmd~
-The 'Tlist_Ctags_Cmd' variable specifies the location (path) of the exuberant
-ctags utility. If exuberant ctags is present in any one of the directories in
-the PATH environment variable, then there is no need to set this variable.
-
-The exuberant ctags tool can be installed under different names. When the
-taglist plugin starts up, if the 'Tlist_Ctags_Cmd' variable is not set, it
-checks for the names exuberant-ctags, exctags, ctags, ctags.exe and tags in
-the PATH environment variable. If any one of the named executable is found,
-then the Tlist_Ctags_Cmd variable is set to that name.
-
-If exuberant ctags is not present in one of the directories specified in the
-PATH environment variable, then set this variable to point to the location of
-the ctags utility in your system. Note that this variable should point to the
-fully qualified exuberant ctags location and NOT to the directory in which
-exuberant ctags is installed. If the exuberant ctags tool is not found in
-either PATH or in the specified location, then the taglist plugin will not be
-loaded. Examples:
->
- let Tlist_Ctags_Cmd = 'd:\tools\ctags.exe'
- let Tlist_Ctags_Cmd = '/usr/local/bin/ctags'
-<
- *'Tlist_Display_Prototype'*
-Tlist_Display_Prototype~
-By default, only the tag name will be displayed in the taglist window. If you
-like to see tag prototypes instead of names, set the 'Tlist_Display_Prototype'
-variable to 1. By default, this variable is set to zero and only tag names
-will be displayed.
->
- let Tlist_Display_Prototype = 1
-<
- *'Tlist_Display_Tag_Scope'*
-Tlist_Display_Tag_Scope~
-By default, the scope of a tag (like a C++ class) will be displayed in
-square brackets next to the tag name. If you don't want the tag scopes
-to be displayed, then set the 'Tlist_Display_Tag_Scope' to zero. By default,
-this variable is set to 1 and the tag scopes will be displayed.
->
- let Tlist_Display_Tag_Scope = 0
-<
- *'Tlist_Enable_Fold_Column'*
-Tlist_Enable_Fold_Column~
-By default, the Vim fold column is enabled and displayed in the taglist
-window. If you wish to disable this (for example, when you are working with a
-narrow Vim window or terminal), you can set the 'Tlist_Enable_Fold_Column'
-variable to zero.
->
- let Tlist_Enable_Fold_Column = 1
-<
- *'Tlist_Exit_OnlyWindow'*
-Tlist_Exit_OnlyWindow~
-If you want to exit Vim if only the taglist window is currently opened, then
-set the 'Tlist_Exit_OnlyWindow' variable to 1. By default, this variable is
-set to zero and the Vim instance will not be closed if only the taglist window
-is present.
->
- let Tlist_Exit_OnlyWindow = 1
-<
- *'Tlist_File_Fold_Auto_Close'*
-Tlist_File_Fold_Auto_Close~
-By default, the tags tree displayed in the taglist window for all the files is
-opened. You can close/fold the tags tree for the files manually. To
-automatically close the tags tree for inactive files, you can set the
-'Tlist_File_Fold_Auto_Close' variable to 1. When this variable is set to 1,
-the tags tree for the current buffer is automatically opened and for all the
-other buffers is closed.
->
- let Tlist_File_Fold_Auto_Close = 1
-<
- *'Tlist_GainFocus_On_ToggleOpen'*
-Tlist_GainFocus_On_ToggleOpen~
-When the taglist window is opened using the ':TlistToggle' command, this
-option controls whether the cursor is moved to the taglist window or remains
-in the current window. By default, this option is set to 0 and the cursor
-remains in the current window. When this variable is set to 1, the cursor
-moves to the taglist window after opening the taglist window.
->
- let Tlist_GainFocus_On_ToggleOpen = 1
-<
- *'Tlist_Highlight_Tag_On_BufEnter'*
-Tlist_Highlight_Tag_On_BufEnter~
-When you enter a Vim buffer/window, the current tag in that buffer/window is
-automatically highlighted in the taglist window. If the current tag name is
-not visible in the taglist window, then the taglist window contents are
-scrolled to make that tag name visible. If you like to disable the automatic
-highlighting of the current tag when entering a buffer, you can set the
-'Tlist_Highlight_Tag_On_BufEnter' variable to zero. The default setting for
-this variable is 1.
->
- let Tlist_Highlight_Tag_On_BufEnter = 0
-<
- *'Tlist_Inc_Winwidth'*
-Tlist_Inc_Winwidth~
-By default, when the width of the window is less than 100 and a new taglist
-window is opened vertically, then the window width is increased by the value
-set in the 'Tlist_WinWidth' variable to accommodate the new window. The value
-of this variable is used only if you are using a vertically split taglist
-window.
-
-If your terminal doesn't support changing the window width from Vim (older
-version of xterm running in a Unix system) or if you see any weird problems in
-the screen due to the change in the window width or if you prefer not to
-adjust the window width then set the 'Tlist_Inc_Winwidth' variable to zero.
-CAUTION: If you are using the MS-Windows version of Vim in a MS-DOS command
-window then you must set this variable to zero, otherwise the system may hang
-due to a Vim limitation (explained in :help win32-problems)
->
- let Tlist_Inc_Winwidth = 0
-<
- *'Tlist_Max_Submenu_Items'*
-Tlist_Max_Submenu_Items~
-If a file contains too many tags of a particular type (function, variable,
-class, etc.), greater than that specified by the 'Tlist_Max_Submenu_Items'
-variable, then the menu for that tag type will be split into multiple
-sub-menus. The default setting for the 'Tlist_Max_Submenu_Items' variable is
-25. This can be changed by setting the 'Tlist_Max_Submenu_Items' variable:
->
- let Tlist_Max_Submenu_Items = 20
-<
-The name of the submenu is formed using the names of the first and the last
-tag entries in that submenu.
-
- *'Tlist_Max_Tag_Length'*
-Tlist_Max_Tag_Length~
-Only the first 'Tlist_Max_Tag_Length' characters from the tag names will be
-used to form the tag type submenu name. The default value for this variable is
-10. Change the 'Tlist_Max_Tag_Length' setting if you want to include more or
-less characters:
->
- let Tlist_Max_Tag_Length = 10
-<
- *'Tlist_Process_File_Always'*
-Tlist_Process_File_Always~
-By default, the taglist plugin will generate and process the tags defined in
-the newly opened files only when the taglist window is opened or when the
-taglist menu is enabled. When the taglist window is closed, the taglist plugin
-will stop processing the tags for newly opened files.
-
-You can set the 'Tlist_Process_File_Always' variable to 1 to generate the list
-of tags for new files even when the taglist window is closed and the taglist
-menu is disabled.
->
- let Tlist_Process_File_Always = 1
-<
-To use the ":TlistShowTag" and the ":TlistShowPrototype" commands without the
-taglist window and the taglist menu, you should set this variable to 1.
-
- *'Tlist_Show_Menu'*
-Tlist_Show_Menu~
-When using GUI Vim, you can display the tags defined in the current file in a
-menu named "Tags". By default, this feature is turned off. To turn on this
-feature, set the 'Tlist_Show_Menu' variable to 1:
->
- let Tlist_Show_Menu = 1
-<
- *'Tlist_Show_One_File'*
-Tlist_Show_One_File~
-By default, the taglist plugin will display the tags defined in all the loaded
-buffers in the taglist window. If you prefer to display the tags defined only
-in the current buffer, then you can set the 'Tlist_Show_One_File' to 1. When
-this variable is set to 1, as you switch between buffers, the taglist window
-will be refreshed to display the tags for the current buffer and the tags for
-the previous buffer will be removed.
->
- let Tlist_Show_One_File = 1
-<
- *'Tlist_Sort_Type'*
-Tlist_Sort_Type~
-The 'Tlist_Sort_Type' variable specifies the sort order for the tags in the
-taglist window. The tags can be sorted either alphabetically by their name or
-by the order of their appearance in the file (chronological order). By
-default, the tag names will be listed by the order in which they are defined
-in the file. You can change the sort type (from name to order or from order to
-name) by pressing the "s" key in the taglist window. You can also change the
-default sort order by setting 'Tlist_Sort_Type' to "name" or "order":
->
- let Tlist_Sort_Type = "name"
-<
- *'Tlist_Use_Horiz_Window'*
-Tlist_Use_Horiz_Window~
-Be default, the tag names are displayed in a vertically split window. If you
-prefer a horizontally split window, then set the 'Tlist_Use_Horiz_Window'
-variable to 1. If you are running MS-Windows version of Vim in a MS-DOS
-command window, then you should use a horizontally split window instead of a
-vertically split window. Also, if you are using an older version of xterm in a
-Unix system that doesn't support changing the xterm window width, you should
-use a horizontally split window.
->
- let Tlist_Use_Horiz_Window = 1
-<
- *'Tlist_Use_Right_Window'*
-Tlist_Use_Right_Window~
-By default, the vertically split taglist window will appear on the left hand
-side. If you prefer to open the window on the right hand side, you can set the
-'Tlist_Use_Right_Window' variable to 1:
->
- let Tlist_Use_Right_Window = 1
-<
- *'Tlist_Use_SingleClick'*
-Tlist_Use_SingleClick~
-By default, when you double click on the tag name using the left mouse
-button, the cursor will be positioned at the definition of the tag. You
-can set the 'Tlist_Use_SingleClick' variable to 1 to jump to a tag when
-you single click on the tag name using the mouse. By default this variable
-is set to zero.
->
- let Tlist_Use_SingleClick = 1
-<
-Due to a bug in Vim, if you set 'Tlist_Use_SingleClick' to 1 and try to resize
-the taglist window using the mouse, then Vim will crash. This problem is fixed
-in Vim 6.3 and above. In the meantime, instead of resizing the taglist window
-using the mouse, you can use normal Vim window resizing commands to resize the
-taglist window.
-
- *'Tlist_WinHeight'*
-Tlist_WinHeight~
-The default height of the horizontally split taglist window is 10. This can be
-changed by modifying the 'Tlist_WinHeight' variable:
->
- let Tlist_WinHeight = 20
-<
-The |'winfixheight'| option is set for the taglist window, to maintain the
-height of the taglist window, when new Vim windows are opened and existing
-windows are closed.
-
- *'Tlist_WinWidth'*
-Tlist_WinWidth~
-The default width of the vertically split taglist window is 30. This can be
-changed by modifying the 'Tlist_WinWidth' variable:
->
- let Tlist_WinWidth = 20
-<
-Note that the value of the |'winwidth'| option setting determines the minimum
-width of the current window. If you set the 'Tlist_WinWidth' variable to a
-value less than that of the |'winwidth'| option setting, then Vim will use the
-value of the |'winwidth'| option.
-
-When new Vim windows are opened and existing windows are closed, the taglist
-plugin will try to maintain the width of the taglist window to the size
-specified by the 'Tlist_WinWidth' variable.
-
-==============================================================================
- *taglist-commands*
-7. Commands~
-
-The taglist plugin provides the following ex-mode commands:
-
-|:TlistAddFiles| Add multiple files to the taglist.
-|:TlistAddFilesRecursive|
- Add files recursively to the taglist.
-|:TlistClose| Close the taglist window.
-|:TlistDebug| Start logging of taglist debug messages.
-|:TlistLock| Stop adding new files to the taglist.
-|:TlistMessages| Display the logged taglist plugin debug messages.
-|:TlistOpen| Open and jump to the taglist window.
-|:TlistSessionSave| Save the information about files and tags in the
- taglist to a session file.
-|:TlistSessionLoad| Load the information about files and tags stored
- in a session file to taglist.
-|:TlistShowPrototype| Display the prototype of the tag at or before the
- specified line number.
-|:TlistShowTag| Display the name of the tag defined at or before the
- specified line number.
-|:TlistHighlightTag| Highlight the current tag in the taglist window.
-|:TlistToggle| Open or close (toggle) the taglist window.
-|:TlistUndebug| Stop logging of taglist debug messages.
-|:TlistUnlock| Start adding new files to the taglist.
-|:TlistUpdate| Update the tags for the current buffer.
-
- *:TlistAddFiles*
-:TlistAddFiles {file(s)} [file(s) ...]
- Add one or more specified files to the taglist. You can
- specify multiple filenames using wildcards. To specify a
- file name with space character, you should escape the space
- character with a backslash.
- Examples:
->
- :TlistAddFiles *.c *.cpp
- :TlistAddFiles file1.html file2.html
-<
- If you specify a large number of files, then it will take some
- time for the taglist plugin to process all of them. The
- specified files will not be edited in a Vim window and will
- not be added to the Vim buffer list.
-
- *:TlistAddFilesRecursive*
-:TlistAddFilesRecursive {directory} [ {pattern} ]
- Add files matching {pattern} recursively from the specified
- {directory} to the taglist. If {pattern} is not specified,
- then '*' is assumed. To specify the current directory, use "."
- for {directory}. To specify a directory name with space
- character, you should escape the space character with a
- backslash.
- Examples:
->
- :TlistAddFilesRecursive myproject *.java
- :TlistAddFilesRecursive smallproject
-<
- If large number of files are present in the specified
- directory tree, then it will take some time for the taglist
- plugin to process all of them.
-
- *:TlistClose*
-:TlistClose Close the taglist window. This command can be used from any
- one of the Vim windows.
-
- *:TlistDebug*
-:TlistDebug [filename]
- Start logging of debug messages from the taglist plugin.
- If {filename} is specified, then the debug messages are stored
- in the specified file. Otherwise, the debug messages are
- stored in a script local variable. If the file {filename} is
- already present, then it is overwritten.
-
- *:TlistLock*
-:TlistLock
- Lock the taglist and don't process new files. After this
- command is executed, newly edited files will not be added to
- the taglist.
-
- *:TlistMessages*
-:TlistMessages
- Display the logged debug messages from the taglist plugin
- in a window. This command works only when logging to a
- script-local variable.
-
- *:TlistOpen*
-:TlistOpen Open and jump to the taglist window. Creates the taglist
- window, if the window is not opened currently. After executing
- this command, the cursor is moved to the taglist window. When
- the taglist window is opened for the first time, all the files
- in the buffer list are processed and the tags defined in them
- are displayed in the taglist window.
-
- *:TlistSessionSave*
-:TlistSessionSave {filename}
- Saves the information about files and tags in the taglist to
- the specified file. This command can be used to save and
- restore the taglist contents across Vim sessions.
-
- *:TlistSessionLoad*
-:TlistSessionLoad {filename}
- Load the information about files and tags stored in the
- specified session file to the taglist.
-
- *:TlistShowPrototype*
-:TlistShowPrototype [filename] [linenumber]
- Display the prototype of the tag at or before the specified
- line number. If the file name and the line number are not
- specified, then the current file name and line number are
- used. A tag spans multiple lines starting from the line where
- it is defined to the line before the next tag. This command
- displays the prototype for the tag for any line number in this
- range.
-
- *:TlistShowTag*
-:TlistShowTag [filename] [linenumber]
- Display the name of the tag defined at or before the specified
- line number. If the file name and the line number are not
- specified, then the current file name and line number are
- used. A tag spans multiple lines starting from the line where
- it is defined to the line before the next tag. This command
- displays the tag name for any line number in this range.
-
- *:TlistHighlightTag*
-:TlistHighlightTag
- Highlight the current tag in the taglist window. By default,
- the taglist plugin periodically updates the taglist window to
- highlight the current tag. This command can be used to force
- the taglist plugin to highlight the current tag.
-
- *:TlistToggle*
-:TlistToggle Open or close (toggle) the taglist window. Opens the taglist
- window, if the window is not opened currently. Closes the
- taglist window, if the taglist window is already opened. When
- the taglist window is opened for the first time, all the files
- in the buffer list are processed and the tags are displayed in
- the taglist window. After executing this command, the cursor
- is not moved from the current window to the taglist window.
-
- *:TlistUndebug*
-:TlistUndebug
- Stop logging of debug messages from the taglist plugin.
-
- *:TlistUnlock*
-:TlistUnlock
- Unlock the taglist and start processing newly edited files.
-
- *:TlistUpdate*
-:TlistUpdate Update the tags information for the current buffer. This
- command can be used to re-process the current file/buffer and
- get the tags information. As the taglist plugin uses the file
- saved in the disk (instead of the file displayed in a Vim
- buffer), you should save a modified buffer before you update
- the taglist. Otherwise the listed tags will not include the
- new tags created in the buffer. You can use this command even
- when the taglist window is not opened.
-
-==============================================================================
- *taglist-functions*
-8. Global functions~
-
-The taglist plugin provides several global functions that can be used from
-other Vim plugins to interact with the taglist plugin. These functions are
-described below.
-
-|Tlist_Update_File_Tags()| Update the tags for the specified file
-|Tlist_Get_Tag_Prototype_By_Line()| Return the prototype of the tag at or
- before the specified line number in the
- specified file.
-|Tlist_Get_Tagname_By_Line()| Return the name of the tag at or
- before the specified line number in
- the specified file.
-|Tlist_Set_App()| Set the name of the application
- controlling the taglist window.
-
- *Tlist_Update_File_Tags()*
-Tlist_Update_File_Tags({filename}, {filetype})
- Update the tags for the file {filename}. The second argument
- specifies the Vim filetype for the file. If the taglist plugin
- has not processed the file previously, then the exuberant
- ctags tool is invoked to generate the tags for the file.
-
- *Tlist_Get_Tag_Prototype_By_Line()*
-Tlist_Get_Tag_Prototype_By_Line([{filename}, {linenumber}])
- Return the prototype of the tag at or before the specified
- line number in the specified file. If the filename and line
- number are not specified, then the current buffer name and the
- current line number are used.
-
- *Tlist_Get_Tagname_By_Line()*
-Tlist_Get_Tagname_By_Line([{filename}, {linenumber}])
- Return the name of the tag at or before the specified line
- number in the specified file. If the filename and line number
- are not specified, then the current buffer name and the
- current line number are used.
-
- *Tlist_Set_App()*
-Tlist_Set_App({appname})
- Set the name of the plugin that controls the taglist plugin
- window and buffer. This can be used to integrate the taglist
- plugin with other Vim plugins.
-
- For example, the winmanager plugin and the Cream package use
- this function and specify the appname as "winmanager" and
- "cream" respectively.
-
- By default, the taglist plugin is a stand-alone plugin and
- controls the taglist window and buffer. If the taglist window
- is controlled by an external plugin, then the appname should
- be set appropriately.
-
-==============================================================================
- *taglist-extend*
-9. Extending~
-
-The taglist plugin supports all the languages supported by the exuberant ctags
-tool, which includes the following languages: Assembly, ASP, Awk, Beta, C,
-C++, C#, Cobol, Eiffel, Erlang, Fortran, HTML, Java, Javascript, Lisp, Lua,
-Make, Pascal, Perl, PHP, Python, Rexx, Ruby, Scheme, Shell, Slang, SML, Sql,
-TCL, Verilog, Vim and Yacc.
-
-You can extend the taglist plugin to add support for new languages and also
-modify the support for the above listed languages.
-
-You should NOT make modifications to the taglist plugin script file to add
-support for new languages. You will lose these changes when you upgrade to the
-next version of the taglist plugin. Instead you should follow the below
-described instructions to extend the taglist plugin.
-
-You can extend the taglist plugin by setting variables in the .vimrc or _vimrc
-file. The name of these variables depends on the language name and is
-described below.
-
-Modifying support for an existing language~
-To modify the support for an already supported language, you have to set the
-tlist_xxx_settings variable in the ~/.vimrc or $HOME/_vimrc file. Replace xxx
-with the Vim filetype name for the language file. For example, to modify the
-support for the perl language files, you have to set the tlist_perl_settings
-variable. To modify the support for java files, you have to set the
-tlist_java_settings variable.
-
-To determine the filetype name used by Vim for a file, use the following
-command in the buffer containing the file:
-
- :set filetype
-
-The above command will display the Vim filetype for the current buffer.
-
-The format of the value set in the tlist_xxx_settings variable is
-
- <language_name>;flag1:name1;flag2:name2;flag3:name3
-
-The different fields in the value are separated by the ';' character.
-
-The first field 'language_name' is the name used by exuberant ctags to refer
-to this language file. This name can be different from the file type name used
-by Vim. For example, for C++, the language name used by ctags is 'c++' but the
-filetype name used by Vim is 'cpp'. To get the list of language names
-supported by exuberant ctags, use the following command:
-
- $ ctags --list-maps=all
-
-The remaining fields follow the format "flag:name". The sub-field 'flag' is
-the language specific flag used by exuberant ctags to generate the
-corresponding tags. For example, for the C language, to list only the
-functions, the 'f' flag is used. To get the list of flags supported by
-exuberant ctags for the various languages use the following command:
-
- $ ctags --list-kinds=all
-
-The sub-field 'name' specifies the title text to use for displaying the tags
-of a particular type. For example, 'name' can be set to 'functions'. This
-field can be set to any text string name.
-
-For example, to list only the classes and functions defined in a C++ language
-file, add the following line to your .vimrc file:
-
- let tlist_cpp_settings = 'c++;c:class;f:function'
-
-In the above setting, 'cpp' is the Vim filetype name and 'c++' is the name
-used by the exuberant ctags tool. 'c' and 'f' are the flags passed to
-exuberant ctags to list C++ classes and functions and 'class' is the title
-used for the class tags and 'function' is the title used for the function tags
-in the taglist window.
-
-For example, to display only functions defined in a C file and to use "My
-Functions" as the title for the function tags, use
-
- let tlist_c_settings = 'c;f:My Functions'
-
-When you set the tlist_xxx_settings variable, you will override the default
-setting used by the taglist plugin for the 'xxx' language. You cannot add to
-the default options used by the taglist plugin for a particular file type. To
-add to the options used by the taglist plugin for a language, copy the option
-values from the taglist plugin file to your .vimrc file and modify it.
-
-Adding support for a new language~
-If you want to add support for a new language to the taglist plugin, you need
-to first extend the exuberant ctags tool. For more information about extending
-exuberant ctags, visit the following page:
-
- http://ctags.sourceforge.net/EXTENDING.html
-
-To add support for a new language, set the tlist_xxx_settings variable in the
-~/.vimrc file appropriately as described above. Replace 'xxx' in the variable
-name with the Vim filetype name for the new language.
-
-For example, to extend the taglist plugin to support the latex language, you
-can use the following line (assuming, you have already extended exuberant
-ctags to support the latex language):
-
- let tlist_tex_settings='latex;b:bibitem;c:command;l:label'
-
-With the above line, when you edit files of filetype "tex" in Vim, the taglist
-plugin will invoke the exuberant ctags tool passing the "latex" filetype and
-the flags b, c and l to generate the tags. The text heading 'bibitem',
-'command' and 'label' will be used in the taglist window for the tags which
-are generated for the flags b, c and l respectively.
-
-==============================================================================
- *taglist-faq*
-10. Frequently Asked Questions~
-
-Q. The taglist plugin doesn't work. The taglist window is empty and the tags
- defined in a file are not displayed.
-A. Are you using Vim version 6.0 and above? The taglist plugin relies on the
- features supported by Vim version 6.0 and above. You can use the following
- command to get the Vim version:
->
- $ vim --version
-<
- Are you using exuberant ctags version 5.0 and above? The taglist plugin
- relies on the features supported by exuberant ctags and will not work with
- GNU ctags or the Unix ctags utility. You can use the following command to
- determine whether the ctags installed in your system is exuberant ctags:
->
- $ ctags --version
-<
- Is exuberant ctags present in one of the directories in your PATH? If not,
- you need to set the Tlist_Ctags_Cmd variable to point to the location of
- exuberant ctags. Use the following Vim command to verify that this is setup
- correctly:
->
- :echo system(Tlist_Ctags_Cmd . ' --version')
-<
- The above command should display the version information for exuberant
- ctags.
-
- Did you turn on the Vim filetype detection? The taglist plugin relies on
- the filetype detected by Vim and passes the filetype to the exuberant ctags
- utility to parse the tags. Check the output of the following Vim command:
->
- :filetype
-<
- The output of the above command should contain "filetype detection:ON".
- To turn on the filetype detection, add the following line to the .vimrc or
- _vimrc file:
->
- filetype on
-<
- Is your version of Vim compiled with the support for the system() function?
- The following Vim command should display 1:
->
- :echo exists('*system')
-<
- In some Linux distributions (particularly Suse Linux), the default Vim
- installation is built without the support for the system() function. The
- taglist plugin uses the system() function to invoke the exuberant ctags
- utility. You need to rebuild Vim after enabling the support for the
- system() function. If you use the default build options, the system()
- function will be supported.
-
- Do you have the |'shellslash'| option set? You can try disabling the
- |'shellslash'| option. When the taglist plugin invokes the exuberant ctags
- utility with the path to the file, if the incorrect slashes are used, then
- you will see errors.
-
- Check the shell related Vim options values using the following command:
->
- :set shell? shellcmdflag? shellpipe?
- :set shellquote? shellredir? shellxquote?
-<
- If these options are set in your .vimrc or _vimrc file, try removing those
- lines.
-
- Are you using a Unix shell in a MS-Windows environment? For example,
- the Unix shell from the MKS-toolkit. Do you have the SHELL environment
- set to point to this shell? You can try resetting the SHELL environment
- variable.
-
- If you are using a Unix shell on MS-Windows, you should try to use
- exuberant ctags that is compiled for Unix-like environments so that
- exuberant ctags will understand path names with forward slash characters.
-
- Is your filetype supported by the exuberant ctags utility? The file types
- supported by the exuberant ctags utility are listed in the ctags help. If a
- file type is not supported, you have to extend exuberant ctags. You can use
- the following command to list the filetypes supported by exuberant ctags:
->
- ctags --list-languages
-<
- Run the following command from the shell prompt and check whether the tags
- defined in your file are listed in the output from exuberant ctags:
->
- ctags -f - --format=2 --excmd=pattern --fields=nks <filename>
-<
- If you see your tags in the output from the above command, then the
- exuberant ctags utility is properly parsing your file.
-
- Do you have the .ctags or _ctags or the ctags.cnf file in your home
- directory for specifying default options or for extending exuberant ctags?
- If you do have this file, check the options in this file and make sure
- these options are not interfering with the operation of the taglist plugin.
-
- If you are using MS-Windows, check the value of the TEMP and TMP
- environment variables. If these environment variables are set to a path
- with space characters in the name, then try using the DOS 8.3 short name
- for the path or set them to a path without the space characters in the
- name. For example, if the temporary directory name is "C:\Documents and
- Settings\xyz\Local Settings\Temp", then try setting the TEMP variable to
- the following:
->
- set TEMP=C:\DOCUMEN~1\xyz\LOCALS~1\Temp
-<
- If exuberant ctags is installed in a directory with space characters in the
- name, then try adding the directory to the PATH environment variable or try
- setting the 'Tlist_Ctags_Cmd' variable to the shortest path name to ctags
- or try copying the exuberant ctags to a path without space characters in
- the name. For example, if exuberant ctags is installed in the directory
- "C:\Program Files\Ctags", then try setting the 'Tlist_Ctags_Cmd' variable
- as below:
->
- let Tlist_Ctags_Cmd='C:\Progra~1\Ctags\ctags.exe'
-<
- If you are using a cygwin compiled version of exuberant ctags on MS-Windows,
- make sure that either you have the cygwin compiled sort utility installed
- and available in your PATH or compile exuberant ctags with internal sort
- support. Otherwise, when exuberant ctags sorts the tags output by invoking
- the sort utility, it may end up invoking the MS-Windows version of
- sort.exe, thereby resulting in failure.
-
-Q. When I try to open the taglist window, I am seeing the following error
- message. How do I fix this problem?
-
- Taglist: Failed to generate tags for /my/path/to/file
- ctags: illegal option -- -^@usage: ctags [-BFadtuwvx] [-f tagsfile] file ...
-
-A. The taglist plugin will work only with the exuberant ctags tool. You
- cannot use the GNU ctags or the Unix ctags program with the taglist plugin.
- You will see an error message similar to the one shown above, if you try
- use a non-exuberant ctags program with Vim. To fix this problem, either add
- the exuberant ctags tool location to the PATH environment variable or set
- the 'Tlist_Ctags_Cmd' variable.
-
-Q. A file has more than one tag with the same name. When I select a tag name
- from the taglist window, the cursor is positioned at the incorrect tag
- location.
-A. The taglist plugin uses the search pattern generated by the exuberant ctags
- utility to position the cursor at the location of a tag definition. If a
- file has more than one tag with the same name and same prototype, then the
- search pattern will be the same. In this case, when searching for the tag
- pattern, the cursor may be positioned at the incorrect location.
-
-Q. I have made some modifications to my file and introduced new
- functions/classes/variables. I have not yet saved my file. The taglist
- plugin is not displaying the new tags when I update the taglist window.
-A. The exuberant ctags utility will process only files that are present in the
- disk. To list the tags defined in a file, you have to save the file and
- then update the taglist window.
-
-Q. I have created a ctags file using the exuberant ctags utility for my source
- tree. How do I configure the taglist plugin to use this tags file?
-A. The taglist plugin doesn't use a tags file stored in disk. For every opened
- file, the taglist plugin invokes the exuberant ctags utility to get the
- list of tags dynamically. The Vim system() function is used to invoke
- exuberant ctags and get the ctags output. This function internally uses a
- temporary file to store the output. This file is deleted after the output
- from the command is read. So you will never see the file that contains the
- output of exuberant ctags.
-
-Q. When I set the |'updatetime'| option to a low value (less than 1000) and if
- I keep pressing a key with the taglist window open, the current buffer
- contents are changed. Why is this?
-A. The taglist plugin uses the |CursorHold| autocmd to highlight the current
- tag. The CursorHold autocmd triggers for every |'updatetime'| milliseconds.
- If the |'updatetime'| option is set to a low value, then the CursorHold
- autocmd will be triggered frequently. As the taglist plugin changes
- the focus to the taglist window to highlight the current tag, this could
- interfere with the key movement resulting in changing the contents of
- the current buffer. The workaround for this problem is to not set the
- |'updatetime'| option to a low value.
-
-==============================================================================
- *taglist-license*
-11. License~
-Permission is hereby granted to use and distribute the taglist plugin, with or
-without modifications, provided that this copyright notice is copied with it.
-Like anything else that's free, taglist.vim is provided *as is* and comes with
-no warranty of any kind, either expressed or implied. In no event will the
-copyright holder be liable for any damamges resulting from the use of this
-software.
-
-==============================================================================
- *taglist-todo*
-12. Todo~
-
-1. Group tags according to the scope and display them. For example,
- group all the tags belonging to a C++/Java class
-2. Support for displaying tags in a modified (not-yet-saved) file.
-3. Automatically open the taglist window only for selected filetypes.
- For other filetypes, close the taglist window.
-4. When using the shell from the MKS toolkit, the taglist plugin
- doesn't work.
-5. The taglist plugin doesn't work with files edited remotely using the
- netrw plugin. The exuberant ctags utility cannot process files over
- scp/rcp/ftp, etc.
-
-==============================================================================
-
-vim:tw=78:ts=8:noet:ft=help:
diff --git a/modules/vim/vim.dot.link/doc/tags b/modules/vim/vim.dot.link/doc/tags
deleted file mode 100644
index 0726233..0000000
--- a/modules/vim/vim.dot.link/doc/tags
+++ /dev/null
@@ -1,304 +0,0 @@
-'NERDChristmasTree' NERD_tree.txt /*'NERDChristmasTree'*
-'NERDTreeAutoCenter' NERD_tree.txt /*'NERDTreeAutoCenter'*
-'NERDTreeAutoCenterThreshold' NERD_tree.txt /*'NERDTreeAutoCenterThreshold'*
-'NERDTreeBookmarksFile' NERD_tree.txt /*'NERDTreeBookmarksFile'*
-'NERDTreeCaseSensitiveSort' NERD_tree.txt /*'NERDTreeCaseSensitiveSort'*
-'NERDTreeChDirMode' NERD_tree.txt /*'NERDTreeChDirMode'*
-'NERDTreeHighlightCursorline' NERD_tree.txt /*'NERDTreeHighlightCursorline'*
-'NERDTreeHijackNetrw' NERD_tree.txt /*'NERDTreeHijackNetrw'*
-'NERDTreeIgnore' NERD_tree.txt /*'NERDTreeIgnore'*
-'NERDTreeMouseMode' NERD_tree.txt /*'NERDTreeMouseMode'*
-'NERDTreeQuitOnOpen' NERD_tree.txt /*'NERDTreeQuitOnOpen'*
-'NERDTreeShowBookmarks' NERD_tree.txt /*'NERDTreeShowBookmarks'*
-'NERDTreeShowFiles' NERD_tree.txt /*'NERDTreeShowFiles'*
-'NERDTreeShowHidden' NERD_tree.txt /*'NERDTreeShowHidden'*
-'NERDTreeShowLineNumbers' NERD_tree.txt /*'NERDTreeShowLineNumbers'*
-'NERDTreeSortOrder' NERD_tree.txt /*'NERDTreeSortOrder'*
-'NERDTreeStatusline' NERD_tree.txt /*'NERDTreeStatusline'*
-'NERDTreeWinPos' NERD_tree.txt /*'NERDTreeWinPos'*
-'NERDTreeWinSize' NERD_tree.txt /*'NERDTreeWinSize'*
-'Tlist_Auto_Highlight_Tag' taglist.txt /*'Tlist_Auto_Highlight_Tag'*
-'Tlist_Auto_Open' taglist.txt /*'Tlist_Auto_Open'*
-'Tlist_Auto_Update' taglist.txt /*'Tlist_Auto_Update'*
-'Tlist_Close_On_Select' taglist.txt /*'Tlist_Close_On_Select'*
-'Tlist_Compact_Format' taglist.txt /*'Tlist_Compact_Format'*
-'Tlist_Ctags_Cmd' taglist.txt /*'Tlist_Ctags_Cmd'*
-'Tlist_Display_Prototype' taglist.txt /*'Tlist_Display_Prototype'*
-'Tlist_Display_Tag_Scope' taglist.txt /*'Tlist_Display_Tag_Scope'*
-'Tlist_Enable_Fold_Column' taglist.txt /*'Tlist_Enable_Fold_Column'*
-'Tlist_Exit_OnlyWindow' taglist.txt /*'Tlist_Exit_OnlyWindow'*
-'Tlist_File_Fold_Auto_Close' taglist.txt /*'Tlist_File_Fold_Auto_Close'*
-'Tlist_GainFocus_On_ToggleOpen' taglist.txt /*'Tlist_GainFocus_On_ToggleOpen'*
-'Tlist_Highlight_Tag_On_BufEnter' taglist.txt /*'Tlist_Highlight_Tag_On_BufEnter'*
-'Tlist_Inc_Winwidth' taglist.txt /*'Tlist_Inc_Winwidth'*
-'Tlist_Max_Submenu_Items' taglist.txt /*'Tlist_Max_Submenu_Items'*
-'Tlist_Max_Tag_Length' taglist.txt /*'Tlist_Max_Tag_Length'*
-'Tlist_Process_File_Always' taglist.txt /*'Tlist_Process_File_Always'*
-'Tlist_Show_Menu' taglist.txt /*'Tlist_Show_Menu'*
-'Tlist_Show_One_File' taglist.txt /*'Tlist_Show_One_File'*
-'Tlist_Sort_Type' taglist.txt /*'Tlist_Sort_Type'*
-'Tlist_Use_Horiz_Window' taglist.txt /*'Tlist_Use_Horiz_Window'*
-'Tlist_Use_Right_Window' taglist.txt /*'Tlist_Use_Right_Window'*
-'Tlist_Use_SingleClick' taglist.txt /*'Tlist_Use_SingleClick'*
-'Tlist_WinHeight' taglist.txt /*'Tlist_WinHeight'*
-'Tlist_WinWidth' taglist.txt /*'Tlist_WinWidth'*
-'loaded_nerd_tree' NERD_tree.txt /*'loaded_nerd_tree'*
-'snippets' snipMate.txt /*'snippets'*
-.snippet snipMate.txt /*.snippet*
-.snippets snipMate.txt /*.snippets*
-:CVSEdit vcscommand.txt /*:CVSEdit*
-:CVSEditors vcscommand.txt /*:CVSEditors*
-:CVSUnedit vcscommand.txt /*:CVSUnedit*
-:CVSWatch vcscommand.txt /*:CVSWatch*
-:CVSWatchAdd vcscommand.txt /*:CVSWatchAdd*
-:CVSWatchOff vcscommand.txt /*:CVSWatchOff*
-:CVSWatchOn vcscommand.txt /*:CVSWatchOn*
-:CVSWatchRemove vcscommand.txt /*:CVSWatchRemove*
-:CVSWatchers vcscommand.txt /*:CVSWatchers*
-:NERDTree NERD_tree.txt /*:NERDTree*
-:NERDTreeClose NERD_tree.txt /*:NERDTreeClose*
-:NERDTreeFind NERD_tree.txt /*:NERDTreeFind*
-:NERDTreeFromBookmark NERD_tree.txt /*:NERDTreeFromBookmark*
-:NERDTreeMirror NERD_tree.txt /*:NERDTreeMirror*
-:NERDTreeToggle NERD_tree.txt /*:NERDTreeToggle*
-:TlistAddFiles taglist.txt /*:TlistAddFiles*
-:TlistAddFilesRecursive taglist.txt /*:TlistAddFilesRecursive*
-:TlistClose taglist.txt /*:TlistClose*
-:TlistDebug taglist.txt /*:TlistDebug*
-:TlistHighlightTag taglist.txt /*:TlistHighlightTag*
-:TlistLock taglist.txt /*:TlistLock*
-:TlistMessages taglist.txt /*:TlistMessages*
-:TlistOpen taglist.txt /*:TlistOpen*
-:TlistSessionLoad taglist.txt /*:TlistSessionLoad*
-:TlistSessionSave taglist.txt /*:TlistSessionSave*
-:TlistShowPrototype taglist.txt /*:TlistShowPrototype*
-:TlistShowTag taglist.txt /*:TlistShowTag*
-:TlistToggle taglist.txt /*:TlistToggle*
-:TlistUndebug taglist.txt /*:TlistUndebug*
-:TlistUnlock taglist.txt /*:TlistUnlock*
-:TlistUpdate taglist.txt /*:TlistUpdate*
-:VCSAdd vcscommand.txt /*:VCSAdd*
-:VCSAnnotate vcscommand.txt /*:VCSAnnotate*
-:VCSBlame vcscommand.txt /*:VCSBlame*
-:VCSCommit vcscommand.txt /*:VCSCommit*
-:VCSDelete vcscommand.txt /*:VCSDelete*
-:VCSDiff vcscommand.txt /*:VCSDiff*
-:VCSGotoOriginal vcscommand.txt /*:VCSGotoOriginal*
-:VCSInfo vcscommand.txt /*:VCSInfo*
-:VCSLock vcscommand.txt /*:VCSLock*
-:VCSLog vcscommand.txt /*:VCSLog*
-:VCSRemove vcscommand.txt /*:VCSRemove*
-:VCSRevert vcscommand.txt /*:VCSRevert*
-:VCSReview vcscommand.txt /*:VCSReview*
-:VCSStatus vcscommand.txt /*:VCSStatus*
-:VCSUnlock vcscommand.txt /*:VCSUnlock*
-:VCSUpdate vcscommand.txt /*:VCSUpdate*
-:VCSVimDiff vcscommand.txt /*:VCSVimDiff*
-ExtractSnips() snipMate.txt /*ExtractSnips()*
-ExtractSnipsFile() snipMate.txt /*ExtractSnipsFile()*
-Filename() snipMate.txt /*Filename()*
-NERDTree NERD_tree.txt /*NERDTree*
-NERDTree-? NERD_tree.txt /*NERDTree-?*
-NERDTree-A NERD_tree.txt /*NERDTree-A*
-NERDTree-B NERD_tree.txt /*NERDTree-B*
-NERDTree-C NERD_tree.txt /*NERDTree-C*
-NERDTree-C-J NERD_tree.txt /*NERDTree-C-J*
-NERDTree-C-K NERD_tree.txt /*NERDTree-C-K*
-NERDTree-D NERD_tree.txt /*NERDTree-D*
-NERDTree-F NERD_tree.txt /*NERDTree-F*
-NERDTree-I NERD_tree.txt /*NERDTree-I*
-NERDTree-J NERD_tree.txt /*NERDTree-J*
-NERDTree-K NERD_tree.txt /*NERDTree-K*
-NERDTree-O NERD_tree.txt /*NERDTree-O*
-NERDTree-P NERD_tree.txt /*NERDTree-P*
-NERDTree-R NERD_tree.txt /*NERDTree-R*
-NERDTree-T NERD_tree.txt /*NERDTree-T*
-NERDTree-U NERD_tree.txt /*NERDTree-U*
-NERDTree-X NERD_tree.txt /*NERDTree-X*
-NERDTree-cd NERD_tree.txt /*NERDTree-cd*
-NERDTree-contents NERD_tree.txt /*NERDTree-contents*
-NERDTree-e NERD_tree.txt /*NERDTree-e*
-NERDTree-f NERD_tree.txt /*NERDTree-f*
-NERDTree-gi NERD_tree.txt /*NERDTree-gi*
-NERDTree-go NERD_tree.txt /*NERDTree-go*
-NERDTree-gs NERD_tree.txt /*NERDTree-gs*
-NERDTree-i NERD_tree.txt /*NERDTree-i*
-NERDTree-m NERD_tree.txt /*NERDTree-m*
-NERDTree-o NERD_tree.txt /*NERDTree-o*
-NERDTree-p NERD_tree.txt /*NERDTree-p*
-NERDTree-q NERD_tree.txt /*NERDTree-q*
-NERDTree-r NERD_tree.txt /*NERDTree-r*
-NERDTree-s NERD_tree.txt /*NERDTree-s*
-NERDTree-t NERD_tree.txt /*NERDTree-t*
-NERDTree-u NERD_tree.txt /*NERDTree-u*
-NERDTree-x NERD_tree.txt /*NERDTree-x*
-NERDTreeAPI NERD_tree.txt /*NERDTreeAPI*
-NERDTreeAbout NERD_tree.txt /*NERDTreeAbout*
-NERDTreeAddKeyMap() NERD_tree.txt /*NERDTreeAddKeyMap()*
-NERDTreeAddMenuItem() NERD_tree.txt /*NERDTreeAddMenuItem()*
-NERDTreeAddMenuSeparator() NERD_tree.txt /*NERDTreeAddMenuSeparator()*
-NERDTreeAddSubmenu() NERD_tree.txt /*NERDTreeAddSubmenu()*
-NERDTreeBookmarkCommands NERD_tree.txt /*NERDTreeBookmarkCommands*
-NERDTreeBookmarkTable NERD_tree.txt /*NERDTreeBookmarkTable*
-NERDTreeBookmarks NERD_tree.txt /*NERDTreeBookmarks*
-NERDTreeChangelog NERD_tree.txt /*NERDTreeChangelog*
-NERDTreeCredits NERD_tree.txt /*NERDTreeCredits*
-NERDTreeFunctionality NERD_tree.txt /*NERDTreeFunctionality*
-NERDTreeGlobalCommands NERD_tree.txt /*NERDTreeGlobalCommands*
-NERDTreeInvalidBookmarks NERD_tree.txt /*NERDTreeInvalidBookmarks*
-NERDTreeKeymapAPI NERD_tree.txt /*NERDTreeKeymapAPI*
-NERDTreeLicense NERD_tree.txt /*NERDTreeLicense*
-NERDTreeMappings NERD_tree.txt /*NERDTreeMappings*
-NERDTreeMenu NERD_tree.txt /*NERDTreeMenu*
-NERDTreeMenuAPI NERD_tree.txt /*NERDTreeMenuAPI*
-NERDTreeOptionDetails NERD_tree.txt /*NERDTreeOptionDetails*
-NERDTreeOptionSummary NERD_tree.txt /*NERDTreeOptionSummary*
-NERDTreeOptions NERD_tree.txt /*NERDTreeOptions*
-NERDTreeRender() NERD_tree.txt /*NERDTreeRender()*
-NERD_tree.txt NERD_tree.txt /*NERD_tree.txt*
-ResetSnippets() snipMate.txt /*ResetSnippets()*
-Tlist_Get_Tag_Prototype_By_Line() taglist.txt /*Tlist_Get_Tag_Prototype_By_Line()*
-Tlist_Get_Tagname_By_Line() taglist.txt /*Tlist_Get_Tagname_By_Line()*
-Tlist_Set_App() taglist.txt /*Tlist_Set_App()*
-Tlist_Update_File_Tags() taglist.txt /*Tlist_Update_File_Tags()*
-VCSCommandCVSDiffOpt vcscommand.txt /*VCSCommandCVSDiffOpt*
-VCSCommandCVSExec vcscommand.txt /*VCSCommandCVSExec*
-VCSCommandCommitOnWrite vcscommand.txt /*VCSCommandCommitOnWrite*
-VCSCommandDeleteOnHide vcscommand.txt /*VCSCommandDeleteOnHide*
-VCSCommandDiffSplit vcscommand.txt /*VCSCommandDiffSplit*
-VCSCommandDisableAll vcscommand.txt /*VCSCommandDisableAll*
-VCSCommandDisableExtensionMappings vcscommand.txt /*VCSCommandDisableExtensionMappings*
-VCSCommandDisableMappings vcscommand.txt /*VCSCommandDisableMappings*
-VCSCommandDisableMenu vcscommand.txt /*VCSCommandDisableMenu*
-VCSCommandEdit vcscommand.txt /*VCSCommandEdit*
-VCSCommandEnableBufferSetup vcscommand.txt /*VCSCommandEnableBufferSetup*
-VCSCommandMapPrefix vcscommand.txt /*VCSCommandMapPrefix*
-VCSCommandMappings vcscommand.txt /*VCSCommandMappings*
-VCSCommandMenuPriority vcscommand.txt /*VCSCommandMenuPriority*
-VCSCommandMenuRoot vcscommand.txt /*VCSCommandMenuRoot*
-VCSCommandResultBufferNameExtension vcscommand.txt /*VCSCommandResultBufferNameExtension*
-VCSCommandResultBufferNameFunction vcscommand.txt /*VCSCommandResultBufferNameFunction*
-VCSCommandSVKExec vcscommand.txt /*VCSCommandSVKExec*
-VCSCommandSVNDiffExt vcscommand.txt /*VCSCommandSVNDiffExt*
-VCSCommandSVNDiffOpt vcscommand.txt /*VCSCommandSVNDiffOpt*
-VCSCommandSVNExec vcscommand.txt /*VCSCommandSVNExec*
-VCSCommandSplit vcscommand.txt /*VCSCommandSplit*
-VCSCommandVCSTypeOverride vcscommand.txt /*VCSCommandVCSTypeOverride*
-b:VCSCommandCommand vcscommand.txt /*b:VCSCommandCommand*
-b:VCSCommandOriginalBuffer vcscommand.txt /*b:VCSCommandOriginalBuffer*
-b:VCSCommandSourceFile vcscommand.txt /*b:VCSCommandSourceFile*
-b:VCSCommandVCSType vcscommand.txt /*b:VCSCommandVCSType*
-bufexplorer bufexplorer.txt /*bufexplorer*
-bufexplorer-changelog bufexplorer.txt /*bufexplorer-changelog*
-bufexplorer-credits bufexplorer.txt /*bufexplorer-credits*
-bufexplorer-customization bufexplorer.txt /*bufexplorer-customization*
-bufexplorer-installation bufexplorer.txt /*bufexplorer-installation*
-bufexplorer-todo bufexplorer.txt /*bufexplorer-todo*
-bufexplorer-usage bufexplorer.txt /*bufexplorer-usage*
-bufexplorer-windowlayout bufexplorer.txt /*bufexplorer-windowlayout*
-bufexplorer.txt bufexplorer.txt /*bufexplorer.txt*
-buffer-explorer bufexplorer.txt /*buffer-explorer*
-cvscommand-changes vcscommand.txt /*cvscommand-changes*
-g:bufExplorerChgWin bufexplorer.txt /*g:bufExplorerChgWin*
-g:bufExplorerDefaultHelp bufexplorer.txt /*g:bufExplorerDefaultHelp*
-g:bufExplorerDetailedHelp bufexplorer.txt /*g:bufExplorerDetailedHelp*
-g:bufExplorerFindActive bufexplorer.txt /*g:bufExplorerFindActive*
-g:bufExplorerFuncRef bufexplorer.txt /*g:bufExplorerFuncRef*
-g:bufExplorerReverseSort bufexplorer.txt /*g:bufExplorerReverseSort*
-g:bufExplorerShowDirectories bufexplorer.txt /*g:bufExplorerShowDirectories*
-g:bufExplorerShowRelativePath bufexplorer.txt /*g:bufExplorerShowRelativePath*
-g:bufExplorerShowTabBuffer bufexplorer.txt /*g:bufExplorerShowTabBuffer*
-g:bufExplorerShowUnlisted bufexplorer.txt /*g:bufExplorerShowUnlisted*
-g:bufExplorerSortBy bufexplorer.txt /*g:bufExplorerSortBy*
-g:bufExplorerSplitBelow bufexplorer.txt /*g:bufExplorerSplitBelow*
-g:bufExplorerSplitOutPathName bufexplorer.txt /*g:bufExplorerSplitOutPathName*
-g:bufExplorerSplitRight bufexplorer.txt /*g:bufExplorerSplitRight*
-g:snippets_dir snipMate.txt /*g:snippets_dir*
-g:snips_author snipMate.txt /*g:snips_author*
-git-vim git-vim.txt /*git-vim*
-git-vim-commands git-vim.txt /*git-vim-commands*
-git-vim-contents git-vim.txt /*git-vim-contents*
-git-vim-keymaps git-vim.txt /*git-vim-keymaps*
-git-vim-license git-vim.txt /*git-vim-license*
-git-vim.txt git-vim.txt /*git-vim.txt*
-i_CTRL-R_<Tab> snipMate.txt /*i_CTRL-R_<Tab>*
-indexer indexer.txt /*indexer*
-indexer-commands indexer.txt /*indexer-commands*
-indexer-options indexer.txt /*indexer-options*
-indexer-plugin indexer.txt /*indexer-plugin*
-indexer.txt indexer.txt /*indexer.txt*
-list-snippets snipMate.txt /*list-snippets*
-multi_snip snipMate.txt /*multi_snip*
-project project.txt /*project*
-project-adding-mappings project.txt /*project-adding-mappings*
-project-example project.txt /*project-example*
-project-flags project.txt /*project-flags*
-project-inheritance project.txt /*project-inheritance*
-project-invoking project.txt /*project-invoking*
-project-mappings project.txt /*project-mappings*
-project-plugin project.txt /*project-plugin*
-project-settings project.txt /*project-settings*
-project-syntax project.txt /*project-syntax*
-project-tips project.txt /*project-tips*
-project.txt project.txt /*project.txt*
-snipMate snipMate.txt /*snipMate*
-snipMate-$# snipMate.txt /*snipMate-$#*
-snipMate-${#:} snipMate.txt /*snipMate-${#:}*
-snipMate-${#} snipMate.txt /*snipMate-${#}*
-snipMate-author snipMate.txt /*snipMate-author*
-snipMate-commands snipMate.txt /*snipMate-commands*
-snipMate-contact snipMate.txt /*snipMate-contact*
-snipMate-description snipMate.txt /*snipMate-description*
-snipMate-disadvantages snipMate.txt /*snipMate-disadvantages*
-snipMate-expandtab snipMate.txt /*snipMate-expandtab*
-snipMate-features snipMate.txt /*snipMate-features*
-snipMate-filename snipMate.txt /*snipMate-filename*
-snipMate-indenting snipMate.txt /*snipMate-indenting*
-snipMate-placeholders snipMate.txt /*snipMate-placeholders*
-snipMate-remap snipMate.txt /*snipMate-remap*
-snipMate-settings snipMate.txt /*snipMate-settings*
-snipMate-usage snipMate.txt /*snipMate-usage*
-snipMate.txt snipMate.txt /*snipMate.txt*
-snippet snipMate.txt /*snippet*
-snippet-syntax snipMate.txt /*snippet-syntax*
-snippets snipMate.txt /*snippets*
-taglist-commands taglist.txt /*taglist-commands*
-taglist-debug taglist.txt /*taglist-debug*
-taglist-extend taglist.txt /*taglist-extend*
-taglist-faq taglist.txt /*taglist-faq*
-taglist-functions taglist.txt /*taglist-functions*
-taglist-install taglist.txt /*taglist-install*
-taglist-internet taglist.txt /*taglist-internet*
-taglist-intro taglist.txt /*taglist-intro*
-taglist-keys taglist.txt /*taglist-keys*
-taglist-license taglist.txt /*taglist-license*
-taglist-menu taglist.txt /*taglist-menu*
-taglist-options taglist.txt /*taglist-options*
-taglist-requirements taglist.txt /*taglist-requirements*
-taglist-session taglist.txt /*taglist-session*
-taglist-todo taglist.txt /*taglist-todo*
-taglist-using taglist.txt /*taglist-using*
-taglist.txt taglist.txt /*taglist.txt*
-vcscommand vcscommand.txt /*vcscommand*
-vcscommand-buffer-management vcscommand.txt /*vcscommand-buffer-management*
-vcscommand-buffer-variables vcscommand.txt /*vcscommand-buffer-variables*
-vcscommand-bugs vcscommand.txt /*vcscommand-bugs*
-vcscommand-commands vcscommand.txt /*vcscommand-commands*
-vcscommand-config vcscommand.txt /*vcscommand-config*
-vcscommand-contents vcscommand.txt /*vcscommand-contents*
-vcscommand-customize vcscommand.txt /*vcscommand-customize*
-vcscommand-events vcscommand.txt /*vcscommand-events*
-vcscommand-install vcscommand.txt /*vcscommand-install*
-vcscommand-intro vcscommand.txt /*vcscommand-intro*
-vcscommand-manual vcscommand.txt /*vcscommand-manual*
-vcscommand-mappings vcscommand.txt /*vcscommand-mappings*
-vcscommand-mappings-override vcscommand.txt /*vcscommand-mappings-override*
-vcscommand-naming vcscommand.txt /*vcscommand-naming*
-vcscommand-options vcscommand.txt /*vcscommand-options*
-vcscommand-ssh vcscommand.txt /*vcscommand-ssh*
-vcscommand-ssh-config vcscommand.txt /*vcscommand-ssh-config*
-vcscommand-ssh-env vcscommand.txt /*vcscommand-ssh-env*
-vcscommand-ssh-other vcscommand.txt /*vcscommand-ssh-other*
-vcscommand-ssh-wrapper vcscommand.txt /*vcscommand-ssh-wrapper*
-vcscommand-statusline vcscommand.txt /*vcscommand-statusline*
-vcscommand.txt vcscommand.txt /*vcscommand.txt*
diff --git a/modules/vim/vim.dot.link/doc/vcscommand.txt b/modules/vim/vim.dot.link/doc/vcscommand.txt
deleted file mode 100644
index 5e0c4c0..0000000
--- a/modules/vim/vim.dot.link/doc/vcscommand.txt
+++ /dev/null
@@ -1,835 +0,0 @@
-*vcscommand.txt* vcscommand
-Copyright (c) Bob Hiestand
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to
-deal in the Software without restriction, including without limitation the
-rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-sell copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-IN THE SOFTWARE.
-
-For instructions on installing this file, type
- :help add-local-help
-inside Vim.
-
-Author: Bob Hiestand <bob.hiestand@gmail.com>
-Credits: Benji Fisher's excellent MatchIt documentation
-
-==============================================================================
-1. Contents *vcscommand-contents*
-
- Installation : |vcscommand-install|
- vcscommand Intro : |vcscommand|
- vcscommand Manual : |vcscommand-manual|
- Customization : |vcscommand-customize|
- SSH "integration" : |vcscommand-ssh|
- Changes from cvscommand : |cvscommand-changes|
- Bugs : |vcscommand-bugs|
-
-==============================================================================
-
-2. vcscommand Installation *vcscommand-install*
-
-The vcscommand plugin comprises five files: vcscommand.vim, vcssvn.vim,
-vcscvs.vim, vcssvk.vim and vcscommand.txt (this file). In order to install
-the plugin, place the vcscommand.vim, vcssvn.vim, vcssvk.vim, and vcscvs.vim
-files into a plugin directory in your runtime path (please see
-|add-global-plugin| and |'runtimepath'|.
-
-This help file can be included in the VIM help system by copying it into a
-'doc' directory in your runtime path and then executing the |:helptags|
-command, specifying the full path of the 'doc' directory. Please see
-|add-local-help| for more details.
-
-vcscommand may be customized by setting variables, creating maps, and
-specifying event handlers. Please see |vcscommand-customize| for more
-details.
-
-==============================================================================
-
-3. vcscommand Intro *vcscommand*
- *vcscommand-intro*
-
-The vcscommand plugin provides global ex commands for manipulating
-version-controlled source files, currently those controlled either by CVS or
-Subversion. In general, each command operates on the current buffer and
-accomplishes a separate source control function, such as update, commit, log,
-and others (please see |vcscommand-commands| for a list of all available
-commands). The results of each operation are displayed in a scratch buffer.
-Several buffer variables are defined for those scratch buffers (please see
-|vcscommand-buffer-variables|).
-
-The notion of "current file" means either the current buffer, or, in the case
-of a directory buffer (such as Explorer or netrw buffers), the directory (and
-all subdirectories) represented by the the buffer.
-
-For convenience, any vcscommand invoked on a vcscommand scratch buffer acts as
-though it was invoked on the original file and splits the screen so that the
-output appears in a new window.
-
-Many of the commands accept revisions as arguments. By default, most operate
-on the most recent revision on the current branch if no revision is specified.
-
-Each vcscommand is mapped to a key sequence starting with the |<Leader>|
-keystroke. The default mappings may be overridden by supplying different
-mappings before the plugin is loaded, such as in the vimrc, in the standard
-fashion for plugin mappings. For examples, please see
-|vcscommand-mappings-override|.
-
-The vcscommand plugin may be configured in several ways. For more details,
-please see |vcscommand-customize|.
-
-==============================================================================
-
-4. vcscommand Manual *vcscommand-manual*
-
-4.1 vcscommand commands *vcscommand-commands*
-
-vcscommand defines the following commands:
-
-|:VCSAdd|
-|:VCSAnnotate|
-|:VCSBlame|
-|:VCSCommit|
-|:VCSDelete|
-|:VCSDiff|
-|:VCSGotoOriginal|
-|:VCSLog|
-|:VCSRemove|
-|:VCSRevert|
-|:VCSReview|
-|:VCSStatus|
-|:VCSUpdate|
-|:VCSVimDiff|
-
-The following commands are specific to CVS files:
-
-|:CVSEdit|
-|:CVSEditors|
-|:CVSUnedit|
-|:CVSWatch|
-|:CVSWatchAdd|
-|:CVSWatchOn|
-|:CVSWatchOff|
-|:CVSWatchRemove|
-|:CVSWatchers|
-
-:VCSAdd *:VCSAdd*
-
-This command adds the current file to source control. Please note, this does
-not commit the newly-added file. All parameters to the command are passed to
-the underlying VCS.
-
-:VCSAnnotate[!] *:VCSAnnotate*
-
-This command displays the current file with each line annotated with the
-version in which it was most recently changed. If an argument is given, the
-argument is used as a revision number to display. If not given an argument,
-it uses the most recent version of the file (on the current branch, if under
-CVS control). Additionally, if the current buffer is a VCSAnnotate buffer
-already, the version number on the current line is used.
-
-If '!' is used, the view of the annotated buffer is split so that the
-annotation is in a separate window from the content, and each is highlighted
-separately.
-
-For CVS buffers, the 'VCSCommandCVSAnnotateParent' option, if set to non-zero,
-will cause the above behavior to change. Instead of annotating the version on
-the current line, the parent revision is used instead, crossing branches if
-necessary.
-
-With no arguments the cursor will jump to the line in the annotated buffer
-corresponding to the current line in the source buffer.
-
-:VCSBlame[!] *:VCSBlame*
-
-Alias for |:VCSAnnotate|.
-
-:VCSCommit[!] *:VCSCommit*
-
-This command commits changes to the current file to source control.
-
-If called with arguments, the arguments are the log message.
-
-If '!' is used, an empty log message is committed.
-
-If called with no arguments, this is a two-step command. The first step opens
-a buffer to accept a log message. When that buffer is written, it is
-automatically closed and the file is committed using the information from that
-log message. The commit can be abandoned if the log message buffer is deleted
-or wiped before being written.
-
-Alternatively, the mapping that is used to invoke :VCSCommit (by default
-|<Leader>|cc, please see |vcscommand-mappings|) can be used in the log message
-buffer in Normal mode to immediately commit. This is useful if the
-|VCSCommandCommitOnWrite| variable is set to 0 to disable the normal
-commit-on-write behavior.
-
-:VCSDelete *:VCSDelete*
-
-Deletes the current file and removes it from source control. All parameters
-to the command are passed to the underlying VCS.
-
-:VCSDiff *:VCSDiff*
-
-With no arguments, this displays the differences between the current file and
-its parent version under source control in a new scratch buffer.
-
-With one argument, the diff is performed on the current file against the
-specified revision.
-
-With two arguments, the diff is performed between the specified revisions of
-the current file.
-
-For CVS, this command uses the |VCSCommandCVSDiffOpt| variable to specify diff
-options. If that variable does not exist, a plugin-specific default is used.
-If you wish to have no options, then set it to the empty string.
-
-For SVN, this command uses the |VCSCommandSVNDiffOpt| variable to specify diff
-options. If that variable does not exist, the SVN default is used.
-Additionally, |VCSCommandSVNDiffExt| can be used to select an external diff
-application.
-
-:VCSGotoOriginal *:VCSGotoOriginal*
-
-This command jumps to the source buffer if the current buffer is a VCS scratch
-buffer.
-
-:VCSGotoOriginal!
-
-Like ":VCSGotoOriginal" but also executes :bufwipeout on all VCS scrach
-buffers associated with the original file.
-
-:VCSInfo *:VCSInfo*
-
-This command displays extended information about the current file in a new
-scratch buffer.
-
-:VCSLock *:VCSLock*
-
-This command locks the current file in order to prevent other users from
-concurrently modifying it. The exact semantics of this command depend on the
-underlying VCS. This does nothing in CVS. All parameters are passed to the
-underlying VCS.
-
-:VCSLog *:VCSLog*
-
-Displays the version history of the current file in a new scratch buffer. If
-there is one parameter supplied, it is taken as as a revision parameters to be
-passed through to the underlying VCS. Otherwise, all parameters are passed to
-the underlying VCS.
-
-:VCSRemove *:VCSRemove*
-
-Alias for |:VCSDelete|.
-
-:VCSRevert *:VCSRevert*
-
-This command replaces the current file with the most recent version from the
-repository in order to wipe out any undesired changes.
-
-:VCSReview *:VCSReview*
-
-Displays a particular version of the current file in a new scratch buffer. If
-no argument is given, the most recent version of the file on the current
-branch is retrieved.
-
-:VCSStatus *:VCSStatus*
-
-Displays versioning information about the current file in a new scratch
-buffer. All parameters are passed to the underlying VCS.
-
-
-:VCSUnlock *:VCSUnlock*
-
-Unlocks the current file in order to allow other users from concurrently
-modifying it. The exact semantics of this command depend on the underlying
-VCS. All parameters are passed to the underlying VCS.
-
-:VCSUpdate *:VCSUpdate*
-
-Updates the current file with any relevant changes from the repository. This
-intentionally does not automatically reload the current buffer, though vim
-should prompt the user to do so if the underlying file is altered by this
-command.
-
-:VCSVimDiff *:VCSVimDiff*
-
-Uses vimdiff to display differences between versions of the current file.
-
-If no revision is specified, the most recent version of the file on the
-current branch is used. With one argument, that argument is used as the
-revision as above. With two arguments, the differences between the two
-revisions is displayed using vimdiff.
-
-With either zero or one argument, the original buffer is used to perform the
-vimdiff. When the scratch buffer is closed, the original buffer will be
-returned to normal mode.
-
-Once vimdiff mode is started using the above methods, additional vimdiff
-buffers may be added by passing a single version argument to the command.
-There may be up to 4 vimdiff buffers total.
-
-Using the 2-argument form of the command resets the vimdiff to only those 2
-versions. Additionally, invoking the command on a different file will close
-the previous vimdiff buffers.
-
-:CVSEdit *:CVSEdit*
-
-This command performs "cvs edit" on the current file. Yes, the output buffer
-in this case is almost completely useless.
-
-:CVSEditors *:CVSEditors*
-
-This command performs "cvs edit" on the current file.
-
-:CVSUnedit *:CVSUnedit*
-
-Performs "cvs unedit" on the current file. Again, yes, the output buffer here
-is basically useless.
-
-:CVSWatch *:CVSWatch*
-
-This command takes an argument which must be one of [on|off|add|remove]. The
-command performs "cvs watch" with the given argument on the current file.
-
-:CVSWatchAdd *:CVSWatchAdd*
-
-This command is an alias for ":CVSWatch add"
-
-:CVSWatchOn *:CVSWatchOn*
-
-This command is an alias for ":CVSWatch on"
-
-:CVSWatchOff *:CVSWatchOff*
-
-This command is an alias for ":CVSWatch off"
-
-:CVSWatchRemove *:CVSWatchRemove*
-
-This command is an alias for ":CVSWatch remove"
-
-:CVSWatchers *:CVSWatchers*
-
-This command performs "cvs watchers" on the current file.
-
-4.2 Mappings *vcscommand-mappings*
-
-By default, a mapping is defined for each command. These mappings execute the
-default (no-argument) form of each command.
-
-|<Leader>|ca VCSAdd
-|<Leader>|cn VCSAnnotate
-|<Leader>|cN VCSAnnotate!
-|<Leader>|cc VCSCommit
-|<Leader>|cD VCSDelete
-|<Leader>|cd VCSDiff
-|<Leader>|cg VCSGotoOriginal
-|<Leader>|cG VCSGotoOriginal!
-|<Leader>|ci VCSInfo
-|<Leader>|cl VCSLog
-|<Leader>|cL VCSLock
-|<Leader>|cr VCSReview
-|<Leader>|cs VCSStatus
-|<Leader>|cu VCSUpdate
-|<Leader>|cU VCSUnlock
-|<Leader>|cv VCSVimDiff
-
-Only for CVS buffers:
-
-|<Leader>|ce CVSEdit
-|<Leader>|cE CVSEditors
-|<Leader>|ct CVSUnedit
-|<Leader>|cwv CVSWatchers
-|<Leader>|cwa CVSWatchAdd
-|<Leader>|cwn CVSWatchOn
-|<Leader>|cwf CVSWatchOff
-|<Leader>|cwf CVSWatchRemove
-
- *vcscommand-mappings-override*
-
-The default mappings can be overridden by user-provided instead by mapping to
-<Plug>CommandName. This is especially useful when these mappings collide with
-other existing mappings (vim will warn of this during plugin initialization,
-but will not clobber the existing mappings).
-
-There are three methods for controlling mapping:
-
-First, maps can be overriden for individual commands. For instance, to
-override the default mapping for :VCSAdd to set it to '\add', add the
-following to the vimrc:
-
-nmap \add <Plug>VCSAdd
-
-Second, the default map prefix ('<Leader>c') can be overridden by defining the
-|VCSCommandMapPrefix| variable.
-
-Third, the entire set of default maps can be overridden by defining the
-|VCSCommandMappings| variable.
-
-
-4.3 Automatic buffer variables *vcscommand-buffer-variables*
-
-Several buffer variables are defined in each vcscommand result buffer. These
-may be useful for additional customization in callbacks defined in the event
-handlers (please see |vcscommand-events|).
-
-The following variables are automatically defined:
-
-b:VCSCommandOriginalBuffer *b:VCSCommandOriginalBuffer*
-
-This variable is set to the buffer number of the source file.
-
-b:VCSCommandCommand *b:VCSCommandCommand*
-
-This variable is set to the name of the vcscommand that created the result
-buffer.
-
-b:VCSCommandSourceFile *b:VCSCommandSourceFile*
-
-This variable is set to the name of the original file under source control.
-
-b:VCSCommandVCSType *b:VCSCommandVCSType*
-
-This variable is set to the type of the source control. This variable is also
-set on the original file itself.
-==============================================================================
-
-5. Configuration and customization *vcscommand-customize*
- *vcscommand-config*
-
-The vcscommand plugin can be configured in several ways: by setting
-configuration variables (see |vcscommand-options|) or by defining vcscommand
-event handlers (see |vcscommand-events|). Additionally, the vcscommand plugin
-supports a customized status line (see |vcscommand-statusline| and
-|vcscommand-buffer-management|).
-
-5.1 vcscommand configuration variables *vcscommand-options*
-
-Several variables affect the plugin's behavior. These variables are checked
-at time of execution, and may be defined at the window, buffer, or global
-level and are checked in that order of precedence.
-
-
-The following variables are available:
-
-|VCSCommandCommitOnWrite|
-|VCSCommandCVSDiffOpt|
-|VCSCommandCVSExec|
-|VCSCommandDeleteOnHide|
-|VCSCommandDiffSplit|
-|VCSCommandDisableAll|
-|VCSCommandDisableMappings|
-|VCSCommandDisableExtensionMappings|
-|VCSCommandDisableMenu|
-|VCSCommandEdit|
-|VCSCommandEnableBufferSetup|
-|VCSCommandMappings|
-|VCSCommandMapPrefix|
-|VCSCommandMenuPriority|
-|VCSCommandMenuRoot|
-|VCSCommandResultBufferNameExtension|
-|VCSCommandResultBufferNameFunction|
-|VCSCommandSplit|
-|VCSCommandSVKExec|
-|VCSCommandSVNDiffExt|
-|VCSCommandSVNDiffOpt|
-|VCSCommandSVNExec|
-|VCSCommandVCSTypeOverride|
-
-VCSCommandCommitOnWrite *VCSCommandCommitOnWrite*
-
-This variable, if set to a non-zero value, causes the pending commit
-to take place immediately as soon as the log message buffer is written.
-If set to zero, only the VCSCommit mapping will cause the pending commit to
-occur. If not set, it defaults to 1.
-
-VCSCommandCVSExec *VCSCommandCVSExec*
-
-This variable controls the executable used for all CVS commands If not set,
-it defaults to "cvs".
-
-VCSCommandDeleteOnHide *VCSCommandDeleteOnHide*
-
-This variable, if set to a non-zero value, causes the temporary result buffers
-to automatically delete themselves when hidden.
-
-VCSCommandCVSDiffOpt *VCSCommandCVSDiffOpt*
-
-This variable, if set, determines the options passed to the diff command of
-CVS. If not set, it defaults to 'u'.
-
-VCSCommandDiffSplit *VCSCommandDiffSplit*
-
-This variable overrides the |VCSCommandSplit| variable, but only for buffers
-created with |:VCSVimDiff|.
-
-VCSCommandDisableAll *VCSCommandDisableAll*
-
-This variable, if set, prevents the plugin or any extensions from loading at
-all. This is useful when a single runtime distribution is used on multiple
-systems with varying versions.
-
-VCSCommandDisableMappings *VCSCommandDisableMappings*
-
-This variable, if set to a non-zero value, prevents the default command
-mappings from being set. This supercedes
-|VCSCommandDisableExtensionMappings|.
-
-VCSCommandDisableExtensionMappings *VCSCommandDisableExtensionMappings*
-
-This variable, if set to a non-zero value, prevents the default command
-mappings from being set for commands specific to an individual VCS.
-
-VCSCommandEdit *VCSCommandEdit*
-
-This variable controls whether the original buffer is replaced ('edit') or
-split ('split'). If not set, it defaults to 'split'.
-
-VCSCommandDisableMenu *VCSCommandDisableMenu*
-
-This variable, if set to a non-zero value, prevents the default command menu
-from being set.
-
-VCSCommandEnableBufferSetup *VCSCommandEnableBufferSetup*
-
-This variable, if set to a non-zero value, activates VCS buffer management
-mode see (|vcscommand-buffer-management|). This mode means that the
-'VCSCommandBufferInfo' variable is filled with version information if the file
-is VCS-controlled. This is useful for displaying version information in the
-status bar.
-
-VCSCommandMappings *VCSCommandMappings*
-
-This variable, if set, overrides the default mappings used for shortcuts. It
-should be a List of 2-element Lists, each containing a shortcut and function
-name pair. The value of the '|VCSCommandMapPrefix|' variable will be added to
-each shortcut.
-
-VCSCommandMapPrefix *VCSCommandMapPrefix*
-
-This variable, if set, overrides the default mapping prefix ('<Leader>c').
-This allows customization of the mapping space used by the vcscommand
-shortcuts.
-
-VCSCommandMenuPriority *VCSCommandMenuPriority*
-
-This variable, if set, overrides the default menu priority '' (empty)
-
-VCSCommandMenuRoot *VCSCommandMenuRoot*
-
-This variable, if set, overrides the default menu root 'Plugin.VCS'
-
-VCSCommandResultBufferNameExtension *VCSCommandResultBufferNameExtension*
-
-This variable, if set to a non-blank value, is appended to the name of the VCS
-command output buffers. For example, '.vcs'. Using this option may help
-avoid problems caused by autocommands dependent on file extension.
-
-VCSCommandResultBufferNameFunction *VCSCommandResultBufferNameFunction*
-
-This variable, if set, specifies a custom function for naming VCS command
-output buffers. This function is expected to return the new buffer name, and
-will be passed the following arguments:
-
- command - name of the VCS command being executed (such as 'Log' or
- 'Diff').
-
- originalBuffer - buffer number of the source file.
-
- vcsType - type of VCS controlling this file (such as 'CVS' or 'SVN').
-
- statusText - extra text associated with the VCS action (such as version
- numbers).
-
-VCSCommandSplit *VCSCommandSplit*
-
-This variable controls the orientation of the various window splits that
-may occur.
-
-If set to 'horizontal', the resulting windows will be on stacked on top of
-one another. If set to 'vertical', the resulting windows will be
-side-by-side. If not set, it defaults to 'horizontal' for all but
-VCSVimDiff windows. VCSVimDiff windows default to the user's 'diffopt'
-setting, if set, otherwise 'vertical'.
-
-VCSCommandSVKExec *VCSCommandSVKExec*
-
-This variable controls the executable used for all SVK commands If not set,
-it defaults to "svk".
-
-VCSCommandSVNDiffExt *VCSCommandSVNDiffExt*
-
-This variable, if set, is passed to SVN via the --diff-cmd command to select
-an external application for performing the diff.
-
-VCSCommandSVNDiffOpt *VCSCommandSVNDiffOpt*
-
-This variable, if set, determines the options passed with the '-x' parameter
-to the SVN diff command. If not set, no options are passed.
-
-VCSCommandSVNExec *VCSCommandSVNExec*
-
-This variable controls the executable used for all SVN commands If not set,
-it defaults to "svn".
-
-VCSCommandVCSTypeOverride *VCSCommandVCSTypeOverride*
-
-This variable allows the VCS type detection to be overridden on a path-by-path
-basis. The value of this variable is expected to be a List of Lists. Each
-item in the high-level List is a List containing two elements. The first
-element is a regular expression that will be matched against the full file
-name of a given buffer. If it matches, the second element will be used as the
-VCS type.
-
-5.2 VCSCommand events *vcscommand-events*
-
-For additional customization, vcscommand can trigger user-defined events.
-Event handlers are provided by defining User event autocommands (see
-|autocommand|, |User|) in the vcscommand group with patterns matching the
-event name.
-
-For instance, the following could be added to the vimrc to provide a 'q'
-mapping to quit a vcscommand scratch buffer:
-
-augroup VCSCommand
- au User VCSBufferCreated silent! nmap <unique> <buffer> q :bwipeout<cr>
-augroup END
-
-The following hooks are available:
-
-VCSBufferCreated This event is fired just after a vcscommand
- result buffer is created and populated. It is
- executed within the context of the vcscommand
- buffer. The vcscommand buffer variables may
- be useful for handlers of this event (please
- see |vcscommand-buffer-variables|).
-
-VCSBufferSetup This event is fired just after vcscommand buffer
- setup occurs, if enabled.
-
-VCSPluginInit This event is fired when the vcscommand plugin
- first loads.
-
-VCSPluginFinish This event is fired just after the vcscommand
- plugin loads.
-
-VCSVimDiffFinish This event is fired just after the VCSVimDiff
- command executes to allow customization of,
- for instance, window placement and focus.
-
-Additionally, there is another hook which is used internally to handle loading
-the multiple scripts in order. This hook should probably not be used by an
-end user without a good idea of how it works. Among other things, any events
-associated with this hook are cleared after they are executed (during
-vcscommand.vim script initialization).
-
-VCSLoadExtensions This event is fired just before the
- VCSPluginFinish. It is used internally to
- execute any commands from the VCS
- implementation plugins that needs to be
- deferred until the primary plugin is
- initialized.
-
-5.3 vcscommand buffer naming *vcscommand-naming*
-
-vcscommand result buffers use the following naming convention:
-[{VCS type} {VCS command} {Source file name}]
-
-If additional buffers are created that would otherwise conflict, a
-distinguishing number is added:
-
-[{VCS type} {VCS command} {Source file name}] (1,2, etc)
-
-5.4 vcscommand status line support *vcscommand-statusline*
-
-It is intended that the user will customize the |'statusline'| option to
-include vcscommand result buffer attributes. A sample function that may be
-used in the |'statusline'| option is provided by the plugin,
-VCSCommandGetStatusLine(). In order to use that function in the status line, do
-something like the following:
-
-set statusline=%<%f\ %{VCSCommandGetStatusLine()}\ %h%m%r%=%l,%c%V\ %P
-
-of which %{VCSCommandGetStatusLine()} is the relevant portion.
-
-The sample VCSCommandGetStatusLine() function handles both vcscommand result
-buffers and VCS-managed files if vcscommand buffer management is enabled
-(please see |vcscommand-buffer-management|).
-
-5.5 vcscommand buffer management *vcscommand-buffer-management*
-
-The vcscommand plugin can operate in buffer management mode, which means that
-it attempts to set a buffer variable ('VCSCommandBufferInfo') upon entry into
-a buffer. This is rather slow because it means that the VCS will be invoked
-at each entry into a buffer (during the |BufEnter| autocommand).
-
-This mode is disabled by default. In order to enable it, set the
-|VCSCommandEnableBufferSetup| variable to a true (non-zero) value. Enabling
-this mode simply provides the buffer variable mentioned above. The user must
-explicitly include information from the variable in the |'statusline'| option
-if they are to appear in the status line (but see |vcscommand-statusline| for
-a simple way to do that).
-
-The 'VCSCommandBufferInfo' variable is a list which contains, in order, the
-revision of the current file, the latest revision of the file in the
-repository, and (for CVS) the name of the branch. If those values cannot be
-determined, the list is a single element: 'Unknown'.
-
-==============================================================================
-
-6. SSH "integration" *vcscommand-ssh*
-
-The following instructions are intended for use in integrating the
-vcscommand.vim plugin with an SSH-based CVS environment.
-
-Familiarity with SSH and CVS are assumed.
-
-These instructions assume that the intent is to have a message box pop up in
-order to allow the user to enter a passphrase. If, instead, the user is
-comfortable using certificate-based authentication, then only instructions
-6.1.1 and 6.1.2 (and optionally 6.1.4) need to be followed; ssh should then
-work transparently.
-
-6.1 Environment settings *vcscommand-ssh-env*
-
-6.1.1 CVSROOT should be set to something like:
-
- :ext:user@host:/path_to_repository
-
-6.1.2 CVS_RSH should be set to:
-
- ssh
-
- Together, those settings tell CVS to use ssh as the transport when
- performing CVS calls.
-
-6.1.3 SSH_ASKPASS should be set to the password-dialog program. In my case,
- running gnome, it's set to:
-
- /usr/libexec/openssh/gnome-ssh-askpass
-
- This tells SSH how to get passwords if no input is available.
-
-6.1.4 OPTIONAL. You may need to set SSH_SERVER to the location of the cvs
- executable on the remote (server) machine.
-
-6.2 CVS wrapper program *vcscommand-ssh-wrapper*
-
-Now you need to convince SSH to use the password-dialog program. This means
-you need to execute SSH (and therefore CVS) without standard input. The
-following script is a simple perl wrapper that dissasociates the CVS command
-from the current terminal. Specific steps to do this may vary from system to
-system; the following example works for me on linux.
-
-#!/usr/bin/perl -w
-use strict;
-use POSIX qw(setsid);
-open STDIN, '/dev/null';
-fork and do {wait; exit;};
-setsid;
-exec('cvs', @ARGV);
-
-6.3 Configuring vcscommand.vim *vcscommand-ssh-config*
-
-At this point, you should be able to use your wrapper script to invoke CVS with
-various commands, and get the password dialog. All that's left is to make CVS
-use your newly-created wrapper script.
-
-6.3.1 Tell vcscommand.vim what CVS executable to use. The easiest way to do this
- is globally, by putting the following in your .vimrc:
-
- let VCSCommandCVSExec=/path/to/cvs/wrapper/script
-
-6.4 Where to go from here *vcscommand-ssh-other*
-
-The script given above works even when non-SSH CVS connections are used,
-except possibly when interactively entering the message for CVS commit log
-(depending on the editor you use... VIM works fine). Since the vcscommand.vim
-plugin handles that message without a terminal, the wrapper script can be used
-all the time.
-
-This allows mixed-mode operation, where some work is done with SSH-based CVS
-repositories, and others with pserver or local access.
-
-It is possible, though beyond the scope of the plugin, to dynamically set the
-CVS executable based on the CVSROOT for the file being edited. The user
-events provided (such as VCSBufferCreated and VCSBufferSetup) can be used to
-set a buffer-local value (b:VCSCommandCVSExec) to override the CVS executable
-on a file-by-file basis. Alternatively, much the same can be done (less
-automatically) by the various project-oriented plugins out there.
-
-It is highly recommended for ease-of-use that certificates with no passphrase
-or ssh-agent are employed so that the user is not given the password prompt
-too often.
-
-==============================================================================
-
-7. Changes from cvscommand *cvscommand-changes*
-
-1. Require Vim 7 in order to leverage several convenient features; also
-because I wanted to play with Vim 7.
-
-2. Renamed commands to start with 'VCS' instead of 'CVS'. The exceptions are
-the 'CVSEdit' and 'CVSWatch' family of commands, which are specific to CVS.
-
-3. Renamed options, events to start with 'VCSCommand'.
-
-4. Removed option to jump to the parent version of the current line in an
-annotated buffer, as opposed to the version on the current line. This made
-little sense in the branching scheme used by subversion, where jumping to a
-parent branch required finding a different location in the repository. It
-didn't work consistently in CVS anyway.
-
-5. Removed option to have nameless scratch buffers.
-
-6. Changed default behavior of scratch buffers to split the window instead of
-displaying in the current window. This may still be overridden using the
-'VCSCommandEdit' option.
-
-7. Split plugin into multiple plugins.
-
-8. Added 'VCSLock' and 'VCSUnlock' commands. These are implemented for
-subversion but not for CVS. These were not kept specific to subversion as they
-seemed more general in nature and more likely to be supported by any future VCS
-supported by this plugin.
-
-9. Changed name of buffer variables set by commands.
-
-'b:cvsOrigBuffNR' became 'b:VCSCommandOriginalBuffer'
-'b:cvscmd' became 'b:VCSCommandCommand'
-
-10. Added new automatic variables to command result buffers.
-
-'b:VCSCommandSourceFile'
-'b:VCSCommandVCSType'
-
-==============================================================================
-
-8. Known bugs *vcscommand-bugs*
-
-Please let me know if you run across any.
-
-CVSUnedit may, if a file is changed from the repository, provide prompt text
-to determine whether the changes should be thrown away. Currently, that text
-shows up in the CVS result buffer as information; there is no way for the user
-to actually respond to the prompt and the CVS unedit command does nothing. If
-this really bothers anyone, please let me know.
-
-VCSVimDiff, when using the original (real) source buffer as one of the diff
-buffers, uses some hacks to try to restore the state of the original buffer
-when the scratch buffer containing the other version is destroyed. There may
-still be bugs in here, depending on many configuration details.
-
-vim:tw=78:ts=8:ft=help