どの組み込みemacsパッケージが「必要」である必要があるかをどうやって知ることができますか?


8

emacs 24.4(C-hn)の変更ログを読み、ファイル通知機能とは何かを確認しようとしました。C-hv関連する変数を試してみましたauto-revert-use-notifyが、何も表示されませんでした。

次に、emacsソースコードでその変数名をgreppingしたところ、それがで使用されていることがわかりましたlisp/autorevert.el。実行後(require 'autorevert)、すべての基本的な関数と変数が定義されました。

質問:どのように私は知っているならば、私はに必要なものかrequire、私は組み込み機能、その後不活性のemacsを使用したい場合は?そのようなパッケージのリストはありますか?


私はしばしばhelm aproposを使用して、使用できるコマンド/関数/変数のタイプを見つけます。時々私が望む正確な設定は「組み込み」であることが判明しましたが、require最初にそのパッケージに入れなければなりません。
nispio 2014年

回答:


6

私の知る限り、あなたの質問に対する答えは、「あなたは知ることができない」と「そのようなライブラリのリストはありません」です。

aproposおよび同様のコマンドは、Emacsで配布されているものではなく、現在ロードまたはオートロードされているものにのみ基づいています。(a)組み込み(つまりCコードで)、(b)すでにロードされたライブラリから利用可能、または(c)自動ロードされない限り、そのようなコマンドでは選択されません。

その場合、あなたの唯一の手段は(私の知る限り)ソースコードを検索することです。グレッピングはそのための1つの方法です。

auto-revert-use-notify(ユーザーオプションである)などの変数がEmacs NEWS(C-h N)で明示的に言及されている場合、その言及がそれを定義するソースライブラリにリンクされていると便利です。そのため、その名前をRETクリックmouse-2するかクリックするだけです。ライブラリファイルをその定義で開く。M-x report-emacs-bugこれを拡張リクエストとして提出する場合に使用できます。

(また、一般的にそれを行うコマンドがあると便利かもしれません。ライブラリをロードする必要なしに、分散ソースコードで変数または関数の定義を検索します。この場合、正確な変数名はわかっていますが、grepそれが定義されている場所を見つける必要がありました。)


require+まだロードされていないパッケージのシンボルを閲覧できるパッケージの時が来たようです。;-)
nispio 2014年

@nispio:がんばれ!(1)Emacsディストリビューションで提供されるライブラリまたは(2)内のライブラリを検索するオプションの動作load-path;-)(ただし、名前のライブラリapropos+.elすでにが、しかし、最小限の存在、そしてこれは本当に程度ではありませんrequire。)
ドリュー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.