1

Emacs の初期化とロードパス変数の構成を理解するのに助けが必要です。したがって、$HOME に初期化ファイル .emacs (または .emacs.d/init.el) ファイルがあり、それが最初にロードされます。このファイルが読み込まれる時点で、load-path には既に / からのディレクトリが含まれています。など、/usr/*、たとえば Emacs ディストリビューション自体のディレクトリ。

init ファイルをロードした後、.emacs.d をスキャンしてそこにあるサブディレクトリを追加する、標準の Emacs 初期化ファイルはありますか?

Emacs マニュアルでは、最初の Emacs 初期化ステップ ( https://www.gnu.org/software/emacs/manual/html_node/elisp/Startup-Summary.html#Startup-Summary ) でsubdirs.el について何か述べていますが、それは起こります。初期化ファイルをロードする前に、使用されている言語がわかりません:

  1. リスト内の各ディレクトリで subdirs.el という名前のファイルを実行することにより、サブディレクトリを load-path に追加します。

どの「リスト」で?

4

2 に答える 2

2

このステップの「リスト」は、実際には にプリロードされたインストール値ですload-path。残りのポイントは、実行された手順で明確になります。たとえば、一部の Debian/Ubuntu ディストリビューションでは、システム全体の構成ファイルが に追加されます。/etc/emacsXXこれは、パッケージが の初期パスの一部としてコンパイルされるときに、ソース コードにハード コードされますload-path

于 2016-03-02T20:46:10.700 に答える
1

init ファイルをロードした後、.emacs.d をスキャンしてそこにあるサブディレクトリを追加する、標準の Emacs 初期化ファイルはありますか?

一般に、いいえ -- Emacs は自動的に任意のサブディレクトリをあなたのディレクトリに追加することはload-pathありません (あなたもそうしたくありません)。

ただし、これは一部の特定のサブディレクトリで発生します。

load-pathEmacs 24 の時点で、組み込みのパッケージ マネージャーは、init ファイルが評価された後に、インストールされた ELPA パッケージ ディレクトリを自動的に追加します。

(および/または whenpackage-initializeが明示的に呼び出された場合、それを行う場合。)

デフォルトでは、ELPA パッケージは次の場所にあります。~/.emacs.d/elpa/

于 2016-03-03T01:32:56.140 に答える