Vim编辑器命令大全:从入门到精通的实用指南

更新时间:2026-10-12 11:28:16 来源:本站整理 浏览:0

Vim编辑器概述

Vim是一款功能强大的文本编辑器,提供了丰富的文本编辑和操作命令。它支持三种主要模式:命令模式、编辑模式和末行模式。理解这些模式及其切换方式是高效使用Vim的基础。

模式切换方法

  • 在命令模式下,输入:进入末行模式。
  • 在末行模式下,按Esc慢退、按两次Esc快退,或删除所有命令,可返回命令模式。
  • 在命令模式下,按下i、a等键进入编辑模式。
  • 在编辑模式下,按下Esc返回命令模式。

命令模式常用操作

光标移动

在命令模式下,可以使用以下按键快速移动光标:

  • h、j、k、l:左、下、上、右移动光标。
  • 0:移动到行首。
  • $:移动到行尾。
  • gg:移动到文件开头。
  • G:移动到文件末尾。
  • nG:移动到第n行。

选中内容

在命令模式下,使用v进入可视模式,然后通过移动光标选中文本。按V可选中整行,按Ctrl+v可进行块选择。

复制、剪切与粘贴

  • yy:复制当前行。
  • nyy:复制从当前行开始的n行。
  • dd:剪切当前行。
  • ndd:剪切从当前行开始的n行。
  • p:在光标后粘贴。
  • P:在光标前粘贴。

删除操作

  • x:删除光标所在字符。
  • dw:删除一个单词。
  • d0:删除到行首。
  • d$:删除到行尾。
  • dd:删除整行。

撤销与恢复

  • u:撤销上一步操作。
  • Ctrl+r:恢复撤销的操作。

字符转换

  • ~:切换光标所在字符的大小写。
  • guu:将当前行转换为小写。
  • gUU:将当前行转换为大写。

编辑命令快捷键

  • i:在光标前插入。
  • a:在光标后插入。
  • o:在下方新建一行并进入编辑模式。
  • O:在上方新建一行并进入编辑模式。

末行模式常用命令

保存与退出

  • :w:保存文件。
  • :q:退出Vim。
  • :wq:保存并退出。
  • :q!:强制退出,不保存修改。
  • :x:若文件有修改则保存后退出,否则直接退出,不更新文件修改时间。

查找与替换

在末行模式下输入/关键词进行查找,使用n和N切换上下结果,输入:nohl取消高亮。

替换命令格式::s/旧文本/新文本/选项。例如:

  • :s/foo/bar:替换当前行第一个匹配。
  • :s/foo/bar/g:替换当前行所有匹配。
  • :%s/foo/bar/g:替换整个文件所有匹配。

行号显示

  • :set nu:显示行号。
  • :set nonu:取消行号显示。

多文件切换

使用Vim打开多个文件后,可在末行模式进行切换:

  • :files:查看已打开的文件(%a表示激活状态,#表示上一个打开的文件)。
  • :open 文件名:切换到指定文件。
  • :bp:切换到上一个文件。
  • :bn:切换到下一个文件。

编辑模式

在编辑模式下,可以像普通文本编辑器一样输入和修改内容。按Esc返回命令模式。

扩展技巧

代码颜色显示

在末行模式输入:syntax on或:syntax off,开启或关闭代码语法高亮。

Vim内置计算器

  1. 进入编辑模式。
  2. 按Ctrl+r,光标变为引号,输入=,光标转到最后一行。
  3. 输入需要计算的内容,按下Enter后,计算结果将替代引号,光标恢复。

Vim的配置

  • 临时配置:在末行模式输入的配置仅在当前会话有效。
  • 个人配置:修改~/.vimrc文件(若不存在可自行创建),永久保存个人配置。
  • 全局配置:修改/etc/vimrc文件,对每个用户生效。

注意:个人配置文件优先级更高,当个人配置与全局配置冲突时,以当前用户的个人配置为准。

异常退出处理

编辑文件后未正常保存退出时,会产生交换文件(.原文件名.swp)。删除该交换文件后,再次打开文件将无提示:rm -f .原文件名.swp。

别名机制

Linux中存在别名映射文件~/.bashrc,修改其内容可自定义指令,重新登录账号后生效。

文件快捷方式

对于深层文件,可创建快捷方式便于操作:ln -s 源路径 新路径。

结语

以上是Vim编辑器的常用命令,掌握它们能显著提升编辑效率。当然,Vim还有更多高级命令和技巧,持续练习并查阅相关资料,您将逐步成为Vim高手。

原文链接:本站整理

本文来自互联网用户投稿,该文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 service@2cto.cc 进行投诉反馈,一经查实,立即处理!