Linux文本编辑器

Linux文本编辑器

  • VIVIM 是 Linux 系统中广泛使用的文本编辑器,以其高效的编辑方式和强大的功能著称。

VI和VIM

  • VI(Visual Interface)是 Unix 系统中的标准文本编辑器。

  • VIM(Vi IMproved)是 VI 的增强版,它在 VI 的基础上增加了许多新功能和改进。

  • 区别

    • 功能
      • VI 是基础编辑器,功能较为简单。
      • VIM 是 VI 的增强版,增加了语法高亮、多级撤销、插件支持等现代功能。
    • 兼容性
      • VIM 完全兼容 VI,VI 的命令和操作在 VIM 中均可使用。
    • 用户体验
      • VIM 提供了更友好的用户体验,如命令补全、错误提示等。
    • 性能
      • VI 更加轻量级,启动速度更快。
      • VIM 功能更强大,但资源占用相对较高。

命令模式(Command Mode)

  • 默认模式:启动 VI 后,默认进入命令模式。

  • 功能

    • 用于执行命令、导航文本、删除、复制、粘贴等操作。
    • 不能直接输入文本。
  • 常用命令

    • 光标移动

      • h:向左移动光标。
      • j:向下移动光标。
      • k:向上移动光标。
      • l:向右移动光标。
      • 0:移动到行首。
      • $:移动到行尾。
      • gg:移动到文件开头。
      • G:移动到文件末尾。
        • 2gg或者2G:移动到指定行
      • Ctrl + f:向下翻页。
      • Ctrl + b:向上翻页。
    • 文本编辑

      • x:删除光标所在字符。
      • dd:删除当前行。
        • 2dd:删除当前向下的2行
      • yy:复制当前行。
        • 2yy:复制当前向下的2行
      • p:粘贴到光标后。
      • P:粘贴到光标前。
      • u:撤销上一次操作。
      • Ctrl + r:重做上一次操作。
    • 查找

      • /pattern:向前查找 pattern
        • pattern为查找的目标字符
      • ?pattern:向后查找 pattern
      • n:查找下一个匹配项。
      • N:查找上一个匹配项。
    • 其他

      • J:将当前行与下一行合并。
      • .:重复上一次操作。

插入模式(Insert Mode)

  • 功能
    • 用于输入和编辑文本。
    • 在命令模式下通过特定命令进入。
  • 进入插入模式的命令
    • i:在光标前插入。
    • a:在光标后插入。
    • o:在当前行下方插入新行。
    • O:在当前行上方插入新行。
    • I:在当前行首插入。
    • A:在当前行尾插入。
  • 退出插入模式
    • Esc 键返回命令模式。

末行模式(Last Line Mode)

  • 功能
    • 用于执行保存、退出、查找替换、设置选项等操作。
    • 在命令模式下按 : 进入。
  • 常用命令
    • 文件操作
      • :w:保存文件。
      • :q:退出编辑器。
      • :wq:保存并退出。
      • :q!:不保存强制退出。
      • :w <filename>:另存为指定文件。
    • 查找和替换
      • :s/old/new:替换当前行的第一个 oldnew
      • :s/old/new/g:替换当前行的所有 oldnew
      • :%s/old/new/g:替换整个文件中的所有 oldnew
      • :%s/old/new/gc:替换时逐个确认。
    • 设置选项
      • :set number:显示行号。
      • :set nonumber:隐藏行号。
      • :set paste:进入粘贴模式(避免自动缩进)。
      • :set nopaste:退出粘贴模式。
    • 其他
      • :e <filename>:打开另一个文件。
      • :help:打开帮助文档。

模式切换总结

  • 命令模式 → 插入模式
    • 使用 iaoIAO 等命令。
  • 插入模式 → 命令模式
    • Esc 键。
  • 命令模式 → 末行模式
    • : 键。
  • 末行模式 → 命令模式
    • Esc 键或执行完命令后自动返回。
posted @ 2025-03-26 18:42  QAQ001  阅读(136)  评论(0)    收藏  举报