Vim快捷键大全
- 格式:pdf
- 大小:127.77 KB
- 文档页数:4
是为性能和提升效率而设计的,并且在大多数基于unix 的系统上普遍存在。
它有大量的快捷键可用来快速导航到文件的特定位置,以便进行快速编辑。
Vim 导航基础vim <filename> # 在 Vim 中打开 <filename>:q # 退出 Vim:w # 保存当前文件:wq # 保存文件并退出 Vim:q! # 退出 Vim 并且不保存文件# ! *强制* 执行 :q,因此没有保存就退出 Vim:x # 保存文件并且退出 Vim,是 :wq 的简写版本u # 撤销CTRL+R # 重做h # 左移一个字符j # 下移一行k # 上移一行l # 右移一个字符# 在行内移动0 # 移到行首$ # 移到行尾^ # 移到行内的第一个非空白字符处# 在文本中查找/word # 光标之后的所有该词都高亮显示?word # 光标之前的所有该词都高亮显示n # 查找后将光标移到该词的下一个出现位置N # 光标移到该词的上一个出现位置:%s/foo/bar/g # 将文件每一行上的所有 'foo' 都改成 'bar':s/foo/bar/g # 将当前行上的所有 'foo' 都改成 'bar'# 跳到字符处f<字符> # 向前跳移到 <字符> 上t<字符> # 向前跳移到 <字符> 的左侧# 例如,f< # 向前跣到 < 上t< # 向前跳移到 < 的左侧# 按词移动w # 前移一个词b # 后移一个词e # 移到当前词的末尾# 移动的其它命令gg # 移到文件顶部G # 移到文件末尾:NUM # 移到第 NUM 行 (NUM 是任意数字)H # 移到屏幕顶部M # 移到屏幕中间位置L # 移到屏幕末尾模式:Vim 基于模式这个概念。
命令模式- Vim 启动后就处于这个模式,用于导航和操作命令插入模式- 用于在你的文件中进行修改可视模式- 用于高亮文本并对它们进行操作Ex 模式- 用于跳到底部的':' 提示行上输入命令i # 在光标位置前,将 Vim 切换到插入模式a # 在光标位置后,将 Vim 切换到插入模式v # 将 Vim 切换到可视模式: # 将 Vim 切换到 ex 模式<esc> # 无论你当前处于什么模式,都返回到命令模式# 复制和粘贴文本y # 复制所选的内容yy # 复制当前行d # 删除所选的内容dd # 删除当前行p # 在当前光标位置后粘贴复制的文本P # 在当前光标位置前粘贴复制的文本x # 删除当前光标位置处的字符Vim 的'语法'Vim 可以被认为是按'动词-修饰词-名词' 格式编排的一组命令:动词- 你的动作修饰词- 你如何执行你的动作名词- 你的动作所作用于的对象关于'动词','修饰词',和'名词' 的几个重要例子:# '动词'd # 删除c # 修改y # 复制v # 可视化选择# '修饰词'i # 内部的a # 周围的NUM # 数字 (NUM 是任意数字)f # 查找文本并位于其上t # 查找文本并停于其前面/ # 从光标处开始查找字符串? # 在光标前查找字符串# '名词'w # 词s # 句子p # 段落b # 块# 示例 '语句' 或命令d2w # 删除 2 个词cis # 修改段落内的内容yip # 复制段落内的内容 (复制你所在的段落)ct< # 修改直到括号开启处# 对你的当前位置直到下个括号开启处的内容进行修改d$ # 删除直到行尾一些快捷键和技巧<!--TODO: Add more!-->> # 将所选内容缩进一级< # 将所选内容取消缩进一级:earlier 15m # 将文档还原到 15 分钟前的状态:later 15m # 逆转上述命令ddp # 相邻行交换位置,先 dd 再 p. # 重复之前动作宏宏基本上来说就是可录制的动作。
VIM使用快捷键总结1、光标定位快捷键:H -> 光标定位到屏幕上方M -> 光标定位到屏幕中间L -> 光表定位到屏幕下方b -> 光标向前移动上一个单词词头B -> 光标向前移动一个big-word的单词词头e -> 光标向后移动下一个单词的词尾E -> 光标向后移动下一个big-word的单词词尾w -> 光标向后移动到下一个单词的词头W -> 光标向后移动到下一个big-word的单词词头u -> undo 取消操作Ctrl+r -> redo 恢复操作r -> 在命令模式中,覆盖当前字符R -> 进入编辑模式,覆盖当前字符,也就是替换模式Ctrl+t -> 在编辑模式,向右缩进一格Ctrl+d -> 在编辑模式,向左缩进一格2、当前行定位快捷键:zt -> 把当前行放到屏幕的最上方zb -> 把当前行放到屏幕的最下方zz -> 把当前行放到屏幕的中间1 / 113、光标不动,屏幕上翻,下翻:Ctrl + e:光标不动屏幕上翻Ctrl + y:光标不动屏幕下翻4、在命令模式,增加/减少数字:Ctrl + x:使光标下的数字做减1操作Ctrl + a:使光标下的数字做加1操作5、函数名字匹配:Ctrl + x Ctrl + p:在输入模式,写出一个不完整的函数名字后,按ctrl+x ctrl+p,vim自动向上匹配函数名字,如果名字不对,继续按ctrl+pCtrl + x Ctrl + n:在输入模式,写出一个不完整的函数名字后,按ctrl+x ctrl+n,vim自动向下匹配函数名字,如果名字不对,继续按ctrl+n6、单词操作:yaw:复制一个单词caw:修改一个单词daw:删除一个单词在VIM中用iw或者aw表示一个单词,两者稍有区别。
viw:选择光标所在的单词(v进入visual模式,然后iw)yiw:复制光标所在的单词查找的话就是两个很常用的明令:# 和*7、在输入模式怎么方便的执行命令模式才可以运行的命令:2 / 11Ctrl + o:在输入模式,可以运行在命令模式下执行的命令8、Visual模式:v:在命令模式按v,进入视图模式,用h、j、k、l 进行选择,然后通过y、c、d进行复制,剪切,删除操作Ctrl+v:块选择Shitf+v:整行选择gv:选择上一次选择的块怎么在100行代码前加上//呢?a、把光标定在这100行代码的首位置;b、Ctrl+v,99+j,这样就选中了这100行代码第一列c、通过I(大写的i),进入插入模式,并且是光标定在第一行的行首d、输入//,然后按ESC键,奇迹出现了,下面的99行全自动加上了//9、字符串替换:1, $ s/niu/jie/gc:从第1行到文件结尾,将其中含niu字符串的替换为jie,每替换一个均有询问是否替换gc也可以用?来替换,:1, $ s/niu/jie/?(但是我没实验成功)询问:replace with /niu (y/n/a/q/l/^E/^Y)?,按y便替换了:%s/niu/jie/g:将个文件中含有niu字符串替换为jie,不询问是否替换斜杠可以换成任意的字符,比如:+、-等举例::%s+niu+jie+g 将全文件中三个字符”niu”替换为”jie”:%s-jie-/niu-g 将全文件中三个字符”jie”替换为”/niu”3 / 1110、窗口分裂:vsplit 将窗口竖着分裂出一个,其简写vsp:split 将窗口水平分裂出一个,其简写sp:new filename 和split相同怎么在窗口间移动光标呢?Ctrl+w后,按h、j、k、l进行上下左右窗口移动光标。
Vim快捷键⼤全总结⼀下笔记,与喜欢vim的朋友分享。
vim是我最喜欢的编辑器,也是linux下第⼆强⼤的编辑器。
虽然emacs是公认的世界第⼀,我认为使⽤emacs并没有使⽤vi进⾏编辑来得⾼效。
如果是初学vi,运⾏⼀下vimtutor是个聪明的决定。
(如果你的系统环境不是中⽂,⽽你想使⽤中⽂的vimtutor,就运⾏vimtutor zh)正常模式:可以使⽤快捷键命令,或按:输⼊命令⾏。
插⼊模式:可以输⼊⽂本,在正常模式下,按i、a、o等都可以进⼊插⼊模式。
可视模式:正常模式下按v可以进⼊可视模式,在可视模式下,移动光标可以选择⽂本。
按V进⼊可视⾏模式,总是整⾏整⾏的选中。
ctrl+v进⼊可视块模式。
替换模式:正常模式下,按R进⼊。
vim -c cmd file: 在打开⽂件前,先执⾏指定的命令;vim -r file: 恢复上次异常退出的⽂件;vim -R file: 以只读的⽅式打开⽂件,但可以强制保存;vim -M file: 以只读的⽅式打开⽂件,不可以强制保存;vim -y num file: 将编辑窗⼝的⼤⼩设为num⾏;vim + file: 从⽂件的末尾开始;vim +num file: 从第num⾏开始;vim +/string file: 打开file,并将光标停留在第⼀个找到的string上。
vim --remote file: ⽤已有的vim进程打开指定的⽂件。
如果你不想启⽤多个vim会话,这个很有⽤。
但要注意,如果你⽤vim,会寻找名叫VIM的服务器;如果你已经有⼀个gvim在运⾏了,你可以⽤gvim --remote file在已有的gvim中打开⽂件。
:e file --关闭当前编辑的⽂件,并开启新的⽂件。
如果对当前⽂件的修改未保存,vi会警告。
:e! file --放弃对当前⽂件的修改,编辑新的⽂件。
:e+file -- 开始新的⽂件,并从⽂件尾开始编辑。
:e+n file -- 开始新的⽂件,并从第n⾏开始编辑。
vim快捷键清空⽂件所有内容
vim清空⽂件所有内容
在使⽤vim编辑器的时候,有时候编辑⼀个⽂件,⽽⽂件内容⽐较多,如果需要快速清空整个⽂件,可以使⽤⼀下命令:
在命令模式下,⾸先执⾏
gg
这⾥是跳⾄⽂件⾸⾏
再执⾏:
dG
也就是直接按 ggdG
这样就清空了整个⽂件!
还有⼀种⽅法就要退出VIM,然后使⽤echo > file ,这样也能快速清空⽂件内容,当然你也可以删除了这个⽂件再新建⼀个就是了。
vim搜索设置⾼亮
linux vim打开⽂档搜索字符串时,设置被搜索到字符串⾼亮显⽰。
有两种⽅法:
1、临时设置:vim打开⽂档-->命令⾏形式输⼊set hlsearch。
缺点:关闭⽂档后,下次打开,⼜需要重新设置⼀遍。
2、永久设置(推荐):在~/.vimrc中配制
vim ~/.vimrc
在⽂件中加上set hlsearch
然后保存退出便可。
优点:⼀次设置,永久⽣效。
效果如下:。
VIM使用快捷键总结1.光标移动:-h:左移一个字符-j:下移一行-k:上移一行-l:右移一个字符-0:移动到行首-^:移动到行首第一个非空字符-$:移动到行尾- gg:移动到文件开头-G:移动到文件末尾-w:向前跳至下一个单词的开头-e:向后跳至下一个单词的结尾-b:向前跳至上一个单词的开头-(:向前移动一个句子-):向后移动一个句子-{:向前移动一个段落-}:向后移动一个段落2.插入、删除、复制与粘贴:-i:在当前光标处插入-I:在当前行首插入-a:在当前光标后插入-A:在当前行尾插入-o:在当前行下方插入新行-O:在当前行上方插入新行-x:删除当前光标处的字符- dd:删除当前行- dw:删除一个单词-d$:删除从光标到行尾的内容- yy:复制当前行- yw:复制一个单词-p:粘贴复制的内容-u:撤销上一步操作- Ctrl+r:重做上一步操作3.与替换:-/:-n:跳至下一个结果-N:跳至上一个结果- :s/old/new/g:在当前行替换第一个匹配项- :s/old/new/gc:在当前行替换所有匹配项,并进行确认4.文件操作:-:w:保存文件-:q:关闭文件-:q!:强制关闭文件- :wq:保存并关闭文件- :e filename:打开filename文件- :bn:下一个buffer- :bp:上一个buffer- :bd:关闭buffer- :sp filename:水平分屏打开filename- :vsp filename:垂直分屏打开filename- Ctrl+w:窗口切换5.撤销与重做:-u:撤销上一步操作- Ctrl+r:重做上一步操作-U:撤销对整行的修改6.选中与复制:-v:进入可视模式-V:可视行模式- Ctrl+v:可视块模式-y:复制选中内容-d:删除选中内容7.块操作:- Ctrl+v:进入可视块模式-I:在选中块行首插入-A:在选中块行尾插入-x:删除选中块-y:复制选中块-d:删除选中块8.折叠:- zf+光标移动:创建折叠- za:打开/关闭折叠- zc:关闭折叠- zo:打开折叠9.操作历史:- :earlier 10s:恢复到10秒前的状态- :later 10s:撤销到10秒后的状态10.多窗口操作:- Ctrl+w s:水平分割- Ctrl+w v:垂直分割- Ctrl+w j:光标移至下方窗口- Ctrl+w k:光标移至上方窗口- Ctrl+w h:光标移至左边窗口- Ctrl+w l:光标移至右边窗口- Ctrl+w =:调整窗口尺寸相等- Ctrl+w _:窗口最大化(水平方向)- Ctrl+w ,:窗口最大化(垂直方向)。
vim 常⽤快捷键
基本配置
查找替换操作在当前⽂档中快速搜索
在命令模式输⼊,跳到下⼀个,跳到上⼀个。
快速全局替换字符
在命令模式输⼊。
其中代表全局替换global 。
跳转操作快速跳转到某⼀⾏
在命令模式输⼊ ,快速跳转到第⼀⾏
在命令模式下输⼊。
快速跳转到最后⼀⾏在命令模式下输⼊。
快速跳转到⾏⾸在命令模式下输⼊。
快速跳转到⾏尾
在命令模式下输⼊。
分屏操作
纵向分屏在命令⾏模式下输⼊,其中按键可以进⾏补全。
横向分屏在命令⾏模式下输⼊,其中按键可以进⾏补全。
分屏操作中,利⽤进⾏各个窗⼝之间的跳转。
阅读代码必装:的使⽤代码折叠功能
⾸先在中设置添加。
然后在代码中按即可将⼤括号对应的部分代码折叠,折叠好了以后,按可解开折叠。
代码⾃动对齐功能
按、、即可实现代码⾃动对齐。
持续更新中.../要查找的字符串n shift + n :%s /要替换的字符/替换字符/g /g :⾏数gg shift + g shift + 6shift + 4:sp 要操作的另⼀个⽂件名tab :vsp 要操作的另⼀个⽂件名tab ctrl + w ctags .vimrc set fdm=indent # 更多的缩进表⽰更⾼级的折叠zc zo gg =G。
vim阅读c++代码的快捷键未完,待总结1. ⾸先适⽤ctags建⽴当前⼯作⽬录的标签:cd /home/wanglc/WorkDirectoryctags -R or ctags -R *命令结束以后,会⽣成⼀个tags⽂件。
还有⼀个:ctags --sort=yes -R ,可以是ctags查找更快速,适⽤⼆分查找法,个⼈觉得这应该做成⼀个默认的选项。
2. 将这个⽣成的tags⽂件配置到vim中去。
⽅法如下:vi /etc/vimrc打开以后,添加以下语句:set tags=/home/wanglc/WorkDirectory/tagssource /etc/vimrc3. 配置vim的缩进,符合语⾔规则set cindent "设置c风格的缩进4. 配置⾃动代码补全功能在编写代码的时调⽤CTRL+P、CTRL+N也会⾃动搜索tag信息来进⾏补齐。
5. 设置⿏标set mouse=aset scroll=5Ctrl+[⿏标点击函数名] 跳转到函数定义Ctrl+[⿏标右击函数名] 返回原处改正程序中的错误6. 在VIM编辑器中使⽤":make"就可以编译程序,当然其前提是在当前⽬录下有Makefile⽂件。
运⾏完":make"之后,如果程序中有错误,就会显⽰出来。
此时,光标会⾃动指向第⼀个出现错误的地⽅,⽽且你还可以看到错误的提⽰。
其他命令:> ":cl" 列出错误> ":cn" 跳到下⼀个错误> ":cp" 跳到上⼀个错误> ":cnew" 跳到第⼀个错误提⽰:通过设置"errorformat"的值,可以让VIM识别出编译器(⾮gcc)的出错提⽰。
"errorformat"的值是⼀个字符串,它的格式和C语⾔的scanf的字符串格式相似。
IDEAVIM常⽤快捷键总结和使⽤说明---title: ideavim常⽤快捷键总结和使⽤tags:grammar_cjkRuby: true---#### `待办`ideavim⽤于编程的常⽤快捷键说明常⽤快捷键插⼊(光标前)i 和插⼊⾏⾸ I插⼊(光标后)a和插⼊⾏尾A光标按段移动{}跳转到⽅法实现位置 ctl+ alt +b查看实现⽅法ctrl+I跳转到代码段⾸和代码段尾 ctrl+[]跳转到⾏尾$ 跳转到⾏⾸^,从光标位置到匹配的括号%,从光标位置到⾏⾸0(不包含空⽩)f+字符,跳转到光标后第⼀个和字符匹配的字符 ,从光标处删除到指定字符df.(⼩数点)重复刚才的命令F+字符,跳转到光标前第⼀个和字符匹配的字符/ xxx 跳转到光标后第⼀个匹配的字符串刪除:删除引号内到内容(不包含引号),di'或者di",删除引号内的内容(包含引号)删除光标后本⾏所有内容 D移动:⽂本⾏向左移动和⽂本⾏向右移动<< >>常⽤撤销命令u是撤销r 撤销撤销操作显⽰⽂档的变量和⽅法名称提供跳转ctrl+o最近打开的⽂件 Ctrl+e快速打开和隐藏⼯程⾯板 alt+1打开当前光标所在处⽂档 ctrl+shift+space设置以多少⾏为缓冲滚动 :set so=5ctrl+shift+insert 选择从粘贴板粘贴使⽤标记:标记命令使⽤标记当你⽤”G”命令从⼀个地⽅跳转到另⼀个地⽅时,Vim会记得你起跳的位置。
这个位置在Vim中是⼀个标记。
使⽤命令”` `”可以使你跳回到刚才的出发点。
“` `”命令可以在两点之间来回跳转。
CTRL-O命令是跳转到你更早些时间停置光标的位置(提⽰:O意为older). CTRL-I则是跳回到后来停置光标的更新的位置(提⽰:I在键盘上位于O前⾯)。
注:使⽤CTRL-I 与按下键⼀样。
具名标记命令”ma”将当前光标下的位置名之为标记”a”。