Emacsでは、ファイルを見つけたり、バッファーを切り替えたり、ミニバッファーで何かをしている最中に、何らかの理由で別の場所をクリックすることがあります。戻ると、ミニバッファプロンプトを再びアクティブにする唯一の方法は、ミニバッファの内側をクリックすることです。これは、薄い領域であるため、煩わしいものです。マウスを使用せずにアクティブなミニバッファープロンプトに切り替える方法はありますか?
これはあなたが望むことをします。選択したキーにバインドします。
(defun switch-to-minibuffer-window ()
"switch to minibuffer window (if active)"
(interactive)
(when (active-minibuffer-window)
(select-frame-set-input-focus (window-frame (active-minibuffer-window)))
(select-window (active-minibuffer-window))))
(global-set-key (kbd "<f7>") 'switch-to-minibuffer-window)
C-x o
必要に応じて繰り返します。
C-x oは、コマンドother-windowを実行します。これは、「Cソースコード」のインタラクティブな組み込み関数です。
ウィンドウを循環させたくない場合は、initファイルに関数を追加して、キーにバインドできます。このような何かがうまくいくかもしれません:
(defun select-minibuffer ()
"Make the active minibuffer the selected window."
(interactive)
(when (active-minibuffer-window)
(select-window (active-minibuffer-window))))
別のオプションは switch-window
私はそれが本当に便利なパッケージだと思います:それはあなたが視覚的にどんなEmacsウィンドウにでも素早く移動できるようにします(そして私はEmacsでたくさんの開いているウィンドウを使用します)。
ただし、アクティブな場合は、ミニバッファーに移動できることもわかります。
それが役に立てば幸い。
;; faster switching between windows in the same frame
(windmove-default-keybindings)
上記の2行のコードを.emacs.elに追加すると、ミニバッファーだけでなく、 Shift-Arrow 。