博客
关于我
单元4:vim的高级用法配置
阅读量:756 次
发布时间:2019-03-22

本文共 1208 字,大约阅读时间需要 4 分钟。

VIM 的三种模式及常用操作

VIM 是一个强大的文本编辑器,工作方式基于三个主要模式:命令模式(浏览模式)、插入模式和退出模式。理解并熟练掌握这些模式,是使用 VIM 的关键。

1. 命令模式(浏览模式)

命令模式是 VIM 的默认模式,只要打开 VIM 时,鼠标就在这个模式下工作。命令模式的主要特点是浏览文件内容,无法直接修改文件内容。要切换到其他模式,只需按下 Esc 键。

常用功能:

  • 系统设定: 在命令模式下,可以通过输入命令进行一些临时设置。例如:
    • set nu:显示行号
    • set nonu:取消行号显示
    • set mouse=a:启用鼠标支持
    • :set cursorline:显示光标所在行的行线

2. 插入模式

插入模式是进行文本修改的主要模式。切换到插入模式的最快捷方式是按下 i 键(在光标所在位置插入)或 I 键(在光标所在行的行首插入)。在插入模式下,光标会变成 _ 符号,表示正在插入状态。

常用操作:

  • 删除字符:按下 x,可以选择同时删除前后字母(例如 dlx)。
  • 删除单词:输入 dw 删除当前单词。
  • 删除多行内容:dd 删除当前行,3d 删除三行。
  • 剪切字符:输入 c 就可开始剪切。剪切完成后按下 P 可以粘贴,u 撤销,Ctrl + R 恢复。

3. 退出模式

退出模式用于离开 VIM 并保存工作。常用命令有:

  • :wq:保存当前文件并退出
  • :q!:强制退出,不保存工作(通常用于 root 用户或只读文件)
  • :wq!:强制保存并退出

4. 搜索功能

在 VIM 中,搜索功能非常强大。用户可以通过/键启动搜索,进入下一个模式:

  • 输入搜索关键字后按 Enter 启用搜索。
  • n:向下逐一匹配
  • N:向上逐一匹配-:noh:取消高亮

5. 字符管理

VIM 提供了丰富的快捷键来处理字符:

  • 复制:
    • yl:复制一个字符
    • yw:复制一个单词
    • yy:复制一行
    • 3y:复制三行
  • 删除:
    • d:删除一个字符
    • dw:删除一个单词
    • dd:删除一行
  • 剪切:
    • c:剪切当前字符
    • cw:剪切当前单词
    • cc:剪切一行

6. 批量修改

利用 VIM 的 :s 命令,可实现批量修改。例如:

:1,5s/-/##/g

替换一至五行内所有 -##

7. 可视化模式入门

  • 输入 Ctrl + V 进入可视化模式。
  • 选中需要批量添加的位置按 I 进入插入模式,直接输入字符即可。

8. 分屏功能

VIM 的分屏功能非常实用,使用 Ctrl + W 快捷键:

  • w s:上下分屏
  • w v:左右分屏
  • w方向键:移动光标
  • w c:取消分屏

9. 定位光标

  • gg:光标定位到文件开头
  • G:定位到文件末尾
  • 输入行号,如 :5G:定位到第五行

通过熟练掌握这些快捷键和命令,你将能够充分发挥 VIM 的强大功能,提升工作效率。如果需要进一步学习,可以参考官方手册 vimtutor 或执行 vim -h 查看帮助文档。

转载地址:http://htewk.baihongyu.com/

你可能感兴趣的文章
Panalog 日志审计系统 sprog_deletevent.php SQL 注入漏洞复现
查看>>
Panalog 日志审计系统 sprog_upstatus.php SQL 注入漏洞复现(XVE-2024-5232)
查看>>
Panalog 日志审计系统 前台RCE漏洞复现
查看>>
PANDA VALUE_COUNTS包含GROUP BY之前的所有值
查看>>
pandas -按连续日期时间段分组
查看>>
pandas -更改重新采样的时间序列的开始和结束日期
查看>>
pandas :to_excel() float_format
查看>>
pandas :加入有条件的数据框
查看>>
pandas :将多列汇总为一列,没有最后一列
查看>>
pandas :将时间戳转换为 datetime.date
查看>>
pandas :将行取消堆叠到新列中
查看>>
pandas DataFrame 中的自定义浮点格式
查看>>
Pandas DataFrame 的 describe()方法详解-ChatGPT4o作答
查看>>
Pandas DataFrame中删除列级的方法链接解决方案
查看>>
Pandas DataFrame中的列从浮点数输出到货币(负值)
查看>>
Pandas DataFrame中的列从浮点数输出到货币(负值)
查看>>
pandas DataFrame的一些操作
查看>>
Pandas Dataframe的日志文件
查看>>
pandas GROUPBY+变换和多列
查看>>
pandas Groupby:创建两列的Groupby时,如何按正确的顺序对工作日进行排序?
查看>>