博客
关于我
单元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,可以选择同时删除前后字母(例如 dl 或 x)。
  • 删除单词:输入 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/

你可能感兴趣的文章
python判断汉字数目
查看>>
python判断文件是空的,如果是空的,就删除
查看>>
python判断密码是否正确_python密码判断是否符合要求的方法
查看>>
python判断字符串包含中文_Python 判断字符串是否包含中文
查看>>
python删除第一行_Python 乱码指北:一行删掉根目录
查看>>
Python删除列表元素的三种方法
查看>>
python初步学习-python数据类型-集合(set)
查看>>
python列表生成字典_Python中将字典转换为列表的方法
查看>>
python列表对应元素合并为列表及判断一个列表是几维
查看>>
python列表去重复后按照顺序_从包含不可共元素的Python列表中删除重复元素,同时保留顺序?...
查看>>
python列表前几个_python之列表
查看>>
python列表元组
查看>>
Python列表/元组/字典和集合使用
查看>>
python列表 行列选择_python_pandas_dataframe_行列选择_切片操作
查看>>
python列表
查看>>
python列出当前目录、子目录和文件的脚本
查看>>
python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校体测管理系统的设计与实现(程序+开题+论文)
查看>>
Python切片对象和__getitem__
查看>>
python+flask计算机毕业设计高校体育竞赛成绩管理系统的设计与实现(程序+开题+论文)
查看>>