Emacs에서 elpa를 사용하여 패키지를 설치했지만 Emacs를 시작할 때 어떻게로드 되었습니까?Emacs의 'package-install'(elpa)을 사용하여 설치 한 패키지는 어떻게로드됩니까?
0
A
답변
0
package-install
은 package.el
의 일부입니다. 이는 describe-function
으로 볼 수 있습니다. package.el
문서에서 :
;; At activation time we will set up the load-path and the info path,
;; and we will load the package's autoloads. If a package's
;; dependencies are not available, we will not activate that package.
그래서 모든 패키지에있는 파일
NAME-autoloads.el
있다이 파일은 시작 업에로드됩니다.
전체 패키지는 package-user-dir
아래에 포함되어 있습니다 :
(setq package-user-dir "~/.emacs.d/site-lisp/package-install")
(require 'package)
각 패키지는 패키지 버전 및 설명과 함께 NAME-pkg.el
이 포함되어 있습니다. 39.1.1 Summary: Sequence of Actions at Startup :
package-install # that's my package-user-dir
└── tabbar-2.0.1 # each package dir is in the separate dir
├── tabbar-autoloads.el # this file is loaded at start up
├── tabbar.el # the package itself. In this case it is just a single file
└── tabbar-pkg.el # information about the package for package managment
이 설명서를 인용하려면 : 예를 들어 바로 여기에 tabbar
패키지에 관련 파일
(15)의 경우 패키지 활성화 -에 - 시작 nil이 아닌이며, 그것은 설치되어있는 선택적인 Emacs Lisp 패키지를 활성화하기 위해 package-initialize 함수를 호출한다.
package-initialize
는 것입니다 차례로 로딩 NAME-autoload.el
로 끝나는 package-activate-1
호출 package-activate
호출
(load (expand-file-name (concat name "-autoloads") pkg-dir) nil t)
을