Macで濁音が分解されちゃったのを結合し直す方法
Macで「ジャパン」みたいに分解されちゃってる(NFDになってる)のを元に戻す(NFCにする)方法で一番手軽なのってなんだろう?いまとりあえずターミナルに貼り付けるときには元に戻るのを見つけてそれを使っているが手軽とは言いがたい。
ターミナルに貼りつけて結合した表示になっているのを選択してもう一度コピーすると、って話ね。選択とかめんどくさいので何とかしたかった。
リプライがないので仕方なく自分でこんなの書いて
import unicodedata import subprocess while True: d = unicode(raw_input(">>> "), "utf-8") print repr(d), d d = unicodedata.normalize("NFC", d) print repr(d), d p = subprocess.Popen("pbcopy", stdin=subprocess.PIPE) p.communicate(d.encode("utf-8"))
>>> ジャパン u'\u30b7\u3099\u30e3\u30cf\u309a\u30f3' ジャパン u'\u30b8\u30e3\u30d1\u30f3' ジャパン
と正しく戻されていることを確認した。本当はクリップボードを監視して自動で変換とかできるといいなーと思ったんだが、まあいいや。