blog/content/post/1970-01-01-00000001.md

7.3 KiB
Raw Blame History

title author date url wordtwit_post_info categories
anythingとyasnippetを導入 kazu634 1969-12-31 /1970/01/01/_1/
O:8:"stdClass":13:{s:6:"manual";b:0;s:11:"tweet_times";i:1;s:5:"delay";i:0;s:7:"enabled";i:1;s:10:"separation";s:2:"60";s:7:"version";s:3:"3.7";s:14:"tweet_template";b:0;s:6:"status";i:2;s:6:"result";a:0:{}s:13:"tweet_counter";i:2;s:13:"tweet_log_ids";a:1:{i:0;i:4099;}s:9:"hash_tags";a:0:{}s:8:"accounts";a:1:{i:0;s:7:"kazu634";}}
Emacs

 id:hayamiz主催のEmacs勉強会に参加してきた。id:hyoshiokさんの「ブログに感想をアップするまでが勉強会」ということをいわれていたのだが、勉強会から今まですでに二日が経過している。今まで私は何をしていたのか?

 いやー、Macの環境をまっさらにして、Emacsの設定を一からやり直していました。それぐらいに濃い刺激を受けてきました。本当にいい勉強会だった。後、やっぱり自分みたいな「コピペで.emacsを作り上げる」レベルには、実際にこんなことができると実演してくれて、「こんなこともできるのか」という感動が強かった。

 他の人もいろいろとまとめてくれている(例えば「tokyo-emacs#x01行ってきた。 tomisima::memo」とか)ので、自分は

  • anything.el
  • yasnippet.el

を導入してて、詰まったところを備忘録として書いておこうと思う。でも、この二つも導入するのは結構簡単だった。

yasnippet

 yasnippet Google Codeからyasippetをダウンロードする。今回私はbundleではない方をダウンロードした。それで適当なフォルダで解凍して、.emacsに

(require 'yasnippet) ;; not yasnippet-bundle
(yas/initialize)
(yas/load-directory "「snippets」ディレクトリへのパス")

を追加する。再起動後には、yasnippetが使えるようになっている…はず。自分はまっさらにしないと、なぜかyasnippetが使えなかった。なぜなんだろうとりあえずtabで使えるようになるよ。

anything

 こいつは本当に便利です。簡単にいうと、「Quicksilverみたいなのが、Emacsに入ってきます」。id:IMAKADOさんのデモをみたときは本当に感動した。manがEmacsの中から参照できている本当にすごい

 anythingを導入する前にぜひやっておくべきことは

  • WoManの導入load pathに置いておこう
  • locateコマンドを使うと幸せになれそうだから、locate用のデータベースの作成leopardだと「sudo /usr/libexec/locate.updatedb」

です。

 私の.emacsはこんな感じになりました。

;; ================
;; === anything ===
;; ================
;; 初回起動が遅いので cache 作成。
(setq woman-cache-filename (expand-file-name "~/woman_cache"))
(require 'anything-config)
(setq anything-sources
(list anything-c-source-buffers
anything-c-source-files-in-current-dir
anything-c-source-file-name-history
anything-c-source-emacs-commands
anything-c-source-man-pages
anything-c-source-info-pages
anything-c-source-calculation-result
anything-c-source-locate))
(global-set-key "\C-xb" 'anything)

ポイントになるのは、いちいち起動時に man ページから索引を作らないように

;; 初回起動が遅いので cache 作成。
(setq woman-cache-filename (expand-file-name "~/woman_cache"))

を書いていること。「(require anything-config)の前に書かないといけない」ことに気づくまでが大変だった。。。

 参考になったのは、「巷で話題の anything.el を使ってみた」。

最後に

 id:hayamizさん と id:hyoshiokさん、勉強会を開いてくれてありがとうございました!発表してくださった皆さんもおつかれさまです。