Skip to content

Latest commit

 

History

History
123 lines (100 loc) · 3.49 KB

Normal模式.md

File metadata and controls

123 lines (100 loc) · 3.49 KB

#Normal模式 Normal模式通称一般模式,是切换到其他两个模式的唯一入口 ##退出vim 一般模式下,键入ZZ,注意是大写。

如果文件未改动,则直接退出
如果文件被改动,则保存退出

##模式切换 ###进入编辑模式

描述
A 在光标所在行的行尾开始插入文本(Append)
a 在光标的下一位开始插入文本
i 在光标处开始插入文本(Instert)
O 在光标所在行的上一行,插入新行开始编辑文本
o 在光标所在行的下一行,插入新行开始编辑文本
R 替换模式,从光标所指处开始替换文本,不是逐字符
r 也具有替换功能,不同之处是只能替换光标所指处的那一个字符

###回到一般模式 按一下ESC即可 ###撤销恢复 undo和redo命令分别为uCtrl+r

大写字母U可以一次性撤销该行的所有变动

因为r具有替换的功能,所以redo要加一个Ctrl。


##光标移动 重点操作

h j k j
这四个方向键都支持和数字组合使用,比如:
30 j

可向下移动30行,30是相对行数。不是移动到第30行。 ###向下移动n行 除了使用数字+j,还有快捷的方式是数字+回车,比如

30 <Enter>

###向右移动n个字符 除了使用数字+l,还有快捷的方式是数字+空格,比如

10 <Space>

###移动到第n行

  • nG

n为要移动的行号 ###移至首行:

  • gg
  • 1G

###移至尾行 G ###移动到行首

  • 功能键<Home>
  • 数字键0

###移动到行尾

  • 功能键<End>
  • $ 按键为Shift-4

###%跳转到配对括号 ###跳回到上一次光标位置

  • ``(反引号两次,可来回切换)
  • <Ctrl>-o:跳回上一次光标位置
  • <Ctril>-i:在<Ctrl>-o之后使用,撤销跳回

比如我在第5行,敲下gg来到首行,此时按下<ctrl>+o可以回到第5行,再次按下<Ctrl>+i可再次回到首行。
而敲两次**``**,则可代替这两个组合键,在首行和第5行直接来回跳跃。

###跳转到编辑过的位置

  • g, 顺序跳转回编辑过的位置
  • g; 逆序跳转回编辑过的位置

###跳转到段落首、段落尾

  • { 段落首,如果段落上面有空行则跳到空行开头
  • } 段落尾最后一个字符处,如果段落后面有空行,则跳到空行开头

##文本处理 ###剪切与删除 vim中所有的删除其实都是剪切,命令为:

  • x
  • d
  • c

####x 删除单个字符,右边的文本左移一个字符 ####d d命令可以理解为d+一个移动命令。移动命令能移到哪里,就能删到哪里!!

常用命令 描述
dd 剪切当前行,下一行向上移动
de !剪切光标之后单词的剩余部分
dw 剪切光标之后单词的剩余部分
d$ 剪切光标之后该行的剩余部分
dH 剪切光标所在行到屏幕顶行之间全部行
dL 剪切光标所在行到屏幕底行之间全部行
D 同d$

dw和de的区别是:dw会把两个单词间的空格也删掉,而de不会

数字n+dd可以剪切n行,从光标所在行向下算起

####c c功能和d相同,区别在于完成剪切后进入INSERT模式 cc功能同dd,区别在于完成剪切后进入INSERT模式

每行删除第一个字符:%s/^.//g

###复制 yy

同理可以使用数字n+yy表示复制n行 ###粘贴 粘贴都是在新行粘贴,不是覆盖粘贴

  • p 粘贴到光标所在行下一行
  • P 粘贴到光标所在行上一行

##重复上一次对文本进行的操作 用.