我拋棄了 VS Code,擁抱這個(gè)爆火的 IDE!
前幾天,我在公眾號(hào)發(fā)布了一篇關(guān)于 ?? WebStorm 向個(gè)人開發(fā)者全面免費(fèi)開放的文章,許多小伙伴留言表示已經(jīng)放棄 WebStorm 和 VS Code,轉(zhuǎn)而擁抱 Cursor,并表示真香?。〗裉?,我們就來(lái)一探究竟,看看 Cursor 究竟有何獨(dú)到之處,能贏得如此好評(píng)。
Cursor 是什么?
Cursor 是一款集成了 AI 技術(shù)的強(qiáng)化型代碼編輯器,作為 VS Code 的一個(gè)衍生版本,它在繼承 VS Code 優(yōu)勢(shì)的基礎(chǔ)上,全面融入了 AI 功能,從而極大地簡(jiǎn)化了開發(fā)工作流,讓編程更加便捷高效!
Cursor 的主要特點(diǎn):
- 深度融入編碼工作流程:Cursor 不僅僅局限于提供代碼建議或處理重復(fù)性任務(wù),它實(shí)際上能夠深入理解項(xiàng)目。它了解你的編碼風(fēng)格,熟悉你的項(xiàng)目結(jié)構(gòu),甚至能夠捕捉到團(tuán)隊(duì)的最佳實(shí)踐。
- 實(shí)時(shí)輔助與反饋:它就像一個(gè)實(shí)時(shí)查看你代碼的編程高手,提供建議,捕捉錯(cuò)誤,甚至幫助重構(gòu)代碼——這一切都是實(shí)時(shí)進(jìn)行的。
- 隱私和安全:確保代碼的隱私和安全,不存儲(chǔ)代碼,并提供隱私模式及 SOC 2 認(rèn)證。
下面讓我們來(lái)深入了解 Cursor 的主要功能,以及它們?nèi)绾巫屇愕木幋a體驗(yàn)變得更好。
Cursor 特色功能
Tab
Cursor 的 Tab 鍵非常強(qiáng)大,Cursor 會(huì)對(duì)代碼進(jìn)行深入分析,并預(yù)測(cè)你的下一步操作,而不僅僅局限于單行代碼補(bǔ)全;它能跨多行提出建議,同時(shí)會(huì)考慮到最近的更改和整個(gè)項(xiàng)目的上下文環(huán)境。
下一代代碼生成
Cursor 能夠理解你的意圖并自動(dòng)生成所需的代碼,提供智能編輯建議。
圖片
高效多行編輯
Cursor 支持多行編輯,一次性提出多項(xiàng)建議,提升編程效率與專注度。
圖片
智能代碼重構(gòu)
Cursor 支持智能修正,能夠?qū)崟r(shí)捕捉并修正拼寫、語(yǔ)法等錯(cuò)誤,確保代碼質(zhì)量。
圖片
精準(zhǔn)光標(biāo)預(yù)測(cè)
Cursor 還具備精準(zhǔn)光標(biāo)預(yù)測(cè)機(jī)制,能夠預(yù)測(cè)下一個(gè)編輯位置,提升操作便捷性。
圖片
? K
Cursor 的 ? K快捷鍵也非常強(qiáng)大,讓你充分利用 AI 的力量來(lái)高效開發(fā)!
按需代碼生成
只需描述所需功能,Cursor 便會(huì)為你迅速生成代碼。從模板代碼到復(fù)雜算法,Cursor 都能輕松搞定。
圖片
輕松代碼編輯
選中代碼,按下? K鍵,指示所需的修改內(nèi)容,Cursor 就會(huì)自動(dòng)執(zhí)行并完成這些更改。
圖片
快速提問(wèn),即時(shí)回答
選擇任何代碼,按下? K鍵,提出問(wèn)題,就可以獲得即時(shí)的、上下文感知的答案。
圖片
AI 終端
Cursor 的 AI 魔力不僅限于代碼編輯器,它還延伸到了內(nèi)置終端。在終端中,通過(guò)? K快捷鍵,用戶可以用自然語(yǔ)言表述操作需求,Cursor 能夠精準(zhǔn)轉(zhuǎn)化為相應(yīng)命令執(zhí)行。
舉個(gè)例子,我們無(wú)需記住 find 命令語(yǔ)法,僅需輸入“查找近24小時(shí)內(nèi)修改的文件”,Cursor 就會(huì)自動(dòng)高效完成任務(wù)。
圖片
AI 對(duì)話
Cursor 的 AI 對(duì)話功能相比傳統(tǒng)的 AI 對(duì)話(如 ChatGPT )更智能、便捷!
上下文感知的對(duì)話
Cursor 的 AI 對(duì)話并不是普通的側(cè)邊欄對(duì)話窗口,它能夠理解當(dāng)前所在的文件及光標(biāo)位置,
比如,對(duì)于不確定的代碼,只需詢問(wèn):“此處是否存在bug?”即可獲得基于實(shí)際代碼的答復(fù)。
圖片
即時(shí)代碼應(yīng)用
如果對(duì)話窗口中的代碼就是你所需要的,無(wú)需復(fù)制粘貼,只需點(diǎn)擊一下即可應(yīng)用到你的代碼中。
圖片
圖像支持
有時(shí)候,單靠代碼來(lái)說(shuō)明想法可能不夠清楚。比如,你有一個(gè) UI 設(shè)計(jì)圖或者系統(tǒng)結(jié)構(gòu)圖,這些圖能更直觀地展示你的想法。Cursor 的對(duì)話功能允許你直接把這些圖拖到聊天框里,它可以理解圖片內(nèi)容。
圖片
Composer
盡管 Tab、AI對(duì)話和? K在代碼編寫與編輯方面表現(xiàn)出色,但 Composer 將這一體驗(yàn)提升至全新境界。
應(yīng)用生成
設(shè)想一下,只需簡(jiǎn)單描述一個(gè)應(yīng)用創(chuàng)意,便能見(jiàn)證其逐漸成形。這正是Composer的魔力所在。
無(wú)論是在進(jìn)行原型設(shè)計(jì)、構(gòu)建概念驗(yàn)證,還是復(fù)制現(xiàn)有應(yīng)用,Composer都能在短短幾分鐘內(nèi)生成一個(gè)功能完備的代碼庫(kù)。它不僅僅是在編寫代碼,更是在創(chuàng)建完整應(yīng)用,包括所有必要的導(dǎo)入語(yǔ)句和樣板代碼。
多文件處理能力
CComposer 的功能可不止處理單個(gè)文件那么簡(jiǎn)單,它還能在整個(gè)項(xiàng)目里幫你管理各種改動(dòng)。舉個(gè)例子來(lái)說(shuō),當(dāng)你在開發(fā)一個(gè)應(yīng)用,想要把代碼庫(kù)重新整理一下,用上新的庫(kù)時(shí),Composer 就能大顯身手了。它能幫你輕松搞定這些復(fù)雜的重構(gòu)工作。
Composer 提供了兩種界面選項(xiàng):
- 浮動(dòng)窗口(?+I):一個(gè)可移動(dòng)、可調(diào)整大小的窗口,讓你在處理其他事務(wù)時(shí)仍能隨時(shí)使用Composer,非常適合多任務(wù)處理。
- 全屏模式(?+SHIFT+I):當(dāng)需要全局審視項(xiàng)目時(shí),此模式包含三個(gè)面板,提供了一個(gè)全面的工作環(huán)境。
AI 上下文感知
Cursor的上下文感知能力是其與其他 AI 編碼工具相區(qū)別之處。它不僅能看到你正在處理的文件,還能理解整個(gè)代碼庫(kù)。這種深刻理解是Cursor眾多功能的強(qiáng)大驅(qū)動(dòng)力,使其能夠提供更加準(zhǔn)確和相關(guān)的幫助。
Cursor 使用@符號(hào)在 AI 交互中引用不同類型的上下文。無(wú)論在使用? K、AI 對(duì)話還是Composer,@符號(hào)都能讓你快速訪問(wèn)文件、代碼片段、文檔等更多內(nèi)容。
常用的 @ 功能包括:
- @Files:引用項(xiàng)目中的整個(gè)文件。
- @Folders:引用整個(gè)文件夾。
- @Code:引用代碼中的特定部分。
- @Docs:訪問(wèn)預(yù)先索引的第三方文檔或添加自己的文檔。
- @Git:在Chat中向提示添加git提交、差異或拉取請(qǐng)求。
- @Codebase:讓Cursor掃描整個(gè)代碼庫(kù)以獲取上下文。
- @Web:讓Cursor在互聯(lián)網(wǎng)上搜索相關(guān)信息。
- @Chat和@Definitions:在? K中,將聊天消息或附近的代碼定義作為上下文包含在內(nèi)。
你甚至可以粘貼以@開頭的鏈接,讓Cursor將該網(wǎng)絡(luò)資源納入其中。
注意:如果希望 讓Cursor 保持專注,可以使用.cursorignore文件(類似于.gitignore的工作方式)來(lái)排除特定文件或目錄的索引。
AI 代碼審查
Cursor 就像一位經(jīng)驗(yàn)豐富的開發(fā)者在實(shí)時(shí)審查你的代碼更改,在潛在 bug 進(jìn)入生產(chǎn)環(huán)境之前就將其捕獲。開發(fā)者可以深入查看每個(gè)審查項(xiàng),在編輯器中查看完整上下文,甚至與 AI 對(duì)話以獲取更多詳細(xì)信息。這個(gè)功能可以顯著提升代碼質(zhì)量,甚至有助于編寫更出色的單元測(cè)試。
Cursor 還支持自定義 AI 的審查重點(diǎn)——是關(guān)注性能優(yōu)化還是安全 bug?只需告訴 AI 你的需求,它就會(huì)相應(yīng)地調(diào)整審查內(nèi)容。
此外,Cursor 還支持選擇何時(shí)運(yùn)行代碼審查:
- 審查未提交的更改
- 將當(dāng)前工作與主分支進(jìn)行比較
- 檢查最近的提交
AI 個(gè)性化規(guī)則
每個(gè)開發(fā)者/團(tuán)隊(duì)都有自己獨(dú)特的編碼風(fēng)格、最佳實(shí)踐以及項(xiàng)目特定的要求。Cursor 允許將這些偏好直接融入到 AI 的行為中。
在 **Settings > General > Rules for AI **下,可以添加自定義指令,這些指令將指導(dǎo)Cursor的AI在對(duì)話和? K等功能中的表現(xiàn),這確保了 AI 的建議與你的偏好的編碼標(biāo)準(zhǔn)保持一致。
為了獲得更高的控制權(quán),我們還可以在項(xiàng)目的根目錄中使用.cursorrules文件,定義項(xiàng)目特定指令,確保 AI 理解每個(gè)代碼庫(kù)的獨(dú)特要求。
AI 模型
針對(duì)不同任務(wù)對(duì) AI 能力的不同需求,Cursor提供了多種 AI 模型以供選擇:
- GPT-4o:以其卓越的智能和理解能力而著稱。
- GPT-4:在性能上強(qiáng)大,實(shí)現(xiàn)了速度與效率的完美結(jié)合。
- Claude 3.5 Sonnet:以其精細(xì)的理解力和創(chuàng)造性輸出而受到贊譽(yù)。
- cursor-small:專為Cursor定制的模型。雖然在智能程度上不及GPT-4,但其響應(yīng)速度快且使用不受限制,非常適合處理快速任務(wù)。
在深入研究龐大的代碼庫(kù)時(shí),Cursor 還提供了專門設(shè)計(jì)用于處理長(zhǎng)文本上下文的模型。這些模型能夠處理高達(dá)20萬(wàn)個(gè)tokens的文本,意味著它們能夠分析大量代碼而不會(huì)丟失上下文信息。
隱私與安全
Cursor 高度重視數(shù)據(jù)安全。它提供了隱私模式,確保代碼始終保留在本地,不會(huì)傳輸至任何外部服務(wù)器。這一特性對(duì)于處理敏感項(xiàng)目或涉及專有代碼的場(chǎng)景至關(guān)重要。
小結(jié)
Cursor 正將 AI 輔助開發(fā)提升至新高度,深度理解項(xiàng)目需求、編碼風(fēng)格及開發(fā)者個(gè)性化要求。隨著 AI 技術(shù)的進(jìn)步,Cursor預(yù)示著開發(fā)者與AI助理界限模糊的高效、創(chuàng)新、強(qiáng)大軟件工程時(shí)代,其易用性下隱藏著強(qiáng)大功能,是開發(fā)環(huán)境的組成部分,也是AI助理,更是改變游戲規(guī)則的革命性工具。