본문 바로가기
Programming/Rust

Visual Studio Code - Rust Plugin(Extensions)

by 드로니뚜벅이 2022. 11. 5.

rust-analyzer

러스트 프로그래밍 언어를 위한 Language Server Protocol의 구현입니다. VS Code, Emacs 및 Vim을 포함한 많은 코드 편집기에서 코드 완성 및 정의/구현 이동과 같은 기능을 제공합니다.

1) IntelliSense

2) Inlay hints

먼저 알 수 있는 것 중 하나는 유추된(inferred) 타입, 반환 값, 명명된 매개변수를 편집기의 가벼운 텍스트로 표시하기 위한 인레이 힌드를 제공한다

인레이 힌트는 코드를 이해하는 데 도움이 될 수 있지만 "Editor > Inlay Hints: Enabledd setting(editor.inlayHints.enabled)을 통해 기능을 비활성화할 수 있습니다.

 

3) Hover information

변수, 함수, 타입 혹은 키워드에 마우스를 가져가면 문서, 서명 등과 같은 항목에 대한 정보가 제공됩니다.

 

4) Auto completions

Rust 파일에서 글자를 입력하면 IntelliSense에서 제안된 완성어 및 매개변수 힌트를 제공합니다.

 

5) Semantic syntax highlighting

프로젝트 소스 코드에 대한 풍부한 이해를 돕기 위해 의미론적 구문 강조 표시 및 스타일 지정을 사용할 수 있습니다.

어떤 Rust 변수가 변경 가능한지 빠르게 알 수 있으면 소스 코드를 이해하는 데 도움이 될 수 있지만, 사용자 설정에서 VS Code editor.semanticTokenColorCustomizations 설정으로 설정을 변경할 수도 있습니다.

{
  "editor.semanticTokenColorCustomizations": {
    "rules": {
      "*.mutable": {
        "fontStyle": "", // set to empty string to disable underline, which is the default
      },
    }
  },
}

 

6) Code navigation

  • Go to Definition [F12] - Go to the source code of the type definition
  • Peek Definition [Ctrl+Shift+F10] - Bring up a Peek window with the type definition
  • Go to References [Shift+F12] - Show all references for the type
  • Show Call Hierachy [Shift+Alt+H] - Show all calls from or to a function

 

7) Linting

8) Quick fixes

9) Refactoring

10) Formatting

11) Debugging

 

 

Rust Extention Pack

Extension Pack에는 아래 항목을 포함합니다.

  • rust-analyzer
  • Better TOML
  • crates

 

Better TOML

JavaScript 혹은 TypeScript를 사용 중이라면 package.json 파일에 익숙할 것입니다. Cargo.toml 파일은 Rust 세계의 package.json 파일입니다.

Cargo는 Rust의 빌드 시스템이자 패키지 관리자입니다. 이를 통해 개발자는 종속성을 갖는 패키지를 다운로드 하고 코드를 빌드합니다. 그리고 버전 라이브러리를 만들고 패키지 사양을 설정하는 등의 작업을 수행할 수 있습니다.

 

Crates

Cargo는 Rust의 패키지 관리자이며 Cargo.toml 파일 내에서 라이브러리의 종속성을 확인할 수 있습니다. 그러나 Rust뿐만 아니라 여러 프로그래밍 언어에도 공통적인 문제가 있는데 오래된 패키지를 감지하는 것입니다.

때로는 오래된 종속성이 있어도 상관없지만 이러한 종속성으로 인해 취약점이 있을 때마다 종종 문제를 수정된 새로운 버전이 출시될 때를 아는 것이 좋습니다.

이러한 오래된 종속성을 감지하는 데 도움이 되는 확장이 crates 입니다.

 

CodeLLDB VS Code

새로운 프로그래밍 언어를 시도한 후 일반적으로 가장 먼저 하는 일 중 하나가 디버깅을 활성화하도록 IDE를 설정하는 것입니다.

Rust 코드를 디버그하려면 CodeLLDB VS Code 확장을 설치해 보세요.

 

Error Lens

코드를 변경하는 즉시 오류, 경고를 강조 표시하고 다른 종류의 언어 진단을 표시하는데 도움이 되는 도구입니다.

Error Lens를 사용할 때 강조 표시되는 유형을 보여주기 위해 VS Code의 코드 스니펫의 다음 이미지를 보면 구조체를 정의할 때 &를 사용할 수 없기 때문에 14행에 오류가 있음을 확인할 수 있습니다.

'Programming > Rust' 카테고리의 다른 글

러스트(Rust) 설치하기  (0) 2022.12.06
러스트(Rust) 관련 기사 (ZDNET Korea)  (0) 2022.12.04
The Rust Programming Language  (0) 2022.11.01