Как сделать так, чтобы мой настроенный emacs загружался быстрее? - PullRequest
10 голосов
/ 16 апреля 2011

Поскольку я добавляю все больше и больше плагинов и конфигураций в init.el моего emacs, его запуск становится все более медленным.Есть ли способ избежать этого?

Ответы [ 2 ]

19 голосов
/ 16 апреля 2011

Ваши .emacs или init.el не должны иметь много команд require или load, в основном они должны содержать autoload.Функция autoload сообщает Emacs «если вам когда-нибудь понадобится эта функция, загрузите этот файл».Таким образом, файл загружается только тогда, когда вы действительно используете эту функцию.Вам нужно require (или очень редко load) в двух случаях:

  • , если есть настройка, которая должна вступить в силу немедленно (например, (require 'cl), цветовая тема);
  • , если вы загружаете небольшой файл, содержащий autoloads и другие определения запуска пакета (например, (require 'tex-site).

Если вы неДелая это уже сейчас, вызов autoload для таких вещей, как настройки для конкретного режима, может значительно сократить время запуска, поскольку Emacs придется загружать меньше файлов.

Кроме того, убедитесь, что ваши файлы скомпилированы побайтово;Загрузка будет выполняться немного быстрее (меньше процессорного времени). Вызовите M-x emacs-lisp-byte-compile для каждого файла .el или M-x byte-recompile-directory (эти команды находятся в меню Emacs-Lisp).

Наконец, обратите внимание, что загрузкавремена не имеют большого значения, потому что вы должны запускать Emacs не более одного раза за сеанс . Запускать Emacs автоматически при входе в систему, либо из окна, либо в фоновом режиме с опцией --daemon. Затем,чтобы редактировать файл, запустите emacsclient,Вы также можете указать emacsclient запустить Emacs, если он еще не запущен , если вы не хотите запускать его при входе в систему.

2 голосов
/ 16 апреля 2011

Вы можете скомпилировать как файл .elc (M-x byte-compile-file)

...