서브라임 텍스트를 쓰기로 한 이유, SublimeREPL

by SL

얼마 전부터 서브라임 텍스트 에디터를 쓰고 있다.

R이나 SAS의 내장 편집기로 작업할 때, 원하는 코드 부분만 선택해서 실행하는 기능은 정말 너무너무 편리하다. 분석을 하다 보면, 코드를 계속 수정하면서 데이터를 탐색하고 실험하는 과정이 필수적인데, 그때마다 파일 읽기부터 다시 해야 한다면 무척 불편할 것이다. 이렇게 빠른 호흡의 (코딩 – 결과 확인)의 반복에 맛을 들이니까, 파이썬 같은 언어로 개발할 때도 비슷한 방식으로 작업하고 싶어졌다.

그럼 그냥 터미널에서 파이썬 실행하고 REPL 쓰면 되지 않냐고 할 수도 있는데, 전체 파일을 열어놓고 내가 원하는 영역을 쉽게 선택하고 실행할 수 있어야 했다. 처음으로 찾은 대안은 Light Table이었다. 컨셉은 무척 마음에 들었으나, 실제로 며칠 써보니 어딘가 아쉬움이 있었다. 좀더 무르익기를 기다리기로 하고 포기.

두 번째로 찾은 것이 SublimeREPL이다. 서브라임 텍스트에 이 패키지(플러그인같은 개념)를 설치하면, 소스코드(파이썬도 되고 클로저도 되고 R도 된다)에서 내가 원하는 영역만 REPL에서 실행해볼 수 있다.

Sublime REPL

소소한 불편사항이 몇 개 있는데,

  • 항상 REPL을 수동으로 먼저 실행해줘야 한다는 점(Eval in REPL 메뉴를 실행하는 순간 자동으로 REPL을 찾아서 실행해주면 참 좋을 듯)
  • 이상하게 파이썬에서 print를 하지 않으면 평가된 값을 REPL에서 보여주지 않는 점

등이다. 그래도 이 정도는 감수할 만한데, 기본 단축키가 좀처럼 익숙해지지 않았다. 현재 커서가 있는 라인을 실행하는 기본 단축키는, 컨트롤키 누른 상태에서 쉼표 누르고 나서 L키를 누르는 것이다. RStudio처럼 커맨드+엔터키로 바꾸고 싶어서 검색해보니 스택오버플로우에 답이 있었다. Preferences 메뉴의 Key Bindings -User를 선택하고 아래와 같이 설정을 추가하면 된다. 설정 파일을 저장하면 실시간으로 메뉴의 단축키가 바뀐다.

[ { "keys": ["super+enter"], "command": "repl_transfer_current", "args": { "scope": "lines" } } ]