1. 基础功能
1.1 自动补全(Tab)
自动补全(Tab)功能是其最核心的功能之一,旨在通过 AI 技术帮助开发者快速生成和修改代码,提升编程效率。以下是其功能的详细介绍
1.1.1 功能概述
Cursor 的 Tab 功能基于 AI 模型,能够根据当前代码的上下文,自动预测并生成代码补全建议。用户只需按下 Tab 键即可接受建议,无需手动输入完整代码。它不仅能插入新代码,还能修改现有代码,甚至支持多行代码的批量生成和修改。
1.1.2 核心特点
- 单行补全:根据光标位置生成单行代码建议。例如,输入函数名后,Tab 功能会自动补全函数体。
- 多行补全:支持一次性生成多行代码。例如,定义一个类后,Tab 功能会自动补全类的方法和属性。
- 智能重写:能够根据上下文修改现有代码。例如,修复代码格式错误或优化代码结构。
- 光标预测:预测用户下一步可能编辑的位置,并提前生成补全建议。例如,修改一个变量名后,Tab 功能会自动提示需要同步修改的其他地方。
- 部分接受:通过 Ctrl/⌘ + → 逐字接受建议,方便用户精细控制补全内容。
1.1.3 使用案例
1.1.3.1 案例 1:单行补全
输入 def calculate_average(numbers): 后,按下 Tab 键,Cursor 会自动补全函数体。
def calculate_average(numbers):
total = sum(numbers)
return total / len(numbers)
1.1.3.2 案例 2:多行补全
输入 const formatDateTime = (date = new Date()) => { 后,按下 Tab 键,Cursor 会自动补全剩余代码。
const formatDateTime = (date = new Date()) => {
const year = date.getFullYear();
const month = (date.getMonth() + 1).toString().padStart(2, '0');
const day = date.getDate().toString().padStart(2, '0');
return `${year}-${month}-${day}`;
}
1.1.3.3 案例 3:智能重写
- 输入上述代码后,Cursor 会弹出提示框,建议修改为的提示
top 10px left 10px fixed
1.1.4 使用技巧
- 快捷键:按下 Tab 接受建议,Esc 取消建议,Ctrl/⌘ + → 逐字接受。
- 预览窗口补全:在“Go to Definition”或“Go to Type Definition”的预览窗口中,Tab 功能仍然可用,方便快速修改函数定义和调用处。
- 上下文感知:Cursor 能理解整个代码文件的上下文,提供更精准的补全建议。
- 可关闭 Tab 智能补全:面板右下角处 Cursor Tab 调整,见如下图示例
1.2 智能聊天(Chat)
智能聊天(Chat)功能是一个强大的 AI 辅助编程工具,允许开发者直接在编辑器中与 AI 对话,解决编程问题或获取代码建议。以下是其核心功能和使用方法的详细介绍
1.2.1 核心功能
- 多轮对话:支持连续提问,AI 会根据上下文生成回复,无需重复描述问题。
- 上下文理解:自动包含当前文件或项目作为上下文,也可以手动引用特定代码、文件或文件夹。
- 代码应用:AI 生成的代码可以直接应用到文件中,支持接受或拒绝更改。
- 外部引用:支持引用网络信息(@Web)、技术文档(@Doc)或 Git 提交记录(@Git),提供更全面的上下文支持。
- 模型切换:支持切换不同的 AI 模型(如 GPT-4、Claude 3.5 Sonnet、Deepseek 等),以满足不同任务需求。
1.2.2 使用方法
- 打开 Chat:按下快捷键 Ctrl/⌘ + L 或点击编辑器右侧的 AI 面板图标。
- 输入问题:在输入框中描述问题或指令,例如“如何优化这段代码?”或“解释这个函数的逻辑”。
- 应用代码:当 AI 生成代码建议时,点击“Apply”按钮将代码应用到文件中,或使用快捷键 Ctrl/⌘ + Enter 接受更改。
- 查看历史:点击“Previous Chats”按钮或使用快捷键 Ctrl/⌘ + Alt/Option + L 查看历史对话。
1.2.3 案例解释
1.2.3.1 案例 1:代码优化
- 问题:输入“如何优化这段代码以提高性能?”
- AI 回复:AI 会分析代码,并给出优化建议,例如使用更高效的算法或减少冗余计算。
1.2.3.2 案例 2:需求咨询
- 问题:输入“我想要一个简单的登录界面,包含用户名和密码输入框,防止暴力破解功能,应该用什么技术以及功能,如何实现?”
- AI 回复:AI 会用户需求,分析网页登录界面需要的架构框架和技术要点,以及生成一个案例样式。
1.2.3.3 案例 3:错误修复
- 问题:输入“这段代码报错了,如何修复?”
- AI 回复:AI 会分析错误原因,并给出修复建议,例如修正语法错误或调整逻辑。
1.3 智能代码生成(Composer)
Composer 是 Cursor 的核心功能,允许你用自然语言描述需求,直接生成完整的代码文件或批量修改现有代码。它像一位“全栈工程师”,能根据指令完成复杂任务。它也类似于一个“AI 结对编程伙伴”,帮助开发者从零开始构建项目或优化现有代码。以下是其功能的详细介绍
1.3.1 核心功能
- 多文件编辑:支持同时修改多个文件,适合处理复杂项目。
- 上下文理解:自动包含当前文件或项目作为上下文,生成更精准的代码。
- 指令驱动:通过自然语言描述需求,Composer 会自动生成代码,例如“用 Python 写一个五子棋游戏”。
- 检查点与恢复:每次生成代码时,Composer 会创建检查点,方便回滚到之前的版本。
- 模型切换:支持切换不同的 AI 模型(如 Claude 3.5 Sonnet、GPT-4 等),以满足不同任务需求。
- 智能纠错与补全:生成代码后自动修复语法错误(如变量未定义)、逻辑冲突(如重复函数名),并给出优化建议(如内存泄漏风险提示)
- 跨平台适配:一键生成适配不同系统的代码
1.3.2 使用方法
- 启用 Composer
- 步骤:打开 Cursor → 点击菜单栏 File → Preferences → Features → 勾选 Enable Composer
- 快捷键:
- 打开面板:Ctrl/Cmd + I
- 接受代码:点击 Accept All 或按 Ctrl/Cmd + Enter
- 操作技巧
- 精准指令:描述越具体,生成代码越符合预期(例:“用 Python 写五子棋游戏,支持人机对战和 30 秒超时提醒”)。
- 上下文控制<