SlideShare ist ein Scribd-Unternehmen logo
1 von 30
マークアップ言語の拡張 
-メリットとデメリット- 
小宮健(Takeshi KOMIYA) @tk0miya 
#hankumi
Who am I ? 
 仕事 
 (株)タイムインターメディア所属 
 Sphinx コミッター(2014/11〜) 
 blockdiag 開発者 
 Sphinx 拡張開発数世界1位(自分調べ) 
 参加コミュニティ 
 Sphinx-users.jp 
 sendagaya.rb 
Twitter: @tk0miya
Who am I ? 
 blockdiag というツールを作ってます 
 テキスト(DSL like .dot)から画像を生成し 
ま{ す 
トップページ-> ログイン-> マイペー 
ジ; 
トップページ-> 商品一覧-> 商品詳細; 
}
http://www.flickr.com/photos/huskyte/7512877940/in/photostream/
今日の発表について 
版管理の話も 
組版の話もありません
Sphinx とは 
 reStructuredTextでマークアップされた原 
稿をHTML/LaTeX/EPUBなどに変換する 
ツール 
 Python製 
 Python リファレンス、書籍などで使われ 
ている
reStructured Text とは 
 読みやすさに重きをおいたマークアップ言 
語 
 略称はreST 
 マークアップの拡張を考慮している 
 処理系としてdocutils がある 
 デザイン/レイアウトのマークアップは苦 
手
reStructured Text とは 
 読みやすさに重きをおいたマークアップ言 
語 
コ==ン===セ==プ= トはeasy-to-read, WYSIWYG 
タイトル 
======== 
セクション1 
============ 
この**単語** は強調されます。 
セクション2 
============ 
* 箇条書きです 
* 箇条書きです
reST を拡張する(1) 
 インラインマークアップにはrole を用い 
る 
:role_name:`contents` 
 例: Wikipedia へのリンクを作る 
:wikipedia:`reStructuredText`
reST を拡張する(2) 
 ブロック要素にはdirective を用いる 
.. directive_name:: 引数 
:オプション1: 値 
:オプション2: 値 
contents
reST を拡張する(2) 
 例: CSV でテーブルを作る 
.. csv-table:: 見出し 
:header-rows: 1 
"ユーザ名","住所","メールアドレス" 
"taro","Tokyo","taro@gmail.com" 
"jiro","Kanagawa","jiro@gmail.com" 
"saburo","Saitama","saburo@gmail.com"
Sphinx とreST の関係 
 reST の処理系はdocutils 
 (基本的に)複数ファイルを扱えない 
 マークアップを拡張するAPI を持っている 
 docutils をラップするプログラムを書く必要がある 
 Sphinx はdocutils をラップしたもの 
 プロジェクト制を採用 
 複数ファイルに対応 
 Sphinx 独自のdirective, role
Sphinx とreST の関係 
docutils Sphinx 
マークアップ言語reStructuredText 
reStructuredText 
(独自拡張) 
文書の規模1ファイル複数ファイル
Sphinx が提供するもの 
 複数ファイルのための仕組み 
 目次(TOC) 
 クロスリファレンス 
 HTML テーマ 
 言語ドメイン(関数、クラスなどを表現する) 
 文書の国際化(I18N) 
 autodoc (Javadoc like の仕組み) 
 拡張の仕組み(フレームワーク) 
 ドキュメンテーション用統合環境パッケージ
Sphinx 拡張 
 Sphinx は拡張の仕組みを提供している 
 autodoc: ソースコードなどからドキュメント 
を生成 
 builders: 出力フォーマットを追加 
 domains: 言語ドメインを増やす 
 directive/role: マークアップを拡張する 
 HTML テーマ: HTML の見栄えを変える
Survey of Sphinx extensions 
 200 を超える拡張が存在する 
 (HTML テーマを除く)
