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

[debian-users:35585] Re: XEmacsで日本語ファイル名



杉田です。

# From: 須山 猛 <tsuyama@xxxxx>
# Subject: [debian-users:35578] Re: XEmacsで日本語ファイル名
# Date: Thu, 12 Dec 2002 23:06:16 +0900

> > 2. たとえば、shift_jis に設定した状態で新しいファイルをつくってみて
> >    ファイルを保存することができますか?
> >    できるとしたら、他の日本語のファイルと一緒に ls なり dired-mode で
> >    表示するなりして、ちゃんと日本語で表示できますか?
> >    (そもそも、なんの漢字コードで保存されているのかと言うことです)
> 
> 文字コードはeuc-jpでまちがいなく保存されていると思います。kterm上で,
> lsを実行するとちゃんと日本語のファイル名が表示されます。

なるほど。

> (setq default-file-name-coding-system 'euc-jp)
> (setq file-name-coding-system 'euc-jp)
> 
> という設定状態で,dired-modeではちゃんと日本語が表示されます。また,日
> 本語のファイル名で保存することも可能です。
> 
> ちなみに,Ctrl + x,Ctrl + fで日本語のファイル名を読み込むことも可能で
> す。

なるほど、私が検証したのもそこまででした。(^^;

> しかし,kterm上から,
> 
> xemacs てすと.txt
> 
> とやるとやはり失敗してしまいます。
> 
> # もしかして,こういうことはそもそもできないのでしょうか?

んーむ、ということは、コマンドラインからXemacsにわたるファイル名が
化けてしまっているような感じがしますね。

ということで、テストしてみました。
こちらも、localeはja_JP.ujisなので、そのままコマンドラインに日本語の
ファイル名を書いても確かにまともに起動しませんでした。
で、シェルスクリプトファイルを書いてそこにShiftJISのファイル名を
書いてみましたが、これも化けました。

どうも、XEmacsのコマンドライン処理の問題っぽいですが、なんか回避策は
ないんでしょうかね。

。。。実験中。。。

ほほぉ、、、xemacs ではうまく行きませんが、gnuclient だと、
うまく行くようです。(なぜだかまではわかりませんが)
少なくとも、スクリプトに

#!/bin/sh
gnuclient ほげほげ

と、shift-jisで保存して、実行してみると、ちゃんとファイルが開きました。

。。。さらに実験中。。。

あらら、、、ダメ元でと思って、スクリプトを iso-2022-jp で保存してみたら
xemacs でも、ちゃんと開いてしまった。。。

っていうことは、デフォルトの coding-systemで指定してやらないといけないと
いうことのようですね。(起動時にdefault-coding-systemを指定しないときの
coding-systemというのでしょうか)

ということで、これでなんとかなりますかね。
起動スクリプトに nkf かなんかかませれば良さそうです。

xemacs `echo $1 | nkf -j`

こんなかんじで良さそうです。

 >>>>>>>>>>> SUGITA, Toshinori <<<<<<<<<<<<<
 >>>>>>>>>>>     杉田 敏典     <<<<<<<<<<<<<
 E-Mail : sugita@xxxxxxxxxxx  --- official
          sugita@xxxxxxxxxxxx --- private
          sugi-ml@xxxxxxxxxxx --- PostPet
          sugi-i@xxxxxxxxxxx  --- 携帯
 ICQ UID: 9323137 (Bin - Toshinori Sugita)
 WebPage: http://www.d-pad.co.jp/
          http://www.d-pad.co.jp/~sugi/