core/mui/gtk_photo_pixbuf.rbで定義されるPhotoMixin#pixbufメソッドは、ローカルファイルであるかどうかの判定に、 uri.scheme == 'file'.freeze を使っているので、単なる文字列でもダメだし、Diva::URI.new('/path/to/image.png')でもダメ。
Diva::URI.new('file:///path/to/image.png')
のように、 file スキームを明示的に指定する必要がある。
ローカルにある画像に対しても使えます。
Plugin.filtering(:photo_filter, '/path/to/image.png', [])[1]
↑これが罠
Writing mikutter plugin の "Photo Model" https://reference.mikutter.hachune.net/model/2016/11/30/photo-model.html の罠に引っかかっていた
defimageopener('Mastodon添付画像', %r<https?://[^/]+/media/[0-9A-Za-z_-]+>) do |url|open(url) end
かな
@toshi_a InstanceというとPlugin::Worldon::Instanceのことですか? mastodonの公開ステータスに添付された画像は外部から一切の認証無くcurlで取れる程度のものなので、何も要らないはずですが……
例えば今たまたまTLに流れてきた https://omochi.xyz/media/PnownmNZdfOUrNywcmI をシークレットモードのブラウザで開いても開けるでしょう?