Linuxデスクトップにして困ったこと(日本語ファイル名編)

ダントツで日本語ファイル名。こいつは困る。zipの中に入ってるとどうしようもなく困る。


ファイルサーバでやりとりする分にはSambaが文字コード変換してくれるので何も意識せずに扱える。
メールの添付ファイルもメーラーがよろしくやってくれるので、まぁ大丈夫。
だが、zipの中の日本語ファイル名だけはどうしようもない。
zipファイルの仕様に文字エンコーディングは含まれていないので、そのOSのエンコーディングでそのまま格納されるらしい。


日本語ファイル名なんて使うなって説もあるけど仕事だと取引先も絡んでくるからどうしようもない。
日本語ファイル名当たり前のように使ってくるし。

WindowsからLinux

文字コード対応のunzipコマンドというものもあって、こいつを使うと文字コードを自動判別してうまいことやってくれる。
実はUbuntuでは標準でそうなっていたので、この点では困らない。書庫マネージャはわからん。


unzipコマンドが何も考慮してくれない場合は、化け化け状態のファイルに対してconvmvコマンドでファイル名自体の文字コードを変換してやる必要がある。
convmvコマンドはたぶん明示的にインストールしないといけない。

LinuxからWindows

むしろこっちが問題。unzipは対応版があるくせにzipは見当たらない。
よってEUC-JPとかUTF-8とか自分のロケールエンコーディングに従ったアーカイブしか作ることができない。
Windowsの相手に渡すためには、事前にconvmvでファイル名を変換してからzipで固めなければいけない。テラメンドクサス。


つかなんでunzipは対応版があるのにzipはないのかと。
いくらぐぐってもunzip側の話しか出てこないし。探し方が悪い?

まとめ

  • 受けとるのはそれほど困らない
  • 送るのはかなり面倒くさい
  • convmvしてからzipするスクリプトでも書く?
  • 文字コードも考慮できるようにLLとかで作っちゃう?
  • むしろzipコマンドのパッチ作っちゃう?
  • ていうか実は誰か作ってるでしょ!?(AppleScriptのはあった……)