summaryrefslogtreecommitdiff
path: root/ext/bg/js/mecab.js
diff options
context:
space:
mode:
authorsiikamiika <siikamiika@users.noreply.github.com>2020-04-17 01:32:01 +0300
committerGitHub <noreply@github.com>2020-04-17 01:32:01 +0300
commit8c16a6e580bfdd70e27df1816ca90807062cf9b5 (patch)
tree25f551dfaa68427cd873fbd822abf0f2bfe09b76 /ext/bg/js/mecab.js
parente6053eefa594524c7adcec4986a5a2c499adf192 (diff)
parent619df42aedaa8da97d0a16d539b7211349143a0a (diff)
Merge pull request #456 from siikamiika/parse-text-refactor
Parse text refactor
Diffstat (limited to 'ext/bg/js/mecab.js')
-rw-r--r--ext/bg/js/mecab.js31
1 files changed, 30 insertions, 1 deletions
diff --git a/ext/bg/js/mecab.js b/ext/bg/js/mecab.js
index cd6e6c57..597dceae 100644
--- a/ext/bg/js/mecab.js
+++ b/ext/bg/js/mecab.js
@@ -40,7 +40,36 @@ class Mecab {
}
async parseText(text) {
- return await this.invoke('parse_text', {text});
+ const rawResults = await this.invoke('parse_text', {text});
+ // {
+ // 'mecab-name': [
+ // // line1
+ // [
+ // {str expression: 'expression', str reading: 'reading', str source: 'source'},
+ // {str expression: 'expression2', str reading: 'reading2', str source: 'source2'}
+ // ],
+ // line2,
+ // ...
+ // ],
+ // 'mecab-name2': [...]
+ // }
+ const results = {};
+ for (const [mecabName, parsedLines] of Object.entries(rawResults)) {
+ const result = [];
+ for (const parsedLine of parsedLines) {
+ const line = [];
+ for (const {expression, reading, source} of parsedLine) {
+ line.push({
+ expression: expression || '',
+ reading: reading || '',
+ source: source || ''
+ });
+ }
+ result.push(line);
+ }
+ results[mecabName] = result;
+ }
+ return results;
}
startListener() {