VIM教程

一. vim配置需要的插件:

NerdTree、SnipMate、Zenburn(配色包)、vimwiki

二.vim基本操作

1.三个模式的切换 i: 编辑模式;Esc:导航模式;

2.上下左右定位

   h:左 j:下 k:上 l:右 u:撤销

3.光标快速定位:下一个词,上一个词
  w:下一个词 b:上一个词 dw:删除光标所在单词

4.向下一屏,向上一屏
  ctrl+f:下一屏 ctrl+b:上一屏

5.选择多行
  (1)导航模式:shift+v定位到要选中的一行,然后按 j 向下选中多行,按 k 向上选中多行(此方法选中的全部是整行)
  (2)导航模式:在要选中行的某一处按 v 进入可视模式,然后可利用h,j,k,l选择多行的部分内容(此方法在首尾处可选择行的部分内容)

6.搜索
  在导航模式输入: /搜索词-->回车,然后按 n(next),光标移动到下一个相同的词

7.全局替换:在当前整个文件中替换
  :%s/new/MY_NEW -->回车 (% 表示当前整个文件;s 代表单词,是替换的意思;两个斜线中间是需替换和被替换后的内容,表示用MY_NEW替换当前文件中的new)

8.局部替换
  利用第5项的第一条快捷键选中多行内容,然后按shift + : 底部出现 :'<,'> 符号,然后接着命令写 :'<,'>s/=/+/ -->回车,表示在选中的部分内容中用 + 替换 =

9.替换注意事项,某一整行内相同词的替换
  (1)如果某一行或多行内有相同的多个词需同时替换,那么用第7项的全局替换方法,则只能替换掉每行的第一个词,后面相同的词则无法替换,如果需同时全部替换,则用以下命令:
  (2):%s/new/MY_NEW/g -->回车,g表示globle,即全部替换

10.代码补全
  ctrl+n 下一个补全,ctrl+p 上一个补全

11.快速导航-根据文件名称打开文件
  ctrl+t 进入文件搜索模式,按文件名搜索打开文件

12.快速导航-最近打开的文件
  ctrl+e 打开最近打开过的文件

13.快速导航-跳转某一行的开头和行尾
  0 表示跳到行首; shift+4(=>$) 表示跳转到行末

14.快速导航-文件的首行和尾行
  gg 表示跳转到文件首行; shift+g(=>G) 表示跳转到文件的末行

15.快速导航-跳转到最近编辑的位置
  (1)g; 表示重新打开文件后,跳转到最后编辑的位置,接着按 g; 跳转到倒数第二次编辑的位置,依次类推;
  (2)g, 表示与上面反顺序跳转;

16.快速导航-跳转到最近打开的文件
  ctrl+o 表示按顺序跳转编辑过的文件;ctrl+i 表示按反顺序跳转编辑过的文件;

17.复制和粘贴
  (1)yy 表示在导航模式下复制当前光标所在行;接着按 p 自动在下一行粘贴所复制内容;
  (2)shift+v 选中一整行,然后按 y ,复制,按 p 粘贴;
  (3)y+w 复制一个词(注意:复制的部分是从光标位置开始,一般把光标定位在一个词的首字母,才能完整的复制一个词),然后按 p 在光标后粘贴内容;按 shift+p 在被复制词的后面空一字符并粘贴;
  (4)y+w 复制一个词,在编辑模式下,按 ctrl+r,再按 0 粘贴;
  (5)o 表示光标在一行的任意位置,都会跳转到下一行,并切换到编辑模式;shift+o 会跳转到上一行,也同时切换到编辑模式;

18.剪切和复制的历史
  (1)x 表示逐个字符剪切; dd 表示剪切一整行;按 p 进行粘贴;注意:在VIM里,删除就是剪切,
  (2)技巧:可按照第5项第1条进行多行选择,然后按 x或d 进行剪切,再按 p 进行粘贴;

19.进入到编辑模式的不同方法
  导航模式下:
  (1)按 i 切换到编辑模式,在当前光标前插入字符;
  (2)按 a 切换到编辑模式,在当前光标后插入字符;
  (3)按 shift+a ,切换到编辑模式,在当前光标所在行尾插入字符;
  (4)按 o ,切换到编辑模式,在光标所在行的下一行插入字符;
  (5)按 shift+o ,切换到编辑模式,在光标所在行的上一行插入字符;

