jaconv 0.5.0


pip install jaconv

  Latest version

Released: Feb 08, 2026

Project Links

Meta
Author: Yukino Ikegami

Classifiers

Development Status
  • 5 - Production/Stable

Intended Audience
  • Developers
  • Information Technology

Natural Language
  • Japanese

Operating System
  • MacOS
  • Microsoft
  • POSIX

Programming Language
  • Python :: 2.7
  • Python :: 3
  • Python :: 3.4
  • Python :: 3.5
  • Python :: 3.6
  • Python :: 3.7
  • Python :: 3.8
  • Python :: 3.9
  • Python :: 3.10
  • Python :: 3.11
  • Python :: 3.12
  • Python :: 3.13
  • Python :: 3.14

Topic
  • Text Processing
  • Text Processing :: General

jaconv

latest version pyversion license download GitHub code search count GitHub Repo stars NO WAR budge NO NUKE budge

jaconv (Japanese Converter) is interconverter for Hiragana, Katakana, Hankaku (half-width character) and Zenkaku (full-width character)

Japanese README is available.

INSTALLATION

$ pip install jaconv

USAGE

See also document

import jaconv

# Hiragana to Katakana
jaconv.hira2kata('ともえまみ')
# => 'トモエマミ'

# Hiragana to half-width Katakana
jaconv.hira2hkata('ともえまみ')
# => 'トモエマミ'

# Katakana to Hiragana
jaconv.kata2hira('巴マミ')
# => '巴まみ'

# half-width character to full-width character
# default parameters are followings: kana=True, ascii=False, digit=False
jaconv.h2z('ティロ・フィナーレ')
# => 'ティロ・フィナーレ'

# half-width character to full-width character
# but only ascii characters
jaconv.h2z('abc', kana=False, ascii=True, digit=False)
# => 'abc'

# half-width character to full-width character
# but only digit characters
jaconv.h2z('123', kana=False, ascii=False, digit=True)
# => '123'

# half-width character to full-width character
# except half-width Katakana
jaconv.h2z('アabc123', kana=False, digit=True, ascii=True)
# => 'アabc123'

# an alias of h2z
jaconv.hankaku2zenkaku('ティロ・フィナーレabc123')
# => 'ティロ・フィナーレabc123'

# full-width character to half-width character
# default parameters are followings: kana=True, ascii=False, digit=False
jaconv.z2h('ティロ・フィナーレ')
# => 'ティロ・フィナーレ'

# full-width character to half-width character
# but only ascii characters
jaconv.z2h('abc', kana=False, ascii=True, digit=False)
# => 'abc'

# full-width character to half-width character
# but only digit characters
jaconv.z2h('123', kana=False, ascii=False, digit=True)
# => '123'

# full-width character to half-width character
# except full-width Katakana
jaconv.z2h('アabc123', kana=False, digit=True, ascii=True)
# => 'アabc123'

# an alias of z2h
jaconv.zenkaku2hankaku('ティロ・フィナーレabc123')
# => 'ティロ・フィナーレabc123'

# normalize
jaconv.normalize('ティロ・フィナ〜レ', 'NFKC')
# => 'ティロ・フィナーレ'

# Convert small Hiragana or Katakana to normal size
jaconv.enlarge_smallkana('わぁい')
# => 'わあい'
jaconv.enlarge_smallkana('きょういっぱい', ignore='っ')
# => 'きよういっぱい'

# Hiragana to alphabet
jaconv.kana2alphabet('じゃぱん')
# => 'japan'

# Alphabet to Hiragana
jaconv.alphabet2kana('japan')
# => 'じゃぱん'

# Katakana to Alphabet
jaconv.kata2alphabet('ケツイ')
# => 'ketsui'

# Alphabet to Katakana
jaconv.alphabet2kata('namba')
# => 'ナンバ'

# Hiragana to Julius's phoneme format
jaconv.hiragana2julius('てんきすごくいいいいいい')
# => 't e N k i s u g o k u i:'

NOTE

jaconv.normalize method expand unicodedata.normalize for Japanese language processing.

'〜' => 'ー'
'~' => 'ー'
"’" => "'"
'”'=> '"'
'“' => '``'
'―' => '-'
'‐' => '-'
'˗' => '-'
'֊' => '-'
'‐' => '-'
'‑' => '-'
'‒' => '-'
'–' => '-'
'⁃' => '-'
'⁻' => '-'
'₋' => '-'
'−' => '-'
'﹣' => 'ー'
'-' => 'ー'
'—' => 'ー'
'―' => 'ー'
'━' => 'ー'
'─' => 'ー'

CHANGES

0.5.0 (2026-02-08)

  • Add new func. enlarge_smallkana.

  • The alphabet2kana func. converts “si” to “し”.

  • Fix conversion bugs in alphabet2kana and kana2alphabet func.

  • Fix bugs about small-kana in kana2alphabet func.

  • Add docstring to alias functions

0.4.1 (2025-11-30)

  • port static configs to setup.cfg (thanks @eli-schwartz)

  • migrate testsuite to pytest (thanks @eli-schwartz)

  • Support Python 3.13 and 3.14

0.4.0 (2024-07-26)

  • Support Python 3.12

  • Add stub files according to PEP 561 for mypy (thanks @ernix)

0.3.4 (2023-02-18)

  • Fix to support Python2.7 ~ 3.4 (thanks @manjuu-eater)

  • Support Python 3.11

0.3.3 (2022-12-31)

  • Support Python 3.10

  • Re-support Python2.7 ~ 3.4 (thanks @manjuu-eater)

  • Fix z2h, h2z all flag off bug (thanks @manjuu-eater)

0.3.1 (2022-12-14)

  • Fix alpha2kana infinite loop bug (thanks @frog42)

0.3 (2021-03-29)

  • Fix bug (alphabet2kana) thanks @Cuddlemuffin007

  • Support Python 3.8 and 3.9

  • Add handy functions: alphabet2kata and kata2alphabet. thanks @kokimame

  • Add function for julius: hiragana2julius

0.2.4 (2018-02-04)

  • Fix bug (kana2alphabet)

  • Support Python 3.7

  • No longer support Python 2.6

  • Add aliases of z2h -> zenkaku2hankaku and h2z -> hankaku2zenkaku

0.2.3 (2018-02-03)

  • Fix bugs (alphabet2kana, kana2alphabet) thanks @letuananh

0.2.2 (2018-01-22)

  • Fix bug (kana2alphabet) thanks @kokimame

  • Support Python 3.6

0.2.1 (2017-09-14)

  • Fix bugs (alphabet2kana, kana2alphabet)

0.2 (2015-04-02)

  • Change module name jctconv -> jaconv

  • Add alphabet and hiragana interconvert (alphabet2kana, kana2alphabet)

0.1.1 (2015-03-12)

  • Support Windows

  • Support Python 3.5

0.1 (2014-11-24)

  • Add some Japanese characters to convert table (ゝゞ・「」。、)

  • Decresing memory usage

  • Some function names are deprecated (hankaku2zenkaku, zenkaku2hankaku, H2K, H2hK, K2H)

0.0.7 (2014-03-22)

z2h and h2z allow mojimoji-like target character type determination. Bug fix about Half Kana conversion.

Wheel compatibility matrix

Platform Python 3
any

Files in release

No dependencies