ForgejoでRe:View(.re)をPreviewする設定方法
このエントリでは、
ForgejoでRe:View(.re)のPreviewを行う設定方法を示します。
本エントリは、以下の記事を参考にしています。
Forgejoのセットアップは、過去のエントリを参照ください。
UbuntuLinuxにForgejoをセットアップする手順
https://takemikami.com/2024/03/18/UbuntuLinuxForgejo.html
試した環境:
- Ubuntu Linux 22.04.3
- Forgejo 1.21.7
- Re:View 5.10.0
Re:Viewのインストール
ForgejoでRe:View(.re)を表示するために、
review-compileを利用するので、Re:Viewをインストールします。
S以下コマンドでRubyをインストールします。
sudo apt install ruby
以下のコマンドで、
forgejoの実行ユーザに、Re:Viewをインストールします。
※ここではforgejoの実行ユーザはforgejoとしています。
sudo su - forgejo
gem install --user-install review
Forgejoにrender commandを設定
以下のドキュメントを参考に、render commandを設定します。
Markup (markup) | Forgejo
https://forgejo.org/docs/latest/admin/config-cheat-sheet/#markup-markup
review-compileを呼び出すシェルスクリプトを用意します。
# review-compileでは、対象ファイルの拡張子が「re」であることが前提ですが、
# forgejoのrender commandから渡されるファイルは拡張子が付いていないので、
# reという拡張子を付ける処理を施します。
/var/lib/forgejo/.local/bin/render-review-html.sh
#!/bin/sh
TMP_FILE=$1
mkdir ${TMP_FILE}_d
cp $TMP_FILE ${TMP_FILE}_d/preview.re
cd $(dirname ${TMP_FILE}_d/preview.re)
/var/lib/forgejo/.local/share/gem/ruby/3.0.0/bin/review-compile --target=html preview.re
rm ${TMP_FILE}_d/preview.re
rmdir ${TMP_FILE}_d
Forgejoの設定ファイルに、
reのrender commandとして先ほどのスクリプトを指定します。
custom/conf/app.ini への追記内容
[markup.review]
ENABLED = true
FILE_EXTENSIONS = .re
RENDER_COMMAND = "/var/lib/forgejo/.local/bin/render-review-html.sh "
IS_INPUT_FILE = true
RENDER_CONTENT_MODE = sanitized
※ここではforgejoのホームディレクトリは/var/lib/forgejo
としています。
設定ファイルを修正したら、forgejoを再起動し反映します。
sudo systemctl restart forgejo
ブラウザからForgejoで.reファイルを開くと、previewが表示されます。
# どのページを開いても1章になる、画像が表示されない等の問題はありますが、
以上。