@takker
一部修正点の提案です
[/hoge/aaa bbb]の様にタイトルにスペースが含まれているものを変換すると
[/hoge/aaa bbb](https://scrapbox.io/hoge/aaa bbb)となり、リンクが壊れます
https://gyazo.com/6ad7b303e5320e7506e8eb967296f744
例えば、encodeURIで囲うなりすると解決されます
3箇所にencodeURIを加えた修正例↓
code:修正例.js
switch (node.pathType) {
case 'root':
return [${node.href}](https://scrapbox.io${encodeURI(node.href)});
case 'relative':
return [${node.href}](https://scrapbox.io/${scrapbox.Project.name}/${encodeURI(node.href)});
default:
return node.content === ''
? ${node.href}
: [${node.content}](${encodeURI(node.href)});
}
やってみます
↑なるほどmrsekut.icon
やりました
テストはまだしてないです
外部リンクはencodeしませんでした
たぶん大丈夫だと思うけど……encodeしないと動かない環境があるならencodeしたほうがいいかも
すでにencode済みの可能性があるからかな...bsahd.icon
単にURLがreadableでなくなるのがなんとなくいやなだけですtakker.icon
技術的な理由ではないです
環境によっては非エンコードのURLに対するnavigateなどでクラッシュする場合もあるbsahd.icon
あと、PopupMenuをクリックした後に何か反応がほしい...mrsekut.icon
ちゃんとコピーできたのかどうか、挙動からわからない
こっちは修正方法わかりません...
標準のcopy plainだってその形式なので...bsahd.icon
いえ、クリックしてもポップアップが消えもしない点ですmrsekut.icon
Copy Plainの方はクリックすると消える
https://gyazo.com/f284500465a3502951d0262e2ccc930d
これ正攻法がないんですよね……takker.icon
文字列置換したくないときは、stringではなくundefinedを返しますが、popupは消えなくなります
引数で取った文字列をそのまま返せばいいのかなbsahd.icon
それも思ったのだけど、そうすると無駄にテロメアが新しくなるmrsekut.icon
正攻以外では、該当するpopup menuのDOMを直接書き換えればなんとかなるかもです
「最後にtoMDが押された時刻」を記録して最後に押されてから1秒間はチェックマークを出すとか...bsahd.icon
クリック時にポップアップは再レンダリングされるのだろうか
(ポップアップのボタン文字は関数にできるので)
titleに指定できる函数は、選択範囲が変化しないと再実行されませんtakker.icon
1秒後に戻せばいいだけなので、大して難しくありませんtakker.icon
(すぐにポップアップを消す可能性を考慮)bsahd.icon
DOMからまるごと消えるならそれはそれで問題ないですtakker.icon
後始末の手間が省けて楽
単にdisplay: noneされている場合なら、DOMは消えてないので普通に戻す処理をすればいいだけです
修正提案ありがとうございます!takker.icon
追記してますsta.icon
有料化したいので「しちゃダメです」に倒しますねって話
すでに参照されているかもしれませんが、睡眠学の教科書に生活リズムを良くするヒントがいっぱい書いてあるのでおすすめですstar_field.icon
自分は昼寝による睡眠の質低下に悩まされていたときに図書館で読んで大いに助けられました
参照してなかったりします……takker.icon
紹介ありがとうございます
二週間睡眠日誌をつけるなど
引数に①gyazoの画像リストのファイルパス②scrapbox書籍用目次のcsvファイルへのパス③gyazoのaccess tokenを順に渡す
-tになっていそう
ほんとだありがとうございますtakker.icon
修正しました
動いているので全然急ぎではないです
donetakker.icon
ページタイトルや構成などは後でいい感じにしてください
久々に覗いたら、スタイリッシュなデザインになっとる!takker.icon
https://code2svg.vercel.app/svg/L20-30/https://raw.githubusercontent.com/takker99/scrapbox-url-customizer/0.2.4/middlewares/formatURL.ts#.svg https://github.com/takker99/scrapbox-url-customizer/blob/0.2.4/middlewares/formatURL.ts#L20-L30
URL Fragmentを先頭につけるようにしたのは趣味です
本当はURL Fragmentに対応するサブタイトルとかを入れたいのですが、HTML構造から特定できなくて
とりあえずURL Fragmentだけくっつけとくか―!と実装してそれっきりです
formatURLの引数に別のformatterを与えれば、別の書式で変換してくれるようになります
code:たとえば.ts
const formatter = (material: Document | string, url: URL) => {
const title = (isString(material) ? material : material.title)
.replace(/\s/g, " ") // スペースと改行を全て半角スペースにする
.replaceAll("[", "[")
.replaceAll("]", "]");
return title ? [${title} ${url}] : ${url};
};
なるほど!ありがとうございます!mtane0412.icon
/takker 10000ページ超えおめでとうございます suto3.icon わーい!ありがとうございます!takker.icon
経緯的にはMijinko_SD.icon
1. Mijinko_SD.iconがDiscord内部で発言したことをtakker.iconさんが文字起こししようとした
Mijinko_SD.iconの学校や仕事に関することを、あんまり不特定多数が閲覧可能な場所に書き込まないでくれ~みたいなことを言った記憶
2. それをMijinko_SD.iconが止める
3. takker.iconさんが謝罪する
4. こっそり、Mijinko_SD.iconが止めた時の文章を削除する
5. takker.iconさんの謝罪のみ残って不自然な形になる
ですね
大したことではないので、気にしないで大丈夫だと思います
なるほtakker.icon
ご自由にどぞ〜Mijinko_SD.icon
移した~takker.icon
自発的にやっていることか、外部から課されていることかyosider.icon
ありそうtakker.icon
現にこのページは自ずから書き始めた
かなり大きそうtakker.icon
同様のことをどこかで発見したのだがどこだったか探し出せないtakker.icon
主語が大きい。書かないパターンはもっと限定されるはずtakker.icon
ちょっと話は逸れますが、ただ単に「続き」とだけ入力しても続きを書いてくれますMijinko_SD.icon 大抵の場合、完結している文章に対して「続き」と書いても無理やり続けてくれるので、もしかしたら過去の文章やコンテキストが悪い影響を及ぼしているのかも知れません
チャットの中身を見れていないので何とも言えませんが
中身を書き写しましたtakker.icon
最初の質問ミスがよくなかったのかなあ
別の会話でやってみた覚えがありますが、うまくいかなかった気がしますtakker.icon
>を使って途切れてる部分を指定し、改行して「から続きをお願いします」と言うとちゃんとやってくれる確率が高いです(体感)cman.icon
MWC1616(multiply with carry、2つの16ビット部分を組み合わせ)でした。64
から続きをお願いします。
試してみますtakker.icon
zoomの中にもオーディオ設定があり、そっちを変えると大きくできるかもyosider.icon
システムと音量設定と同期してるせいで、zoomの中のオーディオ設定を変えてもシステムの音量が変わるだけなんですtakker.icon
質問は直列で進行した
ツッコミどころが1つの場合、アイコン前置きの方で書いている
すると1つの質問で2つのツッコミどころが出た
ので、1つずつ質問した
あとからツリーとして組み込み整形を行った(おわり)
なるほどですtakker.icon
任意のdomainからscrapboxに直接書き込み
仮にTamperMonkeyがうまくいかなくても、deno serverで動くpuppeteer -> WebSocketで上手くいく気がしましたblu3mo.icon
確かにサーバーを立てればpuppeteer経由で書き込むことは可能です(やったことある)takker.icon
ですが、コードがclientで完結しなくなるのであまりやりたくないです
サーバー側でcookie.sidを持たせる必要がある
完全に自分用と割り切ってしまえばできなくもないが……
↑を使用・改変したコードをGitHubに上げても良いですか..?(ライセンス等書いてなかったので確認)blu3mo.icon
いいですよ~takker.icon
ライセンス書いてなかったですね
MITでいいですけど、どう書けばいいんだろう……?
↑の通り改変しました、アイコン記法など参考になればblu3mo.icon
さんくすtakker.icon
そっか、JSで書いていたのか