vim编辑器使用

vim 学习笔记

vim三种模式

  • 命令模式
  • 末行模式
  • 输入模式

命令模式

  • 当刚刚启动vim时就为该模式命令模式
  • 该模式下所敲击的键盘都为命令
  • 若想切换到输入模式可敲击字母按键 i
  • 若想切换到末行默认输入键盘中冒号 :

命令模式相关命令

i: 在光标之前插入数据

I: 光标所在行的行首插入数据

a: 在光标之后插入数据

A: 光标所在行的行尾插入数据

o: 在光标所在行的下一行插入数据

O: 光标所在行的上一行数据插入数据

s: 向光标所在的那个字符插入数据并删除光标所指向的字符

S: 向光标所在行插入数据并删除当前行所有数据

h j k l: 分别代表 ///移动

M: 光标移动到中间行

L: 光标移动到屏幕最后一行

G: 跳转到指定行 行号G:
例如:移动到第二行2G

gg: 跳转到首行

GG: 跳转到最后一行

gg=G: 自动格式化文本

%: 括号匹配

x: 删除光标下的字符

dw: 删除单词

D: 删除光标到行尾的所有字符

0: 光标移动到行首

$: 光标移动到行尾

d0: 删除光标到行首的所有字符

d$: 删除光标到行尾的所有字符

r: 替换光标下的字符

v: 可视, 选中某区域使用 h j k l来移动选中区域

数字dd: 删除n行

yy: 复制一行

p: 粘贴到光标下一行

P: 粘贴到光标上一行

[数字]yy: 复制多行

u ctr+r: 撤销上一步u, 反撤销ctr+r

/: 查找/查找的内容

  • n查找下一个
  • N查找上一个

* #: 查找已知内容, 将光标移动到需要被查找的字符按

  • *向后查找
  • #向前查找

[d: 查看宏定义(前提是该宏存在)

末行模式

esc输入:进入末行模式

数字: 跳转到指定的行
例如: 跳转到22行:22

s /old/new| %s /old/new| %s /old/new/g| 数字,数字s /old/new

  • 单行替换 将光标移动到需要被替换的行:s /被替换的/替换后的
  • 全文替换 :%s /被替换的/替换后的 只会替换每行的第一个被匹配的
  • 全文整行替换:%s /被替换的/替换后的/g 全文替换如一行多个匹配都会被替换
  • 区域替换:开始行,结束行s /被替换的/替换后的 替换指定区域中匹配的

sp vsp: 分割窗口

  • 垂直分割: sp
  • 水平分割: vsp
  • 切换页面: ctr + ww
  • 退出光标所在页面: q
  • 退出所有页面: qall

ctr+p|ctr+n:

  • 上一个命令ctr+p
  • 下一个命令ctr+n

w: 保存不退出vim

qw: 保存并退出

q!: 不保存退出

!: 不保存执行命令

  • :![执行的命令]