2012-06-15 3 views
1

나는 여러 개의 이맥스 패키지를 M-x install-package에 의해 설치했다. 스타터 키트 패키지는 도구 모음과 emacs의 메뉴 막대를 숨기지 만 다시 보여주고 싶습니다. 모든 설치 패키지를로드 한 후 elisp 코드를 평가하는 방법은 무엇입니까?

나는 나의 ~/이맥스 파일에

(tool-bar-mode t)

을 추가했지만 스타터 키트 패키지를로드하기 전에 그것을 평가받을 것으로 보인다.

설치된 모든 패키지가로드를 완료했을 때 평가하려면 어디에 사용해야합니까? 스타터 키트 패키지는 '스타터 키트'라는 라이브러리에 있음을 가정

답변

1

는 특히 package.el 파일에서보세요 : 그래서

(defcustom package-enable-at-startup t 
    "Whether to activate installed packages when Emacs starts. 
If non-nil, packages are activated after reading the init file 
and before `after-init-hook'. Activation is not done if 
`user-init-file' is nil (e.g. Emacs was started with \"-q\"). 

Even if the value is nil, you can type \\[package-initialize] to 
activate the package system at any time." 
    :type 'boolean 
    :group 'package 
:version "24.1") 

.emacs에서 일찍 package-initialize으로 전화 한 다음 tool-bar-mode과 같이 필요한 것을 덮어 쓸 수 있습니다.

after-init-hook에 덮어 쓰기를 추가 할 수도 있습니다.

+0

또한'Ch ig (emacs) Package Installation RET'을 시작으로 "init 파일을 로딩 한 후 자동 패키지 로딩이 발생하는 이유는 사용자 옵션이 패키징 시스템에 영향을주는 사용자 옵션을 포함하여 init 파일을 로딩 한 후에 만 ​​사용자 정의 된 값을 수신한다는 것입니다 . " – phils

+0

'after-init-hook' (Nicolas Dudebout이 이미 언급했듯이)을 사용하는 것이 아마도 가장 안전한 방법 일 것입니다. '(add-hook-after-init-hook) '(defun my-after-init-hook() ...)'과 같은 것 – phils

2

이 작동합니다 :

(eval-after-load "starter-kit" 
    '(tool-bar-mode t)) 
+0

특정 패키지 이름을 지정하지 않고 마지막으로 설치된 패키지가로드를 마칠 때 Elisp 조각을 평가하는 방법이 있습니까? – TomCaps

관련 문제