惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
Martin Fowler
Martin Fowler
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Stack Overflow Blog
Stack Overflow Blog
C
Check Point Blog
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog
O
OpenAI News
云风的 BLOG
云风的 BLOG
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
L
LangChain Blog
V
Vulnerabilities – Threatpost
P
Privacy & Cybersecurity Law Blog
Microsoft Azure Blog
Microsoft Azure Blog
H
Help Net Security
博客园 - 三生石上(FineUI控件)
C
Cyber Attacks, Cyber Crime and Cyber Security
N
News | PayPal Newsroom
The Register - Security
The Register - Security
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
C
Cisco Blogs
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Vercel News
Vercel News
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Attack and Defense Labs
Attack and Defense Labs
人人都是产品经理
人人都是产品经理
S
Security Affairs
爱范儿
爱范儿
Engineering at Meta
Engineering at Meta
T
Tor Project blog
大猫的无限游戏
大猫的无限游戏
L
Lohrmann on Cybersecurity
aimingoo的专栏
aimingoo的专栏
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
博客园 - 【当耐特】
V
V2EX
V
Visual Studio Blog
The GitHub Blog
The GitHub Blog
雷峰网
雷峰网
WordPress大学
WordPress大学
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
L
LINUX DO - 最新话题
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Schneier on Security
Schneier on Security
小众软件
小众软件
PCI Perspectives
PCI Perspectives

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派 万字剖析:千问App深度体验报告(2026) - 少数派 在2026年,如何真正防止别人抄袭你的作品 - 少数派 怎么用 50 块搭个 AI 语音助手?我踩了 3 天坑 - 少数派 YeeroAI:让 AI 对话真正成为知识管理的一部分 - 少数派 爬泰山 - 少数派 「旅图显影」 App 更新:这次,我们补上了一点「手感」 - 少数派 假期出门太折磨?我的 23 条经验帮你规划惬意旅行 - 少数派 工作流会变吗 - 少数派 Claude Opus 4.6 怎么用最省钱?我测了 5 种方案 - 少数派 GPT Image 2 让图文并茂不再稀罕 - 少数派 用户侧出发——什么是AI,我要不要学习? - 少数派 找片、转存、整理、播放一条龙!让你的付费网盘值回票价 - 少数派 欢迎试用!日课一问2.0插件 - 少数派 自己做的MDeditor,原本想购买 Typora 试了两次支付不成功,干脆自己做一个 - 少数派 vibe coding了一个 3MB 的小工具,让 ~/Downloads 彻底告别混乱 - 少数派 因为受不了 Mac 的风扇策略,我做了一个风扇控制工具 - 少数派 别只怪模型 - 少数派 Warp 终端的 AI 功能怎么用?我测了一周的体验 - 少数派 AI 写代码老是出 bug?这 5 个配置我后悔没早知道 - 少数派 「新玩意」苹果出相机可能就这样:Sigma BF + 45mm F2.8 DG Contemporary - 少数派 一个面向2030年的AI操作系统是什么样子的:浅谈cola这款有灵魂的Agent - 少数派 别只看写代码 - 少数派 每天解决10个问题,还是一口气攻坚解决400个? - 少数派 AI 交易机器人怎么搭?我用 Claude 跑了一周实盘 - 少数派 Maptoposter Online:把你爱的城市画成艺术海报 - 少数派 Function Calling 怎么用?我测了 3 个模型发现差距真大 - 少数派 Legend Talk:我做了个 AI 圆桌,让 160 位思想家围着你的问题转 - 少数派 如何找到自己的蓝方?在小县城寻找压力测试 - 少数派 语音输入与软件接口|2026年聊AI时,我们都聊些什么(上) - 少数派 混动已经卖爆,纯电又来补刀——钛7闪充版简直“不讲武德” - 少数派 本月玩什么|朋友收藏、识质存在、沙罗周期 - 少数派 为什么要每天坚持输出? - 少数派 Claude API 挂了好几个小时,你的项目有备用方案吗? - 少数派 Function Calling 没你想的复杂——我用它做了个有点用的工具 - 少数派 登录系统立即播放视频或者图片音乐的软件 - 少数派 我为什么创建 FlipHTML5 下载工具 - 少数派 残局没电?多品牌外设电量统一管理软件EasyBluetooth已支持RTSS游戏内显示以及AIDA64 - 少数派 前往通义路的路 - 少数派 太好看了,媲美Sun的个人导航页,NAS部署星云门户 - 少数派 乌黑嘴唇“一键检测”上线了 - 少数派 派早报:Claude AI 接入多个创意软件生态、FILCO 生产方接手品牌等 - 少数派 【更新】BearCLI、Claude 连接器与 MCP 服务器 - 少数派 记了上千条流水,还是看不懂财务?我做了一个让 AI 读懂账本的工作台 - 少数派 MINI R56 升级原厂 Sport 模式 - 少数派 新玩意 | 一棵柠檬树(仿真版) - 少数派 Momenta的“物理AI”野望,需迈过“含摩量”这道关 - 少数派 网页直接投屏控制手机!NAS一键部署PandaScrcpy,流畅丝滑可远程。 - 少数派 众测|邀你一同探索随身 AI 硬件入口 YoooClaw C·ONE - 少数派 2050大会:分享时间是真诚 参会记 - 少数派 iPad 赋能电影创作:国内首部宣纸手绘长片《燃比娃》的幕后故事 - 少数派 AI的审美:我用 8 个大模型给 100 张旅行照片打分 - 少数派 普通人如何破圈?去参加一个本地协会 - 少数派 把极空间的图标全换了,主题DIY全攻略打造你的专属NAS桌面 - 少数派 电子便签墙,帮你实现便签自由 - 少数派 我如何用三个 CLI 工具取代文档创建需求 - 少数派 原来真的有人可以玩一辈子 - 少数派 社区速递 139 | 派友热议三月买了啥、复古单反尼康 Df 体验 - 少数派 06 作品的赏析与评价 - 少数派 TDS REVIEW|索尼 WF-1000XM6 降噪真无线耳机体验 - 少数派 35.98万起售的第二代腾势D9,我看重的不是堆料,而是不凑合 - 少数派 鼠须管 Squirrel 皮肤配置指北 - 少数派 从watch ultra2换到redmi watch6 - 少数派 派早报:阿里巴巴发布视频生成模型 HappyHorse 1.0 等 - 少数派 别迷信1M - 少数派 家人们天塌了!网盘“大封杀”,多个渠道多条路,NAS部署PanHub - 少数派 AI与人勾心斗角!NAS一键部署AI狼人杀,假日休闲必备。 - 少数派 电商必备!Comfyui工作流批量生图插件,一次生成12张!支持Nano banana pro模型 - 少数派 Comfyui工作流配置Gpt-image-2模型教程,0.03/张 - 少数派 OpenClaw第三方APi怎么配置?可使用Gpt-image-2模型 - 少数派 会员社区话题精选 Ep. 103 - 少数派
都 2022 年了,为什么我还在用 Vim - 少数派
2022-02-04 · via 少数派

