vim常用快捷键

  关于基本操作:

  vim有两种模式(有的人觉得是三种),命令模式和输入模式,任何时候在输入模式下按ESC就会回到命令模式,命令模式下很多普通的按键就具有相应的命令的作用;

  比如命令模式下j,k,h,l表示上下左右,其中j表示下,想象j是向下的就不会忘记了,这四个键很重要,不要用上下左右键,可以节省时间;

  命令模式下,按i可以在当前位置进入输入模式(insert的意思)指针就在当前位置,I会在行首,a会在当前位置的下一位置,A会在行尾,o会在下一行输入,而O会在上一行输入;


  打开和关闭:

  终端中输入vim **可以打开相应文件,命令模式下输入:w表示保存文件,:q表示退出(没保存的时候会提示),:q!表示强制退出不保存,:x表示保存并退出。 

  在vim中可以:e **打开文件,:w **.**将文件另存为。

  在vim中:sp **表示打开并列窗口,Ctrl+w之后可以用jkhl进行并列窗口之间的切换。


  关于vim配置:

  vim的字符编码(防止乱码)、行号是否显示、语法高亮支持、快捷键等等都可以进行个性化配置,还可以下载插件让它更强大,linux下vim的配置文件在~/.vimrc里,windows下vim的配置文件在vim\_vimrc里,网上有很多人上传了自己的配置文件,但是经过很多 次尝试的结果告诉我,太全面太强大不一定就好,适合自己能提高效率才行。


  关于撤销与恢复操作:

  vim中u代表撤销(undo),而Ctrl+r代表恢复(redo),这两个步骤是可以无限次进行的,当然退出了当前编辑的文件再回来就没了。 

  还有一个按时间撤销操作的方法是输入:earlier  10s代表回到10秒前的状态,单位可以是s,h或者min。


  关于复制粘贴删除:

  d代表删除delete,

  dw代表删除当前单词,d3w代表删除之后的3个单词,

  dd代表删除当前行,3dd代表删除3行,dd之后内容会存储到默认寄存器里,可以使用p粘贴出来,

  yy代表复制当前行,3yy代表复制3行,p代表粘贴默认寄存器的内容,

  d可以配合t(till)使用,比如dt$表示删除到行尾,dt(表示删除到下一个(,这里如果本行没有(那么不会有动作的。


  关于跳转:

  ^代表跳到行首非空的地方,$代表跳到行尾;

  b跳到上一个单词,w跳到下一个单词;

  跳到匹配的括号%;

  gg切到文档开头,G切到文档结尾;

  Ctrl+F向下翻页,Ctrl+B向上翻页,想着B是back就不会搞错。

  [[ 向前跳到顶格第一个{  ,

  [] 向前跳到顶格第一个},

  ]] 向后跳到顶格的第一个{,

  ]] 向后跳到顶格的第一个},

  [{ 跳到本代码块的开头,

  ]} 跳到本代码块的结尾。

  25G或者25gg代表切到第25行。

  ma到mz可以存储书签到当前位置,需要时`a到`z跳转到相应书签,还可以:marks查看所有的书签。


  关于寄存器(剪切板):

  vim提供了很多的寄存器,可以使用:reg命令查看所有寄存器中的内容,假如要复制 + 寄存器中的内容,那么就是用命令"+p,这样复制的好处是无视vim的自动缩进功能,文字的格式可以被保存下来。还可以在复制的时候选择复制到指定的寄存器,比如把当前行复制到+寄存器就是“+yy;

  还有就是在linux中如果Ctrl+C了一段内容但是在vim的寄存器中找不到的话,那是没有安装gvim的原因,sudo apt-get install vim-gnome即可(或者vim-gtk)。


  关于宏:

  qa到qz表示开始录制宏并会存储到a到z之间的宏记录,

  按q结束录制,

  按@a到@z可以执行宏,

  @@表示执行上次执行的宏,

  100@@表示重复执行100次上次执行的宏(还有很多命令都可以在前面加上数字表示执行的次数或者其他参数)

  关于数字序列:

  Ctrl+x会让本行的第一个数字减小1,Ctrl+a会让本行第一个数字增加1,配合宏使用可以很快的更改数字序列;


  关于自动补全:

  vim中默认的是Ctrl+n和Ctrl+p智能提示,挺有用的。


  输入外部命令:

  vim中:!ls 表示在shell中输入ls这个命令,其他的依次类推。


  关于查找替换:

  查找关键字/***,n向下搜索,N向上搜索;
  基本替换 :s/s1/s2 (将下一个s1替换为s2);
  全部替换 :%s/s1/s2;
  只替换当前行 :s/s1/s2/g;
  替换某些行 :n1,n2 s/s1/s2/g。


  查找和替换是vim里很神奇的一个功能,因为它支持正则表达式,但是因为正则表达式替换用的很少所以,这个方面留到以后熟悉了再写。。。。鄙视



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值