2016-08-09 10 views
2

どのように'load-file'現在のバッファの関連ファイルですか?現在のバッファに関連ファイルを `` load-file`する方法は?

~/.emacs.d/init.elを編集した後、再読み込みしたいので、コマンドM-x load-fileを発行します。

ただし、~/.emacs.dから遠く離れたディレクトリ(C:/Users/...など)でプロンプトが表示されることがあります。

なぜこの開始場所が変更され、現在のバッファの関連ファイルを高速に読み込むのですか?

+0

'M-x load-file'を呼び出す前に、現在選択されているウィンドウはバッファが' init.el'ファイルにアクセスしているものですか?また、 'C:/ Users/...'パス*が '〜/ .emacs.d'と同じではないことを確認できますか? Windowsでは後者がおそらくその不特定の '... 'のどこかに生きているからです。 – phils

答えて

2

あなたがロードしたい場合は、になります:

Mxload-fileRETプロンプトでファイル名を入力しない場合RET

load-fileが訪問したファイルをロードします。

ではないことに注意してください。は、デフォルト値(ディレクトリパス)を削除する必要がありません。単にRETと入力してください。

これは、バッファのdefault-directory(プロンプトのデフォルト値は実際には訪問先ファイルの親ディレクトリではない場合があります)を変更するために何らかの作業を行った場合でも同じです。 RETと入力すると、Emacsは絶対パスbuffer-file-nameを使用し、default-directoryを重要ではありません。

1

load-fileは、現在のバッファの値default-directoryをデフォルトのディレクトリとして使用します。現在のバッファがファイルを訪問している場合、そのファイルを含むディレクトリがデフォルトとして機能します。

あなたがして設定することができます

(setq-local default-directory "~/.emacs.d/") 

と指定されたモード(必要な場合)のためにそれを設定:現在選択しているウィンドウがファイルを訪問しているバッファを表示している場合

(setq-mode-local jde-mode default-directory "~/.emacs.d/") 
+0

ありがとう、素晴らしい答え。しかし、RET RETのような簡単なキーの組み合わせがあって、関連するファイルを現在のバッファにロードすることができたらと思った。 – Shuzheng

関連する問題