vim简要使用说明
2017-08-25 本文已影响0人
tf_dejs
编辑模式
撤销操作
命令模式下按一下“u”撤销一步动作(大写的“U”撤销所有操作),默认对多撤销50次。“Ctrl+r”可恢复撤销。修改/etc/vimrc
中的set history=50
可以修改可撤销的次数
光标移动
-
vim 10 text.sh
打开文件光标显示在第10行 -
字符移动
- j ==> 左
- h ==> 上
- k ==> 下
- l ==> 右
-
单词移动
- w ==> 向后移动一个单词,光标定位在词首
- e ==> 向后移动一个单词,光标定位在词尾
- b ==> 向前移动一个单词
-
句间跳转
- ) ==> 跳到下句
- ( ==> 跳到上句
-
段间跳转
- } ==> 跳到下段
- { ==> 跳到上段
-
行间跳转
- 1G/gg ==> 跳转到第一行
- #G ==> 跳转到#行,#为正整数
- G ==> 跳转至最后一行
-
行内跳转
- ^ ==> 跳至行首(第一个非空字符)
- 0 ==> 跳转至绝对行首
- $ ==> 跳转至行尾
-
翻屏跳转
- Ctrl+f ==> 向后(forward)翻一屏
- Ctrl+b ==> 向前(backward)翻一屏
- Ctrl+d ==> 向前(down)翻半屏
- Ctrl+u ==> 向前(up)翻半屏
-
对于跳转的字符字符,可以添加数字,进行大范围跳转,比如:
- ”3w“向后移动3个单词,"4e"向后移动4个单词","5b"向前移动5个单词
- ”2j“向左移2个字符, ”3h“向上移动3个字符
复制粘贴
- yy ==> 整行内容被复制到剪切板
- p ==> 将复制的行粘贴到光标下一行
- dd ==> 整行内容被剪切到剪切板
- v ==> 按字符选取(此时进入可视化模式,移动光标,只为选取内容)
- V==> 按行选取
输入模式
输入模式
- i ==> insert 当前光标之前插入
- a ==> append 当前光标之后插入
- I ==> 在行首插入
- A ==> 在行尾插入
- o ==> 光标下行插入一行
- O ==> 光标上行插入一行
命令模式
窗口属性定义
命令 | 描述 |
---|---|
:set nu |
设置行号 |
:set nonu |
取消行号 |
:set ai | autoindent |
设置自动缩进 |
:set ic | ignorecase |
忽略大小写 |
:set hlsearch(highlight search) |
搜索高亮显示 |
:set sm | showmatch |
显示匹配的括号 |
注意:
- 所有设置前面加个“no”即可取消设置
- 想永久生效,可以写入
/etc/vimrc
,或者~/.vimrc
查找替换
查找
-
:/text
光标向后查找“text” -
:?text
光标向前查找“text“ -
n
按照查找方向查找 -
N
按照相反的方向查找
查找添加
-
:%s/\(text\)/\1 text2/g
:”%“全局查找,转义符小括号,引用小括号内的内容。其实该命令就是全局查找”text“并替换为"text text2”,只是此处”text“被“\1”引用。
注释特定行的代码
-
:.,10s/^/#/g
前10行的代码都会被注释掉,“.”号代表前面的行 -
:5,10s/^/#/g
第5-10行会被注释掉
取消注释
-
:.,10s/#//g
取消前10行的注释 -
:5,10s/#//g
取消第5-10行的注释
移动多行(剪切多行和粘贴)
-
:10,15d
剪切第10-15行的内容,光标移动至想要的行,比如第2行:n2