refactor: simplify renderer drain handling and expand LaTeX arrow replacements

This commit is contained in:
mitchell 2026-05-14 02:52:49 -04:00
parent 7367cfdfe3
commit 0ed6a23334
2 changed files with 10 additions and 16 deletions

View file

@ -13,7 +13,6 @@ import { renderMarkdown } from "./markdown";
export default class Renderer {
private lineCount = 0;
private charsSinceNL = 0;
private memOk = true;
private buffer = "";
private unsafeIndex = 0;
private start = 0;
@ -22,22 +21,15 @@ export default class Renderer {
constructor(
private isPlain = false,
private isPlainErr = false,
) {
process.stdout.addListener("drain", () => {
this.memOk = true;
});
process.stderr.addListener("drain", () => {
this.memOk = true;
});
}
) {}
private write(text: string, pipe: WriteStream = process.stdout) {
this.memOk = pipe.write(text);
pipe.write(text);
}
private moveClearReset(y: number, pipe: WriteStream = process.stdout) {
this.memOk = pipe.moveCursor(-9999, y);
this.memOk = pipe.clearScreenDown();
pipe.moveCursor(-9999, y);
pipe.clearScreenDown();
this.resetCounts();
}
@ -159,8 +151,6 @@ export default class Renderer {
break;
}
}
while (!this.memOk) await Bun.sleep(10);
}
}

View file

@ -152,8 +152,12 @@ export async function renderMarkdown(
image: () => chalk.red("Images are unsupported (for now)\n"),
text: (children) =>
children
.replaceAll("$\\rightarrow$", "->")
.replaceAll("$\\leftarrow$", "<-")
.replaceAll("$\\rightarrow$", "-->")
.replaceAll("$\\leftarrow$", "<--")
.replaceAll("$\\leftrightarrow$", "<->")
.replaceAll("$\\Rightarrow$", "==>")
.replaceAll("$\\Leftarrow$", "<==")
.replaceAll("$\\Leftrightarrow$", "<=>")
.replaceAll("$\\to$", "->"),
html: () => chalk.red("HTML is unsupported\n"),
});