217 lines
7.7 KiB
Dart
217 lines
7.7 KiB
Dart
/// Part-of-speech tags from JMdict
|
|
///
|
|
/// See https://www.edrdg.org/jmwsgi/edhelp.py#kw_pos
|
|
enum JMdictPOS {
|
|
adjF(id: 'adj-f', description: 'noun or verb acting prenominally'),
|
|
adjI(id: 'adj-i', description: 'adjective (keiyoushi)'),
|
|
adjIx(id: 'adj-ix', description: 'adjective (keiyoushi) - yoi/ii class'),
|
|
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)',
|
|
),
|
|
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\'',
|
|
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'),
|
|
aux(id: 'aux', description: 'auxiliary'),
|
|
auxAdj(id: 'aux-adj', description: 'auxiliary adjective'),
|
|
auxV(id: 'aux-v', description: 'auxiliary verb'),
|
|
conj(id: 'conj', description: 'conjunction'),
|
|
cop(id: 'cop', description: 'copula'),
|
|
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)',
|
|
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'),
|
|
nSuf(id: 'n-suf', description: 'noun, used as a suffix'),
|
|
nT(id: 'n-t', description: 'noun (temporal) (jisoumeishi)'),
|
|
num(id: 'num', description: 'numeric'),
|
|
pn(id: 'pn', description: 'pronoun'),
|
|
pref(id: 'pref', description: 'prefix'),
|
|
prt(id: 'prt', description: 'particle'),
|
|
suf(id: 'suf', description: 'suffix'),
|
|
unc(id: 'unc', description: 'unclassified'),
|
|
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)'),
|
|
v2bK(
|
|
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)',
|
|
),
|
|
v2dK(
|
|
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)',
|
|
),
|
|
v2gK(
|
|
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)',
|
|
),
|
|
v2hK(
|
|
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)',
|
|
),
|
|
v2kK(
|
|
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)',
|
|
),
|
|
v2mK(
|
|
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)',
|
|
),
|
|
v2nS(
|
|
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)',
|
|
),
|
|
v2rS(
|
|
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)',
|
|
),
|
|
v2tK(
|
|
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)',
|
|
),
|
|
v2wS(
|
|
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)',
|
|
),
|
|
v2yS(
|
|
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)'),
|
|
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'),
|
|
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'),
|
|
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'),
|
|
v5uS(
|
|
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)',
|
|
),
|
|
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',
|
|
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)',
|
|
);
|
|
|
|
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,
|
|
orElse: () => throw Exception('Unknown id: $id'),
|
|
);
|
|
|
|
Map<String, Object?> toJson() => {'id': id, 'description': description};
|
|
|
|
static JMdictPOS fromJson(Map<String, Object?> json) =>
|
|
JMdictPOS.values.firstWhere(
|
|
(e) => e.id == json['id'],
|
|
orElse: () => throw Exception('Unknown id: ${json['id']}'),
|
|
);
|
|
}
|