7

ミニバッファーでタブ補完し、Emacs が補完リストを新しいバッファーに表示する場合、マウスを使わずにそのバッファーに切り替えるにはどうすればよいですか?

を試してみC-x oましたが、最初のバッファーに切り替わっただけで、そこからミニバッファーに入りました。

私も試しC-x bましたが、それは私に与えますcommand attempted to use minibuffer while in minibuffer

最後に を試してみたところC-x <C-right>、 が得られましたcannot switch buffers in minibuffer window

編集: 私の例ではミニバッファーの補完について話しましたが、通常のバッファー内から (キーボードを使用して) 補完リストにアクセスできることも重要であり、機能していません。M-vショートカットが提案されましたが、 によってアクセスされるミニバッファー内でのみ機能するようです。M-x私が試した他のすべてのバッファーでM-vは、バインドされてscroll down commandおり、補完リストに切り替わりません。他のミニバッファでも動作しないようです。たとえば、M-!どちらから呼び出されたシェル コマンドのミニバッファーでも機能しません。

4

2 に答える 2

11

補完バッファーに切り替えて、カーソルを最初の補完に置く(ここM-vに文書化されている) を使用できます。

ミニバッファーで Mv を入力すると、補完リスト (補完への切り替え) を表示するウィンドウが選択されます。これにより、以下のコマンドを使用するための道が開かれます。<PageUp>または<prior>同じことをします。他の方法でウィンドウを選択することもできます...

編集:元の質問への編集に基づいて、あなたが求めているのは、よりグローバルに補完バッファーに切り替える方法であるように見えます。switch-to-completions補完リストを選択する関数があります-その関数を選択したキーにバインドすることを検討してください。

(define-key global-map (kbd "C-x t") 'switch-to-completions)

たとえば、このようなバインディングを使用すると、 によって呼び出された "Shell command: " から補完に切り替えることができM-!、最初の可能な補完にカーソルを置きます。

于 2013-08-06T16:22:47.220 に答える
2

C-xoを2 回使用するかM--C-xo、次のバッファーではなく前のバッファーに切り替える を使用できます。

于 2013-08-06T15:15:57.920 に答える