qtref.el を公開してみました。

どもです。


Emacs で Qt を使って開発している人向けに,Emacs 内で,w3m を使って,
Qt のドキュメントを引ける elisp を作りました。
その名も,qtref.el。えぇ,そのままですが何か?


https://github.com/whitypig/qtref

使い方とか。

基本的に,ファイルの最初の部分に頑張って詳しく書いたので,
それを読んでもらえればわかります。けど,うさんくさい英語なので,
ここでは心機一転日本語で書きます。

インストール
  • w3m のインストール

w3m を使っているので,必要です。なので,インストールしてない場合は,して下さい。
http://d.hatena.ne.jp/whitypig/20101109 とかにあります。
もしくは,ググって下さい。

  • Qt のドキュメントの入手。

Linux 系のシステムの人は,apt-get install とか,そんなんでいれられるはずです。
Debian 系の場合のパッケージ名は,たぶん,qt4-doc-html。
Windows な人は,QtCreator を使って下さい。
Cygwin が使える場合は、deb パッケージを,
http://packages.debian.org/sid/all/qt4-doc-html/download
からダウンロードして,
ar コマンドと tar コマンドで入手できます。
Cygwin を使えない場合は,代替の解凍ソフトがあると思うので,ググって下さい。
で,お好みの場所に配置してください。

  • 設定とか,使い方とか。

https://github.com/whitypig/qtref/raw/2e42709c84774b3b75cb9a3aaf72c1aa9c5b4832/qtref.el
から,もしくは最新版の場合は,
https://github.com/whitypig/qtref/
から,ダウンロードして,
ロードパスの通ったところに,qtref.el を置いて下さい。
そして,QtCreator を立ち上げて下さい。
ほいで,Emacs の設定ファイルに,

(require 'qtref)

を追加して下さい。
んで,あとは,M-x qtref するだけです。

  • 色々聞かれてくるので。

何も設定しないで,呼び出すと,最初に,ドキュメントのルートを聞いてくるので,
きちんと指定してください。
debian 系だったら,おそらく,/usr/share/qt4/doc/html だと思います。未確認。
ワタシの場合は,暫定的に,~/doc/qt/usr/share/qt4/doc/html においてます。
ちなみに,WindowsXP ね。
そうすると,このタイミングで,alist を作成するので,
ほんのちょっぴり時間がかかります。
そすると,

[c]lass or [f]unction: f

こんなんがミニバッファに表示されるので,クラス名から検索するときには,
「c」を,関数を検索する場合には,「f」を。

Function: addToolBars [RET]

で,検索したい関数名を入力して,Enter なり,C-m してください。
ちなみに,補完が効きます。


また,検索対象の関数が複数のクラスにあるときには,

addAction in class: QWidget

というように表示されるので,クラス名を指定して下さい。
補完も効きます。

  • デフォルトの挙動とか。

M-x qtref して,何も入力しないで,Enter したときには,
デフォルトでクラスを検索します。
この挙動を,関数を検索する,という風に変更したいときには,
変数 qtref-default-behavior の値を下記のように変更します。

(setq qtref-default-behavior 'function)
  • ドキュメントのルートディレクトリを入力するのが面倒くさいぞ,ごらぁ。

そういう場合は,

(setq qtref-docroot "/usr/share/qt4/doc/html")

というように .emacs とか(今は,.emacs.init だっけ?)に書いておいて下さい。

まとめ

だいたいそんな感じです。
バグ報告とか,こうしろああしろといった文句は大歓迎なので,
ご遠慮なくどうぞ〜。
では,非常にニッチな感じのものですが,よかったら使ってみて下さい。