@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.
116 lines (115 loc) • 8.89 kB
JavaScript
import { deepFreeze, } from "../../generate/index.js";
/** An object containing all tertiary segments. */
export const TERTIARY_SEGMENTS = /* @__PURE__ */ deepFreeze({
PUN: "M 0 -10 l 0 -30 l -10 10 l 0 30 l 10 -10 z",
ITR: "M 0 -22.5 l 1.2 1.2 l 6.3 -6.3 l 0 27.6 l 10 -10 l 0 -30 l -17.5 17.5 z",
REP: "M 0 -17.5 l -1.2 -1.2 l -6.3 6.3 l 0 -27.6 l -10 10 l 0 30 l 17.5 -17.5 z",
ITM: "M 0 -22.5 l 1.2 1.2 l 6.3 -6.3 l 0 27.6 l 17.5 -17.5 l -1.2 -1.2 l -6.3 6.3 l 0 -27.6 l -17.5 17.5 z",
RCT: "M 0 -30.5 l 0 27.6 l -7.5 7.5 l 1.2 1.2 l 16.3 -16.3 l 0 -30 l -10 10 z",
FRE: "M 0 -12.4 l 0 -12.6 l -11.75 -14.95 l -7.5 7.45 l 9.25 11.75 l 0 20.75 l 17.5 -17.5 l -1.2 -1.2 l -6.3 6.3 z",
FRG: "M 0 -39.95 l -17.5 17.5 l 1.2 1.2 l 6.3 -6.3 l 0 12.6 l 11.75 14.95 l 7.5 -7.45 l -9.25 -11.75 l 0 -20.75 z",
VAC: "M 0 0 l 10 -10 l 0 -15 l -11.75 -14.95 l -7.5 7.45 l 9.25 11.75 l 0 20.75 z",
FLC: "M 0 -39.95 l -10 10 l 0 15 l 11.75 14.95 l 7.5 -7.45 l -9.25 -11.75 l 0 -20.75 z",
"1:BEN": "M 0 -35 l -7.5 7.5 l 21.65 27.5 l 7.45 -7.5 l -21.6 -27.5 z",
"2:BEN": "M 0 -20 l 1.2 1.2 l 7.35 -7.35 l 20.6 26.15 l 7.45 -7.5 l -21.6 -27.5 l -15 15 z",
"3:BEN": "M 0 -8.85 l -20.55 -26.15 l -7.5 7.5 l 21.65 27.5 l 14.95 -15 l -1.2 -1.2 l -7.35 7.35 z",
"SLF:BEN": "M 0 -18.8 l 7.35 -7.35 l 20.6 26.15 l 14.95 -15 l -1.2 -1.2 l -7.35 7.35 l -20.55 -26.15 l -15 15 l 1.2 1.2 z",
UNK: "M 0 -33.15 q -0.107 -0.305 -0.25 -0.65 l 7.5 -7.5 l -1.2 -1.2 l -15 15 l 21.65 27.5 l 7.45 -7.5 l -20.15 -25.65 z",
"SLF:DET": "M 0 -35 l -7.5 7.5 l 20.2 25.65 q 0.109 0.309 0.25 0.65 l -7.5 7.5 l 1.2 1.2 l 14.95 -15 l -21.6 -27.5 z",
"3:DET": "M 0 -18.8 l 7.35 -7.35 l 20.6 26.15 l 10 0 l 10 -10 l -14.55 0 l -19.6 -25 l -15 15 l 1.2 1.2 z",
"2:DET": "M 0 -25 l 14.45 0 l 19.7 25 l 7.45 -7.5 l -21.6 -27.5 l -10 0 l -10 10 z",
"1:DET": "M 0 -35 l -7.5 7.5 l 21.65 27.5 l 10 0 l 10 -10 l -14.55 0 l -19.6 -25 z",
RTR: "M 0 -22.5 l 12.5 12.5 l -25 0 l -10 10 l 40 0 l 10 -10 l -20 -20 l -7.5 7.5 z",
PRS: "M 0 -17.45 l 1.25 1.15 q 5.45 -4.65 10.85 -3.05 q 5.65 1.7 5.7 9.35 l -25 0 l -10 10 l 40 0 l 10 -10 q -14.916 -23.194 -32.8 -7.45 z",
HAB: "M 0 -31.3 l -1.25 -1.15 q -15.871 14.121 -3.75 22.45 l -20 0 l -10 10 l 40 0 l 10 -10 q -24.307 -9.097 -15 -21.3 z",
PRG: "M 0 -30 l -7.5 7.5 l 12.5 12.5 l -25 0 l -17.5 17.5 l 1.2 1.2 l 8.7 -8.7 l 37.6 0 l 10 -10 l -20 -20 z",
IMM: "M 0 -17.45 l 1.25 1.15 q 5.45 -4.65 10.85 -3.05 q 5.65 1.7 5.7 9.35 l -25 0 l -17.5 17.5 l 1.2 1.2 l 8.7 -8.7 l 37.6 0 l 10 -10 q -14.9 -23.2 -32.8 -7.45 z",
PCS: "M 0 -10 q -24.3 -9.1 -15 -21.3 l -1.25 -1.15 q -15.85 14.1 -3.75 22.45 l -20 0 l -17.5 17.5 l 1.2 1.2 l 8.7 -8.7 l 37.6 0 l 10 -10 z",
REG: "M 0 -23.1 l -1.2 -1.1 q -22.3 -0.55 -21.95 24.2 l 40 0 l 10 -10 l -40 0 q -0.1 -10.25 13.15 -13.1 z",
SMM: "M 0 -10 l -12.5 -12.5 l -7.5 7.5 l 5 5 l -25 0 q -0.1 -10.25 13.15 -13.1 l -1.2 -1.1 q -22.3 -0.55 -21.95 24.2 l 40 0 l 10 -10 z",
ATP: "M 0 -10 q -0.1 -10.25 13.15 -13.1 l -1.2 -1.1 q -22.3 -0.55 -21.95 24.2 l 37.6 0 l -7.5 7.5 l 1.2 1.2 l 18.7 -18.7 l -40 0 z",
RSM: "M 0 2.5 l -12.5 -12.5 l 25 0 l 10 -10 l -40 0 l -10 10 l 20 20 l 7.5 -7.5 z",
CSS: "M 0 -2.55 l -1.25 -1.15 q -5.45 4.65 -10.85 3.05 q -5.65 -1.7 -5.7 -9.35 l 25 0 l 10 -10 l -40 0 l -10 10 q 14.916 23.194 32.8 7.45 z",
PAU: "M 0 11.3 l 1.25 1.15 q 15.871 -14.121 3.75 -22.45 l 20 0 l 10 -10 l -40 0 l -10 10 q 24.307 9.097 15 21.3 z",
RGR: "M 0 10 l 7.5 -7.5 l -12.5 -12.5 l 25 0 l 17.5 -17.5 l -1.2 -1.2 l -8.7 8.7 l -37.6 0 l -10 10 l 20 20 z",
PCL: "M 0 -2.55 l -1.25 -1.15 q -5.45 4.65 -10.85 3.05 q -5.65 -1.7 -5.7 -9.35 l 25 0 l 17.5 -17.5 l -1.2 -1.2 l -8.7 8.7 l -37.6 0 l -10 10 q 14.9 23.2 32.8 7.45 z",
CNT: "M 0 -10 q 24.3 9.1 15 21.3 l 1.25 1.15 q 15.85 -14.1 3.75 -22.45 l 20 0 l 17.5 -17.5 l -1.2 -1.2 l -8.7 8.7 l -37.6 0 l -10 10 z",
ICS: "M 0 3.1 l 1.2 1.1 q 22.3 0.55 21.95 -24.2 l -40 0 l -10 10 l 40 0 q 0.1 10.25 -13.15 13.1 z",
EXP: "M 0 -10 l 12.5 12.5 l 7.5 -7.5 l -5 -5 l 25 0 q 0.1 10.25 -13.15 13.1 l 1.2 1.1 q 22.3 0.55 21.95 -24.2 l -40 0 l -10 10 z",
IRP: "M 0 -10 q 0.1 10.25 -13.15 13.1 l 1.2 1.1 q 22.3 0.55 21.95 -24.2 l -37.6 0 l 7.5 -7.5 l -1.2 -1.2 l -18.7 18.7 l 40 0 z",
PMP: "M 0 -20 l -10 10 l 37.55 0 l -9.95 10 l 17.4 0 l 10 -10 l -15 0 l 10 -10 l -40 0 z",
CLM: "M 0 -20 l -10 10 l 37.7 0 l -5.9 5.9 l 13 12.9 l 7 -7 l -11.8 -11.8 l 10 -10 l -40 0 z",
DLT: "M 0 -10 l 0.05 0 l -7.65 7.65 l 0 17.45 l 10 -10 l 0 -15.1 l 10 -10 l -40 0 l -10 10 l 37.6 0 z",
TMP: "M 0 -20 l -10 10 l 40 0 l 7.6 -7.6 l 0 19.95 l 10 -9.9 l 0 -22.45 l -10 10 l -37.6 0 z",
XPD: "M 0 -7.7 l 7 -7 l -12.95 -12.95 l -7.05 7.05 l -37.7 0 l -10 10 l 40 0 l 8.85 -8.85 l 11.85 11.75 z",
LIM: "M 0 -5 l -10 10 l 40 0 l 17.6 -17.6 l 0 -15 l -10 10 l 0 12.6 l -37.6 0 z",
EPD: "M 0 -20 l -10 10 l 37.65 0 l -6.3 6.35 q 17.65 2.6 15.5 14.85 q 10.9 -11.8 -6.85 -21.25 l 10 -9.95 l -40 0 z",
PTC: "M 0 -10 l -6.3 6.35 q 5.6 10.2 27.5 9.85 q -16.25 -5.4 -18.85 -16.2 l 10 -10 l -40 0 l -10 10 l 37.65 0 z",
PPR: "M 0 -20 l -10 10 l 40 0 l 0 15 l 10 -10 l 0 -15 l -40 0 z",
DCL: "M 0 0 l 10 -10 l -37.55 0 l 9.95 -10 l -17.4 0 l -10 10 l 15 0 l -10 10 l 40 0 z",
CCL: "M 0 0 l 10 -10 l -37.7 0 l 5.9 -5.9 l -13 -12.9 l -7 7 l 11.8 11.8 l -10 10 l 40 0 z",
CUL: "M 0 -10 l -0.05 0 l 7.65 -7.65 l 0 -17.45 l -10 10 l 0 15.1 l -10 10 l 40 0 l 10 -10 l -37.6 0 z",
IMD: "M 0 0 l 10 -10 l -40 0 l -7.6 7.6 l 0 -19.95 l -10 9.9 l 0 22.45 l 10 -10 l 37.6 0 z",
TRD: "M 0 -12.3 l -7 7 l 12.95 12.95 l 7.05 -7.05 l 37.7 0 l 10 -10 l -40 0 l -8.85 8.85 l -11.85 -11.75 z",
TNS: "M 0 -15 l 10 -10 l -40 0 l -17.6 17.6 l 0 15 l 10 -10 l 0 -12.6 l 37.6 0 z",
ITC: "M 0 0 l 10 -10 l -37.65 0 l 6.3 -6.35 q -17.65 -2.6 -15.5 -14.85 q -10.9 11.8 6.85 21.25 l -10 9.95 l 40 0 z",
MTV: "M 0 -10 l 6.3 -6.35 q -5.6 -10.2 -27.5 -9.85 q 16.25 5.4 18.85 16.2 l -10 10 l 40 0 l 10 -10 l -37.65 0 z",
SQN: "M 0 0 l 10 -10 l -40 0 l 0 -15 l -10 10 l 0 15 l 40 0 z",
});
/** An object containing all tertiary segments. */
export const HANDWRITTEN_TERTIARY_SEGMENTS = /* @__PURE__ */ deepFreeze({
PUN: "M 0 0 v -40",
ITR: "M 0 0 v -30 a 10 10 0 0 0 -10 -10",
REP: "M 0 0 a 10 10 0 0 1 -10 -10 v -30",
ITM: "M 0 0 a 10 10 0 0 1 -10 -10 v -20 a 10 10 0 0 0 -10 -10",
RCT: "M 0 0 a 10 10 0 0 0 10 -10 v -30",
FRE: "M 0 0 l 17.5 -10 m -17.5 10 l 10 -17.5 l -12.5 -12.5",
FRG: "M 0 -30 l -17.5 10 m 17.5 -10 l -10 17.5 l 12.5 12.5",
VAC: "M 0 0 l 10 -17.5 l -15 -15",
FLC: "M 0 0 l -15 -15 l 10 -17.5",
"1:BEN": "M 0 0 l -20 -30",
"2:BEN": "M 0 0 l -15 -22.5 c -6 -9 -10 -2 -10 -2",
"3:BEN": "M 0 -27.0936 l 15 22.5 c 6 9 10 2 10 2",
"SLF:BEN": "M 0 -19.593571389770506 l 10 15 c 6 9 10 2 10 2 m -20 -17 c -6 -9 -10 -2 -10 -2",
UNK: "M 0 0 l -15 -22.5 c -5 -7 2 -10 2 -10",
"SLF:DET": "M 0 -32.5 l 15 22.5 c 5 7 -2 10 -2 10",
"3:DET": "M 0 0 h -7.5 l -20 -30 l -6 9",
"2:DET": "M 0 0 l -20 -30 h -7.5",
"1:DET": "M 0 0 h -7.5 l -20 -30",
RTR: "M 0 0 h 30 l -20 -20",
PRS: "M 0 0 h 30 c 0 -20 -20 -20 -20 -20",
HAB: "M 0 0 h 30 c -15 -5 -20 -10 -20 -20",
PRG: "M 0 7.5 l 7.5 -7.5 h 25 l -20 -20",
IMM: "M 0 7.5 l 7.5 -7.5 h 25 c 0 -20 -20 -20 -20 -20",
PCS: "M 0 7.5 l 7.5 -7.5 h 25 c -15 -5 -20 -10 -20 -20",
REG: "M 0 0 h -30 c 0 -20 20 -20 20 -20",
SMM: "M 0 -7.5 l 5 7.5 h -30 c 0 -20 20 -20 20 -20",
ATP: "M 0 7.5 l 5 -7.5 h -30 c 0 -20 20 -20 20 -20",
RSM: "M 0 -20 h -30 l 20 20",
CSS: "M 0 -20 h -30 c 0 20 20 20 20 20",
PAU: "M 0 -20 h -30 c 15 5 20 10 20 20",
RGR: "M 0 -27.5 l -7.5 7.5 h -25 l 20 20",
PCL: "M 0 -27.5 l -7.5 7.5 h -25 c 0 20 20 20 20 20",
CNT: "M 0 -27.5 l -7.5 7.5 h -25 c 15 5 20 10 20 20",
ICS: "M 0 -20 h 30 c 0 20 -20 20 -20 20",
EXP: "M 0 -12.5 l -5 -7.5 h 30 c 0 20 -20 20 -20 20",
IRP: "M 0 -27.5 l -5 7.5 h 30 c 0 20 -20 20 -20 20",
PMP: "M 0 0 h -10 a 5 5 0 0 0 0 -10 h -20",
CLM: "M 0 5 a 5 5 0 0 1 0 -10 h -30",
DLT: "M 0 5 c 0 -10 10 -15 10 -15 h -30",
TMP: "M 0 0 v -15 a 7.5 7.5 0 0 1 -7.5 7.5 h -22.5",
XPD: "M 0 0 c -5 -10 -14 -10 -12 0 h -18",
LIM: "M 0 0 h 30 a 7.5 10 0 0 1 -7.5 -10",
EPD: "M 0 -7.5 h 27.5 l -7.5 7.5 c 10 -5 15 0 10 5",
PTC: "M 0 0 c -5 10 -14 10 -12 0 h -18",
PPR: "M 0 5 v -10 h -30",
DCL: "M 0 -10 h 10 a -5 -5 0 0 0 0 10 h 20",
CCL: "M 0 -10 a -5 -5 0 0 1 0 10 h 30",
CUL: "M 0 -15 c 0 10 -10 15 -10 15 h 30",
IMD: "M 0 -10 v 15 a -7.5 -7.5 0 0 1 7.5 -7.5 h 22.5",
TRD: "M 0 -2.5 c 5 10 14 10 12 0 h 18",
TNS: "M 0 -5 h -30 a -7.5 -10 0 0 1 7.5 10",
ITC: "M 0 0 h -27.5 l 7.5 -7.5 c -10 5 -15 0 -10 -5",
MTV: "M 0 0 c 5 -10 14 -10 12 0 h 18",
SQN: "M 0 -10 v 10 h 30",
});