アウトプット枠での改行挿入No.08285
山紫水明 さん 14/05/07 21:17
 

loaddll "HmOutputPane.dll";
#r=dllfunc("Output",hidemaruhandle(0),"テスト1\n");
#r=dllfunc("Output",hidemaruhandle(0),"テスト2\n");
#r=dllfunc("Output",hidemaruhandle(0),"テスト3\n");

を実行すると,
テスト1
テスト2
テスト3
と改行が入りますが,

#r=dllfunc("Output",hidemaruhandle(0),"テスト1\nテスト2\nテスト3\n");
を実行すると
テスト1テスト2テスト3
となりとなります。行中の改行が無視されるのは仕様でしょうか。

              山紫水明

[ ]
RE:08285 アウトプット枠での改行挿入No.08286
h-tom さん 14/05/07 21:55
 

h-tom です。

>#r=dllfunc("Output",hidemaruhandle(0),"テスト1\nテスト2\nテスト3\n");
>を実行すると
>テスト1テスト2テスト3
>となりとなります。行中の改行が無視されるのは仕様でしょうか。
以前確認したら、この動作は仕様だそうです。
  http://maruo.dyndns.org:81/turukame/turukame_3/x1005491.html

Output関数で、引数の文字列の途中で改行を入れたい場合は、"\n"ではなく、
"\r\n"にする必要があるって事を、ヘルプに書いておいた方がいいかな?

[ ]
RE:08286 アウトプット枠での改行挿入No.08287
山紫水明 さん 14/05/07 22:31
 
 h-tomさん,ありがとうございます。

>以前確認したら、この動作は仕様だそうです。
>  http://maruo.dyndns.org:81/turukame/turukame_3/x1005491.html

 4年前ですか。さすがに早くお気づきだったのですね。

>Output関数で、引数の文字列の途中で改行を入れたい場合は、"\n"ではなく、
>"\r\n"にする必要があるって事を、ヘルプに書いておいた方がいいかな?

 そうですね。少なくとも今回のような疑問はなくなります。

                          山紫水明

[ ]
RE:08287 アウトプット枠での改行挿入No.08288
秀丸担当 さん 14/05/08 09:19
 

Output関数で出力する場合、確かに"\r\n"と書く必要がありました。
マクロヘルプに追記させていただきます。

[ ]