0

私は emacs 24.1.1 を持っています。これには、GNU の python.el が emacs/24.1/lisp/progmodes でバイトコンパイルされた形式で付属しています。

私は Fabian Gallina の python.el (同じ名前に注意してください) をダウンロードし、emacs のロード パスの一部である emacs/site-lisp に配置しました。

Python ファイルを編集するとき、ロードされるのは GNU のモードではなく、Gallina のモードです。ただし、ガリーナのドキュメントが示唆していることにもかかわらず、(require 'python) を .emacs ファイルに入れていません。

どうしてこれなの?Gallina の python.el が GNU よりも優先されるのはなぜですか? (require 'python) なしで読み込まれるのはなぜですか?

4

2 に答える 2

2

Emacs で使用するほとんどのライブラリは、Emacs の起動時に読み込まれません。それらは自動ロードされますマニュアルを参照してください。

変数を見るload-pathと、site-lisp が Emacs 自身のライブラリの前にあることがわかります。したがって、Emacs が「python.el」をロードしようとすると、最初にバージョンが検出されます。

C-h f python-modeコマンドを実行する前に行うと、実際にはコマンドの Emacs バージョンの説明が表示されることに注意してください。これは、作成者が同じファイル名を選択したことによる不幸な副作用です。

一度実行するpython-modeと、ヘルプ テキストが変更され、バージョンが表示されます。

于 2012-07-09T12:02:11.303 に答える