On Fri, May 04, 2001 at 11:41:00AM +0400, Oleg Tihonov wrote: > > > /etc/emacs/site-start.d/gettext.el: > > > (autoload 'po-mode "po-mode" "PO (gettext i18n) editing mode." t) > > > (add-to-list 'auto-mode-alist '("\.po$" . po-mode)) > > а, то есть /etc/emacs/site-start.d/gettext.el загружает /usr/share/emacs/site-lisp/po-mode.el. > > тут я чувствую, кто-то проводит аналогию со старт-стоп-скриптами. вот это ".d" > обозначает "демон", да? так это тоже неправильно. Емакс не демон и его пакеты не > демоны, и нет никакой необходимости писать отдельный файлик для запуска и > инициализации каждого пакета. обычно в default.el пишут так: > > ;;;; load po-mode -- major mode for editing ".po" files > (autoload 'po-mode "po-mode" "PO (gettext i18n) editing mode." t) > (add-to-list 'auto-mode-alist '("\.po$" . po-mode)) > > ;;;; load тоси-боси > (autoload тоси-боси ... > > кому надо, тот легко лишнее вырежет или новое добавит. > > > Каталоги /etc/emacs/site-start.d/ и /usr/share/emacs/site-lisp/ > > предназначены для разных целей: > > > > $ C rpm -qlv gettext |fgrep emacs > > -rw-r--r-- root root 118 Apr 26 17:09 /etc/emacs/site-start.d/gettext.el > > -rw-r--r-- root root 94000 Mar 23 16:23 /usr/share/emacs/site-lisp/po-mode.el > > > Так что отдельный каталог для "autoload" нужен. > > для начальной загрузки есть стандартные, документированные файлы > "site-start.el" и "default.el". есть описание порядка их загрузки и способа > предотвратить их загрузку. все есть, надо только разобраться. > > сразу разницу объясню: сайт-лисп -- это то, что должно грузиться у всех > пользователей всегда. сюда не надо писать такие вещи, которые кто-то > может захотеть отключить или поменять (расцветки например, и вообще > все, что относят к предпочтениям пользователя). все остальное можно > писать в default.el -- это аналог .емакс, только для всех. пользователь может > легко отключить его загрузку. на самом деле, имеет смысл делать не default.el, > а /etc/skel/.emacs -- смысл тот же, но изменять будет еще проще. Такая схема очень неудобна в использовании как минимум по двум причинам: - Каждый пакет, реализующий .el-модуль, не может и не должен делать автовключение этого модуля частью реализации. Автозагрузка модуля должна быть выполнена _отдельно_ от реализации модуля. - Каждый пакет, реализующий .el-модуль, для реализации автозагрузки не может и не должен редактировать файлы site-start.el, default.el, /etc/skel/.emacs, etc. Regards, Dmitry +-------------------------------------------------------------------------+ Dmitry V. Levin mailto://ldv@alt-linux.org ALT Linux Team http://www.altlinux.ru/ Fandra Project http://www.fandra.org/ +-------------------------------------------------------------------------+ UNIX is user friendly. It's just very selective about who its friends are.