Replace sheet reading with a fingering editor.
AppImage release / appimage (push) Successful in 53s

Drag Baroque charts onto a line, reorder them, set a duration, or remove a note. The AppImage no longer packages oemer, ONNX, or the models. Version 0.2.0.

Co-authored-by: catpersonisme <catpersonisme@gmail.com>
This commit is contained in:
Cursor Agentandchen committed 2026-10-11 09:06:33 +00:00
1 parent 229a8d4723
commit b354ea9f88
22 files changed
+569 -2231

No files matched your search

+6 -8
View File
@@ -48,12 +48,11 @@ function stopServer() {
async function open() {
const resources = process.resourcesPath;
const standalone = path.join(resources, "standalone");
const python = path.join(resources, "python", "bin", "python3");
const serverJs = path.join(standalone, "server.js");
if (!fs.existsSync(serverJs) || !fs.existsSync(python)) {
if (!fs.existsSync(serverJs)) {
dialog.showErrorBox(
"Recorder Tab Converter",
"The bundled app or the local reader is missing from this AppImage.",
"Recorder fingering editor",
"The bundled app is missing from this AppImage.",
);
app.quit();
return;
@@ -69,7 +68,6 @@ async function open() {
ELECTRON_RUN_AS_NODE: "1",
PORT: String(port),
HOSTNAME: "127.0.0.1",
OEMER_PYTHON: python,
NODE_ENV: "production",
},
stdio: ["ignore", "pipe", "pipe"],
@@ -85,7 +83,7 @@ async function open() {
await waitFor(url, 45_000);
} catch (error) {
dialog.showErrorBox(
"Recorder Tab Converter",
"Recorder fingering editor",
`${error instanceof Error ? error.message : "The app server did not start."}\nLog: ${logPath}`,
);
stopServer();
@@ -99,7 +97,7 @@ async function open() {
minWidth: 390,
minHeight: 640,
show: false,
title: "Recorder Tab Converter",
title: "Recorder fingering editor",
backgroundColor: "#f3ecdf",
autoHideMenuBar: true,
webPreferences: {
@@ -115,7 +113,7 @@ async function open() {
}
app.whenReady().then(open).catch((error) => {
dialog.showErrorBox("Recorder Tab Converter", error instanceof Error ? error.message : String(error));
dialog.showErrorBox("Recorder fingering editor", error instanceof Error ? error.message : String(error));
app.quit();
});