Erlangと私とSphinx- Happy Life with Erlang and Sphinx-Tokyo Erlang Workshop #52010/08/27渋川よしき
自己紹介:渋川よしきTwitter: @shibukawa仕事大手製造業の社内SE社外で技術習得して社内で楽をする参加コミュニティSphinxUsers.jp翻訳ハッカソンとかを継続開催予定日本XPユーザグループ代表9/4にXP祭り2010を早稲田で開催とちぎRubyPython温泉(系)11/14にPython Hack-a-thon今年出した本IT業界を楽しく生き抜くためのつまみぐい勉強法(技術評論社)エキスパートPythonプログラミング(アスキーメディアワークス)
Erlangと私とSphinxErlang勉強したい2009年2010年
Erlangと私とSphinx初Erlang(fizz-buzz)2009年2010年川崎code-campで初Erlang
Erlangと私とSphinx2009年2010年実践EUnitを翻訳http://articles.shibu.jp/category/776137-1.html
Erlangと私とSphinx2009年2010年EUnitのリファレンスを翻訳http://articles.shibu.jp/category/777978-1.html
Erlangと私とSphinx2009年2010年Erlang Efficiency Guideを翻訳http://erlang.shibu.jp/efficiency_guide/
Erlangと私とSphinx2009年2010年この翻訳で初めてSphinxを導入
Erlangと私とSphinx2009年2010年Sphinxの0.6系の翻訳http://sphinx.shibu.jp/
Erlangと私とSphinx2009年2010年OSC 2009 Tokyo/FallでLThttp://blog.shibu.jp/article/33377933.html
Erlangと私とSphinx2009年2010年本の原稿もSphinx
Erlangと私とSphinx2009年2010年SphinxUsers.jp設立・会長就任
Erlangと私とSphinx2009年2010年翻訳本もSphinx
Erlangと私とSphinx2009年2010年Sphinx 1.0翻訳
SphinxとWikiの比較□Sphinx□Wikiプレーンテキストによる簡易マークアップレンダリング ->静的HTML生成 ->PDF/LaTeXなどエディタでオフライン編集 ->バージョン管理なしキーワードに対してリンクツリー構造プレーンテキストによる簡易マークアップレンダリング ->HTML ->Webアプリケーションブラウザでオンライン編集 ->バージョン管理内蔵ページに対してリンクセミラティス構造
SphinxとWikiの構造の違いtoRubytoRubyWikiたのしいRubydRubyによる・・・RubyRWikidef 書籍情報とちぎRuby会議るびま01Hikiレポート参考図書02
SphinxとWikiの感想の比較□Sphinx□Wikiツリーによるナビ ->ロジカルツリー ->トップダウン構造水平に広げやすい構造がぶれないスモールリファクタリングしやすいWebサーフィン感覚 ->Wikipediaで時間を消耗 ->迷子ページも ->全体像つかみにくい深めやすい構造は自由構造修正は大工事・・・
Pythonのドキュメンテーションには手書きと自動作成と2種類あった。両方とも開発者、ユーザともにメリット、デメリットがある。手書きの方が品質は高いが、メンテナンスは苦痛であるWerkzeug0.2ではこの2つの組み合わせに挑戦した。Docutilsをベースにコードからの自動抽出を追加し、完全にコードとドキュメントの同期が取れるようになった。Georg Brandlはこのツールを書き直し、Sphinxとしてリリースした。これはPython 2.6, 3.0のドキュメントでも使用され、Python以外のプロジェクトもサポートしているこれは今までで最高のドキュメントツールだ。自動相互リンク、索引の作成もサポートしている。拡張APIを使えばさらなる自動化も期待できるTwitterの写真を引用しました
それ以外にも・・・BPStudy #30でSphinxの紹介Python Hack-a-thonでSphinxハンズオン開催電子書籍の動向調査の原稿依頼がキタ産業技術大学院大学で発表
それ以外にも・・・BPStudy #30でSphinxの紹介Python Hack-a-thonでSphinxハンズオン開催電子書籍の動向調査の原稿依頼がキタ産業技術大学院大学で発表Erlangを勉強するつもりが、気づいたらSphinxエヴァンジェリストに!
でも、ちょっと待って!
Sphinx 1.0から新機能Python、C以外のドキュメントも書けるように自分で対応言語を増やせるRubyのソースビルド結果 .. rb:module:: berrymq .. rb:function:: talk(識別子)メッセージを送りますクライアントとコネクションを張ったら :rb:func:`talk` が使えるようになりますberrymq.talk(識別子)メッセージを送りますクライアントとコネクションを張ったらtalk()が使えるようになります
ということで・・・
Erlangドメインを実装
今のところの対応Erlang専用の4つのディレクティブとロールを追加モジュール関数マクロレコード
モジュールディレクティブモジュール名を引数に取るモジュール索引に項目が追加され、ページジャンプできるこれを設置した後の関数は、これの中にあるとみなされる。.. erl:module:: lists
関数ディレクティブ関数名を引数に取るメソッドの省略、返値も記述できる引数、返値の説明は:param:, :type:, :return:, :rtype:フィールドを使う.. erl:function:: append(ListOfLists) -> ok   :paramListOfLists: くっつけたいリストのリストここに箇条書きでもなんでも自由に文章書けます。
マクロ、レコードディレクティブマクロ名、レコード名ディレクティブ内に自由に文章が書けるレコードの要素ごとの説明が書けるようにはなってません。作成中です。.. erl:macro:: NOTESTテストの実行をやめる.. erl:record:: #person人の情報
モジュールロールドキュメントの文章中から、モジュールの定義場所へのリンクを貼るErlangのテスティングフレームワークには、2種類あり、簡単な方が :erl:mod:`eunit` です。
関数ロールドキュメントの文章中から、関数の定義場所へのリンクを貼る。arityとモジュールを指定する(同じモジュール内ならばモジュールは省略可):erl:func:`sets:from_list/1` と、 :erl:func:`sets:to_list/1` を使えば、重複要素のないリストが簡単に作れます。
マクロ、レコードロールarityがない以外は関数のロールとほぼ一緒です。他のロールもですが、 < > を使うと、ドキュメントに表示されるラベルを変えることもできます。:erl:macro:`APRILFOOL` は、エイプリルフールにコンパイルする時にのみ設定されるマクロです。:erl:func:`これ <lists:reverse/1>` を2回実行すると、時間コストはややかかります。
使い方easy_installsphinxcontrib-erlangdomainSphinxのプロジェクトを作ったら、extensionsに’sphinxcontrib.erlangdomain’を追加
Sphinxでドキュメント書くといいこと豊富なマークアップを活用して記述できる大規模文章でも書きやすいErlangはドキュメントを大事にする文化iPadに出すとモテる!?
Sphinxについての詳しい情報はSphinxUsers.jpへインストール方法リファレンスの完全日本語訳Sphinxを使った日本語サイト一覧ウェブサイトの作り方チュートリアルePubの出し方翻訳のやり方よい文書の書き方
Sphinxのこれから良くなる点PDF出力お手軽rst2pdfだと見た目が・・・日本人も参戦!http://twitter.com/tk0miyaさんががんばってます!LaTeX経由・・・すみません僕の環境ではまだ成功してません。pTeXLive入れればいいの?各国語対応検索機能だとか。GUI詳しくない人に広めるなら欲しいよね?
Sphinxで救われる方仕事のドキュメントがExcelで疲れた方仕事のドキュメントがWordでリファレンス作りに疲れた方仕事のドキュメントがLaTeXでコンパイルエラーに疲れた方仕事のドキュメントがヘビー級なCMSで、不要な二酸化炭素を排出している気がして、気になって眠れない方SphinxとErlangで、Happy Documentation Life!
そういえばErlangはどうなったの?
Project Euler日本人で一時、1位に!現在は2位です。ヒヨッコですが。

Erlang and I and Sphinx.