Emacs:キーバインドの設定の仕方
Emacsのキーバインドの設定方法いろいろ
(global-set-key [kp-9] 'tags-query-replace) ; キーパットの 9 (global-set-key (kbd "<kp-9>") 'tags-query-replace) ; キーパットの 9 (global-set-key "\C-h" 'myfunc) (global-set-key "\C-\M-h" 'myfunc) (global-set-key "\M-[" 'myfunc) (define-key global-map "\M- " 'dabbrev-expand) (global-set-key (kbd "M-<spc>") 'dabbrev-expand) (global-set-key "\M-g" 'goto-line) (global-set-key "%" 'match-paren) (global-set-key [(meta return)] 'ns-toggle-fullscreen) (global-set-key [(C-tab)] 'myfunc) ; コントロール+タブ (global-set-key [(backtab)] 'myfunc) ; シフト+タブ (global-set-key [(C-S-iso-lefttab)] 'myfunc) ; コントロール+シフト+タブ (global-set-key [M-zenkaku-hankaku] 'toggle-input-method) (global-set-key [zenkaku-hankaku] 'toggle-input-method) (global-set-key [(control f1)] 'bookmark-bmenu-list) (global-set-key [(control f2)] 'bookmark-set) (global-set-key (kbd "s-b") 'backward-word) ; lower case “s” is for super/windows (global-set-key (kbd "C-;") 'myfunc) (global-set-key (kbd "C-+") 'myfunc) (global-set-key (kbd "C-\\") 'myfunc) ; コントロール+\ (global-set-key (kbd "M-[") 'myfunc) ; メタ(alt)+[ (global-set-key (kbd "<C-S-up>") 'myfunc) ; コントロール+シフト+up↑ (global-set-key (kbd "<C-S-down>") 'myfunc) ; コントロール+シフト+down↓ (global-set-key (kbd "<C-M-return>") 'myfunc) ; コントロール+メタ+Enter (global-set-key (kbd "<muhenkan>") 'myfunc) ; 無変換 (global-set-key (kbd "S-<f7>") 'myfunc) ; シフト+F7 (global-set-key (kbd "C-S-backspace") 'myfunc) ; コントロール+シフト+BackSpace (global-set-key (kbd "C-c b s") 'bookmark-buffers-save) (global-set-key (kbd "C-c b c") 'bookmark-buffers-call) ;; シフトを押しながらホイールするとゆっくりスクロール (global-set-key (kbd "<S-wheel-down>") '(lambda () (interactive) (scroll-up 1))) (global-set-key (kbd "<S-wheel-up>") '(lambda () (interactive) (scroll-up -1))) (define-key global-map (kbd "C-z") 'undo) (define-key global-map (kbd "C-S-d") 'backward-delete-char-untabify) ; Ctrl+シフト+d delete backward (define-key global-map (kbd "C-c s") 'scheme-other-window) (define-key global-map "\C-ct" 'instamp) (define-key global-map [f5] 'recentf-open-files) (define-key global-map [f12] 'kokopelli-sing) (define-key global-map [f1] 'start-kbd-macro) ; キーボードマクロの定義を開始する C-x ( (define-key global-map [f2] 'end-kbd-macro) ; キーボードマクロの定義を終了する C-x ) (define-key global-map [f3] 'call-last-kbd-macro) ; もっとも最近のキーボードマクロを実行する C-x e (define-key global-map (kbd "C-c @") 'browse-url) (define-key global-map (kbd "C-x SPC") 'cua-set-rectangle-mark) (define-key ctl-x-map [return] 'goto-line) ; C-x Enter (ctl-x-map は "\C-x" の代わりに使える) (global-set-key [C-A-f5] 'goto-line) ; 特殊キーと修飾キーの組み合わせ。Control-Alt-F5
特殊キーをバインドしたい場合は [] もしくは (kbd "<>") を使う
特殊キー | 対応する [] |
BackSpace | [DEL], [backspace] |
Del | [delete] |
Home | [home] |
Enter | [return] |
Help | [help] |
PageUp | [prior] |
PageDown | [next] |
↑ | [up] |
↓ | [down] |
← | [left] |
→ | [right] |
テンキーの 0~9 | [kp-0] ~ [kp-9] |
テンキーの Enter | [kp-enter] |
マウスイベントのシンボル
クリック
mouse-1 | 左クリック |
double-mouse-3 | 右ダブルクリック |
(global-set-key [mouse-1] 'test-click)
(global-set-key [drag-mouse-1] 'test-drag-mouse)
イベント
イベント | 起きるとき | 左ボタンでのシンボル |
クリック | ボタンを押して、その場で離すとき | mouse-1 |
ドラッグ | ボタンを押してからマウスを移動するとき | drag-mouse-1 |
ボタン押し下げ | ボタンを押した瞬間 | down-mouse-1 |
デフォルトキーバインド
<C-down-mouse-1> | mouse-buffer-menu |
<C-down-mouse-2> | facemenu-menu |
<C-mouse-4> | mwheel-scroll |
<C-mouse-5> | mwheel-scroll |
<M-down-mouse-1> | mouse-drag-secondary |
<M-drag-mouse-1> | mouse-set-secondary |
<M-mouse-1> | mouse-start-secondary |
<M-mouse-2> | mouse-yank-secondary |
<M-mouse-3> | mouse-secondary-save-then-kill |
<S-down-mouse-1> | mouse-appearance-menu |
<S-mouse-3> | kmacro-end-call-mouse |
<S-mouse-4> | mwheel-scroll |
<S-mouse-5> | mwheel-scroll |
割り当て済みキーバインドの一覧
C-h C-h b ; ヘルプ ヘルプ バインド