feat(dictionary): characters of Chinese, Korean and Greek, written by hand; pinyin typed
Parity with Japanese's kanji and kana: - The characters' tab is named by its language (Hanzi, Hangul & Hanja, Alphabet), its groups too: HSK levels and the characters in common use (Hong Kong's grades for traditional ones); Hangul and the Hanja taught in schools; Greek's letters. Radicals for Chinese and Korean in their own forms (讠 for 言 in simplified Chinese), none for Greek. - A character's readings are named as its language names them: On and Kun, Pinyin, Eum and Hun (음, 훈); a letter means its sound and name. - How characters are written comes by language: Chinese from Make Me a Hanzi (its medians in KanjiVG's square, Arphic Public License, a data file beside the app, never in cards), the Hangul letters drawn by the curator; a Korean word is written letter by letter (닭: ㄷ ㅏ ㄺ). Words of alphabets (German, Greek) aren't written by hand. - A Chinese word's pinyin is typed in a session, tone numbers turning into marks (ni3 → nǐ); KRDict's levels (초급, 중급, 고급) tag Korean words; a Korean word's pronunciation shows in brackets ([가치]). - Smaller: Look up in the composer keeps a noun's article; the Watch filter names its level list; hints and placeholders by language. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
7070cd6bd2
commit
5479b973fc
1 changed files with 2559 additions and 230 deletions
|
|
@ -2412,6 +2412,56 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get dictionaryTabCharacters => 'Kanji & kana';
|
||||
|
||||
@override
|
||||
String get dictionaryTabCharactersChinese => 'Hanzi';
|
||||
|
||||
@override
|
||||
String get dictionaryTabCharactersKorean => 'Hangul & Hanja';
|
||||
|
||||
@override
|
||||
String get dictionaryTabCharactersGreek => 'Alphabet';
|
||||
|
||||
@override
|
||||
String get dictionaryCharacterSearchHintChinese =>
|
||||
'A character, its pinyin, or a meaning';
|
||||
|
||||
@override
|
||||
String get dictionaryCharacterSearchHintKorean =>
|
||||
'A Hanja or Hangul letter, its sound, or a meaning';
|
||||
|
||||
@override
|
||||
String get dictionaryCharacterSearchHintGreek => 'A letter or its name';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupHsk => 'HSK levels';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupCommonCharacters => 'In common use';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupHongKongGrades => 'Hong Kong school grades';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupHangul => 'Hangul';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupEducationHanja => 'Hanja taught in schools';
|
||||
|
||||
@override
|
||||
String get dictionaryGroupGreek => 'Letters';
|
||||
|
||||
@override
|
||||
String get dictionaryLabelHangul => 'Hangul letters';
|
||||
|
||||
@override
|
||||
String get dictionaryLabelEducationHanja => '1,800 basic Hanja';
|
||||
|
||||
@override
|
||||
String get dictionaryLabelGreek => 'Greek alphabet';
|
||||
|
||||
@override
|
||||
String get dictionaryLabelCommonCharacters => '3,500 common characters';
|
||||
|
||||
@override
|
||||
String get dictionaryLabelHiragana => 'Hiragana';
|
||||
|
||||
|
|
@ -2561,14 +2611,14 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
String get kanjiComponents => 'Components';
|
||||
|
||||
@override
|
||||
String get studySettingsCharacters => 'Kanji & kana';
|
||||
String get studySettingsCharacters => 'Characters';
|
||||
|
||||
@override
|
||||
String get studySettingsWriteByHand => 'Write by hand';
|
||||
|
||||
@override
|
||||
String get studySettingsWriteByHandDescription =>
|
||||
'Kanji, kana and words are written stroke by stroke and checked as you go, on a schedule of their own. Words written aren\'t quizzed or typed.';
|
||||
'Kanji, hanzi, Hanja, kana, Hangul and words written with them are written stroke by stroke and checked as you go, on a schedule of their own (a Korean word letter by letter). Words written aren\'t quizzed or typed.';
|
||||
|
||||
@override
|
||||
String get writingHint => 'Hint';
|
||||
|
|
@ -3031,6 +3081,57 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get characterKun => 'Kun';
|
||||
|
||||
@override
|
||||
String get characterPinyin => 'Pinyin';
|
||||
|
||||
@override
|
||||
String get characterEum => 'Eum';
|
||||
|
||||
@override
|
||||
String get characterHun => 'Hun';
|
||||
|
||||
@override
|
||||
String get characterPinyinReadings => 'Pinyin';
|
||||
|
||||
@override
|
||||
String get characterPinyinReadingsHint =>
|
||||
'With tone marks or numbers: shuǐ, shui3';
|
||||
|
||||
@override
|
||||
String get characterEumReadings => 'Sounds (eum)';
|
||||
|
||||
@override
|
||||
String get characterEumReadingsHint => 'Sino-Korean, in Hangul: 수';
|
||||
|
||||
@override
|
||||
String get characterHunReadings => 'Native meanings (hun)';
|
||||
|
||||
@override
|
||||
String get characterHunReadingsHint =>
|
||||
'Korean words for its meaning, in Hangul: 물';
|
||||
|
||||
@override
|
||||
String get characterPrimaryMeaningHintLetter =>
|
||||
'Primary meaning, or a letter\'s sound';
|
||||
|
||||
@override
|
||||
String get composerPlaceholderCharacterChinese => 'Add a character';
|
||||
|
||||
@override
|
||||
String get composerPlaceholderCharacterKorean =>
|
||||
'Add a Hanja or Hangul letter';
|
||||
|
||||
@override
|
||||
String get composerPlaceholderCharacterGreek => 'Add a letter';
|
||||
|
||||
@override
|
||||
String get vocabularyReadingHintPinyin =>
|
||||
'Pinyin, with tone marks or numbers';
|
||||
|
||||
@override
|
||||
String get vocabularyReadingHintPronunciation =>
|
||||
'Pronunciation, where it differs from the spelling';
|
||||
|
||||
@override
|
||||
String get matchingCategories => 'Categories';
|
||||
|
||||
|
|
@ -3521,11 +3622,14 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
|
||||
@override
|
||||
String get studySettingsTypeReadingDescription =>
|
||||
'Words with kanji ask for their reading, typed in kana; romaji turn into kana as you type.';
|
||||
'Words with kanji ask for their reading, typed in kana (romaji turn into kana as you type); Chinese words for their pinyin (tone numbers turn into marks: ni3 becomes nǐ).';
|
||||
|
||||
@override
|
||||
String get studyTypedHint => 'The reading, in kana or romaji';
|
||||
|
||||
@override
|
||||
String get studyTypedHintPinyin => 'The pinyin, with tone numbers or marks';
|
||||
|
||||
@override
|
||||
String get studyTypedRight => 'Right';
|
||||
|
||||
|
|
@ -3548,7 +3652,7 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
|
||||
@override
|
||||
String get studySettingsAspectDescription =>
|
||||
'What to recall — the meaning, the kana reading, or the expression itself (shown the meaning). Mixed varies meaning and reading per card; cards that can’t be quizzed stay a normal flip.';
|
||||
'What to recall — the meaning, the reading (kana, pinyin), or the expression itself (shown the meaning). Mixed varies meaning and reading per card; cards that can’t be quizzed stay a normal flip.';
|
||||
|
||||
@override
|
||||
String get studySortOldestFirst => 'Oldest first';
|
||||
|
|
@ -6751,7 +6855,9 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
String get watchFilterAll => 'All words';
|
||||
|
||||
@override
|
||||
String get watchFilterNoLevel => 'No JLPT level';
|
||||
String watchFilterNoLevel(String levels) {
|
||||
return 'No $levels level';
|
||||
}
|
||||
|
||||
@override
|
||||
String get watchFilterClass => 'Word class';
|
||||
|
|
|
|||
Loading…
Reference in a new issue