執筆支援システム Re:VIEWでPDF用の索引を作る

Re:VIEWで索引作成

Re:VIEWで索引作成

Re:VIEWで索引を作る

2019年4月、Re:VIEWでPDF用の索引を作成する方法を調べました。環境は、Windows10 WSLにインストールしたUbuntu18.04.2です。TeXは、TeX Live 2018をインストールしています。Re:VIEWのバージョンは、3.1.0です。

WSL Ubuntu18.04に執筆支援システム Re:VIEWをインストール

WSL Ubuntu18.04にTeXをインストール

Amazonから『最強の電子書籍執筆ツール Re:VIEW解説』を出版しました。

索引の使い方

索引の作成は、PDFビルダ(TeX)でのみサポートしています。

公式サイトのドキュメントに「索引の使い方」という説明があります。

【注意】

  • LaTeX の mendex コマンドの実装に依存しているため、 現時点では英語または日本語以外の挙動は不明です。
  • LaTeX ビルダ以外のビルダでは、埋め込んだ索引を利用する手法を提供していません。後述のヒントを参照してください。
  • LaTeX ビルダでの索引生成機能は、デフォルトで無効にしています。設定 YAML ファイルで明示的に有効にする必要があります。

この説明に従って各種設定を行うことによって、PDF索引を作成することができました。

索引語の埋め込み

索引とは、書籍中に出現する語句などを容易に探し出せるように一定の順序に並べてその所在を明確にしたものです。索引として登録する索引語を@<idx>マークアップ、または@<hidx>マークアップで記述して埋め込みます。索引は、この索引語を抽出・整列して作成します。

@<idx>は「索引文字列」を索引に登録して紙面にも現れます。それに対して、@<hidx>は「隠し索引文字列」を索引に登録しますが、紙面には現れません。「隠し索引文字列」は、索引語を“<<>>”で区切ることにより次のように階層化した索引(最大3階層)を作成できます。

  • “索引語”
  • “親索引語<<>>子索引語”
  • “親索引語<<>>子索引語<<>>孫索引語”

サンプル原稿

次のようなサンプル原稿を作成します。

索引作成の概要

LaTeXビルダでは、LaTeXの索引作成用のmemdexコマンドを利用して索引を作成します。

Re:VIEW索引作成の概要

Re:VIEW索引作成の概要

原稿に埋め込んだマークアップから索引語を抽出して、一定の順序に並べて整列します。索引語を整列するためには、その索引語の「読み」が必要となります。読みは、読み方辞書や形態素解析により判定し、LaTeXのmemdexコマンドで読み順に整列して索引を作成します。Re:VIEWにおいては、形態素解析エンジンのMeCabを使用しますので、別途インストールが必要です。

LaTeXビルダでの索引生成機能は、デフォルトで無効です。索引生成機能を使用する場合は、config.yml設定ファイルのmakeindex:パラメーターにより有効に設定します。

MeCabと索引作成

PDFビルドで、索引を作成します。

「not found MeCab」エラーが発生しました。形態素解析エンジンのMeCabをインストールしていませんでした。

形態素解析エンジンMeCabは、読み方判定を行うものです。しかし、「読み」の判定は万能ではありません。例えば、短い単語は音読み・訓読みの違いで期待どおりとはならない場合があります。また、専門用語は読みを正しく解釈できない場合が多いです。

MeCabによる形態素解析は、デフォルトで使用する設定となっています。今回は、形態素解析を使用しない設定にします。config.yml設定ファイルのmakeindex_mecab:パラメーターをnullとします。

PDFビルドで、索引を作成します。

次のようなPDFを作成しました。

Re:VIEW PDF

Re:VIEW PDF

紙の書籍で見るような格好いいスタイルではありませんが索引も作成しました。

PDF索引1

PDF索引1

PDF索引のスタイル

索引ページのスタイルは、mendexコマンドのデフォルトのスタイルで作成します。索引のスタイルを変更するときは、スタイルファイル(拡張子 .ist)を作成して、config.yml設定ファイルのmakeindex_sty:パラメーターでスタイルファイルを指定します。

mendexのスタイルを作成します。

下記にスタイルパラメーターの意味を示します。mendexコマンドやスタイルの詳しい情報は、オンラインマニュアルを参照してください。

スタイルパラメーター説明
項番 パラメーター 説明
1 delim_0 親エントリーと最初のページ番号の間の区切り文字列
2 delim_1 子エントリーと最初のページ番号の間の区切り文字列
3 delim_2 孫エントリーと最初のページ番号の間の区切り文字列
4 symbol_flag 数字・記号の頭文字の出力フラグ
(1:する、0:しない)
5 symbol 数字・記号の頭文字として出力する文字列
6 heading_flag 頭文字の出力フラグ
(0:しない、1:英大文字、-1:英小文字)
7 letter_head 日本語の頭文字の出力フラグ
(0:しない、1:カタカナ、2:ひらがな)
8 heading_prefix 頭文字の前に付けるコマンド文字列
9 heading_suffix 頭文字の後に付けるコマンド文字列

紙の書籍のような格好いいスタイルの索引を作成しました。

PDF索引2

PDF索引2

読み方判定

索引をよく見ると「固定レイアウト」という索引語が「り」の索引分類に現れています。これは、「固定レイアウト」は漢字で読み方が不明なのが原因です。

形態素解析MeCabによる「読み」の判定を使用しない設定としています。MeCabを利用せずに読み方辞書により読み方判定を行うようにします。

読み方辞書は、デフォルトで使用しない設定となっています。読み方辞書を使用する場合は、config.yml設定ファイルのmakeindex_dic:パラメーターにより使用する辞書のパス名を設定します。読み方辞書に“myindex.dic”を登録します。

読み方辞書は、1列目に熟語、2列目に読みを列挙したスペース(または、タブ)区切り形式のテキストファイルです。

PDFビルドで、索引を作成します。

「固定レイアウト」という索引語が「こ」の索引分類に現れました。

PDF索引3

PDF索引3

まとめ

Re:VIEWのPDFビルドで索引を作成することができました。形態素解析(MeCab)を使用せずに、読み方辞書により索引を作成しました。TeXに不慣れのでMendexの使用経験も無かったので索引のスタイル設定を調べるのに手間取りました。

Re:VIEWは、PDFビルダでTeXを利用して索引付きのPDFを簡単に作成できるので素晴らしいシステムです。