Emacs Lisp에 대한 질문이 있습니다. setq 와 setq-default 의 차이점은 무엇입니까 ?
튜토리얼에서는 setq 가 로컬 버퍼에 영향을 미치는 반면 setq-default 는 모든 버퍼에 영향을 미친 다고 말합니다 .
예를 들어 init.el에 (setq a-var a-vars-value) 를 썼다 면 Emacs를 시작하고 새 버퍼를 연 후에 발견했습니다. a-var 도 거기에 있고 그 값은 a-vars-value입니다. 입니다. 거기에 있으면 안된다고 생각했습니다. setq 와 setq-default 사이에 차이가없는 것 같습니다 .
내 이해에 문제가 있습니까?
예를 들면 :
내가 쓴 (123 안녕하세요 SETQ) 에 init.el 파일, 그리고 실행 abuffer 이맥스 쉘에서, 나는 입력이 "안녕하세요 CX 세륨은" 그것은 "123"을 보여줍니다. 모든 새 버퍼에서 이것을 실행할 때도 마찬가지입니다.
내가 쓴 (SETQ 탭 폭 4) 에 init.el 파일. 탭 너비 Cx Ce를 실행하면 "8"이 표시됩니다 (현재 모드는 '텍스트'). 그러나 (setq-default tab-width 4) 를 사용하면 "4"가 표시됩니다. 이 현상을 설명 할 수 없습니다.