Appearance
Cursor Inline Edit 是最轻量的 AI 编辑方式:选中代码 → Cmd+K → 输入修改指令 → 回车。不打开侧边栏,不切换对话,直接在代码里原地改。适合局部修改、小范围重构和快速提问。本文介绍 Cmd+K 的基本用法、与 Agent Chat 的适用场景区别,以及常用快捷键。
Cursor Inline Edit:原地 AI 代码修改
不是所有修改都需要打开 Agent 对话框。选中一段代码,按 Cmd+K,直接告诉 AI 怎么改——结果立刻出现在原位置,不打断你的编辑流。
基本用法
- 选中代码(或者不选,让 AI 在光标位置插入)
- 按
Cmd+K(macOS)/Ctrl+K(Windows/Linux) - 在弹出的输入框里输入修改指令
- 按
Return应用
typescript
// 选中这段,然后 Cmd+K → "用 async/await 重写"
function fetchUser(id) {
return fetch('/api/users/' + id).then(res => res.json())
}
// 结果:
async function fetchUser(id: string): Promise<User> {
const res = await fetch(`/api/users/${id}`)
return res.json()
}不只是修改,还可以提问
Cmd+K 弹出框不仅支持修改指令,也可以提问:
"这段代码是什么意思?"— AI 直接在弹出框里解释,不用打开侧边栏"这里有没有性能问题?"— 得到针对选中代码的分析"给这个函数写个单元测试"— 生成测试代码插入到当前位置
接受 / 拒绝改动
AI 给出修改建议后,差异以高亮形式展示在原代码旁:
- 按
Tab:接受改动 - 按
Escape:拒绝,保持原代码 - 继续输入:追加新指令,进一步调整
切换到 Agent 模式
如果改动涉及多个文件,按 Cmd+L(macOS)/ Ctrl+L(Windows)把当前上下文转入 Agent Chat,继续在侧边栏里完成更大范围的任务。
Inline Edit vs Agent Chat
| Inline Edit(Cmd+K) | Agent Chat(Cmd+I) | |
|---|---|---|
| 适合 | 单段代码修改 | 多文件任务、复杂需求 |
| 界面 | 原地弹出框 | 侧边栏对话 |
| 上下文 | 选中代码 + 当前文件 | 整个代码库 |
| 速度 | 更快 | 功能更强 |
原则:能用 Cmd+K 解决的,不用打开 Agent。保持编辑节奏更流畅。
常见快捷键
| 操作 | macOS | Windows/Linux |
|---|---|---|
| 打开 Inline Edit | Cmd+K | Ctrl+K |
| 打开 Agent Chat | Cmd+I | Ctrl+I |
| 切换到 Agent(从 Inline) | Cmd+L | Ctrl+L |
| 接受建议 | Tab | Tab |
| 拒绝建议 | Escape | Escape |
常见问题
Q: Cmd+K 和 Tab 补全有什么区别?
Tab 补全是被动的——AI 猜你下一步要写什么。Cmd+K 是主动的——你告诉 AI 怎么改。Tab 补全是持续后台运行,Cmd+K 是按需触发。
Q: 可以不选代码直接用 Cmd+K 吗?
可以。不选代码时,AI 会在当前光标位置插入内容,比如"写一个处理分页的函数"。
Q: 改完后后悔了怎么办?
Cmd+Z 撤销,和普通编辑一样。Cursor 的 Checkpoints 也记录了 Agent 改动前的状态,可以随时回滚。