built-in shelf


#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 is not an -of or -aof on the command line, then #main-output identifies the same destination as #process-output (that is, standard output).

When #main-output and #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 stream.

By default, the #main-output stream in any program that uses referents is treated as if it were opened with referents-allowed and referents-displayed.