会社では基本的にすべての場でインターネットネームによる運用なんだけど、たまに戸籍ネームが必要になることがあって、そういう時、とても威圧感がある。威圧感はどこからやってくるの? それは漢字の画数の多さだと思う。その着眼のもと、漢字の画数をコントロールできる「漢字スライダー」を作りました。
スライダーで画数をコントロールできます。文字列は好きに編集できるよ。
威圧感を自由に上げ下げできて、さまざまなシーンで活躍しそうですね!
unihan-etl で日本語の漢字の一覧を取得する
漢字とその画数の一覧は、ユニコードコンソーシアムによる Unihan というやつから取得するのがよさそうだった。単純に漢字(/\p{Han}/
)を抽出すると見慣れない中国語の漢字まで含まれてしまうので、日本語の漢字のみに絞りたい。今回は kJis0 というフィールドを利用することで、JIS X 0208 の文字だけを対象にできそうなことがわかった。
Unihan のデータ抽出/加工には、unihan-etl という Python 製のツールが便利だった。以下のコマンドで、Unihan からデータをダウンロードして、それぞれの漢字の画数と、JIS X 0208 におけるコードを CSV で取得できる。
% unihan-etl -f kTotalStrokes kJis0 -d /dev/stdout
ちょっと余談だけど Python の argparse ではひとつのフラグに複数の引数を与えるとき上記のように書く(-f kTotalStrokes -f kJis0
とか -f -f kTotalStrokes,kJis0
とかではなく)ようで、ちょっとハマった。