본문 바로가기
Dev/Ruby

은는이가(ununiga) gem, 레일즈에서의 i18n 조사 처리

by ryush00 2018. 1. 18.

한글이 정말 잘 만든 언어이긴 하지만, 프로그래밍할 때는 항상 골치거리에요. 많은 라이브러리들이 영어를 기반으로 만들어진 바람에 한국어로 번역할 때 "(이)가"처럼 엄청 부자연스러운 부분이 생기거든요. 예를 들자면 "말똥이(이)가 블로그에 글(을)를 쓰고 있습니다"처럼 말이죠. 이름 뒤에 "님"자를 붙여서 "말똥이님이" 처럼 처리하는 방법도 있겠지만, 몽키패치일 뿐이에요.

루비 온 레일즈에서도 마찬가지입니다. "(이)가"를 넣자니 부자연스럽고 난감하죠. 그럴때 이 gem을 사용하면 됩니다.

설치하기

rails 기반 i18n 기능에 통합시켜버리려면 아래 코드를 앱 실행 부분에 추가하시면 됩니다. (Initializer나 application.rb, environment config)

I18n::Backend::Simple.send(:include, Ununiga::I18n::JosaTransformer)

Rubocop같은 정적 코드 분석기가 오류를 띄우면 아래 코드를 추가하면 됩니다.

I18n::Backend::Simple.include Ununiga::I18n::JosaTransformer

저 코드만 넣으면 마법처럼 알아서 은는이가를 구분하는 프로그램이 되어버리죠.


은는이가(ununiga) gem, 레일즈에서의 i18n 조사 처리 끝.

참고 링크

댓글