나는 Emacs 24에서 패키지가 작동하는 방식 이 다소 유용하다는 것을 알았지 만 경험이 많은 사용자 또는 핵심 개발자가 24.4의 일반적인 경우에 실제로 선호하는 것에 대한 결정적인 답변을 원합니다.
Afaik (add-hook 'after-init-hook ...)
은 패키지에 대한 사용자 정의를 설정하기위한 무차별 대입 방식입니다. 그러나 점진적이고 개별적이며 게으른 확장 로딩에 잘 어울리는 더 역동적이고 미세한 구성에 eval-after-load
더 구문 적으로 설탕 with-eval-after-load
이 더 적합합니다.
이해가 정확합니까? 더 염두에 두어야 할 것은 무엇입니까?
답변
Afaik
(add-hook 'after-init-hook ...)
은 패키지에 대한 사용자 정의를 설정하기위한 무차별 대입 방식입니다.
아니요. init 파일에서 패키지를 구성하려는 경우 일반적인 접근 방식은 (package-initialize)
파일 맨 위에서 호출 한 다음 구성을 수행하는 것입니다. after-init-hook
이 목적을 위해 불필요하게 복잡합니다.
그러나 점진적이고 개별적이며 게으른 확장 로딩에 잘 어울리는 더 역동적이고 미세한 구성에
eval-after-load
더 구문 적으로 설탕with-eval-after-load
이 더 적합합니다.
(with-)eval-after-load
패키지가로드 된 후 수행하려는 작업에 사용됩니다 . package-initialize
패키지를로드하지 않고 “준비”만합니다 (오토로드로드).
eval-after-load
모든 구성 세트 를 사용하는 경우 (package-initialize)
맨 위에서 전화하지 않아도됩니다 . 그러나 사람들이 일반적으로하는 일은을 호출 (package-initialize)
하여 대부분의 구성을 init 파일에 직접 작성한 다음 eval-after-load
매우 길거나로드되는 패키지에 따라 달라지는 코드 만
작성할 수 있습니다.