cursor已经这么强大了吗

174 阅读3分钟

面向tab编程

使用cursor之后,程序员最常用的键盘不再是 ctrl + c和ctrl + v,而将会是tab。哈哈哈

下载安装与汉化

cursor官网:www.cursor.com/cn

直接点击下载安装cursor客户端,然后就可以直接使用了

安装完成之后打开,配置:

image.png 导入扩展:

image.png 注册:

使用邮箱注册,新注册的邮箱会有14天的免费试用期,注册完登录就可以开始使用cursor了

下载汉化包:

启动cursor发现语言是英文的,配置目录设置的中文语言是cursor的回复语言,要设置cursor界面为中文要下载汉化包插件:

image.png

image.png

基本功能小试

1.代码推断

新建一个test.js文件,写两个正则校验的代码:

const regexValidators = {
    // 验证邮箱
    isEmail: (email) => {
        const regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$/;
        return regex.test(email);
    },
​
    // 验证手机号码(中国大陆)
    isChinesePhone: (phone) => {
        const regex = /^1[3-9]\d{9}$/;
        return regex.test(phone);
    },
​
​
};

这个时候把光标放到最后一条正则的后面,cursor会自动推断你下一步可能想写的正则:

image.png

image.png 光标预测:

基于以上正则,我在第一条正则前面添加一个序号

可以看到,下一条正则有了tab字样,这个时候敲击tab,那么第二条正则会自动帮我们加上序号2,接着再敲击tab,第三条正则也会帮我们加上需要3

image.png 以后的tab键将被敲坏

核心功能:

cursor的核心功能是基于chat和composer两种模式的,

image.png

chat模式你可以向cursor提出问题,cursor解答,类似deepseek那种AI聊天框,

image.png

composer模式会基于你当前的描述,快速生成与修改现有的代码:

image.png

大模型选择:

无论是chat模式还是composer模式,我们都可以自由的选择大模型来处理业务,

点击设置 -> Models中,可以勾选对应的大模型

image.png

勾选之后可以在chat或composer模式下选择想要的模型:

image.png

建议:Claude-3.5-sonnet在代码生成领域更出色,所以在compose模式选择改模型,在chat模式选择GPT-4o

composer的两种模式:

normal模式:可以检索你的代码库和文档,正常的创建,以及写入文件都是可以的,而agent模式可以自动的提取相关的上下文、运行终端命令,按照你的语义去搜索代码,执行一些文件操作,属于更高级的操作。建议根据问题的复杂度来使用两种模式,如果是复杂问题,将问题拆解,一步一步的喂给composer,这个时候使用agent模式,而针对简单问题,直接使用normal模式就可以了。

image.png

chat或composer中模式中,使用@可以选中一些东西,然后让cursor把这个东西作为基础信息,你来要求其根据这个东西做出一些动作。

@Files

选中一个文件,

@Folder

选中一个文件夹,

@Code

选中一块代码,

@Docs

选择一个文档链接,那么会把文档的内容关联 到上下文,这意味着实际开发中我们可以根据需求文档或任意其他文档,让cousor理解文档并生成一些东西或代码 http:www.doc.com 只检索该文档 http:www.doc.com/ 检索该目录下所有文档,点击设置-Features-Docs 在这里可以添加对应的文档链接

对于临时的链接,@某个链接,那么会 直接解析这个链接的内容

@Web

cousor会根据你输入的信息和描述,构建搜索查询,搜索网络 查询相关的信息,相当于AI搜索引擎的能力

@Git

可以选中某一次提交,让cousor查看这次提交修改了哪些东西,也可以选中多个提交,来对比其中的差异

@Notpad

记事本 可以当作临时笔记,也可以充当项目的相关上下文记录,还可以保存对话记录,因为chat和composer两种模式的对话记录时不互通的,可以使用NotPad保存一些开发思路,代办事项等等。新增Notpad:资源管理器 ->NOTPADAS

@CodeBase:

会采集项目中的文件和代码块