現在行をタスクリンクにするPageMenu
その際、そもそもタスクリンクにするなら特定のページに放り込む必要などないことに気づいた どのページに書いても、リンクにさえすれば後から見つけられる
ということで、必要なのはタスクリンクを簡単に作るツールと結論付け、作ることにした code:script.ts
import { lightFormat } from "npm:date-fns@4/lightFormat";
import { scrapbox } from "jsr:@cosense/types@0.10/userscript";
import { insertText, takeStores } from "jsr:@cosense/std@0.29/browser/dom";
scrapbox.PageMenu.addMenu({
title: "~task",
onClick: () => {
const { cursor, selection } = takeStores();
const line = cursor.getPosition().line;
const selectedText = selection.getSelectedText();
const text = selectedText || cursor.linesline.text; const newText = text.split("\n").map((line) =>
line.replace(
/^\s*(.+)$/g,
[$1~@${lightFormat(new Date(), "yyyy-MM-dd")}],
)
).join("\n");
if (!selectedText) {
selection.setRange({
start: { line, char: 0 },
end: { line, char: text.length },
});
}
insertText(newText);
},
});