Slim という Ruby 製テンプレートエンジンのお世話になっている人も少なくないと思う。私も愛用している。
GitHub リポジトリーはこちら:
Rails などで HTML の生成に使われることが多いと思うが,HTML のほか XML の生成にも適しており,私は SVG なんかも Slim で書いている。
もしかしてメンテ停止?
Slim の最新版は 2020 年 5 月 8 日にリリースされた 4.1.0 で,2 年ほど新しいバージョンが出ていない。
とはいえ,Slim は私の印象では完成度が高く,2 年くらい新しいのが出てなくてもとくに不安にはならなかった。
ところが,ちょっとした改善要望(後述)を issue にしようとリポジトリーを訪れて,「えっ?」と思った。
最後のコミットが 2020 年 10 月 20 日だったのだ。
新版のリリースは無くても,たいがい細かいコミットはあったりするものだ。それが 2 年ほど無いとは?
各 issue に対するメンテナーさんたちのコメントもしばらく無いようだ。
gem のオーナーは stonean さん,minad さん,fredwu さんらしい。
stonean さんは GitHub 上ではほとんど活動されていないようだ。他のお二人は Slim 以外のプロジェクトでは活動されている。
https://github.com/slim-template/slim/graphs/contributors
不安は的中した。
GitHub のページのほかに,Slim は専用のウェブサイトを持っていたが,それが 消えたんである。
これはさすがにヤバいのでは。
開発が年単位で停滞するのはよくあることだが,サイトまで消滅してそのまま,ということは完全なる放棄を意味するのではないか?
バージョン 4.1.0 のままでも数年くらいは使い続けられる気がする(根拠不明)が,もっと先のことを考えると,Slim を手放すことも検討しなければならないかもしれない。ひょえ〜。
動きあり!
そんななか,久しぶりに動きがあった。
2022 年 10 月 26 日,2 年ぶりのコミットが入ったのだ。
https://github.com/slim-template/slim/commits/master
おお,Slim は死んでいない!
この先どうなるか分からないけど,光が見えた。
スポンサー募集
さらに,これと同じくらいのタイミングで,GitHub の仕組みを使ったスポンサー募集が始まった。
https://github.com/sponsors/slim-template
定期(月ごと)あるいは 1 回きりのどちらかで,金額を自由に設定してスポンサーになることができる。
私も(少額かつ 1 回きりだけど)謝意をお金で伝えた1。
Slim に世話になっている個人や企業さんは検討してみられては?
おまけ(私が困っていたのは)
現状(バージョン 4.1.0)の Slim でもほとんど不満はないのだけれど,一つだけ困っていたのがこれ:
Embedded sass: won’t work with sass-embedded · Issue #889 · slim-template/slim
Slim テンプレートでは,たとえば
doctype html
meta charset="utf-8"
title test sass: in Slim
sass:
body
background: orange
h1 Hello
の 4〜6 行目のように,sass:
という記述で Sass コードを埋め込むことができる。
これは,sassc と組み合わせて使うぶんにはいいのだが,この gem は既に終わっている。
今なら sass-embedded を使いたいが,現状の Slim と sass-embedded を組み合わせると,sass:
を処理するところでエラーが出てしまうのだ。
原因からすると Slim 側で修正するのが筋だと思うので上記 issue を立てたのだが,今のところ省みられていない(3 ヶ月経過)。
sass-embedded のほうに 相談した ところ,Slim::Embedded::SassEngine
にパッチを当てる対処方法を教えてくださった。
sass-embedded の作者さん(ntkme さん)はさらに,Tilt 側でどうにかするプルリクエスト を Tilt に提案してくださったのだが,これはあえなく却下。
Slim 側で直すのは(たぶん)簡単なので,開発が本格的に再開すればいずれ解決すると思っている。
気長に待ちたい。
追記(2023-01-29)Slim は生きている!
2023 年 1 月 23 日に Slim 5.0.0 がリリースされた。今後も継続的に保守・開発が行われると期待できる。よかった。
ただ,私がどうにかしてほしかった sass-embedded との相性問題は,今回は解決されなかった。これは技術的に困難だからではなく,Slim, Tilt, sass-embedded のどれがどのように問題を解決すべきかについて合意が得られていないということのようだ(間違ってたらすいません)。
ところで,上にも書いた Slim のスポンサー募集だが,あまりスポンサーが集まっていない。
Slim を活用している企業はたくさんあると思うんだけどな(チラッ)。
追記(2023-11-11)sass-embedded に対応した!
「おまけ」の節に書いた問題は本日リリースされた slim 5.2.0 で直ったようだ。
以下の記事に書いた。
Slim 5.2.0 で再び sass: が使えるようになった #Ruby - Qiita
-
金額はドルで設定するのだが,ものすごい円安を実感した。 ↩