主な拡張 
 sphinxcontrib-exceltable 
 Excel ファイルを表として取り込む 
 画像系 
 画像ファイルを取り込む 
 PowerPoint, gnuplot, astah, cacoo, Libre Office, visio 
 マークアップから図を生成する 
 UML(PlantUML)、ブロック図(blockdiag)、グラフ
主な拡張 
multimedia 
 動画(Youtube, Flash), スライド(Slideshare) 
 その他(googlemaps, gist, twitter) 
 roles 
 リンク(wikipedia, PyPI), テキスト装飾、メタ 
データ 
 autodocs 
 Doxygen 連携、ソースコード解析 
 DBスキーマ解析
拡張によって得られるもの 
 テキストが苦手な部分を補うことができる 
 図、表は扱いやすいツールで作る 
 マルチメディア情報 
 マークアップの表現力を上げる 
 セマンティックに書く 
 シンプルに書く 
 自動抽出 
 簡潔な記述ができる
拡張のデメリット 
 セットアップがちょっと面倒 
 拡張を調べる/覚えるのが大変 
 1ソースマルチユースに対応していない拡 
張もある 
 HTML ではうまく動くが… 
 PDF やEPUB に変換できない 
 reST の方言化
拡張を調べる/覚えるのが大変 
 画像に関する拡張は30以上 
 gnuplot, blockdiag, astah, cacoo, libreoffice, 
PlantUML, TikZ, Visio, PPT などなど 
 それぞれ使い方やオプションが異なる 
 対応していないオプションもある 
 キャプションを付けられないとか
reST の方言化 
 マークアップが追加され、標準と異なるも 
のになる 
reStructured 
Text 
Sphinx 
Sphinx 
+ 
拡張
reST の方言化 
 他の処理系で表示できない 
 ex. github, bitbucket, PyPI 
 README.rst が〜〜でちゃんと表示されない… 
 Sphinx でreST を覚えた人にありがち 
 Sphinx で作った文書はSphinx でしか処理 
できない 
 ゴールが違うので問題無い?? 
 拡張性≒ 方言化?
reST の方言化 
 似たような話、どこかで聞いたような… 
 markdown ですね 
 Github Flavor, PHP Extra, Pandoc, 
CommonMark 
 Sphinx's reST = Sphinx Flavored reST
reST の方言化 
 reST は拡張性を提供している 
 Sphinx は拡張方法を提供している 
 markdown は処理系ごとに文法を拡張 
TeX はすべてがマクロでできている 
 どのマークアップも少なからず拡張してい 
る 
 この道は先人が通っているはず…!?
reST の方言化 
 先人曰く
拡張性の功罪 
 メリット 
 便利 
 表現力アップ 
 デメリット 
 複雑度が上がる 
 他の人に扱いづらくなる 
 他の処理系で扱えない 
 利便性と方言化はトレードオフ
まとめ 
 大量の拡張を読んだ経験をまとめました 
 言語の拡張は用法用量を守って正しくお使 
いください 
 使いすぎにはご注意を…
宣伝: ドキュメント話をしませんか 
 いろんな垣根を超えて辛いことをシェアし 
たい 
 プログラミング言語 
 マークアップ言語 
 処理系/ツール 
 題材(書籍、雑誌、同人誌、翻訳、リファレン 
ス) 
 まずは雑談しませんか 
 懇親会(あれば)で雑談しましょう 
 あと、この会の2回目をやりましょう
ドキュメントの話をしよう 
 例:Sphinx+翻訳Hack-a-thon (12/20, 毎月開催)

Weitere ähnliche Inhalte

Was ist angesagt?

Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例Go Yamada
 
Sphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントSphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントGo Yamada
 
SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編kk_Ataka
 
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版Go Yamada
 
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介kk_Ataka
 
Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme HacksShoji KUMAGAI
 
Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Yoshiki Shibukawa
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組みTakayuki Shimizukawa
 
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpTakeshi Komiya
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたTaku SHIMIZU
 
