vim部分命令
文件命令
- vim text.html
打开单个文件
- :args
查看当前打开的文件列表,当前正在编辑的文件会用[]括起来。
插入命令
- i 在当前位置 前插入
- I 在当前行首 插入
- a 在当前位置 后插入
- A 在当前行尾 插入
- o 在当前行之后 插入一行
- O 在当前行之前 插入一行
查找命令
- /text 查找text,按n查找下一个,N查找前一个。
vim中有一些特殊字符在查找时需要转义 .*[]^%/?~$
- :set noignorecase 不忽略大小写的查找
查找时,可以将光标移动到该词上,按*或#键既可以对该单词进行搜索,星键相当于/搜索,#相当于?搜索。 - :set hlsearch 高亮搜索结果。
- :nohlsearch 关闭当前的高亮显示,按下n或N重新高亮。
替换命令
- ra 将光标所在字符替换为a
移动命令
许多命令可以和数字配合使用,如3h,相当于执行3次向前移动一个字符。(带*表示可以和数字配合使用。)
- h 向前移动一个字符*
- j 向下移动一行*(如果一行应为窗口宽度而折叠成两行,移动命令j依旧将其视为一行。)
- k 向上移动一行*(如j)
- l 向后移动一个字符*
- w 到本单词尾部*
- b 到本单词头部*
- e 到下一个单词倒数第二个字母尾部*
- ge 到上一个单词倒数第二个字母尾部*
- $ 移动到本行最末*
- gg和H 到文件头
- G和shift+g 移动到文件尾
- ^ 到本行第一个非空白字符前
- 0和HOME键 移动到本行最前
- :101和101G 跳到101行
- Ctrl+e 向下滚动一行
- Ctrl+y 向上滚动一行
- Ctrl+d 向下滚动半屏
- Ctrl+u 向上滚动半屏
- Ctrl+f 向下滚动一屏
- Ctrl+b 向上滚动一屏
撤销
- u 撤销
删除命令
- dl和x 删除光标后面一个字符*
- dh和X 删除光标前一个字符*
- dd 删除当前行*(相当于剪切,按p或P后可以进行粘贴)
- dj 删除本行和下一行*
- dk 删除本行和上一行*
- D和d$ 删除该行光标后所有字符
- :1,10d 删除1-10行
- :11,$d 删除11及以后的所有行
- J 删除与上一行之间的空行,合并到上一行
删除命令其实就是平时用的剪切命令。都可以在删除后使用p或P进行粘贴。可灵活运用。
拷贝和粘贴
- yy 拷贝当前行*
- p 在当前行下粘贴
- P 在当前行上行粘贴
- :1-10 co 20 将1-10行插入到第20行之后
- :1,$co$ 将整个文件拷贝一份到文件尾部
- v和V 分别进入逐字和逐行的可视模式。然后用hjkl命令移动即可进行选择,在按y即可复制
- ddp 交换当前行和下一行,实际为剪切该行,再粘贴
- ddP 交换当前行和上一行
- :1,10m20 将1-10行移动到20行之后
退出命令
- :wq和ZZ 保存并退出
- :q! 强制退出并且忽略所有更改
- :e! 放弃所有修改,并且打开原来的文件