#main-output is one of the built-in program output streams.
#main-output identifies the output destination, described by the "-of" or "-aof" directive on the OmniMark program's command line. Where there isn't an "-of" or "-aof" on the command line, then
#main-output identifies the same destination as
#process-output (that is, "standard output").
#process-output identify the same destination, the modifiers set on
#main-output are applied to the stream attachment. For example, if
#main-output is written to in text-mode and
#process-output is written to in binary-mode, then the stream attachment will be written to in text-mode. If both of these streams identify the same destination, and one stream is buffered and the other unbuffered, OmniMark will issue a run-time warning and the modifiers set on
#main-output will be applied to the stream attachment.
#main-output is the default output (
#current-output) in an OmniMark program.
The "declare #main-output has" declarations can be used to change some of the characteristics of the
#main-output was identified by the name
output in earlier releases of OmniMark.
output can still be used as a synonym for
#main-output (except in contexts where you have declared a shelf, argument, or function with the name
output), but its use is deprecated. Using
#main-output produces programs that are easier to understand.