14 Oct 2009

cppref と cppref.el をインストール

C++ リファレンスビューワ cppref が凄い! - TokuLog 改めB日記

話題のcpprefをインストールしました。とても便利です。

Kazuho Oku / cppref - search.cpan.org

Kazuho@Cybozu Labs: Cppref: reading cppreference.com docs offline, like man or info or perldoc

cpprefはkazuhookuさん作のC++リファレンスビューアです。manみたいな感じでコマンドラインからC++のリファレンスを見ることができます。例えば、こんな風に next_permutation を検索してみると、

% cppref next_permutation

cppreference.comの該当ページがコマンドラインに表示されます。

You are here: C++ Reference >> C++ Standard Template Library >> C++ Algorithms >> next_permutation

next_permutation

Syntax:

    #include 
    bool next_permutation( bidirectional_iterator start, bidirectional_iterator end );
    bool next_permutation( bidirectional_iterator start, bidirectional_iterator end, StrictWeakOrder

The next_permutation() function attempts to transform the given range of elements [start,end) into
the next lexicographically greater permutation of elements. If it succeeds, it returns true,
otherwise, it returns false.

If a strict weak ordering function object cmp is provided, it is used in lieu of the < operator
when comparing elements.

Related Topics: prev_permutation, random_sample, random_sample_n, random_shuffle

仕組みとしては、C++ Reference のリファレンスをローカルにhtml形式で保持しておき、それをw3mでビューするというもののようです。htmlファイルだけメンテすれば良いので楽そうですね。

インストールも、sudo cpan -i cppref でできるので簡単です。


加えて、antipopさんのcppref.elもインストールしました。こんな感じでemacsからcpprefできます。


Emacs用の簡易C++リファレンスビューワcppref.elを作った - antipop

kentaro’s emacs-cppref at master - GitHub

インストールは、まずemacsからw3mを使えるようにこちらからemacs-w3mをダウンロード&インストールし、

Text browser works on Emacs

githubからコードをダウンロード、elispのロードパスが通っているところに設置、.emacsに (require 'cppref) を記入します。必要ならばcpprefのhtmlファイルの場所を指定します。

(setq cppref-doc-dir "/Library/Perl/5.8.8/auto/share/dist/cppref") ;; doesn't end with "/"

あとは M-x cppref で使えます。とても素晴らしいです。