Vim是一款终端编辑器,轻量但功能强大,本指南适用于 Linux/macOS/Windows 用户

# Vim的安装

# Linux

Debian/Ubuntu 极其衍生发行版本

sudo apt install vim

CenteOS/RHEL 及其衍生版本

sudo yum install vim

Arch

sudo pacman -S vim

# macOS

brew install vim
# 或者使用macvim
brew install macvim

# Windows

1.官网下载安装包
2.或者使用Chocolate

choco install vim

# Vim的几种模式

Vim 共有4中模式,分别为正常模式,插入模式,可视模式,命令行模式,后三种模式均可使用Esc退出至正常模式

模式 进入方式 退出方式 用途
正常模式 EscCtrl+[ 自动进入其他模式 导航/操作文本
插入模式 i / a / o Esc 编辑文本
可视模式 v / V / Ctrl+v Esc 选择文本块
命令行模式 : Enter执行后退出 执行命令/保存/退出

# 配置文件

# 位置

在linux中默认情况下vim的配置位置如下

系统 vimrc 文件: "/etc/vimrc"
用户 vimrc 文件: "$HOME/.vimrc"
第二用户 vimrc 文件: "~/.vim/vimrc"
第三用户 vimrc 文件: "~/.config/vim/vimrc"
用户 exrc 文件: "$HOME/.exrc"
defaults 文件: "$VIMRUNTIME/defaults.vim"
$VIM 预设值: "/usr/share/vim"

我们也可以通过命令 vim --version查看其配置文件所在地,通过此命令我们也能知道当前vim支持的一些功能

# 常用的配置

" 基础设置
set number                  " 显示行号
set relativenumber          " 相对行号
set tabstop=4               " Tab 显示宽度
set shiftwidth=4            " 自动缩进宽度
set expandtab               " 将Tab转为空格
set cursorline              " 高亮当前行
syntax on                   " 语法高亮

" 快捷键映射
nnoremap <C-s> :w<CR>       " Ctrl+S 保存
inoremap jj <Esc>           " jj 退出插入模式

# 一些常用的快捷键

这些快捷键均应在正常模式下使用,而不是插入模式,注意区分大小写

# 移动

快捷键 功能
h j k l 左/下/上/右
0 行首
^ 行首非空字符
$ 行尾
gg 文件开头
G 文件末尾
Ctrl+f 下翻页
Ctrl+b 上翻页

# 编辑操作

快捷键 功能
i 光标前插入
a 光标后插入
o 下方新建行插入
dd 删除当前行
yy 复制当前行
p 粘贴
u 撤销
Ctrl+r 重做
> > 增加缩进
< < 减少缩进

# 搜索替换

/pattern     " 向前搜索 例如 /hello 即搜索hello
?pattern     " 向后搜索
n            " 下一个匹配项
N            " 上一个匹配项
:%s/old/new/g " 全局替换 
:10,20s/old/new/g " 10-20行替换

# 常用命令

:q           " 退出
:q!          " 强制退出不保存
:w           " 保存
:wq          " 保存并退出
:sp file     " 水平分割窗口
:vsp file    " 垂直分割窗口
Ctrl+ww      " 切换窗口
:!ls         " 执行 shell 命令
:r filename  " 插入文件内容
:set paste   " 粘贴模式(防格式错乱)

更多命令请参考此处
另外附上一张Vim键位图
Vim 键位图

# 效率提升技巧

  1. 组合命令示例

    • 5dd → 删除5行
    • y3w → 复制3个单词
    • c$ → 修改到行尾
  2. 标记跳转

    • ma 设置标记 a
    • 'a 跳转到标记 a
  3. 文件浏览

    Ctrl+w+h/j/k/l    " 在窗口间导航
  4. 插件支持
    可以在 idea,vscode 中安装vim插件


# 学习资源推荐

掌握 Vim 的关键:不必去死记硬背,在需要使用什么的时候查看对照表,反复使用即可

总访问量:加载中...更新于

请我喝[茶]~( ̄▽ ̄)~*

Yeah 微信支付

微信支付

Yeah 支付宝

支付宝