nkf --hiragana --katakana オプションについて2006年05月06日 07時52分33秒

nkf の --katakana オプションはひらがなをカタカナに、--hiragana オプションはカタカナをひらがなに変換するオプションですが、踊り字の一の字点(ゝゞヽヾ)の変換処理が行われないようです。

$ echo ツヽジ,サヾエ,さゝやか,たゞし |  nkf --katakana
ツヽジ,サヾエ,サゝヤカ,タゞシ
$ echo ツヽジ,サヾエ,さゝやか,たゞし | nkf --hiragana
つヽじ,さヾえ,さゝやか,たゞし

一の字点はひらがなでもカタカナでもないからということでしょうが、 --katakana では次のように変換されるのが望ましいと思います。

さゝやか  -> サヽヤカ
たゞし     -> タヾシ

同様に --hiragana では次のように変換されるのが望ましいと思います。

ツヽジ  -> つゝじ
サヾエ -> さゞえ

また、カタカナにしかない「ヴ」も未変換です。

$ echo ヴァイオリン | nkf --hiragana
ヴぁいおりん

カタカナしかない「ヴ」を変換しないというのはひとつの仕様ではありますが、kakasi のように「ヴ」 <-> 「う゛」 の相互変換ができても良いのではないかと思います。

1文字が2文字に変換、またはその逆に変換され、文字数が変わるところは気になる部分ではありますが、JISX0201 kana の半角カナ「ウ゛ァイオリン」(7文字)を全角に変換した場合は、「ヴァイオリン」(6文字)になりますし、文字数が変わること自体は nkf の別の処理で起こっているので、さほど問題ではないでしょう。