Programming/Tool
VSCode Formatter
patrick610
2023. 2. 4. 18:06
반응형
SMALL
개발할 때 작업자가 직접 formatting 하는 것은 한계가 있기 때문에 vscode에서 사용하는 자동 formatting을 맞춰주는 것이 정신건강(?)에 이롭다.
vscode에서 1차로 자동 포매팅을 하고 git pre-commit에서 2차로 확인하도록 세팅해 두었다.
- Black
- 엄격한 코드 포매터 (커스텀할 여지가 많지 않음)
- 한 줄이 88자가 넘어가지 않도록 강제 개행 시켜주는 기능이 대표적입니다
- isort
- Black이 잡아주지 못하는, import 순서 정렬해 주는 기능을 담당합니다
- 파이썬 built-in 모듈인지, first party 모듈인지, third party 모듈인지도 구분해 줍니다.
- Flake8
- 앞선 두 코드 품질 관리 도구가 형식적인 측면을 잡아주는 반면, 개발자의 실수가 유발될 수 있는 의미적인 스타일도 교정해 줍니다.
- 주로 import 하고 사용하지 않는 모듈의 존재나 모든 오류를 잡으려 하는 try 문 등을 지적합니다.
설치
pip3 install black==20.8b1 flake8==3.8.3 isort==5.5.3
⭐️ 버전이 맞지 않으면 충돌 발생
자동으로 교정하기 (on vscode)
1. python extension에서 black, flake8, isort를 설치한다.
2. .vscode/settings/json
{
"editor.formatOnSave": true,
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": true,
"python.formatting.provider": "black",
"[python]": {
"editor.codeActionsOnSave": {
"source.organizeImports": false
}
},
"python.linting.enabled": true
}
3. settings.json 이 어디 있는지 모르겠다면 f1 → settings 입력 → Preferences: Open Settings (JSON)
⭐️ 맥 : option + shift + f 눌러야 포매팅 성공
반응형
LIST