How to spread reST and Sphinx
How to spread reST and SphinxHow to spread reST and Sphinx
How to spread reST and SphinxTakanori Suzuki
 
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」Yoshiki Shibukawa
 
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07Takeshi Komiya
 
Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Takayuki Shimizukawa
 
社内のマニュアルをSphinxで作ってみた
社内のマニュアルをSphinxで作ってみた社内のマニュアルをSphinxで作ってみた
社内のマニュアルをSphinxで作ってみたIosif Takakura
 
SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括kk_Ataka
 
Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Takayuki Shimizukawa
 
個人的ドキュメンテーションツール トップ100
個人的ドキュメンテーションツール トップ100個人的ドキュメンテーションツール トップ100
個人的ドキュメンテーションツール トップ100Go Yamada
 

Was ist angesagt? (20)

Sphinxの使い方事例
Sphinxの使い方事例Sphinxの使い方事例
Sphinxの使い方事例
 
Sphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメントSphinx で手軽に作るドキュメント
Sphinx で手軽に作るドキュメント
 
Sphinx GO!!
Sphinx GO!!Sphinx GO!!
Sphinx GO!!
 
SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編SIerでもSphinxを使いたい! 前編
SIerでもSphinxを使いたい! 前編
 
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
BPstudy#64 ドキュメントを作りたくなってしまう魔法のツール Sphinx 2012年版
 
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
JUS関西 Sphinxワークショップ@関西 Sphinx事例紹介
 
Sphinx HTML Theme Hacks
Sphinx HTML Theme HacksSphinx HTML Theme Hacks
Sphinx HTML Theme Hacks
 
Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014Oktavia全文検索エンジン - SphinxCon JP 2014
Oktavia全文検索エンジン - SphinxCon JP 2014
 
ひとりsphinx
ひとりsphinxひとりsphinx
ひとりsphinx
 
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
Sphinxで作る貢献しやすいドキュメント翻訳の仕組みSphinxで作る貢献しやすいドキュメント翻訳の仕組み
Sphinxで作る貢献しやすい ドキュメント翻訳の仕組み
 
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjpSphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
Sphinx ではじめるドキュメント生活 2012 #pyconjp #sphinxconjp
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみた
 
How to spread reST and Sphinx
How to spread reST and SphinxHow to spread reST and Sphinx
How to spread reST and Sphinx
 
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
ドキュメントを作りたくなってしまう魔法のツール「Sphinx」
 
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07
手軽にメンテナンスできるドキュメントのヒミツ - blockdiag #odstudy 2011/07
 
Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018Sphinx customization for OGP support at SphinxCon JP 2018
Sphinx customization for OGP support at SphinxCon JP 2018
 
社内のマニュアルをSphinxで作ってみた
社内のマニュアルをSphinxで作ってみた社内のマニュアルをSphinxで作ってみた
社内のマニュアルをSphinxで作ってみた
 
SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括SIerでもSphinxを使いたい!総括
SIerでもSphinxを使いたい!総括
 
Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012
 
個人的ドキュメンテーションツール トップ100
個人的ドキュメンテーションツール トップ100個人的ドキュメンテーションツール トップ100
個人的ドキュメンテーションツール トップ100
 

Andere mochten auch

発見・探検・ぼくのだいあぐ #pykonjp2014
発見・探検・ぼくのだいあぐ #pykonjp2014発見・探検・ぼくのだいあぐ #pykonjp2014
発見・探検・ぼくのだいあぐ #pykonjp2014Takeshi Komiya
 
書類作成環境のあるべき論とは
書類作成環境のあるべき論とは書類作成環境のあるべき論とは
書類作成環境のあるべき論とはJun Iio
 
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansaiKazuhito Miura
 
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapacPythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapacTakeshi Komiya
 
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasia
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasiaExcel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasia
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasiaTakeshi Komiya
 
ドキュメントなんとかしたい
ドキュメントなんとかしたいドキュメントなんとかしたい
ドキュメントなんとかしたいShingo Tamaki
 
Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版Mikihiro Fujii
 
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsugChef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsugTakeshi Komiya
 
