拡張子毎に文字コード設定?No.01828
もとき さん 98/10/14 14:56
 
ファイルの拡張子毎に文字コードや改行コードを設定することってできないでしょう
か?

たとえば,.TeX は JIS コード,.html は JIS で 改行が LF のみとか...


[ ]
RE:01828 拡張子毎に文字コード設定?No.01832
番頭++ さん 98/10/14 17:44
 

>ファイルの拡張子毎に文字コードや改行コードを設定することってできないでしょう
>か?
>
>たとえば,.TeX は JIS コード,.html は JIS で 改行が LF のみとか...
>

すべての組み合わせはありませんが、
こんなマクロで回避してはいかがですか ???

//  test1.mac
    if( basename == "" ){
        CHANGENAME;
        if( ! result ){ endmacro;   }
    }
    $wk1 = basename;
    $wk3 = $wk1;
    while( $wk1 != "" ){
        #i = strstr($wk1,".");
        if( #i != -1 ){
            $wk2 = leftstr($wk1,#i);
            $wk1 = midstr($wk1,#i+1,strlen($wk1)-#i-1);
        } else {
            $wk2 = $wk1;    $wk1 = "";
        }
    }
    if( strstr($wk3+"\\","."+$wk2+"\\") != -1 ){
// 拡張子アリ
        $wk2 = "." + $wk2;
        $type1 = "/.txt/.mac/.ini/"; // カスタマイズしてください !!!
        $type2 = "/.tex/.html/.unix/"; // カスタマイズしてください !!!
        if( strstr($type1,"/"+$wk2+"/") != -1 ){
            saveas filename2, sjis, lf;
            if( ! result ){
                message "ERROR - saveas failed ! \n\n" + filename2; endmacro;
            }
        } else if( strstr($type2,"/"+$wk2+"/") != -1 ){
            saveas filename2, jis, lf;
            if( ! result ){
                message "ERROR - saveas failed ! \n\n" + filename2; endmacro;
            }
        } else {
            saveas filename2, sjis; // crlf
            if( ! result ){
                message "ERROR - saveas failed ! \n\n" + filename2; endmacro;
            }
        }
    } esle {
// 拡張子無し
            saveas filename2;
            if( ! result ){
                message "ERROR - saveas failed ! \n\n" + filename2; endmacro;
            }
    }
//  quit;   //  編集中止 !!!
endmacro;
// saveas ファイル名 [,sjis | unicode | euc | jis] [, lf | cr ];
// end of macro.

[ ]