跳到主要内容

Cursor 多光标编辑:AI 驱动的批量编辑

Cursor Multi-Cursor

Cursor 将传统 IDE 的多光标功能与 AI 驱动的智能相结合,使批量代码编辑比以往任何时候都更快。本指南涵盖从基本多行选择到 AI 辅助的大规模重构的所有内容。

前置条件​

在开始之前:

  • 安装 Cursor(建议使用最新版本)
  • 熟悉基本的文本编辑快捷键
  • 一个可以实验的项目

基础多光标​

核心快捷键​

操作Windows/LinuxmacOS
在下方添加光标Ctrl+Alt+DownCmd+Option+Down
在上方添加光标Ctrl+Alt+UpCmd+Option+Up
在下一个匹配处添加光标Ctrl+DCmd+D
在所有匹配处添加光标Ctrl+Shift+LCmd+Shift+L
撤销上一个光标Ctrl+UCmd+U
选择当前行Ctrl+LCmd+L

基本示例​

将单行转换为数组:

// 之前:
apple
banana
cherry

// 1. 在每行末尾放置光标(Ctrl+Alt+Click)
// 2. 输入 `',`
// 3. 选择全部并添加括号
// 之后:
['apple',
'banana',
'cherry']

智能多光标选择​

使用 AI 语义选择​

Cursor 的 AI 可以理解代码结构。在变量上按 Ctrl+D:

// 光标在第一个 "user" 上
const user = await getUser();
const userData = formatUser(user);
sendEmail(user.email);

// Ctrl+D 选择 "user",然后再次按 Ctrl+D
// 仅选择变量引用,而不是属性访问

列选择模式​

// 选择多列以重构对象:
const data = {
id: 1,
name: 'John',
};

// 按 Alt+Shift+Click 选择列
// 所有值可以同时编辑

AI 驱动的批量重构​

使用 Ctrl+K 进行内联 AI 编辑​

  1. 选择多行
  2. 按 Ctrl+K
  3. 描述更改:
将所有 console.log 语句转换为结构化日志

之前:

console.log('User logged in', userId);
console.log('Fetching data', endpoint);
console.log('Error occurred', error);

之后:

logger.info('User logged in', { userId });
logger.info('Fetching data', { endpoint });
logger.error('Error occurred', { error });

使用 @ 符号大规模重命名​

将所有 User 引用重命名为 Customer
但在类型定义和 import 语句中除外

高级模式​

同时编辑多个文件​

打开命令面板 (Ctrl+Shift+P)
> "Add Selection to Next Find Match"
在多个文件中跨匹配项操作

正则表达式多光标​

查找: (const|let|var)\s+(\w+)
替换: $1 $2

使用正则表达式查找时按 Alt+Enter
在所有匹配处放置光标

快速编辑快捷操作​

操作快捷键
复制行Ctrl+Shift+D
上移/下移行Alt+Up/Down
删除行Ctrl+Shift+K
切换注释Ctrl+/
缩进/取消缩进Ctrl+]/[
将选择包围在括号中Ctrl+Shift+(

实战示例​

为 API 响应添加类型​

// 之前
const data = await fetch('/api/users');

// 1. 在所有 fetch 调用处放置光标
// 2. 使用 Ctrl+K:
// "为响应添加类型注解 User[]"

// 之后
const data: User[] = await fetch('/api/users');

批量添加 Error Boundary​

// 之前
function ComponentA() { ... }
function ComponentB() { ... }
function ComponentC() { ... }

// 选择所有函数
// Ctrl+K: "用 ErrorBoundary 包裹每个函数"

// 之后
function ComponentA() {
return (
<ErrorBoundary>
...
</ErrorBoundary>
);
}
// ... 等等

提示与技巧​

  1. 从选择开始:在调用 AI 编辑之前,总是先选择目标代码
  2. 组合使用:多光标 + Ctrl+K 用于复杂重构
  3. 预览更改:使用 AI diff 视图在应用前审查编辑
  4. 保存片段:将常见重构保存为 Cursor 命令

相关资源​

最后更新:2025 年 7 月