doc/format.ja.md in review-5.0.0 vs doc/format.ja.md in review-5.1.0
- old
+ new
@@ -1,10 +1,10 @@
# Re:VIEW フォーマットガイド
Re:VIEW フォーマットの文法について解説します。Re:VIEW フォーマットはアスキー社(現カドカワ)の EWB を基本としながら、一部に RD や各種 Wiki の文法を取り入れて簡素化しています。
-このドキュメントは、Re:VIEW 5.0 に基づいています。
+このドキュメントは、Re:VIEW 5.1 に基づいています。
## 段落
段落(本文)の間は1行空けて表現します。空けずに次の行を記述した場合は、1つの段落として扱われます。
@@ -343,20 +343,20 @@
5. <imgdir>/<chapid>-<id>.<ext>
6. <imgdir>/<id>.<ext>
```
* `<imgdir>` はデフォルトでは images ディレクトリです。
-* `<builder>` は利用しているビルダ名(ターゲット名)で、たとえば `--target=html` としているのであれば、images/html ディレクトリとなります。
+* `<builder>` は利用しているビルダ名(ターゲット名)で、たとえば `--target=html` としているのであれば、images/html ディレクトリとなります。各 Maker におけるビルダ名は epubmaker および webmaker の場合は `html`、pdfmaker の場合は `latex`、textmaker の場合は `top` です。
* `<chapid>` は章 ID です。たとえば ch01.re という名前であれば「ch01」です。
* `<id>` は //image[〜] の最初に入れた「〜」のことです(つまり、ID に日本語や空白交じりの文字を使ってしまうと、後で画像ファイル名の名前付けに苦労することになります!)。
* `<ext>` は Re:VIEW が自動で判別する拡張子です。ビルダによってサポートおよび優先する拡張子は異なります。
各ビルダでは、以下の拡張子から最初に発見した画像ファイルが使われます。
* HTMLBuilder (EPUBMaker、WEBMaker)、MARKDOWNBuilder: .png、.jpg、.jpeg、.gif、.svg
* LATEXBuilder (PDFMaker): .ai、.eps、.pdf、.tif、.tiff、.png、.bmp、.jpg、.jpeg、.gif
-* それ以外のビルダ: .ai、.psd、.eps、.pdf、.tif、.tiff、.png、.bmp、.jpg、.jpeg、.gif、.svg
+* それ以外のビルダ・Maker: .ai、.psd、.eps、.pdf、.tif、.tiff、.png、.bmp、.jpg、.jpeg、.gif、.svg
### インラインの画像挿入
段落途中などに画像を貼り込むには、インライン命令の `@<icon>{識別子}` を使います。ファイルの探索ルールは同じです。
@@ -610,23 +610,32 @@
インライン命令では `@<m>{〜}` を使います。インライン命令の式中に「}」を含む場合、`\}` とエスケープする必要があることに注意してください(`{` はエスケープ不要)。「インライン命令のフェンス記法」も参照してください。
LaTeX の数式が正常に整形されるかどうかは処理系に依存します。LaTeX を利用する PDFMaker では問題なく利用できます。
-EPUBMaker および WEBMaker では、MathML に変換する方法と、画像化する方法のどちらかを選べます。
+EPUBMaker および WEBMaker では、MathML に変換する方法、MathJax に変換する方法、画像化する方法から選べます。
### MathML の場合
MathML ライブラリをインストールしておきます(`gem install math_ml`)。
さらに config.yml に以下のように指定します。
```
-mathml: true
+math_format: mathml
```
なお、MathML で正常に表現されるかどうかは、ビューアやブラウザに依存します。
+### MathJax の場合
+config.yml に以下のように指定します。
+
+```
+math_format: mathjax
+```
+
+MathJax の JavaScript モジュールはインターネットから読み込まれます。現時点で EPUB の仕様では外部からの読み込みを禁止しているため、MathJax を有効にすると EPUB ファイルの検証を通りません。また、ほぼすべての EPUB リーダーで MathJax は動作しません。CSS 組版との組み合わせでは利用できる可能性があります。
+
### 画像化の場合
LaTeX を内部で呼び出し、外部ツールを使って画像化する方法です。画像化された数式は、`images/_review_math` フォルダに配置されます。
TeXLive などの LaTeX 環境が必要です。必要に応じて config.yml の `texcommand`、`texoptions`、`dvicommand`、`dvioptions` のパラメータを調整します。
@@ -637,11 +646,11 @@
- `dvipng`:[dvipng](https://ctan.org/pkg/dvipng) を使用します。OS のパッケージまたは `tlmgr install dvipng` でインストールできます。数式中に日本語は使えません。
config.yml で以下のように設定すると、
```
-imgmath: true
+math_format: imgmath
```
デフォルト値として以下が使われます。
```
@@ -672,22 +681,22 @@
```
たとえば SVG を利用するには、次のようにします。
```
-imgmath: true
+math_format: imgmath
imgmath_options:
format: svg
pdfcrop_pixelize_cmd: "pdftocairo -svg -r 90 -f %p -l %p -singlefile %i %o"
```
デフォルトでは、pdfcrop_pixelize_cmd に指定するコマンドは、1ページあたり1数式からなる複数ページの PDF のファイル名を `%i` プレースホルダで受け取り、`%p` プレースホルダのページ数に基づいて `%o`(拡張子あり)または `%O`(拡張子なし)の画像ファイルに書き出す、という仕組みになっています。
単一のページの処理を前提とする `sips` コマンドや `magick` コマンドを使う場合、入力 PDF から指定のページを抽出するように `extract_singlepage: true` として挙動を変更します。単一ページの抽出はデフォルトで TeXLive の `pdfjam` コマンドが使われます。
```
-imgmath: true
+math_format: imgmath
imgmath_options:
extract_singlepage: true
# pdfjamの代わりに外部ツールのpdftkを使う場合(Windowsなど)
pdfextract_cmd: "pdftk A=%i cat A%p output %o"
# ImageMagickを利用する例
@@ -697,22 +706,22 @@
```
textmaker 向けに PDF 形式の数式ファイルを作成したいときには、たとえば以下のように設定します(ページの抽出には pdftk を利用)。
```
-imgmath: true
+math_format: imgmath
imgmath_options:
format: pdf
extract_singlepage: true
pdfextract_cmd: "pdftk A=%i cat A%p output %o"
pdfcrop_pixelize_cmd: "mv %i %o"
```
Re:VIEW 2 以前の dvipng の設定に合わせるには、次のようにします。
```
-imgmath: true
+math_format: imgmath
imgmath_options:
converter: dvipng
fontsize: 12
lineheight: 14.3
```
@@ -1011,9 +1020,11 @@
* `@<tt>{〜}` : 等幅にします。
* `@<tti>{〜}` : 等幅+イタリックにします。
* `@<ttb>{〜}` : 等幅+太字にします。
* `@<code>{〜}` : 等幅にします(コードの引用という性質)。
* `@<tcy>{〜}` : 縦書きの文書において文字を縦中横にします。
+* `@<ins>{〜}` : 挿入箇所を明示します(デフォルトでは下線が引かれます)。
+* `@<del>{〜}` : 削除箇所を明示します(デフォルトでは打ち消し線が引かれます)。
### 参照
* `@<chap>{章ファイル名}` : 「第17章」のような、章番号を含むテキストに置換されます。
* `@<title>{章ファイル名}` : その章の章題に置換されます。
* `@<chapref>{章ファイル名}` : 『第17章「さらに進んだ話題」』のように、章番号とタイトルを含むテキストに置換されます。