TL;DR 太长不看

  • Vim 是强大高效灵活优雅的文本编辑器;
  • 使用 Vim 是复利投资,也是有趣的探索;
  • 所有常见操作系统都有 Vim,你的电脑里可能已经预装了它;
  • Vim 有无数强大插件可以提升你的编辑效率;
  • 要开始使用 Vim,掌握几个基本功能就够了;
  • 唯一需要的,是不断尝试、总结、改进的练习心态;

Vim 的最小必要知识

  1. Vim 用户的最高理想,是以思考的速度编辑文本。也许没有人能真正实现这一理想,但是有些人的确很接近。
  2. Vim 是世界上寿命最长的软件之一,至今已有 30 年历史,而且还在持续改进中。它的灵感之源是 Bill Joy 在上世纪七十年代所写的 vi,而 vi 的前身是伴随着 Unix 诞生的 ed。Vim,就是「Vi IMproved」。
  3. 使用 Vim 时无需鼠标。Vim 支持鼠标,但是 Vim 用户嫌弃鼠标拖慢了他们的速度。
  4. Vim 有庞大的用户社区,是编辑器大战的阵营之一。另一方是 Emacs,第三方是其他所有编辑器:「编辑器之神」和「神之编辑器」,以及其它。
  5. Vim 和其他常见文本编辑器的根本区别是「模式」。Vim 可以在几种模式中切换,但同一时间只能处于一种模式。大部分时候,Vim 处于「普通」(Normal) 模式。在这种模式下,按下键盘上的某个键将会触发一个命令,而不是把对应的字符显示在屏幕上。这是最困扰 Vim 初级使用者的。
  6. Vim 有一个深刻洞察(从 vi 继承来的):无论我们写程序、写小说,或者只是写个简单的说明书,花在修改上的时间总比花在写作上的时间多;而修改时花费时间最多的,是移动光标、选择或删除需要修改的对象。
  7. Vim 有一个优雅设计(也是从 vi 继承来的):文本结构化。一篇文章包括一个或多个段,每段包括一个或多个句子,一个句子包括一个或多个词,这些都是可以单独编辑的文本对象。程序代码也是如此,一对引号、一对括号、一对中括号、一对大括号、HTML 中的一对标签,也都是文本对象。想要删除一整块代码?只需要敲三个键。
  8. Vim 编辑英文文章或程序代码非常流畅,但中文文章时会差一些。这是因为 Vim 不支持中文分词。不过我们可以稍微迂回地解决这个问题。
  9. 很难完全掌握 Vim。它的 中文帮助手册和用户参考手册一共有 4000 页。stackoverflow.com 上 「如何退出 Vim 编辑器?」的浏览次数超过了 250 万次。不过我们只需要启动 Vim,尝试几个简单命令,就已经在使用 Vim 了。
  10. Vim 并不需要学习;它需要使用。最好每天都用。

