読者です 読者をやめる 読者になる 読者になる

all-ext.elを使ってみた

@rubikitch氏が先日,新しいlispをリリースした.詳細は以下の記事.

確かに大変便利な拡張である.
本記事ではこのall.elおよびall-ext.elの設定例について書く.

設定例

all-modeからの脱出

私はまず以下の設定を書いておいた:

(require 'view)
(defun all-mode-quit ()
  (interactive)
  (view-mode 1) (View-quit))

(define-key all-mode-map (kbd "C-c C-q") 'all-mode-quit)

これにより,*All*バッファにいるときにC-c C-qで編集を終了できる.

smartrepにより移動をしやすく

また@myuhe氏作のsmartrepを用いて

(eval-after-load "smartrep"
  '(progn
     (smartrep-define-key global-map "M-g"
       '(("n"   . 'next-error)
         ("p"   . 'previous-error)
         ("C-n" . 'next-error)
         ("C-p" . 'previous-error)))))

も設定しておくと,*All*バッファにいるときの移動がしやすくなる.

helm-c-moccurとの併用

筆者はhelm-c-moccurも利用しているが,
この使用中にall-modeに入って編集可能にするために以下の設定も書いておいた:

(eval-after-load "helm-c-moccur"
  '(progn
     (defun all-from-helm-moccur ()
       "Call `all' from `helm' content."
       (interactive)
       (helm-run-after-quit
        'all-from-anything-occur-internal "helm-moccur"
        helm-c-moccur-buffer helm-current-buffer))
     (define-key helm-c-moccur-helm-map (kbd "C-c C-a")
       'all-from-helm-moccur)))

以上.