1
0
silverbullet/plugs/emoji/build.ts

21 lines
563 B
TypeScript

// Generates emoji.json from emoji-data.txt
const emojiRe = /#\s([^\s]+)\s+E[^\s]+\s+(.+)$/;
let text = Deno.readTextFileSync("emoji-data.txt");
const lines = text.split("\n").filter((line) => !line.startsWith("#"));
const emojis: string[] = [];
for (const line of lines) {
let match = emojiRe.exec(line);
if (match) {
const emoji = match[1];
const name = match[2].toLowerCase().replaceAll(/\W+/g, "_");
emojis.push(`${name} ${emoji}`);
}
}
Deno.writeFileSync(
"emoji.json",
new TextEncoder().encode(JSON.stringify(emojis.join("|"))),
);