EMACS 50주년, MIT AI랩의 편집기에서 자유 소프트웨어 운동이 시작되다
- 1976년 MIT AI랩의 리처드 스톨먼이 스탠퍼드 AI랩에서 전체화면 편집기 E를 보고 돌아와 Control-R을 고쳤고, 키마다 매크로를 하나씩 붙이는 구조가 EMACS의 뼈대가 됨
- 이름은 Editor Macros의 약자로, 가이 스틸이 랩 구성원마다 제각각인 Control-R 명령을 표준화하려고 데이비드 문, 스톨먼과 함께 Meta-F, Meta-B 같은 명령 집합을 정한 결과이며 스틸은 "훌륭한 편집기를 만들려던 게 아니라 사회적 문제를 풀려던 것"이라고 말함
- 스톨먼은 자기 테이프와 반송 봉투를 보낸 사람에게 EMACS를 배포했고 1981년 매뉴얼에 "개선 사항을 돌려보내는 것이 회원 조건"이라고 적어 소프트웨어 공유 코뮌을 선언했으며, 이 공동체가 자유 소프트웨어 운동과 GNU/Linux로 이어짐
- 버나드 그린버그가 허니웰의 Multics용으로 따로 만든 EMACS가 1980년 국제 허니웰 소프트웨어 콘퍼런스에서 1등을 했고 허니웰이 판매를 시작했으며, Apple은 나중에 Mac OS X에 EMACS를 포함해 배포함
- 기원은 1962년 댄 머피가 PDP-1용으로 만든 TECO이고, 1971년 칼 미켈슨의 Control-R이 화면에 변경을 즉시 보여주는 첫 단계였으나 한 번에 몇 줄만 표시하는 한계가 있었음
Hacker News opinions
emacs는 진짜 별종임. 리습 머신에 가장 가까운 물건이고 코드가 곧 API라서 뭐든 고칠 수 있음. 근데 요즘 연구소들이 (A)GPL 코드는 쓰면서 기여는 안 하는 건 스톨먼이 말한 라이선스 취지랑 정면으로 어긋나는 거 아님?
옆자리 동료가 아침에 윈도우용 emacs 켜고 하루 종일 안 나왔음. 그 숙련도가 부러웠는데 난 끝내 익숙해지지 못했고, 요즘은 Glamorous Toolkit 같은 그래픽 쪽에 더 끌림
emacs 좋은데 윈도우에서는 아직 x64만 지원함. 이제 레거시 플랫폼인데 arm64도 좀 나와줬으면
아니면 윈도우 자체가 레거시가 되는 게 더 바람직하지 않으려나
인텔이나 AMD가 죽으면 PC 클론도 같이 죽는데 그걸 바라는 건 좀 아님
VSCode랑 Zed의 lsp, 디버거 다 써봤지만 결국 emacs로 돌아옴. 요즘은 에이전트로 설정 만지는 사람들 많다던데 최근 1~2년 사이에 뭐가 제일 크게 바뀐 건지 궁금함
네이티브 컴파일이 기본이 되고 tree-sitter 문법 자동 설치도 매끄러움. canvas 지원이 마스터에 들어와서 온갖 걸 만들고 있고 modus 테마, eglot, which-key 같은 기본 패키지도 좋아짐. newcomer-presets 테마도 써볼 만함
Csound 스코어 패러다임으로 마이크로톤을 기본 지원하는 트래커를 만든 게 아직도 뿌듯함
두세 달 전에 Neovim 버리고 Doom + evil로 갈아탔는데 안정적이라 좋음. 키 바인딩은 GPT한테 옮겨달라고 했음
30년 넘게 씀. 설정 일부는 30년 된 것도 있음. 요즘은 AI한테 창 관리, difftastic 연동, 마크다운 미리보기 같은 걸 말로 시켜서 만드는데 제일 중요한 건 내 편집기를 내가 통제한다는 점임. 기업이 AI 비서나 광고를 끼워 넣지 않음
AI가 개발을 돕는 건 좋은데 elisp 내부를 깊게 아는 사람이 원래도 적었는데 AI가 그걸 더 줄이지 않을까 걱정됨
emacs 안에서 claude한테 확장을 짜게 해서 실행 중인 프로세스에 바로 주입하고 결과 보면서 반복하는 게 됨. 궁극의 REPL임
최근에 시작했는데 emacs가 뭘든 다 할 수 있다는 게 오히려 공격 표면 아닐까 걱정됨. 프로젝트 열었는데 파서 exploit 같은 게 자동 실행되면 어쩌나 싶어서 샌드박스에 넣어 돌려야 하나 고민 중임
1978년 AI랩에서 emacs를 시작했고 아직도 주 개발 도구임. 아마 하루 중 가장 오래 붙잡고 있는 프로그램일 거임