Cursor 编辑器深度体验
上篇文章我们聊了GitHub Copilot,有朋友在后台问我:Copilot是VS Code的插件,那最近很火的Cursor编辑器又是啥?跟VS Code + Copilot有什么区别?
今天这篇文章,我就来聊聊Cursor这个号称”AI原生IDE”的工具,以及我深度使用一个月后的真实感受。
什么是Cursor
Cursor是一个基于VS Code的开源分支打造的编辑器。如果你用过VS Code,打开Cursor的第一感觉就是:这界面怎么一模一样?
没错,它继承了VS Code的所有功能、快捷键、扩展生态。你在VS Code里习惯的一切,在Cursor里基本都能用。但区别在于,Cursor把AI深度嵌入到了编辑器的每一个角落,而不是像Copilot那样作为一个插件存在。
打个比方:VS Code + Copilot就像一辆普通汽车加装了一个导航仪,而Cursor是一辆出厂就自带智能驾驶系统的车。功能上可能差不多,但体验完全不同。
安装和上手
安装Cursor非常简单,去cursor.com下载对应版本,安装后打开即可。第一次启动会让你登录账号,免费版每月有2000次AI请求,对于日常试用完全够用。
如果你已经习惯了VS Code的快捷键和设置,可以直接在Cursor中导入VS Code的配置。Cursor支持一键导入VS Code的扩展、设置、快捷键和代码片段。这意味着你不需要重新学习任何东西,就能无缝切换。
核心功能详解
Cursor的AI功能比Copilot丰富得多,我来逐个说说。
1. 智能代码补全(Tab)
这个功能跟Copilot类似,但体验上有些差异。Cursor的补全响应速度更快,而且对上下文的感知更敏锐。我测试过同一个场景,在VS Code + Copilot中,我需要写一段注释才能触发建议,而在Cursor中,光写函数名就能给出很准确的补全。
不过说实话,这个功能的差距并不大,Copilot做得已经很好了。
2. Chat(对话式AI)
Cursor的Chat面板比Copilot Chat好用不少。按Cmd+I(或Ctrl+I)打开Chat,你可以直接问问题,而且它默认就能看到你当前打开的整个项目,不需要手动添加上下文。
我常用的几个场景:
问它解释一段复杂代码的逻辑。选中代码,按Cmd+L,它会自动把选中代码作为上下文,然后你可以问”这段代码是做什么的”。
问它帮我重构代码。选中一段代码,问”能不能用更简洁的方式实现这个功能”,它会给出建议,并且可以直接应用。
问它帮我找bug。把出问题的代码发给它,描述一下现象,它往往能很快定位问题。
3. Composer(这是真正的杀手锏)
Composer是Cursor最让我惊艳的功能,也是它和VS Code + Copilot最大的区别所在。
按Cmd+Shift+I打开Composer,你可以直接描述一个功能需求,比如”帮我创建一个用户管理页面,包含用户列表、新增用户弹窗和搜索功能”,然后Composer会一次性生成多个文件,包括组件、样式、类型定义等。
它不是在单个文件里补全代码,而是跨文件地理解你的项目结构,生成完整的、可运行的代码。这是Copilot做不到的。
我举个例子。前几天我需要在一个React项目中添加一个数据导出功能,包括前端按钮、导出逻辑、后端API调用。我用Composer描述了一下需求,它一次性生成了三个文件:ExportButton组件、exportService工具函数、以及更新了父组件的调用代码。我只需要微调一下样式和API地址就搞定了,整个过程不到10分钟。
4. Ctrl+K(行内编辑)
这是另一个很实用的功能。把光标放在某一行代码上,按Ctrl+K,可以直接用自然语言描述你想怎么改。
比如你有一段排序代码,光标放上去,按Ctrl+K输入”改成倒序排列”,代码就自动改了。或者”给这个函数加上错误处理”,它会在原函数基础上添加try-catch。
这个功能的妙处在于,它不像Chat那样需要你复制粘贴代码,而是直接在原地修改,非常流畅。
5. @符号上下文引用
在Chat或Composer中,你可以用@符号引用项目中的特定文件、文件夹、函数或文档。比如:
@package.json 这个项目用了哪些依赖? @utils/api.ts 这个文件里的请求函数怎么用?
它会自动读取你引用的内容,给出更精准的回答。对于大型项目来说,这个功能非常实用,你不需要手动去翻文件。
和VS Code + Copilot的对比
我用了一个月Cursor,也一直在用VS Code + Copilot,说说我的对比感受。
代码补全方面
两者差距不大。Copilot在补全质量上略胜一筹,毕竟它训练数据更多。Cursor的补全速度更快,但偶尔会出现不太相关的建议。总体来说,打平。
对话式AI方面
Cursor的Chat明显更好用。原因是它默认就能看到整个项目上下文,不需要像Copilot Chat那样手动添加文件。而且Cursor的Chat支持@引用,非常灵活。
跨文件编辑方面
Cursor完胜。Composer是Copilot没有的功能,也是Cursor最大的差异化优势。如果你经常需要写多文件的功能模块,Composer能省很多时间。
扩展生态方面
VS Code完胜。虽然Cursor兼容VS Code扩展,但兼容性不是100%,有些扩展在Cursor中表现不稳定。而且Cursor的扩展市场比VS Code小得多。
稳定性方面
VS Code更稳定。Cursor毕竟是新工具,偶尔会遇到卡顿或崩溃的情况。VS Code经过多年打磨,稳定性无可挑剔。
我的使用建议
如果你问我该不该从VS Code切换到Cursor,我的建议是:
如果你是重度AI用户,每天大量使用AI辅助编码,那Cursor值得一试。特别是Composer功能,用习惯了就回不去了。
如果你对AI的需求主要是代码补全,Copilot已经足够好,没必要折腾。
我个人的做法是:日常开发用Cursor,遇到Cursor不稳定的情况或者需要用到VS Code独占扩展时,切回VS Code。两个编辑器共用一套快捷键和设置,切换成本很低。
另外,如果你决定试用Cursor,建议至少用一周。第一天你可能觉得跟VS Code差不多,但用久了就会发现那些AI深度集成的小细节,才是它真正的价值所在。
一些实用技巧
最后分享几个我常用的Cursor技巧:
用Cmd+Shift+L快速搜索整个项目,比VS Code的全局搜索更智能,支持语义搜索。
在Composer中,如果生成的结果不满意,可以直接在对话中要求修改,不需要重新描述需求。
用Ctrl+K修改代码时,如果不满意修改结果,按Cmd+Z撤销即可,跟普通编辑一样。
Chat中可以用”/”快速命令,比如”/fix”修复选中的代码,”/explain”解释代码逻辑。
写在最后
Cursor是我目前最推荐的AI原生编辑器。它不是革命性的创新,毕竟它建立在VS Code之上,但它把AI和编辑器的融合做到了极致。
回到我们系列的主题:AI时代前端工程师该怎么办?我觉得答案不是”要不要用AI”,而是”用什么工具、怎么用才能让AI真正为你所用”。Cursor和Copilot都是好工具,关键是你愿不愿意花时间去了解和适应。
下一篇,我会做一个主流AI编码助手的横向评测,包括通义灵码、Copilot和Codeium,看看它们各自的优势和短板。
如果觉得这篇文章有帮助,欢迎分享给更多朋友。关注「大龄人」,一起完成这场AI时代的突围。
夜雨聆风