winkey2.l
2003-06-10
黒い羽根をうろついていたら、Windows 風設定例というのを見つけたので御紹介。xyzzy の emacs 風なデフォルトのキーバインドに馴染めないけど、gates.l の軍門には下りたくないので winkey.l のお世話になっているというヘタレ(それは私)に最適です。:p)
winkey.l を導入すると、通常の使用でコピー、ペースト、カット、アンドゥをそれぞれ windows 標準のキーバインドにしてくれてかつ、C-c、C-xのプレフィックスを両立させてくれるわけですが、他にも何かと使いたいキーバインドを追加してくれのが、winkey2.l です。
豪華セットは、件のページに書いてあるので、それをご覧いただくとして、私は必要ないものを省いて、以下のようにしてみました。
(provide "winkey2")
(in-package "editor")
;;; winkey.lからコピー
(defvar *default-selection-keymap*
(let ((keymap (make-sparse-keymap)))
(define-key keymap #\C-c 'copy-selection-to-clipboard)
(define-key keymap #\C-x 'kill-selection-to-clipboard)
keymap))
(setq-default selection-keymap *default-selection-keymap*)
(global-set-key #\C-z 'undo)
(global-set-key #\C-v 'paste-from-clipboard)
(define-key esc-map #\C-x #'ctl-x-prefix)
(define-key esc-map #\C-c #'specific-command-prefix)
;;; Windowsっぽい設定
;すべて選択
(global-set-key #\C-A 'selection-whole-buffer)
;置換ダイアログ
(global-set-key #\C-R 'replace-dialog)
;行頭まで選択
(global-set-key #\S-Home 'selection-beginning-of-virtual-line)
;行末まで選択
(global-set-key #\S-End 'selection-end-of-virtual-line)
;バッファ先頭まで選択
(global-set-key #\S-C-Home 'selection-beginning-of-buffer)
;バッファの終わりまで選択
(global-set-key #\S-C-End 'selection-end-of-buffer)
;行末方向へ再検索
(global-set-key #\F3 'search-forward-again)
;行頭方向へ再検索
(global-set-key #\S-F3 'search-backward-again)
;終了
(global-set-key #\M-F4 'kill-xyzzy)
;選択バッファを閉じる
(global-set-key #\C-F4 'close-selected-buffer)
site-lisp フォルダにおいて、これまで winkey.l を呼んでいた、.xyzzy や Siteinit.l の箇所を winkey2.l に書き換えるといいです。
(load-library "winkey2")
「winkey2.l」へコメントをつける
- この記事の永続的 URI ならびに トラックバック ping URI
- http://diary.noasobi.net/2003/06/diary_030610a.html