Emacs 31.1, unexec 제거와 트리시터 문법 자동 설치 제안 추가
- Emacs 31.1은 표준 Lisp 상태를 메모리 이미지로 덤프하던 오래된 unexec dumper를 제거했으며, 수년간 기본값이었던 portable dumper만 남김
- 새 user-lisp/ 디렉터리에 패키지를 두면 Emacs가 로딩과 autoload 설정을 처리해
M-x에서 명령을 찾을 수 있게 함 - tree-sitter는 문법 설치를 제안하는 기능을 추가해, 사용자가 언어별 문법을 직접 설치해야 했던 진입 장벽을 낮춤
- Emacs 30.1의 completion-preview-mode에 사용자 설정 항목을 대폭 더해
*Completions*창 기반 완성 동작을 조정할 수 있게 함 window-layout-rotate-clockwise등으로 창 배치를 회전할 수 있고,C-x C-x로 point와 mark를 교환할 때 영역을 활성화하지 않는 내장 옵션도 추가됨
Hacker News opinions
트리시터와 Eglot(LSP)가 들어오니 다른 편집기에서 아쉬운 게 거의 없음. Zed를 쓰고 있었는데, 이번 주에 기존 .emacs 설정을 버리고 내장 기능만으로 새로 구성해볼까 함.
Zed에서 특별히 그리울 기능이 있는지 궁금함. AI 기능이 실제로 쓸 만한지도 알고 싶음.
GPT 같은 AI는 Emacs Lisp를 꽤 잘 다룸. 지금은 설정을 다시 짜기 더 쉬운 때인 듯.
글의 Packages 절은 실제로 시험해 보지 않고 NEWS 항목에 মন্তব্য만 흩뿌린 느낌이라 아쉬웠음. :vc 자체가 없어진 게 아니라 package-vc-install-from-checkout 폐지에 따라 :vc와 :load-path 조합이 영향받은 것인데, package-review-policy나 newcomers 테마도 빠졌음.
나는 마스터 브랜치를 자주 돌리고 버그도 내지만 NEWS의 모든 항목을 시험할 수는 없었음. 그래도 트리시터에는 직접 git clone과 빌드 코드를 넣으면서 VC checkout의 이식성을 문제 삼는 건 납득하기 어렵고, user-lisp/는 use-package가 하던 내려받기와 설정 표준화를 대신하지 못함.
글이 많은 변경점을 다뤘고 흥미로운 설명도 했는데, 안 써봤다거나 자기 관심사를 안 넣었다고 비난하는 건 과하다고 봄. 더 나은 글을 직접 쓰면 됨.
user-lisp/ 변경이 가장 반가움. 대화형 명령과 모드에 ;;;###autoload만 넣으면 가벼운 개인 패키지를 만들고 지연 로딩할 수 있음.
패키지 소스만 들여다보는 것 말고 Emacs Lisp를 배울 자료가 필요함. Mastering Emacs는 읽었지만, 흔한 문제를 설계하는 방식까지 배울 자료를 찾는 중임.
Info의 Emacs Lisp Intro와 Elisp 매뉴얼을 읽어보는 게 좋음. 특히 Elisp 매뉴얼은 참고서로 유용함.
The Land of Lisp를 읽고 Elisp를 조금 더 파게 됐음. 다소 기초적일 수 있지만 Common Lisp 자료도 도움이 될 듯하고, Prot의 패키지들은 설계가 깔끔해서 읽기 좋음.
Zaretskii가 portable dumper 문제로 사임했는지 궁금했음.
아님. MAINTAINERS 파일에 아직 있고, 2016년부터 2026년 구간에서 커밋 수가 가장 많음.
macOS에서 트리시터 문제 때문에 작년에 포기했음. 언어별 ABI 호환 버전을 찾아야 했는데 문서가 부실했고, 이제 문법을 대신 설치해 준다면 해결되길 바람.
Combobulate 페이지에 권장 패키지 버전은 적어뒀음. Emacs 31.1의 모든 메이저 모드와 100% 호환되는지는 아직 확인하지 않았지만 Combobulate 테스트는 Emacs 31에서 통과함.
user-lisp/ 절은 두 번째 문단이 빠진 것처럼 보였음.
뒤쪽에서 그 디렉터리의 Lisp 파일을 자동 로드하고, 추가한 명령도 바로 작동한다고 설명함. 꽤 좋은 변경임.
내장 튜토리얼 말고 Emacs를 시작할 방법이 있는지 궁금함. VS Code가 점점 불편해서 몇 번 시도했지만 생산성을 낼 때까지 못 갔음.