ファイルの一部をバイナリモードで開けなNo.35321
ヤバルゴ mdl.2 さん 16/09/29 23:01
 
秀丸エディタを利用しております。

【問題】
「ファイルの一部を開く」際に「バイナリモードで開く」にチェックしてファイルを
開いても、Shift-JISとして読み込んでいるため認識エラーが発生する。

【補足】
認識エラー発生後、「エンコードの種類を選択しなおす」ボタンを押し、バイナリ
モードを選択すれば(一応)正しく読み込めます。…が、明らかに二度手間です。

【要望】
「ファイルの一部を開く」際に「バイナリモードで開く」にチェックしてファイルを
開いたとき、バイナリモードとして読み込む。

問題の報告と要望は以上です。
ご検討のほどよろしくお願いいたします。

[ ]
RE:35321 ファイルの一部をバイナリモードNo.35323
秀丸担当 さん 16/09/30 09:53
 

バグ情報ありがとうございます。
「ファイルの一部を開く...」コマンドでダイアログを出し、「バイナリモード
で開く」をONにして開いたときに、Shift-JISとして読み込まれているというこ
とかと思います。そういうことが起きるとしたらバグだと思います。
こちらで試してみた限りではうまく再現させることができませんでした。
可能性としてファイルの先頭部分にxml宣言やhtmlのmetaタグなどがあって、そ
れを認識しているようなことを考えてためしてみましたが、それも影響なさそう
でした。
この操作手順と違うような場合は教えていただけると助かります。

関係しそうな開き方としては、ファイルヒストリから開く場合があります。
通常の設定ではファイルヒストリから開くと毎回自動認識で開こうとします。
この場合、以前にバイナリモードで開いても認識エラーになる可能性があります。
以前につかったモードを再利用する設定があります。
[その他]→[動作環境]で左下の「上級者向け設定」をONにして、
[その他]→[動作環境]→[ファイル]→[ヒストリ」にある「ファイルヒストリか
ら開くときは前回のエンコードの種類で開く」をONにすると、以前バイナリモー
ドで開いた場合はヒストリからもバイナリモードになります。

ただ、「ファイルの一部を開く...」で開いた場合は、ファイルヒストリには入
らないようになっていて、既に入っているヒストリが書き換わることは無いです。
通常にファイルを開いた場合にのみ記憶されます。

[ ]
RE:35323 ファイルの一部をバイナリモードNo.35324
ヤバルゴ mdl.2 さん 16/09/30 19:53
 
ご回答ありがとうございます。

>関係しそうな開き方としては、ファイルヒストリから開く場合があります。
>通常の設定ではファイルヒストリから開くと毎回自動認識で開こうとします。

こちらのアドバイスを踏まえて、ファイルの読み込むときの状況を試行いたしました。

1. 秀丸エディタを新規に開き、ファイルの一部をバイナリモードで開く
⇒ 正しく読み込める。

2. 上記 1. の後、もう一度ファイルの一部をバイナリモードで開く
⇒ 認識エラーが発生する。

この試行の結果を見て、
動作環境→(上級者向け設定)→ファイル→排他制御2→再読み込み
「再読み込み時にファイルのエンコード種類を自動判定しなおす」
のチェックを外してみたところ、 2. のときでも正しく読み込めるようになりました。

このことから、
「再読み込み時にファイルのエンコード種類を自動判定しなおす」にチェックを入れ
ると、同一のファイルを開きなおす場合に「バイナリモードで開く」のチェックを無
視するようになる、と推測されます。

[ ]
RE:35324 ファイルの一部をバイナリモードNo.35325
秀丸担当 さん 16/10/03 09:53
 

再現方法の情報ありがとうございます。
こちらでも確認することができました。
「再読み込み時にファイルのエンコード種類を自動判定しなおす」がONで、ファ
イルの一部を開いているとき、上部のバーをクリックして開きなおすときにそう
なっていました。
こういう場合でも大丈夫なように修正させていただきます。

[ ]