FAQ - Re:VIEW そのものについて

FAQ(よくある質問と回答)のこのセクションは、直接に Re:VIEW の利用には関わらない内容を記しています。


Re:VIEW はなんと発音するのですか?

「りびゅー」といいます。

Re:VIEW とは何ですか?

Re:VIEW は、主に書籍制作向けのテキストマークアップ言語仕様、およびその変換システムです。指定の記法で記述した原稿ファイルを、HTML、LaTeX、InDesign 用 XML、プレインテキストなどに変換することができます。さらに、HTML を使った EPUB、LaTeX 環境を経由した PDF をそれぞれコマンド1つで作成可能です。

Re:VIEW の Web サイトはどこですか?

Re:VIEW は誰のためのソフトウェアですか?

主なターゲットは、書籍の編集者や著者・訳者です。

より狭義には、Re:VIEW を開発しているチームのメンバーたちがそれぞれ自身のドキュメント制作・管理の効率を上げるためのソフトウェアです。

実際、誰が使っていますか?

技術書分野を中心に、制作会社、出版社、同人誌制作者など広く使われています。

自己申告をもとに GitHub の wiki にて、利用実績 をまとめています。

Re:VIEW は誰が作っていますか?

Re:VIEW は、青木峰郎(@mineroaoki)によって設計・開発されました。その後、武藤健志(@kmuto)が開発を引き継ぎ、高橋征義(@takahashim)、角征典(@kdmsnr)が加わったチームで開発を続けています。

Re:VIEW はいつ作られましたか?

記録によると 2002 年に作成されました。

Re:VIEW のソースコードは公開されていますか?

GitHub のパブリックリポジトリ上で開発しており、ソースコードおよび開発プロセスはすべて公開されています。

https://github.com/kmuto/review

個々の改良は issue と PR が中心ですが、年に数回、開発チームや関心の深いユーザーが face-to-face で集まって大きな方針の策定や次期バージョンの機能目標の設定などを行います。

Re:VIEW のリリーススケジュールはどうなっていますか?

大まかには毎年「2月」「6月」「10月」の月末にリリースすることにしています(開発状況によって前後することがあります)。

具体的には、ニュースリリースに修正内容をまとめ、バージョン番号を更新し、新たな gem パッケージを RubyGems に公開してダウンロードできるようにします。

開発の先端は常に GitHub の master ブランチです。

Re:VIEW のバージョンルールはどうなっていますか?

「メジャーバージョン.マイナーバージョン.フィクスバージョン」となります。

  • メジャーバージョン:後方互換性を大きく損ねることも覚悟した大きな更新です。Re:VIEW ソフトウェアは書籍制作向けという性質上、新たなバージョンでも後方互換性はできるだけ保持しようとしていますが、それが改良の大きな足枷となる場合には互換性を破棄することもあります。
  • マイナーバージョン:基本的に後方互換性を保持した更新です。新機能の導入と、既存の不具合の修正を中心とします。
  • フィクスバージョン:リリース後に発見された重大な不具合のみを修正します。

2019年3月時点で、安定版は「3.1.0」です。

バージョンごとの機能差異はどこかにまとまっていますか?

Re:VIEW は何の言語で書かれていますか?

Ruby 言語で書かれています。2019年1月時点では、Ruby 2.1 以上を想定しています。

Ruby 実装との完全な互換性はありませんが、JavaScript による実装も存在します。https://github.com/vvakame/review.js

Re:VIEW の開発に参加したいですがどうしたらよいですか?

まずは、https://github.com/kmuto/review への issue 登録や PR から始めてみるとよいでしょう。

issue での説明は日本語または英語で書いてください。

「Re:VIEW」という名前は検索しづらいです。変えるべきではないですか?

過去に一度「ReVIEW」から「Re:VIEW」としましたが、むしろ検索精度は悪化しました。

名前を変えることには「絶対に固有で国際的にネガティブなイメージもない妥当な名前を選ぶ」「プロジェクト名を変更する」「新しい名前を周知する」などいろいろなエネルギーが必要ですが、変更で得られる利益に見合わないと考えます。

Re:VIEW は TeX ですか? あるいは TeX に置き換わるものなのですか?

いいえ。

TeX(LaTeX)は Re:VIEW 形式ファイルからの変換先の1つです。ただし LaTeX 変換・LaTeX コンパイル・PDF 生成までを一括で実行する review-pdfmaker というコマンドは用意しています。

Re:VIEW の「主要なビルダ」とは何ですか?

ビルダは Re:VIEW 形式の原稿ファイルを「HTML」や「LaTeX」などに変換する変換器のことです。現在いくつものビルダが Re:VIEW プログラムに収録されていますが、そのうち、以下のビルダを「主要なビルダ」としています。

  • HTML
  • LaTeX
  • TOP(テキスト)
  • IDGXML(InDesign XML)

Re:VIEW ソフトウェアに新たな命令を追加したり既存の挙動を変更したりする場合は、これらの主要なビルダすべてでエラーとならずに動作することが求められます。

また、主要なビルダはテストケースを豊富に用意しているため、コードロジックの変更による意図せぬ挙動の破壊は起きにくくなっています。

なぜ便利な「○○.gem」を使わないのですか?

Re:VIEW の開発スタンスとして、外部のツールやライブラリへの依存はできるだけ避けています。中核はあくまでも Ruby の基本ライブラリの範囲で実現します。

その代わり、コードハイライトのように「必須ではないが、より便利になる」オプショナルな機能については gem などの外部ライブラリの使用を許容しています。

Re:VIEW は日本語でしか使えませんか?

現時点で実績がさほどあるわけではありませんが、国際化対応しやすくなるような試みはしています。

たとえば //image を変換したときの「図X.X」の「図」の部分は、ロケールファイルとして切り出しており、config.yml の language パラメータ値に en を指定すれば「Figure 」に変わります。既存の設定ファイルは Re:VIEW プログラムの lib/review/i18n.yml にあり、カスタマイズを行うには、プロジェクトフォルダに locale.yml という名前のファイルで定義します。

ただし、TeX を使った PDF 生成については、提供しているスタイルファイルが日本語 LaTeX 環境を前提としています。他言語で使用するには、スタイルファイルなど広範囲での改変が必要になるでしょう。

なお、Re:VIEW に関するドキュメントについてはできる限り英語でも記述するようにしています。