バグ #1226
open同一URLに対してmodel_of_uriで複数のModel Classが取得できる場合に、引用で表示する方法の選択。
Description
https://github.com/cobodo/mikutter-twitter-card
このプラグインを使うと、すべてのOpenGraphProtocol対応サイトを引用で表示しますが、mastodonもOGPに対応しており、worldonとtwitter-cardの両プラグインを入れた状態で、 topic/1219-quoted-tweet ブランチを使うと、tootのURLに対しては両方のModelが候補に上がります。
すると(ロード順の関係で)model_of_uriフィルタで先に取得できるのはtwitter-cardの方になり、tootがカスタム絵文字を含むものであっても、OGPにはカスタム絵文字の情報がないために展開できません。
添付のパッチを(topic/1219-quoted-tweetへ)当てるとすべてを表示するようになりますが、もちろん重いです。
一般論として、こういった汎用的なプラグイン(twitter-card)と、目的特化プラグイン(worldon)とでは、常に後者が選ばれてほしくて、特化した表示方法があるのであれば汎用的な表示は必要ないのではないかと思います。
何らかの方法で優先順位が付けられるといいかなと思いました。Scoreとも関連しそうな話ですが……
Files
Related issues
Updated by cob odo over 6 years ago
- Related to バグ #1219: Tweet内のTweet引用が展開されていない added
Updated by toshi_a 初音 over 6 years ago
- Tracker changed from 機能 to バグ
- Status changed from 新規 to 実装待ち
- Target version changed from 3.6 to 3.9
- Start date deleted (
2018-05-05) - クラッシュする set to No
なんてプラグインだ、たまげたなあ
確かに、汎用的なものの優先順位を下げて、Worldonのほうを選んでほしいという、どこかで聞いたような話が出てきますね。
subparts_quoteの速度最適化の一環として、Note#referenceが何らかのModelを指していれば、model_of_uriフィルタを使わずそのModelを使うというのを計画していました。TwitterのMessageにツイートのパーマリンクが含まれる場合にはうまく機能しますが、Worldをまたぐと結局効果がないので、よく考える必要がありそうです。