标签:
本篇文章转自 酷 壳 – CoolShell.cn,作者是陈皓。不过这里只转载了一部分个人认为常用的技巧,并做了些小调整,这里Vim的版本是7.3。
Vim 7.3上测试可行
首先,我们先从浏览代码开始。有时候,我们需要看多个文件,所以,传统的做法是,我们开多个tty终端,每个tty里用Vim打开一个文件,然后来回切换。这很没有什么效率。我们希望在一个Vim里打开多个文件,甚至浏览程序目录。
浏览目录的命令很简单:(你也可以直接vim一个目录)首先,我们先从浏览代码开始。有时候,我们需要看多个文件,所以,传统的做法是,我们开多个tty终端,每个tty里用Vim打开一个文件,然后来回切换。这很没有什么效率。我们希望在一个Vim里打开多个文件,甚至浏览程序目录。
浏览目录的命令很简单:(你也可以直接vim一个目录)
:Ex
当然,打开的文件会把现有已打开的文件给冲掉——也就是说你只看到了一个文件。
如果你要改变当前浏览的目录,或是查看当前浏览的目录,你可以使用和shell一样的命令:
:cd <dir> – 改变当前目录
:pwd - 查看当前目录
其实,你用:Ex 浏览打开的文件都没有被关闭,这些文件都在缓冲区中。你可以用下面的命令来查看缓冲区:
:ls
:buffer 4
:buffer src/http/ngx_http.c
你还可以动用如下命令,快速切换:
:bnext 缩写 :bn
:bprevious 缩写 :bp
:blast 缩写 :bl
:bfirst 缩写
相信你在《Vim的窗口分屏》一文中,你已经知道了怎么拆分窗口了。其实,我更多的不是用拆分窗口的命令,而是用浏览文件的命令来分隔窗口。如:
把当前窗口上下分屏,并在下面进行目录浏览:
:Hex 全称为 :Hexplore (在下边分屏浏览目录)
:He! (在上分屏浏览目录)
:Ve 全称为 :Vexplore (在左边分屏间浏览目录,要在右边则是 :Ve!)
要让两个分屏中的文件同步移动,很简单,你需要到需要同步移动的两个屏中都输入如下命令(相当于使用“铁锁连环”):
:set scb
:set scb!
字符相关
【guu 】 把一行的文字变成全小写。或是【Vu】
【gUU】 把一行的文件变成全大写。或是【VU】
按【v】键进入选择模式,然后移动光标选择你要的文本,按【u】转小写,按【U】转大写
【ga】 查看光标处字符的ascii码
【g8】 查看光标处字符的utf-8编码
【gf】 打开光标处所指的文件 (这个命令在打到#include头文件时挺好用的,当然,仅限于有路径的)
【*】或【#】在当前文件中搜索当前光标的单词
缩进相关
【>>】向右给它进当前行
【<<】向左缩进当前行
【=】 缩进当前行 (和上面不一样的是,它会对齐缩进)
【=%】 把光标位置移到语句块的括号上,然后按=%,缩进整个语句块(%是括号匹配)
【G=gg】 或是 【gg=G】 – 缩进整个文件(G是到文件结尾,gg是到文件开头)
光标移动相关
【Ctrl + O】向后回退你的光标移动
【Ctrl + I 】向前追赶你的光标移动
这两个快捷键很有用,可以在Tab页和Windows中向前和向后trace你的光标键,这也方便你跳转光标。【Ctrl + O】向后回退你的光标移动
系统相关
【K】(大写K),调出当前光标下系统函数的manual手册
标签:
原文地址:http://my.oschina.net/hoolev/blog/415348