一点背景信息

我的工作主要是和文本打交道:写文章,翻译,写一点程序。2008 年开始比较频繁地使用 Ubuntu,2010 年左右开始以 Ubuntu 为主,偶尔才用 Windows。

用 Ubuntu 的原因之一是离开微软生态,另一个原因就是久仰的 Vim。不过 Vim 的确不怎么容易上手。跟着官方的 vimtutor 走了几遍,只记住了一些移动命令,还有打开文件、保存文件、退出 Vim,以及剪切、复制和粘贴。

一开始只能用 hjkl 笨拙地移动,只会用 a 和 i 进入插入模式,只会按 Esc 键回到普通模式,只会用 ZZ 保存和退出,只能用网上搜索拼凑出来的 vimrc 配置文件。虽然总会忘记切换模式,经常会打开莫名其妙的窗口,不过也算是开始使用了。

只要开始,就总是会有进步的。对笨拙缓慢的操作厌倦了以后,自然就会去找更好的方法;重复某些系列操作太多,自然就会想去把它自动化。渐渐地,按键成了肌肉记忆,就像用双拼输入法般完全不必想。

2013 年彻底转到 Mac 生态,Vim 的配置和使用习惯也带了过来。机器的性能越来越强,显示器的分辨率越来越高,终端从 gnome-terminal 换成了 iTerm2,Shell 从 bash 换成了 zsh(还加上了 oh-my-zsh),Vim 也终于升级到了第八个大版本,但一直是我的主力编辑器。

十几年间,我的 Vim 的配置文件像是忒修斯之船,不知道还有哪里没有被修改过。打开某些开关,关上另外一些;加上几个键盘映射,删掉一些不常用的;添加某个插件,偶尔又卸载掉;旧的插件不维护了,换成新的;性能差的插件被性能好的替代;即使是插件管理插件本身,也经历了几次替换。

随着需求逐渐清晰和技能慢慢提升,Vim 也在变得越来越顺手。也许永远不会达到完美,永远达不到「以思考的速度编辑」,但是每次发现了一个新用法,总会觉得有一点欣喜,觉得离完美更近了一点。

我们应该致力在不完美的存在中找到完美的存在,应该致力在不完美中找到完美。对我们来说,全然的完美与不完美没有什么不同。 铃木俊隆,《禅者的初心》

这么多年来,我写 txt,ReST,Markdown,写一点 C,一点 Python,一点 HTML 和 CSS,最主要的编辑器都是 Vim。有时候我用 Typora 或 Ulysses,有时候会用 Sublime Text、PyCharm、WebStorm,也从 iPython 用到 Jupyter,但最习惯的动作,还是用快捷键呼出 iTerm2,然后输入v <filename>

为什么要使用 Vim

首先,当然是效率

