Vim学习教程

通过定时推送、渐进式课程和场景化教学的方式系统学习 Vim 操作技巧。

概述

Vim 学习教程是 dora-kids Agent 提供的定时教学功能之一。最初采用简单的”Vim Minute”方式,每天随机推送一个 Vim 技巧并附带选择题测验。后来经过多次反思和迭代,演变为更系统化的渐进式学习方案。

教学方法经历了从”碎片随机推送”到”每日一招(Sniper Protocol)“再到”技能树(Skill Tree)“的演进。最终方案采用连贯的课程体系,按 Level 1(基础移动 hjkl)→ Level 2(词跳 w/b)→ Level 3(操作+移动 cw)→ Level 4(文本对象 ci”)的顺序教学,每一级必须确认掌握后才能进入下一级。

在用户反馈”太简单”后,系统会自动调升难度,引入中高级技巧如 ci"(Change inside quotes)、Ctrl-v(Visual Block)、%s/old/new/g(全局替换)等。同时强调场景化教学——不只是告诉命令,而是给出具体使用场景。

关键点

  • 渐进式课程体系: 从 hjkl 基础到 ci” 高级文本对象,按技能树结构推进
  • 场景化教学: 每个技巧都配有真实使用场景描述,如”当你看到 const a = "old_value" 想改时,用 ci"
  • 不烦人原则: 早上推一次,晚上追踪使用情况,未用则继续推同一个直到使用
  • 互动测验: 每次推送附带选择题,通过问答巩固记忆
  • 自适应难度: 根据用户反馈动态调整内容难度
  • 学习状态记录: 通过 tips.jsoncurriculum.json 追踪已学和未学内容

技术细节

课程结构(Skill Tree)

{
  "Level 1": "Basic Move (hjkl)",
  "Level 2": "Word Jump (w/b) — 因为 hjkl 太慢",
  "Level 3": "Action + Motion (cw) — 组合 c(Change) + w(Word)",
  "Level 4": "Text Objects (ci\") — cw 的终极形态"
}

已教授的核心技巧

技巧功能场景
/pattern向前搜索查找错误信息
?pattern向后搜索从文件底部往上找
n / N下一个/上一个匹配遍历搜索结果
:s/old/new当前行替换修改单行内容
5j / 10k多行跳转快速定位
Ctrl+d / Ctrl+u半页滚动快速浏览
ci"修改引号内内容改字符串值
Ctrl+vVisual Block批量添加注释前缀

推送机制

  • 检查频率提高到每小时一次(如1小时内没学过就推)
  • 随机抽取未学过的技巧,学完一轮后自动重置
  • 通过 Heartbeat 定时任务触发

时间线

  • 2026-03-04 20:00: 首次 Vim Minute 推送(/pattern 搜索)
  • 2026-03-05 10:03: 教授 ?pattern 向后搜索
  • 2026-03-07 22:02: Vim Pop Quiz 互动测验
  • 2026-03-08 23:19: 频率提升+内容扩充,新建 tips.json
  • 2026-03-08 23:24: 重构为 Skill Tree 渐进式课程体系
  • 2026-03-09 12:23: 使用 pm2 守护 Memory Lane,推送 Vim Move
  • 2026-03-11 13:11: 用户反馈太简单,升级到 ci" 高级技巧
  • 2026-03-12 10:07: 推送 Ctrl+v Visual Block Mode

相关页面