외국어 철자를 한글 표기로 자동 변환하는 Hangulize 알고리즘을 보완하기 위해 외국어의 발음 데이터베이스를 구축해야 한다는 언급을 했습니다. 구체적으로 설명하기 위해 제가 전에 만들었던 프랑스 지명 용례집을 소개합니다. 다음 링크를 통해 볼 수 있습니다.
예를 들어 프랑스어 지명 Lyon은 보통 쓰는 프랑스어 발음 기호로는 /ljɔ̃/이고 현대 파리식 발음에 따라 정밀 전사한 것은 /lʝõ/이며 한글 표기는 '리옹'이라고 정리해놓았습니다.
지명마다 한글 표기를 하나씩 제시하기는 했지만 어느 표기를 써야 할지 애매한 경우도 많습니다. 원어에서 여러 발음이 가능한 경우(특히 알자스 지명), 또 심의된 용례가 있지만 외래어 표기법의 규칙과는 약간의 차이가 있는 경우가 있습니다(예: Yon은 규칙대로는 '이옹'이지만 국립국어원 용례집에서는 '용'으로 씁니다). 이런 경우 어느 한글 표기가 맞는지 일일이 따지기는 어렵지만 일단 원어의 발음을 제시함으로써 한글 표기에 대한 판단을 내릴 때 도움이 되도록 하고자 하는 것입니다.
발음 표기는 철자법처럼 언어마다 통일되어 있는 것이 아니라서 여러 발음 표기 방식 간에 전환할 수 있도록 할 필요가 있다는 생각입니다. 프랑스어는 그래도 발음 표기가 통일되어 있는 편이지만 일부러 정밀 전사한 표기도 함께 제시했습니다. 이는 한글 표기를 이해하는데 도움을 줄 수도 있습니다. 예를 들어 사전에서 보통 /ɛ̃/로 표기하는 비음화된 모음이 현대 파리식 발음에서는 [æ̃]에 가깝게 발음된다는 것을 알면 왜 한글 '앵'에 대응되는지 이해가 될 수 있습니다.
또 같은 언어에 방언마다 서로 규칙적으로 대응되는 조금씩 다른 발음법이 존재하는 경우 한 가지 발음을 입력하면 각 방언의 발음을 자동으로 생성시키는 것을 구상하고 있습니다. 영어 대표 발음 하나를 입력해서 영국식 발음과 미국식 발음을 생성시키거나 포르투갈어 대표 발음 하나를 입력해서 포르투갈식 발음과 브라질식 발음을 생성시킬 수 있습니다.
예를 들어 영어 Aldergrove의 대표 발음을 {ˈɔˑld.əɹ.ɡɹoʊ̯v}로 입력할 수 있습니다.
/ɔˑ/는 /ɔː/로 보통 발음되지만 /ɒ/로 발음될 수도 있는 모음을 나타내기 위한 약식 표기입니다. /ɒ/는 미국식 발음에서 /ɑː/와 합쳐집니다.
영국식 발음에서는 모음이 뒤따르지 않는 /ɹ/는 생략됩니다. 반면 미국식 발음에서 /əɹ/는 보통 성절 자음 [ɹ̩]로 발음됩니다.
영국식 발음에서 /oʊ̯/는 음가가 조금 달라져서 [əʊ̯]로 실현됩니다.
Hangulize에서 이미 쓰는 규칙 문법을 응용하면 대표 발음에서 세부 발음을 생성하는 것도 잘 처리할 수 있을 것 같습니다.
이런 규칙을 적용하면 대표 발음 {ˈɔˑld.əɹ.ɡɹoʊ̯v}에서 다음을 자동으로 생성시킬 수 있습니다.
영국식 발음: ˈɔːld.ə.ɡɹəʊ̯v, ˈɒld-
미국식 발음: ˈɔːld.ɹ̩.ɡɹəʊ̯v, ˈɑːld-, -əɹ-
포르투갈어 예제도 보이겠습니다. Portugal의 대표 발음은 {poɾ.tu.ˈɡaɫ}로 적을 수 있습니다.
포르투갈식 발음에서 비강세 음절의 /o/는 [u]로 약화되며 어중의 /ɡ/는 스페인어에서처럼 쉽게 [ɣ]로 접근음화됩니다.
브라질식 발음에서 어말이나 자음 앞의 /ɾ/는 /ʁ/와 합쳐지며 브라질식으로 [χ]로 발음되고 어말이나 자음 앞의 /ɫ/은 [u̯]가 됩니다.
이 규칙을 적용하여 대표 발음 {poɾ.tu.ˈɡaɫ}에서 다음을 자동으로 생성시킵니다.
포르투갈식 발음: puɾ.tu.ˈɣaɫ
브라질식 발음: poχ.tu.ˈɡau̯
참고로 외래어 표기법을 따르면 Portugal은 포르투갈식으로는 '포르투갈', 브라질식으로는 '포르투가우'로 적도록 되어 있습니다. 브라질식 발음에서 어말이나 자음 앞의 /ɫ/은 [u̯]가 되는 현상은 반영하지만 포르투갈식 발음의 모음 약화 등 다른 차이점은 반영하지 않습니다.