## 模式切换
Vim有四种模式,记牢这三个就够了:
– 普通模式:打开Vim默认进入,按Esc随时回到这里
– 插入模式:按i进入,直接打字
– 可视模式:按v进入,选文本
– 命令行模式:按:进入,输命令
i 光标前插入
I 行首插入
a 光标后插入
A 行尾插入
o 下方新行插入
O 上方新行插入
## 光标移动
别用方向键,那是新手行为。用h/j/k/l效率翻倍:
h 左移一格
j 下移一行
k 上移一行
l 右移一格
w 跳到下一个单词开头
b 跳到上一个单词开头
e 跳到单词末尾
0 跳到行首
$ 跳到行尾
gg 跳到文件第一行
G 跳到文件一行
:n 跳到第n行,比如:42跳到42行
## 编辑操作
x 删除光标处字符
dd 删除整行
dw 删除一个单词
d$ 删除到行尾
yy 复制整行
yw 复制一个单词
p 粘贴在光标后
P 粘贴在光标前
u 撤销
Ctrl+r 重做
数字可以组合使用,这是Vim的精髓:
3dd 删除当前行往下3行
5yy 复制当前行往下5行
## 搜索与替换
/keyword 向下搜索keyword
?keyword 向上搜索keyword
n 跳转到下一个匹配
N 跳转到上一个匹配
:%s/old/new/g 全文替换old为new
:%s/old/new/gc 全文替换,每个匹配确认
:1,10s/old/new/g 只替换第1到10行
## 多文件操作
:e filename 打开另一个文件
:bn 切换到下一个文件
:bp 切换到上一个文件
:ls 列出所有打开的文件
:bd 关闭当前文件
:sp filename 水平分割窗口打开文件
:vsp filename 垂直分割窗口打开文件
Ctrl+w w 在窗口间切换
Ctrl+w q 关闭当前窗口
## 可视模式操作
按v进入可视模式后,用h/j/k/l选中文本:
v + 移动选择文本
y 复制选中内容
d 删除选中内容
> 缩进选中行
< 反缩进选中行
## 实用技巧
. 重复上一次操作(最强快捷键)
>> 缩进当前行
<< 反缩进当前行
== 自动缩进当前行
J 合并下一行到当前行
快速跳转:
% 跳转到匹配的括号({[对应位置
* 向下搜索光标下的单词
# 向上搜索光标下的单词
## 配置文件
把常用设置写进~/.vimrc,直接生效:
set number " 显示行号
set relativenumber " 显示相对行号
set tabstop=4 " Tab宽度4空格
set shiftwidth=4 " 缩进宽度4空格
set expandtab " Tab转空格
set autoindent " 自动缩进
set hlsearch " 高亮搜索结果
syntax on " 语法高亮
## 服务器使用场景
如果你在远程服务器上编辑文件(比如雨云的云服务器,性价比高又稳定),Vim是标配。SSH连上去后:
ssh user@yourserver
vim /etc/nginx/nginx.conf
没有图形界面,Vim就是你的IDE。配合雨云的低延迟网络,编辑配置文件和代码基本感觉不到延迟。
## 快速上手练习
1. 打开一个文件:`vim test.txt`
2. 按i进入插入模式,打几行字
3. 按Esc回普通模式
4. 按:进入命令行模式,输入wq回车保存退出
5. 再打开,用dd删除行,yy复制,p粘贴
花10分钟练熟h/j/k/l和i/Esc这两个切换,后面自然就快了。Vim的学习曲线陡在头两天,之后就是肌肉记忆。
雨云是国内一家老牌云服务商,提供高性价比的云服务器和虚拟主机。我用它部署了好几个项目,速度和稳定性都不错。通过 https://www.rainyun.com/SAJA_ 注册可以领一张 5折优惠券,有需要的朋友可以看看。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END



暂无评论内容