Web Analytics Made Easy - Statcounter

Bouncing ideas 생각 작업실/exp sharing 경험.실험 나누기

Hangul to IPA 업데이트 중 (완료함)

sleepy_wug 2024. 6. 10. 10:46
반응형

Hangul to IPA github repo를 팔로우 하는 사람은 눈치챘을지도 모르지만, 주말사이에 Hangul to IPA 에 대한 대대적인 업데이트를 했다. 핵심 기능은 파이썬으로 포팅을 다 마쳤고, 웹앱 인터페이스 구현할 일만 남았다.


수정 (2024-06-10): 지금 해치워버리지 않으면 주중에는 도무지 못할 듯해 그냥 무리해서 인터페이스 구현과 deploy까지 끝마쳤다. 도파민 러시 상태에서 이제 자려고 함 (지금 여기 새벽3시)

물론 documentation을 다 새로 써야하지만 일단 그건 천천히할 생각이다. 뭐 엄청 어려운 앱도 아니고 그냥 슥 보면 감 잡을 수 없겠나?ㅋㅋㅋ 

 

거두절미하고, 기존 기능 외에 추가된 기능은 음소별로 구분자를 넣을 수 있다는 것이다. 아래 예시는 구분자로 "." 을 넣은 것. 물론 공백을 넣을 수도 있다. 지금 공개된 버전은 그냥 따닥따닥 붙일 줄만 일지, 영 불편하다. 

 

 

 

 

쑥스럽게도 H2IPA는 상당한 호응을 받고 있는 듯하다. 그 컨텐츠가 내 블로그에서 가장 조회수가 많이 나오고, 아마 블로그를 통하지 않고 직접 웹앱을 사용하는 사람이나 (나처럼) 로컬로 돌리는 사람들도 있을 걸 생각하면, 사람들이 원하는 일을 해낸 것 같아 뿌듯하다. 내가 다른 사람에게 쓸모있는 뭔가를 만들어낸 것은 내가 20대 때 했던 알바들 이후로는 처음이지 싶다. 

 

어쨌든 이와 같은 호응에 힙입어, 높은 확률로 앞으로도 유지보수를 해야할텐데, R로 짠 코드는 너무 가독성이 떨어져 디버깅하다가 머리카락이 다 빠질 지경이었다. 그래서 탈모방지를 위해 이참에 리팩토링을 할 겸해서 파이썬으로 옮기려 한다.

 

일단 할일은 인터페이스를 구현해서 서버에 올리는 것이다. 그냥 생각하기로는 둘뚤툴 (실시간으로 한국어 최소대립쌍 도출해보자) 처럼 서랍식의 UI를 생각하고 있다. 규칙 checkbox나 ipa vs. yale 등의 선택은 서랍 속에 넣어두고, 입력 textbox, 출력창 이렇게 단순하게 보여주는 게 좋다고 생각한다.

 

 

수정 (2024-06-10): 결국 완성된 인터페이스는 많이 심플하고 그래서 마음에 든다. 엄청 강력할 거 같은 버튼, 따위는 안만들었다. 사실 그냥 submit 버튼은 하는 일이 없다.ㅋㅋㅋ 장식임.

모바일에서 들어가보니 지금의 인터페이스가 더 예쁘고 편하고 좋은 것 같다. 이전 버전은 좌우 화면이 넓은 걸 가정하고 요소를 배치했는데 아무래도 세로로 구성하니까 이젠 모바일에서도 편하게 쓸 수 있다. 결국 UI도 자꾸 해봐야 흉내라도 내는 것이구나.

 

덧붙임 (2024-06-10): 의도한 건 아닌데, 메모리 사용이 절반으로 줄었다. 앱 자체가 큰 게 아니라서 이전에도 메모리 사용량이 크지는 않았는데 그래도 줄어든 효과가 바로 보이니까 기쁘다.

 


앞으로 좀더 여유가 생기면 다음과 같은 기능을 구현할 생각이다.

 

1.

궁극적으로는 지금처럼 무식하게 변환표 적용해서 IPA로 변환하는 게 아니라 PCT처럼 변별자질개념을 도입하고 싶다. 예를 들어 "국물"[궁물]을 단순히 ㄱㅁ 연쇄를 ㅇㅁ 연쇄로 변환하는 방식이 아니라 [NASAL] feature spreading으로 구현하는 게 더 바람직하다. 솔직히 지금의 변환방식은 음운론 연구자로서 부끄럽다. 

 

2.

애초에 규칙순으로 도출하는 기계이므로:

- 규칙순 바꾸기 구현하고 싶다. 진짜 아무도 안 하는줄 알지만 규칙순(bleeding counterbleeding feeding counterfeeding) 을 진지하게 공부하는 사람이 단 한명이라도 있다면, 그 한 사람을 위해서 이게 도움이 될 거란 걸 안다. 그래서 구현하고 싶다. 혹은 학부 수업같은거 할때 규칙순 설명한다면 예시로 쓰기 좋을 듯하다.

- 중간도출형 구현하고 싶다. 

 

 

 


  • 글이 유익하셨다면 후원해주세요. Toss (국내결제) || BuyMeACoffee(해외결제카드필요)
  • 아래에 댓글창이 열려있습니다. 로그인 없이도 댓글 다실 수 있습니다.
  • 글과 관련된 것, 혹은 글을 읽고 궁금한 것이라면 무엇이든 댓글을 달아주세요.
  • 반박이나 오류 수정을 특히 환영합니다.
  • 로그인 없이 비밀글을 다시면, 거기에 답변이 달려도 보실 수 없습니다. 답변을 받기 원하시는 이메일 주소 등을 비밀글로 남겨주시면 이메일로 답변드리겠습니다.

 

반응형