Aprendizagem pessoal com IA
e orientação prática

Tutorial do cursor (versão em chinês)

Este artigo é uma contribuição para a postagem do blog de Juan Stoppa Code Smarter, Not Harder: Developing with Cursor e Claude Tradução de Sonnet. O motivo pelo qual o chamo de tradução é porque a maior parte do conteúdo deste artigo se baseia em minha própria experiência, mas como a estrutura do artigo se baseia na estrutura do artigo dele, ele é chamado de tradução.

Este tutorial apresenta as funções básicas do Cursor.


 

Se você for um iniciante, deseja realmente obter um clique para escrever o código completo do projeto por meio de IA e implantar automaticamente o ambiente on-line para uso.

Recomendado:Bolt: uma plataforma de desenvolvimento de pilha completa orientada por IA em tempo real que gera e executa o código completo do projeto on-line

Uma breve introdução ao Cursor

 

Ele se baseia em um derivado modificado do VSCode, de modo que todas as suas configurações do VSCode podem ser importadas e usadas no Cursor, facilitando a migração se você normalmente desenvolve em VSCode.

A maior diferença entre o Cursor e o VSCode é que ele tem IA integrada para colaboração de código, para a qual ele faz uma série de alterações no VSCode que o tornam uma experiência melhor do que usar algo como o Github no VSCode. Copiloto Uma classe de plug-in é muito mais confortável. Provavelmente é monótono dizer isso, e começarei com Copiloto do Github Faça anotações comparativas.

O Github Copilot é importado como um plug-in no VSCode:

-1

Copiloto do Github

 

Em termos de uso, a assistência do Copilot se concentra nestes pontos: conclusão de código, a mesma janela de diálogo do GPT com reescrita de geração de código.

O Code Completion é um recurso central do Copilot que eu adoro, pois ele raciocina automaticamente o que vem a seguir à medida que você escreve o código e você só precisa pressionar a tecla `Tab` para receber as sugestões:

-1

Conclusão de código do Github Copilot, como um exemplo do documento que estou escrevendo agora

 

O melhor de tudo é a experiência imersiva: posso reescrever facilmente alguns exemplos de código sem sair do meu editor e sem copiar e colar o código original - isso não quer dizer que ele gere resultados, mas, na maioria dos casos, ele de fato gera o código que eu quero.

E há a mesma janela de diálogo do GPT, que tem a vantagem de enviar convenientemente o contexto do código que você está editando no momento para o modelo grande ao mesmo tempo, para obter melhores resultados de geração:

-1

Janela de diálogo do Github Copilot

 

Por fim, há a medíocre reescrita de edição de geração de código no editor, que você pode acionar por meio da pequena lâmpada do VSCode (formalmente chamada de Code Action, que é usada para fazer algo com o código):

-1

As reescritas de geração de código do Github Copilot aparecem na Ação de código

 

Quando você optar por usar o Copilot para fazer alterações, será exibida uma caixa de prompt na qual você poderá inserir comandos como `/doc` para ajudar o Copilot a gerar documentação ou a modificar/reescrever melhor o seu código:

-1

Reescrita de geração de código para o Github Copilot

 

