• 検索結果がありません。

kawabata 最近の更新履歴 文字研究会

N/A
N/A
Protected

Academic year: 2018

シェア "kawabata 最近の更新履歴 文字研究会"

Copied!
12
0
0

読み込み中.... (全文を見る)

全文

(1)

川幡 太一

 青空文庫 

 EPUBとCSS3 

 青空文庫の注記とCSS3 

 青空文庫のEPUB化にあたっての課題 

 青空文庫処理システムの試作 

 最後に 

青空文庫の、CSS3での再現を通して、EPUB3の 日本語能力を検証したい。

 著作権の消滅した日本語テキスト等の アーカイブ 

 テキストのままでも読みやすいように配 慮された、独特の注記方法。 

 青空文庫・組版案内:

http://kumihan.aozora.gr.jp/ 

これらをEPUBに変換する方法を確立したい

(2)

 日本の書籍に現れる、様々な組版に関す る表現をタグにより注記。 

 元来は日本語テキストを、ボイジャーの 電子ブック向けに変換する際の「人間向 け」の注記。 

 ルビには《・・・》、それ以外には

[#・・・・]という形式のタグをテキ ストに挿入。

 EPUB3規格(2011年7月中旬?) 

 コンテンツの表記方法として、 

 HTML5 + SVG+ CSS2.1 + CSS3 modules   を採用。 

 日本語表記関連 

 CSS3 Writing Mode Modules(縦書き) 

 CSS Text Level 3 (強調点線の表記) 

 CSS Font Module (外字) 

 CSS3 Ruby Module? (ルビ) 

 EPUB3はドラフト段階のCSS3を採用予定。 

 青空文庫の注記・外字        vs. 

 EPUB3・CSS3・HTML5 

 外字 

 文字修飾 

 段落 

 その他 

(3)

 外字は注記記法が規定(外字注記辞書) 

 UCSとの対応は一意に決定可能

 外字は、[#・・・・]で記述される。 

青空文庫 EPUBでの対処 JIS X 

0213

項羽や樊[#「口

+會」、第3水準 1‐15‐25]は、…

面句点番号に対 応したUCS文字 で記述 UCS文字 今、因[#「木+

于」、10‐7]《いん う》将軍公孫敖が…

外字注記辞書と UCS文字の対応 表を利用 非UCS文字 [#「仝」の

「工」に代えて

「炭」、427‐3]

PUA+外字フォ ントを利用。

 青空文庫のルビは《・・・》で注記。 

 EPUBでは、HTML5 Ruby(WD)で表記。 

青空文庫《あおぞらぶんこ》 【例】 

霧の|ロンドン警視庁《ス【例】  コットランドヤード》

<ruby>青空文庫<rp>《</rp><rb>あおぞらぶんこ</ rb><rp>》</rp></ruby> 

(4)

 圏点はCSStext‐emphasis‐styleで対応。

青空文庫 CSS

[#丸傍点]青空文庫 で読書しよう[#丸傍 点終わり]。

text‐emphasis‐ style: open circle; 青空文庫で読書しよう

[#「青空文庫で読書 しよう」に黒三角傍 点]。

text‐emphasis‐ style: triangle;

[#蛇の目傍点]青空 文庫で読書しよう[# 蛇の目傍点終わり]。

text‐emphasis‐ style: open double‐ circle;

 圏点は、縦書きでは左右両方 につく可能性 

 左に付く場合は、 ‘text‐ emphasis‐position’ を、 

‘below right’に。 

 横書きの際、圏点は上下のど ちらかに付くか?

 青空文庫は多彩な傍線注記がある。 

 CSS3texttext‐decoration‐style 対応。ただしWebKitではまだ未実装。 

青空文庫 CSS

青空文庫[#「青空文

庫」に波線]。 text‐decoration‐ style: wave;

[#二重傍線]青空文 庫[#二重傍線終わ り]。

text‐decoration‐ style: double;

(5)

 縦書き・横書きで、字下げ方向が変化。

青空文庫 横書きCSS 縦書きCSS 文字下げ [#○字下げ] margin‐left:○em; margin‐top:○em; 地上げ [#地より○字上

げ] text‐align: end;  margin‐right: ○em;

text‐align: end;  margin‐bottom: ○em; 改行天付 [#ここから改行天付き、折り返し

て○字下げ]

margin‐left: em;  text‐indent: ‐○em;

margin‐top: em;  text‐indent: ‐○em;

文字下げ折り返し [#ここから○字下げ、折り返して

×字下げ]

margin‐left: em;  text‐indent: (×‐) em;

margin‐top: ○em;  text‐indent: (×‐) em;

段落字詰 [#ここから○字詰め]… 

[#ここで字詰め 終わり]

max‐width: ○em; max‐height: ○em;

 割注・窓見出し 

 割注は元来、漢籍等の注釈 文で使用 

 日本でも多数の用例 

 CSSの inline float 等 では再現不可能(?) 

 地寄り表記 

 日付・署名など、改行しな い地付き表記 

 既知の課題 

 注記記法 

 外字 

 外字注記がばらばら、縦書きフォントの問題 

 目次 

上記を解決方法を検討し、「青空文 庫→EPUB変換ツール」を試作する。

(6)

 注記の記法(「組版案内」) 

 従来は「メモ書き」程度 

 厳密な「文法」は規定されていない 

 記法がしばしば変更され、過去の作品と、現 在の作品で注記が異なる。 

 (ソフトウェアによる対応が困難) 

 外字の注記 

 外字注記辞書に従えば、一意に変換が可能な はずだが・・・? 

 最近、Unicodeも指定可能になった。 

(過去の作品の対応は未定) 

 目次情報がない。 

 長文の大作を電子化するにあたり、目次が まったくないのは辛い。 

 行あたりの文字数情報の欠落

 ・・・金兵衛はただそれだけを吉左衛門の耳にささやいた。

[#改丁]

[#5字下げ]第一章[#「第一章」は大見出し]

[#7字下げ]一[#「一」は中見出し]  七月にはいって、吉左衛門《きちざえもん》は・・・

青空文庫『夜明け前』より

 品質管理 

 テキストチェックは目視が基本 

 機械的なチェックは必須でない

 メンテナンス体制 

 テキストの訂正・更新や関係者・履歴管理が 外部から見えにくい。 

 誤記があっても、修正に時間がかかる。

 品質管理体制や責任体制は?(ボランティア ベース)

(7)

 外字用例の蒐集 

 外字注記辞書の整

理 

 外字注記とUCS漢

字の対応表の作成 

 頒布 

 UCSの漢字統合基 準(UCV)を活用。 

http://kanji‐database.sourceforge.net/  aozora/gaiji.html

 UCS未符号化文字 

 GlyphWikiで作字 してフォント公開 

http://glyphwiki.org/wiki/Group:青空文庫外字

約70文字

 青空文庫の注記 

 外字・ルビ・文字修飾・段落注釈などの様々 な記法が混じり、依存関係が複雑。 

 ある入力データが、青空文庫の注記として正 しいかを機械的に判断しにくい。 

 (XML仕様書では、EBNFと制約条件によって、 厳密に適合性を定義。) 

 記法が時々変更され、その際に過去との互換 性がなくなる。(過去作品はそのまま) 

(8)

 正規言語? 

 青空文庫の注記は入れ子になる。 

 反復補題により、正規言語で表現できない。 

 より上位の表現が必要 

 候補を2つ考慮 

 文脈自由文法(Context Free Grammar) 

 解析表現文法(Parsing Expression  Grammar

文脈自由文法(言語) 解析表現文法 歴史 40年 

(2000年?) 8年

種別 生成文法 分析文法

字句化 必要(Lex相当) 不要 曖昧性 あり(遷移・還元衝突

など) ない

メモリ 少(構文木深さ) 大(入力長) 両文法ともに、ほぼ全てのコンピュータ言語を 表現できるが、マーク付け言語には、字句化が 不要なのは便利。→解析表現文法

 注記を文法化 

 プログラム言語の依存から脱却 

 パーザの簡素化・信頼性向上 

 入力テキストの適合性検証の実現 

 注記自体の曖昧さの検出 

 注記の解析表現文法による表記 

 「組版案内」で不明な部分は、既存作品での 例を調査して方針を決定。

(9)

 文字の文法

 文字修飾の記法

 行の記法

(10)

 段落の記法

 青空文庫の課題 

 外字問題 

 注記処理問題 

 目次問題 

 管理問題 

 これらを解決し、青空文庫データを効率 的・確実にEPUBへ変換することを試みる。 

 青空文庫注記の現在の記法に沿わない部 分を、オープンソースの手法で修正。

青空文庫  Webサイト 

データ Master枝  オリジナル

Fix 修正版 

第三者の修正  枝作成

フォーク 修正

プル要求 マージ

マージ

定期的に更新

GitHub

(11)

 青空文庫を電子書籍化しやすいよう、目 次情報をCSVで電子化を試みる。 

 ・・・金兵衛はただそれだけを吉左衛門の耳にささやいた。

[#改丁]

[#5字下げ]第一章[#「第一章」は大見出し]

[#7字下げ]一[#「一」は中見出し]  七月にはいって、吉左衛門《きちざえもん》は・・・ 作品番号, レベル1見出しの正規表現, レベル2見出しの正規表現…  1504,"^[#5字下げ]\(.+?\)[#「.+?」は大見出し]","[#7字 下げ]\(.+?\)[#「.+?」は中見出し]"

第1レベル見出し 第2レベル見出し

 青空文庫のデータを、HTML/LaTeX/IDML へ変換する。 

青空文庫  テキスト 

パーザ データ 格納部

HTML LaTeX

IDML この部分は  モジュール化 解析表現文法パーザ使用 

実コードはほぼなし。 これらの処理部は分離

http://github.com/kawabata/aozora‐proc

目次・外字データ 

 eeepub 

(https://github.com/jugyo/eeepub) 

 Ruby DSL による、epub自動生成プログラム 

 CSS3対応HTMLデータを、epubへ変換。 

 膨大なHTMLデータを一括変換が可能。   試験変換結果→ 

 http://www.meadowy.org/~kawabata/branch 

 EPUB3への対応はまだ 

(12)

 青空文庫のテキスト資産の活用 

 注記・外字・管理体制等で幾つか課題 

 青空文庫をEPUB・LaTeX・IDML等の様々 な書式へ変換する手法の構築 

 オープンソース手法の、電子テキスト開 発への適用を模索中。 

協力者募集中! 

参照

関連したドキュメント

「文字詞」の定義というわけにはゆかないとこ ろがあるわけである。いま,仮りに上記の如く

 オランダ連合東インド会社による 1758 年の注文書 には、図案付きでチョコレートカップ 10,000 個の注 文が見られる

[r]

日臨技認定センターの認定は 5 年毎に登録更新が必要で、更新手続きは有効期間の最終

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

該当お船積みの Invoice company のみが閲覧可能と なります。Booking 時に Invoice company をご指定くだ さい。ご指定ない場合は、自動的に Booking Party =

) ︑高等研