나는 PHP 개발할 때 변수명이나 함수명을 한글로 쓸 수 있으면 그렇게 한다. get_name 같은 함수야 굳이 한글로 할 필요가 없지만 is_3개월_미만_완납자() 같은 것은 한글이 짱이다.

그런데 에디터들 중에 이 한글 함수명, 변수명을 제대로 지원하는 게 드물다. 당장 이클립스도 제대로 지원을 못 한다. 한글로 함수명을 작성하면 빨간 에러가 뜬다. 재밌게도 PhpStorm은 한글 함수명 변수명을 제대로 지원한다.

코딩할 때 최근엔 이클립스가 아니라 Sublime Text 2를 더 자주 사용하는데, Sublime Text 2 역시 한글 함수명과 변수명을 제대로 지원해 주지 못한다. 에러를 표시하지는 않지만, 여튼간에 한글로 된 함수명과 변수명에 제대로 색깔을 입혀 주지 못하고, Ctrl/Cmd + R을 눌렀을 때 나오는 함수 목록에도 한글이 들어간 함수는 표시가 되지 않는 문제가 있었다.

고쳐 보겠다고 생각을 할 수 있었던 건 Sublime Text 2가 파이썬으로 작성돼 있고, PHP 지원이 플러그인 형식으로 돼 있다는 걸 플러그인 설치 때 대충 봤기 때문이다. 그래서 이거 저거 찾아 봤다. 그리고 대충 고쳤다. 정확히 알고 고친 건 아니다.

일단 메뉴에서 Preferences > Browse Packages… 를 선택한다. 그러면 탐색기가 열리면서 플러그인 폴더가 뜬다. 거기서 PHP 폴더를 찾아 들어가 PHP.tmLanguage를 연다.

전체 찾기 바꾸기를 한다. 어떻게? A-Za-z를 A-Za-z가-힣ㄱ-ㅎ로 하면 된다. Sublime Text 2를 재시작할 필요도 없이 수정을 하면 바로 적용이 된다.

이게 뭐임?

이 파일은 아마도 PHP 문법의 기본 요소들을 정규식으로 담고 있는 파일일 거다. 그렇다면 A-Za-z가 들어갈 자리에 가-힣ㄱ-ㅎ도 들어가야 한글도 함께 인식을 할 수 있게 되는 거라고 생각했다. 일단 이렇게 하니 한글이 들어간 함수명에 색깔도 제대로 입혀지고, Ctrl/Cmd + R을 눌렀을 때 함수 목록에도 한글이 들어간 함수가 제대로 표시된다. 이상! (근데 Follow Function PHP의 함수 점프 기능은 여전히 작동을 안 해서 좀더 찾아 봐야 할 것 같다.)