Linux入门之vim的三种工作模式

Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。
vim的设计理念是命令的组合。用户学习了各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用的话,能够比那些没有模式的编辑器更加高效的进行文本编辑。同时VIM与很多快捷键设置和正则表达式类似,可以辅助记忆。并且vim针对程序员做了优化。
vim 有三种工作模式,分别是命令模式、插入模式和退出模式,在常用命令中vim 的用途相比其他命令较多。下面让我们走进vim,了解它的各种模式。

一、命令模式
vim的命令模式通常是用于浏览文件,临时更改vim的工作方式,同时对字符批量处理。

  1. set设置
    调整Vim的工作方式,在Vim程序中
    :set nu-------------------设置行号
    :set nonu----------------取消行号
    :set mouse=a----------显示鼠标
    :set cursorline----------显示行线
    注意
    在 vim 程序中设定的 vim 工作方式是临时的,在 vim 关闭后会还原,如果要永久保存vim的工作方式我们需要编辑 vim 的配置文件: /etc/vimrc
    Linux入门之vim的三种工作模式
  2. 字符的搜索
    /关键字 ----------- 关键字会高亮显示
    n --------------------关键字的向下匹配
    N -------------------关键字的向上匹配
    上下键 -------------上下移动
    Linux入门之vim的三种工作模式
  3. 字符的管理
    (1)复制、删除和剪切
复制 删除 剪切 说明
yl dl cl 一个字符
y3l d3 c3l 三个字符
yw dw cw 一个单词
y3w d3w c3w 三个单词
yy dd cc 一行
y3y dd c3c 三行

注意1:在剪切之后vim会进入插入模式,如果要粘贴需要按【esc】退出插入模式然后按p粘贴。
注意2:p粘贴字符,u撤销粘贴,Ctrl+r恢复撤销

  1. 批量添加字符
    【ctrl+v】进入可视化模式,通过上下左右键选择插入列,然后按大写【I】键,进入insert模式,插入字符,按【esc】退出

  2. 字符的替换
    :%s/要替换的字符/替换成的字符/g
    :行号,行号s/要替换的字符/替换成的字符/g
    示例:
    :%s/jiang/&&/g 将文件中所有的jiang替换成&&
    :1,5s/jiang/&/g 将文件前5行中的jiang替换成&
    注意: %s 表示所有的行,g 表示所有的列

  3. vim的分屏功能
    ctrl+w v ##左右分屏
    ctrl+w s ##上下分屏
    ctrl+w c ##删除光标所在屏幕
    ctrl+w 上下左右 ##光标移动到指定屏幕
    :sp file ##同时编辑当前文件和file文件
    注意:文件分屏后是同时修改的
    Linux入门之vim的三种工作模式

  4. 在命令模式下光标的移动
    gg ##光标移动到文件第一行
    G ##光标移动到文件尾行
    :数字 ##光标移动到该数字行

二、插入模式下光标的移动

命令 说明
i 光标所在行行首插入
o 光标所在行下一行插入
O 光标所在行的上一行插入
A 光标所在行的行尾插入
a 光标所在字符的下一个字符插入
s 光标所在字符删除并插入
S 光标所在行删除并插入

三、vim的退出模式

  1. :wq ##保存并退出
  2. :wq! ##强制保存退出,在对只读文件编写时使用,注意,所编辑的只读文件必须是当前用户的文件
    Linux入门之vim的三种工作模式
  3. :q ##退出,在文件内容没有被改变时使用
  4. :q! ##强制不保存退出,在改变文件后不想保存时使用
    Linux入门之vim的三种工作模式