Github Codespace로 SourcePawn 개발환경 구성


큰일났다. Atom이 지원을 중단한다.
SourcePawn 스크립팅 개발 환경으로 사용하던 에디터가 공식적으로 2022년 12월 부로 지원 중단을 선언했는데 안그래도 로컬로 컴파일 돌리는 것이 슬슬 귀찮아지던 때라 작업 환경을 개선해보기로 하였다.

Github의 Codespace 자체는 주어지는 가상 컨테이너를 중심으로 VSCode의 원격 연결을 이용해 나만의 코드 저장소를 구성한다고 생각하면 편하다.
따라서 사용되는 작업공간에 한해서 적용한 설정을 VSCode에 호환되는 모든 플랫폼에서 동일하게 개발을 할 수 있다는 것이니 마다할 이유가 없다.

그러므로 실험삼아 제일 많이 건들고 있는 Freak Fortress 2 쪽을 먼저 건드려봤다.
Codespace는 처음 건드리는거라 적용 사례가 있던 저장소를 참고하기 보다는 한번 내 마음대로 만들어 본 후에 나중에 수정할 생각이다.

먼저 계속 Atom을 사용해오던 본인은 키보드 단축키부터 헷갈리므로 Atom Keymap부터 설치해야 했다.
그런 다음 거의 유일하게 유지보수를 하고 있던 SourcePawn 익스텐션을 설치한 뒤, 자동 컴파일 설정을 위해 리소스를 컨테이너에 저장 및 업데이트하는 배치 스크립트를 추가하고 저장소에 SourcePawn 익스텐션 설정을 남겨 다른 사람이 같은 저장소로 Codespace를 생성하면 동일한 환경이 되게 하였다.

자동 컴파일에 필요한 리소스의 경우는 SourceMod 기본 API와 그 외 기타 API를 컨테이너 내의 한 폴더에 모아서 쓰일 수 있도록 하고 Output을 위한 저장 위치는 저장소 내에 bin 폴더를 새로 만들어 컴파일에 필요한 설정을 마련했다.

저장소 내의 SourcePawn 익스텐션 설정


Codespace의 가상 컨테이너는 Ubuntu 20.04 환경이므로 리소스들을 다운받고 위치를 할당하는 것에는 간단한 셸 스크립트가 제격이다.

SourceMod와 기타 API 업데이트 스크립트
FF2 업데이트 스크립트 (이건 관련 내용이 업데이트되면 다시 업데이트 해야만 한다.)

이렇게 설정하고 에디터에서 원하는 파일을 선택한 후에 우측 상단의 컴파일 버튼을 누르면 아까 설정해둔 /bin 폴더에 플러그인 파일이 생성된다. 또한 문법 체크도 자동으로 이뤄진다. 만세!

이전보다는 확실히 효율적이게 되었으나 일단 지금까지 쓰면서 불만이었던건 다른 것도 아니고 git pull가 문제였는데 git config을 통해 미리 pull 설정해두지 않으면 저장소에서 불러올 수 없다.

$ git config pull.rebase true 

그 동안 Git은 GitKraken이라는 GUI 클라이언트를 사용해 조정했던 것을 생각하면 VSCode의 인터페이스는 묘하게 적응하는게 시간이 걸릴 것 같다.

그 외에는? 아직은 없다. 나중에 생기면 더 추가하겠다.




,

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다