@ledsun blog

無味の味は佳境に入らざればすなわち知れず

久しぶりに見知らぬリポジトリにプルリクエストを作成した

プルリクエストを作りました

RubyをWebAssemblyで動かすruby.wasmを、ブラウザで動かす時に便利なJavaScriptbrowser.script.iife.jsがあります。 <script type="text/ruby">にインラインで書いたRubyスクリプトを実行してくれます。 これにsrc属性の対応を追加するパッチです。

イデアは、https://cdn.jsdelivr.net/npm/ruby-head-wasm-wasi@0.3.0-2022-09-06-f/dist/browser.script.iife.js のsrc属性対応 - @ledsun blog で思いついています。 ただ、動作確認が上手く出来ませんでした。 https://github.com/ledsun/wordle_search/blob/5d0fbe1c0ce648b101a944908e218bfac94f0bfe/index.html#L65 で、ビルドされたbrowser.script.iife.jsを使っています。 これに直接パッチを当てて期待通りに動けば、動作確認できるのでは?というアイデアを思いつきました。 実際やってみたら動きました。

Enable src attribute in script tag in browser.script.iife.js. by ledsun · Pull Request #49 · ruby/ruby.wasm · GitHubを作りました。 さくっとマージしてもらえました。

プルリクエストにビルドの仕方がわからなかったって書いたら 高速でコントリビューションドキュメントを整備されてました*1。 すげえな

別に取って食われるわけでないのですが、未知のリポジトリにプルリクエストを作るのは緊張します。 緊張を無視して、プルリクエストを作ります。 この辺、自分を上手くコントロールできるようになるといいのになあと思います。

VSCodeシンタックスハイライトしたかった

これは元々、VSCodeシンタックスハイライトやCopilotの補完が効かなくて辛かったのを回避したくて、始めたハックです。

試そうとした別の方法を記録しておきます。 最初は、VSCodeがサポートしたら良いだろうと思いました。 過去のissueを探すと"text/jsx"サポート要望がありました。 Syntax highlighting doesn't work with "text/jsx" script tags · Issue #150171 · microsoft/vscode · GitHub textmateのほうで対応する方針のようです。

textmateのissueです。 Syntax for text/jsx inside HTML · Issue #119 · textmate/html.tmbundle · GitHub 対応中です。 この方針は時間が掛かりそうなので、トライするのを諦めました。 第二の方針が今回のプルリクエストでした。 割とスッと解決して良かったです。

RubyMineの場合

RubyMineは簡単な設定で<script type="text/ruby">Rubyスクリプトだと認識させられることに気がつきました。 https://www.jetbrains.com/help/ruby/using-language-injections.html#inject-language-nowdoc-heredoc RubyMineすごい。