ruby-robotの夢

cygwin-ruby,qgisの達人を目指す奮闘記

cygwin-ck-bash-vim-rubyでの UTF と SJIS 使い分けに関するメモ

cygwin-rubyでどのような漢字設定が良いか?は、これまでも悩んできた。

私は、データはSJISを用いることを基本とし、rubyスクリプトも、基本的にsjisを用いている。

ただし、例外時に、utfを用いている。

このへんの考え方は、忘れがちなので、整理メモを残しておく。

SJISを用いる理由

windowsファイル名は、UTFであるが、アプリ内部では、SJISにしか対応していないものが多い。例えば、excel2010,ie11

※ie11はactiveX(ole32)に対応するため、webの自動処理において、重宝している。

今後、使用するアプリのUTF対応状況に応じて変更していくものとする。

現在の日本語コード設定の状況と課題等

・ckターミナル INPUT設定 SJIS

cygwin-bash locale設定 SJIS

vim-encodings設定 SJIS,UTF,EUC

・漢字フォルダは、基本的にASCIIフォルダにリンクして使用

・漢字のみのフォルダは基本的に使わないで、頭にASCII-NUMERを付与

cygwin-bashで、漢字ファイル等を扱うとき。

 cd,ls,ln で漢字を指定する場合、

 cd_knj、ls_knj,ln_knj というコマンドを作り、引数をsjis->utf変換して使用。

 ただし、漢字の入力は面倒だし、コマンドラインの日本語が化ける場合がある。私は、bash関数で、フォルダ選択式のcdを自作して使用しているが、既公表のものを探すと、以下があった。

いかに素早く目的のディレクトリにcdするか、そのためのTips - Qiita

・外部コマンドにおいて、UTFを用いる場合、スクリプトでUTFを用いる。

 

 変換で困る場合

当然、SJISとUTFで対応が不完全な文字の場合、混乱する。

例えば、半角の「・」コンバータにより、自動変換されたりされなかったり。