Re:VIEW(EPUB)で目次の大扉・奥付を消す方法

Re:VIEWの目次

Re:VIEWの目次

目次の大扉・奥付を消す

2018年12月、Re:VIEWのEPUB生成による目次の大扉・奥付を国際化(i18n)の定義で消しました。

Re:VIEWのバージョンは2.5.0です。

>review version
2.5.0

Windows10に書籍執筆支援システム「Re:VIEW」をインストールして使用しています。

Windows10に Re:VIEW 執筆支援システムをインストールする方法

目次の大扉・奥付

review-initで作成したひな形のデフォルトでは、目次と奥付を生成しません。

config.ymlを修正して、奥付を生成するようにします。

# 奥付を作成するか。デフォルトでは作成されない。
# colophon: null
  ↓
colophon: true

config.ymlを修正して、目次を生成するようにします。

# 本文中に目次ページを作成するか。省略した場合はnull (作成しない)
# toc: true
  ↓
toc: true

スタイルシートで目次に付与される余計な連番を消します。

/* =========================================
 * 目次の連番なし 
 * =========================================
 */
ol.toc-h1, ol.toc-h2, ol.toc-h3 {
    list-style-type: none;
}

EPUBで生成した目次を確認します。

目次 (日本語)

目次 (日本語)

目次の最初に現れる「大扉」と最後に現れる「奥付」に違和感があります。出版に関して素人の私は、「大扉(おおとびら)」「奥付(おくづけ)」という言葉を知りませんでした。

【 大扉 】書籍の巻頭につく表題紙。通常は本の題名、著者名、出版社名が入る。
【 奥付 】本の巻末によくある、書名、著者、発行者、印刷者、出版年月日等を書いている部分です。

そもそも、大扉や奥付を生成しなければ目次に「大扉」「奥付」が現れることはありません。しかし、大扉や奥付があった方が本としての形が良いのです。目次に「大扉」「奥付」を入れない方法がないか調べました。

国際化(i18n)とは

Re:VIEW フォーマットガイド}に次のように記載があります。

Re:VIEW が出力する文字列(「第◯章」「図」「表」など)を、指定した言語に合わせて出力することができます。デフォルトは日本語です。

「第◯章」を「chapter◯」とかに変更する機能なので、あまり関係ないと詳しく調べていませんでした。あるとき、この機能をうまく使えると気づきました。


国際化(i18n)

国際化(i18n)

国際化(i18n)の機能は、内部に持っている国際化の辞書(lib/review/i18n.yml)をconfig.ymlの「language: ja」で日本語(ja:)/英語(en:)に切り替えます。

国際化辞書は、WindowsのRubyの場合は「\Ruby25-x64\lib\ruby\gems\2.5.0\gems\review-2.5.0\」以下にあります。

日本語でEPUB生成した目次と英語でEPUB生成した目次を比べてみます。

「目次」「大扉」「章」「奥付」が「Table of Contents」「Title Page」「Chapter」「Colophon」に変わっています。

原稿を置いているディレクトリーにlocale.ymlというファイルを用意すると、国際化辞書の定義を変更できます。

「第◯章」だけを「Chapte ○」に変更してみます。

locale: ja
chapter: "Chapter %d"

EPUB生成結果を比べてみます。

「章」が「Chapter」に変わり、その他は変化していません。

目次の大扉を変更

locale.ymlで国際化辞書の「大扉」の言葉を”タイトルページ”に変更します。

locale: ja
titlepagetitle: "タイトルページ"
目次 (大扉をタイトルページに変更)

目次 (大扉をタイトルページに変更)

うまく変わりました。

目次の大扉・奥付を消す

locale.ymlで国際化辞書のtitlepagetitle:(大扉)とcolophontitle:(奥付)の言葉を空文字にすると目次から消えるかもしれないと試してみました。

locale: ja
titlepagetitle: ""
colophontitle: ""
目次 (大扉と奥付を消す)

目次 (大扉と奥付を消す)

これで希望どおりです。
大扉・奥付を生成しても、目次に「大扉」「奥付」を入れない方法がみつかりました。

Re:VIEWで生成したEPUBの内容を解析してみます。EPUBをzip解凍して、目次(OEBPS>book-toc.xhtml)のコードを確認します。

 <li><a href="titlepage.xhtml">大扉</a></li>
 <li><a href="colophon.xhtml">奥付</a></li>
    ↓
 <li><a href="titlepage.xhtml"></a></li>
 <li><a href="colophon.xhtml"></a></li>

大扉は、titlepage.xhtmlのリンクを生成していますが、アンカーテキストが「大扉」から空文字に変わりました。
奥付は、colophon.xhtmlのリンクを生成していますが、アンカーテキストが「奥付」から空文字に変わりました。


しかし、アンカーテキストが空文字なのはEPUB仕様を満たしているのか調べる必要があります。Kindleの.mobiに変換するとき、エラーとなりました。

警告(prcgen):W30009: Epub ナビゲーションファイルは仕様を辿ってません。
Epub3 ナビゲーションサポートの使用については、Kindle 出版ガイドラインをご参照ください。
タグ <a> には値が入っている必要があります

まとめ

書籍執筆支援システム「Re:VIEW」の目次から大扉・奥付を消すことができました。

Re:VIEWは、素晴らしい書籍執筆支援システムです。いろいろ気になる点が自分好みに変更できます。
残念なのは、ドキュメントがしっかりそろっていないところです。いろいろ試して、ノウハウを見つけるのが、また楽しいですね。