doom emacs 전환 후기

1 minute read

/emacsian/assets/2022-09-03-welcome-doom-emacs-00.jpg

2013년부터 진지하게 emacs를 사용하고 있다. 지금까지 핸드메이드 init.el 설정 파일을 유지했다. 필요한 설정을 메뉴얼에서 찾거나 관련 블로그에서 정보를 얻어서 세팅했다. 조금씩 emacs가 내 손에 맞아떨어지는 재미가 있었다.

하지만 emacs 설정 프레임워크 중 하나인 doom emacs를 사용하기로 했다. 최근에 대충 쓸 수 있게 기존 설정을 옮기는 작업을 완료했다. 왜?

시작은 사소했다. emacs에서 vim 키바인딩을 사용하는 evil mode를 사용한다. org mode에서 evil jump 리스트 업데이트가 제대로 되지 않아서 C-o, C-i 키가 제대로 동작하지 않았다. 이리저리 찾다가 spacemacs, doom emacs 설정 코드를 참고한다. 이런 게 몇 번 반복되니깐 매번 참고하는 spacemacs, doom emacs 중 하나를 그냥 사용할까 하는 생각이 들었다.

장점이 많다. 공들여 만든 emacs 설정 프레임워크다. 문제가 생길 때마다 이리저리 검색해서 반창고를 붙여온 내 설정 파일과 차원이 다르다. 잘 관리되고 있어서 엔트로피를 낮추려는 노력을 따로 안 해도 된다.

꽤 많은 패키지를 손쉽게 활성화할 수 있다. 이게 큐레이션이 되기도 한다. 많은 emacs 패키지 중에 괜찮은 패키지를 골라낸거다. 어떤 패키지인지 궁금하다. 시간이 날 때마다 하나씩 활성화해서 써 볼 생각이다.

안정성이 떨어지는 게 문제다. stable 브랜치라도 있으면 좋겠는데, 그런 거 없다. 2018년에 만든 v2.0.9 이후엔 태그도 없다. 매일 꾸준히 커밋이 추가된다. 커뮤니티가 커서 문제가 생기면 언젠가 해결이 되긴 한다. 매번 해결되는 시간 동안 기다릴 수 있을까?

doom emacs는 git으로 버전 컨트롤하기 때문에 문제없는 git hash 값을 기억했다가 최신 버전을 욕심냈다가 문제가 생기면 되돌리면 된다. 즉, 내가 stable을 자체적으로 관리하는 방법이다. 이런 안정된 버전을 어떻게 기록하면 될까? 어딘가에 git hash를 기록하는 방법 대신 fork 떠서 ohyecloudy/doomemacs 저장소를 만들었다. 천천히 doom emacs 버전을 따라갈 생각이다.

각종 기본 세팅부터 시작해 키 바인딩까지 잘 설정되어 있어서 내가 맞추고 있다. 고수의 세팅을 사용하는 재미가 이런 거구나. 지금까진 만족한다. 나중에 다시 직접 설정하는 걸로 돌아간다고 해도 doom emacs를 쓰면서 배우는 게 많을거라 기대된다.

C-x C-s C-x C-c