[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312Mikihiro Fujii
 
Astah UML スタートガイド
Astah UML スタートガイドAstah UML スタートガイド
Astah UML スタートガイドChangeVision
 
かんたん!UMLのバージョン管理,どこでもモデリング
かんたん!UMLのバージョン管理,どこでもモデリングかんたん!UMLのバージョン管理,どこでもモデリング
かんたん!UMLのバージョン管理,どこでもモデリングKento Tsuji
 
ChefConf 2013: Beginner Chef Antipatterns
ChefConf 2013: Beginner Chef AntipatternsChefConf 2013: Beginner Chef Antipatterns
ChefConf 2013: Beginner Chef AntipatternsJulian Dunn
 
UMLモデルを使った自動生成
UMLモデルを使った自動生成UMLモデルを使った自動生成
UMLモデルを使った自動生成Norihito Ohshima
 
ソフトウェア設計のすすめ
ソフトウェア設計のすすめソフトウェア設計のすすめ
ソフトウェア設計のすすめYoshimura Soichiro
 

Andere mochten auch (15)

発見・探検・ぼくのだいあぐ #pykonjp2014
発見・探検・ぼくのだいあぐ #pykonjp2014発見・探検・ぼくのだいあぐ #pykonjp2014
発見・探検・ぼくのだいあぐ #pykonjp2014
 
書類作成環境のあるべき論とは
書類作成環境のあるべき論とは書類作成環境のあるべき論とは
書類作成環境のあるべき論とは
 
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai
「むしゃくしゃしたのでOpenDocumentで帳票テンプレート」 - 第13回関西LibreOffice勉強会 #LibOKansai
 
Pythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapacPythonユーザのための構成管理入門 #pyconapac
Pythonユーザのための構成管理入門 #pyconapac
 
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasia
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasiaExcel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasia
Excel 方眼紙撲滅委員会 活動報告 2013.9 #yapcasia
 
ドキュメントなんとかしたい
ドキュメントなんとかしたいドキュメントなんとかしたい
ドキュメントなんとかしたい
 
Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版Uxデザイン定義書ワークショップ 20120726 公開版
Uxデザイン定義書ワークショップ 20120726 公開版
 
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsugChef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
 
[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312[Template]uxデザイン定義書201312
[Template]uxデザイン定義書201312
 
Astah UML スタートガイド
Astah UML スタートガイドAstah UML スタートガイド
Astah UML スタートガイド
 
メッチャ役に立つauto_incrementの話
メッチャ役に立つauto_incrementの話メッチャ役に立つauto_incrementの話
メッチャ役に立つauto_incrementの話
 
かんたん!UMLのバージョン管理,どこでもモデリング
かんたん!UMLのバージョン管理,どこでもモデリングかんたん!UMLのバージョン管理,どこでもモデリング
かんたん!UMLのバージョン管理,どこでもモデリング
 
ChefConf 2013: Beginner Chef Antipatterns
ChefConf 2013: Beginner Chef AntipatternsChefConf 2013: Beginner Chef Antipatterns
ChefConf 2013: Beginner Chef Antipatterns
 
UMLモデルを使った自動生成
UMLモデルを使った自動生成UMLモデルを使った自動生成
UMLモデルを使った自動生成
 
ソフトウェア設計のすすめ
ソフトウェア設計のすすめソフトウェア設計のすすめ
ソフトウェア設計のすすめ
 

Ähnlich wie マークアップ言語の拡張 メリットとデメリット #hankumi

ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28
ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28
ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28Takeshi Komiya
 
2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)Naoki Okino
 
個人的なさがしもののはなし #rubyhiroba
個人的なさがしもののはなし #rubyhiroba個人的なさがしもののはなし #rubyhiroba
個人的なさがしもののはなし #rubyhirobaTakeshi Komiya
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」ericsagnes
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントMasaki NIWA
 
2008 12 04_seminner
2008 12 04_seminner2008 12 04_seminner
2008 12 04_seminnerTom Hayakawa
 
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalk
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalkドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalk
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalkTakeshi Komiya
 
Small Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour TokyoSmall Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour TokyoTakao Tetsuro
 
local launch small language model of AI.
local launch small language model of AI.local launch small language model of AI.
local launch small language model of AI.Takao Tetsuro
 
今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012Yasuhito Yabe
 
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とはテクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とはHiroaki Komine
 
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」Naoki Yokota
 
2006 07 29_xtc2006_x_cube_template
2006 07 29_xtc2006_x_cube_template2006 07 29_xtc2006_x_cube_template
2006 07 29_xtc2006_x_cube_templateTom Hayakawa
 
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)Takeshi Komiya
 
