From 6da58c98d8393557fc1a50cbcefa5287aecf521d Mon Sep 17 00:00:00 2001 From: Tifa <62847935+Tiphereth-A@users.noreply.github.com> Date: Mon, 2 Dec 2024 18:11:46 +0800 Subject: [PATCH] fix(snippet.js): corner cases of Snippet Lines --- oi-wiki-export-typst/snippet.js | 10 +++++----- oi-wiki-export/snippet.js | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/oi-wiki-export-typst/snippet.js b/oi-wiki-export-typst/snippet.js index f85bd04..1ba1790 100644 --- a/oi-wiki-export-typst/snippet.js +++ b/oi-wiki-export-typst/snippet.js @@ -11,12 +11,12 @@ function resolvePath(snip, spacesAtStart) { if ((str.startsWith('"') && str.endsWith('"')) || (str.startsWith("'") && str.endsWith("'"))) { const strs = str.substring(1, str.length - 1).split(":") - res.path = strs[0] - if (strs.length == 3) { - res.beg_line = Number(strs[1]) - 1 - res.end_line = Number(strs[2]) - } else if (strs.length != 1) { + if (strs.length < 1 || strs.length > 3) { console.error('cannot parse snippet:', snip) + } else { + res.path = strs[0] + res.beg_line = strs[1] ? Number(strs[1]) - 1 : undefined + res.end_line = strs[2] ? Number(strs[2]) : undefined } } else { console.error('cannot parse snippet:', snip) diff --git a/oi-wiki-export/snippet.js b/oi-wiki-export/snippet.js index a333cd6..49bbc24 100644 --- a/oi-wiki-export/snippet.js +++ b/oi-wiki-export/snippet.js @@ -13,12 +13,12 @@ function resolvePath(snip, spacesAtStart) { (str.startsWith("'") && str.endsWith("'")) ) { const strs = str.substring(1, str.length - 1).split(":"); - res.path = strs[0]; - if (strs.length == 3) { - res.beg_line = Number(strs[1]) - 1; - res.end_line = Number(strs[2]); - } else if (strs.length != 1) { + if (strs.length < 1 || strs.length > 3) { console.error("cannot parse snippet:", snip); + } else { + res.path = strs[0]; + res.beg_line = strs[1] ? Number(strs[1]) - 1 : undefined; + res.end_line = strs[2] ? Number(strs[2]) : undefined; } } else { console.error("cannot parse snippet:", snip);