소개
Cursor에 대해 쉽고 가볍게 설명해주는 예시 형태의 Youtube 콘텐츠들은 많지만, Cursor의 전체 기능을 심도있게 소개해주는 콘텐츠를 찾고 있자니 답답함이 느껴졌습니다
이에 공식 문서를 전부 읽고 소화하는 과정을 거치고자 합니다
Cursor라는 툴 자체가 급속도로 발전하고 있는지라, 최신 기능들 중 공식 문서에 추가되지 않은 것들이 있습니다
Composer, Notepad 등 노코드/로우코드를 가능하게 하는 강력한 기능들이 아직 문서화되어있지 않습니다
위 기능들은 조만간 별도로 다루겠습니다
진행 방법
Cursor 공식 문서를 모두 다 읽고 직접 다 테스트해보면서, 기능 위주로 문서 내용을 재정리합니다
메인 기능들에 대한 사용법 예시를 블로그/유튜브 등을 통해 정리합니다
이해가 가지 않거나, 잘 모르는 부분들에 대해 질문을 달아 정리합니다.
질문에 대한 답은 차차 찾아나가도록 하겠습니다.
제외한 내용
Get Started > Usage (AI 모델과 요금제에 대한 내용)
Advanced > Models (AI 모델에 대한 내용)
Advanced > Custom API Keys (OpenAI나 Anthropic 등의 API Key를 활용하는 방법)
Privacy 관련한 부분
공식 문서 요약
전체 내용은 다음 링크에 갈무리 해두었습니다 (바로가기)
Cursor의 기본 기능은 다음 세 가지
Tab
코드 작성시 자동 완성
Cmd + K
코드 작성하다가 에디터 상에서 자연어로 명령을 내리는 기능
코드를 작성하거나 수정해줌
Chat
에디터 내 대화형 AI 챗봇
코드를 작성/수정해주는 것을 넘어서서 코드나, 개발 전반에 대한 질의응답이 가능
핵심 부가 기능인 Context
Cmd + K나 Chat 상황에서
파일, 폴더, 공식 문서, 코드의 일부, Notepad 등을 맥락으로 제공하여
내가 기대한 방향의 응답을 제대로 해낼 수 있도록 하는 것
기능 활용 팁
Tab (코드 자동 완성) 기능은 Peek view에서도 가능하다
You can also use Cursor Tab in the “Go to Definition” or “Go to Type Definition” peek views. This is useful, for example, when adding a new argument to a function call.
We especially enjoy using this in vim in conjunction with
gd
to, for example, modify a function definition, then fix all of its usages in one go.위를 해석해서 이해해 보면
VS Code를 vim 모드에서 사용한다면, 어떤 함수 정의 위에서
gd
를 눌렀을 때, peek view가 활성화되는데, peek view에서는 오른쪽 옆에 해당 함수가 사용된 모든 용례가 나열되게 되므로, peek 뷰에서 함수의 정의를 수정한 뒤에, 해당 함수를 참조하고 있는 파일을 선택하고 tab을 연타해가면서 함수의 용례를 모두 바꿀 수 있다Search and replace 하면 휴먼 에러가 생길 위험이 있는데 위와 같이 쓰면 정말 강력합니다
참고로 함수 이름 위에서 gd 눌러서 Peek 뷰를 연 뒤에, 해당 함수를 참조하는 파일들을 차례로 navigate 할 수 있는 단축키는 F4입니다
터미널 자동 완성 하기
Cursor 내의 터미널에서도 Cmd + K를 사용해서 자연어 명령을 내리면, 터미널 명령어도 알아서 만들어 준다고 합니다
보일러플레이트 코드 작성 (https://weezip.treefeely.com/post/five-weeks-hands-on-review-of-cursor-ide)
데이터로부터 타입 정의 뽑아내기 (https://weezip.treefeely.com/post/five-weeks-hands-on-review-of-cursor-ide)
테스트 코드 생성 (https://weezip.treefeely.com/post/five-weeks-hands-on-review-of-cursor-ide)
채팅에 맥락 이미지 넣을 수 있습니다 (https://www.datacamp.com/tutorial/cursor-ai-code-editor#:~:text=was looking for%3A-,Image support,-The Cursor chat)
Document 생성
Documentation 등록하고 요약해달라고 하기
내 다른 코드를 컨텍스트로 집어넣기
문서를 정리하면서 도출된 질문들
@Codebase (Embeddings Search)
Embeddings Search를 사용해야 하거나 사용하면 좋은 예시는 뭐가 있을까?
@Codebase 명령어의 옵션들은 정확히 어떤 의미이며, 어떤 상황에서 어떻게 조작하는 것이 유의미할까?
Rules for AI
더 나은 응답을 위해서 어떤 룰들을 추가해두는 게 좋을지?
관련 커서 포럼 스레드 (https://forum.cursor.com/t/share-your-rules-for-ai/2377)
Long Context Chat, AI Review, Shadow Workspace (beta features)
어떤 상황에서, 얼마나 유용할까?