Замена требует, чтобы операторы автозагрузкой в .emacs файле улучшили производительность

я использовал бы Python для этого

import fileinput

for linenum,line in enumerate(fileinput,FileInput("file",inplace=1)):
    if linenum ==1:
          print ""
          print line.rstrip() 
      else: 
          print line.rstrip()`
8
23.05.2017, 15:40
2 ответа

Как первый шаг к автозагрузке, я предложил бы, чтобы Вы преобразовали свое явное load команды с путями, добавленными к списку вещей, в которых emacs должен загрузиться, как:

(add-to-list 'load-path (expand-file-name "~/.emacs.d/"))

С этим наверху Вашего .emacs, можно назвать другие вещи, которые зависят от загрузки других файлов так, чтобы они были найдены.

Специально для отсрочки загружающихся файлов, для каждого (require 'foo) то, что Вы имеете в Вашем .emacs, необходимо заменить это чем-то подобным:

(autoload 'name-of-foo-mode "code-for-foo.el" "Minor/Major mode for foo" t)

Вам, вероятно, придется экспериментировать (возможно, чтение) код для соответствующего .el файл для наблюдения, что является именем, вместо которого необходимо поставить 'name-of-foo-mode. Наиболее распространенные 'foo или 'foo-mode, но существует несоответствие.

В моем случае у меня есть эти объявления близко к нижней части моего .emacs:

(autoload 'textmate-mode "textmate" "Minor mode for automatic bracket pairs" t)
(autoload 'post-mode "post" "Mode for editing e-mails" t)
(autoload 'turn-on-reftex "reftex" "Minor mode for references in TeX files" t)
(autoload 'mode-compile "mode-compile" "Compile current buffer" t)
(autoload 'markdown-mode "markdown-mode" "Major mode for Markdown files" t)

но некоторые объявления, что я имел к require прежде чем я переместился в автозагрузку, были:

(require 'reftex)
(require 'post)
(require 'compile)
(require 'textmate)

Так, как я сказал, Вам, вероятно, придется сделать некоторое экспериментирование или чтение кода, но в конце это стоит того, поскольку это сэкономит Вам некоторое время при вызове emacs часто.

4
27.01.2020, 20:12

Лучшим способом, которым я нашел для получения emacs, запущенного быстро, является к daemonize процесс. Эти инструкции принадлежат emacs23. Предыдущие версии имеют способность к серверу/клиенту, но может быть более трудно настроить. Когда я сначала вхожу в свой рабочий стол, я выполняюсь emacs --daemon. После этого каждый раз, когда мне нужен emacs, который я выполняю emacsclient -c filename и это открывается немедленно. При использовании emacs в режиме сервера/клиента, необходимо повредить привычку к использованию C-x C-c выходить, вместо этого вводя C-x #. FWIW, это - что-то, что emacs23, кажется, фиксирует, поскольку я при случае поймал меня ввод C-x C-c не уничтожая серверный процесс, но я все еще держусь за свои старые привычки.

В зависимости от Ваших требований это может удаться лучше, чем управление Вашей конфигурацией для небольшого усиления.

1
27.01.2020, 20:12

Теги

Похожие вопросы