

縦横に沢山のウィンドウを開いている状態で、C-x oでウィンドウを渡り歩く際、行きたいウィンドウにたどり着くまで何度もC-x
oするのが面倒に感じる事があります。

そこで以下の様な機能があれば・・・と夢想するのですが、実現しているelispはあるでしょうか？

  1. 何らかのキーバインドで今いるウィンドウのモードラインをハイライトする
  2. 何らかのキーバインド(Diredのnやpみたいに)で他のウィンドウのモードラインにハイライトが次々に切り替わる
  3. 何らかのキーバインド(Diredのfみたいに)でハイライトされたウィンドウに移動したことになる。またはC-gで(1)以前の状態に復帰する


CC BY-SA 3.0
2017-01-08T11:16:09.410
31708
2017-01-09T06:24:57.583
20139
question
emacs
任意のバッファに移動する方法


以下のような設定を `.emacs` に追加してはどうでしょうか

[code]

    ;; (1) モードラインの色を変更する
    (set-face-background 'mode-line "black")
    (set-face-foreground 'mode-line "gray95")
    ;; (2) Shift+←→↑↓ でウィンドウ移動
    (windmove-default-keybindings)
    (setq windmove-wrap-around t) ; 端から端へ移動できるように
    
[/code]

  1. アクティブなバッファのモードラインが黒く強調されます。  
配色は `M-x list-colors-display` などを参考にしてお好みで変更してください。

  2. ウィンドウ移動に関する機能は、組み込みライブラリの `windmove` が利用できます。  
デフォルトでは`Shift+←` `Shift+→``Shift+↑` `Shift+↓` が移動用のキーとして割り当てられます。  
詳しい解説や設定方法は EmacsWiki を参考にしてください。  
<https://www.emacswiki.org/emacs/WindMove>


CC BY-SA 3.0
2017-01-08T20:52:25.697
31714
2017-01-09T06:24:57.583
2017-01-09T06:24:57.583
2391
2391
31708
answer