本节所用命令的帮助入口:
:help helptags
:help taglist.txt
使用下面的命令生成帮助标签
:helptags ~/.vim/doc
下面介绍常用的taglist配置选项,你可以根据自己的习惯进行配置:
- Tlist_Ctags_Cmd选项用于指定你的Exuberant ctags程序的位置,如果它没在你PATH变量所定义的路径中,需要使用此选项设置一下;
- 如果你不想同时显示多个文件中的tag,设置Tlist_Show_One_File为1。缺省为显示多个文件中的tag;
- 设置Tlist_Sort_Type为”name”可以使taglist以tag名字进行排序,缺省是按tag在文件中出现的顺序进行排序。按tag出现的范围(即所属的namespace或class)排序,已经加入taglist的TODO List,但尚未支持;
- 如果你在想taglist窗口是最后一个窗口时退出VIM,设置Tlist_Exit_OnlyWindow为1;
- 如果你想taglist窗口出现在右侧,设置Tlist_Use_Right_Window为1。缺省显示在左侧。
- 在gvim中,如果你想显示taglist菜单,设置Tlist_Show_Menu为1。你可以使用Tlist_Max_Submenu_Items和Tlist_Max_Tag_Length来控制菜单条目数和所显示tag名字的长度;
- 缺省情况下,在双击一个tag时,才会跳到该tag定义的位置,如果你想单击tag就跳转,设置Tlist_Use_SingleClick为1;
- 如果你想在启动VIM后,自动打开taglist窗口,设置Tlist_Auto_Open为1;
- 如果你希望在选择了tag后自动关闭taglist窗口,设置Tlist_Close_On_Select为1;
- 当同时显示多个文件中的tag时,设置Tlist_File_Fold_Auto_Close为1,可使taglist只显示当前文件tag,其它文件的tag都被折叠起来。
- 在使用:TlistToggle打开taglist窗口时,如果希望输入焦点在taglist窗口中,设置Tlist_GainFocus_On_ToggleOpen为1;
- 如果希望taglist始终解析文件中的tag,不管taglist窗口有没有打开,设置Tlist_Process_File_Always为1;
- Tlist_WinHeight和Tlist_WinWidth可以设置taglist窗口的高度和宽度。Tlist_Use_Horiz_Window为1设置taglist窗口横向显示;
在taglist窗口中,可以使用下面的快捷键:
o 在一个新打开的窗口中显示光标下tag
u 更新taglist窗口中的tag
s 更改排序方式,在按名字排序和按出现顺序排序间切换
x taglist窗口放大和缩小,方便查看较长的tag
+ 打开一个折叠,同zo
- 将tag折叠起来,同zc
* 打开所有的折叠,同zR
= 将所有tag折叠起来,同zM
[[ 跳到前一个文件
]] 跳到后一个文件
q 关闭taglist窗口
Vim之NerdTree的帮助
1 目录
2 ================================================================================
3 1.简介
4 2.功 能
5 2.1.全局命令
6 2.2.书签
7 2.2.1.书签表
8 2.2.2.书签命令
9 2.2.3.无效书签
10 2.3.Nerdtree 映射
11 2.4.文件系统菜单
12 3.选项
13 3.1. 选项总结
14 3.2.选项明细
15
16
17 1.简介
18 --------------------------------------------------------------------------------
19 Nerd tree可以让你浏览文件系统并打开文件或目录。
20 你可以通过键盘或鼠标控制它以树状图显示文件系统,也可以在其中进行一些简单的文件系统操作。
21
22 nerdtree提 供如下功能及特性:
23 *以继承树的形式显示文件和目录
24 *对如下类型的文件进行不同的高亮显示
25 *文件
26 *目录
27 *sym-links
28 *快捷方式
29 *只读文件
30 *可执行文件
31 *提供许多映射来控制树状结构
32 *对展开/收拢/浏览目录结点的映射
33 *对在新的或已存在的窗口或Tab页中打开文件的映射
34 * 对改变根结点的映射
35 *Mappings to navigate around the tree
36 *可以将文件和目录添加到收藏夹
37 *可以用鼠标进行大部分的树状结构导航
38 *对树状结构内容的过滤(可在运行时切换)
39 *自定义文件过 滤器可以阻止某些文件(比如vim备份文件等)的显示
40 *可选是否显示隐藏文 件
41 *可选不显示文件只显示目录
42 *提供文本文件系统菜单来创建/删除/移动/复制目录或文件
43 *可以自定义Nerd窗口的位置和大小
44 *可以自定义结点排序方式
45 *当你浏览文件系统的时候就会有一 个文件系统的模型被创建或维护。这样做有几个优点:
46 *所有文件系统信息都被 缓存了,有需要的时候只要重新读入缓存
47 *如果重新浏览之后访问过的tree 的一部分,结点就会以上次保持的展开或合拢的样子显示
48 *该脚本能记住光标位置 和窗口位置,所以可以用NERDTreeToggle来切换tree的显示与隐藏
49 * 对于多Tab,可以共享一个Tree,也可以各自拥有各自的tree,还可以混合以上两种方式
50 *默认情况下,该脚本覆盖vim的默认文件浏览器(netrw),所以如果直接输入:edit命令也会用nerd树打开
51
52
53
54 2.功能
55 --------------------------------------------------------------------------------
56 2.1.全局命令
57 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
58 :NERDTree [ | ]
59 打开一个Nerdtree,根结点由参数指定,不指定参数就是以当前目录为根结点
60 :NERDTreeFromBookmark
61 打开一个Nerdtree,根结点由参数所指定的书签
62 :NERDTreeToggle [ | ]
63 在当前Tab中如果Nerdtree已经存在,就切换显示与隐藏;
64 如果不存在,就相当于执行:NERDTree命令
65 :NERDTreeMirror
66 从另一个Tab中共享一个NerdTree过来(在当前Tab的Tree所作的改变也反应到原Tab中)
67 如果总共只有一个Tree,就直接共享;如果不止一个,就会询问共享哪个
68 :NERDTreeClose
69 在当前Tab中关闭Tree
70
71 2.2.书签
72 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
73 在NerdTree中,书签用于标记某个感兴趣的文件或目录,比如可以用书签标记所有 Project目录
74
75 2.2.1.书签表
76 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77 如果书签被激活,则显示于树状图的上方
78 可以双击或用NERDTree-o来激活选中文件
79 可以用NERDTree-t映射使选中文件用新Tab打开,并跳到新tab页
80 可以用NERDTree-T映射使选中文件用新Tab打开,但不跳到新Tab页
81
82 2.2.2.书签命令
83 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
84 以下命令只在在Nerdtree的buffer中有效
85 :Bookmark
86 将选中结点添加到书签列表中,并命名为name(书签名不可包含空格);
87 如与现有书签重名,则覆盖现有书签。
88 :BookmarkToRoot
89 以指定目录书签或文件书签的父目录作为根结点显示NerdTree
90 :RevealBookmark
91 如果指定书签已经存在于当前目录树下,打开它的上层结点并选中该书签
92 :OpenBookmark
93 打开指定的文件。(参数必须是文件书签)
94 如果该文件在当前的目录树下,则打开它的上层结点并选中该书签
95 :ClearBookmarks []
96 清除指定书签;如未指定参数,则清除所有书签
97 :ClearAllBookmarks
98 清除所有书签
99 :ReadBookmarks
100 重新读入'NERDTreeBookmarksFile'中的所有书签
101
102 2.2.3.无效书签
103 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
104 如果监测到无效书签,脚本就会发布一个错误消息并将无效书签置为不可用;
105 无效书签将被移到书签文件的最后,在有效书签和无效书签之间有一个空行。
106 书签文件中的每一行代表一个书签,格式是
107 如果修正了某个无效书签,则可以重启vim或使用:ReadBookmarks命令重新读入书签信息
108
109 2.3.Nerdtree 映射
110 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
111 o.......在已有窗口中打开文件、目录或书签,并跳到该窗口 .....|NERDTree-o|
112 go......在已有窗口 中打开文件、目录或书签,但不跳到该窗口 .....|NERDTree-go|
113 t....... 在新Tab中打开选中文件/书签,并跳到新Tab .....|NERDTree-t|
114 T.......在新Tab中打开选中文件/书签,但不跳到新Tab .....|NERDTree-T|
115 i.......split 一个新窗口打开选中文件,并跳到该窗口 .....|NERDTree-i|
116 gi......split一个新窗口打开选中文件,但不跳到该窗口 .....|NERDTree-gi|
117 s.......vsp一个新窗口打开选中文件,并跳到该窗口 .....|NERDTree-s|
118 gs......vsp一个新 窗口打开选中文件,但不跳到该窗口 .....|NERDTree-gs|
119 !.......执行当前文件 .....|NERDTree-!|
120 O.......递归打开选中 结点下的所有目录 .....|NERDTree-O|
121 x.......合拢选中结点的父目录 .....|NERDTree-x|
122 X.......递归 合拢选中结点下的所有目录 .....|NERDTree-X|
123 e.......Edit the current dif .....|NERDTree-e|
124
125 双击......相当于NERDTree-o
126 中键......对文件相当于NERDTree-i,对目录相当于NERDTree-e
127
128 D....... 删除当前书签
129
130 P.......跳到根结点
131 p....... 跳到父结点
132 K.......跳到当前目录下同级的第一个结点
133 J.......跳到当前目录下同级的最后一个结点
134 ...跳到当前目录下同级的前一个结点
135 ...跳到当前目录下同级的后一个结点
136
137 C.......将选中目录或选中文件的父目录设为根结点
138 u.......将当前根结点的父目录设为根目录,并变成合拢原根结点
139 U.......将当前根结点的父目录设为根目录,但保持展开原根结点
140 r.......递归刷新选中目录
141 R.......递归刷新根结点
142 m....... 显示文件系统菜单
143 cd......将CWD设为选中目录
144
145 I....... 切换是否显示隐藏文件
146 f.......切换是否使用文件过滤器
147 F.......切换是否显示文件
148 B.......切换是否显示书签
149
150 q.......关闭NerdTree窗口
151 ?.......切换是否显示Quick Help
152
153
154
155 2.4.文件系统菜单
156 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
157 帮助说中包含新建、复制、移动、删除四种命令,但copy只支持*nix系统
158
159 3.自定义选项
160 --------------------------------------------------------------------------------
161 loaded_nerd_tree 不使用NerdTree脚本
162 NERDChristmasTree 让Tree把自己给装饰得多姿多彩漂亮点
163 NERDTreeAutoCenter 控制当光标移动超过一定距离时,是否自动将焦点调整到屏中心
164 NERDTreeAutoCenterThreshold 与NERDTreeAutoCenter配合使用
165 NERDTreeCaseSensitiveSort 排序时是否大小写敏感
166 NERDTreeChDirMode 确定是否改变Vim的CWD
167 NERDTreeHighlightCursorline 是否高亮显示光标所在行
168 NERDTreeHijackNetrw 是否使用:edit命令时打开第二NerdTree
169 NERDTreeIgnore 默认的“无视”文件
170 NERDTreeBookmarksFile 指定书签文件
171 NERDTreeMouseMode 指定鼠标模式(1.双击打开;2.单目录双文件;3.单击打开)
172 NERDTreeQuitOnOpen 打开文件后是否关闭NerdTree窗口
173 NERDTreeShowBookmarks 是否默认显示书签列表
174 NERDTreeShowFiles 是否默认显示文件
175 NERDTreeShowHidden 是否默认显示隐藏文件
176 NERDTreeShowLineNumbers 是否默认显示行号
177 NERDTreeSortOrder 排序规则
178 NERDTreeStatusline 窗口状态栏
179 NERDTreeWinPos 窗口位置('left' or 'right')
180 NERDTreeWinSize 窗口宽
我的配置:
1 "NERD Tree
2 let NERDChristmasTree=1
3 let NERDTreeAutoCenter=1
4 let NERDTreeBookmarksFile=$VIM.'\Data\NerdBookmarks.txt'
5 let NERDTreeMouseMode=2
6 let NERDTreeShowBookmarks=1
7 let NERDTreeShowFiles=1
8 let NERDTreeShowHidden=1
9 let NERDTreeShowLineNumbers=1
10 let NERDTreeWinPos='left'
11 let NERDTreeWinSize=31
12 nnoremap f :NERDTreeToggle