スポンサーサイト

-------- --:--:-- --

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【sphinx】インストール絡みのまとめ

2012-03-06 01:16:48 Tue

■shpinxインストールの補足的な


Sphinxの導入は下記あたりで記事にしました。
http://isann.blog2.fc2.com/blog-entry-290.html
http://isann.blog2.fc2.com/blog-entry-292.html

これにわかったことなどを追加しながら少し整理してみます。

sphinxのインストールに関してはhttp://isann.blog2.fc2.com/blog-entry-290.htmlそのままです。
pypiに登録されていますので、easy_installから簡単にインストールして、
そのままプロジェクトを作ります。
sphinx-quickstart コマンドはデフォルトで実行したディレクトリ配下にファイルを作成しますので、
自分で /usr/hoge/shpinx_doc/hogedoc みたいなディレクトリを作成してそこで実行するとよいと思います。

diagシリーズはブロック図は汎用性もあるのであるとかなりいいと思います。

easy_install sphinxcontrib-blockdiag

これに追加でシーケンス図を僕はよく使うので入れています。
easy_install sphinxcontrib-seqdiag

http://blockdiag.com/ja/seqdiag/sphinxcontrib.html

他にもアクティビティ図やネットワーク図などがあります。
必要に応じて追加するといいかもです。
はじめに全部入れておいても不都合はないと思います。
http://d.hatena.ne.jp/torutk/20110522/p1
http://d.hatena.ne.jp/hekyou/20110717/p1

shpinxドキュメントにこれらの図を埋め込むにはconf.pyを設定する必要があります。
この時点で下記リンク先のようなconf.pyになっていました。
https://gist.github.com/1978985

extensions = []
extensions.append('sphinxcontrib.blockdiag')
extensions.append('sphinxcontrib.seqdiag')
extensions.append('japanesesupport')
blockdiag_fontpath = r'C:\Windows\Fonts\msgothic.ttc'
seqdiag_fontpath = r'C:\Windows\Fonts\msgothic.ttc'


extensions.append('XXXXX')
こんな感じでどんどん拡張を追加していくとやりやすいかもです。

あと、日付フォーマットは

today_fmt = '%Y-%m-%d %H:%M:%S'


にしました。

sphinxドキュメントをHTML出力する際に日本語が含まれると思いますので、
下記のようなパスにあるsphinxdoc.css_tを
C:\TracLight\python\Lib\site-packages\Sphinx-1.1.2-py2.6.egg\sphinx\themes\sphinxdoc\static\sphinxdoc.css_t

F:\sphinxdoc\hoge\_static\sphinxdoc.css_t
みたいな感じでコピーしておきます。
https://gist.github.com/1978951

font-family: 'Arial', 'Helvetica', sans-serif;

font-family: 'Consolas', 'Courier New', monospace;

font-family: 'Consolas', 'Courier New', monospace;

font-family: 'Arial', 'Helvetica', sans-serif;


こんな順番で参考にさせて頂いたサイトと同様にfont-familyを変更しました。

シーケンス図の埋め込みはこんな感じです。

.. seqdiag::

seqdiag admin {

browser -> webserver [label = "GET /index.html"];
browser <-- webserver;
browser -> webserver [label = "POST /blog/comment"];
webserver -> database [label = "INSERT comment"];
webserver <-- database;
browser <-- webserver;

}



ブロック図の埋め込みはこんな感じです。

.. blockdiag::

blockdiag admin {

// Set labels to nodes.
A [label = "foo"];
B [label = "bar"];
// And set text-color
C [label = "baz"];

// Set labels to edges. (short text only)
A -> B [label = "click bar", textcolor="red"];
B -> C [label = "click baz"];
C -> A;

}



ブロック図に関してよく使うスタイルとか。

node_width = 160;
node_height = 60;
default_fontsize = 12;
default_node_color = "#4F81BD";
default_textcolor = "#FFFFFF";
class data [ shape = flowchart.input ];
class ext_syori [color = "#9BBB59"];
class ext_data [color = "#9BBB59", shape = flowchart.input];



あと、sphinxでテーブルの出力はまあまあ面倒くさくて、
list-tableやcsv-tableをよく使うことになる。
なんか癪だったのでpythonでtsvをうまくテーブルにするもの作ってみた。
https://gist.github.com/1977836
まだ、未完成でして、同一セル内の改行に対応できていません。

こんなところです。
スポンサーサイト

⇒comment

Secret

名言集
全記事(数)表示
全タイトルを表示
ブログ内検索
Loading
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。