20.全局查找和替换

21.设置vim的背景色
  esc(导航模式) :set background=dark(slate,light)

22.设置vim的代码高亮方案
  esc(导航模式) :colorscheme vividchalk(前一个属于插件;vim内置代码高亮颜色有:desert,) 注意:搜索关键词 vim colorscheme 有很多插件;

23.横屏分屏和竖屏分屏
  (1):sp 横分屏(光标上下跳转:ctrl+ww);
  (2):vs 竖分屏(光标左右跳转:ctrl+ww);
  (3)分屏较多时,ctrl+w,然后配合h,j,k,l进行上下左右跳转;
  (4):q 退出分屏;

24.为代码多行注释
  (1)shift+v,配合 j,k 选中多行,然后直接按 : ,出现 :'<,'> ,然后接着命令符写 :'<,'>s/^/\# ( / 表示分隔符;^ 表示在行首;\ 表示转义符),表示对选中的多行用 # 注释;取消注释为::'<,'>s/\# (/ 表示分隔符,此处也可省略不写;\ 表示转义符)
  (2)如果是用 // 注释,则写为 :'<,'>s/^/\/\/ ;取消注释为::'<,'>s/\/\/
  (3)注意:为代码注释是可以设置快捷键的,一般设置为:,cb ;

25.代码格式化
  vim只提供了初级基础层次的代码格式化,如果代码的缩进格式不标准,选中多行按 = 即可进行格式化;有些语言代码vim不支持,需查找相关插件;

26.使用rails插件
  安装词插件后,可在不同文件之间跳转,比如: model-view-ctroller 不同层级之间的文件;快捷键需看视频操作

27.显示和隐藏代码行数
  显示代码行数命令: :set nu(number) ; 取消代码行数显示命令::set nonu(nonumber)

28.折叠过长的代码
  如果一行的代码很长,可把光标定位到当前行,然后使用命令::set wrap 会使一行很长的代码折叠回来显示;
  取消折叠命令::set nowrap

29.粘贴模式
  (1)在源文件复制代码,在vim 中进入编辑模式按 ctrl+shift+v(gvim中ctrl+v也可以,vim中自己试试),通常情况代码格式会有多行逐层的缩进;但中文一般不会有问题;
  (2)在复制粘贴代码时,一定要进入粘贴模式进行代码粘贴,这样格式不会变化;粘贴模式 :set paste-->回车,再按 i 键,出现INSERT(paste)字样,则表示 vim 进入粘贴模式;
  (3)进入粘贴模式进行粘贴剪贴板的代码时,格式不会变化;
  (4)退出粘贴模式 :set nopaste-->回车;只有退出粘贴模式后,才能再重新打开别的文件;所以通常情况下,用完粘贴模式需及时退出;

30.代码左移,右移和undo,redo
  (1)shift+v 选中要移动的代码行,按 shift + > 进行右移;shift + < 进行左移;
  (2)移动代码后,可以按 u(undo) 进行撤销;再可按 ctrl + r(redo) 进行重做;

31.把多行代码合并成一行
  (1)shift+v选中多行代码,然后按 shift+j 即可把多行代码合并成一行;
  (2)也可直接按 shift+j 把光标所在行的下一行,合并到上面一行;可不停的做此操作,即可将下一行逐行的合并到上面的代码行;

32.最佳实践
  (1)准确的把光标定位到第n行的行首的命令::n(n表示左侧的行数)
  (2)另一种方法为 /hello--> 表示把光标定位到文件中的hello单词上;
  (3)快速打开文件 ctrl+t ,会在vim上面出现 >File> 提示符,接着输入 >File>**/目录/文件名,即可出现下拉菜单,菜单里有匹配文件名的多个文件,然后进行选择需要的文件;
  (4)ctrl+e vim下面会出现一栏最近打开过文件,进行选择需要的文件;
  (5)在最近打开的文件中,可按 ctrl+o , ctrl+i 进行文件之间的跳转;


 

posted @ 2018-10-21 09:59  zgfraymond  阅读(106)  评论(0)    收藏  举报