120 lines
5.7 KiB
Dart
120 lines
5.7 KiB
Dart
/// Domain / Field of expertise tags from JMdict
|
|
///
|
|
/// See https://www.edrdg.org/jmwsgi/edhelp.py#kw_fld
|
|
enum JMdictField {
|
|
agriculture(id: 'agric', description: 'agriculture'),
|
|
anatomy(id: 'anat', description: 'anatomy'),
|
|
archeology(id: 'archeol', description: 'archeology'),
|
|
architecture(id: 'archit', description: 'architecture'),
|
|
art(id: 'art', description: 'art, aesthetics'),
|
|
astronomy(id: 'astron', description: 'astronomy'),
|
|
audiovisual(id: 'audvid', description: 'audiovisual'),
|
|
aviation(id: 'aviat', description: 'aviation'),
|
|
baseball(id: 'baseb', description: 'baseball'),
|
|
biochemistry(id: 'biochem', description: 'biochemistry'),
|
|
biology(id: 'biol', description: 'biology'),
|
|
botany(id: 'bot', description: 'botany'),
|
|
boxing(id: 'boxing', description: 'boxing'),
|
|
buddhism(id: 'Buddh', description: 'Buddhism'),
|
|
business(id: 'bus', description: 'business'),
|
|
cardGames(id: 'cards', description: 'card games'),
|
|
chemistry(id: 'chem', description: 'chemistry'),
|
|
chineseMythology(id: 'chmyth', description: 'Chinese mythology'),
|
|
christianity(id: 'Christn', description: 'Christianity'),
|
|
civilEngineering(id: 'civeng', description: 'civil engineering'),
|
|
clothing(id: 'cloth', description: 'clothing'),
|
|
computing(id: 'comp', description: 'computing'),
|
|
crystallography(id: 'cryst', description: 'crystallography'),
|
|
dentistry(id: 'dent', description: 'dentistry'),
|
|
ecology(id: 'ecol', description: 'ecology'),
|
|
economics(id: 'econ', description: 'economics'),
|
|
electricEngineering(id: 'elec', description: 'electricity, elec. eng.'),
|
|
electronics(id: 'electr', description: 'electronics'),
|
|
embryology(id: 'embryo', description: 'embryology'),
|
|
engineering(id: 'engr', description: 'engineering'),
|
|
entomology(id: 'ent', description: 'entomology'),
|
|
figureSkating(id: 'figskt', description: 'figure skating'),
|
|
film(id: 'film', description: 'film'),
|
|
finance(id: 'finc', description: 'finance'),
|
|
fishing(id: 'fish', description: 'fishing'),
|
|
food(id: 'food', description: 'food, cooking'),
|
|
gardening(id: 'gardn', description: 'gardening, horticulture'),
|
|
genetics(id: 'genet', description: 'genetics'),
|
|
geography(id: 'geogr', description: 'geography'),
|
|
geology(id: 'geol', description: 'geology'),
|
|
geometry(id: 'geom', description: 'geometry'),
|
|
go(id: 'go', description: 'go (game)'),
|
|
golf(id: 'golf', description: 'golf'),
|
|
grammar(id: 'gramm', description: 'grammar'),
|
|
greekMythology(id: 'grmyth', description: 'Greek mythology'),
|
|
hanafuda(id: 'hanaf', description: 'hanafuda'),
|
|
horseRacing(id: 'horse', description: 'horse racing'),
|
|
internet(id: 'internet', description: 'Internet'),
|
|
japaneseMythology(id: 'jpmyth', description: 'Japanese mythology'),
|
|
kabuki(id: 'kabuki', description: 'kabuki'),
|
|
law(id: 'law', description: 'law'),
|
|
linguistics(id: 'ling', description: 'linguistics'),
|
|
logic(id: 'logic', description: 'logic'),
|
|
martialArts(id: 'MA', description: 'martial arts'),
|
|
mahjong(id: 'mahj', description: 'mahjong'),
|
|
manga(id: 'manga', description: 'manga'),
|
|
mathematics(id: 'math', description: 'mathematics'),
|
|
mechanicalEngineering(id: 'mech', description: 'mechanical engineering'),
|
|
medicine(id: 'med', description: 'medicine'),
|
|
meteorology(id: 'met', description: 'meteorology'),
|
|
military(id: 'mil', description: 'military'),
|
|
mineralogy(id: 'min', description: 'mineralogy'),
|
|
mining(id: 'mining', description: 'mining'),
|
|
motorsport(id: 'motor', description: 'motorsport'),
|
|
music(id: 'music', description: 'music'),
|
|
noh(id: 'noh', description: 'noh (theatre)'),
|
|
ornithology(id: 'ornith', description: 'ornithology'),
|
|
paleontology(id: 'paleo', description: 'paleontology'),
|
|
pathology(id: 'pathol', description: 'pathology'),
|
|
pharmacology(id: 'pharm', description: 'pharmacology'),
|
|
philosophy(id: 'phil', description: 'philosophy'),
|
|
photography(id: 'photo', description: 'photography'),
|
|
physics(id: 'physics', description: 'physics'),
|
|
physiology(id: 'physiol', description: 'physiology'),
|
|
politics(id: 'politics', description: 'politics'),
|
|
printing(id: 'print', description: 'printing (press)'),
|
|
professionalWrestling(id: 'prowres', description: 'professional wrestling'),
|
|
psychiatry(id: 'psy', description: 'psychiatry'),
|
|
psychoanalysis(id: 'psyanal', description: 'psychoanalysis'),
|
|
psychology(id: 'psych', description: 'psychology'),
|
|
railway(id: 'rail', description: 'railway'),
|
|
romanMythology(id: 'rommyth', description: 'Roman mythology'),
|
|
shinto(id: 'Shinto', description: 'Shinto'),
|
|
shogi(id: 'shogi', description: 'shogi (game)'),
|
|
skiing(id: 'ski', description: 'skiing'),
|
|
sports(id: 'sports', description: 'sports'),
|
|
statistics(id: 'stat', description: 'statistics'),
|
|
stockMarket(id: 'stockm', description: 'stock market'),
|
|
sumo(id: 'sumo', description: 'sumo (wrestling)'),
|
|
surgery(id: 'surg', description: 'surgery'),
|
|
telecommunications(id: 'telec', description: 'telecommunications'),
|
|
trademark(id: 'tradem', description: 'trademark'),
|
|
television(id: 'tv', description: 'television'),
|
|
veterinaryTerms(id: 'vet', description: 'veterinary terms'),
|
|
videoGames(id: 'vidg', description: 'video games'),
|
|
zoology(id: 'zool', description: 'zoology');
|
|
|
|
final String id;
|
|
final String description;
|
|
|
|
const JMdictField({required this.id, required this.description});
|
|
|
|
static JMdictField fromId(String id) => JMdictField.values.firstWhere(
|
|
(e) => e.id == id,
|
|
orElse: () => throw Exception('Unknown id: $id'),
|
|
);
|
|
|
|
Map<String, Object?> toJson() => {'id': id, 'description': description};
|
|
|
|
static JMdictField fromJson(Map<String, Object?> json) =>
|
|
JMdictField.values.firstWhere(
|
|
(e) => e.id == json['id'],
|
|
orElse: () => throw Exception('Unknown id: ${json['id']}'),
|
|
);
|
|
}
|