- howdoi 20150203.1643(in MELPA)
- Instant coding answers via Emacs.
概要
プログラミングでわからないことがあったら、どうしていますか?
「どう書くの?」
「どう使うの?」
はプログラマならば常につきまとう疑問です。
普通はマニュアルを参照したり、ググったりすることでしょう。
実は http://stackoverflow.com/ というプログラマのQ&Aサイトがあって、
時点で8837171ものエントリが登録されています!!
まさに世界中のプログラマの叡智の宝庫というわけです。
この膨大なデータベースにEmacsからアクセスするのが、
この howdoi.el です。
由来は「How Do I **? (どうやるの?)」です。
これはPythonで書かれた同名のツール のelisp版です。
使い方は簡単で、 M-x howdoi-query でクエリを入力します。
*How do I*バッファに結果が表示され、
「=======」が質問と回答の区切りで、
「-------」が回答の区切りです。
*How do I*バッファでは、以下の操作が使えます。
- n
- 次の質問
- p
- 前の質問
- b
- ブラウザで開く
- u
- 新しいクエリで調べる(howdoi-query再実行)
- <
- バッファ先頭
- >
- バッファ末尾
- q
- ウィンドウを閉じる
本設定ではURLを表示するようにしていますが、
pで戻ったときには反映されていないバグがあります…
Fig1: M-x howdoi-query format date bashの結果
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてhowdoiを使う方は
以下のコマンドを実行します。
M-x package-install howdoi
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name howdoi
設定 150212040937.howdoi.el(以下のコードと同一)
(require 'howdoi) ;;; 質問も表示する(なぜデフォルトで無効だし?) (setq howdoi-display-question t) ;;; *How do I*表示後にURLを表示する (defun howdoi-show-url (&rest ignore) (interactive) (message "%s" howdoi-current-stackoverflow-url)) (advice-add 'howdoi-pop-answer-to-buffer-callback :after 'howdoi-show-url) ;;; cで現在のURLを表示する (define-key howdoi-mode-map (kbd "c") 'howdoi-show-url)
実行方法
$ wget http://rubikitch.com/f/150212040937.howdoi.el $ emacs -Q -f package-initialize -l 150212040937.howdoi.el
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。