的确,对一般用户来说,更糟就是更好 是成立的:软件受欢迎的程度并不随功能的增加而提高,太多选择会让人不知所措而心生厌倦。用户使用软件是为了完成自己的任务、达成自己的目标,并不是成为专家。

日常使用的科技产品追求开箱即用,追求简明清晰,追求只靠直觉来操作。降低认知损耗,这是对的。

《Unix 编程艺术》中也说:「最易用的程序就是用户需要学习新东西最少的程序——或者,换句话说,最易用的程序就是最切合用户已有知识的程序。」

但编辑器不是日常科技产品,它是用来创造的工具。为了效率,我们需要牺牲一点舒适和直觉。

开汽车和开飞机哪一个更容易?全拼输入和五笔输入哪一个更容易?而哪一个效率更高呢?不言而喻。

对于需要使用键盘和鼠标操作的计算机软件来说,简单易用就意味着低效率。我们也许可以列出几条简单的经验法则:

  • 手臂、手腕、手指在完成操作时的移动距离越短,效率越高;
  • 击键次数越少、键位越容易被主要手指按到,效率越高;
  • 操作越熟练,操作过程越不干扰思路,效率越高;

所以我们认为快捷键效率高于鼠标右键菜单,鼠标右键菜单效率高于菜单栏菜单项;输入 20 次 j 的效率低于输入:20G 的效率;双拼比全拼效率高,五笔比双拼效率高;盲打比二指禅效率高,熟悉的快捷键比陌生的快捷键效率高。

即使是标榜最简单易用的编辑器,也会列出大量快捷键。不同用户的需求不同,但是软件不应该去阻碍用户对高效的追求。

同样还是在 《Unix 编程艺术》 中说:「调试通常会占用四分之三甚至更多的开发时间。」

使用快捷键,把记忆的负担从机器上转到了人身上,但是提升了操作效率。

这是「必要的懒惰」。用尽可能少的操作来完成尽可能多的任务;例如设置新的快捷键,设置宏,写几行代码来自动重复操作。这种懒惰,需要尝试、探索、总结才能获得。

其次,是灵活

在 Vim 中几乎可以自定义一切。外观可以随意调整,提示方式可以随心更换。几乎所有的功能都可以重新映射,可以把最常用的功能放在最顺手的位置。

灵活是效率的注脚。灵活意味着可以自行打造自己的工具,最适合自己的使用习惯,最适应自己要完成的任务,也就意味着更高的效率。

不过当然,灵活意味着让初级用户不知所措,意味着混乱,意味着反复练习,意味着你只能用自己配置的 Vim。

这些其实不是问题。毕竟初级用户变成中级用户的路途,是以大量尝试和练习来铺就的;而专家用户,只是失败得更多也练习得更多的中级用户。自己的机器只有自己使用已经是常识;就算偶尔要去远程使用其他机器,也完全可以把配置文件连同相关目录打个包扔到网盘、github 或者 U 盘里,到时直接下载就好。

再次,是投资

唯一能和 IT 界比潮流速度的,可能只剩时尚界了。

不过潮流来了又去,底层却不易变化。每过一阵就有新的编辑器、新的框架、新的语言、新的概念独领一时风骚,但 Unix 设计哲学、传统数据结构、C 语言长存。

Vim 也是如此。它很可能会随着键盘的消失而消失,不过在那之前都会存在——存在时间越长的东西,越有可能继续存在下去。使用 Vim,是对自己工作效率的一项长期复利投资。

一些现代编辑器也提供了 Vim 模式或 Vim 插件,Sublime Text、Atom、VS Code 都有,可以提供 Vim 的主要功能。在不同工具中使用同一套已经熟悉的操作方法,这也是效率的体现。

更进一步地,浏览器也有 Vim 插件。Chrome 上有几个插件,其中比较受欢迎的是 Vimium。一旦习惯在 Chrome 中用 u,d,j,k 来上下滚动页面,用 J,K 在标签页之间跳转,用 f 来打开链接,用 F 在新标签页中打开链接,用 v 来选中内容,就很难再回去使用鼠标了。

有一个可以在终端中运行的软件包叫 ranger,可以看成是简单的资源管理器或 Finder,支持 Vim 键位;键盘编辑器 Karabiner 甚至提供了一套预设的键映射,能在任意 App 中使用 Vim 键位。

