tmux 1.8で導入された機能に zoom, unzoomがあります(Prefix + z).
いくつかの paneに分割した windowを一時的に 1つの paneのみを表示(zoom)し,
再度同コマンドを実行することで元の状態に戻す機能です.
Emacsでもそんな機能があったらいいなぁと思ってこの zoom-windowを作りました.
elscreenにも対応しており, その場合はタブごとに zoom/unzoomの状態を管理
します(elscreen対応がなければ 10行程度で実現できました).
利用用途
ドキュメントとコードを frame分割して見ているときに, コードに集中したい場合,
コードのみを frameに残したいときがあります. 従来であれば, コード以外の
windowを削除したりする必要があるわけですが, zoom-windowを使うことで,
windowを削除することなく, コードのみ一時的に表示することが可能になります.
コードの作業が終わったら, 状態を復元し, ドキュメントにコードの編集内容や
メモを素早く反映することができます.
設定例
elscreenを使わない場合
(require 'zoom-window) (global-set-key (kbd "C-x C-z") 'zoom-window-zoom) (setq zoom-window-mode-line-color "DarkGreen") ;; zoomされたときの mode-lineの背景色
elscreenを利用する場合
(require 'elscreen) (elscreen-start) (require 'zoom-window) (setq zoom-window-use-elscreen t) ;; zoom-window-setupの前に設定する必要がある (zoom-window-setup) (global-set-key (kbd "C-x C-z") 'zoom-window-zoom)
おわりに
何か問題等ありましたら, githubの issuesまでお願いします.