[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:58080] Re: ターミナルに日本語含むファイルパス貼り付けで文字化け



喜瀬さん、アドバイスありがとうございます。

ウェブブラウザのアドレス欄ですと、URLの一部をコピーすると
エンコードなしでペーストできるようです。
(私の環境のFirefoxですと、頭の「h」をはずして選択すればOKでした)
が、今回のケースでは使えないですね。

ターミナルにペーストする場合でも
ファイルマネージャCajaの「移動:」という欄にペーストする場合でも
(表示→場所バー、をチェックしないといけませんが)
確かに先頭のhを抜かすとエンコードなしでペーストできますね。

$ echo 文.pdf | nkf -wMQ | tr = %
%E6%96%87%2Epdf
$ echo %E6%96%87%2Epdf | nkf -w --url-input
文.pdf

.. が %2E と変換されたようなのが最初の投稿と違っていますが
コマンドでのエンコード・デコードはとりあえずこれでできるようです。

右クリックメニューから
デコードされたファイルパスが
クリップボードに貼り付けられるようにするといいのかもしれないなと思いまして、
http://ankyo.blog.so-net.ne.jp/2011-11-18
を読んでみました。
ここに書いてある通りの、
目的のファイルを「Vim テキストエディター (端末)で開く」というメニューは
右クリックの「別のアプリで開く」という所に出すことができました。
しかし、一発でファイルパスをデコード状態でクリップボードに貼り付けるまでは
ちょっと難しそうです。

---
Kenji Matsui


On 2016年08月03日 23:59, KISE Hiroshi wrote:
解決策でなくてすみません。

キーワードは「URLエンコーディング」「パーセントエンコーディング」
あたりでしょうか。

From: Kenji Matsui <kmatsui@xxxxxxxxxxxxxxxxxx>
Subject: [debian-users:58078] ターミナルに日本語含むファイルパス貼り付けで文字化け
Date: Wed, 3 Aug 2016 22:56:32 +0900
nautilus や caja などのファイルマネージにおいて対象のファイルを選択し、
ctrl + c を押した後に
ターミナルに ctrl + shift + v で貼り付けると
ファイルパスに英数字のみを含むものはそのファイルパスを
file:///home/debmania/Desktop/manual1.pdf
というように正常に貼り付けられますが、
ファイルパスに日本語を含むものは
file:///home/debmania/Desktop/%E6%96%87.pdf
というように文字化けしてしまいます。

「文字化け」というか、「エンコード」された状態です。
そもそも、ファイルマネージャがデコードして表示していると
考えることもできます。
試しに、エンコードされたURLをファイルマネージャとか
ウェブブラウザに渡してみてください。

再現実験をしたかったのですが準備できなかったので、手持ちの
testingで、Xfce、Thunarの環境で試してみました。

/tmpディレクトリで「touch 文.pdf」でファイルを作成、
Thunarで/tmpを表示、「文.pdf」を選択してCtrl+c、
マウス中ボタンでペーストすると「%E6%96%87.pdf」、
Ctrl+Shift+vで「/tmp/文.pdf」となりました。

今回のファイルパスの文字化けに関しましても
現時点で特に解決手段がない場合は
将来の安定版で修正していただけると
とてもありがたいです。

次の安定版でお望みの挙動になるかもしれません。
どなたか、testingやunstableのGnome環境で試して
いただけないでしょうか。

では、まずは文字化けを防ぐ設定方法について
ご存じのことやお気づきのことなどありましたら
どうぞよろしくお願いいたします。

ウェブブラウザのアドレス欄ですと、URLの一部をコピーすると
エンコードなしでペーストできるようです。
(私の環境のFirefoxですと、頭の「h」をはずして選択すればOKでした)
が、今回のケースでは使えないですね。

ウェブ上ではデコードしてくれるサイトがあります。
信頼できるサイトかは判断できませんでしたが、1つみつけました。
http://tech-unlimited.com/urlencode.html

根本的な解決策や、正確な説明は、どなたかにおまかせします。