エンコードが自動認識できないNo.31956
marvie さん 13/02/07 10:29
 
エンコードを自動判別に設定していますが、Shift-JISで書かれたファイルを開くとE
UCでファイルが開かれ文字化けしてしまいます。

ファイルを開いたあとに「ファイル」のブルダウンメニューから「エンコードの種
類」→「自動判定で読み込みしなおし」を実行すると、shift-JISで判別できました。

試しにエンコード設定をShift-JIS固定にしてファイルを開いてもEUCで開かれます。
(上級者設定→エンコード1設定→自動認識のチェックを外す、標準のエンコードの
種別をShift-JISに設定)

エンコードが自動認識できないのはなぜでしょうか?
バージョンは8.13、8.20、8.21で試しました。

[ ]
RE:31956 エンコードが自動認識できないNo.31958
秀丸担当 さん 13/02/07 13:46
 

「自動判定で読み込みしなおし」をした場合は普通に自動認識で開いた場合と同
じになるはずなので、それで違いがあらわれるとしたら、ファイルヒストリから
開いたときに前回のエンコードが記憶されている可能性があると思います。

設定は、[その他]→[動作環境]で左下の「上級者向け設定」をONにして、
[その他]→[動作環境]→[ファイル]→[ヒストリ]の、「ファイルヒストリから開
くときは前回のエンコードの種類で開く」にあります。
これがONになっていたら、OFFにしてみると、ヒストリから開いたときも「自動
判定で読み込みしなおし」と同じになると思います。

この設定は「ファイル」メニューの下部のファイルヒストリから開いたときで、
「開く」ダイアログから開いたときは関係ないです。


他には、[その他]→[動作環境]→[ファイル]→[エンコード2]のところの「EUC
コード指定ドライブ」が指定されていると、ここに書かれたアルファベットのド
ライブはEUCとして認識されます。
もしここに何か書かれていたら空欄にするといいと思います。

[ ]
RE:31958 エンコードが自動認識できないNo.31962
marvie さん 13/02/07 17:05
 
返信ありがとうございます。

「ファイルヒストリから開くときは前回のエンコードの種類で開く」はOFF
になっていました。「EUCコード指定ドライブ」も空欄でした。
ヒストリからファイルを開いてみましたが自動認識されませんでした。

結果、下記(a),(b)は自動認識されない、(c)は自動認識されるようになっ
ています。

(a) ファイルをダブルクリックで開いたとき
(b) ヒストリから開いたとき
(c) ファイルを開いた後に「自動判定で読み込みしなおし」

上記はCソースファイルで試していましたが、他のTXTファイルでは自動
認識できていました。(Shift-JISで開きました。)
ファイルの違いで秀丸の振る舞いが違っているようです。

[ ]
RE:31962 エンコードが自動認識できないNo.31963
秀丸担当 さん 13/02/07 17:11
 

ヒストリやEUC指定ドライブではなかったようで失礼しました。

>上記はCソースファイルで試していましたが、他のTXTファイルでは自動
>認識できていました。(Shift-JISで開きました。)
>ファイルの違いで秀丸の振る舞いが違っているようです。

ファイルの種類によって違うということで、たぶんわかりました。
Cソースファイルを開いた状態で、[その他]→[ファイルタイプ別の設定]→[その
他]→[保存・読込み]の「エンコードの種類の指定」がされているのではないか
と思います。
ここがもしEUCになっていたら「自動判定」にするといいと思います。

[ ]
RE:31963 エンコードが自動認識できないNo.31966
marvie さん 13/02/08 10:54
 
>Cソースファイルを開いた状態で、[その他]→[ファイルタイプ別の設定]→[その
>他]→[保存・読込み]の「エンコードの種類の指定」がされているのではないか
>と思います。
>ここがもしEUCになっていたら「自動判定」にするといいと思います。

ご指摘通りここがEUCになっていました。
「自動判定」にしたところShift-JISで認識して開けるようになりました。
本当にありがとうございました。

[ ]