From 08f25f6277c6a26884d1c90ceb39ddcd32471e20 Mon Sep 17 00:00:00 2001 From: h7x4 Date: Mon, 19 May 2025 23:53:38 +0200 Subject: [PATCH] lib/models/jmdict_pos: add `shortDescription` --- lib/models/jmdict/jmdict_pos.dart | 209 +++++++++++++++++------------- 1 file changed, 121 insertions(+), 88 deletions(-) diff --git a/lib/models/jmdict/jmdict_pos.dart b/lib/models/jmdict/jmdict_pos.dart index 9e035e5..6a49773 100644 --- a/lib/models/jmdict/jmdict_pos.dart +++ b/lib/models/jmdict/jmdict_pos.dart @@ -8,17 +8,20 @@ enum JMdictPOS { adjKari(id: 'adj-kari', description: '\'kari\' adjective (archaic)'), adjKu(id: 'adj-ku', description: '\'ku\' adjective (archaic)'), adjNa( - id: 'adj-na', - description: 'adjectival nouns or quasi-adjectives (keiyodoshi)'), + id: 'adj-na', + description: 'adjectival nouns or quasi-adjectives (keiyodoshi)', + ), adjNari(id: 'adj-nari', description: 'archaic/formal form of na-adjective'), adjNo( - id: 'adj-no', - description: 'nouns which may take the genitive case particle ' 'no' ''), + id: 'adj-no', + description: 'nouns which may take the genitive case particle \'no\'', + shortDescription: 'Na-adjective (keiyodoshi)', + ), adjPn(id: 'adj-pn', description: 'pre-noun adjectival (rentaishi)'), adjShiku(id: 'adj-shiku', description: '\'shiku\' adjective (archaic)'), adjT(id: 'adj-t', description: '\'taru\' adjective'), adv(id: 'adv', description: 'adverb (fukushi)'), - advTo(id: 'adv-to', description: 'adverb taking the ' 'to' ' particle'), + advTo(id: 'adv-to', description: 'adverb taking the \'to\' particle'), aux(id: 'aux', description: 'auxiliary'), auxAdj(id: 'aux-adj', description: 'auxiliary adjective'), auxV(id: 'aux-v', description: 'auxiliary verb'), @@ -27,7 +30,11 @@ enum JMdictPOS { ctr(id: 'ctr', description: 'counter'), exp(id: 'exp', description: 'expressions (phrases, clauses, etc.)'), int(id: 'int', description: 'interjection (kandoushi)'), - n(id: 'n', description: 'noun (common) (futsuumeishi)'), + n( + id: 'n', + description: 'noun (common) (futsuumeishi)', + shortDescription: 'noun', + ), nAdv(id: 'n-adv', description: 'adverbial noun (fukushitekimeishi)'), nPr(id: 'n-pr', description: 'proper noun'), nPref(id: 'n-pref', description: 'noun, used as a prefix'), @@ -42,131 +49,157 @@ enum JMdictPOS { vUnspec(id: 'v-unspec', description: 'verb unspecified'), v1(id: 'v1', description: 'Ichidan verb'), v1S(id: 'v1-s', description: 'Ichidan verb - kureru special class'), - v2aS(id: 'v2a-s', description: 'Nidan verb with ' 'u' ' ending (archaic)'), + v2aS(id: 'v2a-s', description: 'Nidan verb with \'u\' ending (archaic)'), v2bK( - id: 'v2b-k', - description: 'Nidan verb (upper class) with ' 'bu' ' ending (archaic)'), + id: 'v2b-k', + description: 'Nidan verb (upper class) with \'bu\' ending (archaic)', + ), v2bS( - id: 'v2b-s', - description: 'Nidan verb (lower class) with ' 'bu' ' ending (archaic)'), + id: 'v2b-s', + description: 'Nidan verb (lower class) with \'bu\' ending (archaic)', + ), v2dK( - id: 'v2d-k', - description: 'Nidan verb (upper class) with ' 'dzu' ' ending (archaic)'), + id: 'v2d-k', + description: 'Nidan verb (upper class) with \'dzu\' ending (archaic)', + ), v2dS( - id: 'v2d-s', - description: 'Nidan verb (lower class) with ' 'dzu' ' ending (archaic)'), + id: 'v2d-s', + description: 'Nidan verb (lower class) with \'dzu\' ending (archaic)', + ), v2gK( - id: 'v2g-k', - description: 'Nidan verb (upper class) with ' 'gu' ' ending (archaic)'), + id: 'v2g-k', + description: 'Nidan verb (upper class) with \'gu\' ending (archaic)', + ), v2gS( - id: 'v2g-s', - description: 'Nidan verb (lower class) with ' 'gu' ' ending (archaic)'), + id: 'v2g-s', + description: 'Nidan verb (lower class) with \'gu\' ending (archaic)', + ), v2hK( - id: 'v2h-k', - description: - 'Nidan verb (upper class) with ' 'hu/fu' ' ending (archaic)'), + id: 'v2h-k', + description: 'Nidan verb (upper class) with \'hu/fu\' ending (archaic)', + ), v2hS( - id: 'v2h-s', - description: - 'Nidan verb (lower class) with ' 'hu/fu' ' ending (archaic)'), + id: 'v2h-s', + description: 'Nidan verb (lower class) with \'hu/fu\' ending (archaic)', + ), v2kK( - id: 'v2k-k', - description: 'Nidan verb (upper class) with ' 'ku' ' ending (archaic)'), + id: 'v2k-k', + description: 'Nidan verb (upper class) with \'ku\' ending (archaic)', + ), v2kS( - id: 'v2k-s', - description: 'Nidan verb (lower class) with ' 'ku' ' ending (archaic)'), + id: 'v2k-s', + description: 'Nidan verb (lower class) with \'ku\' ending (archaic)', + ), v2mK( - id: 'v2m-k', - description: 'Nidan verb (upper class) with ' 'mu' ' ending (archaic)'), + id: 'v2m-k', + description: 'Nidan verb (upper class) with \'mu\' ending (archaic)', + ), v2mS( - id: 'v2m-s', - description: 'Nidan verb (lower class) with ' 'mu' ' ending (archaic)'), + id: 'v2m-s', + description: 'Nidan verb (lower class) with \'mu\' ending (archaic)', + ), v2nS( - id: 'v2n-s', - description: 'Nidan verb (lower class) with ' 'nu' ' ending (archaic)'), + id: 'v2n-s', + description: 'Nidan verb (lower class) with \'nu\' ending (archaic)', + ), v2rK( - id: 'v2r-k', - description: 'Nidan verb (upper class) with ' 'ru' ' ending (archaic)'), + id: 'v2r-k', + description: 'Nidan verb (upper class) with \'ru\' ending (archaic)', + ), v2rS( - id: 'v2r-s', - description: 'Nidan verb (lower class) with ' 'ru' ' ending (archaic)'), + id: 'v2r-s', + description: 'Nidan verb (lower class) with \'ru\' ending (archaic)', + ), v2sS( - id: 'v2s-s', - description: 'Nidan verb (lower class) with ' 'su' ' ending (archaic)'), + id: 'v2s-s', + description: 'Nidan verb (lower class) with \'su\' ending (archaic)', + ), v2tK( - id: 'v2t-k', - description: 'Nidan verb (upper class) with ' 'tsu' ' ending (archaic)'), + id: 'v2t-k', + description: 'Nidan verb (upper class) with \'tsu\' ending (archaic)', + ), v2tS( - id: 'v2t-s', - description: 'Nidan verb (lower class) with ' 'tsu' ' ending (archaic)'), + id: 'v2t-s', + description: 'Nidan verb (lower class) with \'tsu\' ending (archaic)', + ), v2wS( - id: 'v2w-s', - description: 'Nidan verb (lower class) with ' - 'u' - ' ending and ' - 'we' - ' conjugation (archaic)'), + id: 'v2w-s', + description: + 'Nidan verb (lower class) with \'u\' ending and \'we\' conjugation (archaic)', + ), v2yK( - id: 'v2y-k', - description: 'Nidan verb (upper class) with ' 'yu' ' ending (archaic)'), + id: 'v2y-k', + description: 'Nidan verb (upper class) with \'yu\' ending (archaic)', + ), v2yS( - id: 'v2y-s', - description: 'Nidan verb (lower class) with ' 'yu' ' ending (archaic)'), + id: 'v2y-s', + description: 'Nidan verb (lower class) with \'yu\' ending (archaic)', + ), v2zS( - id: 'v2z-s', - description: 'Nidan verb (lower class) with ' 'zu' ' ending (archaic)'), - v4b(id: 'v4b', description: 'Yodan verb with ' 'bu' ' ending (archaic)'), - v4g(id: 'v4g', description: 'Yodan verb with ' 'gu' ' ending (archaic)'), - v4h(id: 'v4h', description: 'Yodan verb with ' 'hu/fu' ' ending (archaic)'), - v4k(id: 'v4k', description: 'Yodan verb with ' 'ku' ' ending (archaic)'), - v4m(id: 'v4m', description: 'Yodan verb with ' 'mu' ' ending (archaic)'), - v4n(id: 'v4n', description: 'Yodan verb with ' 'nu' ' ending (archaic)'), - v4r(id: 'v4r', description: 'Yodan verb with ' 'ru' ' ending (archaic)'), - v4s(id: 'v4s', description: 'Yodan verb with ' 'su' ' ending (archaic)'), - v4t(id: 'v4t', description: 'Yodan verb with ' 'tsu' ' ending (archaic)'), + id: 'v2z-s', + description: 'Nidan verb (lower class) with \'zu\' ending (archaic)', + ), + v4b(id: 'v4b', description: 'Yodan verb with \'bu\' ending (archaic)'), + v4g(id: 'v4g', description: 'Yodan verb with \'gu\' ending (archaic)'), + v4h(id: 'v4h', description: 'Yodan verb with \'hu/fu\' ending (archaic)'), + v4k(id: 'v4k', description: 'Yodan verb with \'ku\' ending (archaic)'), + v4m(id: 'v4m', description: 'Yodan verb with \'mu\' ending (archaic)'), + v4n(id: 'v4n', description: 'Yodan verb with \'nu\' ending (archaic)'), + v4r(id: 'v4r', description: 'Yodan verb with \'ru\' ending (archaic)'), + v4s(id: 'v4s', description: 'Yodan verb with \'su\' ending (archaic)'), + v4t(id: 'v4t', description: 'Yodan verb with \'tsu\' ending (archaic)'), v5aru(id: 'v5aru', description: 'Godan verb - -aru special class'), - v5b(id: 'v5b', description: 'Godan verb with ' 'bu' ' ending'), - v5g(id: 'v5g', description: 'Godan verb with ' 'gu' ' ending'), - v5k(id: 'v5k', description: 'Godan verb with ' 'ku' ' ending'), + v5b(id: 'v5b', description: 'Godan verb with \'bu\' ending'), + v5g(id: 'v5g', description: 'Godan verb with \'gu\' ending'), + v5k(id: 'v5k', description: 'Godan verb with \'ku\' ending'), v5kS(id: 'v5k-s', description: 'Godan verb - Iku/Yuku special class'), - v5m(id: 'v5m', description: 'Godan verb with ' 'mu' ' ending'), - v5n(id: 'v5n', description: 'Godan verb with ' 'nu' ' ending'), - v5r(id: 'v5r', description: 'Godan verb with ' 'ru' ' ending'), + v5m(id: 'v5m', description: 'Godan verb with \'mu\' ending'), + v5n(id: 'v5n', description: 'Godan verb with \'nu\' ending'), + v5r(id: 'v5r', description: 'Godan verb with \'ru\' ending'), v5rI( - id: 'v5r-i', - description: 'Godan verb with ' 'ru' ' ending (irregular verb)'), - v5s(id: 'v5s', description: 'Godan verb with ' 'su' ' ending'), - v5t(id: 'v5t', description: 'Godan verb with ' 'tsu' ' ending'), - v5u(id: 'v5u', description: 'Godan verb with ' 'u' ' ending'), + id: 'v5r-i', + description: 'Godan verb with \'ru\' ending (irregular verb)', + ), + v5s(id: 'v5s', description: 'Godan verb with \'su\' ending'), + v5t(id: 'v5t', description: 'Godan verb with \'tsu\' ending'), + v5u(id: 'v5u', description: 'Godan verb with \'u\' ending'), v5uS( - id: 'v5u-s', - description: 'Godan verb with ' 'u' ' ending (special class)'), + id: 'v5u-s', + description: 'Godan verb with \'u\' ending (special class)', + ), v5uru( - id: 'v5uru', - description: 'Godan verb - Uru old class verb (old form of Eru)'), + id: 'v5uru', + description: 'Godan verb - Uru old class verb (old form of Eru)', + ), vi(id: 'vi', description: 'intransitive verb'), vk(id: 'vk', description: 'Kuru verb - special class'), vn(id: 'vn', description: 'irregular nu verb'), vr(id: 'vr', description: 'irregular ru verb, plain form ends with -ri'), vs( - id: 'vs', - description: 'noun or participle which takes the aux. verb suru'), - vsC(id: 'vs-c', description: 'suru verb - precursor to the modern suru'), + id: 'vs', + description: 'noun or participle which takes the aux. verb suru', + shortDescription: 'suru verb', + ), + vsC(id: 'vs-c', description: 'su verb - precursor to the modern suru'), vsI(id: 'vs-i', description: 'suru verb - included'), vsS(id: 'vs-s', description: 'suru verb - special class'), vt(id: 'vt', description: 'transitive verb'), vz( - id: 'vz', - description: - 'Ichidan verb - zuru verb (alternative form of -jiru verbs)'); + id: 'vz', + description: 'Ichidan verb - zuru verb (alternative form of -jiru verbs)', + ); final String id; final String description; + final String? _shortDescription; const JMdictPOS({ required this.id, required this.description, - }); + String? shortDescription, + }) : _shortDescription = shortDescription; + + String get shortDescription => _shortDescription ?? description; static JMdictPOS fromId(String id) => JMdictPOS.values.firstWhere( (e) => e.id == id,