日本語フォントと欧文フォント(エンコードNo.18755
EC さん 05/02/01 01:14
 
Ver4.xx を使用していますが、言語エンコード/フォントの取り扱いが Ver3.xx から
変更されているため使い勝手が悪く困っています。解決方法を知りたいです。

言語エンコード/フォントの使い分けとは、

*.txt ファイルをファイル内容により、
(1) あるときは 「MSゴシック」で開き、あるときは「Courie New」で開く、という
使い分けをする、
(2) かつ、そのときに grep で検索した結果も元のフォント設定に一致させたい

というものです。

[その他]-[ファイルタイプ別の設定]
[その他]-[動作環境]-[エンコード1]
[ファイル]-[エンコードの種類]
などの組み合わせ/使い分け、各種オプションの設定組み合わせ、などを試してみた
のですが、いずれも完璧に使い分けをすることができません。
(1) は [エンコードの種類] で手動で切り替えできても、(2) は切り替えできません。
(エンコードの自動認識がOFF設定でも多少働いている?)


Ver3.xx のように、強制的に使用エンコード/フォントを 日本語フォント/欧文フォ
ント に切り替えられれば問題ないのですが、Ver4.xx はどうしてもある程度自動認
識が働いてしまうようで(エンコードの自動認識をOFFにしても駄目でした)、狙い通
りにエンコード/フォントの使い分けができません。

ファイル内容で全自動で言語エンコード/フォント切り替えを行う必要はありません。
手動切り替えでOKなので、狙い通りに「エンコード種別とフォント種類」が切り替え
られれば良いのですが...。

アドバイスお願い致します。

[ ]
RE:18755 日本語フォントと欧文フォント(No.18768
Iranoan さん 05/02/02 12:08
 
 EC さん今日は、Iranoan です。
> (1) あるときは 「MSゴシック」で開き、あるときは「Courie New」で開く、という
> 使い分けをする、
> (2) かつ、そのときに grep で検索した結果も元のフォント設定に一致させたい
<snip>
> (1) は [エンコードの種類] で手動で切り替えできても、(2) は切り替えできませ
>ん。
> (エンコードの自動認識がOFF設定でも多少働いている?)
 はて? grep の出力結果でも、エンコードの切り替えは出来ますが??? (1)
が出来ているということは、エンコード毎のフォントの設定がされていないわ
けでもないでしょうし...。

 こちらの環境は、Windows98+IE6.0+秀丸 Ver.4.14 です。

[ ]
RE:18768 日本語フォントと欧文フォント(No.18772
秀丸担当 さん 05/02/02 16:38
 

> (1) は [エンコードの種類] で手動で切り替えできても、(2) は切り替えできませ
>ん。

grepの出力結果でエンコードの種類を切り替えると、ファイルを読み込みしなお
すかどうかの選択が無いのが問題ということでしょうか。
たとえば、日本語の「あ」が含まれるgrep結果で[ファイル]→[エンコードの種
類]で欧文に変えたとしても、欧文で文字化けしたようにはならず、「あ」が維
持されてしまいます。
確かに、これは不都合かもしれません。
回避する方法として、マクロで
config "f(Courier)";
などとやれば、V3.xxのように「あ」は文字化けしつつ強制的に変更することが
できます。
あるいは、いったんファイルに保存すると、[ファイル]→[エンコードの種類]で
ファイルを読み込みしなおすかの選択が出ます。
これでは不都合なので、grep結果でもファイルの読み込み直しと同等のことがで
きるように検討したいと思います。

[ ]
RE:18772 日本語フォントと欧文フォント(No.18783
EC さん 05/02/04 01:50
 
Iranoanさん、秀丸担当さん、
コメント有難うございます。

>grepの出力結果でエンコードの種類を切り替えると、ファイルを読み込みしなお
>すかどうかの選択が無いのが問題ということでしょうか。
>たとえば、日本語の「あ」が含まれるgrep結果で[ファイル]→[エンコードの種
>類]で欧文に変えたとしても、欧文で文字化けしたようにはならず、「あ」が維
>持されてしまいます。
>確かに、これは不都合かもしれません。
はい、確かにその通りで、私にとっては使いにくいです。


>これでは不都合なので、grep結果でもファイルの読み込み直しと同等のことがで
>きるように検討したいと思います。
宜しくお願い致します。



また、私の問題点がちょっとわかりにくかったと思いますので、もう少し具体的に説
明します。

[前提条件]
ファイルタイプ別の設定で、
[1] *.txt --> 日本語テキスト設定(フォント=MSゴシック)
[2] *.txt --> English Text Setting(フォント=Courie New)
を準備する。
動作環境で、[標準エンコードの種類]を”日本語(Shift-JIS)”にする。

(不具合事例 1-1)
最後に設定していたファイルタイプが日本語テキスト設定[1]の場合に、
英文テキスト(半角アルファベットと半角記号のみのテキスト)を開くと、
日本語テキスト設定(フォント=MSゴシック)で開くが、
エンコードは[欧文]が自動選択されてしまい、
フォントとしてアルファベットなどの文字類は”MSゴシック”
記号類(0xA4 など)は”Courie New”が使用される
という中途半端な状態になってしまう。
(不具合事例 1-2)
このとき、選択されているファイルタイプ別設定(この場合は[1])とは
違うフォント(この場合は”Courie New”)を選択して grep を実効すると、
grepが選択された文字/記号を正しく認識できずに結果は空(該当なし)となる。
(実際にはファイル中に存在しているから選択できているのに、見つけることが出来
ない)
(不具合事例 1-3)
このとき、”MSゴシック”で表示されている文字を選択して grep
すると正しく結果が表示されるが、このときに”Courie New”で
表現されている文字が結果に含まれている場合は、grep結果を保存
しようとした場合に
「文字コード変換できない文字が含まれています。かまわずに保存しますか?」
と聞いてくる。
かまわずに保存すると、その文字が「?」になってしまう。

(不具合事例 2-1)
逆に、最後に設定していたファイルタイプがEnglish Text Setting[2]の場合に、
日本語テキスト(漢字、全角カタカナ/記号、半角カタカナ/記号、など
の混じりテキスト)を開くと、
「欧文で読み込み中に変換できなかった文字が...」と”認識エラー”の
ウィンドウが開き、[エンコードの種類を指定しなおす]ボタンを押して
”日本語(Shift-JIS)”を選ぶと、一見正しく開けたように見える。
しかし、この状態はファイルタイプがEnglish Text Setting[2] のままで
フォントに”MSゴシック”が選択されているという中途半端な状態になっている。
(不具合事例 2-2)
このとき、もし[標準エンコードの種類]が”欧文”であった場合は、
grepで日本語を指定しても、見つけることが出来ない。
(不具合事例 2-3)
[標準エンコードの種類]が”日本語(Shift-JIS)”であった場合は、日本語を指定し
てgrepできるが、その結果を保存しようとすると、
「文字コード変換できない文字が含まれています。かまわずに保存しますか?」
と聞いてくる。
かまわずに保存すると、その文字が「?」になってしまう。


ただし、(不具合事例 2-3)の場合は保存時に”エンコードの種類”を指定すれば、問
題回避は出来ますが...。


いずれにしても、ファイルを開いた後に、ファイルタイプ別の設定で
強制的にフォントとエンコードが切り換えられれば、全て解決するような
気がします。(Ver3.xx の時のようにです)

あるいは、
  ファイルタイプ別の設定
  動作環境の”エンコードの自動判定”
  動作環境の”  標準エンコードの種類”
  ファイルメニューの”エンコードの種類”
の兼ね合い/使い分けが今ひとつ理解できません。
というか、秀丸エディタの処理自体に一貫性が無いように思えます。



長々と記してしまいましたが、さらなるアドバイスがあれば宜しくお願い致します。

[ ]
RE:18783 日本語フォントと欧文フォント(No.18786
秀丸担当 さん 05/02/04 16:06
 

いろいろ不具合事例の報告ありがとうございます。

>いずれにしても、ファイルを開いた後に、ファイルタイプ別の設定で
>強制的にフォントとエンコードが切り換えられれば、全て解決するような
>気がします。(Ver3.xx の時のようにです)

エンコードの種類を変えることによって、ファイルを読み込んでいる場合は、フ
ァイルを読み込みなおすかどうかの選択が出ます。
これと同じように、grep結果の場合も選択がでるように修正したいと思います。

[ ]
RE:18786 日本語フォントと欧文フォント(No.18788
EC さん 05/02/04 16:16
 
>>いずれにしても、ファイルを開いた後に、ファイルタイプ別の設定で
>>強制的にフォントとエンコードが切り換えられれば、全て解決するような
>>気がします。(Ver3.xx の時のようにです)
>
>エンコードの種類を変えることによって、ファイルを読み込んでいる場合は、フ
>ァイルを読み込みなおすかどうかの選択が出ます。
>これと同じように、grep結果の場合も選択がでるように修正したいと思います。
宜しくお願い致します。

[ ]