### VIM 文本编辑器基本使用指南 #### 模式 VIM(Vi IMproved)是一种高度可配置且功能强大的文本编辑器,在 Linux 和其他 Unix 类操作系统中广泛使用。了解其工作模式对于高效使用至关重要。 - **普通模式**:这是默认模式。在此模式下,您可以执行大部分编辑操作。例如,移动光标、复制、剪切、粘贴等。从其他任何模式下,按 `ESC` 或者 `Ctrl+C` 键都可以返回到普通模式。 - **插入模式**:在这个模式下,VIM 行为类似于大多数其他文本编辑器。通过按下 `i` 或者 `a` 可以从普通模式进入插入模式。此外,还有其他命令如 `o` 和 `O` 可用于在特定位置插入文本。 - **可视模式**:在可视模式下,用户可以通过方向键(`h`、`j`、`k`、`l`)选择文本区域,之后可以对所选文本执行操作,如复制、剪切等。在普通模式下,使用 `v` 命令进入可视模式。 - **块操作模式**:这个模式允许用户选择文本块并对其进行操作。在普通模式下,使用 `Ctrl+V` 进入块操作模式。 - **修改模式**:在这个模式下,用户可以替换文本,而不是简单的插入。在普通模式下,使用 `R` 键进入修改模式。 - **扩展命令模式**:这个模式允许用户输入更复杂的命令,如替换、查找和替换等。在普通模式下,使用 `:` 键切换到扩展命令模式。 #### 移动 VIM 提供了丰富的移动命令,使用户能够在文本中快速导航: - `k` 向上移动一行 - `j` 向下移动一行 - `h` 向左移动一列 - `l` 向右移动一列 - `gg` 移动到文件的首行 - `G` 移动到文件的末行 - `^` 移动到当前行的首字符 - `$` 移动到当前行的末字符 - `Ctrl+F` 向下翻滚一屏 - `Ctrl+B` 向上翻滚一屏 - `Ctrl+U` 向上翻滚半屏 - `Ctrl+D` 向下翻滚半屏 #### 编辑 编辑命令使得用户能够高效地添加或移除文本: - `i` 在当前位置插入文本 - `I` 在当前行首插入文本 - `a` 在当前位置后面附加文本 - `A` 在当前行末附加文本 - `o` 在当前行下方新开一行并进入插入模式 - `O` 在当前行上方新开一行并进入插入模式 - `x` 删除光标所在位置的字符 - `dw` 删除光标所在位置的词 - `d$` 删除到行尾 - `d^` 删除到行首 - `dd` 删除当前行 - `5dd` 删除接下来的五行 - `R` 替换输入模式 - `r` 替换当前字符 - `cw` 删除当前词,并进入插入模式 - `u` 恢复上一次更改 - `Ctrl+R` 重做上一次更改 - `J` 合并当前行与其下一行 #### 复制与粘贴 复制和粘贴是文本编辑中的常见需求。VIM 提供了简单而强大的机制: - `y` 复制当前行 - `yy` 复制当前行 - `yw` 复制当前词 - `"ay` 将复制的信息存入寄存器 `[a-zA-Z]` - `"[a-zA-Z]p` 粘贴指定寄存器中的内容 - `p` 在光标下面粘贴 - `P` 在光标上面粘贴 - `:reg` 显示所有寄存器的内容 #### 书签 书签可以帮助您快速定位到文档中的特定位置: - `m{a-zA-Z}` 创建书签 `{a-zA-Z}` - `'`{a-zA-Z}` 跳转到书签 `{a-zA-Z}` - `:delm{a-zA-Z}` 删除书签 `{a-zA-Z}` - `:marks` 显示系统中所有的书签 #### 搜索 VIM 提供了灵活且强大的搜索功能,支持正则表达式: - `/` 向下搜索 - `?` 向上搜索 - `n` 查找下一个匹配项 - `N` 查找上一个匹配项 - `/\s\+` 匹配空白字符 - `/\s\+$` 匹配以空白字符结尾 - `/\<\d\d\d\d\>` 匹配独立的四位数字 - `/\<\d\{4}\>` 同 `/\<\d\d\d\d\>` - `/^[A-J]\+/` 匹配以 'A' 到 'J' 间的字母开头 - `/.{m,n}` 匹配长度为 m 到 n 的任意字符序列 - `/test/` 查找字符串 "test" - `/begin_.*end/` 多行匹配 - `/^\s\+` 匹配以空白字符开头 - `/^\s\+$` 匹配以空白字符结尾 - `/\<\d\d\d\d\>` 匹配独立的四位数字 - `/\<\d\{4}\>` 同 `/\<\d\d\d\d\>` - `/^[A-J]\+/:` 匹配以 'A' 到 'J' 间的一个或多个字母组合的开头 - `/<c-r>a/g` 存储器替换 - `/^\s*/` 删除行首的空白字符 - `/\r/` 删除 DOS 的换行符 `^M` #### 替换 替换命令允许用户批量修改文本中的内容: - `:%s/test/what/` 替换每行中的第一个 "test" 为 "what" - `:%s/test/what/g` 替换所有 "test" 为 "what" - `:'m,.s/test/what/g` 从标记 `m` 到当前行替换所有 "test" 为 "what" - `:'m,'ns/test/what/g` 从标记 `m` 到标记 `n` 替换所有 "test" 为 "what" - `:%s/t\(.*\)t/w\1w/g` 替换所有 "t...t" 为 "w...w" #### 多文件编辑 VIM 支持同时编辑多个文件,提供了一系列实用的命令: - `:n` 转到下一个文件 - `:prev` 转到上一个文件 - `:wn` 保存当前文件,并转到下一个文件 - `:wprev` 保存当前文件,并转到上一个文件 - `:first` 转到第一个文件 - `:last` 转到最后一个文件 - `:2n` 转到下数第二个文件 - `:edit *.txt` 编辑名为 "*.txt" 的文件 - `:args` 显示文件列表 #### 分屏 VIM 允许用户将编辑窗口分为多个部分,以便同时查看不同的文件或同一文件的不同部分: - `:split` 将屏幕水平分成两个部分 - `:vsplit` 将屏幕垂直分成两个部分 - `:new` 新建一个空白文件 - `ctrl-w+[jkhl]` 在不同屏幕之间切换 - `ctrl-w+[+-<>]` 调整分屏的大小 通过这些命令和技巧,您可以大大提高使用 VIM 的效率和生产力。VIM 是一个非常强大且功能丰富的工具,掌握它将使您在文本编辑方面更加得心应手。
剩余21页未读,继续阅读
- 粉丝: 0
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- vmware-VMnet8一键启动和停止脚本
- 可移植的 Python 数据框库.zip
- 包含 Andrei Neagoie 的《从零到精通掌握编码面试 - 数据结构 + 算法》课程的所有代码示例,使用 Python 语言 .zip
- 数据库课程设计(图书馆管理系统)springboot+swing+mysql+mybatis
- C++ Vigenère 密码(解密代码)
- zblog日收站群,zblog泛目录
- C++ Vigenère 密码(加密代码)
- Vue Router 是 Vue 生态系统的一部分,是一个 MIT 许可的开源项目,其持续开发完全在赞助商的支持下成为可能 支持 Vue 路由器
- PM2.5 数据集 包含上海、成都、广州、北京、沈阳五地的PM2.5观测,csv文件
- 电动汽车与软件定义汽车(SDV)时代的汽车行业数字化转型