Cursor实践使用技巧

最近特地充值了20美元体验了Cursor,真的是让人爱不释手,写代码的方式真的是已经被颠覆了,不敢想以后要是加上语音交互岂不是天天通过叙述生成代码。

在使用过程中也记录了一些使用技巧,分享给你,快点用起来吧。

一、下载安装与注册

  1. 打开官网www.cursor.com/
  2. 点击下载按钮,选择对应系统版本。
  3. 安装完成后打开,使用邮箱注册/登录即可。
  4. Cursor的付费使用有Token限制,一个小技巧帮助你使用更长时间:github.com/LakshmanTur...

二、界面与布局

  1. 自定义布局:可以根据自己的习惯调整窗口布局。例如,将侧边栏(文件浏览器、Git面板等)放在左侧或右侧,调整编辑器区域的大小,以适应不同的屏幕尺寸和工作需求。可以通过 "View" 菜单中的选项来显示或隐藏特定的面板,如终端面板、调试面板等,以保持界面的简洁。
  2. 主题设置:Cursor提供了多种主题选择,包括明亮主题和黑暗主题。可以在 "Preferences"(设置)中找到 "Theme" 选项,选择适合自己的主题,以减少眼睛疲劳并提高代码的可读性。有些主题还可以自定义颜色,比如修改关键字、注释、字符串等的颜色,以满足个性化需求。

三、日常使用技巧

(一)代码补全

  1. 实时补全 :开始输入代码时自动触发,使用 Tab 接受建议,使用方向键选择不同建议。

  2. 命令式补全

    1. 选中代码块。
    2. 按下 Ctrl + K(Windows/Linux)或 Cmd + K(Mac)。
    3. 输入指令如 "补全(完善)这个代码"。

(二)AI对话

  1. 打开Chat面板

    1. 按下 Ctrl + L(Windows/Linux)或 Cmd + L(Mac),在右侧打开Chat面板。
    2. 注意:一个好的输入才能带来好的输出,提问时应尽量详细描述需求并提供足够的上下文信息。例如:
    3. 好的提问方式:"请帮我实现一个登录表单,需要包含用户名和密码字段,使用React和antd"。
    4. 避免这样提问:"这代码有问题""帮我写个组件""这是干什么的?"
  2. 不同场景下的使用示例

  • AI 解释代码

    • 选中要理解的代码。
    • Ctrl + L(Mac用 Cmd + L)。
    • 输入:"请解释这段代码的作用"。
  • AI 优化代码

    • 选中需要优化的代码。
    • Ctrl + I(Mac用 Cmd + I)。
    • 输入:"请优化这段代码,主要考虑性能方面"。
  • AI 生成代码

    • Ctrl + I(Mac用 Cmd + I)。
    • 描述你的需求,例如:"帮我写一个React函数组件,实现一个待办事项列表,包含添加、删除功能"。

(三)多光标编辑

按住 Ctrl 键(在Mac上是 Command 键)并点击鼠标左键,可以在不同位置添加多个光标。这样可以同时编辑多个地方的代码,非常适合进行批量修改、复制粘贴等操作。例如,需要将多个变量名进行统一修改时,可以使用多光标编辑快速完成。或者在多个地方插入相同的代码片段时,也可以使用这个功能提高效率。

(四)代码格式化

Cursor可以自动格式化代码,使其符合一定的代码风格规范。可以通过快捷键 "Ctrl + Alt + L"(在Mac上是 "Command + Option + L")快速格式化当前文件的代码。也可以在 "Preferences" 中设置代码格式化的规则,比如缩进大小、换行方式等,以满足不同项目的要求。

四、核心功能使用指南

(一)Cursor Tab

Cursor Tab是手写代码过程中使用最高频的一个功能。写代码时,Cursor会基于当前光标的位置推断出你接下来要写的代码内容。它会像输入法的联想功能一样,联想出你接下来想要编写的内容。如果接受,只需要按键盘的 Tab 键,代码就会自动生成,然后Cursor会基于新的光标位置推断新的内容。如果不接受,只需按照自己的想法继续敲代码即可。Cursor会基于新的光标位置,推断下一步的联想。在上下文代码逻辑比较完整的情况下,Cursor对代码的联想一般比较准确。所以大多数时间里,你会频繁地按 Tab 键采用Cursor联想的代码。

(二)Composer

直接生成和编辑代码。使用方式主要分为两种:

  1. 从0到1编写代码 :随便找一个空白区域按下 Ctrl + K(Windows/Linux)或 Cmd + K(Mac)唤出编辑框,选择模型,输入需求开始生成,生成后点击 AcceptReject 接受或拒绝。
  2. 修改已有代码 :选中已有代码按下 Ctrl + K(Windows/Linux)或 Cmd + K(Mac)唤出编辑框,选择模型,输入需求开始编辑,生成后点击 AcceptReject 接受或拒绝,也可以点击代码行最右侧进行单行代码的 AcceptReject

(三)Chat

