文字化け対応

java

# cd /usr/lib/java/lib/fonts
# ln -s /usr/share/fonts/M+IPA fallback

unzip

windows で作成した zipファイルに含まれる日本語名ファイルが文字化けする. shift-jis の復号がうまくいかない模様.

→ Ubuntu Japanese Team の unzip?を流用する.

Ubuntu Japanese Team から下記srcファイルを取り寄せて makeする

  • unzip_6.0-5~5.52~ja3.tar.gz

https://launchpad.net/~japaneseteam/+archive/ppa/+packages

> unzip -O cp932 {target.zip}

KDE/ark

windows で作成した zipファイルに含まれる日本語名ファイルが文字化けする. upzip を置き換えても改善しない.独自の処理を行っている模様. KDEの coreライブラリを改造する方法が紹介されているが,makeが面倒そう.

→ gnome の FileRoller で代用する.

下記ファイルを取り寄せて,/sbin/installpkg でインストールする

  • GConf-2.26.2-x86_64-2gsb.txz
  • ORBit2-2.14.17-x86_64-2gsb.txz
  • file-roller-2.26.2-x86_64-2gsb.txz

http://ftp.slackware.pl/pub/gnomeslackbuild/gsb/

file-roller は内部で unzipコマンドを呼び出しているが, 呼び出し時に「-O cp932」オプションをつける必要がある. コードを書き換えるとメンテナンス性がおちるため unzip用の wrapperを作成する.

unzip の「-Z」オプションは必ず最初に指定する必要があるため, このオプションの有無によって,「-O cp932」オプションを追加する 場所をかえる.

# mv /usr/bin/unzip /usr/bin/_unzip
# cat > /usr/bin/unzip
#!/bin/sh

if [[ $1 =~ "^-Z" ]];then
        OPT=$1
        shift
        __unzip ${OPT} -O cp932 $@
else
        __unzip -O cp932 $@
fi
# chmod +x /usr/bin/unzip



---
update at 2018/03/02 22:04:51

※注:当サイトは特定環境において確認できた事象のみを記述しています。他の環境での動作は一切保証しません。