vim超级快捷方式

  • Post author:
  • Post category:其他


vim工具是vi的升级版本,功能比后者要强大,但是那么多的命令是不是都要全部记得住呢?答案是否定的,只要记住平时用得最多的几个就足够。编辑代码不外乎不就是删除,复制,定位,查找,恢复,替换等等,因些认为只要记住下面的十来个应该就足够了,如果真要把vim的全部快捷方式都背下来,相信还是相当有难度的,毕竟功能实在是太强大了。下面列几个使用频率最高的:

1. 快速复制n行:

$  nYY

2. 删除光标所在的一行

$ dd

3.  定位某行N

:N

4. 向后翻一页

Ctrl + F           //其实F

orward,翻译成中文就是向前

5. 往回翻一页

Ctrl + B         //backward,相信会一点英文就会明白是回头的意思,呵呵我暂且这样理解

6.  粘贴

P                 //Past  相信只要会用鼠标右键的人都会有印象,它就是粘贴

7.  移动到下一个字开头

W

8.  返回到上一个字的开头

B

9.  剪切n行再粘贴

ndd

P

10.  搜索关键字string

/string        //用n可以向下翻看,从前往后查找

?string      //用n可以向上翻看,从后往前查找

11.  全部替换

:%s/string1/string2/g      //把string1全部替换成string2,后面的g表示全文替换,要是没有这个可能只会替换光标所在的字符

12.  删除当前光标后面的一个字符

x

13.  翻半页

ctrl-d     ctlr-u

d=down      u=up

14.  直接跳到最后一行

Ctrl  + G

15.   直接跳到最前面一行

g

16. 恢复光标所在行被删除的资料

u   //可以恢复光标所在的行

U   //可以恢复光标所在的列

17.  D   //表示删除从光标所在处到所在行末尾的所有内容


还有看到很多情况下,vim编辑是没有显示行号的,这样可能给我们阅读代码带来困难,本人也遇到这样情况,在网上正好看到这篇文章,按照它的方法确实是可以实现显示行号,所以把它也给转过来,以备忘。由于找不到最原始的来源链接,无法注明,在此特别感谢提供此原创文章的好人。

在终端下使用vim进行编辑时,默认情况下,编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。

在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:

$vi ~/.vimrc

设置完后

$:x 或者 $wq

进行保存退出即可。

下面给出一个例子,其中列出了经常用到的设置,详细的设置信息请参照参考资料:

“双引号开始的行为注释行,下同

“去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限

set nocompatible

“显示行号

set number

“检测文件的类型

filetype on

“记录历史的行数

set history=1000

“背景使用黑色

set background=dark

“语法高亮度显示

syntax on

“下面两行在进行编写代码时,在格式对起上很有用;

“第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;

“第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编

“写上很有用

set autoindent

set smartindent

“第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格

set tabstop=4

set shiftwidth=4

“设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号

set showmatch

“去除vim的GUI版本中的toolbar

set guioptions=T

“当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声

set vb t_vb=

“在编辑过程中,在右下角显示光标位置的状态行

set ruler

“默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示

set nohls

“查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一

“个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依

“次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词

“时,别忘记回车

set incsearch

“修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀

if has(“vms”) //注意双引号要用半角的引号” ”

set nobackup

else

set backup

endif

如果去除注释后,一个完整的.vimrc配置信息如下所示:

set nocompatible

set number

filetype on

set history=1000

set background=dark

syntax on

set autoindent

set smartindent

set tabstop=4

set shiftwidth=4

set showmatch

set guioptions-=T

set vb t_vb=

set ruler

set nohls

set incsearch

if has(“vms”)

set nobackup

else

set backup

endif

如果设置完后,发现功能没有起作用,检查一下系统下是否安装了vim-enhanced包,查询命令为:

$rpm –q vim-enhanced

参考资料:

1.vim的完全翻译版在下面连接处可以找到

http://vimcdoc.sourceforge.net/

可以下栽其中的一个PDF版本,里面介绍的很详细,强烈推荐:)

2.更详细的vim信息可以访问:

http://www.vim.org/

3.一个带有英文注释的.vimrc例子

http://www.vi-improved.org/vimrc.php

此文讲解的是vim编辑多字节编码文档(中文)所要了解的一些基础知识,注意其没有涉及gvim,纯指字符终端下的vim。



版权声明:本文为Hens007原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。