anything.elを入れた

anything.elについてはこの辺で><「anything.el」を含む日記 - はてなダイアリー

簡単に言うと

emacsの中に検索エンジンがある様な感じ

今日やったこと

anything.elを入れる

ここー>巷で話題の anything.el を使ってみたを参考に

書き換えた.emacs

rubykitchさんの日記を参考に
とても長くなったので,my-anything-config.elというファイルを作ってそこに書きました。

anything.el <-config- anything-config.el <-config- my-anything-config.el

みたいな感じです。
.emacsの方

;;filecache
(require 'filecache)
(file-cache-add-directory-list
 (list "~" "~/bin")) ;この場合だと"~/、~/bin"が対象

;;anything
(require 'my_anything-config)
(global-set-key "\C-c;" 'anything)
(define-key anything-map (kbd "M-n") 'anything-next-source)
(define-key anything-map (kbd "M-p") 'anything-previous-source)

my-anything-config.elの方

(require 'anything-config)

(defvar anything-c-source-file-cache
  '((name . "File Cache")
    (candidates . file-cache-files)
    (type . file)))

(defvar locate-home-database "/home/locate_db") 
    ;;"/home/locate_db"をupdatedbで作ったファイルに
(defvar anything-c-source-locate-home
  '((name . "Locate")
    (candidates . (lambda ()
                    (start-process "locate-process" nil
                                   "locate" "-d" locate-home-database "-i" "-r" anything-pattern)))
    (type . file)
    (requires-pattern . 3)
    (delayed))
  "Source for retrieving files in home directory matching the current input pattern
with locate.")

(setq anything-sources (list anything-c-source-buffers
			     anything-c-source-file-cache
			     ;;anything-c-source-files-in-current-dir
			     anything-c-source-bookmarks
			     anything-c-source-file-name-history
			     anything-c-source-emacs-commands
			     anything-c-source-locate-home
			     anything-c-source-man-pages
			     anything-c-source-complex-command-history))

(provide 'my-anything-config)

感想

  • とても快適
  • C-x C-fのが面倒になった。
  • man用のanythingとfile-find用のanythingにわけた方がいいかもしれない。