2017-04-05 18 views
1

Emacsでは、キーを押したときにElispの関数が呼び出されているのを見ることができますか?Emacs:今実行されているコマンド

例:Projectileミニバッファでは、ファイル名のパターンを入力し、矢印を使用してファイルを選択します。次のファイルを選択するためにどのような関数が呼び出されますか?

答えて

2

M-x view-lossage RET呼び出された関数のリストを表示します。

next-lineおよびprevious-lineは、スクリーンラインをナビゲートするための関数です。 diredを使用している場合はdired-next-linedired-previous-lineになります。

view-lossageは、Emacs 25.1以降の関数のみを表示します。

+0

'view-lossage'(' C-h ll')はEmacsの最近のバージョンでのみ関数名を表示します。歴史的にはキーストロークだけが表示されていました。 – phils

+0

さて、「最近」、パッチは2014年にコミットされました。 –

+0

最新の安定リリースであるEmacs 25.1で最初にリリースされました。大部分の人がEmacsを24.5以下で使用しています。 – phils

1

は、ほとんどの状況では、その順序がバインドされているどのコマンドを学習するために、C-Hに興味があり、キー配列が続くKを入力することができます。

+0

異なる状況では、 "キーストローク"は異なる機能を呼び出します。右矢印のドキュメントは、Projectileのミニバッファでも同じです。 – fevgenym

+0

'C-h k'は文脈的な答えを与えます。私はあなたが "Projectileのミニバッファ"の意味を知らないので、具体的にはコメントできません。 – phils

+0

私は賛否両論が何の助けを借りていたのか分かりません。 'C-h k' *は現在の状況で特定のキーシーケンスが何をするかをEmacsに尋ねる標準的な方法です。それが機能しない状況を持つことは可能ですが、一般的にはあなたが望むものを正確に行います。 – phils

1
  1. 特定のキーマップでどのようなキーがバインドされているかを調べることができます。また、Emacsのキールックアップの順序を調べて、現在の動作をどのキーマップが支配しているのかを知ることができます。

    キーマップでキーをルックアップするには、関数lookup-keyなどを使用できます。Elispマニュアル、ノードFunctions for Key Lookupを参照してください。

    あなたは、あなたがC-h M-kが与えられたキーマップのキーバインドをすべて表示するために使用できるライブラリhelp-fns.elを使用している場合。たとえば、C-h M-k minibuffer-local-mapを使用できます。

  2. あなたは、あなたがkey completion使用できるIciclesを使用する場合:トップレベルのいつでもS-TABは一緒に、彼らはにバインドされているコマンドで、あなたの現在のコンテキストで可能なすべてのキーを示しています。既にキーシーケンスを開始している場合は、キーシーケンスの可能な完了を表示します。

    完了候補のいずれかでC-M-RETを使用すると、完全なドキュメントを表示できます。

関連する問題