zshのコマンドラインをエディタで編集・日本語入力

コマンドラインをエディタで編集

zshコマンドラインはエディタで編集できる。環境変数VISUALかEDITORに使いたいエディタを指定しておこう。Emacsな人は

  • M-x server-start してから EDITOR=emacsclient
  • M-x gnuserv-start してから EDITOR=gnuclient

のいずれかをしておくといい。
以下の設定を.zshrcに加える。

autoload -U edit-command-line
zle -N edit-command-line
bindkey "^O" edit-command-line

zshコマンドラインEmacsで日本語入力

俺の場合、この機能を使うとしたら日本語入力がメインなので以下の設定を.emacsに入れている。ファイル名(バッファ名)が「zshecl数字」なので一致した場合にskkを起動する設定だ。

(defun zsh-edit-command-line-hook ()
  (when (string-match "^zshecl" (buffer-name))
    (skk-mode 1)))
(add-hook 'find-file-hook 'zsh-edit-command-line-hook)