1复制上一行到下一行 yyp 2光标不动,屏幕内容滚动 Ctrl+E,Ctrl+Y <C-N><C-P> ;: 插入模式下自动完成填词 <C-X><C-L> ;: 行自动完成(超级有用) /<C-R><C-W> ;: 把单个<cword>单词放入搜索或者命令行 /<C-R><C-A> ;: 把字符串中有的单词<CWORD>放入搜索或者命令行 <C-O> ;: 依次沿着你的跳转记录向回跳 (从最近的一次开始) <C-I> ;: 依次沿着你的跳转记录向前跳 ;:----------------------------------------------------------------------------- ;:" 在分割窗口中快速切换 map <C-J> <C-W>j<C-W>_ map <C-K> <C-W>k<C-W>_ ;:----------------------------------------------------------------------------- 从剪切板复制到vim: "+ "*两个剪切板是系统剪切板。 快捷方式“Shift+Insert”就可以了,如果你在使用Gvim的话,直接用鼠标中键也可起到相同的作用。 VIM具有多个剪切板,目的是为了用户在做较复杂的字符处理的时候,可以更方便的复制粘贴。请现在使用一下“:reg”命令 把剪贴板的编号带上不就可以了?现在先按ESC,退出编辑模式,然后一词按 "+p这三个字符 如 何将系统剪切板里的内容复制进VIM当中,您已经清楚了。那如何将ViM中复制的字符粘贴到其他地方呢?很简单,我们只需要把要复制的文字,复制进" +剪切板不就可以了?("+剪切板是系统剪切板,忘记了?)在VIM中,复制的指令是y(在非编辑模式下按y就可以了),那要将文本复制进指定的剪切板, 和粘贴指定剪切板内容的方法一样,只需要加上剪切板的编号就可以了。举个例子,我们希望把VIM中的一段文本复制下来,然后粘贴到浏览器的地址栏中:第一 步,现把需要复制的文字选中(非编辑模式下),然后在键盘上依次按"+y这三个字符,OK!已经复制下来了,现在用:reg命令看看,是不是在"+剪切板 中了? f<a>:移动光标到当前行的字符a上,nf<a>移动光标到当前行的第n个a字符上 用于整体移动代码,调整代码时很方便。 set shiftwidth=4 shift + < 左移一行 shift + > 右移一行
你可以很快的将游标移到所在行的任何位置 $ 移到游标所在行的行尾 ^ 移到该行第一个非空白的字元 0 移到该行的开头位置 #| 移到该行的第 # 个位置 例: 5| 12|如果找本行一个字符,可以用f后者t,然后使用;,继续查找
; 重覆上一个 f, t, F, 或 T 的动作 , 反向重覆上一个 f, t, F, 或 T 的动作 % 寻找有无对应的 () {} 或 [] H 移到游标到画面的最上方 (HIGHEST) M 移到游标到画面的中间 (MIDDLE) L 移到游标到画面的最下方 标示位置 -------- 你可以在档案□做些标记再随时返回被标记的位置. m char (MARK) 把这个地方标示成 char ' char (quote character) 跳到被标为 char的那一行 '' (按两次') 回到刚才的位置 char 可以是小写的 a-z中的任一个 . 一个标记在除了下面的这两种情况 外会一直存在 1) 重覆使用相同的标示 char . 或 2) 删掉了被标示的那一行.
文字段落 -------------- 有时候一段一段的移动游标会比较方便.我们可以用 {,},(,) 来达到这些功能 { (左大括号) 跳到上一段的开头 } (右大括号) 跳到下一段的的开头. ( (左小括号) 移到这个句子的开头 ) (右小括号) 移到下一个句子的开头 [[ 跳往上一个函式 ]] 跳往下一个函式
重复输入同一字符 --------------
有时,我们可能想多次输入同一字符,VIM的插入功能可以很好的完成这项工作 命令 80i=^ESC 一次可以输入80个字符= ,当然,80a=^ESC 也可以完成上述功能。 请注意:此处的^ESC表示键盘左上方上的ESC键。
替换: -------------- :s/src/dst 将本行搜索到的第一个 src 替换为 dst :%s/src/dst 将全文所有的 src 替换为 dst :s/src/dst/g 将本行的 src 替换为 dst :$,$... s/src/dst/g 在指定范围内替换src为dst,其中 $,$... 为指定行号,例: :2,5,6 s/hi/hello/g
去除搜索后的高亮显示: --------------
在Vim里编辑文件,搜索过后会一直对关键字高亮,很是不方便,使用如下命令即可取消高亮:
:noh
或者
:nohlsearch
利用grep.vim进行搜索
-------------------
nnoremap <silent> <F3> :Grep<CR>
在cpp和.h中进行切换
-----------------
利用A.vim AS,或者A命令