一个计算机技术爱好者与学习者

0%

编程辅助工具Cursor入门篇

1. Cursor简介

Cursor 是一款AI代码编辑器(IDE),目标是借助AI提高编码的速度和质量。

相关文档:

2. Cursor基础知识

2.1. Cursor与VSCode

Cursor 是基于 VSCode 构建的编辑器,包含 VSCode 的全部功能。
对于习惯使用 VSCode 的开发者,从 VSCode 迁移到 Cursor,几乎没有什么成本。

VSCode的活动栏默认是垂直的,Cursor 的活动栏是水平的,这是为了使AI聊天界面空间更大。
如果想要和VSCode一样使用垂直的活动栏,那么可以在 settings.json 中添加配置:

1
2
3
{
"workbench.activityBar.orientation": "vertical"
}

2.2. Cursor核心功能

Cursor的核心功能包括:

  • 代码补全:理解代码库并提供基于上下文的代码补全建议
  • 部分代码编辑:选中部分代码,让大模型按照需求在文件级别小范围增删改代码
  • 聊天编程:在统一的AI对话界面,通过聊天让大模型在仓库级别增删改代码

3. 聊天模式

AI对话界面提供了三种聊天模式:Agent、Ask和Manual

  • Agent:允许Cursor自主学习代码库,并代表用户进行代码库范围的更改
  • Ask:获取有关代码库的解释和答案,并使用AI规划功能
  • Manual:仅使用用户提供的上下文进行有针对性的编辑

4. 上下文说明

AI对话界面可以自行选择上下文:

  • @Files:引用整个文件作为上下文。支持文件路径预览和分块处理。适用于需要引用特定文件内容时,如代码文件、文档等。
  • @Folders:引用整个文件夹作为上下文。适用于需要提供大量文件作为上下文,例如项目目录。
  • @Code:引用特定代码片段作为上下文。适用于需要针对特定代码片段进行查询或操作。
  • @Docs:引用预设的第三方文档或自定义文档。支持添加自定义文档。适用于需要引用外部文档或自定义知识库。
  • @Git:扫描 Git 提交、差异或拉取请求,帮助查找问题。适用于需要分析 Git 相关信息,如提交记录、代码差异等。
  • @Past Chats:将历史聊天消息添加为上下文。适用于在聊天中需要引用之前的对话内容。
  • @Cursor Rules:引用项目规则作为上下文。规则文件存储在 .cursor/rules 目录下,支持 MDC 格式,可以包含元数据和内容。适用于需要为项目提供持久化指导、编码规范或工作流程时。
  • @Terminals:引用终端输出作为上下文。适用于需要分析命令执行结果、日志输出或调试信息时。
  • @Web:搜索网络信息作为附加上下文。适用于需要获取最新网络信息或外部资源。
  • @Recent Changes:引用最近的文件变更作为上下文。适用于需要了解最近的代码修改、文件更新或项目变动时。

5. 安装Cursor

  1. 访问 cursor.com 并点击“下载”按钮

  2. 运行安装程序并等待安装完成

  3. 通过桌面快捷方式或从应用程序菜单启动 Cursor

6. 登录Cursor

  1. 首次打开Cursor,会提示登录Cursor账号

  2. 根据提示,注册一个Cursor账号并登录

7. 使用Cursor

Cursor的核心功能可以通过快捷键调用:

  • 代码补全:按下 Tab ,使用智能代码补全
  • 代码编辑:按下 CMD+K,使用内联代码编辑
  • 聊天编程:按下 CMD+L,打开AI对话界面

7.1. 代码补全

代码补全基础用法:

  1. 鼠标放在代码中想要代码补全的位置
  2. 输入或者不输入字符,等待Cursor提示
  3. 当出现满意的提示时,按下Tab

代码补全TODO引导:

  1. 在代码中使用注释描述清楚TODO
  2. 鼠标放在注释的下方,等待Cursor提示
  3. 当出现满意的提示时,按下Tab

7.2. 部分代码编辑

部分代码编辑:

  1. 鼠标光标选中一部分代码
  2. 按下CMD+K 打开 Prompt Bars(提示词弹窗),输入代码需求

命令行编辑:

  1. 鼠标光标位于Terminal
  2. 按下CMD+K 打开 Prompt Bars(提示词弹窗),输入命令行需求

7.3. 聊天编程

聊天编程创建新文件:

  1. 新建一个空的代码文件
  2. 按下 CMD+L 打开AI对话界面
  3. 对话界面中,输入需求
  4. 接受或者拒绝代码修改

需求示例:请编写一段python代码,连接mysql并执行 select id,username from users

聊天编程修改老文件:

  1. 打开一个代码文件
  2. 按下 CMD+L 打开AI对话界面
  3. 对话界面中,选择本次修改涉及到的所有文件
  4. 对话界面中,输入需求
  5. 接受或者拒绝修改代码

需求示例:请改为使用pymysql

8. Cursor安全注意事项

  1. 在使用Cursor开发的代码仓库中,不要使用明文账密,避免账密被携带提交给大模型
  2. 使用npm软件包时注意安全,比如 sw-cur 、sw-cur1 和 aiide-cur 这三个包都是被标记的恶意软件。参考文档3200+ Cursor 用户被恶意“劫持”!贪图“便宜API”却惨遭收割, AI 开发者们要小心了

9. Cursor远程连接Linux主机

Cursor连接Linux主机,与VSCode方法相同。
如果报错:无法与 “xxx” 建立连接: 未能下载VSCode服务器(Server returned 404).
解决办法:安装使用 1.0.0 版本的Anysphere Remote SSH插件。