Fluentdcasual 02-haikanko
Fluentdcasual 02-haikankoFluentdcasual 02-haikanko
Fluentdcasual 02-haikankoNaotoshi Seo
 
Attractive HTML5
Attractive HTML5Attractive HTML5
Attractive HTML5Sho Ito
 
Yet anothor プロジェクト管理ツール ~Backlog~
Yet anothor プロジェクト管理ツール ~Backlog~Yet anothor プロジェクト管理ツール ~Backlog~
Yet anothor プロジェクト管理ツール ~Backlog~ikikko
 
Data API ことはじめ
Data API ことはじめData API ことはじめ
Data API ことはじめYuji Takayama
 
Confluence と DITA による Webマニュアル作成フロー
Confluence と DITA によるWebマニュアル作成フローConfluence と DITA によるWebマニュアル作成フロー
Confluence と DITA による Webマニュアル作成フローTakashi Yamaguchi
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説Daisuke Nishino
 

Ähnlich wie マークアップ言語の拡張 メリットとデメリット #hankumi (20)

ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28
ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28
ネットワーク図作成ツール nwdiag の紹介 2011/07 #janog28
 
2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)
 
個人的なさがしもののはなし #rubyhiroba
個人的なさがしもののはなし #rubyhiroba個人的なさがしもののはなし #rubyhiroba
個人的なさがしもののはなし #rubyhiroba
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイント
 
2008 12 04_seminner
2008 12 04_seminner2008 12 04_seminner
2008 12 04_seminner
 
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalk
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalkドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalk
ドキュメントを加速する作画ツール Blockdiag 2011/07 #infotalk
 
Small Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour TokyoSmall Language Model Local Launch on AI Tour Tokyo
Small Language Model Local Launch on AI Tour Tokyo
 
local launch small language model of AI.
local launch small language model of AI.local launch small language model of AI.
local launch small language model of AI.
 
今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012今日からはじめるHTML5 ver.2012
今日からはじめるHTML5 ver.2012
 
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とはテクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
テクてく Lotus 技術者夜会 03/16 Lotus Notes/Domino Upgrade Pack とは
 
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」
第11回 cocos2d-x勉強会 「cocos2dxでLWFを利用する」
 
2006 07 29_xtc2006_x_cube_template
2006 07 29_xtc2006_x_cube_template2006 07 29_xtc2006_x_cube_template
2006 07 29_xtc2006_x_cube_template
 
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)
excel を捨てよ blockdiag を使おう 2011/05 #tqrk03 (tokyu.rb)
 
Fluentdcasual 02-haikanko
Fluentdcasual 02-haikankoFluentdcasual 02-haikanko
Fluentdcasual 02-haikanko
 
Attractive HTML5
Attractive HTML5Attractive HTML5
Attractive HTML5
 
Yet anothor プロジェクト管理ツール ~Backlog~
Yet anothor プロジェクト管理ツール ~Backlog~Yet anothor プロジェクト管理ツール ~Backlog~
Yet anothor プロジェクト管理ツール ~Backlog~
 
Data API ことはじめ
Data API ことはじめData API ことはじめ
Data API ことはじめ
 
