;;-*- coding: utf-8 -*- ;; emacs customization. keybindings involving hyper or super key. Usually for inserting Unicode chars (Dvorak layout). ;; • http://xahlee.org/emacs/xah_emacs_keybinding.el ;; • http://xahlee.org/emacs/xah_emacs_unicode_input.el ;; • http://xahlee.org/emacs/xah_emacs_hyper_super_setup.el ;; • http://xahlee.org/emacs/xah_emacs_insert_pairs.el ;; • 〈Emacs Unicode Math Symbols Input Mode (xmsi-mode)〉 http://xahlee.org/emacs/xmsi-math-symbols-input.html ;; • 〈Matching Brackets in Unicode〉 http://xahlee.org/comp/unicode_matching_brackets.html ;; • 〈Computing Symbols in Unicode〉 http://xahlee.org/comp/unicode_computing_symbols.html ;; Xah Lee ;; 2007-10 ;; ∑ http://xahlee.org/ ;; § ---------------------------------------- ;; problem keys ;; for qwerty: () [] {} -_ =+ ;; for dvorak: () [] {} /? =+ ;; § ---------------------------------------- ;; most needed (global-set-key (kbd "H-e") 'insert-pair-paren) ;() (global-set-key (kbd "H-u") 'insert-pair-brace) ;{} (global-set-key (kbd "H-o") 'insert-pair-bracket) ;[] (global-set-key (kbd "H-i") 'insert-pair-single-angle-quote) ;‹› (global-set-key (kbd "H-I") 'insert-pair-double-angle-quote) ;«» (global-set-key (kbd "H-a") 'insert-pair-double-curly-quote) ;“” (global-set-key (kbd "H-A") 'insert-pair-single-curly-quote) ;‘’ (define-key key-translation-map (kbd "H-.") (kbd "=")) ; equal (define-key key-translation-map (kbd "H-,") (kbd "+")) ; plus (global-set-key (kbd "H-p") 'insert-pair-double-straight-quote) (global-set-key (kbd "H-y") 'insert-pair-single-straight-quote) ;; § ---------------------------------------- (global-set-key (kbd "H-k") 'insert-pair-corner-bracket) ;「」 (global-set-key (kbd "H-K") 'insert-pair-white-corner-bracket) ;『』 (global-set-key (kbd "H-j") 'insert-pair-angle-bracket) ;〈〉 (global-set-key (kbd "H-J") 'insert-pair-double-angle-bracket) ;《》 (global-set-key (kbd "H-q") 'insert-pair-black-lenticular-bracket) ;【】 (global-set-key (kbd "H-Q") 'insert-pair-white-lenticular-bracket) ;〖〗 (global-set-key (kbd "H-;") 'insert-pair-tortoise-shell-bracket) ;〔〕 ;; § ---------------------------------------- (define-key key-translation-map (kbd "H-(") (kbd "【")) ; (define-key key-translation-map (kbd "H-)") (kbd "】")) ; (define-key key-translation-map (kbd "H-[") (kbd "「")) ; (define-key key-translation-map (kbd "H-]") (kbd "」")) ; (define-key key-translation-map (kbd "H-{") (kbd "〔")) ; (define-key key-translation-map (kbd "H-}") (kbd "〕")) ; (define-key key-translation-map (kbd "H-<") (kbd "〈")) ; (define-key key-translation-map (kbd "H->") (kbd "〉")) ; (define-key key-translation-map (kbd "H-'") (kbd "“")) ; ;; § ---------------------------------------- ;; bullets and other symbols (define-key key-translation-map (kbd "H-1") (kbd "…")) ; HORIZONTAL ELLIPSIS (define-key key-translation-map (kbd "H-2") (kbd "♺")) ; RECYCLING SYMBOL FOR GENERIC MATERIALS (define-key key-translation-map (kbd "H-3") (kbd "•")) ; bullet (define-key key-translation-map (kbd "H-4") (kbd "◇")) ; white diamond (define-key key-translation-map (kbd "H-$") (kbd "◆")) ; black diamond (define-key key-translation-map (kbd "H-5") (kbd "†")) ; dagger (define-key key-translation-map (kbd "H-%") (kbd "‡")) ; double dagger (define-key key-translation-map (kbd "H-6") (kbd "▸")) ; BLACK RIGHT-POINTING SMALL TRIANGLE (define-key key-translation-map (kbd "H-7") (kbd "▮")) ; BLACK VERTICAL RECTANGLE (define-key key-translation-map (kbd "H-8") (kbd "✲")) ; OPEN CENTRE ASTERISK (define-key key-translation-map (kbd "H-9") (kbd "¤")) ; CURRENCY SIGN (define-key key-translation-map (kbd "H-?") (kbd "�")) ; REPLACEMENT CHARACTER (define-key key-translation-map (kbd "H-0") (kbd "❦")) ; FLORAL HEART (define-key key-translation-map (kbd "H-&") (kbd "&")) ; full width ampersand (define-key key-translation-map (kbd "H-|") (kbd "│")) ; BOX DRAWINGS LIGHT VERTICAL (define-key key-translation-map (kbd "H--") (kbd "—")) ; EM DASH (define-key key-translation-map (kbd "H-_") (kbd "─")) ; BOX DRAWINGS LIGHT HORIZONTAL (define-key key-translation-map (kbd "H-SPC") (kbd " ")) ; NO-BREAK SPACE ;; ‣ triangle bullet ;; § ---------------------------------------- ;; 【Hyper+‹arrow›】 ;; (define-key key-translation-map (kbd "") (kbd "←")) ; arrow ;; (define-key key-translation-map (kbd "") (kbd "→")) ;; (define-key key-translation-map (kbd "") (kbd "↑")) ;; (define-key key-translation-map (kbd "") (kbd "↓")) ;; 【Hyper+Shift+‹arrow›】 ;; (define-key key-translation-map (kbd "") (kbd "⇐")) ;; (define-key key-translation-map (kbd "") (kbd "⇒")) ;; (define-key key-translation-map (kbd "") (kbd "⇑")) ;; (define-key key-translation-map (kbd "") (kbd "⇓")) (define-key key-translation-map (kbd "H-h") (kbd "←")) ; arrow (define-key key-translation-map (kbd "H-n") (kbd "→")) (define-key key-translation-map (kbd "H-c") (kbd "↑")) (define-key key-translation-map (kbd "H-t") (kbd "↓")) (define-key key-translation-map (kbd "H-H") (kbd "⇐")) ; arrow (define-key key-translation-map (kbd "H-N") (kbd "⇒")) (define-key key-translation-map (kbd "H-C") (kbd "⇑")) (define-key key-translation-map (kbd "H-T") (kbd "⇓"))