All Projects → fosskers → kanji

fosskers / kanji

Licence: BSD-3-Clause license
Haskell suite for determining what 級 (level) of the 漢字検定 (national Kanji exam) a given Kanji belongs to.

Programming Languages

haskell
3896 projects

Projects that are alternatives of or similar to kanji

kanji-handwriting-swift
Kanji handwriting recognition for iOS using Zinnia.
Stars: ✭ 27 (+42.11%)
Mutual labels:  japanese, kanji
jiten
jiten - japanese android/cli/web dictionary based on jmdict/kanjidic — 日本語 辞典 和英辞典 漢英字典 和独辞典 和蘭辞典
Stars: ✭ 64 (+236.84%)
Mutual labels:  japanese, kanji
kanji-frequency
Kanji usage frequency data collected from various sources
Stars: ✭ 92 (+384.21%)
Mutual labels:  japanese, kanji
zkanji
Japanese language study suite and dictionary
Stars: ✭ 55 (+189.47%)
Mutual labels:  japanese, kanji
wanikani-userscripts
Userscripts for the WaniKani.com website
Stars: ✭ 16 (-15.79%)
Mutual labels:  japanese, kanji
kanjigrid
A web-app displaying the 2200 kanji characters taught in James Heisig's "Remembering the Kanji", 6th edition.
Stars: ✭ 37 (+94.74%)
Mutual labels:  japanese, kanji
kanji-web-app
Angular.js kanji web application
Stars: ✭ 45 (+136.84%)
Mutual labels:  japanese, kanji
Kawazu
A C# library for converting Japanese sentence to Hiragana, Katakana or Romaji with furigana and okurigana modes supported. Inspired by project Kuroshiro.
Stars: ✭ 33 (+73.68%)
Mutual labels:  japanese, kanji
kanjigrid
Fork of the Kanji Grid addon for Anki
Stars: ✭ 21 (+10.53%)
Mutual labels:  japanese, kanji
sakubun
A tool that helps you improve your Japanese vocabulary and kanji skills with practice that's customized to your needs.
Stars: ✭ 20 (+5.26%)
Mutual labels:  japanese, kanji
textlint-rule-no-synonyms
同義語を表記ゆれをチェックするtextlintルール
Stars: ✭ 18 (-5.26%)
Mutual labels:  japanese
KanjiMaru
Flashcard and Kanji writing Flutter App. Stopped working on this Project. Currently just a graveyard.
Stars: ✭ 26 (+36.84%)
Mutual labels:  kanji
kotoba
A Discord bot for helping with learning Japanese.
Stars: ✭ 118 (+521.05%)
Mutual labels:  japanese
Jotoba
A free online, self-hostable, multilang Japanese dictionary.
Stars: ✭ 87 (+357.89%)
Mutual labels:  japanese
ra-language-japanese
Japanese messages for react-admin
Stars: ✭ 22 (+15.79%)
Mutual labels:  japanese
kanji poster
Poster of 2200 jōyō and WaniKani kanji
Stars: ✭ 19 (+0%)
Mutual labels:  japanese
unihandecode
unihandecode is a transliteration library to convert all characters/words in Unicode into ASCII alphabet that aware with Language preference priorities
Stars: ✭ 71 (+273.68%)
Mutual labels:  japanese
kuzushiji-recognition
Kuzushiji Recognition Kaggle 2019. Build a DL model to transcribe ancient Kuzushiji into contemporary Japanese characters. Opening the door to a thousand years of Japanese culture.
Stars: ✭ 16 (-15.79%)
Mutual labels:  japanese
docker-alpine-pandoc-ja
Pandoc for Japanese based on Alpine Linux
Stars: ✭ 14 (-26.32%)
Mutual labels:  japanese
limelight
A php Japanese language text analyzer and parser.
Stars: ✭ 76 (+300%)
Mutual labels:  japanese

Kanji

kanji is a Japanese Kanji library and analysation program written in Haskell. Its main function is to tell what Kanji belong to what Level of the Japanese National Kanji Examination (漢字検定).

kanji can be used to:

  • determine what Level individual Kanji belong to
  • determine the average Level (difficulty, in other words) of a group of Kanji
  • apply the above to whole files of Japanese

INSTALLING kanji

First, get the source files from:

https://github.com/fosskers/kanji

kanji is written in Haskell and uses the stack tool. Once stack is installed, move to the source directory and perform:

stack install

USAGE

Assuming you've made it so that you can run the executable, the following command-line options are available:

Usage: kanji [-d|--density] [-e|--elementary] [-l|--leveldist] [-s|--splits]
             ((-f|--file ARG) | JAPANESE)

Available options:
  -h,--help                Show this help text
  -d,--density             Find how much of the input is made of Kanji
  -e,--elementary          Find density of Kanji learnt in elementary school
  -l,--leveldist           Find the distribution of Kanji levels
  -s,--splits              Show which Level each Kanji belongs to
  -f,--file ARG            Take input from a file

NOTES ON CLOs

  • All options above can be mixed to include their analysis result in the output JSON.
  • -h will over-ride any other options or arguments, discarding them and printing a help message.

Examples

Single Kanji

$> kanji -s 日
{
    "levelSplit": {
        "Ten": [
            "日"
        ]
    }
}

A Japanese sentence

$> kanji -s これは日本語
{
    "levelSplit": {
        "Nine": ["語"],
        "Ten": ["本", "日"]
    }
}

All options

$> kanji -sled これは日本語。串と糞
{
    "levelSplit": {
        "Nine": ["語"],
        "Ten": ["本", "日"],
        "Unknown": ["糞"],
        "Two": ["串"]
    },
    "elementary": 0.6,
    "density": 0.5,
    "distributions": {
        "Nine": 0.2,
        "Ten": 0.4,
        "Unknown": 0.2,
        "Two": 0.2
    }
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].