跳到主要内容

vim

简述

vim是一个强大的文本编辑工具

vim的三种模式

  • 命令模式:command mode
  • 插入模式:Insert mode
  • 底行模式:last line mode

底行模式

# 按shift+:键进入底行模式
:set nu :列出行号
:set nonu :取消行号
/字符 :向光标之下查找字符,按n向下
?字符 :向光标之上查找字符,按n向上,N向下
:w : 保存文件
:w filename :以指定的文件名另存
:n1,n2 w [filename] :将 n1 到 n2行另存
:r [filename] : 读入另一个文件加到光标所在行后面
:! ls /home :在vim当中察看ls输出信息
:q :离开vim
:wq 和 :ZZ 和 :x :保存并退出vim
! : 强制执行
:% s/^/#/g :在全部内容的行首添加#号注释
:1,10 s/^/#/g :在1~10 行首添加#号注释
:e! :恢复到最初状态
:nohl :取消字体背景显示黄色

插入模式

  • i在当前位置编辑
  • a在当前位置的下一个字符编辑
  • o插入新行,从行首开始编辑
  • 按R(Replace mode):R会一直取代光标所在的文字,直到按下 ESC为止

命令模式

移动:

数字+方向标:移动的行数或字符数

翻页:

ctrl+b :上移一页
ctrl+f :下移一页
ctrl+u :上移半页
ctrl+d :下移半页

行定位:

7G :定位第7行首字符
G :移动到文章的最后
7H : 当前屏幕的第7行行首
M :当前屏幕中间行的行首
7L : 当前屏幕的倒数第7行行首
$ :移动到光标所在行的“行尾”
^ :移动到光标所在行的“行首”
w :光标跳到下个单词的开头
e :光标跳到下个单词的字尾
b :光标回到上个单词的开头

编辑:

x :剪切当前字符
7x :剪切从当前位置起7个字符
X : 表示从前面一个字符开始往前计算
dd :剪切光标所在行
7dd :从光标所在行开始剪切7行
d7G : 删除光标所在到第7行的所有数据
yw :复制当前单词
7yw :复制从当前位置起7个单词
yy :复制当前行
6yy :从当前行起向下复制6行
y7G : 复制光标所在到第7行的所有数据
p :粘贴
u :撤销
ctrl+r :取消撤销
cw :删除当前单词(从光标位置开始计算),并进入插入模式
c7w :删除7个单词并进入插入模式