taraskevizer
Version:
Канвэртацыя акадэмічнага правапісу ў клясычны
30 lines (29 loc) • 1.06 kB
JavaScript
export const defaultVariation = {
all: (content) => content,
first: (content) => /^[^|]*?\|([^|)]*)/.exec(content)[1],
no: (content) => /^\(([^|]*)/.exec(content)[1],
};
export const html = {
fix: (content) => `<tarF>${content}</tarF>`,
variable: {
all: (content) => {
const [main, ...parts] = content.slice(1, -1).split('|');
return `<tarL data-l='${parts}'>${main}</tarL>`;
},
first: (content) => {
const [first, main, ...parts] = content.slice(1, -1).split('|');
parts.push(first);
return `<tarL data-l='${parts}'>${main}</tarL>`;
},
no: defaultVariation.no,
},
letterH: (content) => `<tarH>${content}</tarH>`,
};
export const ansiColor = {
fix: (content) => `\x1b[32m${content}\x1b[0m`,
variable: Object.entries(defaultVariation).reduce((acc, [key, getPart]) => {
acc[key] = (content) => `\x1b[35m${getPart(content)}\x1b[0m`;
return acc;
}, {}),
letterH: (content) => `\x1b[35m${content}\x1b[0m`,
};