最近,关于人工智能及其如何改善开发工作流程的讨论越来越多。我想分享一下人工智能在 Cursor 中的实现,如何显著提升我的开发速度和效率。
简而言之,Cursor 是 VSCode 的一个分支,内置了许多代码编辑的 AI 辅助功能。如果您曾在 VSCode 中使用过 Copilot,那么您可能会对 Cursor 有更深的理解。想象一下 Copilot,但功能更强大,且还有许多其他旨在提高工作效率的实用功能。
这篇文章将讲述我如何使用 Cursor,并为开源项目 SwiftUI Mastodon 客户端 Ice Cubes 进行设置。
我最近才完全切换到 Cursor,因此这篇文章主要介绍如何设置和使用 Cursor 的基本功能。
一、如何获取 Cursor?
首先,您需要下载 Cursor。它是免费的,但某些功能需要 20 美元的订阅费。我并不是想在这里推销任何东西;您可以自行判断它是否值得。免费套餐允许您使用一段时间。此外,如果您已经为这些功能付费,可以在设置中添加自己的 OpenAI、Claude 和 Gemini 密钥。
下载完成后,您需要安装一些扩展并进行配置。
部署 Xcode Build Server
部署 Xcode Build Server 后,将允许 sourcekit-LSP 在 Xcode 之外工作,因此您将获得所有功能,如跳转到定义、查看所有引用、调用树分析等。您在编辑代码时在 Xcode 中获得的几乎所有功能,您也可以在 Cursor 中获得。
部署 xcbeautify
接下来,我们需要配置 xcbeautify。这将在 Cursor 终端中美观地打印 xcodebuild 输出。
如果您还没有 Swift 格式,可以进行部署。
然后启动 Cursor,打开扩展选项卡并安装:
-
Swift 语言支持
这样您将获得语法高亮和所有 Swift 语言功能。 -
Sweetpad
Sweetpad 是让 Xcode GUI 之外的整个流程正常运行的基础。您应该浏览扩展的网站并熟悉其功能、快捷方式、工作原理等。我将在本文中讨论其中的一些,但不是全部。
Sweetpad 为 xcodebuild CLI 封装了大量快捷方式,并允许您像 Xcode 一样扫描目标、选择目标、构建和运行您的应用。此外,它还会为 Xcode Build Server 设置您的项目,以便您获得上述所有功能。
安装 Sweetpad 后,使用 CMD+SHIFT+P 打开命令面板并选择。这将在您的目录根目录创建一个 buildServer.json,并允许 Xcode Build Server 与您的项目目录一起工作。
完成后,点击构建并运行(从命令面板或使用 Cursor 中的 Sweetpad 选项卡)。从那里,您可以浏览所有目标并在其中任何一个上点击运行。
在此阶段至少构建一次项目对于获得各种功能(如自动完成、跳转到引用等)非常重要。
从那里,您现在可以使用 F5 连接调试器。您可能需要为调试模式创建启动配置,但只需在提示时选择 Sweetpad 即可。然后您可以使用构建和运行,稍后连接调试器。或者,您可以使用“运行和调试”选项卡的“附加到正在运行的应用程序”操作来构建 + 连接调试器。如果您的应用程序未运行,它将构建它、运行它,然后无论如何连接调试器。
json
{
“version”: “0.2.0”,
“configurations”: [
{
“type”: “sweetpad-lldb”,
“request”: “launch”,
“name”: “Attach to running app (SweetPad)”,
“preLaunchTask”: “sweetpad: launch”
}
]
}
二、Cursor 核心功能
完成以上所有操作后,我们就可以开始编码了!这就是 Cursor 与 Xcode 的不同之处。
Cursor Tab 自动补全
虽然标准 SourceKit 自动完成功能可以工作,但 Cursor 有自己的基于 AI 的自动完成功能,可以预测您的下一次编辑。它还会索引您的项目,以在其自定义模型上进行一些自定义嵌入,以便您获得针对您的项目量身定制的完成。
在开发新功能时,Cursor 几乎确切地知道我接下来要写什么,我只需点击选项卡即可。它会智能地更改相关代码以适应您的新逻辑或命名,并建议进行更改,您只需点击选项卡即可应用并跳转到下一个更改。
内联编辑
在空行上按 CMD+K 可让您从任何提示生成上下文代码。您还可以在代码行上按 CMD+K,这会将相关代码嵌入提示中。从那里,您可以编写一个提示,要求进行重构或您真正想要的任何内容。
聊天会话
下一个很棒的功能是聊天功能。每当您想询问与编码相关的任何问题、当前文件或多个文件时,只需按 CMD+L 即可打开聊天面板。
从那里,您可以选择要与之交谈的模型,嵌入任何代码的一部分,或将文件添加到当前上下文等。我经常使用它来讨论架构或了解代码行为的原因。Cursor 允许您在不切换上下文的情况下直接从代码编辑器中执行此操作。
例如,在上面的例子中,我想检查 Swift 并发重入问题。我们反复讨论如何防止出现问题或增强代码。我只需按 CMD+L 并键入“Swift 并发重入问题”,然后选择相应的模型即可开始聊天。
一旦您对代码建议感到满意,可以点击应用按钮,Cursor 会将其应用为 git diff,您可以部分接受/拒绝、进一步编辑等。
Composer
此功能与会话功能类似,但如果您想批量编辑或生成多个文件,此功能非常有用。它可能会非常有用,例如,如果能提供非常详细的提示,让您从头开始设置新项目,或者为多个文件生成一些样板代码。
我想现在就到此为止;虽然这篇文章没有我想要的那么深入,但我希望您喜欢这个使用 Xcode 以外的编辑器处理 iOS 项目的新视角。
三、使用 CoDesign 提升开发效率
CoDesign 是一个专为设计师和开发者打造的设计资产管理平台,它可以帮助设计师轻松上传和管理设计稿,帮助开发者快速调用前端样式代码信息、获取切图、和标注信息,实现设计与开发的顺畅沟通。
同时,CoDesign 还支持设计稿的版本管理,您可以轻松追踪设计稿的修改历史,避免版本混乱导致的沟通成本。