VIM的启动

  • 启动命令:vi my.txt
  • 如果文件存在,则vi显示文件内容并等待用户的命令。
  • 如果指定的文件不存在,则vi将告知用户这是未命名的文件,并进入一个空白的界面。
  • 启动vi时都是默认处于命令模式。用户必须使用命令切换到文本输入模式才能进行输入编辑,或者可执行删除、复制等编辑命令。

VIM的退出

  • 冒号进命令行模式下:
    • :q! 不存档强制退出。
    • :w 保存但不退出,w(rite)后可加所要存档的文档名。
    • :wq 存档后退出。
    • :x :wq相同
  • 命令模式
    • ZZZQ 保存/不保存退出

编辑

插入模式

  • 输入:set nu 可设置vi显示行号

  • 新增 (append)

    • a :从光标所在位置后面开始新增资料
    • A: 从光标所在行最后面的地方开始新增资料。
  • 插入 (insert)

    • i: 从光标所在位置前面开始插入资料
    • I :从光标所在行的第一个非空白字元前面开始插入资料。
  • 开始 (open)

    • o :在光标所在行下新增一列并进入输入模式。
    • O: 在光标所在行上方新增一列并进入输入模式。

命令模式

删除

#表示数字

  • x:删除光标所在字符
    • #x删除几个字符,如3x
  • dw:删除一个单词
    • #dw 删除几个单词,如3dw表示删除三个单词
  • dd:删除光标所在的行
    • #dd 删除多个行,如3dd,表示删除光标行及光标的下两行
    • d$ 删除光标到行尾的内容
  • d+光标键
    • 左:删除光标前面的字符;
    • 右:删除光标所在的字符;
    • 上:将当前行与上一行删除;
    • 下:当前行与下一行删除
  • s:删除光标所在字节,并进入输入模式

恢复

  • u
    • 恢复刚才被修改的文本
  • U
    • 恢复光标所在行的所有修改
  • .
    • 重复上一次命令的操作

复制

  • yy
    • 复制整行
  • yw
    • 复制光标所在的单词
  • nyw
    • 复制包括光标所在的n个单词
  • nyy
    • 复制包括当前行在内的n行

粘贴

  • P

移动

  • nG:移动到第n行行首
  • h、j、k、l

行命令

搜索

  • :/string
    • 搜索指定的字符串。
    • 如果写的是斜杠(/):n会从当前位置向后查找;如果写的是问号(?),按n键则从当前位置向前查找
  • n
    • 在搜索字符串后继续进行搜索,若为大写N,则反向搜索

替换

  • :%s /SEARCH /REPLACE
    • 把文档中所有SEARCH替换成REPLACE
  • :#,# s /SEARCH /REPLACE /g
    • #号表示数字,表示从多少行到多少行,把SEARCH替换成REPLACE;
  • :s /SEARCH /REPLACE /g
    • 把当前光标所在行中的SEARCH单词,替换成REPLACE,并把所有SEARCH高亮显示

配置

  • 全局的配置文件位于/etc/vim/vimrc(或者/etc/vimrc)

  • 也可以拥有自己独立的配置文件,配置文件位~/.vimrc,如果没有该文件,也可以直接用如下命令创建并编辑

    • setnu “显示行号
    • setruler “显示光标位置
    • set smartindent “智能缩进
    • syntax on(或syn on) “语法高亮