文本编辑器有很多,图形模式下有gedit、kwrite等编辑器,文本模式下的编辑器有vi、vim(vi的增强版本)和nano。vi和vim是Linux系统中最常用的编辑器。有人曾这样的说过在世界上有三种人:一种是使用Vi的,另一种是使用是Emacs的,剩下的是第三种人。
(一)初级个性化配置你的vim
1、vim是什么?
vim是ViIMproved,是编辑器Vi的一个加强版,一个极其强大并符合IT工程师(程序员、运维)习惯的编辑器。如果你是一名职业的SE,那么一定在寻找一款出色的能够自由定制、满足灵活编辑功能的编辑器。那么答案,就是vim或者Emacs。
2、配置文件在哪?
Windows系统的配置文件是vim安装目录下的vimrc文件。
Linux系统,RHEL和CentOS的配置文件是/etc/vimrc,Debian和Ubuntu的配置文件是/usr/share/vim/vimrc。
MacOSX的配置文件是/usr/share/vim/vimrc。
3、vimRC中的RC是什么意思?
为什么把这么个没有意义的问题也列出来?原因很简单,就是我在接触vim之初第二个想问的问题就是这个(第一个就是上面的1)。一般在运行某个软件、环境或工具之初,要初始执行的一些命令,称为RunCommands,即RC。根据Wikipedia.org的记载,RC缩写的用法源自MIT的相容分时操作系统(CompatibleTime-SharingSystem,CTSS)[参考1]。所以以后如果你看到了SystemRC或者ScreenRC,也就知其缘由了。
4、三种基本模式
在《大家来学vim》中提到vim有6+5种模式,但除了细分程度不同外,实际上常用的只有3种模式:NormalMode、InsertMode和Command-lineMode。
从NormalMode进入InsertMode,可以按i、I、a、A、o、O、r、R即可。其中i和I表示插入(Insert),r和R表示替换(replace)。
从InsertMode进入NormalMode,只需要按ESC键即可。
从NormalMode进入Command-lineMode,可以按:、/、?。其中:表示输入vim命令,/表示后面输入要向下搜索的字符串,?表示后面输入要向上搜索字符串。
从Command-lineMode进入NormalMode,只需要按ESC键即可了。
你可以把NormalMode理解为常态,进入其他任何一种模式,需要某种特殊方式,而从其他特殊模式回到NormalMode,就按ESC键即可。
5、vim中那些最最常用的配置
当你尝试去google一些其他人的vimrc配置时,你一定会找到一篇叫做《Theultimatevimconfiguration》的文章,不过它的作者,Amix后来在他的博客上提到[参考2],这份在google搜索vimrc会排在前十的vim配置文件,如今已经过时了,所以他提供了一些更新信息。
(1)颜色设置
syntaxon开启代码高亮
syntaxoff关闭代码高亮
syntaxenable开启代码高亮
(2)搜索设置
sethlsearch开启搜索高亮
setnohlsearch关闭搜索高亮
setincsearch输入搜索字符串的同时进行搜索
setignorecase搜索时忽略大小写
(3)用户界面
setshowmode开启模式显示
setruler开启光标位置提示
setnumber显示行号
setnonu不显示行号
setcursorline强调光标所在行
setcmdheight=1命令部分高度为1
(4)编辑辅助配置
setautoindent自动缩进
setnoautoindent不自动缩进
setsmartindent智能缩进
setautoread当文件在外部被改变时,vim自动更新载入
setshowmatch显示匹配的括号
参考:
[1]RunCommands,http://en.wikipedia.org/wiki/Run_commands
[2]TheUltimatevimConfiguration(vimRC),http://amix.dk/blog/post/19486
(二)常用的状态切换按键
1、NormalMode->InsertMode
i小写字母i,在光标位置插入
a小写字母a,在光标的下一个位置插入
I大写字母I,在光标所在行的第一个非空格处插入
A大写字母A,在光标所在行的最后一个字符处插入