노트북 메인보드가 사망선고를 받고, 노트북을 새로 샀습니다.
뭐 다른건 다 상관없는데 Swift가 나름 백준 풀 때 종종 사용하던 언어인 반면, 설치하는데 제일 고생했던 언어라 살짝 걱정이 되었는데.. (전에는 그냥 우분투 깔아서 거기서 했습니다.)
네, 실제로 그 일이 일어났습니다.
다음부터 이 노가다 안하도록 문서를 미리 써보겠습니다.
살짝 느린 방법이긴 한데 저는 어차피 백준풀때만 쓸거니 상관없겠죠.
Swift for Windows 설치
https://www.swift.org/download/
여기서 다운 받습니다. Windows 10이라고 되어있는데, 11에서도 작동합니다. 이건 환경변수 알아서 설정 해주더라고요.
Visual Studio 설치
https://visualstudio.microsoft.com/ko/downloads/
정확히는.. VS가 필요한게 아니라 MSVC가 필요합니다. 그런데 MSVC만 받는 방법은 모르겠고.. 그냥 MSVC 갖다씁시다. MSVC 쓸 수 있도록 환경변수도 설정해주세요.
C:\Program Files\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC{version}\bin\Host{x64|x86}{x64|x86}
경로는 대충 이렇다합니다. cl.exe
가 있는 폴더를 환경변수로 해주시면 돼요.
swift 코드 작성 후 swiftc fileName.swift
사용
대충 제가 main.swift
에 print("hihi")
만 작성했다고 하면..
이러면서 main.exe
, main.exp
, main.lib
가 생성됩니다. 이제 main.exe
를 실행하면 결과가 나옵니다.
하지만 이러면 외관상(?) 계속 다시 제거해야하고.. 애초에 커맨드 두번 쳐야하고.. 귀찮죠. 우선 bat파일을 작성할겁니다. 복잡하지 않으니 잘 따라해보세요.
@echo off
set thisPath=C:\Users\(userName)\Desktop\codeZip\VSC\
set exePath=%thisPath%bat\exe\
swiftc %thisPath%main.swift
@echo on
%exePath%main.exe
@echo off
del %exePath%main.exe
del %exePath%main.exp
del %exePath%main.lib
thisPath
랑 exePath
변수만 자기 마음대로 잘 바꿔줍시다. 둘이 같아도 돼요.
어쨌든 저걸 하고 이제 저 bat을 실행만 하면 컴파일, 실행, 삭제까지 한번에 해줍니다.
task.json
을 수정할겁니다. 이 파일이 없다면 어떻게 만드는지 찾아봅시다.{
"version": "2.0.0",
"tasks": [
{
"label": "swift",
"type": "shell",
"command": batFilePath,
"options": {
"cwd": exeFilePath
}
}
]
}
위에서 만든 bat파일의 위치를 batFilePath
에, exePath를 exeFilePath
에 적어줍시다.
이제 keybindings.json
을 수정할겁니다. 상단 바에서 File Preferense Keyboard Shortcuts로 갑시다.
간 뒤에 우측 상단을 보면
이런게있습니다. 오른쪽에서 세번째꺼 눌러주면 JSON파일로 열립니다.
[
{
"key": "alt+r",
"command": "workbench.action.tasks.runTask",
"args": "swift",
"when": "editorLangId == 'swift'"
},
]
거기에 위 코드를 작성해주세요.
alt+r
은 원하는 단축키로 하시면 됩니다.
이 작업까지 해주면, 이제 단축키를 누르면 bat이 실행됩니다! 조금 느린건 감안합시다.
이건 의외로 없어도 됩니다.