|
こんなマクロで、いつ CR/LF になるのか試してください。
一度は、明示的に CR でセーブしてください。
開いたとき、編集中、セーブしたあと ?
これ以下のコードで、a1.mac のファイルを作成して、
秀丸のディレクトリにおいて、「マクロの実行」で起動できます。
// 現在のファイルの「文字コード」と「改行コード」を表示するマクロ。
$wk1 = "現在のファイルの「文字コード」と「改行コード」\n\n";
call pk_conv_bin_hex1 charset;
$wk1 = $wk1 + "charset ( hex. string ) : " + $$return + "\n";
call pk_conv_bin_bit1 charset;
$wk1 = $wk1 + "charset ( bits string ) : " + $$return + "\n\n";
$tbl_1[0] = "新規作成直後 Shift-JIS";
$tbl_1[1] = "Shift-JIS";
$tbl_1[2] = "Unicode";
$tbl_1[3] = "EUC";
$tbl_1[4] = "JIS";
#i = charset;
#j = #i & 0x3F;
$wk1 = $wk1 + "文字コード: " + $tbl_1[#j];
if( #i != 00 ){
$tbl_2[0] = "CR/LF";
$tbl_2[1] = "LF";
$tbl_2[2] = "CR";
#j = ( #i / 0x40 ) % 3;
$wk1 = $wk1 + "\n改行コード: " + $tbl_2[#j];
}
message $wk1;
endmacro;
pk_conv_bin_bit1:
##k = ##1 % 256; $$wk1 = "";
##j = 0x80;
while( ##j ){
$$wk1 = $$wk1 + str( ##k & ##j != 0 );
$$wk1 = $$wk1 + leftstr("\x20",(##j==0x10));
##j = ##j / 2;
}
return $$wk1;
//*6MICRO_END
//*6MICRO pk_conv_bin_hex1
//*6_Desc. convert binary to hex. text string Ver. 02.00A
//*6 call pk_conv_bin_hex1 arg_n1;
//*6 arg_n1 : binary // ##1
//*6 $$return : hex. text string, minus - FFxxxxxx (8)
//*6 global area : N/A
endmacroall;
pk_conv_bin_hex1:
$$tbl_hex = "0123456789ABCDEF";
$$wk1 = ""; ##k = ##1; ##m = ##1;
if( ##k == 00 ){ return "00"; } // zero
if( ##k < 00 ){ ##k = 256*256*256*256 + ##k; } // minus
while( ##k != 0 ){
##i = ##k%256; ##k = ##k/256; ##j = ##i%16; ##i = ##i/16;
$$wk1 = midstr($$tbl_hex,##i,1) + midstr($$tbl_hex,##j,1) + $$wk1;
}
// if( ##m < 00 && leftstr($$wk1,2) != "FF" && strlen($$wk1) < 8 ){
// $$wk1 = "FF" + $$wk1; // minus FFxx
// }
if( ##m < 00 ){
$$wk1 = rightstr("FFFFFF"+$$wk1,8); // minus FFxx (8)
}
return $$wk1;
//*6MICRO_END
|
|