mdBookに変なPRを出した
mdBookという、gitbookのrust版みたいなOSSがあります。
マークダウンをつっこむとサイト(やpdfやepubその他レンダラを書けば何でも!)を出力してくれるものです。
主にドキュメントサイトを生成するのに使われていると思います。
Rustの公式ドキュメント系もmdBookでビルドされているものが多く、
たとえば、 Rust By Exampleもそうです。
さて、昨日mdbookのissueを眺めていたら、こんなissueを見つけました
『Rust By Exampleには「Ctrl とEnterを押したらコードが実行される」って書いてるけど、少なくとも僕の環境ではできなかったよ』
って内容です。
mdbookのデフォルトのテーマではそんな機能は提供されていないので、Ctrl + Enterでコードが実行されない、となると問題はRust By Exampleの方にあることになります。
それで、rust-by-exampleのリポジトリを掘っていたら、
たしかにCtrl + Enterでコード実行できるようにする、というコミットがありました。
ただこのコミットをよく見ると、gitbookについての実装なんですね。
というのも、rust by exampleは昔gitbookを使っていて、mdbookの機能が十分になったところでmdbookに乗り換えた、という歴史があるようです。
なので、昔、Ctrl+Enter はgitbookについて実装し、
// or if you prefer to use your keyboard, you can use the "Ctrl + Enter" shortcut
なんて書いて、mdbookに移行するときにこの機能を移すのを忘れてしまったようです。
ということは、正当な解決方法としては、
rust-by-exampleの方へ修正のコミットを出すのが筋でしょうが、
幸いrust-by-exampleではlatestのmdbookのデフォルトのテーマを使っているようです
ということは、mdbookのデフォルトテーマを修正すれば、
自動的にrust-by-exampleが修正されることになりますね。
ということで、
mdbookのデフォルトテーマに、Ctrl + Enterでコードを実行できるようにする修正をしてPRを投げておきました。
無事マージされるでしょうか。
P.S.
マージされました