しばたテックブログ

気分で書いている技術ブログです。

Windows Subsystem for Linux(Ubuntu)にRe:VIEWをインストールする

github.com

流行りのRe:VIEWを試してみたくなったので手元のWindows 10にインストールしてみました。

Re:VIEW on Windows

Windows上でRe:VIEWを試すには色々な方法があり、公式にはDocker Toolboxを使う方法が紹介されています。
今回私はWindows Subsystem for Linux(WSL)のUbuntu上にRe:VIEWをインストールする方法を採りました。

環境は以下となります。

  • 最新のWindows Updateを適用した64bit版 Windows 10 Pro (1709)
  • WSL上のUbuntu 16.04

Re:VIEWのインストール

本エントリではWSL上のUbuntuを用意する手順は端折ります。
MicrosoftストアからUbuntuをインストールして初期ユーザー設定を済ませた状態をスタート地点とします。

rbenvとRubyのインストール

Re:VIEWはRuby製アプリなので最初にRubyの実行環境を用意します。
以下のドキュメントを参考にしてrbenvとRubyをインストールします。

WSLのUbuntu(bash.exe)を起動し以下のコマンドを順に実行します。
今回はRuby 2.5.0をインストールしました。

# 前準備の apt-get update
sudo apt-get update -y
# rbenvのコンパイルに必要
sudo apt-get install -y gcc make
# Rubyのビルドに必要。バージョンによって変わるやも?
sudo apt-get install -y libssl-dev libreadline-dev zlib1g-dev

# rbenvのインストール
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
chmod go-w -R ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile

# ruby-buildのインストール (rbenv installコマンドに必要)
mkdir -p "$(rbenv root)"/plugins
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build

# Rubyのインストール
#   今回は Ruby 2.5.0をインストール
rbenv install 2.5.0

# システム全体でのデフォルトバージョンを指定
rbenv global 2.5.0

Re:VIEWインストールの前準備

WSL側から見たWindows(/mnt/c/配下のディレクトリ)の任意の場所にRe:VIEW用のディレクトリを作ります。
今回は/mnt/c/Temp/review(C:\Temp\review)を対象します。

# Windows側のディレクトリにファイルを作る
mkdir /mnt/c/Temp/review

Re:VIEWのインストール

前項で作成したディレクトリに移動してrbenvの設定とRe:VIEWのインストールを行います。
インストール自体はgem installでサクッと行けます。

# 移動
cd /mnt/c/Temp/review/

# このディレクトリで利用するRubyのバージョンを設定
rbenv local 2.5.0
# Re:VIEWのインストール
rbenv exec gem install review

(オプション)TeX Liveのインストール

Re:VIEWでPDFのドキュメントを生成する場合システムにTeXがインストールされている必要があります。
(PDFを出力しない場合は不要です)

本エントリでは以下のサイトの手順を参考にTeX Liveをインストールします。

TeX Liveのインストールはapt-get installでも可能ですが、最新のバージョンを使おうと思いネットワークインストーラを使用したインストールにしました。

# TeX Liveのインストール
cd ~
# 今回はJAISTを選んでいますが、ダウンロード先のアドレスはミラーサイトから適当に選んでください
curl -O http://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet/install-tl-unx.tar.gz
tar xvf install-tl-unx.tar.gz
cd install-tl*
sudo ./install-tl --repository http://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet/

# あとはインストーラーの指示に従う。
# 今回はデフォルト設定のままインストール続行。

# インストール後パス追加
sudo /usr/local/texlive/????/bin/*/tlmgr path add

また、現時点のRe:VIEW 2.5.0でソースコードのリストを使う場合、PDF生成時にjlisting.styが不足している旨のエラーが出ます。
こちらは以下のIssueでも認識されておりRe:VIEW 3.0で対処する見込みの様です。

とりあえず現状は公開されているサイトからjlisting.styをダウンロードして追加する必要があるので、以下のコマンドで追加しておきます。

# ソースコードのリストを使う場合はjlisting.styを追加
curl -OL https://ja.osdn.net/projects/mytexpert/downloads/26068/jlisting.sty.bz2
bzip2 -d ./jlisting.sty.bz2
sudo mv ./jlisting.sty /usr/local/texlive/2017/texmf-dist/tex/latex/listings
sudo chmod 644 /usr/local/texlive/2017/texmf-dist/tex/latex/listings/jlisting.sty
sudo mktexlsr

これで一通りのインストールは完了です。

Re:VIEWを試す

最後にインストールしたRe:VIEWを試してみます。

雛形作成

review-initコマンドでドキュメントの雛形を作成できますので適当な名前で作成します。
(今回はsample-docにしました)

cd /mnt/c/Temp/review/

# サンプル作成
review-init sample-doc

Windows側のディレクトリにサンプルを作っているのでVisual Studio Codeから内容を確認することができます。
Re:VIEW拡張をインストールしてればプレビュー表示も可能です。

f:id:stknohg:20180309174342p:plain

(上図ではクイックスタートガイドにあるテキストを試しています)

ドキュメント生成

前項で作成した雛形のルートフォルダでreview-epubmakerreview-pdfmakerコマンドを実行すればEPUBおよびPDFドキュメントを生成できます。
雛形にはRakeの設定も含まれているのでrakeコマンドから生成することも可能です。

cd /mnt/c/Temp/review/sample-doc/

# EPUB生成
review-epubmaker config.yml
# rake epub でも良い

# PDF生成
review-pdfmaker config.yml
# rake pdf でも良い

生成されたEPUBとPDFは以下の様な感じになりました。

f:id:stknohg:20180309174416p:plain

f:id:stknohg:20180309174425p:plain

とても良い感じですね。