aboutsummaryrefslogtreecommitdiff
path: root/ext/js/language/translator.js
Commit message (Collapse)AuthorAge
* Modernize codebaseDarius Jahandarie2023-11-04
| | | | | | - Use ES modules - Remove vendored libs and build them from npm using esbuild - Switch from JSZip to zip.js
* add sort dictionary data to parse results on the search pagepraschke2023-10-13
| | | | this is based on forsakeninfinity's commit https://github.com/forsakeninfinity/yomibaba/commit/c9887d51ed5c917bb900d7964614154de1d76872
* fixed eslint, changed header to only use 2 spaces, added missing headers to testAustin Siew2023-03-22
|
* Updated LICENSE to full license, added Yomitan 2023 to all license headersAustin Siew2023-03-21
|
* Sort using number of definitions (#2166)toasted-nutbread2022-05-29
|
* Sort using frequency dictionary before using dictionary priority (#2165)toasted-nutbread2022-05-29
|
* ESlint JSdoc (#2148)toasted-nutbread2022-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Install eslint-plugin-jsdoc * Initial rules setup * Update lists * Use @returns rather than @return * Remove error throwing code which is never executed * Fix issues relating to @throws * General error fixes * Update Display type documentation * Various doc fixes * Fix invalid tuple syntax * Doc updates * Remove unused * Doc updates * Enable jsdoc/require-returns * Update rules * Update remaining rules
* Add mode documentation about the types used by Translator (#2147)toasted-nutbread2022-05-19
|
* Update copyright date (#2062)toasted-nutbread2022-02-02
| | | | | | | * Update eslint settings * Update 2021 files * Update other files
* matchType/deinflect distinction (#2040)toasted-nutbread2021-12-17
| | | | | | | * Pass a "deinflect" option to findTerms * Update Translator to use deinflect option * Fix test input options
* Dictionary database term source info (#2039)toasted-nutbread2021-12-17
| | | | | | | | | | | | | | | | | | | * Update DictionaryDatabase._findMultiBulk's createResult callback signature * Simplify _splitField use * Update sequence * Expose new fields 'matchType' and 'matchSource' as part of term data * Expose matchType and matchSource as part of TermSource * Update sourceTermExactMatchCount calculation * Update test data * Expose matchType and matchSource info in HTML attributes * Add primaryMatchTypes attribute
* Replace 'wildcard' parameter with 'matchType' (#2038)toasted-nutbread2021-12-17
|
* String frequency support (#1989)toasted-nutbread2021-10-14
| | | | | | | | | | | | | | | | | | | | | | | | | * Restore support for string frequency values * Add support for {value, displayValue} frequencies * Update test data * Improve number parsing of string frequencies * Improve reading detection * Expose a displayValue property for frequency information * Update docs * Expose displayValue to Anki note data * Fix translator * Update display generation * Update test data * Update counts
* Ensure frequency values are always numbers (#1943)toasted-nutbread2021-09-26
|
* Frequency dictionary sort (#1938)toasted-nutbread2021-09-26
| | | | | | | | | | | | | | | | | * Add sortDictionary/sortDictionaryOrder options * Update options * Add API.getTermFrequencies * Add settings * Implement frequency dictionary sorting * Update test * Update test data * Fix handling of undefined rank-based frequencies
* Fix redundant secondary term lookups (#1942)toasted-nutbread2021-09-09
|
* Fix incorrect index being used for headword removal (#1933)toasted-nutbread2021-09-05
|
* Devoice and nasal pronunciation info (#1832)toasted-nutbread2021-07-15
| | | | | | | | | | | | | * Update schema to support information about nasal and devoiced mora * Expose nasalPositions and devoicePositions in dictionary entry data * Expose nasalPositions, devoicePositions in grouped pitch info * Update display generator * Update test dictionary data * Update test data
* Translator sorting updates (#1755)toasted-nutbread2021-06-26
| | | | | | | * Update when definition sorting takes place * Update test data * Change order of sorting
* Translator data format updates (#1754)toasted-nutbread2021-06-26
| | | | | | | | | | | | | | | * Add {dictionaryIndex, dictionaryPriority} to definitions * Add score to definitions * Add id to definition * Use definition id instead of ids array * Remove ids array * Update docs * Update test data
* Improve secondary definitions (#1731)toasted-nutbread2021-06-05
| | | | | * Improve secondary search definitions * Simplify
* Translator id updates (#1730)toasted-nutbread2021-06-05
| | | | | | | | | | | * Allow unsequenced definitions to be added to multiple groups * Update translator data to store multiple IDs * Update Anki note data * Update test data * Update docs
* Add support for definitionless main dictionary (#1729)toasted-nutbread2021-06-05
|
* Improve source term exact match count (#1674)toasted-nutbread2021-05-14
| | | | | * Update sourceTermExactMatchCount to be based on headword count * Update tests
* Improve term grouping (#1653)toasted-nutbread2021-05-08
| | | | | | | | | | | | | | | * Rename _addUniqueStrings to _addUniqueSimple * Update definition merging to not depend the sequence number * Improve naming * Update AnkiNoteDataCreator * Update docs * Remove fields that no longer exist * Update test data
* Translator alphanumeric improvement (#1635)toasted-nutbread2021-04-28
| | | | | * Simplify alphanumeric check * Update option name for clarity
* Fix incorrect return type causing an error (#1623)toasted-nutbread2021-04-21
|
* Translator refactoring for consistency (#1619)toasted-nutbread2021-04-18
| | | | | | | * Remove unused argument * Improve naming in _groupDictionaryEntriesByHeadword More consistent with _getRelatedDictionaryEntries.
* Remove redundant dictionary entry sequence (#1618)toasted-nutbread2021-04-18
| | | | | | | | | * Remove sequence/sequenceDictionary from dictionary entry objects * Expose isPrimary on definitions * Update sequence * Update test data
* Improve dictionary sequence info (#1617)toasted-nutbread2021-04-18
| | | | | | | | | | | * Ensure negative sequence is always -1 * Expose sequence on definition objects * Update how sequence is exposed for definitions * Update test data * Update TS docs
* More terminology updates (#1600)toasted-nutbread2021-04-08
| | | | | | | | | | | | | | | | | | | * Update terminology * Update display * Rename expression-list to headword-list * Rename expression-current-indicator * Rename expression classes * Update dictionary entry container * Rename glossary => gloss * Rename heading * Rename gloss classes to gloss-content
* Update dictionary entry terminology (#1592)toasted-nutbread2021-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update terminology * Update terminology in display.js * Update terminology in display-audio.js * Update terminology in text-scanner.js * Update terminology in backend.js * Update terminology in mecab.js * Update terminology in audio-downloader.js * Update terminology in translator-vm.js * Update terminology in dictionary-data-util.js * Update terminology in dictionary-database.js * Update terminology in japanese-util.js * Change/upgrade {expression} to {term} * Update terminology in test-japanese.js * Update terminology in test-database.js * Update terminology in anki-templates-controller.js * Update terminology in anki-note-builder.js * Update terminology in backend.js * Update terminology in text-scanner.js * Update terminology in display.js * Update terminology in display.js
* Improve term dictionary entry sequence (#1591)toasted-nutbread2021-04-03
| | | | | | | | | | | * Improve sequence for merged entries and add sequenceDictionary * Update docs * Expose sequence in definitions * Expose sequence in root definition * Update test data
* Add part of speech info (#1561)toasted-nutbread2021-03-26
| | | | | | | | | | | | | | | | | | | * Add part of speech info to headwords * Expose parts of speech to Anki template rendering * Expose parts of speech * Update pitch accent categories * Update docs * Add part-of-speech * Update options and tests * Update markers * Update test data
* Remove debug log (#1558)toasted-nutbread2021-03-25
|
* Fix incorrect sorting (#1557)toasted-nutbread2021-03-25
| | | | | | | * Sort by the maximum length of transformedText instead of deinflectedText * Update docs * Update tests
* Refactor Translator and dictionary entry format (#1553)toasted-nutbread2021-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Update test data * Move translator.js * Create new version of Translator * Update Backend * Update DictionaryDataUtil * Update DisplayGenerator * Create AnkiNoteDataCreator * Replace AnkiNoteData with AnkiNoteDataCreator * Update tests * Remove AnkiNoteData * Update test data * Remove translator-old.js * Add TypeScript interface definitions for the new translator data format
* Dictionary database improvements (#1527)toasted-nutbread2021-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update formatting * Add _findMultiBulk * Update implementation of findTermsBySequenceBulk * Update tests * Generalize query creation * Remove _findGenericBulk * Reduce function creation * Add more bindings * Simplify findTermsExactBulk implementation * Update var names * Update _findMultiBulk to support multiple index queries * Update findTermsBulk * Update getMedia implementation * Pass data arg to getAll and findFirst to avoid having multiple closures
* Fix sorting of non-top-level definitions (#1516)toasted-nutbread2021-03-10
|
* Clean up translator (#1505)toasted-nutbread2021-03-08
| | | | | | | | | | | | | | | * Remove unused: _removeUsedDefinitions * Remove unused: _scoreToTermFrequency * Remove unused: _getTermTagsScoreSum * Add RegexUtil * Update Translator to use RegexUtil * Update sw.js * Update tests
* Refactor term frequency data (#1503)toasted-nutbread2021-03-07
| | | | | | | | | | | * Add getTermFrequency * Update DisplayGenerator to use getTermFrequency * Remove termFrequency from Translator data * Backwards compatibility * Update tests
* Refactor furigana segment data (#1502)toasted-nutbread2021-03-07
| | | | | | | | | | | * Remove redundant language assignment * Segment furigana from DisplayGenerator * Remove furiganaSegments from translator data * Add backwards compatibility for furiganaSegments * Update tests
* Deinflector refactor (#1501)toasted-nutbread2021-03-07
| | | | | | | | | * Make Deinflector._ruleTypes private * Add createDeinflection helper * Remove unnecessary field assignments from Deinflector Move them to Translator instead
* Translator data format improvements (#1500)toasted-nutbread2021-03-07
| | | | | * Update _createTermDetailsList usage and docs * Update source of expression/reading/furiganaSegments
* Improve empty reading handling (#1497)toasted-nutbread2021-03-06
| | | | | | | * Handle empty readings earlier in the definition creation process * Remove empty reading check * Remove special handling of empty readings
* Use dictionary priority later in the definition sorting algorithm (#1492)toasted-nutbread2021-03-06
|
* Split dictionary order and index sorting (#1491)toasted-nutbread2021-03-06
| | | | | | | | | * Refactor expression comparison * Rename function * Add dictionary index sorting * Update test data
* Fix missing meta when reading is empty (#1486)toasted-nutbread2021-03-05
|
* Refactor translator merged mode (#1474)toasted-nutbread2021-03-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove sourceDefinitions * Add id * Remove related definitions from unsequencedDefinitions * Add separate _addRelatedDefinitions function * Add secondary definitions * Update how secondary definitions are added * Update expression/reading source * Move _mergeByGlossary body * Refactor _createTermDetailsListFromTermInfoMap * Move _addUniqueTermInfos body * Rename function * Organize * Simplify duplicate check * Rename relatedDefinitionIds to definitionIds * Refactor secondary definition adding * Early exit * Add matching unsequencedDefinitions to secondaryDefinitions * Clean * Fix incorrect condition * Move _addSecondaryDefinitions call * Add comments
* Translator refactor (#1473)toasted-nutbread2021-03-01
| | | | | | | | | | | | | * Refactor _groupTerms and add doc comment * Update where expression/reading is acquired from * Add doc comment * Add isPrimary field * Update test data * Add definition which has "isPrimary": false definitions