Atom 1.26+ 原生支持多光标,无需插件;快捷键包括Ctrl+Click逐点、Ctrl+Shift+L行级、Ctrl+Shift+↑/↓上下添加,列选需atom-sublime-select插件,同词选中用Ctrl+D,全文匹配用Alt+F3或Cmd+Ctrl+G。

Atom 1.26+ 版本已原生支持多光标,装 multi-cursor 这类老插件反而会冲突——不是功能没开,是它被禁用了。
怎么加多个光标(不靠插件)
原生能力足够覆盖绝大多数场景,关键在用对快捷键,而不是猜位置:
-
Ctrl+Click(macOS:Cmd+Click):在任意位置逐个点选,适合非对齐、跳着加光标 -
Ctrl+Shift+L(macOS:Cmd+Shift+L):把当前选中行的每一行都转成一个光标(常用于“选中 5 行 → 每行开头加console.log(”) -
Ctrl+Shift+↑/Ctrl+Shift+↓(macOS:Cmd+Shift+↑/Cmd+Shift+↓):在当前光标正上方或下方添加新光标,按一次加一个,连按多次可批量堆叠 - 想列对齐?必须装
atom-sublime-select插件,然后用Alt+鼠标拖拽(macOS:Option+鼠标拖拽)拉出垂直矩形区——原生不支持真列选
批量选中相同文本(比如改变量名)
别用 Ctrl+F 一行行换,容易漏、难回退:
- 把光标放在第一个
user_id上,按Ctrl+D(macOS:Cmd+D):选中它并加光标;再按一次,选中下一个同词;节奏可控,适合确认范围 - 想一口全吞?按
Ctrl+Cmd+G(macOS)或Alt+F3(Windows/Linux):全文档匹配项全部上光标,但注意——默认只认完整单词,user_id:后面的冒号和空格不会被包含 - 含符号或边界模糊?先按
Cmd+P输入regex打开正则搜索,勾选.和\n,再替换,否则user_id\s*:这类模式会失效
在每行末尾加内容(比如补分号、逗号)
别碰 End 键——它停在视觉行尾,可能卡在换行符前或不可见字符后,导致光标错位:
- 先用
Ctrl+→(macOS:Cmd+→)跳到每行真正的逻辑行尾(即换行符前) - 再按
Ctrl+Shift+Enter(macOS:Cmd+Shift+Enter):在所有光标后插入新行;如果只是想加字符(如;),直接输入即可 - 如果已有光标不在行尾,又想统一操作,先全选目标块(
Ctrl+Shift+A),再用Ctrl+Shift+I(macOS:Cmd+Shift+I)强制缩进对齐,再执行末尾操作
为什么光标加不上或乱跳
多数不是 Atom 坏了,而是触发条件没满足:
-
Ctrl+Shift+K是删整行,Shift+Cmd+D是复制行——它们不加光标,误按会清掉已有光标状态 - 装了
vim-mode-plus但没启用?多光标快捷键在 Vim 模式下可能被拦截,临时切到 Insert 模式再试 - 用
Alt+拖拽没反应?大概率没装atom-sublime-select,原生 Atom 不响应这个组合 - 跨空行列选失败?
atom-sublime-select支持跨空行,但原生Ctrl+Shift+L遇到空行就断,得手动绕开
最易被忽略的一点:多光标本身不校验缩进一致性。10 行里有 2 行缩进是 2 空格、3 行是 4 空格,你在开头同时输 if (,结果就是括号列不齐——格式化工具也救不回来,得先对齐再动笔。

















