Skip to content
Snippets Groups Projects
Commit aa3ccc95 authored by Ji Hun Kim's avatar Ji Hun Kim
Browse files

Final project upload

parent 25e21fe0
Branches
No related tags found
No related merge requests found
final/FOSS/vscode1.png

14.7 KiB

final/FOSS/vscode2.png

11.8 KiB

final/FOSS/vscode3.png

15.7 KiB

final/FOSS/vserror1.png

11.8 KiB

final/FOSS/vserror2.png

21.9 KiB

final/FOSS/winget.png

72.2 KiB

print("Hello World!")
\ No newline at end of file
---
title: "VSCodium Install & Usage Manual"
author: "김지훈"
date: '2021년 12월 27일'
output: html_document
---
# VSCodium 설치 및 사용법
## 목차
1. [VSCodium 소개](#1-vscodium-소개)
- [VSCode와 비교](#11-vscode와의-비교)
2. [VSCodium 설치](#2-vscodium-설치)
- [Windows](#21-windows)
- [macOS](#22-macos)
- [Linux(Debian, Ubuntu)](#23-linux-debian-ubuntu)
- [RHEL](#24-rhel계열-linux-rhel-centos-fedora)
- [VSCodium 설치 및 사용법](#vscodium-설치-및-사용법)
- [목차](#목차)
- [1. VSCodium 소개](#1-vscodium-소개)
- [1.1. VSCode와의 비교](#11-vscode와의-비교)
- [2. VSCodium 설치](#2-vscodium-설치)
- [2.1. Windows](#21-windows)
- [2.2. macOS](#22-macos)
- [2.3. Linux (Debian, Ubuntu)](#23-linux-debian-ubuntu)
- [2.4. RHEL계열 Linux (RHEL, CentOS, Fedora)](#24-rhel계열-linux-rhel-centos-fedora)
- [3. 프로그래밍 환경 구축](#3-프로그래밍-환경-구축)
- [3.1. C/C++ 프로그래밍 환경 구축](#31-cc-프로그래밍-환경-구축)
- [3.2. Python 작업환경 구축하기](#32-python-작업환경-구축하기)
- [4. Git 연동](#4-git-연동)
- [5. 단축키 소개](#5-단축키-소개)
- [6. 기타 유용한 Addon](#6-기타-유용한-addon)
- [7. VSCodium의 한계](#7-vscodium의-한계)
- [8. clangd with Ubuntu](#8-clangd-with-ubuntu)
- [굳이 오픈소스를 써야한다면... LINUX를 쓰자!](#굳이-오픈소스를-써야한다면-linux를-쓰자)
- [7.1. 부가기능이 뭐가 중요해?](#71-부가기능이-뭐가-중요해)
- [9. VSCode의 Repository로 변경?](#9-vscode의-repository로-변경)
- [10. 부록.](#10-부록)
- [10.1. VSCode에서 C/C++ 빌드 및 디버깅 환경 구축](#101-vscode에서-cc-빌드-및-디버깅-환경-구축)
- [10.2. VSCode에서 Python 빌드 및 디버깅 환경 구축](#102-vscode에서-python-빌드-및-디버깅-환경-구축)
- [10.3. git commit](#103-git-commit)
- [11. 마무리](#11-마무리)
- [너무나도 강력한 에디터](#너무나도-강력한-에디터)
- [그러나 단점도...](#그러나-단점도)
- [결론](#결론)
***
# 1. VSCodium 소개
- VSCodium은 MS사가 개발한 Electon 프레임워크 기반 텍스트 에디터의 **하드포크**
- VSCode는 소스코드는 MIT라이선스로 공개되어있음
- 하지만 바이너리 릴리즈는 MS사의 상표가 포함되어있는 **프리웨어**임
- 이러한 문제를 제거한 하드포크가 VSCodium임
- 따라서 VSCodium은 **오픈소스 소프트웨어**
## 1.1. VSCode와의 비교
||VSCodium|VS Code|
|---|---|---|
|소프트웨어 구분|오픈소스 소프트웨어|프리웨어|
|Repository|자체|MS 제공|
|MS 추가 기능|없음|있음|
|사용자 정보 수집|없음|있음|
***
# 2. VSCodium 설치
## 2.1. Windows
- 윈도우 패키지 매니저 사용
> 주의 : 윈도우 패키지 매니저는 Windows 10 1709 이상에서만 작동합니다.
Windows Terminal(Powershell) or Command Promport에 아래 코드 입력
winget install vscodium
winget 미작동시
- [Microsoft Store](https://www.microsoft.com/en-us/store/apps/windows) 에서 윈도우 패키지 매니저 다운로드
## 2.2. macOS
- brew 사용
> brew 설치에 관하여는 이 [링크](https://brew.sh/index_ko) 참조
brew install --cask vscodium
## 2.3. Linux (Debian, Ubuntu)
- Repository GPG 키 추가
wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
| gpg --dearmor \
| sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
- Repository 추가
echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' \
| sudo tee /etc/apt/sources.list.d/vscodium.list
- Repository 업데이트 밑 설치
sudo apt update && sudo apt install codium
## 2.4. RHEL계열 Linux (RHEL, CentOS, Fedora)
- Repository GPG 키 추가
sudo rpmkeys --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
- Repository 추가
printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=download.vscodium.com\nbaseurl=https://download.vscodium.com/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg\nmetadata_expire=1h" | sudo tee -a /etc/yum.repos.d/vscodium.repo
- VSCodium 설치
sudo dnf install codium
***
# 3. 프로그래밍 환경 구축
## 3.1. C/C++ 프로그래밍 환경 구축
1. gcc compiler 다운로드 (MinGW-w64 사용) 및 설치
[MinGW-w64 다운로드](https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download) : Sourceforge
이 때 설치폴더는 ```C:\mingw64```로 지정한다.
2. 환경 변수 추가
시스템 환경변수 Path에 MinGW-w64에서 gcc등 컴파일러가 있는 bin 폴더를 추가한다.
C:\mingw64\bin
1. 빌드 환경 구성하기
실행 -> 빌드 작업 실행 -> 빌드 작업 구성... -> task.json 파일 만들기 -> Others
이후 tasks.json 파일의 내용을 전부 지우고 아래의 내용으로 교체하기
>주의 : 이 때 정상적으로 터미널이나 명령프롬포트에서 gcc 명령을 수행 할 수 있어야 하며 환경변수 추가 후 VSCodium에서 터미널 재실행 필요
{
"version": "2.0.0",
"runner": "terminal",
"type": "shell",
"echoCommand": true,
"presentation": {
"reveal": "always"
},
"tasks": [
{
"label": "C++ 파일 저장하고 컴파일하기",
"command": "g++",
"args": [
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": "build",
"problemMatcher": {
"fileLocation": [
"relative",
"${workspaceRoot}"
],
"pattern":
{
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
{
"label": "C파일 저장하고 컴파일",
"command": "gcc",
"args": [
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": "build",
"problemMatcher": {
"fileLocation": [
"relative",
"${workspaceRoot}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
{
"label": "실행",
"command": "cmd",
"group": "test",
args": [
"/C",
"${fileDirname}\\${fileBasenameNoExtension}"
]
},
]
}
## 3.2. Python 작업환경 구축하기
1. Python 확장 설치하기
Ctrl + Shift + X를 눌러 Marketplace 방문 -> Python 검색후 ms-python이 제공하는 Python 확장 설치
>주의 : VSCodium은 IDE가 아니므로 해당 언어에 대한 인터프리터가 미리 설치되어 있지 않다. 해당 확장 프로그램은 파이썬을 설치하는 것이 아닌 IntelliSense, Code Highlight 등 파이썬 편집에 도움이 되는 도구 등을 설치한 것으로 파이썬 코드 실행을 위해선 시스템에 맞는 파이썬이 별도로 설치되어 있어야 한다.
2. System 환경에 맞는 Python 설치
>팁 : VSCodium은 터미널 명령어를 통해 Python을 실행하므로 파이선 설치시 환경변수에 파이썬 경로를 추가하는 옵션을 선택하면 이후에 따로 환경변수를 추가 할 필요없이 터미널에서 Python이 실행 가능해진다
>주의 : Python 다운로드 후 터미널 재 실행 필요
Python : [Python 다운로드](https://www.python.org/)
3. Python 디버깅 환경 설정
1. 실행 및 디버그 (CTRL + SHIFT + D) 탭 선택 후 launch.json 파일 만들기 선택
<img src="./FOSS/debug1.png" alt="debug1"/>
2. 파이썬 버튼 클릭
<img src="./FOSS/debug2.png" alt="debug2"/>
3. 파이썬 파일 선택
<img src="./FOSS/debug3.png" alt="debug3"/>
4. 파이썬 빌드 환경 설정
tasks.json 파일의 마지막 }, 다음줄에 해당 코드를 추가해준다.
>주의 : 이 때 정상적으로 터미널이나 명령프롬포트에서 python 명령을 수행 할 수 있어야 하며 VSCodium에서 터미널 재실행 필요
```
{
"label": "Python 3",
"type": "shell",
"command":"python",
"args":["${file}"],
"group":{
"kind":"build",
"isDefault":true
},
"presentation":{
"echo":true,
"reveal":"always",
"focus":false,
"panel":"shared",
"showReuseMessage":true,
"clear":true
}
},
***
# 4. Git 연동
1. System에 맞는 Git 설치
git [다운로드](https://git-scm.com/download/win) : git-scm
2. F1을 눌러 git-clone 명령어 실행
<img src="./FOSS/gitclone.png" alt="git1"/>
3. 또는 소스제어 버튼 (CTRL + SHIFT + G)를 눌러 새 Git repository 현재 워크스페이스에 설정
<img src="./FOSS/git2.png" alt="git2"/>
***
# 5. 단축키 소개
- 필자가 중요하다고 생각하는 단축키를 소개해보고자 함
|단축키|단축키 설명|단축키 명령어 ID|
|---|---|---|
|CTRL + X|현재 커서의 행 잘라내기|editor.action.clipboardCutAction|
|CTRL + SHIFT + K|현재 커서의 행 삭제|editor.action.deleteLines|
|CTRL + /|현재 줄 주석처리|editor.action.commentLine|
|CTRL + K 이후 CTRL + C|여러 행 주석처리|editor.action.addCommentLine|
|CTRL + K 이후 CTRL + U|주석처리 해제|editor.action.removeCommentLine|
|CTRL + SHIFT + Enter|현재 커서 위에 행 추가|editor.action.insertLineBefore|
|CTRL + SHIFT + F|현재 폴더에서 찾기|workbench.view.search|
|CTRL + H|현재 파일 내용 바꾸기|editor.action.startFindReplaceAction|
|CTRL + SHIFT + H|현재 폴더 내용 바꾸기|workbench.action.replaceInFiles|
|CTRL + S|파일 저장|workbench.action.files.save|
|CTRL + W|열린 파일 닫기|workbench.action.files.closeWindow|
|CTRL + O|파일 열기|workbench.action.files.openFile|
|CTRL + N|파일 생성|workbench.action.files.newUntitiledFile|
|CTRL + K 이후 CTRL + F|(지원하는 파일에 한에서) 들여쓰기 정렬|editor.action.formatSelection|
# 6. 기타 유용한 Addon
1. Error Lens : `usernamehw.errorlens `
- 코드에 에러가 있으면 오버레이로 보여주는 확장
2. Braket Pair Colorizer 2 : `coenraads.bracket-pair-colorizer-2`
- 서로 맞는 괄호끼리 같은 색상으로 보여줘 가독상을 향상시켜주는 확장
3. Better Comments : `aaron-bond.better-comments`
- 주석의 색을 지정할 수 있게 되어 가독성을 향상시켜주는 확장
***
# 7. VSCodium의 한계
- VSCodium은 VSCode를 기반으로 한 강력한 오픈소스 텍스트 에디터임은 분명하다
- 하지만 오픈소스를 택하면서 MS와 관련된 것을 제거하는 데에 있어 VSCode의 분명한 장점인 VSCode의 Marketplace를 이용할 수가 없다.
- VSCode에서 제공되는 강력한 툴이 VSCodium에선 사용이 불가능한 경우도 있고 정말 필요한 Addon이 VSCodium에선 제공되지 않는 경우도 있다.
- C/C++ 개발의 경우가 그러한데 VSCodium에서는 VSCode의 C/C++ Addon을 사용할 수 없어 디버깅이나 IntelliSense등의 기능이 제공되지 않는 불편함이 존재한다.
> [소스코드 라이선스](https://github.com/microsoft/vscode-cpptools/blob/main/LICENSE.md)
[런타임 라이선스](https://github.com/microsoft/vscode-cpptools/blob/main/RuntimeLicenses/cpptools-LICENSE.txt)
즉 Visual Studio Code의 모든 Microsoft의 Addon은 VSCodium에선 사용할 수 없다.
- 훌륭한 대체제인 LLVM의 clang은 사실상 Windows에선 Visual Studio 사용을 강제하기 때문에 Windows 사실상 완전한 오픈소스 소프트웨어만을 사용한 C/C++ 개발은 많이 불편할 수 밖에 없다.
> Ubuntu계열에선 VS Build tools 없이 clang, clangd 설치로 clangd 확장기능을 이용할 수 있다.
***
# 8. clangd with Ubuntu
## 굳이 오픈소스를 써야한다면... LINUX를 쓰자!
1. clang 설치
sudo apt install clang
2. clangd 설치
sudo apt install clangd-12
3. clangd 확장 설치
```llvm-vs-code-extensions.vscode-clangd```
4. task.json에 구문 추가
{
"label": "Save file and Compile C With clang",
"command": "clang",
"args": [
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}.out"
],
"group": "build",
"problemMatcher": {
"fileLocation": [
"relative",
"${workspaceRoot}"
],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
## 7.1. 부가기능이 뭐가 중요해?
- Windows에서 C/C++ 부가기능 없이 오류가 있는 C코드를 보았을 때
<img src="./FOSS/vserror1.png" alt="err"/>
- 빌드 수행 시
c:\Users\tarry\Documents\vscode_workspace\HelloWorld.c: In function 'main':
c:\Users\tarry\Documents\vscode_workspace\HelloWorld.c:5:27: error: expected ';' before '}' token
printf("Hello World!")
^
;
}
- clangd가 설치되어있는 Ubuntu에서 오류가 있는 C코드를 보았을 때
<img src="./FOSS/vserror2.png" alt="err2"/>
- clangd가 현재 파일에 오류가 있음을 보여주고 어느 부분에서 오류가 발생했는지 빌드하지 않아도 알 수 있음
# 9. VSCode의 Repository로 변경?
- VSCodium이 Repository를 변경했듯이 유저가 원하는 Repository로 변경이 가능하긴 하다.
- 하지만. VSCode의 Repository를 다른 소프트웨어에서 사용하는 것은 __라이선스 위반이다__.
- 따라서 필자는 그러한 방법을 여기서 제공하지 않기로 한다.
***
# 10. 부록.
## 10.1. VSCode에서 C/C++ 빌드 및 디버깅 환경 구축
1. VSCode 설치하기
- Windows
winget install vscode
- macOS
brew install --cask visual-studio-code
- Ubuntu / Debian
sudo apt-get install curl
sudo sh -c 'curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg'
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt update && apt install code
2. VSCode 확장 설치
Marketplace (CTRL + SHIFT + X) 에서 ```ms-vscode.cpptools``` 검색 후 설치
3. 빌드 작업 실행 (CTRL + SHIFT + B)
- 이전 실습에서 MinGW, PATH 환경변수 설정을 모두 완료했다고 가정
<img src="./FOSS/vscode1.png" alt="code1"/>
4. 디버깅 실행 (F5)
1. C++ (GDB/LLDB) 선택
<img src="./FOSS/vscode2.png" alt="code2"/>
2. gcc.exe 선택
<img src="./FOSS/vscode3.png" alt="code3"/>
- 디버깅을 완료했다면 자동으로 디버거가 launch.json 환경설정을 추가해줘 활성파일에서 CTRL + SHIFT + B 만으로 바로 빌드할 수 있다.
## 10.2. VSCode에서 Python 빌드 및 디버깅 환경 구축
1. Python 확장 설치
Marketplace (CTRL + SHIFT + X)에서 ```donjayamanne.python-extension-pack``` 검색 후 설치
2. tasks.js 추가
- 마지막 대괄호 전 중괄호에 ,를 추가하고 해당 문구 추가후 설정 저장
{
"label": "Python 3",
"type": "shell",
"command":"python",
"args":["${file}"],
"group":{
"kind":"build",
"isDefault":true
},
"presentation":{
"echo":true,
"reveal":"always",
"focus":false,
"panel":"shared",
"showReuseMessage":true,
"clear":true
}
},
3. 디버깅 환경 구축
1. 실행 및 디버그(CTRL + SHIFT + D)에서 실행할 디버거 선택 -> 구성추가
<img src="./FOSS/vsc_py.png" alt="py1"/>
2. Python 선택
<img src="./FOSS/vsc_py2.png" alt="py2"/>
- 자동으로 디버그 구성환경인 launch.json에 파이썬 구성이 추가된다.
## 10.3. git commit
- 소스제어 (CTRL + SHIFT + G)로 현재 변경사항 확인 후 메세지 작성 및 커밋
<img src="./FOSS/vs_git.png" alt="git1"/>
# 11. 마무리
## 너무나도 강력한 에디터
- VSCode/VSCodium은 Electon 프레임워크를 이용한 텍스트에디터 **Atom**의 정신적 후계자이며 수많은 Addon으로 IDE 못지않은 기능을 제공한다.
- 기존의 IDE보다 월등히 가벼운 프로그램
- 운영체제에 구애받지 않는 폭넓은 지원
- git과의 연동성이 무척 강한것도 큰 장점
## 그러나 단점도...
- VSCodium은 오픈소스 소프트웨어란 장점도 있지만 MS사의 강력한 Addon을 사용하지 못하는 단점도 분명히 *존재*.
- 강력함에도 불구하고 모든 개발환경이 설치하면 자동으로 구성되는 IDE와는 다르게 직접 인터프리터와 어떠한 인터프리터를 어떻게 사용할건지 설정해야한다는 어려움도 존재.
## 결론
- 다양한 환경에서 발휘할수 있는 강력한 텍스트 에디터로 *컴퓨터 공학* 을 전공한다면 꼭 알아야할 프로그램이다.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment