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