import-dev
code:script.js_
import { setup as setUpRun, previewSVG, previewGLSL, previewPlantUML, previewTikZ } from "./mod.js";
setUpRun({ previewers: [
{ when: /(?:^|\.)svg$/, preview: previewSVG },
{ when: /(?:^|\.)glsl$/, preview: previewGLSL },
{ when: /(?:^|\.)(?:plantuml|puml|pu)$/, preview: previewPlantUML },
{ when: /(?:^|\.)tikz\(tex\)$/, preview: previewTikZ(
) },
]});
code:script.js_
import { main } from "./mod.js";
main(
"takker",
);
code:script.js_
import "./mod.js";
code:script.js
import {
setup as setupActions,
setup as setupScheduler,
setupWedget
} from "./mod.js";
(async () => {
const id = "next-action";
const selector = head style[data-userscript-name="${id}"];
document.querySelector(selector)?.remove?.();
const style = document.createElement("style");
style.dataset.userscriptName = id;
style.textContent = `
position: absolute;
font: 900 20px/46px "Font Awesome 5 Free";
}
button#${id}.tool-btn::before {
content: "\\f0ae";
}
button#scheduler.tool-btn::before {
content: "\\f073";
font-weight: 400;
}
opacity: 0;
}`;
document.head.append(style);
const { toggle } = await setupActions(projects);
scrapbox.PageMenu.addMenu({
title: id,
image: "/assets/img/favicon/apple-touch-icon.png",
onClick: toggle,
});
const scheduler = await setupScheduler(projects);
scrapbox.PageMenu.addMenu({
title: "scheduler",
image: "/assets/img/favicon/apple-touch-icon.png",
onClick: scheduler.toggle,
});
{
const key = "takker-scheduler/wedget";
let settings = JSON.parse(localStorage.getItem(key) ?? "{}");
const project = scrapbox.Project.name;
const wedget = await setupWedget(projects, settingsproject); scrapbox.PageMenu.addItem({
title: "toggle wedget",
onClick: () => { settingsproject = !settingsproject; wedget.toggle(); localStorage.setItem(key, JSON.stringify(settings)); }, });
}
})();
code:script.js_
import { setup as setupSelectSuggestion } from "./mod.js";
await (async () => {
const projects = [
"takker", "takker-memex", "takker-books", "takker-private",
"villagepump", "hub", "arpla",
"unnamedcamp", "unnamed-project",
"nishio", "enchi", "rashitamemo", "motoso",
"shokai", "masui", "rakusai", "yuiseki", "akiroom",
"c4j", "miyamonz", "mrsekut-p", "masuilab",
"kidaaam-92022284", "nwtgck", "june29",
"marshmallow-rm", "sushitecture", "sno2wman",
"issac-37765679",
/*
"jigsaw",
"dojineko", "kadoyau", "inteltank",
"kn1cht",
"foldrr", "wkpmm",
"customize", "scrapboxlab", "scrasobox", "programming-notes",
"scrapbox-drinkup", "nota-techconf",
"thinkandcreateteck",
"ci7lus", "ci7lus-diary",
"Mijinko", "Mijinko-other",
"rmaruon", "yuta0801",
"aviutl", "ePi5131",
"kagerw", "yosider", "bluepegasusyk",
"keroxp", "aioilight",
"ayu-mushi",
"NDLSH-SB",
"sta",
"suto3",
"choiyakiBox", "blu3mo",
"choiyaki-hondana",
"spud-oimo",
"hitorigakusai",
"ima1zumi",*/
];
const ops = await setupSelectSuggestion({
projects,
mark: {
...Object.fromEntries(
[
].map((p, t) => [p, https://scrapbox.io/api/pages/${p}/${t}/icon]) ),
"NDLSH-SB": "📚",
},
debug: true,
enableSelfProjectOnStart: true,
});
let enable = true;
scrapbox.PageMenu.addItem({
title: "toggle select-sugesstion",
onClick: () => {
if (enable) {
ops.disable();
enable = false;
} else {
ops.enable();
enable = true;
}
},
});
document.getElementById("text-input").addEventListener("keydown", (e) => {
if (e.ctrlKey || e.metaKey || e.altKey) return;
switch (e.key) {
case "Tab": {
const executed = e.shiftKey ?
ops.selectPrev({ cyclic: true }) :
ops.selectNext({ cyclic: true });
if (!executed) return;
break;
}
case "Enter": {
if (e.shiftKey) return;
if (!ops.confirm()) return;
break;
}
case "Escape" : {
if (e.shiftKey) return;
if (!ops.cancel()) return;
break;
}
default:
return;
}
e.preventDefault();
e.stopPropagation();
});
})();
code:mod.js