HIGH_FREQUENCY_MODE

NextBlog
NEXT.

下一个博客,记录精彩生活

LIVE_STREAM_CONNECTED

Vim 编辑器使用指南

A

Mastermind

admin

Dimension

Linux

Timestamp

2025年12月21日

Vim 是功能强大的命令行文本编辑器,学习曲线陡峭但效率极高,是 Linux 系统管理和开发的必备技能。

基础概念

三种模式

  • 普通模式(Normal):默认模式,用于导航和命令
  • 插入模式(Insert):输入文本
  • 命令模式(Command):执行保存、退出等命令

模式切换

普通模式 → 插入模式:i, a, o 等
插入模式 → 普通模式:Esc
普通模式 → 命令模式::

打开与退出

打开文件

vim file.txt              # 打开文件
vim +10 file.txt          # 打开并定位到第 10 行
vim +/keyword file.txt    # 打开并定位到关键词
vim file1.txt file2.txt   # 打开多个文件

保存与退出

:w              " 保存
:q              " 退出
:wq             " 保存并退出
:x              " 保存并退出(同 :wq)
:q!             " 强制退出不保存
:wq!            " 强制保存退出
ZZ              " 普通模式下保存退出
ZQ              " 普通模式下不保存退出

普通模式操作

光标移动

" 基础移动
h       " 左
j       " 下
k       " 上
l       " 右

" 单词移动
w       " 下一个单词开头
b       " 上一个单词开头
e       " 当前单词结尾

" 行内移动
0       " 行首
^       " 行首(非空字符)
$       " 行尾
f{char} " 移到本行下一个 char
F{char} " 移到本行上一个 char

" 屏幕移动
H       " 屏幕顶部
M       " 屏幕中间
L       " 屏幕底部
Ctrl+f  " 下翻一页
Ctrl+b  " 上翻一页
Ctrl+d  " 下翻半页
Ctrl+u  " 上翻半页

" 文件移动
gg      " 文件开头
G       " 文件结尾
10G     " 跳转到第 10 行
:10     " 跳转到第 10 行

编辑操作

" 进入插入模式
i       " 光标前插入
a       " 光标后插入
I       " 行首插入
A       " 行尾插入
o       " 下方新建行
O       " 上方新建行

" 删除
x       " 删除当前字符
dd      " 删除当前行
dw      " 删除到下一个单词
d$      " 删除到行尾
d0      " 删除到行首
3dd     " 删除 3 行

" 复制粘贴
yy      " 复制当前行
yw      " 复制单词
y$      " 复制到行尾
3yy     " 复制 3 行
p       " 在光标后粘贴
P       " 在光标前粘贴

" 修改
cw      " 删除单词并进入插入模式
cc      " 删除整行并进入插入模式
c$      " 删除到行尾并插入
r{char} " 替换当前字符
R       " 进入替换模式

" 撤销重做
u       " 撤销
Ctrl+r  " 重做
.       " 重复上一次操作

可视模式(选择)

v       " 字符选择
V       " 行选择
Ctrl+v  " 块选择(列选择)

" 选择后可执行
d       " 删除选中
y       " 复制选中
>       " 右缩进
<       " 左缩进

搜索替换

搜索

/keyword        " 向下搜索
?keyword        " 向上搜索
n               " 下一个匹配
N               " 上一个匹配
*               " 搜索光标下的单词

替换

:s/old/new/             " 替换当前行第一个
:s/old/new/g            " 替换当前行所有
:%s/old/new/g           " 替换全文所有
:%s/old/new/gc          " 替换全文(逐个确认)
:10,20s/old/new/g       " 替换 10-20 行

多文件与窗口

多文件

:e file.txt     " 打开新文件
:bn             " 下一个文件
:bp             " 上一个文件
:ls             " 列出所有缓冲区
:b2             " 切换到缓冲区 2

分屏

:sp file.txt    " 水平分屏
:vsp file.txt   " 垂直分屏
Ctrl+w h        " 切换到左窗口
Ctrl+w j        " 切换到下窗口
Ctrl+w k        " 切换到上窗口
Ctrl+w l        " 切换到右窗口
Ctrl+w w        " 循环切换窗口
:close          " 关闭当前窗口
:only           " 只保留当前窗口

标签页

:tabnew file.txt    " 新标签打开
:tabn               " 下一个标签
:tabp               " 上一个标签
:tabclose           " 关闭标签
gt                  " 下一个标签
gT                  " 上一个标签

实用技巧

快速操作

" 删除引号内内容
di"     " 删除 "" 内的内容
ci"     " 删除并进入插入模式
yi"     " 复制 "" 内的内容

" 同理适用于
di(     " 删除 () 内
di{     " 删除 {} 内
di[     " 删除 [] 内
dit     " 删除 HTML 标签内

" 快速注释(块选择)
Ctrl+v  " 进入块选择
jjj     " 选择多行
I       " 行首插入
//      " 输入注释符
Esc     " 应用到所有行

宏录制

qa      " 开始录制宏到寄存器 a
...     " 执行操作
q       " 停止录制
@a      " 执行宏
10@a    " 执行 10 次

显示行号

:set number         " 显示行号
:set nonumber       " 隐藏行号
:set relativenumber " 相对行号

配置文件

创建 ~/.vimrc

" 基础设置
set number              " 显示行号
set relativenumber      " 相对行号
set cursorline          " 高亮当前行
set showcmd             " 显示命令
set showmatch           " 括号匹配

" 缩进设置
set tabstop=4           " Tab 宽度
set shiftwidth=4        " 缩进宽度
set expandtab           " Tab 转空格
set autoindent          " 自动缩进
set smartindent         " 智能缩进

" 搜索设置
set hlsearch            " 高亮搜索结果
set incsearch           " 增量搜索
set ignorecase          " 忽略大小写
set smartcase           " 智能大小写

" 编码设置
set encoding=utf-8
set fileencoding=utf-8

" 其他
set mouse=a             " 启用鼠标
set clipboard=unnamed   " 系统剪贴板
syntax on               " 语法高亮

常用命令速查

操作 命令
保存退出 :wqZZ
不保存退出 :q!ZQ
删除一行 dd
复制一行 yy
粘贴 p
撤销 u
搜索 /keyword
全局替换 :%s/old/new/g
跳转行 10G:10
文件开头 gg
文件结尾 G

总结

Vim 学习路径:

  1. 先掌握基础:i 插入、Esc 退出、:wq 保存
  2. 熟悉移动:hjklwbggG
  3. 学会编辑:ddyypu
  4. 进阶搜索替换和分屏

Vim 的强大在于组合:动作 + 范围,如 d3w(删除3个单词)、y$(复制到行尾)。熟练后效率远超普通编辑器。

评论

加载评论中...
Spirit Sync

"正在同步你的多巴胺频率,建立高维链接..."