日々是好日

プログラミングについてのあれこれ、ムダ知識など

私の Re:VIEW 3.0 対応(参考)

Re:VIEW 3.0 がリリースされ、 kmuto さんにもいろいろとご教授いただいたので対応まとめ。ご参考まで。

  1. 既存の Re:VIEW 2 系文書の 3 系移行
  2. 新規の Re:VIEW 3 系文書の生成(ReVIEW-Template ベース)

どちらも必要なことはだいたい同じ。
なお細かい配置や装飾等は全然わからないので、問題があったら kmuto さんに Issue 投げてくだせい。 とても優しく対応していただけました。

環境

初めての Issue 投げてみた: Re:VIEW 2.5 で作成したプロジェクトが 3.0 で PDF コンパイルできない · Issue #1272 · kmuto/review · GitHub

何が必要か

旧フォルダは必ずバックアップを取っておくこと(最重要)

  • sty ファイル, config.yml の更新
  • layouts フォルダの中身を空にする

sty ファイル, config.yml の更新

~\articles\ に移動して review-update を実行する。 いろいろ聞かれるけど基本 Yes でいいと思います。それ以外やりようないし…。

あるいは、Re:VIEW バージョンを確認したうえで……

$ review version
3.0.0

review-init を実行し、生成されたフォルダに旧 re ファイル、自前で書く必要がある部分を移植するのでもいい。 こっちのほうが気楽かもしれない。

ちょっとハマったのが、 ReVIEW-Template 特有の techbooster-doujin.sty の取り扱いについて。
kmuto さんによると、

2.5系Techboosterスタイルのままreview_version 3.0およびreview-jsbookで使いたい
→ いろいろ古すぎてこれは不可能

とのことなので、 review-init で生成した config.yml と同様のデフォルトのスタイル( reviewmacro.sty )を適用する必要がある。

# config.yml ファイル
texstyle: "techbooster-doujin"
 ↓
texstyle: ["reviewmacro"]

まぁ sty ファイルの記述をマスターされている方なら好きに作ればいいって話ですが……。

layouts フォルダの中身を空にする

layout.tex.erb というファイルがあると思いますが、3.0 系では基本使用しないそうなので消しちゃいます。

これで基本的には $ review-pdfmaker config.yml は通るはず。 もし表紙(正確には大扉)を TeX で記述していた場合はもうひと手間必要となる。

カスタム大扉の作成

Re:VIEW 2 系では、 ~/articles/cover.tex などとして TeX 記法で大扉を記述、 これを config.ymlcover: cover.html として記述することで大扉が差し替えられていたが、 3.0 系になって少し変わったっぽい。

cover.tex は特にいじらず、

# config.yml
titlefile: cover.tex

とすると差し替えられる。 cover 要素はコメントアウトで OK 。

打消し線の設定

最後にダメ押しで打消し線(@<del>{body})の設定。拙者どれだけ打消し線好きなんだよ。

今までは techbooster-doujin.sty呪文を記述していたが、使用しなくなってしまったので sty/review-custom.sty ファイルに記述する。

# review-custom.sty
% for user-defined macro
\usepackage{jumoline}
\renewcommand{\reviewstrike}[1]{\Midline{#1}}

ユーザ定義マクロとして追加すればいいっぽい。 jumoline.sty は sty フォルダに入っているので、打消し線の高さの微調整は今まで通り可能。

P.S.

コンパイル通らなかったらこのブログではなく kmuto 先生まで(逃

追記(2019-02-19)

やった方が整うけど、いろいろいじらなければならないので自己責任案件。 下記のファイル以外の部分も更新しないとならないかも、です。

ReVIEW-Template や Re:VIEW の Issue 等を熟読し、 reviewmacro にて下記を追加。

\RequirePackage("review-style")
...
% ↓追加!
\RequirePackage("techbooster-doujin")
...

そのうえで、techbooster-doujin.sty の記述を、次を参考に修正。

Re:VIEW 3.0対応 by kmuto · Pull Request #22 · TechBooster/ReVIEW-Template · GitHub

この中で、\renewcommand{reviewimagecaption} コマンドが未定義(まだ gem 化されていないため)なので、 \newcommand{reviewimagecaption} に書き換えればとりあえずイケる。

ページ番号が中央ぞろえになったり、通しノンブルをふったり等、従来の techbooster-doujin っぽくなります。 ただしまだまだ改良中なので、どうしても早くサンプル作りたい人向けです。