This commit is contained in:
Yuriha 2023-06-16 12:52:14 +00:00
parent 446f0c2ea5
commit 4cfd28a452

View file

@ -88,15 +88,17 @@ export default function(props: {
switch (token.props.name) { switch (token.props.name) {
case 'ruby': { case 'ruby': {
let rb, rt, tokens; let rb, rt, tokens;
if (token.children.length == 1 && token.children[0].type == 'text') { token.children.forEach((t) => { if (t.type == 'text') { t.props.text = t.props.text.trim(); });
tokens = token.props.text.trim().split(" "); const children = token.children.filter((t) => t.type != 'text' || t.props.text != '');
if (children.length == 1 && children[0].type == 'text') {
tokens = children[0].props.text.split(" ");
rb = [tokens[0]]; rb = [tokens[0]];
rt = [tokens.slice(1).join(' ')]; rt = [tokens.slice(1).join(' ')];
} else if (token.children.length > 2) { } else if (children.length >= 2) {
rb = genEl([token.children[0]], scale); rb = genEl([children[0]], scale);
rt = genEl(token.children.slice(1), scale); rt = genEl(children.slice(1), scale);
} else { } else {
return genEl(token.children, scale); return genEl(children, scale);
} }
return [h('ruby', {}, [h('rb', {}, rb), h('rt', {}, rt)])]; return [h('ruby', {}, [h('rb', {}, rb), h('rt', {}, rt)])];
} }