UNPKG

@zsnout/ithkuil

Version:

A set of tools which can generate and parse romanized Ithkuil text and which can generate Ithkuil script from text and JSON data.

82 lines (81 loc) 8.14 kB
import { jsx as _jsx } from "@zsnout/ithkuil-jsx/jsx-runtime"; import { deepFreeze } from "../../generate/index.js"; /** SVG paths for all register characters. */ export const REGISTERS = /* @__PURE__ */ deepFreeze({ standard: { NRR: "", DSV: "", PNT: "M 10.65 -11.85 l 8.1 8.1 l -7.5 7.5 l -6.85 -6.85 l -15.05 14.95 l -8.1 -8.1 l 7.5 -7.5 l 6.85 6.85 l 15.05 -14.95 z", CGT: "M -1.2 6.3 l -6.3 -6.3 l 15 -15 l 1.2 1.2 l -7.5 7.5 l 6.3 6.3 l -15 15 l -1.2 -1.2 l 7.5 -7.5 z", EXM: "M 6.3 -1.2 l -6.3 -6.3 l -15 15 l 1.2 1.2 l 7.5 -7.5 l 6.3 6.3 l 15 -15 l -1.2 -1.2 l -7.5 7.5 z", SPF: "M -7.5 -7.5 l 6.95 6.95 l 7.45 -7.5 l 6.9 6.85 l 7.5 -7.5 l 1.2 1.2 l -15 15 l -6.85 -6.85 l -7.55 7.45 l -6.9 -6.9 l -7.5 7.5 l -1.2 -1.2 l 15 -15 z", }, alphabetic: { NRR: "M -0.025 -15 l -7.5 7.5 l 6.9 6.9 l -7.45 7.5 l 0.55 0.55 l 0 0.05 l 7.5 7.5 l 7.5 -7.5 l -6.9 -6.9 l 7.5 -7.5 l -8.1 -8.1 z", DSV: "M 0.6 0.575 l 6.9 6.9 l 7.5 -7.5 l -8.1 -8.05 l -7.5 7.45 l -6.9 -6.9 l -7.5 7.5 l 8.1 8.1 l 7.5 -7.5 z", PNT: "M -11.85 10.65 l 8.1 8.1 l 7.5 -7.5 l -6.85 -6.85 l 14.95 -15.05 l -8.1 -8.1 l -7.5 7.5 l 6.85 6.85 l -14.95 15.05 z", CGT: "M -7.825 -3.75 l 6.95 6.95 l -7.5 7.45 l 8.05 8.1 l 7.5 -7.5 l -6.85 -6.85 l 7.45 -7.55 l -6.9 -6.9 l 7.5 -7.5 l -1.2 -1.2 l -15 15 z", EXM: "M 8.4 -10.65 l -8.1 -8.1 l -7.5 7.5 l 6.95 6.95 l -7.5 7.45 l 6.85 6.9 l -7.5 7.5 l 1.2 1.2 l 15 -15 l -6.85 -6.85 l 7.45 -7.55 z", SPF: "M -7.5 -7.5 l 6.95 6.95 l -7.5 7.45 l 6.85 6.9 l -7.5 7.5 l 1.2 1.2 l 15 -15 l -6.85 -6.85 l 7.45 -7.55 l -6.9 -6.9 l 7.5 -7.5 l -1.2 -1.2 l -15 15 z", }, transcriptive: { NRR: "M -7.475 0 l -0.05 0 l 6.9 6.9 l -7.45 7.5 l 0.55 0.55 l 0 0.05 l 7.5 7.5 l 7.5 -7.5 l -6.9 -6.9 l 7.5 -7.5 l -7.45 -7.45 l 7.45 -7.55 l -8.1 -8.1 l -7.5 7.5 l 6.95 6.95 l -7.5 7.45 l 0.6 0.6 z", DSV: "M -8.05 -0.575 l 7.45 -7.5 l 7.5 7.45 l 7.5 -7.45 l 8.1 8.05 l -7.5 7.5 l -6.9 -6.9 l -7.5 7.5 l -7.45 -7.45 l -7.55 7.45 l -8.1 -8.1 l 7.5 -7.5 l 6.95 6.95 z", PNT: "M 7.5 14.7 l 7.5 -7.5 l -8.1 -8.05 l -7.45 7.5 l -6.95 -6.95 l -7.5 7.5 l 8.1 8.1 l 7.55 -7.45 l 6.85 6.85 m -0.3 -22.5 l -7.5 -7.5 l -7.5 7.5 l 7.5 7.5 l 7.5 -7.5 z", CGT: "M 15.6 -6.3 l -7.5 -7.5 l -7.5 7.5 l 7.5 7.5 l 7.5 -7.5 m -31.2 20.1 l 1.2 1.2 l 15 -15 l -6.3 -6.3 l 7.5 -7.5 l -1.2 -1.2 l -15 15 l 6.3 6.3 l -7.5 7.5 z", EXM: "M 6.3 -15.6 l 7.5 7.5 l -7.5 7.5 l -7.5 -7.5 l 7.5 -7.5 m -20.1 31.2 l -1.2 -1.2 l 15 -15 l 6.3 6.3 l 7.5 -7.5 l 1.2 1.2 l -15 15 l -6.3 -6.3 l -7.5 7.5 z", SPF: "M -8.05 -7.775 l 7.5 7.5 l 7.5 -7.5 l -7.5 -7.5 l -7.5 7.5 m 7.5 13.8 l -6.95 -6.95 l -15 15 l 1.2 1.2 l 7.5 -7.5 l 6.9 6.9 l 7.55 -7.45 l 6.85 6.85 l 15 -15 l -1.2 -1.2 l -7.5 7.5 l -6.9 -6.85 l -7.45 7.5 z", }, transliterative: { NRR: "M -14.7 -7.5 l 7.5 -7.5 l 8.05 8.1 l -7.5 7.45 l 6.95 6.95 l -7.5 7.5 l -8.1 -8.1 l 7.45 -7.55 l -6.85 -6.85 m 22.5 0.3 l 7.5 7.5 l -7.5 7.5 l -7.5 -7.5 l 7.5 -7.5 z", DSV: "M 14.7 7.5 l -7.5 7.5 l -8.05 -8.1 l 7.5 -7.45 l -6.95 -6.95 l 7.5 -7.5 l 8.1 8.1 l -7.45 7.55 l 6.85 6.85 m -22.5 -0.3 l -7.5 -7.5 l 7.5 -7.5 l 7.5 7.5 l -7.5 7.5 z", PNT: "M -7.5 -14.7 l -7.5 7.5 l 8.1 8.05 l 7.45 -7.5 l 6.95 6.95 l 7.5 -7.5 l -8.1 -8.1 l -7.55 7.45 l -6.85 -6.85 m 0.3 22.5 l 7.5 7.5 l 7.5 -7.5 l -7.5 -7.5 l -7.5 7.5 z", CGT: "M -15.6 6.3 l 7.5 7.5 l 7.5 -7.5 l -7.5 -7.5 l -7.5 7.5 m 31.2 -20.1 l -1.2 -1.2 l -15 15 l 6.3 6.3 l -7.5 7.5 l 1.2 1.2 l 15 -15 l -6.3 -6.3 l 7.5 -7.5 z", EXM: "M -6.3 15.6 l -7.5 -7.5 l 7.5 -7.5 l 7.5 7.5 l -7.5 7.5 m 20.1 -31.2 l 1.2 1.2 l -15 15 l -6.3 -6.3 l -7.5 7.5 l -1.2 -1.2 l 15 -15 l 6.3 6.3 l 7.5 -7.5 z", SPF: "M 13.8 -7.775 l -6.9 -6.9 l -7.55 7.45 l -6.85 -6.85 l -15 15 l 1.2 1.2 l 7.5 -7.5 l 6.9 6.85 l 7.45 -7.5 l 6.95 6.95 l 15 -15 l -1.2 -1.2 l -7.5 7.5 m -5.75 15.55 l -7.5 -7.5 l -7.5 7.5 l 7.5 7.5 l 7.5 -7.5 z", }, }); /** SVG paths for all handwritten register characters. */ export const HANDWRITTEN_REGISTERS = /* @__PURE__ */ deepFreeze({ standard: { NRR: "", DSV: "", PNT: "M -10 0 v 10 l 20 -20 v 10", CGT: "M -5 10 c 18.5 -5 5 -10 5 -10 c -13.5 -5 5 -10 5 -10", EXM: "M 10 -5 c -5 18.5 -10 5 -10 5 c -5 -13.5 -10 5 -10 5", SPF: "M 16.5 -5 c -5 18.5 -10 5 -10 5 c -5 -13.5 -10 5 -10 5 c 0 -13 -10 -13 -13 0", }, alphabetic: { NRR: "M 0 -4.5 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 0 9 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", DSV: "M -4.5 0 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 9 0 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", PNT: "M 0 -10 c 15 15 -15 5 0 20", CGT: "M 3.3129 -9.875 c -5 3 -12 10 0 10 m -3 9 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", EXM: "M -3.3129 9.875 c 5 -3 12 -10 0 -10 m 3 -9 a 0.75 0.75 0 0 0 0.75 0.75 a 0.75 0.75 0 0 0 0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 0.75", SPF: "M 5 -16.5 c -18.5 5 -5 10 -5 10 c 13.5 5 -5 10 -5 10 c 13 0 13 10 0 13", }, transcriptive: { NRR: "M 0 -9 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 0 9 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 0 9 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", DSV: "M -9 0 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 9 0 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75 m 9 0 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", PNT: "M -5 5 l 5 -10 l 5 10", CGT: "M -5 10 c 18.5 -5 5 -10 5 -10 c -13.5 -5 5 -10 5 -10 m 2.5 6.25 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", EXM: "M -10 5 c 5 -18.5 10 -5 10 -5 c 5 13.5 10 -5 10 -5 m -7 -2.5 a 0.75 0.75 0 0 0 0.75 0.75 a 0.75 0.75 0 0 0 0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 0.75", SPF: "M 16.5 -5 c -5 18.5 -10 5 -10 5 c -5 -13.5 -10 5 -10 5 c 0 -13 -10 -13 -13 0 m 14.25 -15 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", }, transliterative: { NRR: "M -5 5 l 10 -5 l -10 -5", DSV: "M 5 -5 l -10 5 l 10 5", PNT: "M 5 -5 l -5 10 l -5 -10", CGT: "M 5 -10 c -18.5 5 -5 10 -5 10 c 13.5 5 -5 10 -5 10 m -2.5 -6.25 a 0.75 0.75 0 0 0 0.75 0.75 a 0.75 0.75 0 0 0 0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 -0.75 a 0.75 0.75 0 0 0 -0.75 0.75", EXM: "M 10 -5 c -5 18.5 -10 5 -10 5 c -5 -13.5 -10 5 -10 5 m 7 2.5 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", SPF: "M 16.5 -5 c -5 18.5 -10 5 -10 5 c -5 -13.5 -10 5 -10 5 c 0 -13 -10 -13 -13 0 m 19.75 2.5 a -0.75 -0.75 0 0 0 -0.75 -0.75 a -0.75 -0.75 0 0 0 -0.75 0.75 a -0.75 -0.75 0 0 0 0.75 0.75 a -0.75 -0.75 0 0 0 0.75 -0.75", }, }); /** * Writes a register adjunct in Ithkuil script. * * @param props Properties modifying this register adjunct. * @returns The register adjunct as an SVG path. */ export function Register(props) { return (_jsx("path", { d: (props.handwritten ? HANDWRITTEN_REGISTERS : REGISTERS)[props.mode || "standard"][props.type || "NRR"] })); }