Confluence と DITA による Webマニュアル作成フロー
Confluence と DITA によるWebマニュアル作成フローConfluence と DITA によるWebマニュアル作成フロー
Confluence と DITA による Webマニュアル作成フロー
 
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
『これからの.NETアプリケーション開発』セミナー .NET用アプリケーション フレームワーク Open 棟梁 概説
 

Mehr von Takeshi Komiya

俺の嫁と行った場所 #pykonjp2014
俺の嫁と行った場所 #pykonjp2014俺の嫁と行った場所 #pykonjp2014
俺の嫁と行った場所 #pykonjp2014Takeshi Komiya
 
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyo
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyoParatrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyo
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyoTakeshi Komiya
 
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudyTakeshi Komiya
 
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo Takeshi Komiya
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03Takeshi Komiya
 
Inside of excel 方眼紙撲滅委員会 #pyfes
Inside of excel 方眼紙撲滅委員会 #pyfesInside of excel 方眼紙撲滅委員会 #pyfes
Inside of excel 方眼紙撲滅委員会 #pyfesTakeshi Komiya
 
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudy
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudyExcel 方眼紙撲滅委員会 活動報告 2012.11 #odstudy
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudyTakeshi Komiya
 
Life with Sphinx 2012 #sphinxconjp
Life with Sphinx 2012 #sphinxconjpLife with Sphinx 2012 #sphinxconjp
Life with Sphinx 2012 #sphinxconjpTakeshi Komiya
 
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthon
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthonExcel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthon
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthonTakeshi Komiya
 
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjpExcel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjpTakeshi Komiya
 
最近つくった Sphinx 拡張の話 2012.08 #pyfes
最近つくった Sphinx 拡張の話 2012.08 #pyfes最近つくった Sphinx 拡張の話 2012.08 #pyfes
最近つくった Sphinx 拡張の話 2012.08 #pyfesTakeshi Komiya
 
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfes
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfesExcel 方眼紙撲滅委員会 活動報告 2012.08 #pyfes
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfesTakeshi Komiya
 
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiagTakeshi Komiya
 
3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfesTakeshi Komiya
 
blockdiagの最新動向 2011.11 #odstudy
blockdiagの最新動向 2011.11 #odstudyblockdiagの最新動向 2011.11 #odstudy
blockdiagの最新動向 2011.11 #odstudyTakeshi Komiya
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpTakeshi Komiya
 
blockdiag - a simple diagram generator
blockdiag - a simple diagram generatorblockdiag - a simple diagram generator
blockdiag - a simple diagram generatorTakeshi Komiya
 

Mehr von Takeshi Komiya (17)

俺の嫁と行った場所 #pykonjp2014
俺の嫁と行った場所 #pykonjp2014俺の嫁と行った場所 #pykonjp2014
俺の嫁と行った場所 #pykonjp2014
 
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyo
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyoParatrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyo
Paratrooper chef の紹介 @ Chef Casual Talks Vol.2 #eytokyo
 
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy
 
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo
Roundsmanの紹介 @ Chef Casual Talks Vol.1 #eytokyo
 
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
春を先取り!OpsWorksとChef ではじめる恋色コーデ術! #pyfes 2013.03
 
Inside of excel 方眼紙撲滅委員会 #pyfes
Inside of excel 方眼紙撲滅委員会 #pyfesInside of excel 方眼紙撲滅委員会 #pyfes
Inside of excel 方眼紙撲滅委員会 #pyfes
 
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudy
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudyExcel 方眼紙撲滅委員会 活動報告 2012.11 #odstudy
Excel 方眼紙撲滅委員会 活動報告 2012.11 #odstudy
 
Life with Sphinx 2012 #sphinxconjp
Life with Sphinx 2012 #sphinxconjpLife with Sphinx 2012 #sphinxconjp
Life with Sphinx 2012 #sphinxconjp
 
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthon
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthonExcel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthon
Excel 方眼紙撲滅委員会 活動報告 2012.09 #yapcasia #ltthon
 
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjpExcel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
Excel 方眼紙撲滅委員会 活動報告 2012.09 #pyconjp
 
