• Stars
    star
    212
  • Rank 186,122 (Top 4 %)
  • Language
    Python
  • License
    Other
  • Created about 14 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Korean Alphabet Transcription

⚠️이전 안내

Hangulize는 Go로 재구현되었습니다. :octocat:hangulize/hangulize에서 확인하실 수 있습니다. 여기 Python 구현은 여전히 제공되지만 더 이상 개선되거나 관리되지 않을 것입니다. 새로운 구현에선 일본어 한자가 지원되고, 일부 특수문자 입력이 결과에서 사라지는 오류가 해결되었습니다. 또한 Python 구현에 비해 전사 속도가 6.25배 빠릅니다.


Hangulize - 외래어 자동 한글 변환 모듈

Build Status

외국어의 한글 표기 체계가 제대로 서려면 일반인이 외국어를 한글로 표기하고 싶을 때 바로바로 쉽게 용례를 찾을 수 있어야 한다. 정기적으로 회의를 열어 용례를 정하는 것으로는 한계가 있다. 외래어 표기 심의 방식이 자동화되어 한글로 표기하고 싶은 외국어를 입력하자마자 한글 표기가 나와야 한다. 이미 용례가 정해진 것은 그것을 따르고 용례에 없는 것이라도 각 언어의 표기 규칙에 따라 권장 표기를 표시해야 한다. 프로그래머들과 언어학자들이 손잡고 연구한다면 이게 공상으로만 그치지 않을 것이다.

