正在熟练使用中的vim操作

来源:互联网 发布:蓝牙模块调试软件 编辑:程序博客网 时间:2024/06/07 22:41

一.移动光标

f“命令移动到光标右边的指定字符上,例如,”fx“,会把移动到光标右边的第一个’x’字符上。”F“命令则反方向查找,也就是移动到光标左边的指定字符上。“t“命令和”f“命令的区别在于,它移动到光标右边的指定字符之前。例如,”tx“会移动到光标右边第一个’x’字符的前面。”T“命令是”t“命令的反向版本,它移动到光标右边的指定字符之后。这四个命令只在当前行中移动光标,光标不会跨越回车换行符。可以在命令前面使用数字,表示倍数。例如,”3fx“表示移动到光标右边的第3个’x’字符上。

;“命令重复前一次输入的f, t, F, T命令,而”,“命令会反方向重复前一次输入的f, t, F, T命令。这两个命令前也可以使用数字来表示倍数。

二. 相对于光标滚屏 

在阅读代码时,有时我们需要根据光标所在的位置滚屏,把光标所在行移动窗口的顶端、中间或底部,这时就可以用到”zt“、”zz“和”zb“。这种滚屏方式相对于翻页来讲,它的好处在于,你能够始终以当前光标位置做为参照,不会出现翻几次页后,发现自己迷失了方向。

三.查找指定内容

除了/还可以用?,表示反向查找;另外你还可以使用”q/“和”q?“命令,在vim窗口最下面打开一个新的窗口,这个窗口会列出你的查找历史记录,你可以使用任何vim编辑命令对此窗口的内容进行编辑,然后再按回车,就会对光标所在的行的内容进行查找。


当使用很长的正则表达式时以后就可以很轻松的复用

四.跳转:除了单引号和反引号,如果想要跳转到更老的编辑位置则使用:

ctrl+o和ctrl+l

五.使用标记:

vim中的标记都有一个名字,这个名字用单一的字符表示。大写和小写字母(A-Za-z)都可以做为标记的名字,这些标志的位置可以由用户来设置;而数字标记0-9,以及一些标点符号标记,用户不能进行设置,由vim来自动设置。

小写字母标记局限于缓冲区,也就是说,每个缓冲区都可以定义自己的小写字母标记,各缓冲区间的小写字母标记彼此不干扰。如果我在文件A中设置一个标记t,然后在文件B中也可以设置一个标记t。那么在文件A中,可以用”‘t“命令跳到文件A的标记t位置 ;在文件B中,可以用”‘t“命令跳到文件B的标记t位置。如果文件在缓冲区列表中被删除,小写字母标记就丢失了。大写字母标记是全局的,它在文件间都有效。如果在文件A中定义一个标记T,那么当使用命令”‘T“时,就会跳到文件A的标记T位置,不管你当前处于哪个文件中。设定一个标记很简单,使用命令”m{a-zA-Z}“就可以了。例如,命令”mt“在把当前光标位置设定为标记t;命令”mT“把当前光标位置设定为标记T。(:help m),要跳转到指定的标记,使用命令”‘{a-zA-Z}“或”{a-zA-Z}“。例如,命令”‘t“会跳转到标记t;命令”‘T“会跳转到标记T。( :help ‘),":showmarks"表示显示所有的标记,":delmark t"删除对应的标记t。

如何保存该折叠标记呢?在关闭当前项目之前,执行":mkview"命令,再次打开时执行":loadview"命令

indent折叠命令:

indent方式,vim会自动利用缩进进行折叠,我们可以使用现成的折叠成果.

我们可以在折叠处输入以下命令:

zc 折叠

zC 对所在范围内所有嵌套的折叠点进行折叠

zo 展开折叠

zO 对所在范围内所有嵌套的折叠点展开

[z 到当前打开的折叠的开始处。

]z 到当前打开的折叠的末尾处。

zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。

zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。

当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之:)
我们可以使用下面的命令来创建和删除折叠:
zf      创建折叠,比如在marker方式下:
zf56G,创建从当前行起到56行的代码折叠;
10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。
zd      删除 (delete) 在光标下的折叠。仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zD     循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zE     除去 (Eliminate) 窗口里“所有”的折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效

如下为vim下的折叠形式:



六.会话概念

当进入vim之后执行":mksession [filename]"时即可,文件名可以省略,默认为Session.vim,当再次打开时执行":source filename"即可恢复该会话。

使用":wvimrc [filename]"时可以创建一个viminfo文件,其实默认在主目录中会存在viminfo,但是那是整个vim的信息文件,并不是特定项目的,上述命令用于创建特定项目的文件,读入使用":rviminfo [filename]命令"即可

将前面折叠后的界面执行":mksession"保存到Session.vim中,重新打开该文件,折叠消失,如下:


然后执行":source Session.vim"即可恢复界面,如下:



0 0
原创粉丝点击