Cosenseで文字を読み上げる
UserScriptを書いたけど課題が多すぎてお手上げ
PCでは「Read Aloud: A Text to Speech Voice Reader」のような拡張機能を使おうと思う
モバイル用にPageMenu.jsを読み込む
2021-02-07 中国語対応 ASCII文字のみなら英語読み、それ以外なら中国語読み
2021-06-13 メニュー名をListenにした(Google Translateにならって)
機能
文字列を選択してボタンを押すと、選択文字列を読み上げる
何も選択していなかったらページタイトルを読み上げる
PopupMenu
PCでのみ動作
ページタイトルはPopupMenuが表示されないので、再生できない
PageMenu
PCとモバイルで動作
モバイルではページタイトルの読み上げのみ対応
補足
PCなら、選択文字列を読み上げる拡張機能がある
Scrapboxとスクリーンリーダーの相性が悪い(と思われる)のが、これを作成・使用している理由の1つ
用途
英語学習用に使ってる
課題
plain textとして読み上げる
面倒くさそうなので保留
対応リスト
done.icon文字装飾記法
URL
...
モバイルで選択文字列の再生に対応していない
window.getSelectionは存在するんだけど、値が返ってこない
タップしたときに文字列が選択されていない状態になっている?
モバイルでタップしたときにclickイベントが発火されるっぽい(touchstartで拾えない)
PopupMenuのボタンをクリックしたときに、文字列を返さずにMenuを閉じたい
文字列を返せばMenuが閉じる仕様だと思われる
同じ文字列を返すと日付が更新されてしまうので不採用
ボイスを選択する
たぶん実装しない
OSごとに違いすぎるので、検討の余地しかない
Windowsだとなぜか初期ボイスがブラウザによって異なった。よくわからないのでとりあえず保留
ソース
アイコン用
https://gyazo.com/2a2166f5c4b1467e2a46697cc334bba9