自然语言编程对话,类似ChatGPT,有以下三种模式:

  1. Ask:类似使用Deep Seek app来聊天的功能。它侧重于对你的提问进行解答。平时开发时,可以把它当作思维发散的工具、技术咨询的工具、代码解释的工具、提高效率的工具等。例如,复制一段代码到聊天框,让Cursor告诉你这段代码的逻辑,帮你排查代码是否有Bug。
  2. Edit:可以理解为增强版的Ask模式。相比之下,Edit模式增加了直接修改项目文件、代码的功能。例如,分别在Ask模式和Edit模式下,给AI提"一个简单跑酷游戏的赛道生成逻辑怎么写"的问题,Ask模式会生成C#代码以及文字描述,而Edit模式则会直接修改代码文件,并给出文字描述。Edit模式更适合在需求明确的情况下,让Cursor AI直接参与到项目工作流中。AI生成的代码还是需要人去评估,这些代码生成后,对应的文件处于"待保存"的状态,你需要逐个文件、逐行代码地去确认:符合要求的代码,保留------"√ Accept";不满足要求的代码,还原------"× Reject"。你可以在AI的回答中选择是否使用生成的代码,也可以在聊天窗口的代码修改总览中选择是否采纳代码,还可以在生成的代码文件中,做更精细化的采纳判断。
  3. Agent:可以理解为增强版的Edit模式。除了Edit的功能,它还可以根据搜索内容的关联性,搜索相关的代码;调用MCP服务器,接入其他AI工具,比如文生图;运行终端(命令行)指令;自动从网上搜索最新的内容。因为Agent模式比Edit模式更强大,逻辑更复杂,所以Agent模式的执行速度会比Edit模式慢很多,但是回答的质量也高很多。有编码需求的前提下,如果不是很懂代码,可以选择Agent模式来生成代码;如果是程序员,要生成的代码需要分模块才能理清楚,选择Agent模式,交给AI来托管;如果只是生成一些简单的逻辑,选择Edit模式,精细化操控。

五、其他实用技巧

  1. 解决 AI 乱改代码问题
  • 预防

    • 让AI复述需求:在聊天框输入需求之后,加上一句"请先复述一遍我的需求,先不要修改代码,确保你真正理解我的需求",然后基于AI的回复,确认AI的理解和需求完全一致时,再让AI生成代码。
    • 限定影响范围:让AI生成代码时,尽可能引用相关的文件、文件夹,限定AI生成、修改代码的文件范围,哪怕AI生成了错误的代码,也可以让影响降到最小。
    • 拆解并细化需求:AI善于执行明确的指令,太泛、太模糊的指令会让AI思维发散,从而生成偏离期望的代码。
  1. 将外部文档作为知识库 :Cursor支持将外部文档(如开发文档)作为知识库来辅助编程。在设置中加入文档后,使用 Ctrl + L 唤起对话框,然后输入 @,点击 Files,再选中文件进行提问,可以针对整个文件进行问答和编辑。
  2. 加入内置System Prompt:通过设置中的"Rules for AI"添加System Prompt,可以帮助大语言模型更好地了解自己的职责和用户的行为习惯,从而更精确地回答问题。例如:
bash 复制代码
# Role
你是一名极其优秀具有20年经验的产品经理和精通所有编程语言的工程师。与你交流的用户是不懂代码的初中生,不善于表达产品和代码需求。你的工作对用户来说非常重要,完成后将获得10000美元奖励。
# Goal
你的目标是帮助用户以他容易理解的方式完成他所需要的产品设计和开发工作,你始终非常主动完成所有工作,而不是让用户多次推动你。

六、自定义快捷键

Cursor允许用户自定义快捷键以适应个人习惯:

  1. 打开设置(通常是通过 Ctrl + ,Cmd + , )。
  2. 导航到"键盘快捷键"部分。
  3. 找到想要修改的命令,进行修改。
相关推荐
天机️灵韵16 分钟前
谷歌时间序列算法:零样本预测如何重塑行业决策?
人工智能·python·算法·开源项目
猫头虎-人工智能44 分钟前
数学基础(线性代数、概率统计、微积分)缺乏导致概念难以理解问题大全
人工智能·opencv·线性代数·机器学习·计算机视觉·数据挖掘·语音识别
jndingxin1 小时前
OpenCV CUDA模块设备层-----用于CUDA 纹理内存(Texture Memory)的封装类cv::cudev::Texture
人工智能·opencv·webpack
安达发1 小时前
安达发|旅游经济“爆发“!APS软件调整旅行箱生产线收割旅游市场!
大数据·人工智能·物联网·aps排产软件·智能优化排产软件·aps智能优化排程软件
achene_ql2 小时前
OpenCV C++ 图像处理教程:灰度变换与直方图分析
c++·图像处理·人工智能·opencv·计算机视觉
mortimer2 小时前
当PySide6遇上ModelScope:一场关于 paraformer-zh is not registered 的调试旅程
人工智能·github·阿里巴巴
Baihai IDP2 小时前
深度解析 Cursor(逐行解析系统提示词、分享高效制定 Cursor Rules 的技巧...)
人工智能·ai编程·cursor·genai·智能体·llms
神经星星2 小时前
MIT 团队利用大模型筛选 25 类水泥熟料替代材料,相当于减排 12 亿吨温室气体
人工智能·深度学习·机器学习
Jamence3 小时前
多模态大语言模型arxiv论文略读(125)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记
AI浩3 小时前
TradingAgents:基于多智能体的大型语言模型(LLM)金融交易框架
人工智能·语言模型·自然语言处理