Re:VIEWの目次
2018年7月、EPUBの目次の連番とPDFの目次の色が気になりましたので、Re:VIEWが生成する目次を変更しました。
Re:VIEWのバージョンは2.5.0です。
>review version 2.5.0
Windows10に書籍執筆支援システム「Re:VIEW」をインストールして使用しています。
EPUB ふたつの目次
EPUB3には、ふたつの目次があります。
- 視覚的な目次 : HTMLで記述した本文中の目次ページ
- 論理的な目次 : 専用UIで表示するシステム用の目次
視覚的な目次は、本の先頭部に配置した普通の目次なのでページ移動するには本の先頭に戻らなければなりません。それに対して論理的な目次は、ナビゲーション機能でどのページからでも直接アクセスできページ移動ができます。
Windows10のMicrosoft EdgeでEPUBを表示したとき、視覚的な目次は次のように表示します。
ナビゲーションバーの目次をクリックすると、論理的な目次を表示します。
フリー・アンド・オープンソースの電子書籍ソフトウェアCalibreでEPUBを表示したとき、視覚的な目次は次のように表示します。
ナビゲーションバーの目次をクリックすると、論理的な目次を表示します。
Re:VIEWの目次生成
Re:VIEWのEPUB3目次生成の制御は、config.ymlで行います。
キーワード | 意味 |
---|---|
toclevel: | 目次抽出の見出しレベル |
toc: | 目次ページ生成(true:する、null:しない) |
toc:指定 | true | null |
---|---|---|
視覚的な目次 | ○:有り | ×:無し |
論理的な目次 | ○:有り | ○:有り |
生成したEPUBファイルの構成を確認します。
EPUBファイルは、コンテンツをZIP圧縮したものです。
- mimetype : EPUBのメディアタイプを記述
- META-INF
- container.xml : パッケージドキュメントの形式と格納位置
- OEBPS
- book.opf : パッケージドキュメント
- book-toc.xhtml : 目次
- *.xhtml : コンテンツドキュメント
- style.css : スタイルシート
book-toc.xhtmlが目次です。EPUB3では、「論理的な目次」と「視覚的な目次」をひとつのファイルで兼用します。視覚的な目次の有無は、パッケージドキュメント(.opf)からの参照の有無によります。
EPUB目次の連番
Re:VIEWでEPUB目次を生成すると、目次に連番を付与します。
第1章などの前に付与する連番は不要だと思います。Re:VIEWの設定項目などを探したのですが、この連番を制御する方法がわかりません。
EPUBのOEBPS>book-toc.xhtmlソースコードを参照します。
<ol class="toc-h1"> <li><a href="titlepage.xhtml">大扉</a></li> <li><a href="00_preface.xhtml">はじめに</a> <ol class="toc-h2"> <li><a href="00_preface.xhtml#h-1">免責事項</a></li> </ol> </li> <li><a href="01_chapter.xhtml">第1章 はじめてのRe:VIEW</a> <ol class="toc-h2"> <li><a href="01_chapter.xhtml#h1-1">1.1 Re:VIEWとは</a></li> <li><a href="01_chapter.xhtml#h1-2">1.2 Re:VIEWの文書変換</a></li> </ol> </li> <li><a href="02_chapter.xhtml">第2章 Re:VIEWのステップアップ</a> <ol class="toc-h2"> <li><a href="02_chapter.xhtml#h2-1">2.1 Re:VIEWの設定</a></li> </ol> </li> <li><a href="09_postface.xhtml">あとがき</a> <ol class="toc-h2"> <li><a href="09_postface.xhtml#h-1">著者紹介</a></li> </ol> </li> <li><a href="colophon.xhtml">奥付</a></li> </ol>
<ol>→<li>のネスト形式で目次を生成しているのでHTML連番付きの箇条書きとなり、目次に連番を付与します。
<ol>は、目次のレベルによりclass指定があります。classを指定してリストスタイルを変更することにより、この連番をスタイルシートで制御できます。
スタイルシートは、config.ymlで指定します。
# CSSファイル(配列で複数指定可) stylesheet: ["style.css"]
スタイルシートstyle.cssに下記コードを追加します。
/* for Navigation file*/ ol.toc-h1, ol.toc-h2, ol.toc-h3 { list-style-type: none; }
目次クラスについて「list-style-type:none」とすることにより、マーカー(連番)の表示を抑止します。
目次の連番が消えました。普通の目次はこの形式ですよね。
PDF目次の色
Re:VIEWでPDF目次を生成すると、目次が赤色になります。
赤色は校正チェックなどの赤ペンのイメージがあるので、別の色に変更したいと思います。
LaTeXのスタイルを変更します。スタイルファイルは、config.ymlのtexstyle:キーワードで指定しします。
# LaTeX用のスタイルファイル(styディレクトリ以下に置くこと) texstyle: reviewmacro
TeXのスタイルはreviewmacroに記述するので、sty/reviewmacro.styに次の文を追加します。
%% make TOC blue color \hypersetup{ colorlinks=true, linkcolor=blue }
linkcolorを青色に変更します。
目次の色を青色に変更しました。
まとめ
書籍執筆支援システム「Re:VIEW」の目次を変更しました。Re:VIEWシステムの設定変更ではなく、スタイルの変更で対応できました。
EPUBの目次の連番とPDFの目次の色については、ほとんどの人が気になる点だと思います。review-initで生成するサンプルのスタイルに最初から対応してほしいと思いました。