2022/6/29 by @kmuto

Re:VIEW 5.5 での変更点

Re:VIEW 5.5 において 5.4 から変更した点について解説します。


2022年6月29日に、Re:VIEW 5 系のマイナーバージョンアップである「Re:VIEW 5.5.0」をリリースしました。

今回のバージョン 5.5 は、不具合の修正と、節・項参照機能の強化を行いました。


既知の問題

現時点ではありません。


インストール

新規インストールの場合

$ gem install review

更新の場合

$ gem update review

既存プロジェクトのバージョンアップ追従

既存のプロジェクトを 5.5 に更新するには、Re:VIEW 5.5 をインストール後、プロジェクトフォルダ内で review-update コマンドを実行してください。

$ review-update
** review-update はプロジェクトを 5.5.0 に更新します **
config.yml: 'review_version' を '5.0' に更新しますか? [y]/n 
プロジェクト/sty/review-base.sty は Re:VIEW バージョンのもの (/var/lib/gems/2.7.0/gems/review-5.5.0/templates/latex/review-jsbook/review-base.sty) で置き換えら
れます。本当に進めますか? [y]/n 
プロジェクト/sty/review-jsbook.cls は Re:VIEW バージョンのもの (/var/lib/gems/2.7.0/gems/review-5.5.0/templates/latex/review-jsbook/review-jsbook.cls) で置き換えられます。本当に進めますか? [y]/n 
完了しました。

続いて、リリースノートをベースに、新規に導入した機能や変更点について理由を挙げながら解説します。

新機能

節や項を参照するインライン命令として、 @<secref> , @<sec> , @<sectitle> を追加しました

節や項の参照にはこれまで @<hd> という命令を用意していましたが、これは「節や項の番号+タイトル」、たとえば「1.2 テスト」というように展開するものです。

章の場合は @<chapref> (章番号+タイトル、例:「1章 入門」)、@<chap> (章番号のみ、例:1章)、@<title> (タイトルのみ、例:入門) という3つのパターンがあるので、これと同じように節や項についても番号だけ、あるいはタイトルだけを展開する命令がほしいという要望を受けて実装しました。

  • @<secref>:これまでの @<hd> と同じく、節や項の番号+タイトル。例:「1.2 テスト」

  • @<sec>:節や項の番号のみ。例:1.2。なお、番号を付けないレベルの項の場合はエラーになります。

  • @<sectitle>:タイトルのみ。例:テスト

ハイパーリンクも有効です。

バグ修正

テストエラーを修正しました

ユーザーには関係がありませんが、自動テストで環境によってはひっかかるところに手当てをしました。

review-update コマンドがエラーになるのを修正しました

作業フォルダを更新する review-update コマンドが、date ライブラリの取り込みができていなくてエラーになっていたようです。しかしこれまで報告がなかったということは、review-update はほぼ使われていない……?(5系は安定していてあまり review-update で更新が必須のものもないですし、3→4→5のようなメジャー更新でない限りは使う必要がないかもしれませんが)

その他

rexml がバンドル gem 扱いになったので、gemspec に追加しました

XML まわりの処理をしている rexml ライブラリですが、変わらず Ruby 標準扱いではあるものの、バンドル gem という扱いになったそうなので、gemspec に入れておくようにしました。

終わりに

今回の Re:VIEW 5.5 は小幅な修正に留まりました。

改善や機能強化したいことはいろいろあるのですが、本業が忙しくて今回はまったく手がつけられませんでしたね……。ブロック命令の文字列返し化をしたいなとかパーサも書き換えたいなとかモヤモヤしますが、そうなると全体を作り変えたほうが…というのと、review-ext.rb が全部ダメになるので悩むところではあります。うむむ。

Enjoy!