vim 的基本使用
介绍
vim 是一个强大的文本编辑器,是 vi 的增强版,广泛用于 Linux 和UNIX 系统中,因为它不仅仅有文本编辑功能还可以进行复杂的文本操作。
模式和切换
vim
有三种主要模式:
- 普通模式(Normal Mode):你可以在这个模式下进行光标移动、删除、复制、粘贴等操作。
- 插入模式(Insert Mode):在这个模式下,你可以像普通文本编辑器一样输入内容。
- 命令模式(Command Mode):你可以在这个模式下输入命令来保存文件、退出等。
模式切换:
- 从 普通模式 切换到 插入模式:按
i
(插入光标前)、I
(行首插入)、a
(光标后插入)、A
(行尾插入)等。 - 从 插入模式 切换回 普通模式:按
Esc
键。 - 从 普通模式 切换到 命令模式:按
:
键。
vim 启动
# 打开文件:
vim filename# 打开指定文件
vim example.txt# 直接使用
vim
# 启动并打开一个空文件
vim 中编辑
- 进入插入模式
在普通模式下,按下 i
进入插入模式。此时可以输入文本。
常见的插入模式快捷键:
i
:光标前插入I
:行首插入a
:光标后插入A
:行尾插入o
:在当前行下方新建一行并插入O
:在当前行上方新建一行并插入
- 返回到普通模式
在插入模式下,按 Esc
键返回到普通模式。
常用操作
- 移动光标
在普通模式下,光标移动是 Vim 的核心功能之一。你可以用以下键来精确控制光标:h
:向左移动一个字符j
:向下移动一行k
:向上移动一行l
:向右移动一个字符
更快速的移动:w
:移动到下一个单词的开头b
:移动到当前单词的开头e
:移动到当前单词的结尾0
:移动到当前行的行首$
:移动到当前行的行尾gg
:移动到文件的开头G
:移动到文件的结尾
- 复制、剪切和粘贴
yy
:复制当前行2yy
:复制当前行及其下方的 1 行(2 行)dd
:删除当前行2dd
:删除当前行及其下方的 1 行(2 行)p
:在光标后粘贴(在行内粘贴)P
:在光标前粘贴(在行首粘贴)
- 保存和退出
# 保存文件 :w # 退出 vim :q # 保存并退出 :wq # 强制退出不保存 :q!
- 搜索和替换
# 向前搜索:/ 然后输入搜索的关键字 按回车
/keyword
# n 查找下一个匹配项 N 查找上一个匹配项# 向后搜索:? 然后输入搜索关键字 按回车
?keyword# 替换文件中的一个单词
:%s/old/new/g
# 将 old 全部替换为 new
# %:表示整个文件
# g:表示替换行中所有项(不加 g 只替换每行第一个匹配项)# 仅替换当前行:
:s/old/new/g# 替换并确认每个替换:
:%s/old/new/gc
- 其他命令
- 撤销操作:
u
:撤销上一个操作。Ctrl + r
:恢复撤销的操作。
- 重做操作:
Ctrl + r
:重做操作。
- 查看文件信息:
:set number
:显示行号。:set nonumber
:隐藏行号。
- 跳转到特定行:
:123
:跳转到第 123 行。