silverbullet/plugs/editor/editor.ts

37 lines
950 B
TypeScript
Raw Normal View History

2023-08-28 23:12:15 +08:00
import { clientStore, editor } from "$sb/syscalls.ts";
2022-09-16 20:26:47 +08:00
2022-12-16 19:44:04 +08:00
// Run on "editor:init"
export async function setEditorMode() {
2023-08-26 14:31:51 +08:00
if (await clientStore.get("vimMode")) {
await editor.setUiOption("vimMode", true);
}
2023-08-26 14:31:51 +08:00
if (await clientStore.get("darkMode")) {
await editor.setUiOption("darkMode", true);
2022-12-16 19:44:04 +08:00
}
}
export async function toggleDarkMode() {
2023-08-26 14:31:51 +08:00
let darkMode = await clientStore.get("darkMode");
darkMode = !darkMode;
2023-08-26 14:31:51 +08:00
await clientStore.set("darkMode", darkMode);
2023-10-29 19:26:57 +08:00
await editor.reloadUI();
}
2023-06-15 01:27:18 +08:00
2023-07-24 17:27:46 +08:00
export async function centerCursorCommand() {
const pos = await editor.getCursor();
await editor.moveCursor(pos, true);
}
2023-07-27 23:02:53 +08:00
export async function moveToPosCommand() {
const posString = await editor.prompt("Move to position:");
if (!posString) {
return;
}
const pos = +posString;
await editor.moveCursor(pos);
}
export async function customFlashMessage(_ctx: any, message: string) {
await editor.flashNotification(message);
}