Embora pareça incrível, minha experiência pessoal é que não funciona. :( Como ele reescreve, na maioria das vezes gera uma nova cópia do código e, então, tenho que excluir o código original novamente ...... Digamos que eu use o Copilot principalmente porque adoro o recurso de conclusão de código.

E a experiência do Cursor é particularmente incrível: o que o Copilot faz bem, ele faz melhor; o que o Copilot não faz bem, ele faz perfeitamente.

O Copilot muitas vezes não consegue gerar blocos fechados de código corretamente (por exemplo, pares de `()` `{}` entre si não são gerados corretamente), mas isso raramente acontece com o Copilot.

A janela de diálogo, meu Deus, o Copilot é realmente uma porcaria em comparação com ela, porque o diálogo do Cursor gera código que pode ser aplicado diretamente ao seu código:

-1

A função apply da janela de diálogo do cursor, que aplica o código que modifica ao código

 

O motivo pelo qual o Cursor aplica as alterações diretamente ao seu código é que ele ajustou seu próprio modelo para que o LLM produza um formato diff[3] como o Git. Com o formato diff, é possível modificar exatamente a seção correta do código.

E para tornar as coisas ainda mais confortáveis, o Cusor facilita a passagem de vários arquivos de origem em uma conversa ou a varredura de todo o silo de código do seu projeto (pressionando `ctrl + enter`) para extrair conteúdo relevante como o contexto para solicitar respostas mais precisas ao grande modelo:

-1

Os arquivos relevantes podem ser adicionados rapidamente por meio da interface do usuário relevante. Pressionar `ctrl + enter` resultará em uma caixa de diálogo com base no código do compartimento de código

 

A velocidade de geração e a velocidade de indexação são muito suaves, porque serão semelhantes às do JetBrains, de modo que a indexação do armazém de código, mas sua indexação é vetorizada (embeddings, a tradução usual é vector inlays, mas eu gosto de chamá-la de vetorizada), portanto, quando a indexação pode ser conveniente para fazer uma pesquisa de similaridade para uma melhor geração.

-1

Função de indexação do cursor

 

Além disso, o Cursor tem seus próprios atalhos integrados, que mencionarei mais adiante.

Em resumo: o Cursor realmente mata o Copilot.

Embora, com base em minha experiência anterior de escrever plug-ins de VSCode, o motivo pelo qual alguns aspectos da experiência de uso do Copilot em geral, principalmente porque os plug-ins de VSCode o limitam, mas o Cursor é um editor mágico, portanto, muitos recursos restritos podem ser ousados e livres, não é de se admirar que o Cursor seja tão bom.

 

 

Uso básico do Cursor

 

montagem

 

O Cursor precisa ser baixado de seu site oficial: https://www.cursor.com/. Após o download, é necessário registrar-se para usá-lo, e ele é compatível com o login de conta do Google e do Github.

O Cursor é baseado em uma assinatura. Os novos usuários podem experimentar a assinatura Pro por duas semanas. Para obter uma assinatura Pro, você precisará pagar US$ 20 por mês (ou seja, cerca de cento e quarenta dólares). Embora funcione, é um pouco caro.

Após a instalação, o Cursor solicitará que você importe a configuração do VSCode ao iniciá-lo pela primeira vez e, uma vez feito isso, você terá basicamente uma versão aprimorada de IA do VSCode.

 

Teclas de atalho e funções correspondentes

 

O cursor tem as seguintes teclas de atalho para usar as funções de IA correspondentes.

 

1. `CTRL/CMD + L` para abrir a caixa de diálogo

 

Use as teclas `CTRL/CMD + L` para abrir a caixa de diálogo no lado direito do editor (esse `L` fica à direita sob as teclas do vim, e as teclas de seta sob as teclas do vim são `h,j,k,l` no teclado como uma linha de teclas, com `h` à esquerda para a esquerda, `l` à direita para a direita, `j` para baixo e `k` para cima. (Eu realmente gosto disso).

-1

A fonte da imagem é o texto original, a caixa de diálogo é aberta à direita e outras fontes citadas são descritas na frente da imagem.

 

2. `CTRL/CMD + K' abre a janela de geração

 

Use as teclas `CTRL/CMD + K` acima da posição do cursor (porque `k` significa para cima! 💕) para abrir a janela Generate:

-1

O texto de origem original, acima, abre uma caixa de diálogo para gerar o código

 

Como observação, quando você seleciona um conteúdo, pressionar `CTRL/CMD + K` também abrirá a janela correspondente, que gerará conteúdo com base no contexto da sua seleção:

-1

Geração de conteúdo selecionado

 

3. `CTRL/CMD + I' abre o Composer.

 

Usando `CTRL/CMD + I`, é possível abrir um recurso especial do Cursor: Composer, um recurso especial do Cursor que permite fazer alterações em vários arquivos ao mesmo tempo em uma janela de diálogo.

Para usar o Composer, primeiro é necessário ativá-lo nas configurações do Cursor e acessar sua página de configurações nesta ordem: `Arquivo > Preferências > Configurações do Cursor > Recursos > Ativar Composer`.

-1

Figura original da fonte, configuração do Composer

 

O `Composer`, aberto com `CTRL + I`, é uma pequena interface de arrastar e soltar:

-1

Interface de painel pequeno do Composer

 

Você pode inserir uma modificação complexa, passo a passo, que envolva vários arquivos, e o Composer gerará todas as modificações para os arquivos envolvidos ao mesmo tempo. Em geral, porém, o Composer deve ser usado em sua totalidade por meio do botão no canto superior direito da interface do painel pequeno:

-1

Abra a tela inteira do Composer

 

Ele listará claramente à esquerda onde, em seu diálogo cumulativo, você deseja alterar esses arquivos, e você poderá aplicar as alterações relevantes diretamente.

Essa é, de longe, a melhor maneira de experimentar a **programação assistida por IA**: você pode continuar descrevendo naturalmente suas necessidades em linguagem natural em uma única janela, sem precisar alternar entre várias janelas e arquivos. Acho que o Cursor é a melhor forma de interação que já foi explorada.

 

Notação `@` para informações contextuais convenientes

 

Para facilitar o fornecimento de informações contextuais a um modelo de linguagem grande, o Cursor incorporou diferentes anotações `@`, que facilitam a injeção de diferentes tipos de informações contextuais em seu diálogo.

Algumas das notas `@` são genéricas e podem ser usadas em todas as janelas de diálogo; outras são específicas e eu as adicionarei à medida que as mencionar.

Observação: O Github Copilot realmente tem um recurso semelhante, mas não é tão completo quanto o Cursor.

 

1. nota `@Files`, passando o contexto dos arquivos de código especificados

 

Quando você digitar a nota `@Files` na caixa de diálogo, o Cursor abrirá automaticamente uma lista de pesquisa dos seus repositórios de código. Você pode digitar os nomes dos arquivos que deseja importar para o contexto e pressionar o botão confirmar, e o conteúdo dos arquivos correspondentes será automaticamente injetado no contexto naquele momento:

-1

Nota `@Files

 

2. nota `@Code`, passando o contexto do bloco de código especificado

 

As notas `Code` fornecem trechos de código mais precisos, as notas `@` são usadas da mesma forma, abrindo a caixa de pesquisa correspondente, você digita a palavra-chave na lista de índices para selecionar o bloco de código apropriado.

A identificação dos blocos de código é determinada pelo LSP de seu ambiente de desenvolvimento, que é preciso na maioria dos casos:

-1

Notas de `@Code

 

3. nota `@Docs` para obter o contexto da documentação oficial da função ou biblioteca

 

A nota `@Docs` pode obter o contexto a partir da documentação oficial de uma função ou biblioteca. Atualmente, ela só pode obter o contexto da documentação on-line acessível. Portanto, sua própria documentação do tipo JSDoc é inútil, a menos que você possa obter um endereço on-line para ela ~ Pessoalmente, não acho que esse recurso seja de uso geral.

-1

A nota `@Docs`, que geralmente é usada quando você precisa importar documentos manualmente

 

4. notação `@Web` para obter o contexto do conteúdo da pesquisa do mecanismo de busca

 

A nota `@Web` é semelhante a um método, que será padrão para a sua pergunta, primeiro para a pesquisa no mecanismo de busca e, em seguida, a partir dos resultados da pesquisa do contexto da extração alimentada para o LLM. Mas, como o funcionário do Cursor não fez transparência pública da implementação específica do método, ele não foi ajustado, de fato, os resultados do uso da flutuação de bom e ruim.

Se você tiver um problema e quiser ser preguiçoso e não abrir a página para procurar erros ou se a própria resposta do grande modelo não resolver o problema, basta usar esta nota.

 

5. nota `@Folders`, contexto para passar informações de diretório de arquivos

 

A nota `@Folders` pode fornecer informações sobre diretórios de arquivos, portanto, se você tiver algum problema de caminho, considere usar essa nota para procurar uma solução no modelo maior.

-1

Nota `@Folders

 

6. notação `@Chat`, uma notação que só pode ser usada na janela de geração de código em um arquivo.

 

A nota `@Chat`, que só pode ser usada na janela de geração de código em um arquivo (aquela aberta por `CTRL + K`), passa o conteúdo do diálogo na janela de diálogo aberta à sua direita como contexto para o modelo maior.

-1

Nota do `@Chat

 

7. nota `@Definitions`, uma nota que só pode ser usada na janela de geração de código em um arquivo.

 

Assim como a nota `@Chat`, a nota `@Definitions` só pode ser usada na janela de geração de código em um arquivo. Ela passa as definições das variáveis e dos tipos envolvidos na linha de código sobre a qual você passa o cursor para o modelo maior como contexto, semelhante à nota `@Code`.

-1

Nota `@Definitions

 

8. nota `@Git`, só pode ser usada em janelas de diálogo

 

A janela de diálogo é aquela aberta por `CTRL + L` e `CTRL + I`. A nota `@Git` pode passar o histórico de commits do seu repositório Git atual para o big model como contexto.

Parece mais adequado para ser usado na verificação de liberações de criminosos de guerra durante a colaboração de código.

 

8. nota `@Codebase`, que só pode ser usada na janela de diálogo para procurar os arquivos apropriados para passar para o codebase

 

A nota `Codebase` não é realmente muito útil; em vez de varrer a base de código, é mais uma passagem contextual da base de código para encontrar o arquivo desejado, ou seja, `CodebaseFilter`.

Tenho a sensação de que ele não será usado no desenvolvimento normal porque precisa passar pelas condições do filtro para definir os parâmetros do filtro:

 

-1

A nota `@Codebase` exige que você passe informações sobre quantidades, modelos usados na filtragem/classificação, etc.

 

A diferença entre ele e o atalho `CTRL + enter` é que, presumivelmente, você pode personalizar as regras de filtragem da consulta. Mas não acho que isso seja muito útil.

 

 

máximo

 

Se você puder pagar, tente usar o Cursor, é uma experiência muito boa (mesmo que você não o tenha). Não olhe para minha transcrição como se eu não tivesse falado muito, apenas use-o e você terá uma ótima experiência. A experiência de desenvolvimento é muito boa.

Diz-se que este artigo é uma retradução, mas parece ser basicamente eu escrevendo minha própria experiência de uso ~ portanto, se você acessar o artigo original, provavelmente descobrirá que não há conteúdo aqui que corresponda a ele.

Estou um pouco indeciso se devo ou não recategorizar este artigo. Principalmente porque fui inspirado a escrever meu próprio tutorial simples sobre como usá-lo depois de ver o artigo original, mas a estrutura deste artigo é realmente influenciada pelo artigo original. Infelizmente, estou indeciso.

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Tutorial do cursor (versão em chinês)

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil