1. evil
vim 의 단축키를 '대부분' 지원함. C-a C-x 같이 숫자 깔짝거리는 거 지원  안 하고 gr(go to references) 가 lsp-mode 랑 따로 놀아서 키바인딩 별도로 해줘야 함

C-o, C-i (이전/다음 커서 위치로 이동) 도 vim 이랑 살짝 다르게 흘러가서 꽤나 헷갈림

2. .dir-locals.el, .file-locals.el
간단한 설정을 하기 위해서 lisp 를 능숙하게 다룰 줄 알아야 한다는 낮은 접근성과 코드를 잘못 적으면 아무런 에러나 메시지도 내뱉지 않고 그냥 설정 전체가 적용이 안 됨. 뭘 잘못한지는 직접 찾아야 함.

3. elisp
비슷하거나 중복되는게 너무나도 많은데 뭘 써야할지 recommend 도 없고 진짜 상당히 정교하게 짜지 않으면 나사가 몇 군데 빠진 느낌으로 굴러감. 정교하게 짜려면 elisp 를 엄청 빠삭하게 알아야 하는데 문법이 공부하기 싫게 생김

진입장벽도 높음. 기존 프로그래밍 언어와는 완전히 다름. 그렇다고 이걸 배웠을 때 바깥에 다른 곳에서 실용적으로 써먹지도 못 함.

4. 확장
only keyboard 환경으로 쓰기엔 불편하게 만들어놓은 확장들이 많음. 마우스로는 한 번 클릭이면 될 거를 키보드로만 쓰려면 추가 키바인딩도 해줘야 하고 키조합을 막 이리저리 눌러야 겨우 한 스텝씩 진행되는 느낌

그리고 코딩을 편리하게 해주는 도구 느낌의 확장이 전멸임. Doxygen comment generator 같은 게 쓸 만 한게 없더라. 그리고 lsp-mode 에서 signature help 띄울 때 미니버퍼로 갑자기 크게 떠서 코드 보이는 범위가 자꾸 좁아지고 커지고 해서 불편

5. 속도
이게 형용할 수 없는 굼뜸이 느껴짐. GCCEmacs 기준임. 파일 로드라던가 확장들의 속도는 vim 이랑 큰 차이가 안 느껴지는데 라인 수가 많은 파일일 수록 커서 이동에서 버벅임이 커지는 게 느껴짐. 특히 UI 로 뭘 띄우는 게 많은 확장 설치하면 커서가 중간중간 뚝뚝 끊어져서 움직이는 게 눈에 보일 정도

6. Emacs 설정 기본값
C/C++ 의 코딩 스타일 강제 적용(들여쓰기, 탭을 아무리 눌러도 반드시 띄워줘야 하는 만큼만 띄워지고 그 이상으로는 C-q + TAB 이런 괴상한 조합을 써야함),

multiline comment 쓸 때 주석 이어서 작성하려면 엔터키 쓰면 안되고 M-j 키를 써야 한다던지 하여튼 기본값이 왜 이런가 알 수가 없음.

* 그럼에도 쓰는 이유
vim 보다 훨씬 UI 가 편리함. 확장들이 UI를 적극적으로 사용해서 UI 관련 단점들이 싹 해결됨. 그리고 확장 하나하나가 에디터의 기본 스펙 범위에서 완전히 해방된 듯한 느낌들이라 이상한 제약 같은 게 없음