keywords-provider
Serves as provider (parser) of .lex keyword files.
- Imagine a world, full of keyword subsets for each particular language, which should be handled somehow between each other.
- Imagine a simple naive translator serving for handling of such a subsets.
- Now you knows everything about this repo :)
Distributed via npm, run npm i keywords-provider
in project you want this code.
Usage
var KeywordsProvider =
Options
@ [/]@ [@ [@ [
Example .lex file for default config
KEY wordAIR planeHOVER board
KeywordsProvider interface
/** * Applies the given config to Provider instance * * @param {Object} config @see CONFIG */applyConfig: /** * Initialises keyword storage from given folder * * @param {String} directory Directory to look keywords from. */initKeywords: /** * Returns subset of keywords by its name. * * @param {String} subset Name of one of loaded subsets * @returns {Object} */getKeywords: /** * Returns an actual value of keyword from a given subset by its id (key). * * @param {String} subset Name of one of loaded subsets * @param {String} key Id of keyword */getKeyword: /** * Returns id (key) of keyword by its actual value in given subset. * * @param {String} keyword Actual keyword value * @param {String} subset Name of one of loaded subsets*/getKeyId: /** * Translates the given keyword from the source subsets to the destination subset. * * @param {String} keyword Actual keyword value * @param {String} sourceSubset Name of source subset (one keyword came from) * @param {String} destinationSubset Name of target subset (one, translate keyword to) * @returns {String} translated keyword */translate: /** * Returns translation offset between two keywords. * As the keywords of source and target languages may have different length. * (they rarely don't) * * @param {String} keyword Actual keyword value * @param {String} sourceSubset Name of source subset (one keyword came from) * @param {String} destinationSubset Name of target subset (one, translate keyword to) * @returns {Number} count of symbols */getTranslationOffset: