✅画像にリンク貼ってる場合に表記がおかしい件の修正
たとえば
[https://gyazo.com/505861e8a5c21ae87eb972c4affd8841 https://scrapbox.io/sta/sta]
https://gyazo.com/0d2764487e86a980a51e55f976eca148
今の実装
gyazo urlを何も特別視していない
https://gyazo.com/97d3f9338131d6859754a0bae9966dac
url textから処理している
ので [text](url) になる
合ってるsta.icon
逆の場合はどうなる?
[https://scrapbox.io/sta/sta https://gyazo.com/505861e8a5c21ae87eb972c4affd8841]
こうなるね
[https://gyazo.com/505861e8a5c21ae87eb972c4affd8841](https://scrapbox.io/sta/sta)
整理する
pattern1: [gyazo-url link-destination]
pattern2: [link-destination gyazo-url]
どうあるべき?
code:md
<a href="link-destiation">![](gyazo-url)</a>
code:例.md
実装
やっぱり別々に正規表現つくるべきか
pattern1とpattern2で
どっちにしても上記のaタグ + 画像記法に変換すればいい
/raw もつけちゃう
a hrefのtargetどうする?
_blank使うならrel='noopener'も入れることで脆弱性ガード
target="_blank" にはセキュリティ上の脆弱性もあります。リンク先のページでは window.opener を使用して親ウィンドウのオブジェクトにアクセスしたり、
なるほど、windowオブジェクトが共有されちゃうねんなsta.icon
この共有つか参照を防ぐのが noopener
マジョリティはタブ開きっぱにしてる
「別タブで開いて用事が済んだら戻ってくる」というかつての想定はあまり該当しない、らしい
Scrapboxの挙動は?
外部リンク
https://gyazo.com/84c3a925b18fb48cf853ddbc5797b7b0
_blank, noopener, nofereer
projectへのリンク
_blank(noXXXX系はない)
project内リンク
_blankなし
画像に貼ってるリンク=外部リンクだろうし、Scrapboxとの親和性を考えても、_blank + noXXXX が良さそうだな
code:結論.md
done