Improve translation handling by processing text in chunks for better performance
This commit is contained in:
@@ -317,8 +317,15 @@ export async function translateHTML(html: string, reverse:boolean, charArg:simpl
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// node.textContent = await translate(node.textContent || '', reverse);
|
const translateChunks = (node.textContent || '').split(/\n\n+/g);
|
||||||
let translated = await translate(node.textContent || "", reverse);
|
let translatedChunksPromises: Promise<string>[] = [];
|
||||||
|
for (const chunk of translateChunks) {
|
||||||
|
const translatedPromise = translate(chunk, reverse);
|
||||||
|
translatedChunksPromises.push(translatedPromise);
|
||||||
|
}
|
||||||
|
|
||||||
|
const translatedChunks = await Promise.all(translatedChunksPromises);
|
||||||
|
let translated = translatedChunks.join("\n\n");
|
||||||
if (!reprocessDisplayScript) {
|
if (!reprocessDisplayScript) {
|
||||||
node.textContent = translated;
|
node.textContent = translated;
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user