2007年9月17日月曜日

Emacsのミニバッファを使いやすくする

 M-x 時のミニバッファでコマンドの補完を行います。ないと生きていけません。
端末での入力補完と同じく、M-x hogehoge と関数名の補完をしてくれます。
 mcomplete.elを使います。
さらに、補完候補をよく使う候補を優先して表示させるmcomplete-history.elも併用します。それぞれリンク先から落としてきて、~/.lisp/あたりに入れておきます。
(setq load-path (cons "~/.lisp/" load-path))
としてパスを通しておくのを忘れないようにしましょう。パスを通したら、 ~/.emacsに以下を追記します。
;====================================
; ミニバッファ設定
;===================================
;ミニバッファで M-x 時のインクリメンタル補完
(require 'mcomplete)
;さらによく使うヒストリを優先させる
(load "mcomplete-history")
(turn-on-mcomplete-mode)

;ファイルを開く時に,カーソルキーだけで,ファイルを選択
;カーソル上下で従来のヒストリ。ctrl+P,ctrl+nでファイル名補完
(require 'cycle-mini)
(define-key minibuffer-local-map [up] 'previous-history-element)
(define-key minibuffer-local-completion-map [up] 'previous-history-element)
(define-key minibuffer-local-must-match-map [up] 'previous-history-element)
(define-key minibuffer-local-ns-map [up] 'previous-history-element)
(define-key minibuffer-local-ns-map [down] 'next-history-element)
(define-key minibuffer-local-map [down] 'next-history-element)
(define-key minibuffer-local-completion-map [down] 'next-history-element)
(define-key minibuffer-local-must-match-map [down] 'next-history-element)
これでいちいち長ったらしい関数名を覚えなくても大丈夫♪

0 件のコメント: