Overview
| Comment: | [graphspell][js] dictionaries merger | 
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive | 
| Timelines: | family | ancestors | descendants | both | graphspell | comdic | 
| Files: | files | file ages | folders | 
| SHA3-256: | 
a3a2352766fb64427996155dc4cbbe00 | 
| User & Date: | olr on 2019-01-30 16:35:10 | 
| Other Links: | branch diff | manifest | tags | 
Context
| 
   2019-02-02 
 | ||
| 11:32 | [fx] gc available for input[text] check-in: e37dc0b5db user: olr tags: fx, comdic | |
| 
   2019-01-30 
 | ||
| 16:35 | [graphspell][js] dictionaries merger check-in: a3a2352766 user: olr tags: graphspell, comdic | |
| 16:33 | [fx] dictionaries reorganization check-in: c3e4095da4 user: olr tags: fx, comdic | |
Changes
Added graphspell-js/dic_merger.js version [e44b159d9d].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >  | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55  | 
// Dictionaries merger
"use strict";
if (typeof(process) !== 'undefined') {
    var dawg = require("./dawg.js");
    var ibdawg = require("./ibdawg.js");
}
else if (typeof(require) !== 'undefined') {
    var dawg = require("resource://grammalecte/graphspell/dawg.js");
    var ibdawg = require("resource://grammalecte/graphspell/ibdawg.js");
}
const dic_merger = {
    merge: function (lDict, cStemming, sLangCode, sLangName, sDicName, sDescription, xProgressBar=null) {
        // merge a list of dictionaries (given as JSON objects)
        // return a merged dictionary as JSON object.
        if (xProgressBar) {
            xProgressBar.max = lDict.length;
            xProgressBar.value = 0;
        }
        let lEntry = [];
        for (let oDict of lDict) {
            // generate words list from selected dictionaries
            if (xProgressBar) {
                xProgressBar.value += 1;
            }
            try {
                let oIBDAWG = new IBDAWG(oDict);
                for (let aRes of oIBDAWG.select()) {
                    lEntry.push(aRes);
                }
            }
            catch (e) {
                console.error(e);
            }
        }
        if (xProgressBar) {
            xProgressBar.value = xProgressBar.max;
        }
        try {
            let oDAWG = new DAWG(lEntry, cStemming, sLangCode, sLangName, sDicName, sDescription, xProgressBar);
            let oDict = oDAWG.createBinaryJSON(1);
            return oDict;
        }
        catch (e) {
            console.log("Dictionaries merger: unable to generate merged dictionary");
            console.error(e);
            return null;
        }
    }
}
 |