一、vim的三种模式

1、命令模式

一进入vim默认的就是命令模式。命令模式下,用户在键盘上按下任意一个键就会产生一个命令(前提是该字符是vim的命令,如若不是会响铃一下)。

2、插入模式

进入插入模式的后,可以输入文本。

3、末行模式

末行模式也是输入相关的命令,不过不像命令模式那样命令不能显示,且命令不能有空格,在末行模式下一个命令可由多个字符组成在末行显示出来,且中间还可以有空格。

三种模式间的转换:

命令模式<-------->插入模式

命令模式<-------->末行模式

所有的转换如上所示,不存在插入模式到末行模式的直接转换。

  • 任意模式--->命令模式 : ESC键
  • 命令模式--->插入模式 : i
  • 命令模式--->末行模式 : 冒号:

以上只是简单的一个介绍,其实命令模式到插入模式有很多种方式,每种方式进入插入模式的插入方式也是不一样的,会在日后的使用过程中逐步完善。

二、vim简单使用

1、启动vim

在linux的shell命令行中输入vim fileName或vi fileName即可进入vim。如果当前目录下有fileName这个文件,则打开这个文件,否则新建一个fileName文件。刚进入vim为命令模式。

2、编辑文本

在命令模式下,按下键盘的i或I(i的大写)键,进入插入模式,在该模式下你可以像window下的文本编辑器一样编辑你的文本。

3、保存退出

当编辑好文本以后,可以按下ESC键返回命令模式,然后输出冒号:,进入末行模式,输入w保存文件,命令执行后又回到命令模式,再输入冒号和q退出vim。注意也可以连用wq,意思为保存并退出,若不想保存直接在末行模式输入命令q退出即可。

注意,如果你编辑的是只读文件的话,用w是写不了的,要用w!来强制写,当然如果你没有写该文件的权限还是写不了,必须在进入vim的时候加sudo获得权限。除此之外,如果你修改了文件没有保存直接q的话,也是退不出来,必须强制退出q!.

至此就可以使用vim编辑文本了,但这是vim最基础的功能,只使用这些功能只能确保能够编写文本,却不能高效的编写文本,如何能够高效的编写文本,可以在实践中慢慢的学习。

三、末行模式

vim只是一个文本编辑器,可以用于编写任何文本,但对程序员来讲主要的还是用来编辑程序。只用上面的模式编辑程序,会发现vim真的不好用,程序的缩进都要自己输入,还没有语法高亮显示,与其他的编辑器相差太远了。但vim是可以设置的,可以通过修改vimrc文件来修改vim的系统配置,也可以在末行模式下修改其配置。注意vimrc文件有两处,一处在/etc/vim中,一处在用户的home目录中,修改前者对所有用户都生效,修改后者只对当前用户生效。如果在末行模式下,相当于修改后者(但重启后配置失效)。末行模式主要有两种功能:

  • 配置vim
  • 操作文件

1、配置vim

  • set nu    显示行号     set nonu    取消显示行号
  • set cindent    设置C/C++语言的自动缩进方式
  • set shiftwidth=4     设置缩进为4个空格
  • set tapstop=4    设置制表符宽度
  • set syntax on    设置语法高亮      set syntax off   取消语法高亮(如果在设置语法高亮的时候没有起作用,可以在/etc/profile文件中加入export TERM=xterm-color)
  • 括号自动补全设置  inoremap < <><ESC>i   格式为: inoremap 左符号  完整符号对<ESC>i

至此就算搭建了一个简易版的C/C++程序的编辑器啦,相比原始的vim这个要好用很多。

如果还想进一步改善vim达到IDE的那种效果可以用ctag来辅助,具体见这里。

2、操作文件

除了前面所讲的写文件、退出等外,还有其他的一些操作。

  • ?word  从光标之前开始查找         /word  从光标之后查找
  • n   按照前面的搜索方式查找下一个     N     按照前面的方式反向查找
  • num   光标跳转至num行

四、命令模式

  • dd   删除光标所在的一整行
  • yy   复制光标所在的一整行
  • p/P  p在光标下一行粘贴,P在光标上一行粘贴
  • u    撤销
  • x/X  x从光标处向后删,X从光标处向前删(类似于backspace)

五、命令模式进入插入模式的方式

  • i/I      i在光标处插入,I在光标后第一个非空格字符处插入
  • o/O   o在光标下一行插入,O在光标上一行插入

以上只是vim的一些简单的使用,后续会在实践的基础上,根据需要继续完善。

 

参考:

1、vim教程:  http://www.runoob.com/linux/linux-vim.html

2、vim语法高亮设置:  http://www.cnblogs.com/zhanghaifeng/archive/2012/07/16/2592998.html

3、vim代码自动补全: http://blog.csdn.net/g_brightboy/article/details/14229139

Posted on 2017-07-21 11:46  小小旅行商  阅读(160)  评论(0编辑  收藏  举报