Windows.elの設定
Carbon Emacsはそれなりの頻度で落とすのでElscreenじゃ駄目な気がしてきた。面倒臭すぎる。ということで再起動時に直前の状態へ復帰できるWindows.elを使ってみる。紛らわしい名前だけどMS社とは関係ない。
Elscreenと比べて
復帰時の起動が楽
自分がどの位置にいるかわかりにくい
設定
windows.el と revive.el をload-pathが通ってるところに置く
ほとんどgan2さんのwindows.el 再び - gan2 の Ruby 勉強日記からお借りした。というかまんまかも。
;;; windows.el (setq win:switch-prefix "\C-z") (define-key global-map win:switch-prefix nil) (define-key global-map "\C-z1" 'win-switch-to-window) ;; 1-9 ではなく a-z でウィンドウを管理する (setq win:base-key ?`) ;; ` は「直前の状態」 ;(setq win:max-configs 27) ;; ` 〜 z は 27 文字 (setq win:quick-selection nil) ;; C-c 英字 に割り当てない (require 'windows) ;; 新規にフレームを作らない (setq win:use-frame nil) (win:startup-with-window) ;; C-x C-c で終了するとそのときのウィンドウの状態を保存する ;; C-x C なら保存しない (define-key ctl-x-map "\C-c" 'see-you-again) (define-key ctl-x-map "C" 'save-buffers-kill-emacs) ;; *migemo* のようなバッファも保存 (setq revive:ignore-buffer-pattern "^ \\*") ;; キーバインドの追加 (add-hook 'win:add-hook '(lambda () (define-key win: "\C-c\C-g" 'clgrep) )) (define-key win:switch-map "\C-m" 'win-menu) (define-key win:switch-map ";" 'win-switch-menu) ;;オレオレキーバインド (define-key global-map (kbd "<A-M-right>") 'win-next-window) (define-key global-map (kbd "<A-M-left>") 'win-prev-window) (define-key global-map (kbd "<A-M-UP>") 'win-menu) (global-set-key [f1] 'resume-windows)