안녕하세요. 이번엔 알고리즘 풀이를 할 때 저의 개발 환경설정을 공유해보겠습니다.
저는 운영체제로 윈도우, mac, ubuntu18.04.4를 사용하는데요 각각의 설정에 대해 알아보도록 하겠습니다.
공통설정
vscode 설치
https://visualstudio.microsoft.com/ko/
위의 사이트에서 vscode를 다운받아 줍시다!
vscode는 atom, sublime 등과 같은 텍스트 에디터 입니다. 엄청난 양의 플러그인들이 개발되어있기 때문에 다양한 환경을 구성할 수 있죠.
확장 프로그램 설치
자신이 문제풀이를 할 때 사용하는 언어에 맞는 확장 프로그램을 설치해 줍시다!
폴더구조
algorithms
- input.txt
- acmicpc (백준)
- starterpack.sh (밑에서 설명)
- 1000
- 1000.py
- 1000.cc
- 1001
...
- swexpert (삼성뭐시기)
- 1204
- 1206
...
- algospot
...
이런 식으로 만들어 줍니다.
쉘 스크립트
쉘 스크립트를 만들어서 문제풀이를 할 때 기본으로 필요한 파일과 코드를 생성하게 합시다. 윈도우에서도 파워쉘에서 (아마도) 잘 작동합니다.
starterpack.sh
# !sh
mkdir $1
echo "#include <cstdio>
int main() {
}
" > $1/$1.cc
(티스토리에 쉘스크립트 스타일이 없는 것이 너무 아쉽다.)
이 스크립트를 사용하면 편하게 문제풀이를 시작할 수 있습니다. 예를 들어 acmicpc 디렉토리에서
./starterpack.sh 11054
라고 입력하면 acmicpc 디렉토리 밑에 11054 디렉토리를 만들고 그 안에 메인함수가 작성되어있는 11054.cc 파일이 만들어집니다!
실행환경 설정
macOS, ubuntu
여기가 진짜입니다!
vscode에서 Ctrl + Shift + P 를 누르면
명령팔레트(맞나?)가 등장합니다. 여기에서 configure task를 입력해서 task.json이 등장하게 해줍니다. 이 task.json에 자신만의 실행 Task를 설정할 수 있습니다.
일단 저의 task.json을 보겠습니다.
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "mac build go",
"type": "shell",
"command": "go",
"args": [
"run",
"${file}",
"<",
"input.txt"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "mac python",
"type": "shell",
"command": "python3",
"args": [
"${file}",
"<",
"input.txt"
],
"group": "build",
"problemMatcher": []
},
{
"type": "shell",
"label": "clang++ build and run active file",
"command": "/usr/bin/clang++",
"args": [
"-g",
"${file}",
"-o",
"${fileBasenameNoExtension};",
"./${fileBasenameNoExtension}",
"<",
"input.txt;",
"/bin/rm",
"${fileBasenameNoExtension}"
],
"problemMatcher": [
"$gcc"
],
"group": "build"
}
]
}
저는 이 task.json에 3개의 task가 정의되어 있습니다. 위 부터 go, python, c++입니다. Ubuntu를 사용한다면 clang++ 대신에 g++을 넣어주면 됩니다.
이 모두가 input.txt를 입력으로 받고 출력을 보여주는 task들 입니다.
중간중간에 있는 ' ${어쩌고저쩌고} ' 형식은 vscode의 variable입니다. variable reference가 공식문서에 정의되어있으니 한번 수정하고 싶으시다면 이것을 참조하는 것이 좋을 것 같습니다.
https://code.visualstudio.com/docs/editor/variables-reference
코드실행해보기
이번에는 코드를 실행해보는 것을 해보겠습니다.
예를 들어서 제가 백준의 2869번 문제를 푼다고 생각하고 열심히 코딩을 했다고 가정을 해보겠습니다. 그러면 저의 상태는
이렇게 됩니다. 이제 여기서 Ctrl+Shift+P를 눌러서 Run Task를 입력하면 위에서 작성한 task 리스트가 나옵니다.
저는 C++로 작성했으니까 clang++ build and run active file을 선택해 주겠습니다.
그러면 아래쪽에 어떤 명령을 실행했는지 보여주고 실행 결과가 나옵니다.
명령 팔레트에서 한번 명령을 실행했다면 다음에 팔레트를 열면 가장 최근에 사용한 명령이 최상단에 위치하게 됩니다. 그러므로 한번 실행을 했다면 다음에 실행할 때는 Ctrl+Shift+P Enter Enter 를 입력하면 바로 실행됩니다. (글로 써놓으니까 뭔가 복잡한거 같네요)
번외
제가 왜 이렇게 설정해 놨는지는 모르겠습니다. 하지만 그냥 저의 설정을 공유해봅니다.
창 구성
입력창을 오른쪽이나 왼쪽에 항상 띄워놓고 입력을 바꿔가며 실행해 볼 수 있습니다.
git 설정
gitignore
*.pdb
*.obj
*.exe
*.ilk
*.dSYM/*
*.xml
*.cmake
*.plist
CMake*
*.iml
.DS_Store
.idea/*
input.txt
.vscode/*
윈도우는 다음에 하고싶다면..
'세팅왕김세팅' 카테고리의 다른 글
우분투 원격 데스크톱 설정하기 ubuntu 18.04.3 xrdp (0) | 2020.02.16 |
---|---|
Windows terminal 소개 설치 anaconda prompt 설정 (0) | 2020.01.28 |