年底了,故事总是会有很多。

刚了一波通宵加班,趁着有时间,过了一遍Vim教程,顺便汇总下常用命令。

对于以 OSX / Linux为开发环境的伙伴们,应该并不陌生。因其轻便,扩展性,可定制化,一直很受开发者追捧。高阶大神,袖中必有深藏。

Vim编辑器简洁易用,在终端上可用来快速查看修改文档。虽然与其他编辑器如WebStrom, VScode相比,功能扩展相对欠缺,对新手朋友不太友好。但胜在多数Linux系统已附带,开箱即用,终端直接使用,无需多开一个应用窗口

Vim学习的过程不是两三天即可入境,懒惰如笔者,几天不敲,命令忘的七八。时不时还得翻出来看看,至今仍以新手自居。

作为一名前端开发工程师,如果你想秀操作用Vim来写HTML/CSS/JavaScript,我只想说一句,“小伙子,你很6啊!”。

前言 vi/vim的区别

vim 是 vi 的升级版本,它不仅兼容vi的所有指令,还有新增了一些新的特性。


vi filename
vim filename
// 两者同样的功能,能少敲一个字母,所以我们就用vi吧

“工具总须多磨,方才用的趁手。”

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使用进阶》系列,干货满满。

寒梅飘香,这个寒冬,与诸君互勉。


参考文档:

  • vi和vim的区别
  • vim常用命令总结
  • vi/vim使用进阶

作者:以乐之名
本文原创,有不当的地方欢迎指出。转载请指明出处。

Vim 利剑常磨,见血封喉 1相关推荐

  1. Vim 利剑常磨,见血封喉

    (给Python开发者加星标,提升Python技能) 来源:以乐之名 segmentfault.com/a/1190000017502205 年底了,故事总是会有很多. 刚了一波通宵加班,趁着有时间, ...

  2. 公民个人信息安全须利剑“常出鞘”

    最近,我的手机突然"清净"很多了,除了9月11日收到一个号码为18051953441的"响一声"诈骗电话外,就再也没有接到这类电话了,但这样的"耳根清 ...

  3. 5 个好用的开发者 Vim 插件

    (给程序员的那些事加星标) 英文:Ricardo Gerardi,翻译:Linux中国/pityonline linux.cn/article-10563-1.html 我用 Vim 已经超过 20 ...

  4. sublime text 修改cmd命令_Vim 命令合集

    (给Linux爱好者加星标,提升Linux技能) 来源:perlman www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html ...

  5. 手把手教你PyTorch项目:YOLO v3目标检测

    机器之心编译 目标检测是深度学习近期发展过程中受益最多的领域.随着技术的进步,人们已经开发出了很多用于目标检测的算法,包括 YOLO.SSD.Mask RCNN 和 RetinaNet.在本教程中,我 ...

  6. 给小白的论文写作方法!实用率99%!

    源 / 社交学术圈 写在前面的话 身为80后的入门级"青椒",经日摸索挣扎于学术研究的各个环节,写学术论文就是其中的典型一环.虽然在别人"直观"看来仅仅是一串统 ...

  7. 『力荐汇总』这些 VS Code 快捷键太好用,忍不住录了这34张gif动图

    之前写过三篇文章,收获了极其不错的阅读量与转发量: 你真的会用 VS Code 的 Ctrl.Shift和Alt吗?高效易用的快捷键:多光标.跳转引用等轻松搞定 VS Code 中的 Vim 操作 | ...

  8. 被误解的明朝——中国的文艺复兴(转)

    在夏咸淳著的<明末奇才--张岱论>中有这么一段话: "欧洲文艺复兴时期的光辉灿烂的文化,大批多才多艺的人物,乃是人类的骄傲.明朝时期,中国也出现了群星灿烂,人才辈出的文化景观.当 ...

  9. 职业成长微习惯(一):随手记录工作日志

    按:半瓦工作11年,工资涨了4,5倍:有快速成长,也有懈怠和跳坑:不舒服中逐渐看到了未来更多的可能性.想写几篇文章分享我的四个微习惯:随手记录工作日志,英语(关注信息来源和非母语资料),基本功与素养, ...

最新文章

  1. java并发 并行 串行
  2. 【zabbix】安装、配置agent,配置被监控端
  3. 180C. Letter
  4. 云服务器 ECS > 标签与资源 > 标签 > 标签概述
  5. Mac底下java和jre路径
  6. 电信移动联通广电喜提5G牌照,5G手机明年爆发
  7. WaitForSingleObject与WaitForMultipleObjects用法详解
  8. 有什么软件可以测试win10电脑性能,微软能否翻盘 Win10系统4K高分优化实测
  9. 联合哈佛大学,Google 要用人工智能来预测地震余震
  10. [零基础学python]为什么要开设本栏目
  11. Linux自学之旅-基础命令(一)
  12. pdf文件如何生成目录 wps_如何使用WPS把Word文档转换为PDF文档并生成目录?
  13. android webview 真正实现---保存整个网页源码
  14. AURIX TC397 Multicore 多核
  15. 膜拜大神,Linux之父家中停电6天,竟然还码出新版Linux内核!
  16. 基于jsp的实验室预约管理系统的设计与实现
  17. Ubuntu 如何搭建可视化界面?
  18. 自从上了K8S,项目更新都不带停机的!
  19. 让更多的人知道如何用C#操作斑马条码打印机
  20. 哪怕四处碰壁也要贯彻正道

热门文章

  1. 2020.8.3【算协集训】线性dp
  2. .Net 7 CLR和ILC编译函数过程
  3. 从CSDN账户密码被盗说起
  4. MIB Browser使用方法
  5. 【数据结构和算法】2谈谈算法
  6. bxl类型封装怎么转换为AD库封装
  7. 汪汪汪WDG--看门狗的作用
  8. 百度智能云的使用——以人脸识别为例
  9. 视频素材网,视频剪辑必备。
  10. 技术项目的评审及其标准