入力できないキーシーケンスのヘルプを検索するには


8

を使用してキーシーケンスのヘルプを検索できることはわかっていますがC-h k <key sequence>、ターミナルでEmacsを使用しており、ターミナルエミュレーターがすべてのキーシーケンスをEmacsに渡しません。説明なしでどこかに書かれた特定のキーシーケンスの表記が表示されることがあり、それが何をするのか調べたいのですが、タイプすらできません。C-h kキーシーケンス(文字通りC-<character>)を入力できる場所に相当するものはありますか?

回答:


15

eval-expressionM-:)を使用して、またはスクラッチバッファーで以下を評価します。

(describe-key (kbd "C-<whatever>"))

1
ちなみに、このソリューションはを使用して見つけることができますC-h k C-h k。(私の端末で動作します。)
ケビン

1
すごい。キーボードショートカットはモード固有である可能性があるため、実際にはM-:を使用するか、現在のバッファーで評価することをお勧めします。
asmeurer 2014

9

端末が原因で特定のキーの組み合わせを使用できない場合は、キー修飾子を手動でシミュレートすることにより、多くの場合、それを偽ることができます。次の組み合わせは、対応する修飾キーを使用した場合とまったく同じように機能します。

C-x @ a     alt
C-x @ m     meta
C-x @ c     control
C-x @ h     hyper
C-x @ s     super (lowercase s)
C-x @ S     shift (uppercase S)

たとえばC-a、なんらかの理由で入力できない場合もC-x @ c a同じです。S-<return>端末で動作しない場合は、動作しますC-x @ S RET。これらのキーの組み合わせは、C-h kヘルププレフィックスでも機能します。


入力できるC-xができないタイプのインスタンスはありますC-aか?これらのすべては、発行する機能を必要としC-xます。専用キーなしで「ハイパー」または「スーパー」修飾子を使用できると便利なようです。「alt」キーを「メタ」にマッピングするように設定されていない端末に遭遇しましたが、「ESC」を使用してそれを回避しました(
大胆に

2
C-a悪い例です。端末はコントロール+シフトを好まないようなので、より可能性の高いものはC-A(またはC-S-a)です。
asmeurer 2014

の下でscreen(1)C-a一種の多重化キーになるように命じられたことを思い出しているようです。でもscreen、長い間使っていなかったので、覚えていなかったかもしれません。
スーD.ニム14

2

を使用C-h bして、マウスボタンなどのすべてのキーバインドを確認することもできます。


後はdescribe-bindings、ヘルプウィンドウがポップアップし、あなたも使用できるisearchキーシーケンスと、それがバインドされている機能のプレーンテキスト表現を検索します。また、このパッケージでhelm-descbindingsは、ヘルムバッファー内のすべてのバインディングをナビゲートできます。
nispio 2014

0

私はこれらのより具体的な解決策のいずれも認識していませんでした。キーによって実行される正確なコマンドが必要な場合は、おそらくより効果的に機能します。

ただし、ヘルプの検索に関するより一般的なヒントとして、実際にキーバインディングの機能について漠然とした考えを持っているが、詳細を知りたい場合は、タブ補完を使用してC-h f(またはdescribe-function)使用して、関数の名前。これは多くの場合機能し、ヘルプはその関数にバインディングがあるかどうかを教えてくれます。そして、それがうまくいかないとき、私はC-h a(またはapropos-command)を使用して、関連していると思われるいくつかの用語を入力しましたが、驚くべきことに、キーバインディングの正しいコマンドを見つけるのに大成功しました。別の適切なオプションはC-h m(またはdescribe-mode)で、現在のモードのすべてのキーバインディングを確認します。これは、以前の2つの検索手法のいずれかで使用するのに役立つ用語としても使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.