2016年08月27日

Windowsでパイプに流す文字列の文字コードは何にするのが良いか…

昨日、コピペテキスト修飾除去でPython3.4直接呼び出しを止めてパイプ経由での文字列渡しをするということを考えていることを書いたわけですが、いざ、具体的に実装しようとした場合、パイプから文字列を読み込んで解釈するプログラムは、どんな文字コードが来ることを期待しているのか…ということに迷いが生じました。

普通にやっていると、Shift-JIS(正確にはCP932)で文字列をやりとりしときゃーいいのかなぁ…なんて、軽く思ってしまいます。
ただし、「コピペテキスト修飾除去」は、内部的にはUTF-16LEで動作しているので、可能ならこのままパイプに流し込みたい。

いや、まてよ。最近の流行を考えると、UTF-8に対応させておくというのも重要か。

そういうことなので、パイプに流す文字列の文字コードは「Shift-JIS」「UTF-16LE」「UTF-8」の3種類を準備するってのが、利用者にとって利便性が高いかな、と考えています。

ところで、Windowsの世界では、「UTF-16LE」を指して「Unicode」と呼ぶことが多いですね。
実際、このソフトの解説でも、そのように書いていることがあります。

「USBメモリ」を「USB」と呼んだり「Wikipedia」を「Wiki」って呼ぶみたいな感じで、なんだか気持ち悪いのですが、一般的にそう認識している人が多いのも確かで(Windowsに付属するソフトがそう呼んでいるし)、多くの人に分かりやすく意識してもらうために、どういう名前で載せるのが良いのか、ちょっと悩みますね。

自分の気持ち悪い感情を捨ててでも、一般的な表記にするか。
あるいは正確を期した表記にするか(一般的な表記ではないので、分からない人から質問が来るかもしれない)。

まぁ、「UnicodeかUTF-16LEかで質問を出してくる」リテラシーレベルの人が、「文字コードを選択しようと考えるシチュエーション」に陥るというのも、おかしな話でもありますかね。




posted by ayacy at 00:07 | Comment(0) | TrackBack(0) | フリーソフト
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/176631440
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック