Rabbit on Firefox

Rabbit インスパイアで作った。

Firefox で表示しているスライド上にウサギとカメを表示する。 ウサギはページ位置を表し、カメは経過時間を表す。

rabbit.rb

Reveal.js で作られたスライドまたは Speaker Deck のスライドまたは PDF ファイルを Firefox で開いた状態でブックマークレットを実行する。

javascript:(()=>{if(typeof rubyVM!='undefined'){rubyVM.eval('start');return};var d=document;var h=d.getElementsByTagName('head')[0];var s=d.createElement('script');s.src='https://cdn.jsdelivr.net/npm/@ruby/3.3-wasm-wasi@2.6.1/dist/browser.script.iife.js';h.appendChild(s);s=d.createElement('script');s.src='https://tmtms.net/rabbit/rabbit.rb';s.type='text/ruby';h.appendChild(s);})()

ウサギを押すと割り当て時間(分)を設定できる。割り当て時間を設定するとカメが表示される。 URL の最後に ?allotted_time=5 をつけてもいい。(Speaker Deck を除く)

最初のページでブックマークレットを再実行するとカメの位置がリセットされる。

Reveal.js の場合はブックマークレットじゃなくて HTML に↓を書いておくだけでもいい。

<script src="https://cdn.jsdelivr.net/npm/@ruby/3.3-wasm-wasi@2.6.1/dist/browser.script.iife.js"></script>
<script type="text/ruby" src="https://tmtms.net/rabbit/rabbit.rb"></script>

PDF 以外は Chrome でも動くような気はする。