VIM 应急10分钟指南


     本文不是VIM手册或者指南,只是试图在你得心应手的IDE不在身边时就如何使用Vim完成简单的编辑任务提供快速参考。对比常见的GUI文本编辑器,
Vim就有点不一样了,它有两种模式:输入模式和命令模式。按下ESC键就会进入命令模式,可以输入各种Vim命令。当处于命令模式时,按下“:”,
VIM将进入另一种最后一行模式。这种模式可以方便大家输入命令。在命令模式下,输入"i"或者"a",vim将切换到输入模式。注意:vim命令区分大小写。

作为一个应急的代码编辑器,通常需要如下操作:
1、编辑、文本行定位
  • 输入模式->按下"i/a"键将使vim在当前字符前/后进入输入模式。按下"O/o"将分别在当前光标的上/下方向打开一个空白行。
  • 移动光标->如果你是用的终端没有方向键,那就使用h、j、k、l(小写的L)向左、下、上、右移动光标。不记也没关系,就按下这几个键试试光标怎么移动。
  • 删除文本->在输入模式下,可以使用退格键;在命令模式下,x、dw、dd分别删除一个字符、一个字、一行,"X"删除光标左边的字符,可以在前面给他们加上数字(重复因子)
2、查找、替换
  • 查找->f将从当前位置从当前行查找指定字符,如查找字符'a':fa
          /将在整个工作区域查找与正则表达式(不了解就使用具体的字符串)匹配的文本或者字符串 
  • 替换->"r"将替换当前字符(一个)
          "R"将从当前一直替换下去,直到按ESC键返回
          替换字符串的语法格式:
          :[g][address]s/搜索的字符串/目标字符串/[/option],格式不算简单,常用的就简单了:
           :s/old string/new string/g 在当前行中将所有“old string” 修改为“new string”
           :1,100s/old string/new string/g 从第1行替换到100行
           :%s/old string/new string/g 替换所有行
[/option]有两个常用选项[g]、[c],可以组合使用,其中[g]表示“所有”的意思,如果没有这个参数,就替换第一次出现的地方,加上[c]选项后,替换时将会征求用户意见, 可以略过某些不想替换的匹配点。 如何忽略大小写呢?在需要忽略的字符前加入"\c":
 
3、复制、剪切、粘贴、撤销、重做
  • 复制->yy  如果输入10yy,就是从当前行向下复制10行
  • 剪切(删除)->执行删除命令会将已删除的文本放入缓冲区,当然,你可以一次删除n个字(ndw)、n行(ndd)
  • 粘贴->p/P,小写的命令表示插入到当前字符之后,大写的命令表示把他们插入到当前字符之前
  • 撤销->u
  • 重做->“control+r”或者输入命令":redo"
4、保存、另存为
"ZZ"命令或者":w"都已将新内容写入磁盘,其中ZZ用于快速保存后退出的快捷操作。
5、格式化代码
  • 显示/隐藏行号->:set nu/:set nonu
  • 设置tab->:set tabstop=x (我设置为4,当然,它可以是任何你希望的值)
  • 设置函数缩进->:set shiftwidth=x (我是设置为4)
  • 格式化代码->gg=G
6、执行外部命令
在命令模式下->:![要执行的命令],比如:!ps aux|grep vim
但是如果要执行目录下的Makefile,直接输入:make即可。
如果编译出错,可以通过:cn或者:cp向后/前跳转到错误处:
make错误后,使用命令:cope,效果更直观:

7、退出
  • 退出-> q
  • 不保存退出-> q!

关于范围的说明:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值