Skip to content

从鼠标到键盘的完整迁移路线

系统性地将你的工作流从鼠标驱动迁移到键盘驱动。

迁移阶段

第一阶段:基础移动(第 1-2 周)

目标:掌握基本光标移动,减少方向键使用

必学操作

操作按键替代
上下左右h j k l方向键
词移动w b eCtrl+方向键
行首行尾0 $Home End
文件首尾gg GCtrl+Home/End

练习方法

  1. 禁用方向键

    json
    {
      "vim.normalModeKeyBindings": [
        { "before": ["<up>"], "after": [] },
        { "before": ["<down>"], "after": [] },
        { "before": ["<left>"], "after": [] },
        { "before": ["<right>"], "after": [] }
      ]
    }
  2. 每日练习

    • 在任何文件中用 hjkl 移动
    • 目标:完全不看键盘

里程碑

  • [ ] 能够流畅使用 hjkl 移动
  • [ ] 熟练使用 w b e 按词移动
  • [ ] 不再伸手按方向键

第二阶段:基础编辑(第 3-4 周)

目标:掌握插入和删除操作

必学操作

操作按键说明
进入插入模式i a o O不同位置插入
删除x dd dw删除字符/行/词
复制粘贴yy p P复制行/粘贴
撤销重做u Ctrl+r撤销/重做

练习方法

  1. 强制使用 Vim 方式

    • 想删除时用 xdd
    • 想复制时用 yyyw
  2. 编写代码时

    • o 新建下一行并进入插入模式
    • A 跳到行尾并插入

里程碑

  • [ ] 能够使用 i a o O 在正确位置插入
  • [ ] 熟练使用 dd yy p 进行行操作
  • [ ] 编辑时不再需要鼠标定位

第三阶段:文本对象(第 5-6 周)

目标:掌握 Vim 文本对象,高效编辑

必学操作

操作按键说明
词内ciw diw yiw操作整个词
引号内ci" di" yi"操作引号内
括号内ci( di( yi(操作括号内
标签内cit dit yit操作标签内

练习方法

  1. 刻意练习

    • 在函数参数上练习 ci(
    • 在字符串上练习 ci"
    • 在 HTML 上练习 cit
  2. 替换原有习惯

    • 双击选中 → viw
    • 拖动选中 → v + 移动

里程碑

  • [ ] 条件反射式使用 ci" ci(
  • [ ] 能够组合操作符和文本对象
  • [ ] 编辑速度明显提升

第四阶段:搜索与跳转(第 7-8 周)

目标:掌握快速导航

必学操作

操作按键说明
搜索/ ? n N前向/后向搜索
字符跳转f t F T跳转到字符
词搜索* #搜索当前词
定义跳转gd gr代码导航

练习方法

  1. 替换 Ctrl+F

    • 使用 /pattern 搜索
    • 使用 n N 导航结果
  2. 替换鼠标点击

    • f; 跳转到分号
    • t) 跳转到括号前

里程碑

  • [ ] 搜索时使用 / 而不是 Ctrl+F
  • [ ] 熟练使用 f t 行内跳转
  • [ ] 能够使用 gd 跳转定义

第五阶段:分屏与窗口(第 9-10 周)

目标:键盘管理窗口布局

必学操作

操作按键说明
垂直分屏<leader>v分屏编辑
分屏导航Ctrl+h/j/k/l切换分屏
关闭窗口<leader>q关闭当前
Buffer 切换H L前后文件

练习方法

  1. 分屏工作

    • 打开相关文件在分屏中
    • 练习 Ctrl+h/j/k/l 切换
  2. 多文件编辑

    • H L 切换 buffer

里程碑

  • [ ] 能够纯键盘管理分屏
  • [ ] 熟练切换多个打开的文件
  • [ ] 不再用鼠标点击标签页

第六阶段:高级功能(第 11-12 周)

目标:掌握宏、多光标等高级功能

必学操作

操作按键说明
宏录制qa ... q @a录制回放
多光标gb添加光标
可视块Ctrl+v块操作
点命令.重复操作

练习方法

  1. 宏练习

    • 简单任务:添加分号到每行末尾
    • 复杂任务:重构多个相似函数
  2. 多光标练习

    • 批量修改变量名
    • 批量添加引号

里程碑

  • [ ] 能够录制和使用简单宏
  • [ ] 熟练使用 gb 添加多光标
  • [ ] 使用 . 重复常见操作

每周练习计划

第 1 周:基础移动

练习内容时长
1学习 hjkl15 分钟
2练习 hjkl30 分钟
3学习 w b e15 分钟
4练习 w b e30 分钟
5学习 0 $ ^15 分钟
6-7综合练习各 30 分钟

每日习惯

  1. 开始工作前:5 分钟 Vim 练习
  2. 工作中:强制使用已学快捷键
  3. 结束时:回顾今天用了多少次鼠标

进度追踪

周检查清单

第 N 周结束时检查:

  • [ ] 本周目标操作是否掌握
  • [ ] 鼠标使用频率是否降低
  • [ ] 是否遇到效率瓶颈
  • [ ] 下周学习计划是否明确

月度评估

每月评估:

  • 编辑效率提升百分比
  • 鼠标使用减少百分比
  • 最常用的 10 个快捷键
  • 需要加强的领域

常见困难与解决

1. 忘记快捷键

解决

  • 打印速查表贴在显示器旁
  • 使用 which-key 提示插件
  • 每天复习 5 个快捷键

2. 速度不如鼠标

解决

  • 正常!初期速度下降是必经阶段
  • 坚持 2 周后会明显提升
  • 不要在紧急任务时强行使用

3. 配置复杂

解决

  • 使用本书提供的配置模板
  • 逐步添加配置,不要一次性复制大量配置
  • 理解每个配置的作用

4. 与 VSCode 原生冲突

解决

  • 使用 handleKeys 配置
  • 查阅本书键位冲突章节
  • 选择性禁用冲突键位

最终目标

12 周后你应该能够:

  • ✅ 完全不使用方向键
  • ✅ 编辑代码时不触碰鼠标
  • ✅ 使用 Vim 方式完成所有文本操作
  • ✅ 熟练使用分屏和窗口管理
  • ✅ 能够录制和使用宏
  • ✅ 感受到明显的效率提升

总结

迁移路线图:

  1. 基础移动hjkl,词和行移动
  2. 基础编辑:插入、删除、复制粘贴
  3. 文本对象ci" di(
  4. 搜索跳转/ f gd
  5. 窗口管理:分屏、Buffer
  6. 高级功能:宏、多光标

关键:循序渐进,持之以恒。


下一步:了解常见错误与效率陷阱。

从鼠标到键盘的完整迁移路线 has loaded