2015
04
04

Fedora で .zip ( Windows-SJIS 形式)展開文字化け等に対処

Fedora21_execute_archiver_sample.jpg

Fedora での Windows「圧縮フォルダ( zip )」展開文字化け問題に対処。
その他 Windows 利用の多い圧縮形式の展開(解凍)にも、対応させます。

昨今さほど遭遇率・影響度共に高くないけど・・・まぁ既知の問題。
だいぶ以前から周知の事項ゆえ、解決・対策手法も複数あるでしょう。

今記事では「一発展開」に特化し、なるべく簡明な手法を考えてみました。
あぁそれと、コレ Linux 共通ですが、ユーザなんで Fedora 向け記事でっす。


○基本:各ファイラでの「ここに展開する」操作
GNOME 系:標準 file-roller 、KDE なら ark 利用で基本 O.K
ただ file-roller では .7z が開けなかったので、以下プラグイン追加。
 code:
sudo dnf -y install p7zip-plugins

これで .7z .rar .lzh(lha) など著名どころは GUI 操作で展開可。
なお .zip 文字化け問題については、次項にて。

※備考
Xfce / LXDE 標準 xarchiver は、対応ライブラリが貧弱。
個人的には file-roller での代替、もしくは同追加を推奨します。
あと KDE 系は使わない派なので、詳細対応は同ユーザに聞いて下さい。


○ Windows 標準「圧縮フォルダ」 .zip 展開での『文字化け』問題

 ▼起因
.txt 同様 「文字エンコード:SHFT_JIS ( MS CP932 )」に因るもの。
雑に言えば Windows 作成の日本語・文字データは、同環境依存ってこと。

 ▽対処
要するに、文字コード識別して utf-8 展開できるヤツを使えばオッケー。
たぶん最も簡略かつ著名な、コマンドライン・ツール「 unar 」を導入。
 code:
sudo dnf -y install unar

 ☆基本の操作
展開したい( SJIS ) .zip フォルダ上で端末を開き、以下実行。
 code:
unar ファイル名.zip

※備考
上記は単純な「展開」のみ。 その他オプションは、下記が明解かと。
Qiita :メジャーな圧縮ファイルの解凍用にunarコマンドが便利
http://qiita.com/twittarsan/items/550b18c222ceb75d0181


○コンテキスト・メニュー(スクリプト実行)からの展開対応
確かに unar ステキだけど、平易な PC 利用で cul ツールは使い難い。
コマンド知識以前に、既知でないファイル名を typo する可能性も。
と言う訳で、以後ファイラで GUI 操作出来るよう、初期設定します。

 ▽ Nemo / Caja-scripts の利用
unar 実行スクリプトを作成し、Nautilus 系ファイラの同機能を利用。
以下 Nemo での設定例です。

 ☆スクリプト作成
新規テキスト作成、以下記述して .sh 拡張子にて保存。

#!/bin/sh
echo *.zip | xargs -n 1 unar


上記は「ユーザ権限階層・オプションなし」の展開に特化の内容。
その他は下記対応を参照し、拡張子(青文字)部分を差替え列記のこと。

unar 対応フォーマット
http://unarchiver.c3.cx/formats

nemo_scripts_絶望の因果から解脱するsh
スクリプト・ファイルの保存場所(「ホーム」下の隠しディレクトリ)
Nemo = ~/.gnome2/nemo-scripts/
Caja = ~/.config/caja/scripts/

※備考
スクリプト名は各自任意、画像内の名称・コメントを気にしたら負け。


 ☆実行権の付与
絶望の因果から解脱sh_property
同スクリプトを右クリック>「プロパティ(P)」>「パーミッション」(タブ)
「実行:プログラムとして実行可能(E)」項目にチェック


 ☆スクリプト実行例
context_menu_nemo_scripts.jpg
各フォルダ(階層)上で右クリック>「スクリプト(S)」>各選択クリック
画像は Nemo 例ですが、Caja も同様です。

※備考
同階層(フォルダ上)に対する実行のため、各ファイル選択の必要ナシ。
ただ逆に言うと、フォルダ上にある対応ファイル全てに実行されます。

Nautilus も同様のハズだけど、同ユーザじゃないので詳細未確認。


 ▽ Thunar 「カスタムアクション」の場合
私は Xfce ユーザなんで、こちらも紹介しときます。
Thunar_custom_action_unar.jpg


スクリプト例: Thunar だけの利用を考慮し、~/. へ保存。(各自任意)
Homucifer_scripts.jpg
標準 Xarchiver 補完には、画像のように対応拡張子を増やすと便利かと。


メニューバー>「編集(E)」>「アクションの設定(U)」にて
Thunar_action_edit_Homucifer_sh.jpg
「コマンド(C)」:上記等スクリプトを指定(注:実行権付与を忘れずに
「登場する条件」:「その他のファイル(O)」


 ☆アクション実行例
Thunar アクションの発動はファイル対象なので、要選択です。
context_menu_thunar_action_Homucifer.jpg
ただし、対応ファイルが同フォルダ上にあれば展開= Nemo 等と同じ。


○君は一体何に干渉してしまったんだ! 何を改竄してしまったんだ?
interrupt_mask_expander.jpg
ごく稀ですが、CUL 或いはスクリプトで展開出来ない状況があります。
トリッキーな例をワザと作ってみました。 原因分かります?

答え:ファイル名の先頭に、半角スペースが挿入されています。
コレをコマンド展開するには、ファイル名を「 " " 」で括ります。
 code:
  unar " サンプル.zip"

これも既知の問題(?)ですが、一般 PC ユーザはこの点を承知しません。
ファイル名の中間なら識別も容易ですが、上記はややトリッキー。
でもコピペ多用だと、決して特異なケースでもありませんよ。

「ワケが分からないよ?」 えぇ、理解できなくても仕方ありません。
それは作成者の希望でも絶望でもなく、ファイル名への「愛」なのです。


○愚か者が相手なら、私は手段を選ばない
ソレもコレも、wine 経由で良ければ解決策はあります。
use_explzh.jpg
もう単純に、Windows 向けの同対応ソフトを使えば良いだけ。

Explzh for Windows のホームページへようこそ!
http://www.ponsoftware.com/


処理するには、これからも、あなたたちの存在が必要なの。



スポンサーサイト

«  | HOME |  »