最近つくった Sphinx 拡張の話 2012.08 #pyfes
最近つくった Sphinx 拡張の話 2012.08 #pyfes最近つくった Sphinx 拡張の話 2012.08 #pyfes
最近つくった Sphinx 拡張の話 2012.08 #pyfes
 
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfes
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfesExcel 方眼紙撲滅委員会 活動報告 2012.08 #pyfes
Excel 方眼紙撲滅委員会 活動報告 2012.08 #pyfes
 
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag
五番目のダイアグ、現る。 2012.08 #pyfes #blockdiag
 
3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes
 
blockdiagの最新動向 2011.11 #odstudy
blockdiagの最新動向 2011.11 #odstudyblockdiagの最新動向 2011.11 #odstudy
blockdiagの最新動向 2011.11 #odstudy
 
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjpPython エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
 
blockdiag - a simple diagram generator
blockdiag - a simple diagram generatorblockdiag - a simple diagram generator
blockdiag - a simple diagram generator
 

Kürzlich hochgeladen

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 

Kürzlich hochgeladen (9)

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 

マークアップ言語の拡張 メリットとデメリット #hankumi

  • 2. Who am I ?  仕事  (株)タイムインターメディア所属  Sphinx コミッター(2014/11〜)  blockdiag 開発者  Sphinx 拡張開発数世界1位(自分調べ)  参加コミュニティ  Sphinx-users.jp  sendagaya.rb Twitter: @tk0miya
  • 3. Who am I ?  blockdiag というツールを作ってます  テキスト(DSL like .dot)から画像を生成し ま{ す トップページ-> ログイン-> マイペー ジ; トップページ-> 商品一覧-> 商品詳細; }
  • 6. Sphinx とは  reStructuredTextでマークアップされた原 稿をHTML/LaTeX/EPUBなどに変換する ツール  Python製  Python リファレンス、書籍などで使われ ている
  • 7. reStructured Text とは  読みやすさに重きをおいたマークアップ言 語  略称はreST  マークアップの拡張を考慮している  処理系としてdocutils がある  デザイン/レイアウトのマークアップは苦 手
  • 8. reStructured Text とは  読みやすさに重きをおいたマークアップ言 語 コ==ン===セ==プ= トはeasy-to-read, WYSIWYG タイトル ======== セクション1 ============ この**単語** は強調されます。 セクション2 ============ * 箇条書きです * 箇条書きです
  • 9. reST を拡張する(1)  インラインマークアップにはrole を用い る :role_name:`contents`  例: Wikipedia へのリンクを作る :wikipedia:`reStructuredText`
  • 10. reST を拡張する(2)  ブロック要素にはdirective を用いる .. directive_name:: 引数 :オプション1: 値 :オプション2: 値 contents
  • 11. reST を拡張する(2)  例: CSV でテーブルを作る .. csv-table:: 見出し :header-rows: 1 "ユーザ名","住所","メールアドレス" "taro","Tokyo","taro@gmail.com" "jiro","Kanagawa","jiro@gmail.com" "saburo","Saitama","saburo@gmail.com"
  • 12. Sphinx とreST の関係  reST の処理系はdocutils  (基本的に)複数ファイルを扱えない  マークアップを拡張するAPI を持っている  docutils をラップするプログラムを書く必要がある  Sphinx はdocutils をラップしたもの  プロジェクト制を採用  複数ファイルに対応  Sphinx 独自のdirective, role
  • 13. Sphinx とreST の関係 docutils Sphinx マークアップ言語reStructuredText reStructuredText (独自拡張) 文書の規模1ファイル複数ファイル
  • 14. Sphinx が提供するもの  複数ファイルのための仕組み  目次(TOC)  クロスリファレンス  HTML テーマ  言語ドメイン(関数、クラスなどを表現する)  文書の国際化(I18N)  autodoc (Javadoc like の仕組み)  拡張の仕組み(フレームワーク)  ドキュメンテーション用統合環境パッケージ
  • 15. Sphinx 拡張  Sphinx は拡張の仕組みを提供している  autodoc: ソースコードなどからドキュメント を生成  builders: 出力フォーマットを追加  domains: 言語ドメインを増やす  directive/role: マークアップを拡張する  HTML テーマ: HTML の見栄えを変える
  • 16. Survey of Sphinx extensions  200 を超える拡張が存在する  (HTML テーマを除く)
  • 17. 主な拡張  sphinxcontrib-exceltable  Excel ファイルを表として取り込む  画像系  画像ファイルを取り込む  PowerPoint, gnuplot, astah, cacoo, Libre Office, visio  マークアップから図を生成する  UML(PlantUML)、ブロック図(blockdiag)、グラフ
  • 18. 主な拡張 multimedia  動画(Youtube, Flash), スライド(Slideshare)  その他(googlemaps, gist, twitter)  roles  リンク(wikipedia, PyPI), テキスト装飾、メタ データ  autodocs  Doxygen 連携、ソースコード解析  DBスキーマ解析
  • 19. 拡張によって得られるもの  テキストが苦手な部分を補うことができる  図、表は扱いやすいツールで作る  マルチメディア情報  マークアップの表現力を上げる  セマンティックに書く  シンプルに書く  自動抽出  簡潔な記述ができる
  • 20. 拡張のデメリット  セットアップがちょっと面倒  拡張を調べる/覚えるのが大変  1ソースマルチユースに対応していない拡 張もある  HTML ではうまく動くが…  PDF やEPUB に変換できない  reST の方言化
  • 21. 拡張を調べる/覚えるのが大変  画像に関する拡張は30以上  gnuplot, blockdiag, astah, cacoo, libreoffice, PlantUML, TikZ, Visio, PPT などなど  それぞれ使い方やオプションが異なる  対応していないオプションもある  キャプションを付けられないとか
  • 22. reST の方言化  マークアップが追加され、標準と異なるも のになる reStructured Text Sphinx Sphinx + 拡張
  • 23. reST の方言化  他の処理系で表示できない  ex. github, bitbucket, PyPI  README.rst が〜〜でちゃんと表示されない…  Sphinx でreST を覚えた人にありがち  Sphinx で作った文書はSphinx でしか処理 できない  ゴールが違うので問題無い??  拡張性≒ 方言化?
  • 24. reST の方言化  似たような話、どこかで聞いたような…  markdown ですね  Github Flavor, PHP Extra, Pandoc, CommonMark  Sphinx's reST = Sphinx Flavored reST
  • 25. reST の方言化  reST は拡張性を提供している  Sphinx は拡張方法を提供している  markdown は処理系ごとに文法を拡張 TeX はすべてがマクロでできている  どのマークアップも少なからず拡張してい る  この道は先人が通っているはず…!?
  • 26. reST の方言化  先人曰く
  • 27. 拡張性の功罪  メリット  便利  表現力アップ  デメリット  複雑度が上がる  他の人に扱いづらくなる  他の処理系で扱えない  利便性と方言化はトレードオフ
  • 28. まとめ  大量の拡張を読んだ経験をまとめました  言語の拡張は用法用量を守って正しくお使 いください  使いすぎにはご注意を…
  • 29. 宣伝: ドキュメント話をしませんか  いろんな垣根を超えて辛いことをシェアし たい  プログラミング言語  マークアップ言語  処理系/ツール  題材(書籍、雑誌、同人誌、翻訳、リファレン ス)  まずは雑談しませんか  懇親会(あれば)で雑談しましょう  あと、この会の2回目をやりましょう

Hinweis der Redaktion

  1. This is example of blockdiag. Connect nodes with arrow operator. After execute blockdiag command, you can get images.