SphinxCon JP 2014参加レポート
イベントURL: SphinxCon JP 2014 – connpass http://sphinxjp.connpass.com/event/8448/
午前中のハンズオンに若干遅刻して参加。事前にチュートリアルをやっていたので問題なかった。開催地は渋谷だった。TUG 2013の二日目のバスのりばの近く。騒がしい若者の街という印象で落ち着かなかった。
チュートリアルで使っていた参考サイトは以下。
Sphinx Quickstart — Sphinx Quickstart 0.1 documentation http://usaturn.net/osc/index.html
Sphinxを使った感想
- 手軽にそれなりのものができる印象。ただ,これはテンプレートによるものが大きい。例えば,LaTeXで綺麗に整ったクラスファイル.clsを読み込んだり,HTMLで綺麗なCSSの適用,を既定で行うことに似ている。
- いちいち使うのにプロジェクトを作らないといけないのが面倒くさい。
- プレビューするのにTeXと同じように
make html
コマンドでタイプセットしないと確認できないのはちときつい。 - しかも,reSTのWYSIWYGエディターは存在しないとのこと。これは問題。ローカル環境でreST記法のプレビューができない。敷居が高い。
- まだまだ発展途中の印象。例えば図表の付番は普通のワープロでは当たり前だったがSphinxでは最新のバージョン1.3のnumfigによりようやく対応した。
- それまでは手作業でやっていた。内心かなり驚いた。この事実からSphinxの過信は禁物かな。
- 番号付きリストは番号を途中からにはできない。つまり,2から始められない。
- コメントアウトはブロック単位。行末だけコメントアウトは不可能。
- 行の途中で改行すると半角スペースが勝手に挿入される。行末を\でエスケープするか,拡張機能で除去するしかない。
発表セッション
メモがとれて,関心のあったものに簡単にメモやコメント。業務でのSphinxの導入事例
- Sphinxをお客さんの絡む業務で使うのは困難。やるとしたら,最後Wordで不可逆変換をかけて収めるのが現状。
- 人数が少なければ使える。大人数プロジェクトやお客さんが絡むと厳しい。
- 骨組みや出力が軽いとか,体系的に管理できるとかが利点。この辺をアピールするとかしてWIkiと区別して訴求。
- 納入後の保守を考えると,reSTで書いてLaTeXのpdfで収めるのがベター。
- TeXは難しいが品質は高いので,こういう軽量マークアップを使いTeXをコンバーターとして使うのがトレンド。
- ただ,微調整はLaTeXのコマンドやSphinxのTeX(.tex)への変換の流れなどの把握が必要。
- reSTやMarkdownは利用目的が違う。reST: 技術文書,Markdown: Webコンテンツ。
- Markdownには処理系が山のようにある。
- MarkdonwはHTML直書きに対応。ただし,多用すると収集がつかない。それなら最初からHTMLで書いたほうがマシ。
- 最近Common Markdown標準化の動きがある。
- Re:VIEWは商業出版でデファクトスタンダードなInDesignに出力できるのが利点。
- ひたすらSphinxの拡張を紹介。合計230こ。
- 拡張機能のインストール方法:PyPIにあるものは
pip
でインストール可能。 - 最終的に有効無効を手作業で行う。
- Base64で画像をテキストにして取り込むのは不可能。
- 欲しい機能とかは#sphinxjpタグをでツイートすると拾ってくれるかも?
- SphinxのHTMLテーマの作成・パッケージング方法の解説。
- 基本的に以下のサイトに全て解説あり。
- theming support
sphinx-doc.org/theming.html
テーマの作り方が書いてある。
Templating
sphinx-doc.org/templating.html
sphinx-doc.org/config.html
conf.pyの設定について書いてある。
heartbeats.jp/hbblog/2013/08/sphinx-costomize-theme.html - HTML以外のテーマは個別にやる必要あり。PDF -> LaTeX, epub -> ?
懇親会での収穫
おいしいピザを食べれた。二人に自分から質問した。あと雑談。- GUIとしてはQtがかなり充実。ライセンスの問題はあるが,AndroidやiOSなどのモバイルにも対応できるしほぼ何でもできる。wxWidgetsよりよさそう。
- ArcGISにも使われているし,Qt > wxWidgetsかなやっぱり。ライセンス的にwxWidgetsかなと思ったけど。乗り換えるか…。優柔不断だけど。
- 現状の商業出版としては,InDesignが約8割。最後の微調整をGUIでできるのが利点。
- CSS組版は将来の標準になる可能性が高い。しかし,現時点ではまだ規格も策定段階で,実装(コンバーター)も不十分。
- 個人出版などでLaTeXを使うというのは現時点ではあり。SphinxやMarkdownなどできる限り,簡単な記法でもっておき,LaTeXに変換して作るのが現実的で最近のトレンド。Re:VIEWもこのスタイル。
- LaTeXは完璧ではないが,あまり詳細を深追いせず(頑張りすぎず)に割りきってコンバーターとして使うのがいい。
- LTでBlenderの発表があったのは驚いた。文書をWikiからSphinxに移行しているらしく,関連があるらしい。
全体の感想+雑感
Sphinxは軽量マークアップで最有力の選択。やはりこれは間違っていない。Markdownは実装が多すぎる。それにpdfに変換する場合,pandocに依存するしイマイチ。pandocのmarkdown -> TeXへの変換もあまり信頼できないし。
ただし,Sphinxは発展途中なので過信は禁物。
SphinxでHTML+PDFをワンソースでやるなら,reSTでTeXが使えると割り切れば楽かもしれない。これだとSphinxの機能不足もある程度カバーできる。個人的にはTeXを楽に使うだけならLyXが一番だが,HTMLも必要ならSphinxが有力。
しかし,reSTではWYSIWYGエディタがないのが問題。ローカル環境で出力が確認できないのはしんどい。プロジェクトを立てたり,いちいち出力をイメージしながらテキストを書くのはしんどい。タイプセットも面倒くさい。Sphinx自体そんなに情報もないし。reST記法自体はそこまで複雑じゃないし,HTML直書きもできるからよいと思う。まあ,コメントアウトの仕方とかいくつか不満はあるけど。TeXの利用を念頭に置けば我慢できるかな。
結局軽量マークアップはHTMLの出力が大きな目的。なら,HTMLで最初から用意するのが個人的にはいいと思う。もちろん,HTMLをソースで編 集するのはしんどい。AmayaやBlueGriffonのようなWYSIWYGエディタを使うべきだ。人間がソースとにらめっこして書くのは馬鹿らし い。ソフトに任せるべき。
まだ,CSS組版の環境が整っていない。現状としてはSphinx+LaTeXでうまくpdfを生成するのが無難なのだろう。早くCSS組版が完成してほしい。そうすれば世の中の組版が世界で統一できると思う。あとは,優れたGUIのWYSIWYGエディタの開発。