VIM命令及添加快捷键

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

1. 快速复制n行:

   $  nYY

2. 删除光标所在的一行

    $ dd

3.  定位某行N

    :N

4. 向后翻一页

   Ctrl + F           //其实Forward,翻译成中文就是向前

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


添加C语言常用头文件:

1 .  vim   /etc/vim/vimrc

2 .  添加下面代码

"定义F4为热键
map <F4> ms:call Title()<cr>
"添加头文件
function AddTitle()
call append(0,"/**********************************************")
"call append(1," *  File Name:".expand("%:t"))
"call append(1," *  File Name:".expand("%:p:h"))
call append(1," *  File Name:".expand("%:p"))
call append(2," *  Created  @ ".strftime("%Y-%m-%d %H:%M"))
call append(3," *  Author   : Gec")
call append(4," *  E-mail   : 2821537943@qq.com")
call append(5," **********************************************/")
call append(6," ")
call append(7,"#include <stdio.h>")
call append(8,"#include <sys/types.h>")
call append(9,"#include <sys/stat.h>")
call append(10,"#include <fcntl.h>")
call append(11,"#include <unistd.h>")
call append(12,"")
call append(13,"int main(int argc, char **argv)")
call append(14,"{")
call append(15,"    ")
call append(16,"    exit(0);")
call append(17,"}")
endf
"判断需要添加否
function Title()
let n=1
while n<5
let line=getline(n)
if line=~ '^.*Created.*$'http://write.blog.csdn.net/postedit?ref=toolbar
return
endif
let n=n+1
endwhile
call AddTitle()
endfunction
 
这里是其他命令
set ai                  -------------------------------------------设置自动缩进
set tags+=./tags  这里是添加索引,需要先在对应目录下ctags -R 之类  ,此为相对路径写法
set tags+=/usr/include/tags   ---此为绝对路径写法

添加索引:

 1. 在目标路径下面, ctags -R   (R是指为该目录下的所有文件建变量索引)
    得到的tags文件及其所在目录,需要告诉给 /etc/vim/vimrc
 2 . 在/etc/vim/vimrc写的格式是
    set  tags+=具体的路径/tags

 3 . 做索引或者跳转
      光标放在要搜索的对象上
        ctrl + ] 搜索原型 

       ctrl + o  是返回索引的上一层



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值