【什么是区块链】Vim 利剑常磨,见血封喉
来源:以乐之名
segmentfault.com/a/1190000017502205
年底了,故事总是会有很多。
刚了一波通宵加班,趁着有时间,过了一遍 Vim 教程,顺便汇总下常用命令。
对于以 OSX / Linux 为开发环境的伙伴们,应该并不陌生。因其轻便,扩展性,可定制化,一直很受开发者追捧。高阶大神,袖中必有深藏。
Vim 编辑器简洁易用,在终端上可用来快速查看修改文档。虽然与其他编辑器如 WebStrom、VScode 相比,功能扩展相对欠缺,对新手朋友不太友好。但胜在多数 Linux 系统已附带,开箱即用,终端直接使用,无需再多开一个应用窗口。
作为一名前端开发工程师,如果你想秀操作用 Vim 来写 HTML/CSS/Javascript,我只想说一句,“小伙子,你很 6 啊!”。
Vim 学习的过程不是两三天即可入境,懒惰如笔者,几天不敲,命令忘了七八。时不时还得翻出来看看,至今仍以新手自居。
前言 vi/vim 的区别
vim 是 vi 的升级版本,它不仅兼容 vi 的所有指令,还有新增了一些新的特性。
[code] 1. vi filename
2. vim filename 3. // 两者同样的功能,能少敲一个字母,所以我们就用 vi 吧
[/code]
“工具总须多磨,方才用的趁手。”
Mac 终端键入 vimtutor
即可进入 Vim 入门教程,30 分钟足以让你应对 Vim 日常操作。
常规操作
命令 | 说明 |
---|---|
x | 删除光标下的字符 |
X | 删除光标左边的字符 |
s | 修改一个字符 (与 r 的区别,修改后直接进入 Insert 模式) |
i | 光标前插入字符 |
a | 光标后插入字符 |
A | 行尾插入字符 |
o | 光标下方新建一行并进入 Insert 模式 |
O (字母) | 光标上方新建一行并进入 Insert 模式 |
r | 替换字符 (单个) |
R | 替换字符 (多个) |
cw | 替换文本直到单词末尾 (ce 也可) |
c$ | 替换文本直到行尾 |
dw | 删除单词 (de, d2w) |
d$ | 删除到行尾 |
D | 删除到行尾 |
S | 删除到行为,并进入 Insert 模式 |
dd | 删除整行 |
y | 复制 |
yy | 复制整行 (yw, ye) |
p | 粘贴到光标之后 |
P | 粘贴到光标之前 |
u | 撤销 |
. | 重复上一次操作 |
:! | 执行外部名 (:!dir/:ls) |
% | 查找配对的括号 ), }, ] |
v motion :w | 选择性保存 |
Ctrl + D | 查看可能的补全 |
光标移动
命令 | 说明 |
---|---|
h | 左 |
l | 右 |
k | 上 |
j | 下 |
0 (数字) | 行首 |
$ | 行尾 |
w | 下一个单词起始处 |
nw (2w) | n 可为数字,表示移动两个单词 |
e | 单词末尾(与 w 的区别) |
gg | 文件起始处 |
G | 文件末尾处 |
#### 退出 |
命令 | 说明 |
---|---|
:wq | 保存并退出 |
ZZ | 保存并退出 |
:q! | 丢弃修改并退出 (q 退出,有修改的话 q 不能退出) |
:e! | 丢弃修改并打开原文件 |
#### 查找并替换 |
命令 | 说明 |
---|---|
:s/old/new/g | 查找 old 并替换为 new,g 代表整行匹配 |
:#, #s/old/new | #, #代表首尾行号 |
:%s/old/new/g | 全文匹配替换 |
:%s/old/new/gc | 全文匹配替换,并每次替换会弹出确认提示 |
#### 翻页 |
命令 | 说明 |
---|---|
Ctrl + e | 向下滚动一行 |
Ctrl + y | 向上滚动一行 |
Ctrl + f | 向下翻一页 |
Ctrl + b | 向上翻一页 |
Ctrl + u | 向上翻半页 |
Ctrl + d | 向下翻半页 |
#### 文件操作 |
命令 | 说明 |
---|---|
:e + filename | 打开新文件 |
:r + filename | 读取文件并插入到当前文件 |
#### 选项设置 |
命令 | 说明 |
---|---|
:set ic | 忽略大小写 |
:set is | 部分匹配(like) |
:set hls | 高亮匹配 |
:set nu | 显示行号 |
#### 分屏启动 vim |
命令 | 说明 |
---|---|
vim -on file1 file2... | 水平分屏 |
vim -On file1 file2... | 垂直分屏 |
#### 关闭分屏 |
命令 | 说明 |
---|---|
Ctrl + w c | 关闭当前窗口(如果是最后一个,无法关闭) |
Ctrl + w q | 关闭当前窗口(如果是最后一个,则退出 vim) |
#### 分屏 |
命令 | 说明 |
---|---|
Ctrl + w s | 上下分屏 |
Ctrl + w v | 左右分屏 |
:sp filename | 左右分屏,且打开一个新的文件 |
:vsp filename | 上下分屏,且打开一个新的文件 |
#### 切换分屏(光标切换) |
命令 | 说明 |
---|---|
Ctrl + w l | 右边 |
Ctrl + w h | 左边 |
Ctrl + w j | 上边 |
Ctrl + w k | 下边 |
#### 分屏尺寸调整 |
TIPS: (上下分屏生效)
命令 | 说明 |
---|---|
Ctrl + w = | 所有屏一样高度 |
Ctrl + w + | 增加高度 |
Ctrl + w - | 减少高度 |
#### 写在结尾 |
这么多命令要记,想对 Vim 说喜欢真不容易,按耐不住就新开 VScode。
少年莫慌,很多事情,难在开头,当你学会了,才会感谢当初的付出。
本文仅对常用的一些命令做了汇总,Vim 的玩法还有很多。在此推荐易水博客的《Vim 使用进阶》https://blog.easwy.com/archives
/advanced-vim-skills-catalog/ 系列,干货满满。
寒梅飘香,这个寒冬,与诸君互勉。
参考文档:
vi 和 vim 的区别 https://www.cnblogs.com/KiraEXA/p/5994078.html
vim 常用命令总结 https://www.cnblogs.com/yangjig/p/6014198.html
vi/vim 使用进阶 https://blog.easwy.com/archives/advanced-vim-skills-catalog/
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。