@yanma
いくつかコメントを書かせていただきます。
もし気に障ってしまったら申し訳ないです
時間に余裕があるときに読んでいただけたらと思います
わからない箇所や文章が変な箇所があればお気軽にご指摘ください
コメントありがとうございます! 参考になりますyanma.icon
yanma.iconにとってnot for meなだけで、全ユーザーを代表している意見ではないことに注意して下さいね。 インラインでコメントしていきます。
コメントありがとうございます!takker.icon
(メールとかなら返信遅れてすみませんと書くべきところですが、時間を超越したいのであえて書かないでおきます) マウスオーバーではなく関連ページリストに表示する方法は申し訳ないですが採用しないつもりです 動的にリストが組み変わるので、下手に独自のDOMを追加したくない
未検証です。もしかしたら想定より簡単にできるかも
ここに抵抗を感じるのは正しい感覚と思いますyanma.icon
Scrapboxの根幹に近い部分なのでUserScriptで横からいじるのはやめたほうが良い
ある時点で実現できてもScrapbox側の実装が変わると動かなくなってしまうと思う
Notaの中の人にプレゼンし、本家にマージしてもらうというアプローチを目指す手は一応あるがハードル高い
/daiiz/daiiz.iconさんルートは難易度高すぎますね……takker.icon
根幹の機能なので、動かなくなるとすごく困る
関連ページリストまでスクロールするのが面倒
はい、ここは設計思想なのでtakker.iconさんが決めたら良いと思いますyanma.icon
了解ですtakker.icon
yanma.iconさんは関連ページリストをメインに使っていらっしゃるようですねtakker.icon 標準機能なんだから、当然といえば当然ですね
このあたりも配慮できればより使いやすくなると思うのですが、ドッグフーディング出来ないので難しいですね…… CSSについては……すみません。雑に書いたまま放置してしまっています……
いい加減直したいです
(わざと本家から変更した部分もあります)
ここは誤解がありそうなので補足したいですyanma.icon
takker.iconさんにCSSをメンテほしいという意図は実は含まれていませんでした
yanma.iconが納得行く形にするにはある程度カスタマイズする必要があるけど、それはyanma.icon側で処理するべき
で、それを本家のアップデートにも追従し続けるコストが残るなあという予感がここにある
Shadow DOMでCSSをカプセル化してあるので、実を言うと本家のCSSが変更されてもあまり影響を受けなかったりしますtakker.icon /icons/なるほど.icon。文意がわかりましたtakker.icon
二箇所とはどことどこを示していますか?
ページ下の関連ページリストと吹き出しの二箇所ですyanma.icon
例: 本文が長くてリンクを探すのが面倒なときなど
この視点はありませんでしたtakker.icon
「本文が長いと関連ページリストまでスクロールするのが面倒」だと思っていたのでtakker.icon
でもよくよく考えてみると、関連ページリストまでスクロールして2 hop linkを索引的に眺めるのはtakker.iconもやっているような…… なので、多分関連ページリストを眺めて、そこになかったら吹き出しを探すという動線ができてしまうなあという意味でした。
/icons/なるほど.icontakker.icon
最初から吹き出しを探すように矯正することは多分できるんですが、別の問題を引き起こします。
索引的に使えるという関連ページリストのメリットが失われる
ですね。初代の方でしたyanma.icon
e.g.
projectpublicのあるページに[link]をがあるとする
予め指定したproject listがpublic, private, anotherだとする
[link]をhoverしたとき
1. [/public/link]が存在すれば、それをpreviewする
2. [/public/link]が存在しなかったら、予め指定したproject listから同名のページを探す
最初に[/private/link]探してpreviewする
[/private/link]がなかったら、[/another/link]を探す
……
projectpublicのページにある[/private/link]をhoverしたときは、[/private/link]を優先的にpreviewする
なければpublic, anotherの順にページを探す
2021-04-14 20:56:09 実装しました
/icons/クラッカー.iconyanma.icon
「privateから移動してきたページ」という情報が欠落するので、判断できない
これは頑張れば実装できると思うのですが、やりたいのは「リンクをマウスオーバー→該当ページを探してクリック」ではなく、「リンクをクリックしたらprivate/publicを意識することなく該当ページに飛ぶ」なので解決しないと思いますyanma.icon
むむ、それは確かにややこしいですねtakker.icon
技術的に出来ないことはなさそうですが、やり方があまりにも汚くなりそうです……
<a class='page-link'>のevent handleronClickをScrapboxが再描画されるたびに乗っ取る
このindent blockの主旨が↓だとして書かせていただきます (誤読でしたらすみません)
関連ページリストと比べた場合、クリックが「マウスオーバー→該当を目視サーチ→クリック」になって思考をブロックしてしまうのが欠点である
ここが欠点になる理由がよくわかりません
関連ページリストの場合でも、「関連ページリストまでスクロール→該当を目視サーチ→クリック」というほぼ同じ手順を踏みます
吹き出し表示ではなく、関連ページリストで外部projectのカードを
(↑なぜか文章が途中で終わっていることに気づいたけど、何を書こうとしたのか忘れた)takker.icon
yanma.iconさんの使い方として、関連ページリストを閲覧するという行為が自然に(無意識に)出来ているため、思考をブロックすることがない、ということですねtakker.icon
あと、スマートフォンなどのタッチUI端末でScrapboxを見ることが結構あるんですが、マウスオーバーとの相性が悪いので結局Scrapbox標準の関連ページリストで我慢することになりそうで、そうするとスマホでは関連ページリスト、PCでは吹き出しといった動線の分岐が起きて思考をブロックしそう、という予感もありました。
これは実は解決策を考えていますtakker.icon
e.g. リンクをスワイプしたらmobileでも吹き出しを表示する
といっても無理矢理感は否めませんな……
総論として、takker.iconさん手が早いので力技で解決できちゃう部分は多いと思うんですが、この問題UserScriptで頑張るにはちょっと問題のサイズが大きすぎるのと、問題の位置がScrapboxの心臓に近すぎるという印象を個人的には持っていますyanma.icon
う、やはり/daiiz/daiiz.iconさんルートになりますか……takker.icon
でもプレゼンとかやったことないし説明下手くそだし(言い訳)
つい最近、増井俊之.iconさんの発表で説得の話がありましたね
/icons/わかる.icon問題の位置がScrapboxの心臓に近すぎるtakker.icon
個人プロジェクトをpublicで持っている人が結構多くて、自分もやりたいなあと思うようになってきた
わかる、同じこと思ってますyosider.icon*3erniogi.icontakker.icondnin.icon
public projectを使うようになった動機はこれが大きかったですtakker.icon
共感得られて嬉しいyanma.icon*3
kuuote.iconさんの記事初見だったんですが、/icons/わかるマン.iconでした
関連ページリストが膨大すぎるのが原因でした
公開するページには全部同じタグがついているので、ページ数の2乗のオーダーでデータ量が増えてゆく…
page.relatedPages = []みたいなことをすればエラーにならなくなった
何も考えず取ってきたpage dataをそのままimportに投げてたyosider.icon
わーおtakker.icon
GUIでならimportできるっぽい?ので
ついでにprivate projectで削除した公開ページをpublic projectでも削除する
私も次善の策はexport/importかなあと思ってますyanma.icon
作っては見たもののあれはやっぱり良くないなyosider.icon
最近(yosider.iconの環境では)妙に重い気がするし
jsonデータの作成までscriptでやって、importは手動でやるとかすればどうだろう?takker.icon
もし成功したら井戸端に共有していただけると嬉しいです
了解ですyosider.icon
google cloud functionsなのでクレカやら住所やら登録しないといけないのがつらいところ
登録は必要ですが無料範囲内のはずです
/emoji/tada.icontakker.iconyanma.icon
おおおさすがです!yanma.icon