Finder에서 시작하면 Emacs (24.3.93.1)가 제대로 실행되지만 터미널 버전이 시작된 경우 :
/Applications/Emacs.app/Contents/MacOS/Emacs -nw
이맥스와 충돌 :
Fatal error 11: Segmentation fault[1] 51512 abort /Applications/Emacs.app/Contents/MacOS/Emacs -nw
.
문제는 init.el의 한 줄로 인해 발생하는 것 같습니다.
(set-face-attribute 'default nil :font "Menlo-16")
해당 줄을 주석 처리하면 터미널 버전의 Emacs도 제대로 시작됩니다.
충돌의 원인을 알아 내기 위해 몇 시간이 걸렸습니다 (내 init.el을 반으로 줄였습니다).
어쨌든 Emacs는 터미널 응용 프로그램에 지정된 글꼴 및 글꼴 크기를 상속받습니다 (기본적으로 해당 줄은 의미가 없습니다).
- 일반적으로 말해서 충돌하는 Emacs를 디버깅하는 더 좋은 방법이 있습니까? 아마도 더 설명적인 메시지를 인쇄하는 일종의 cli 디버거를 사용하고 있습니까?
- 왜 그 줄이 cli를 통해 Emacs에 충돌을 일으키지 만 Finder에서 시작하면 그렇지 않습니까?
(condition-case err (set-face-attribute 'default nil :font "Menlo-16") (error (message "Whoops!")))
여전히 동일한 오류 메시지와 동일한 충돌이 발생합니다. 추가 elisp-originating 메시지가 없습니다.
GNU Emacs 24.3.1 (x86_64-apple-darwin, NS apple-appkit-1038.36) of 2013-03-13 on bob.porkrind.org
에서 emacsformacosx.com 및 이맥스 충돌하지 않습니다. 따라서 이후 버전에서는 버그 여야합니다. 버그 신고를하겠습니다.
M-x report-emacs-bug
. 그런 다음 Emacs 개발자가 문제점을 디버그하는 데 도움이되는 작업을 안내합니다.