Vim 从入门到理解:一个编辑器为什么能让程序员着迷三十年

你一定听过这个段子:怎么退出 Vim? 这是一个在程序员圈子里流传了无数年的经典笑话。Stack Overflow 上关于"如何退出 Vim"的问题浏览量超过 260 万次。但笑归笑,如果你真的花时间学会了 Vim,你会发现一个惊人的事实——它根本不是什么古董,而是一把被你错过多年的利器。 Vim 到底是什么? Vim,全称 Vi IMproved,是 1991 年由 Bram Moolenaar 在经典 Unix 编辑器 vi 的基础上改进而来的文本编辑器。而 vi 的历史更早,可以追溯到 1976 年。 你可能会问:都快 2026 年了,为什么还要学一个比很多人年纪都大的编辑器? 答案很简单:因为它的设计理念至今无人超越。 想象一下,你正在写代码,右手在键盘和鼠标之间来回切换几百次。选中、删除、移动光标、再选中、再删除……一天下来手腕隐隐作痛。而一个熟练的 Vim 用户,双手始终停留在键盘主行(asdf jkl;),像弹钢琴一样流畅地编辑文本,鼠标积了一层灰。 这就是 Vim 的魔力。 最重要的一件事:模式 打开 VS Code、记事本、Word,你打开就能打字。这是大多数人理解的"编辑器"。 Vim 不一样。 它把编辑文本这件事拆分成了不同的"模式"——就像手机有不同的屏幕页面一样,每种模式下按键的功能完全不同。 普通模式(Normal Mode) 这是 Vim 启动后你默认所处的模式。在这个模式下,你按下的字母键不会输入文字,而是执行命令。 h 向左移动光标 j 向下移动光标 k 向上移动光标 l 向右移动光标 没错,Vim 用 hjkl 来移动光标,而不是方向键。为什么?因为 hjkl 就在右手的主行位置,你的手指不需要移动就能导航。想象 j 是一支朝下的箭头,k 朝上,h 在最左边所以向左,l 在最右边所以向右。 在普通模式下你还可以做很多事情:删除、复制、搜索、替换……你大概会花 80% 的时间待在这个模式里。 ...

March 29, 2026 · 3 min · 王云卿

Linux vs Windows:程序员该选哪个系统?

Linux vs Windows:程序员该选哪个系统? 你经常听到:“程序员应该用 Linux”、“Windows 不适合开发”。 真是这样吗?差异有多大?这篇文章结合 2025 年最新对比,给你最真实的答案。 一句话终极结论 后端/AI/服务端开发:Linux 明显占优 前端/桌面/游戏开发:Windows 有其优势 现代方案:Windows + WSL2 兼顾两者 但为什么?让我们讲透。 为什么 C/C++ 在 Linux 下更强? Windows 的问题 问题 Windows Linux 编译器 MSVC、MinGW、Clang 分裂 GCC/Clang 一套走天下 库管理 需手动分发运行时,IDE 集成好 包管理器自动处理,但有符号版本复杂度 权限管理 UAC 严格、路径复杂、环境难配 简单直接 包管理 winget/Scoop/Chocolatey 可用 apt/yum/pacman 发行版统一 资源占用 图形界面强制占用,后台服务多 无图形也能跑,资源全给程序 结果: C/C++ 在 Linux 下:好写、好编译、好部署、更快、更稳 为什么 Python 在 Linux 下也更强? Python 看似跨平台,但: 维度 Linux Windows 多进程/多线程 fork() 高效,子进程继承内存状态 spawn() 模式,子进程从头启动 文件 IO、网络 完胜,异步 IO 性能更好 路径问题、权限麻烦 深度学习、大模型 主要支持平台,CUDA 优先 经常各种兼容问题 服务器、云端 全是 Linux,调试方便 几乎不用,环境不匹配 容器化 Docker 原生 Docker Desktop 模拟,性能损失 Windows 下 Python 经常遇到: ...

March 6, 2026 · 3 min · 王云卿