To work around this, you can select the “Custom” for the Input, and then enter “$(DocText)” for the “Custom” text box, and make sure the “Add EOF” check box is cleared.
Thanks for the update and workaround. I can confirm it works correctly with Custom input of “$(DocText)”.
On the next version, I will make the “Add EOF” check box enabled even when “Selection” or “Document” is selected.
I’m not altogether certain what the purpose of this is, since a real EOF is received by the external program when EmEditor closes the pipe.
I tested with this program to confirm EmEditor is properly closing the pipe. I get the output “a$
” to the input “a
” when “Add EOF” is off, and “a<0x1a>$
” when it’s checked.
static class Program
{
static void Main(string[] args)
{
for (int c; (c = System.Console.Read()) != -1;)
{
System.Console.Write((char)c);
}
System.Console.Write("$");
}
}
At the very least, I think the checkbox is ill-named as it can be confused with the real EOF (closing of an input stream) which that checkbox has nothing to do with. Maybe a name such as “Add &1AH (Ctrl-Z) byte” can avoid this confusion.