ルギア君の戯言

雑多な記事。

Elisp-Prime

バグじゃないし、真のUNIX使いにとっては無駄な話だが、最近のGNOMEKDEのエディタもWindows風に矢印キーでカーソル移動になっているので頭の中を切替えるのが面倒だから Emacs でも矢印キーでカーソルを移動したいということなんだが、elisp-prime では M-[ に組合せ括弧入力(という言い方が正しいかどうかはわからないが)に割り当てられています。


が、TTY や -nw で Emacs を使うと矢印キーがそれぞれ M-[A M-[B M-[C M-[D になるため、prime-mode 中は矢印キーでカーソルを移動できなくなる。
それを直すには、.emacs 等で

(add-hook 
 'prime-keymap-init-hook
 '(lambda () 
    (progn
      ;; 以下は例なので, キーバインドに意味はない
      (define-key prime-fund-mode-map "\M-\[" 'Control-X-prefix)
      (define-key prime-fund-mode-map "\M-\]" 'prime-fund-insparens-insert-parens)
      (define-key prime-fund-mode-map "\M-\}" 'prime-fund-insparens-insert-parens-reverse)
;      (define-key prime-input-mode-map  "\M-n" 'prime-enum-mode)
;      (define-key prime-conv-mode-map   "\M-n" 'prime-enum-mode)
;      (define-key prime-cand-mode-map   "\M-n" 'prime-enum-mode)
;      (define-key prime-narrow-mode-map "\M-n" 'prime-enum-mode)
      )))

とすればよい。
・・・これにさんざん悩んで疲れた。


また、TTY や -nw でも Backspace で前字削除するには

(global-set-key "\C-h" 'delete-backword-char)
(global-set-key [F1]   'help-command)
; もともと C-h に割り当てられているヘルプを別のキーに割り当てる。
; 好きな物を使うといい。

これにともない Delete で後字削除するには理論上は

(global-set-key "\d" 'delete-char)

となりますが、なんかうまくいきませんでした。