专业编辑器VIMV1.5.ppt_第1页
专业编辑器VIMV1.5.ppt_第2页
专业编辑器VIMV1.5.ppt_第3页
专业编辑器VIMV1.5.ppt_第4页
专业编辑器VIMV1.5.ppt_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

專業編輯器VI(vim/gvim)學習,鄭人元 2011-6-15 Update:2016-08-04,如果你已经在使用vim|Gvim-跳转到32页,Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为Unix类系统用户最喜欢的编辑器。,Vim的第一个版本由布莱姆米勒在1991年发布。最初的简称是Vi IMitation,随着功能的不断增加,正式名称改成了Vi IMproved。现在是在开放源代码方式下发行的自由软件。,Vim总会有很多你想不到的功能,它们总在等你的发现和使用。它的强大总在意料之外。,子曰:“工欲善其事,必先利其器。”,布莱姆米勒,布莱姆米勒 Bram Moolenaar (1961年),生于荷兰南荷兰省利瑟,著名程式设计师,在自由软件界素有盛名。他是vim、A-A-P的作者,也是编程语言 Zimbu 的开发者。 右图是2007年12月摄,定理1:vi是完美的。 证明:VI是罗马数字中的6。可以被6整除的自然数是1、2、3。1+2+3=6。因此6是一个完美数。因此,vi是完美的。 -Arthur Tateishi,定理2:vim比完美更美好。 证明:VIM是罗马数字中是代表(1000-6)=994=2*496+2。496可以被1、2、4、8、16、31、62、124、248整除,而且1+2+4+8+16+31+62+124+248=496。因此496是一个完美数。因此,vim是2倍完美+2。也就是VIM比完美更美好。 -NathanT.Oelger,一则格言: 对我来说,vi就是禅。使用vi,就是参禅。每一个命令都是心印。来自内心深处,非有经验不能明白。每一次使用,都会发现真理。 -Satish Reddy,VIM的定理&格言,开始进入vim图示,开始进入gvim图示,安装在indows上的gvim,上面的文件夹vim74是主要程序与文件的存放处 上面的文件_vimrc是indows系统上的设置文件,安装在indows上的gvim,左边是文件夹vim74的内容 Autoload是自动装载的运行库 Colors是语法高亮的颜色风格。 Doc是帮助文件 Keymap是快捷键文件 Lang是界面语言文件 Macros是宏文件 Syntax是语法关键字文件 Tutor是教程文件 根目录上的文件有主程序与主要设置文件,如filetype.vim,vi(vim/gvim)的模式,正常模式(我认为是命令模式) 在正常模式中,用户可以执行非常多的编辑器命令,比如移动光标,删除、修改文本等等。这也是Vim启动后的默认模式。这正好和许多新用户期待的操作方式相反(大多数编辑器默认模式为插入模式)。 Vim强大的编辑能力中很大部分是来自于其正常模式命令。正常模式命令往往需要一个操作符结尾。大多数命令能够灵活组合使用。比那些没有模式的编辑器更加高效的进行文本编辑。对重复操作一般只要加个数字就可以执行多次了。 number command object 或者 command number object,选择模式 这个模式和无模式编辑器的行为比较相似(Windows标准文本控件的方式)。这个模式中,可以用鼠标或者光标键高亮选择文本,不过输入任何字符的话,Vim会用这个字符替换选择的高亮文本块,并且自动进入插入模式。 选择模式的进入一般是用鼠标选择高亮块自动进入的。,可视模式 这个模式与正常模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的“文本对象“也能和移动命令一样用在这个模式中。 可视模式的进入一般是用可视命令进入的。,vi(vim/gvim)的模式,选择模式与可视模式,可视模式,选择模式,vi(vim/gvim)的模式,插入模式 从正常模式进入插入模式有最常见的四种方式:(appendinsert) 1,按 “i“键。在光标所在位置前进入插入模式。 2,按 “I“键。在光标所在行首进入插入模式。 3,按 “a“键。在光标所在位置后进入插入模式。 4,按 “A“键。在光标所在行尾进入插入模式。 进入插入模式之后,编辑器最下面行会显示插入的状态同时光标会闪烁。这时的编辑器与一般常见的编辑器没有太大差别。 插入模式在这个模式中,大多数按键都会向文本缓冲中插入文本。大多数新用户希望文本编辑器编辑过程中一直保持这个模式。 在插入模式中,可以按ESC键回到正常模式。,命令行模式 就是通过输入“:“进入的模式。,Ex模式 这和命令行模式比较相似,在使用“:visual“命令离开Ex模式前,可以一次执行多条命令。 这个模式实际上就是最早的单行编辑器。现在的人可能听都没听过。就是对整个文件的编辑与显示只在一行内进行,实际上很不方便。但执行速度却是最快的。 这个模式对大多数人来说是没有什么价值的,只是为了兼容于VI的功能。 我十多年前使用过单行编辑器,太痛苦,不知自己在干什么。,vi(vim/gvim)的模式,vi(vim/gvim)的模式,其它模式 主要是一些衍生模式 操作符等待模式 插入正常模式 插入可视模式 插入选择模式 替换模式(按“R“就能进入改写的模式)(Insert) EVIM模式 这几种模式可以当不存在。反正你用熟了VIM之后,不会感觉到有它们的存在。,从命令行运行vim(或者vi,或者gvim) 在类UNIX系统或Windows系统中的命令行模式下输入vim回车。 也可以带参数运行。VIM的参数非常丰富,想了解更多可以输入 vim -help 输入“vim *.c *.h *.asm“ 之类的命令可以在一个编辑器内打开多个文件。,通过GUI直接用gvim打开文件 这种方式在类UNIX的X环境与Windows环境都支持。习惯别的编辑器的人更喜欢这种方式。 可以在同一编辑器内同时打开多个不同文件。,由别的IDE环境调用gvim或vim。 IDE设置一下。如果你已经习惯用vim了,非常有必要。 系统注册某类文件全部由gvim打开。,开始进入vi(vim/gvim),进入命令行模式 1,按“ESC“键退到正常模式。 2,输入“:“ 在这个模式下可以输入所有的vim的命令行命令。 保存命令 保存命令是“w“ 退出命令 退出命令是“q“,使用 “:w“回车。是保存当前文件。如果你打开了很多文件都没保存可以“:wa“。 “:wq“回车。是保存当前文件,并退出vim。如果你不想保存就退出可以“:q!“。,保存内容&退出vi(vim/gvim),移动光标(正常模式命令模式), 要移动光标,请依照说明分别按下 h、j、k、l 键。 k 提示 h 的键位于左边,每次按下就会向左移动。 l 的键位于右边,每次按下就会向右移动。 j j 键看起来很象一支尖端方向朝下的箭头。 v 1. 请随意在屏幕内移动光标,直至您觉得舒服为止。 2. 按下下行键(j),直到出现光标重复下行。 现在您应该已经学会如何移动到你想到的地方吧。 提示如果您不敢确定您所按下的字母,请按下键回到正常(Normal)模式。 然后再次从键盘输入您想要的命令。 提示光标键应当也能正常工作的。但是使用hjkl键,在习惯之后您就能够快速 地在屏幕内四处移动光标了。,快速 移动光标1(正常模式),词移动 命令“w“,向后移动几个word并在word尾 直接按键盘“w“,若干次。 还可以先按数字再按“w“。如“38w“就是向后移动38个word 还有一个“W”。与“w”相比,大点。 命令“b“,向前移动几个word并在word头 直接按键盘“b“,若干次。 还可以先按数字再按“b“。如“38b“就是向前移动38个word 还有一个“B“,与“b“相比。word大点。,移动到行首或行尾 “$“ 命令把光标移动到当前行行尾。如果你的键盘上有 键,也可以完成相同的功能。 “0“ 命令则移到一行的第一个字符,键盘上有 键也可以完成相同的功能。 “ 命令把光标移动到一行的第一个非空字符,这对于编程的的缩进功能很有用。,移动到一个指定的字符 在当前行上如你要找到字符“x“直接按键盘“fx“,如果你当前光标后面有多个“x“字符。则光标跳转到多个“x“处,可以多次使用。也可以用“3fx“就跳了3次。 “f“是向右查找移动,如果向左查找用“F“。 与之接近的命令是“t“与“T“。意义是to。到“x“前。,快速 移动光标2(正常模式),括号匹配 你写程序的时候,你经常会遇到嵌套的( ) 结构。这时“%“ 是一个非常方便的命令。让你在同一层跳来跳去。特别对于大的程序很方便。,长距离跳转 到文件头用命令“gg“。到文件尾用命令“G“。 到某一行如1234行,用命令“:1234“。,改变表跳转 “g;“转到改变表里第 count 个较旧的位置。如果 count 比所有的较旧的改变位置都多,回到最老的那个。如果没有较旧的改变,给出一个错误消息。Vi 无此功能 “g,“转到改变表里第 count 个较新的位置。和 |g;| 类似,但朝向相反的方向。Vi 无此功能,快速 移动光标3(正常模式),括号操作 “命令。向前一段跳转。对于C语言来说就是不中函数中的跳转。 “命令则向前一段跳转。在C语言中这两个命令是停在“上的。 “/“命令把光标移动到上一处注释处。 “/“命令把光标移动到下一处注释处。 “开头的命令还有几十种。如“#“之类的。,本页面内跳转 “H“命令光标跳到本视图内的最上一行行首。 “M“命令光标跳到本视图内的中间一行行首。 “L“命令光标跳到本视图内的最下一行行首。,快速 移动光标4(正常模式),删除类命令(正常模式),删除操作 “dd“命令。删除当前行。 “dw“命令。从光标位置开始删除一个word包括空格。 “de“命令。与“dw“差不多只是不包括空格。 “x“命令。删除光标处字符。 “d$“命令。从光标开始一直删除到这行尾。 “D“命令。从光标开始一直删除到这行尾。 以上的命令都可以加入数字重复执行。 如“d3d“=“3dd“等等。而且删除的内容存在缓存中。可以用“p“命令粘贴出来。,撤消类命令(正常模式),撤消操作 1. 输入 u 撤消最后执行的(一次)命令。 2.输入一个大写的 U ,恢复到该行的原始状态。 3. 多次输入 u 以撤消 U 以及更前的命令。 4. 多次输入 CTRL-R (先按下 CTRL 键不放开,接着输入 R 键) ,这样就可以执行恢复命令,也就是撤消掉撤消命令。 5.“:red“命令重做一个被撤销的更改。(vi不支持) 6.“g-“命令转到较早的文本状态。如果带计数,重复那么多次。 7.“g+“转到较新的文本状态。如果带计数,重复那么多次。,置入类命令 “p“命令。将最后一次删除的内容置入光标之后 等同于其它编辑器的粘贴。,更改操作 1. 输入 r 和一个字符替换光标所在位置的字符。 2. 把光标放在单词 lubw 的字母 u 的位置那里。 3. 然后输入 cw 就可以修正该单词了(在本例这里是输入 ine 。) 4. 输入 “c$“ 使得该行剩下的部分更正得“line“。最后按 键。 在块选择模式下也能使用“r“命令。,更改类命令(正常模式),定位及状态(正常模式) 输入 CTRL-g 显示当前编辑文件中当前光标所在行位置以及文件状态信息。 输入 SHIFT-G 则直接跳转到文件文件最后一行。,定位及状态(命令行模式) “:buffers“命令;“:files“命令;“:ls“命令;列出当前已知的文件名。在同一个VIM内同时已经装入的文件。,定位及文件状态,搜索类命令(正常模式),搜索操作 “/“命令。 尾随的字符串可以用以在当前文件中查找该字符串。 1. 在正常模式下输入 / 字符。您此时会注意到该字符和光标都会出现在屏幕底部,这跟 : 命令是一样的。 2. 接着输入 errroor 。那个errroor就是您要查找的字符串。 3. 要查找同上一次的字符串,只需要按 n 键。要向相反方向查找同上一次的字符串,请输入 Shift-N 即可。 4. 如果您想逆向查找字符串,请使用 ? 代替 / 进行。,搜索类命令(正常模式),搜索操作 模式 光标位置 /test/+1 “test“ 下一行,第一列 /test/e “test“ 的后一个 t /test/s+2 “test“ 中的 s /test/b-3 “test“ 前的第三个字符 / 内指定的任何字符之 一。 如/acdfh 则同时查找“afh“,“cfh“,“dfh“。 如/0-98h 则同时查找“08h“,“18h“,“88h“,“98h“. /abc|efg 可以查找“abc“或者“efg“。 在VIM里是支持正则表达式的。,搜索类命令(正常模式),搜索操作 s 空白字符; 和 S 非空白字符:s 之反 d 数位: 0-9 D 非数位: 0-9 x 十六进制数位: 0-9A-Fa-f X 非十六进制数位: 0-9A-Fa-f o 八进制数位: 0-7 O 非八进制数位: 0-7 w 单词字符: 0-9A-Za-z_ W 非单词字符: 0-9A-Za-z_ h 单词首字符: A-Za-z_ H 非单词首字符: A-Za-z_ a 英文字母字符: A-Za-z A 非英文字母字符: A-Za-z l 小写字符: a-z L 非小写字符: a-z u 大写字符: A-Z U 非大写字符 A-Z,搜索替换操作 输入 :s/old/new/g 可以替换 old 为 new。 输入 :s/thee/the 。请注意该命令只改变光标所在行的第一个匹配串。 输入 :s/thee/the/g 则是替换全行的匹配串。 要替换两行之间出现的每个匹配串,请输入 :#,#s/old/new/g (#,#代表的是两行的行号)。 输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。,在 VIM 内执行外部命令的方法 :!command 执行外部command命令,搜索替换命令(命令行模式),拷贝文本命令(正常模式),拷贝文本操作 “y“命令(yank)。 yanking 是 Vim 中拷贝命令的名字。由于 “c“ 已经被用于表示 change 了,所以拷贝 (copy) 就不能再用 “c“ 了。但 “y“ 还是可用的。 由于 “y“ 是一个操作符,所以 “yw“ 命令就是拷贝一个单词了。当然了,计数前缀也是有效的。要拷贝两个单词,就可以用 “y2w“。 “yy“ 命令拷贝一整行,就像 “dd“ 删除一整行一样。出乎意料地是,“D“ 删除到行尾而“Y“ 却是拷贝一整行。要注意这个区别!“y$“ 拷贝到行尾。 如果你要用系统的剪贴板。要在前面加“*“号。 如:“*yy“拷贝一行到剪贴板。,粘贴文本命令(正常模式),粘贴文本操作 “p“命令(put)。会把你前面删除或拷贝的内容贴出。 如果你删除的是一整行,“p“ 命令把该行插入到光标下方。如果你删除的是一行的一部分(例如一个单词),“p“ 命令会把它插入到光标的后面。 “P“ 命令象 “p“ 一样也是插入字符,但插入点在光标前面。当你前面删除或拷贝的是一行,“P“ 会把它插入到光标所在行的前一行。而当你前面删除或拷贝的是非整行,“P“ 会把它插入到光标前面。 “p“ 和 “P“ 命令接受计数前缀,被插入的文本就会被插入指定的次数。所以 “3p“ 会把删除内容的三个拷贝插入到文本中。,选项配置,配置文件 参考:$VIMRUNTIME/vimrc_example.vim 和帮助文件。 在windows系统中大家要建立配置文件:在你的VIM安装目录下如:“C:Vim” 建立一文件“_vimrc“。如果是类UNIX系统则在你的$Home目录下建立一个“.vimrc“文件。 set nocompatible (设成非与VI兼容的模式) set nu (显示行数) set cin (打开自动C程序缩进) set ai (开启新行自动缩进) set mousehide (输入字符时隐藏鼠标指针) set guifont=Terminal:h17: (设GUI字体) source $VIMRUNTIME/vimrc_example.vim source $VIMRUNTIME/mswin.vim source $VIMRUNTIME/colors/ron.vim behave mswin,设置文件类型,设置文件类型的文件filetype.vim 下面文件的高亮部分是我加入的 *.vb文件类型的自动加载,分割窗口命令,分割窗口操作 “:split“命令(“:sp“)。这个命令把屏幕分解成两个窗口并把光标置于上面的窗口中。等同于CTRL-W s CTRL-W w 命令可以用于在窗口间跳转。 “:close“命令(“:clo“)。用于关闭窗口。等同于CTRL-W c “:only“命令。这个命令关闭除当前窗口外的所有窗口。如果要关闭的窗口中有一个没有存盘,Vim 会显示一个错误信息,并且那个窗口不会被关闭。等同于CTRL-W o 要扩大窗口高度: CTRL-W + 要缩小窗口高度: CTRL-W - 要扩大窗口宽度: CTRL-W 要缩小窗口宽度: CTRL-W ,分割窗口命令,分割窗口操作 如果你已经在一个VIM中打开了多个文件,你可以用“:sba“命令。这个命令把屏幕分解成多个窗口并打开各个不同的文件。 “:copen“命令可以打开编译窗口。如果你的当前目录下有makefile文件。你可以运行“:make“命令来编译你的项目。 在这个编译错误窗口里你还能跳转到错误的相应文件行。 如果我用CTRL+V 打开了两个文件,并且我想比较下这两个文件的不同,可以在左边窗口输入“:diffthis“.然后CTRL+W w跳到右边窗口输入“:diffthis“。,折叠命令,什么是折叠? 折叠用于把缓冲区内某一范围内的文本行显示为屏幕上的一行。就像一张纸,要它缩短些,可以把它折叠起来: 折叠的好处是,通过把多行的一节折叠成带有折叠提示的一行,会使你更好地了解对文本的宏观结构。 把光标置于某一段落内,并键入: “zfap“。你会看到这一段变成了一行。|zf| 是个操作符,而 |ap| 是一个文本对象。你可以将 |zf| 操作符跟任何一个移动命令联用,为所经之处的文本创建一个折叠。 |zf| 也能在可视模式下使用。 “zo“打开该折叠命令。要若要再阅读那些文本,可以键入这个命令以打开该折叠。你还可以再用“zc“命令关闭折叠。 所有的折叠命令都以 z 开头。展开你的想像力,这个字母看起来就像一张折叠起来的纸的侧面。,折叠命令,折叠功能 而 “z“ 后面可用的字母,由于采用了帮助记忆方法选择,很容易记得住: zf F-old creation (创建折叠) zo O-pen a fold (打开折叠) zc C-lose a fold (关闭折叠) 假定你已经创建了若干折叠,而现在需要阅览全部文本。你可以移到每个折叠处,并键入“zo“。若要做得更快,可以用这个命令: “zr“。相反的操作是:“zm”这将折叠更多 (M-ore)。 如果你有一个嵌套了好几层深的折叠,你可以用这个命令把它们全部打开:“zR“这将减少折叠直至一个也不剩。 而用下面这个命令你可以关闭所有的折叠:“zM“这将增加折叠,直至所有的折叠都关闭了。 用 “zn“命令快速禁止折叠功能。然后“zN“恢复原来的折叠。“zi“ 切换于两者之间。还有按语法折叠功有等。,录制宏命令,录制宏功能(正常模式)Vi: 没有记录功能 “q0-9a-zA-Z“命令。 在寄存器 0-9a-zA-Z 里记录键入的字符 (大写名字的寄存器表示附加键入的内容)。“q“命令不能在执行寄存器时使用。同样,在映射里也不能。 “q“命令停止记录。(注意 实现细节: 停止记录的 “q“不会被保存在寄存器里,除非它是映射的结果)。 “0-9a-z“.=*执行寄存器 0-9a-z“.=*的内容count 次。 注意 不能用寄存器 % (当前文件名)和 # (轮换文件名) 。“=“则会提示你输入一个表达式。这个表达式的结果会被执行。 “:“重复上次的命令行。 例子:“qa“输入“i“做n步操作,完成后按ESC,再按“q“. 输入“a“就执行了刚才录的a宏。就是“输入“i“做的n步操作”。 如果你想执行29次a宏,只要输入“29a“,自增自减命令,自增自减宏功能(正常模式) 比如我们要把所有的年份数据全部加上一年。或减去三年。 1,/190-90-9|200-90-9回车 2,这时你只要按CTRL+A就能在当前年份上自动加一。 3,如果你按3CTRL+X就能在当前年份上自动减三。 【说明】在类UNIX系统中上述命令是可行的,但在Windows系统上你按CTRL+A却是选择全部文字的功能。 这时你要去VIM的官方网站去下一个脚本文件“speeddating.vim”到你的VIM安装路径上就可以了。 对于上面的情况,我们对下一数据的操作只要按下“n“就会跳下下一个年份,再按“.“就会执行上一次执行的操作。 /,竖块编辑命令,竖块编辑功能(正常模式) 在类UNIX系统中按CTRL+V命令进入竖块的可视化模式,在Windows系统上你要按CTRL+Q命令进入竖块的可视化模式。 这是你可以用“h“,“j“,“k“,“l“,“w“,“e“,等等功能移动光标。拖动竖块的大小。 你可以对选择的竖块范围内的数据进行“x“剪切,剪切之后“p“粘贴。 可以用“r“命令把选中的内容全部改写。 可以用“命令把选中的内容全部大写改小写,小写改大写。,自己的书签,位置标记功能(正常模式) 命令“ma-zA-Z“把位置标记 a-zA-Z 设在当前光标位置 (不移动光标,这不是动作命令)。 “m“或“m“设置前次上下文标记。以后可以用 “ 或者 “ 跳转到这个位置 (不移动光标,这不是动作命令)。 “m“或“m“设置 或者标记。可以用在执行多个命令的操作符的定义中。 (不移动光标,这不是动作命令)。 “:rangemark a-zA-Z“把位置标记 a-zA-Z 设在 range 的最后一行,第 0列。缺省的 range 是当前行。 “:rangeka-zA-Z“和:mark相同,但空格可以省略。 你要跳到你上面自己做的书签,用“a-z“就会跳转到当前缓冲区的位置标记。 “(“到当前句子的开始处,“)“到当前句子的结尾处,“到当前段落的开始处,“到当前段落的结尾处。,在整个工程中跳转,标签文件功能 (SourceInsight3.5用过否) 标签文件是外部程序创建的,比如 “ctags“。对每个函数,它会包含一个标签。有些版本的 “ctags“ 会为每个 “#define“ 宏、类型等价定义 (typedef)、枚举 (enum) 等也创建标签。 能产生标签文件的程序有:ctags ,exuberant ctags,etags,JTags,ptags.py,ptags,gnatxref等等。 你要下载一个最近的ctags程序放到VIM的安装目录下。 在命令行模式运行“:!ctags -R .“这样会生成一个在当前路径上的tags文件。 在你编辑程序时如果有个常量定义记不清楚了,想看一下。或者函数定义想看一下,就非常方便了。 “CTRL+“命令直接跳转到你光标所在的字符串的定义处,或者你调用的函数的原型中。不在同一文件中也是快速跳转。跳回你刚才的位置只要用“CTRL+T“,在整个目录中搜索,目录中搜索功能 (很多IDE都有这功能) “:vimgrep! /pattern/gj file .“ 在文件 file . 里搜索模式 pattern,并用匹配结果设置错误列表。如果没有 g 标志位,每行只加一次。 如果有 g,每个匹配都被加入。pattern 是 Vim 的搜索模式。除了用 / 之外,任何非 ID 字符 (见 |isident) 都可以用来包围该模式,只要在pattern 里不出现就行了。适用 ignorecase。要否决该设置,在模式里用 |/c| 来忽略大小写或 |/C| 来匹配大小写。不使用 smartcase。如果命令前面带数字,它定义要寻找的最大匹配数目。这样,“:1vimgrep pattern file“ 只会找到第一个。这可以用于只想检查是否有匹配而在找到后能快速退出的场合。如果没有 j 标志位,Vim 跳到第一个匹配上。如果有 j,只更新 quickfix 列表。如果有 !,放弃当前缓冲区的任何修改。大约每过一秒,显示正在搜索的文件名,让你了解当前的进展情况。 例如: :vimgrep /an error/ *.c *.h :vimgrep / *.h include/* :vimgrep /myfunc/ */*.c 这时你可以打到信息窗口。“:copen“命令打开。 “:cp“找前一个,“:cn“找后一个。,目 录 探 索 命 令,目录探索命令 “:NExplore! dir.“ 探索当前文件所在的目录 “:NHexplore! dir.“ 水平分割并探索 “:Rexplore .“ 返回到浏览器 “:NSexplore! dir.“ 分割并探索当前文件所在的目录 “:Texplore dir.“ 建立新标签页并探索 “:NVexplore! dir.“ 垂直分割并探索 用于 :Explore */模式 : (另见 |netrw-starstar|) “:Nexplore.“ 转到下一个匹配的文件 “:Pexplore.“ 转到前一个匹配的文件 “!“使用垂直分割。 “:Rexplore“ 此命令和其它的有所不同。当用在 netrw 浏览器窗口的文件上按 等方式编辑文件时,:Rexplore 会重新显示上次的 netrw 浏览器窗口。它是 的命令行版本 (后者只有在 gvim 和有相应支持的终端才存在)。,使用Scripts 使用网络上别人编写好的脚本。 选择自己有用的脚本。 安装与配置使用的脚本。 解决不同脚本之间的冲突。,自己编写Scripts(编程)。 对自己特殊的需求,编写脚本,提高效率。,不同操作系统上的VIM的使用。 不同操作系统的功能键,与配置不同。,VIM的高级应用,网站上有可爱的人编写的Scripts,增加功能,左边的网页中,点左边List表中的Scripts ,我们看到的Script之类的最大的下载量的两个脚本是taglist.vim 和 The NERD tree 下面的页就介绍其中的NERDTree 命令集。,上有可爱的人编写的Scripts,脚本分类 color Scheme ftplugin game indent syntax utility patch,大多数只要COPY相关的文件到路径$VIMVIM74,有的要COPY到$VIMVIMfiles 如:cvim的脚本控件。,如Ctags的控件。 COPY文件ctags.exe到$VIMVIM74就可以使用ctags工具。 见43Page,安装上页的脚本的方式,taglist /scripts/script.php?script_id=273 taglist_46.zip,ctags.exe /scripts/script.php?script_id=2288 ctags.exe,几个脚本的安装使用-taglist,taglist安装与说明,taglist安装细节 1.下载taglist.zip文件并将文件解压缩到$HOME/.Vim或 $HOME/vimfiles或$vim/vimfiles目录。 在这一步之后,你应该有以下两个文件(目录结构应该被保存): plugin/taglist.vim -主要taglist插件文件 doc/taglist.txt -文件(帮助)文件 参考|add-plugin|,|add-global-plugin|和|runtimepath| Vim 帮助更多有关安装页。 2.切换到$HOME/.vim /doc或$HOME/vimfiles/doc或$VIM/vimfiles/doc目录下,启动Vim并运行“:helptags“命令即可处理标签列表帮助文件。如果没有这一步,你不能跳转到标签列表帮助主题。 3.如果扩展的ctags.exe工具不存在你的PATH中,请设置Tlist_Ctags_Cmd变量指向扩展的ctags.exe实用工具的位置(不要目录)在.vimrc文件中。 4.如果你正在运行的Vim终端/控制台版本和终端不支持改变窗口宽度,请设置“Tlist_Inc_Winwidth“变量为0,在. vimrc文件中。 5.重新启动Vim。 6.现在你可以使用“:TlistToggle“命令打开/关闭的标签列表窗口。你可以使用“:help taglist“命令来获得更多信息有关使用标签列表插件。,运行之后的taglist,The NERD tree /scripts/script.php?script_id=1658 nerdtree.zip V4.2.0,The NERD Commenter /scripts/script.php?script_id=1218 nerdcommenter.zip V2.3.0,几个脚本的安装使用-NERD tool,CSV (A Filetype plugin for csv files) /scripts/script.php?script_id=2830 SrcExpl-5.3.zip V5.3,Trinity /scripts/script.php?script_id=2347 Trinity-2.1.zip V2.1,几个脚本的安装使用-csv,几个脚本的安装使用-SrcExpl,/scripts/script.php?script_id=2179 源代码工具。类似“Source Insight 3.5” 下载SrcExpl-5.3.zip 2013-09-15 v5.3 VIM v 7.0,CSV,SrcExpl对应的配置内容,nmap :SrcExplToggle let g:SrcExpl_WinHeight=8 let g:SrcExpl_refreshTime=100 let g:SrcExpl_jumpKey=“ let g:SrcExpl_gobackKey=“ let g:SrcExpl_pluginList = “_Tag_List_“, “_NERD_tree_“ let g:SrcExpl_searchLocalDef = 1 let g:SrcExpl_isUpdateTags = 0 let g:SrcExpl_updateTagsCmd = “ctags -sort=foldcase -R .“ let g:SrcExpl_updateTagsKey = “ let g:SrcExpl_prevDefKey = “ let g:SrcExpl_nextDefKey = “,灵活的“”,左边的窗口列出的路径上的文件,用键盘的回车键也可以打开,用鼠标也能打开。 右上的窗口是主文件的编辑窗口。与普通vim的窗口一样。 右下的窗口是编译窗口,如果用自己的MakeFile编译,能方便查看出错信息,也可以用vim查找不同文件之间的字符串(如同左图)。 用cn命令可以自动跳转到下一个“出错”位置。,标识符 含义 等价于 十进制数值 - 零 CTRL- 0 (存储为 10) * 退格键 CTRL-H 8 *backspace* 制表符 CTRL-I 9 *tab* *Tab* *linefeed* 换行符 CTRL-J 10 (用作 ) 换页符 CTRL-L 12 *formfeed* 回车符 CTRL-M 13 *carriage-return*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论