⬜タイトル付き外部リンク記法のYoutubeリンクがサムネ取得の対象になっている
scrapbox-userscript-stdのバグ
2023/01/03で修正済みと思っていたが、2023/09/21で直ってなかったことが判明
2024-09-21 09:24:36 /takker/✅️️タイトル付きyoutubeリンクはサムネイルにしない (scrapbox-userscript-std)で直したはずだけどどうじゃろtakker.icon
from 2023/01/03
dokudami.icon
ASIAN KUNG-FU GENERATION 『転がる岩、君に朝が降る』 - YouTube
ぼっち・ざ・ろっく! #1「転がるぼっち」 - ニコニコ動画
ぼっち・ざ・ろっく! #12「君に朝が降る」 - ニコニコ動画
この日記ページのサムネイル画像が、本曲のサムネイル画像になったり下の仮面ライダー動画のそれになったりして安定しない現象が起きているhatori.icon
おま環?
動画を埋め込まなくてもリンクを貼るだけでサムネイル画像が出る?
これは個人projectでやってみると再現されない(サムネイルは出ない)
井戸端特有の何かが影響している?
量子サムネイルかな?inajob.icon
自分の環境でも起きてます
pin-diaryが悪さをしているということっぽい
Scrapbox上のUIからページ編集すると下の仮面ライダーになる
pin-diaryが更新すると上の動画になる
短縮表記のYouTube動画もサムネ取得の対象になっている?
......タイトル付き外部リンク記法のYoutubeリンクがサムネ取得の対象になってしまっているかもtakker.icon
ビンゴ
Youtubeリンクからのサムネイル取得処理はparseYoutube()に委譲している
これはv0.15.0で#95をmergeするまで、タイトル付き外部リンクかどうかを判定していなかった
本来は[https://youtu.be/...]のようなタイトルなしリンクのみが、Youtube埋め込みとして機能する
つまりv0.15.0以前のscrapbox-userscript-stdでbundleしたpin-diaryを使うと量子サムネイルになってしまう
解決策はpin-diary-6の依存ライブラリのversionを上げること
ついでにMijikko.iconさんに頼まれてた修正もやろうtakker.icon
っぽい
量子サムネイル、生きていたのかcFQ2f7LRuLYP.icon
何度でも蘇るさnishio.icon
from 2023/09/21
https://gyazo.com/fae938fce67593bcd6164a85481fea84
埋め込みがないのに表示されている?wogikaze.icon
youtubeのタイトル付き外部リンク記法を埋め込みだと認識してしまっているtakker.icon
↑にある通り#95で直したつもりに鳴ってたが、よく見たら全然直ってなかった
parseAbsoluteLink()にタイトル付きリンクを弾く条件分岐を入れた
しかし肝心のyoutubeサムネ取得処理でそれを使わなかった
https://code2svg.vercel.app/svg/L117-122,blanks=2/https://raw.githubusercontent.com/takker99/scrapbox-userscript-std/0.24.3/browser/websocket/makeChanges.ts#.svg https://github.com/takker99/scrapbox-userscript-std/blob/0.24.3/browser/websocket/makeChanges.ts#L117-L122
if (node.content) return;でタイトル付きリンクを弾いてない
結局バグが放置される事になってしまった
修正方法
❌const props = parseYoutube(node.href);の前にif (node.content) return;を入れる
タイトル付きリンク除外処理がparseAbsoluteLink()とこことの二箇所に分散してしまい、メンテがめんどくなる
✅parseYoutubeをparseAbsoluteLinkに置き換える
タイトル付きリンク除外処理をparseAbsoluteLink()に統合できる
!props || props.pathType === "list"をちょっと書き換える必要があるが、大した手間ではない