この投稿によると:
何らかの方法でファイルのドアを変更すると、require
emacsの起動速度を上げることができます。しかし、これを詳しく実行する方法がわかりません。load
.emacs
たとえば、私の.emacsファイルには次の内容がrequire
ありますload
。
(load "auctex.el" nil t t)
(require 'alarm)
(require 'linked)
(load "nxhtml/autostart.el")
(require 'autoinsert)
(require 'recentf)
(require 'color-theme)
(load "~/.emacsaddons/emacs-color-theme-solarized/color-theme-solarized")
...
alarm
およびについては、linked
というディレクトリに対応するファイルがあり.emacsaddons
、nxhtml
にはディレクトリがあり、他のディレクトリには対応するファイルはありません.emacsaddons
。上記の例では、ファイルにはすべてのrequire
ORload
ステートメントが含まれておらず、ORステートメントを置き換える手順が異なると.emacs
考えた部分のみが含まれていました(例:一部はファイルがあり、一部はファイルがないか、または.. .サブディレクトリのため) )。 )。autoload
el
.emacsaddons
nxhtml
.emacsaddons
パフォーマンスを向上させるためにすべてを機能に置き換える詳細なautoload
手順は何ですか?
ベストアンサー1
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を頻繁に呼び出すと時間を節約できるので、それは価値があります。