ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • vscode 설치 & C++ extentions
    Tools/IDE 2023. 10. 9. 02:33

    IDE(Integrated Development Environment)는 통합 개발 환경으로 코드 작성, 디버깅, 테스팅 및 프로젝트 관리 기능을 통합하는 종합적인 환경을 제공한다.

    이번에는 vscode를 설치하고 편리한 extention이 어떤것이 있는지 보도록하자.

     

    vscode installation on Ubuntu

    홈페이지에서 다운을 받는 방법, 그리고 명령어로 설치하는 방법 두 가지가 있다.

    홈페이지로 설치는 다음 사이트에 들어가서 Debian, Ubuntu용 설치 파일을 다운받으면 된다.

    https://code.visualstudio.com/

     

    Visual Studio Code - Code Editing. Redefined

    Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications.  Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows.

    code.visualstudio.com

     

     

    설치 확인

    $ code # vscode 실행
    $ code --version # code version 확인

     

    vscode installation on Windows

    윈도우도 ubuntu와 비슷한 방식으로 설치하면 된다.

    https://code.visualstudio.com/download

     

    Download Visual Studio Code - Mac, Linux, Windows

    Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern web and cloud applications.

    code.visualstudio.com

     

    vscode 설정하기

    이번에는 vscode를 설정하고, 나의 계정에 동기화를 하려고 한다.

    우선 계정 동기화를 하기 위해서 나의 계정을 로그인하자.(Microsoft 혹은 Github 계정을 등록하면 된다)

    1. Preferences → Backup and Sync Settings클릭

    2. Sign in

    로그인을하고 Auto Save를 켜준다.

     

    vscode Font 적용

    이전에 사용해본 Fira code를 적용해보자.

    https://mokchanic.tistory.com/99

     

    Coding Font & 설치 및 적용

    Coding Font는 프로그래밍을 할 때 일기 쉽고 코드의 구조를 명확하게 파악할 수 있도록 디자인된 폰트들이 존재한다. 예를 들어 알파벳 'O'와 숫자 '0'과 같은게 있다. 이를 잘 사용하면 코드의 가독

    mokchanic.tistory.com

     

    1. File → Preferences → Settings 에서 Fonts를 설정하기

    Editor: Font Family에 Fira Code를 입력.

    여기까지만 넣고 사용해도 되지만, 부등호가 적용이 안될 것이다.

     

    2. JSON FILE 사용하기

    1. Ctrl + shift + p로 팔레트 진입.

    2. Open User Settings (JSON) 선택

    3. "editor.fontLigatures": true 추가.

    결과


    vscode extensions

    1. vscode C++ extensions

    이번에는 C++ 개발을 위한 extensions를 살펴보자.

    - clangd

    • Cmake 추가 설정 없이 바로 사용이 가능하다.
    • 기본 C/C++ 확장보다 더욱 다양한 기능을 제공한다.

    clangd를 설정하기 위해서 Ctrl + shift + p Preferences: Open User Settings (JSON)에 다음을 추가한다.

    이는 clangd와 C/C++의 IntelliSense와 충돌을 방지하기 위해 적용한다.

        "clangd.detectExtensionConflicts": false,
        "C_Cpp.intelliSenseEngine": "disabled",

     

    설치후 코드를 보면 다음과 같이 링크가 걸린것을 볼 수 있다.

     

    - C/C++

    • 기본 C++ 사용을 위한 확장 기능이다.
    • clangd와 동시에 사용한다.

    다음의 컴파일러를 지원한다.

     

    - C/C++ Extension Pack

    • C/C++의 확장기능 제공

     

    - C/C++ Clang Command Adapter

    clang을 잘 사용하기 위해서 사용하는 extention이다.

     

    - C++ Algorithm Mnemonics

    • 내가 필요한 것을 문법상으로 가져다준다.
    • STL 알고리즘을 제안한다.

     

    - C++ TestMate

    • C++ Test를 진행할 때 잘못된 부분에 대해서 에러를 호출
    • Test 작성하거나 실행할 때 도움을 준다.

     

    2. vscode CMake extensions

    - CMake

    • 빌드 시스템을 CMake로 사용시 필요.
    • CMake에 대한 자동완성을 도와준다.

     

    - CMake Tools

    • CMake기반 프로젝트를 위한 기능 제공.

     

    - CMake Language Support

    • CMake를 사용하며 하이라이팅을 바꿔줌.
    • CMake 가독성을 높임.

     

    - CMake-format

    • CMake Formatting을 도와줌.

     

    3. vscode Git extensions

    - Git Graph

    • Git Graph와 바뀌는것, 세부 내용등을 보여준다

     

    - Git History

    • Git에서 일어난 내용들을 보여준다.
    • 코드에서 우클릭하면 Git View File History, Git View Line History가 생성됨.
    • Commit, File change등의 내용을 보여줌.

     

    - GitHub Pull Requests and Issues(중요)

    • GitHub 사이트에 들어가지않고, PR을 올리거나 merge가 가능하도록 도와준다.
    • 로그인해서 사용가능.

     

    - gitignore

    • 내가 올리지않을 파일들을 지정할 때 gitignore를 사용한다.
    • 해당 extension은 gitignore의 옵션 자동완성을 도와줌.

     

    - GitLens(중요)

    • 강력한 Extention기능중 하나. 위와 같이 라인마다 저자 및 작성 시간을 보여줌.
    • Git의 모든 기능들을 제공해줌.
    • 유료이긴 하지만, 무료로도 충분히 쓸만함.

     

    vscode Readability extensions

    - Code Spell Checker

    example을 eaxmple로 작성시 없는 단어라고 나옴.

    • 오탈자를 알려주는 extention.
    • 하지만 내가 의도한 단어라면 우클릭(Spelling →Add words to User settings)으로 추가가 가능하다.

     

    - Color Highlight

    • 해당 Color map에 대해 실제 그 색상으로 바꿔준다.

     

    - colorize

    • 해당하는 코드의 배경 색상을 바꿔준다.

     

    - EOF Mark

    • 소스코드 마지막 부분에 EOF(End Of File)를 달아준다.
    • 모든 파일은 끝에 공란이 있어야한다.
    • 옛날 이야기이기는 하지만, 특정 OS에서 파일의 끝을 공란으로 읽는 경우가 있기 때문이다.

     

    - Rainbow CSV

    • csv파일을 사용하게 된다면, 행렬로 색을 변경하여 가독성을 높여준다.

     

    - Trailing Spaces

    • 불필요한 공간을 빨간색으로 표시해준다.

     

    - indent-rainbow

    • indent를 구별해준다.

     

    vscode Comments extensions

    주석에 관한 extensions.

    - Better Comments

    예시

    • 주석들을 지정된 색들로 바꿔준다.

     

    - Doxygen & Doxygen Documentation Generator

    • Doxygen으로 주석을 달면 온라인 문서를 만들어준다.
    • Doxygen으로 온라인 문서를 만드는 것은 효과적이다.

     

    - Todo Tree

    예시

    • TODO 주석을 관리해준다.

     

    vscode Perfomance extensions

    - IntelliCode

    • AI base로 자동완성을 해준다.
    • Logic의 자동완성도 도와줌.

     

    - Code Runner

    • 코드를 실행할 때 사용하는 extension,

     

    - Error Lens

    • 코드의 줄 옆에 error가 바로 나온다.

     

    vscode Etc extensions

    - Bookmarks

    • TODO와 비슷하지만, Bookmarks는 내가 찍고 싶은 곳을 찍어둘 수 있다.
    • 우클릭으로 사용(Bookmarks가 생성됨.)

     

    - file-size

    main.cpp 파일의 크기는 279 Byte

    • 우하단에 파일의 크기가 표시된다.

     

    - Path Intellisense

    • File Path에 대한 자동완성을 해준다.

     

    - Polacode(유용함)

    • 코드를 이쁘게 캡쳐해준다.

     

    - project-tree

    • 프로젝트의 tree list를 README.md로 만들어줌.
    • 구조 정리하거나 다른 사람에게 코드를 전달할때 유용함.

     

    - vscode-pdf

    • vscode상에서 코드를 볼 수 있게 만들어준다.

     

    - XML Tools

    • XML파일을 formatting과 필요한 기능을 제공.

     

    - YAML

    • ROS사용시 YAML을 자주 사용하는데 YAML 파일의 formatting과 필요한 기능을 제공.

     

    - markdownlint

     

    • markdown 문법이 맞는지 확인해줌.

     

    - markdown All in One

    • markdown의 필요한 기능 제공.
    • 옆에 창을 띄워서 결과가 어떻게 나오는지 바로 보여주는 기능 포함.

     

    다양한 Extention이 있으므로 자신이 필요한 것을 추가해서 사용하면 된다.

    'Tools > IDE' 카테고리의 다른 글

    Coding Font & vscode Theme  (0) 2023.12.27
    GCC_Clang Compiler installation (Ubuntu & Windows)  (1) 2023.10.08
Designed by Tistory.