From 6bb99f6e0ee7a0db2154430d002f44704285a531 Mon Sep 17 00:00:00 2001 From: Sergey Elpashev Date: Fri, 28 Jun 2024 11:23:14 +0300 Subject: [PATCH] feat: showing row name (in Japanese unfortunately) --- .../translate_block.component.html | 1 + .../translate_block.component.ts | 6 +++- .../dto/translate_data.dto.ts | 1 + .../pages/nitroplus-translator/lib/parser.ts | 33 +++++++++++++------ 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/apps/NwaifuWeb/src/app/pages/nitroplus-translator/components/translate_block/translate_block.component.html b/apps/NwaifuWeb/src/app/pages/nitroplus-translator/components/translate_block/translate_block.component.html index e309c08..8eea3db 100644 --- a/apps/NwaifuWeb/src/app/pages/nitroplus-translator/components/translate_block/translate_block.component.html +++ b/apps/NwaifuWeb/src/app/pages/nitroplus-translator/components/translate_block/translate_block.component.html @@ -1,6 +1,7 @@

{{ index + 1 }}

+

{{ item.name }}

{{ item.english_text }} ]*TEXT="(?[^>"]+)"[^>]*>|<[^>]*>|\/\/.*|\s*\n\s*/gm; + const re = /^(?!\/\/)<[^>]*TEXT="(?[^>"]+)"[^>]*>/gim; for (const match of text.matchAll(re)) { + console.log(match); if (match.groups?.["textAttr"]) - result.push({ english_text: match.groups?.["textAttr"], translated_text: "" }); + result.push({ + english_text: match.groups?.["textAttr"], + translated_text: "", + name: "Choice (without name)", + }); } - const replaced_text = text.replace(re, "\n").replace(/\s*\n\s*/gm, "\n"); - result.push( - ...replaced_text - .split("\n") - .map((line) => line.trim()) - .filter((line) => line.length > 0) - .map((line) => ({ english_text: line, translated_text: "" })), - ); + const name_re = /]*>(?[\s\S]*?)(?=]*>|\/\/.*|\s*\n\s*/gm; + name_text + .split(re) + .filter((line) => line.length > 0) + .map((line) => line.trim()) + .forEach((line) => { + result.push({ english_text: line, translated_text: "", name: name }); + }); + } + } console.log(result); return result; }