忘掉方向键吧,hjkl 才是真正的方向键;忘掉<Ctrl+C>和<Ctrl+V>吧,y 和 p 才是真正的复制和粘贴。

最后但绝非最不重要的,是乐趣

探索的乐趣。解决问题的乐趣。有新发现时的乐趣。

搞懂规则的乐趣。精进技能的乐趣。

以及,因为高效,而能将更多时间投入到兴趣、娱乐、社交、学习的乐趣;离开电脑,去接触真实世界的乐趣。

如何入门

Vim 的下载页面和安装说明在 这里

Mac 已经预装了 Vim,只是版本有点低。要安装更高版本,只需要brew install vim即可。本文不详述如何在 Mac 上安装brew,不过安装好后最好把源换成国内源,例如中科大的源。

想要安装图形用户界面版本,brew install macvim --cask

在各种 Linux 发行版上,使用相应的包管理器安装即可。

在 Windows 上,下载安装包并安装;如果有必要的话,把安装路径到系统环境变量。

然后,在终端输入命令 vimtutor 就会打开 Vim 教程,可以开始练习 Vim 的基本操作。

更好的做法,是去找到特定语言的 Vim 教程,复制一份来练习。

例如,要在 Mac 上使用简体中文版教程,可以这样操作:

  1. 在终端中输入locate tutor.zh并回车。终端中将会列出中文 Vim 教程的所在路径。
  2. 在终端中输入cp /路径/tutor.zh_cn.utf-8 ~/Documents,可以将简体中文版 Vim 教程复制到「文档」文件夹下;
  3. 在终端中输入vim ~/Documents/tutor.zh_cn.utf-8,就可以开始练习了。

完整的练习大概需要半小时,不过并不需要一次完成。在一开始,掌握基本移动、模式切换、保存、退出就够了。

接下来,就可以尝试把 Vim 用在用在你的工作当中了。

基本原则

避免重复(DRY, Don't repeat yourself):如果你重复了某个操作好几次,那么一定有更好的方法来实现它。停下来,想想看,也许搜索一下。然后再练习一下。

Vim 的作者曾经写过一篇 《高效编辑的七个习惯》这里有一份中译版。

几个小提示

注:Vim 相关文档中习惯以<C-R>的形式来表示组合键 Ctrl+R。在本文中依然使用传统记法。

  1. 如果你用标准键盘,把 Cap Lock 和 Ctrl 键换一下会是个好主意。
  2. 练习使用<Ctrl+[>回到普通模式,不要使用<Esc>。这个组合键会方便很多。
  3. HHKB 键盘对 Vim 很友好,但是并不一定非要用它。我在 iMac 上用 HHKB,在 Macbook 上用自带键盘,并没有感到不便。不过我把 Macbook 上的 Cap Lock 和 Ctrl 调换了位置,把 HHKB 上的"~"映射成了<Shift+Esc>
  4. 使用<Ctrl+M><Ctrl+J>在插入模式下换行,比敲回车键更方便。严格来说这两种换行方式有一些区别,不过可以先忽略。
  5. 经常回到普通模式。它被叫做「普通(Normal)」模式是有原因的——它才是 Vim 的默认状态。
  6. cdyv这几个命令和文本对象组合起来,会极大提升效率。删除一对引号和其中的内容?da"。删掉一整块用大括号括起来的代码?da}。删掉一对 HTML 标签?dat。如果只想删掉其中的内容但保留成对的符号或标签,把a换成i就可以了。类似地,选中一个句子?vis。复制一段?yip。要删除到下一个分号?dt;。要删除到下一个分号但保留分号?df;即可。
  7. 要快速在文档中跳转,可以考虑四管齐下:使用m标记、使用<Ctrl+I><Ctrl+O>,设置使用相对行号set relativenumber,以及安装 vim-easymotion 插件。
  8. 大量使用./命令。它们超级好用。

下一步

你会越来越熟练,也会越来越不满,希望能让自己效率更高。接下来,你会慢慢去查找、去了解这些内容:

  • 高效移动;
  • 跳转;
  • 高效删除;
  • 查找替换;
  • 寄存器;
  • 宏;
  • 缓冲区;
  • 窗口;
  • 标签页;
  • 配置文件;
  • 常用插件;
  • 以及更多更多。

然后某一天,你会奇怪地问自己:「为什么我没有早一点开始用 Vim?」