前端秋风随笔秋风随笔

远古神器VIM的必备指令

2016-12-24  本文已影响69人  秋风喵

查看作者原文

vim是个很好的编辑器,远古神器嘛,当你熟悉了这个编辑器你的逼格是不是瞬间就会高了许多
首先安装vim
当然学习一个编辑器都是为了方便自己,提高效率,可是vim这个文本编辑器的学习曲线是陡峭的
但苦练会让你带来搞效率
而我自己在用git命令的时候再配合vim确实是很强大的开发组合,虽然vim没有代码提示,但是它本身其实是有很多的插件供使用的,当我们git提交代码的时候,用vim来对代码进行解决冲突和编辑都是非常方便的
VIM下载
vim
启动vim

imageimage

i
Insert模式,按 ESC 回到Normal模式
反正如果不知道现在是在什么模式下,就一直按ESC,回到Normal模式,下面功能键都是在Normal模式触发的

imageimage

此时Insert模式跟记事本一样


imageimage

操作vim会经常在这两个模式下切换,就如同在记事本中你在选项卡和编辑内容窗口中切换一样


imageimage
imageimage
只不过这里大部分变成了键盘操作

所以在Normal模式下,键盘上所有的键都变成对应的功能键了,就如同我们按c跟按ctrl+c一样,c在后面就变成了对应的功能键了

x
Normal模式下,按x删除当前光标所在的一个字符

imageimage
其实这个相当于Insert模式下的退格键

:wq
保存+退出vim(:w 保存 :q 退出) 后面跟文件名

imageimage
这个相当于记事本中的文件->(保存)另存为

dd
删除当前行,并把删除的行保存到剪贴板里面,也是IDE里面常用的,快速删除一行代码,不用长按退格了

p
粘贴剪切板,这个功能挺常用的,如果在外面复制完东西,直接在vim界面按p就可以粘贴了

yy
复制当前行到剪切板

imageimage

help
显示相关命令的帮助

imageimage

:q
退出
:q!
不保存直接退出

imageimage

a
在光标后插入,如果本来光标不在最后就会自动帮你定格到最后输入

imageimage

o
在当前行后面插入一个新行,相当于记事本一行的最后敲回车键

imageimage

0
按数字0就是到行头,跟a是相反的

imageimage

^
这个是要结合shift+6,到本行第一个非blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)

imageimage

$
光标切换到本行行尾

imageimage

/pattern
搜索 pattern 的字符串

imageimage
如果搜索出多个匹配,按n可以定位到下一个
imageimage

u
撤销 就是Undo

imageimage
这个功能基本IDE都是有的,挺常用的,如同我用PS时候ctrl+z那样方便

ctrl+r
重做 也就是Redo

imageimage

:e <文件路径/文件名>
打开一个文件,这个在cmd中我常常cd到指定目录,然后dir显示再用vim来打开相应的文件来进行编辑

imageimage

:w
保存

imageimage
保存后会出现written的提示
imageimage

:saveas <文件路径/文件名>
另存为

imageimage
保存成功后也会出现written的提示
imageimage
有一点需要注意的是如果只是保存或者另存为但是一直没有退出vim编辑的话,文件会一直以下图后缀在文件夹
imageimage
但是如果保存并退出了,就会变成保存时候定义的文件名和后缀了
imageimage

:x
ZZshift+z
:wq
上面这三个都是保存并退出,注意ZZ是不需要输入冒号和回车的

imageimage

:q!
退出但不保存
:qa
强行退出所有的正在编辑的文件,就算别的文件有更改

:bn
:bq
有时候我们需要打开多个文件,就是在一个文件已经打开的情况下我们可以继续用:e来打开其他文件,当打开多个文件的时候,可以使用上面这两个命令来切换下一个或者上一个文件

imageimage

.
这个命令可以重复执行自己运行的上一个命令

N<命令>
打这个的时候是不可见的,也就是盲打
N就是输入一个数字,比如我输入9p,就会出现下图这个

imageimage

G
将光标定位到最后一行的头部

imageimage

w
到下一个单词的开头。
e
到下一个单词的结尾。

*和#
当你把光标放到catwsscat上的时候按*或者#就会移动到匹配该单词的上一个或者下一个

imageimage

%
匹配括号移动,支持(,{, [,你需要把光标先移到括号上

imageimage

v
进入可视化选择后按键盘的上下左右的方向键都会帮你自动选择

qq 20160603100040qq 20160603100040
可视化选择下
J → 把所有的行连接起来(变成一行)
< 或 > → 左右缩进
= → 自动给缩进 (这个确实挺方便的)
上一篇下一篇

猜你喜欢

热点阅读