by Brian Jongseong Park (http://iceager.egloos.com/2610028)

Hangulize는 외래어를 한글로 자동 변환해주는 Python 모듈입니다.

>>> from hangulize import hangulize
>>> print hangulize('Guido van Rossum', 'nld')
히도 판로쉼

변환 가능한 언어들

  1. 라틴어(lat)
  2. 독일어(deu)
  3. 러시아어(rus)
  4. 현대 그리스어(ell)
  5. 고대 그리스어(grc)
  6. 이탈리아어(ita)
  7. 스페인어(spa)
  8. 일본어(jpn)
  9. 폴란드어(pol)
  10. 체코어(ces)
  11. 세르보크로아트어(hbs)
  12. 루마니아어(ron)
  13. 헝가리어(hun)
  14. 베트남어(vie)
  15. 스웨덴어(swe)
  16. 네덜란드어(nld)
  17. 포르투갈어(por)
  18. 브라질 포르투갈어(por.br)
  19. 웨일스어(cym)
  20. 중세 웨일스어(wlm)
  21. 불가리아어(bul)
  22. 조지아어 간략전사(kat)
  23. 조지아어 정밀전사(kat.narrow)
  24. 핀란드어(fin)
  25. 에스토니아어(est)
  26. 라트비아어(lav)
  27. 리투아니아어(lit)
  28. 아이슬란드어(isl)
  29. 카탈루냐어(cat)
  30. 슬로바키아어(slk)
  31. 슬로베니아어(slv)
  32. 알바니아어(sqi)
  33. 에스페란토(epo)
  34. 우크라이나어(ukr)
  35. 벨라루스어(bel)
  36. 마케도니아어(mkd)
  37. 터키어(tur)
  38. 아제르바이잔어(aze)

설치

  1. pip 이용:

    $ pip install hangulize

  2. easy_install 이용:

    $ easy_install hangulize

  3. pip로 개발버전 받기:

    $ pip install git+git://github.com/sublee/hangulize.git#egg=hangulize

  4. 저장소 내려받아 설치하기:

    $ git clone git://github.com/sublee/hangulize.git $ cd hangulize $ python setup.py install

사용법

hangulize 함수를 사용해야합니다. 우선 모듈로부터 함수를 불러옵니다:

>>> from hangulize import hangulize

hangulize 함수는 첫번째 인자로 변환할 단어를, 두번째 인자로 언어코드(ISO 639-3)를 입력받습니다. 이 함수는 표준 외래어표기법을 따른 한글 변환 결과를 반환할 것입니다:

>>> print hangulize(u"Giro d'Italia", 'ita')
지로 디탈리아
>>> print hangulize(u'オオサカ', 'jpn')
오사카
>>> print hangulize(u'przyjaciół', 'pol')
프시야치우
>>> print hangulize(u'Алексеев', 'rus')
알렉세예프
>>> print hangulize(u'კახაბერ', 'kat.narrow')
까하베르
>>> print hangulize(u'Ἡρακλῆς', 'grc')
헤라클레스

테스트

국립국어원 사이트에 있는 외래어 표기법을 토대로 작성한 테스트수트를 작동시킵니다:

$ python setup.py test
제1항: gl ... ok
제2항: gn ... ok
제3항: sc ... ok
제4항 ... ok
...

이때 HANGULIZE_TEST_LANG 환경 변수를 설정할 경우, 해당 언어의 테스트만 할 수도 있습니다:

$ HANGULIZE_TEST_LANG=jpn python setup.py test
...

또는 REPL 모드를 사용할 수 있습니다. REPL 모드에서는 단어의 변화 과정이 표준출력으로 나타납니다:

$ python setup.py repl
Select Locale: pol
==> łóżko
-> 'łóżko'
-> 'Xuóżko'
-> 'Xuużko'
-> 'Xuuszko'
-> 'XuusJuko'
-> 'XusJuko'
-> 'usJuko'
-> 'usJu o'
-> 'u Ju o'
-> 'u   o'
-> 'u    '
-> '     '
우슈코

커뮤니티

메일링리스트를 운영하고 있습니다. Hangulize 개발자들이 주고받는 이야기를 보고싶거나 Hangulize에 제안할 좋은 아이디어가 있다면 이쪽으로 오시기 바랍니다.

만든이

라이선스

Hangulize에는 BSD 라이선스가 적용되어있습니다. 따라서 소스코드를 사용할 경우 라이선스 내용을 준수해주십시오. 라이선스 전문은 LICENSE 파일에서 확인하실 수 있습니다.

링크

More Repositories

1

trueskill

An implementation of the TrueSkill rating system for Python
Python
737
star
2

glicko2

An implementation of the Glicko-2 rating system for Python
Python
114
star
3

korean

⚠️ NOT MAINTAINED! Use https://github.com/what-studio/tossi instead. | A library for Korean morphology
Python
96
star
4

elo

An implementation of the Elo rating system for Python
Python
93
star
5

sublee-sphinx-themes

Python
48
star
6

sublette

Color schemes by Heungsub Lee
Python
43
star
7

ranking

A library for ranking collection
Python
38
star
8

energy

Energy system for social games
Python
30
star
9

subpptx

Inject subtitles in MS PowerPoint files
Go
29
star
10

ndc16-durango-server-architecture-vol2

NDC16 <야생의 땅: 듀랑고> 서버 아키텍처 Vol. 2
25
star
11

squirrel3-python

A noise function, that can be replaced with RNG, Squirrel Eiserloh introduced at GDC17
Python
19
star
12

unity-cosocket

Sockets for Unity3D coroutine
C#
19
star
13

sub.sh

$ curl -sL sub.sh | bash
Shell
17
star
14

subleerunker

A SUBERUNKER parody game with my pixel-art
JavaScript
17
star
15

glicko

[DO NOT USE] An implementation of the Glicko and Glicko-2 rating system for Python
Python
16
star
16

zeronimo

A distributed RPC solution based on ØMQ
Python
13
star
17

boj

친구가 풀길래 나도 풀어보는 Baekjoon Online Judge
Go
10
star
18

flask-silk

Adds silk icons to your Flask application or module, or extension. (💀 not maintaining)
Python
7
star
19

josa

Appends the correct korean postposition
Python
7
star
20

subl.ee

My homepage
Python
7
star
21

pixelqart

Pixel-QArt: QR Code with Pixel-art Generator
Python
6
star
22

sublette-emoji

Slack emojis for code review.
6
star
23

me2day.js

JavaScript library for me2DAY front-end application.
JavaScript
5
star
24

me2virus

한 때 떠돌던 미투데이 바이러스
PHP
4
star
25

etc

An etcd Python client library
Python
4
star
26

fbui

Extends XFBML
JavaScript
3
star
27

subleerunker-server

Simple HTTP server for world-best-score of SUBLEERUNKER
Go
3
star
28

classy-classes

Useful classes for Classy.
JavaScript
2
star
29

jquery.paged-table.js

Change table to which has a pager with jQuery 1.3.x.
JavaScript
2
star
30

caselib

A string converter between different naming convention
Python
2
star
31

ico

The favicons which I made
2
star
32

eelb.us

Reversed http://subl.ee/
HTML
2
star
33

Flask-Handler

Webapp inspired inheritable handlers for Flask
Python
2
star
34

awtoindex

Make awesome autoindex with famfamfam icons.
Python
2
star
35

yoyo

Yo ping-pong server.
Go
2
star
36

leetcode

친구가 풀길래 나도 풀어보는 LeetCode
Go
2
star
37

hangulize-web

The Hangulize website
HTML
1
star
38

me2More

옛날 미투데이의 "더 보기" 기능을 부활시키는 북마클릿
JavaScript
1
star
39

deep-learning-tutorial

To learn Deep Learning in Kakao Brain
Python
1
star
40

utf7

UTF-7 encoded unsigned integer
Python
1
star
41

imgcode

Programming and data code by image
1
star
42

hangulize2-js-demo

HTML
1
star
43

almost

A helper to compare two numbers generously.
Python
1
star
44

cmpffi

CMP, an alternative MsgPack C implementation, for Python
Python
1
star
45

subleekr

My personal homepage with Flask
Python
1
star
46

Makefib

Fibonacci in GNU make
Makefile
1
star
47

craezcounter

An API which counts unique visitors on your web page
Python
1
star