Vivaldiはよそ者に冷たいのか?

開発:さて、Macも軽くなったし extension 体験第2日目行きます。

基盤:その後、パッケージ内のHTMLやJavaScriptをURLで参照できるのがわかったということでした。

開発:そう、これです。

https://developer.chrome.com/extensions/manifest/web_accessible_resources
Manifest - Web Accessible Resources

...
These resources would then be available in a webpage via the URL chrome-extension://[PACKAGE ID]/[PATH], which can be generated with the extension.getURL method.

開発:今のところ隠したいリソースも何も無いですから、全開にします。

"web_accessible_resources": [ "*" ]

開発:それで、パッケージのURLはとりあえずこんな風に見えます。

開発:なのでこのパッケージの manifest.json は、chrome-extension://mjfadkidegblhjloojipnmeaginiambn/manifest.json というURLで見えるわけです。

基盤:いっそ、chrome-extension://パッケージ名/ でパッケージのファイル全部が見えると良いですね。

開発:.htacess とか指定したりして。まあまだファイル数も少ないので、index.html を作って参照します。というかこれも、JavaScript で生成すれば良いのですよね。

開発:それで、準備してて気づいたのですが、このURLで参照するHTMLのようなファイルは、パッケージをUpdateしなくても即反映される、というかそのまま使われるようなのです。これは実に全く便利です。

開発:さて、準備もできたし、まずはこの間作ったURLを分解してアンカーをつけるやつからやりますか。

* * *

社長:どんな感じですか。

開発:非常に不思議な現象が起きて難航しましたが、ようやく切り抜けました。

社長:どのような問題が?

開発:HTMLの中で </span> を </spam> とスペルミスしてしまったため、それ以下の表示が適切にされなかった、という問題です。

社長:うーん。それは確かに難しい問題でしたね。

開発:Vivaldi は JavaScript のエラーは指摘してくれますが、HTMLの異常はスルーですからねえ。

* * *

社長:どんな感じですか?

開発:Vivaldi に苦しめられていました。

社長:?

開発:コンテクストメニューを追加するところでエラーが出まして。具体的にはポインタがアンカー上にあった場合のコンテクストメニューを定義しようとしたのですが。これはメニューを登録する時のオプションとして単に"contexts":["link"] と書けば良いはずなのです。ですが、何か型の不整合のエラーだというので散々調べたのですが意味がわからず。それで、はっと思って、Update ではなく、一旦Removeして再ロードしたら通ってしまいました。前にもこれがありました。そういうわけで、これは鉄則だと思います。

VivaldiのextensionのUpdateで意味不明なエラーが出たら、一旦RemoveしてLoadし直すこと。

社長:そういえば、これは Vivaldi に限ったことではなく、ずっと不便だと感じてきた事ですが、右クリックで現在のページに関するメニューを出したい時、たまたまマウスポインタがリンクの上にあるとか、テキストの上にあったりすると、ページに関するメニューが出て来ない。で、ポップアップされたメニューの中に同じタイトルのものがあった場合、例えばPrintとか、ページに対して操作したつもりが、ポインタが指す要素に対する操作になってしまった、という事がしばしばあります。この不便は解消したいですね。

開発:それは、"contexts":["page", "link", "selection"] みたいに、同じメニューを複数のコンテクストに登録する事と、メニューのタイトルに対象を明示することで解消できますね。

開発:あとこれはいまだに意味不明なのですが、肝心の file scheme に対するアクセスがextension に許可されないんです。許可のチェックはしているのに。めっちゃ意味不明です。

開発:フォーラムで聞いてみようと思いますが、今日はなんだか疲れたのでもう寝ます。

社長:そうしましょう。というか、他のブラウザで試してみると良いかもですね。

-- 2020-0616 SatoxITS

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です