set_output_rewrite
no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
— | set_output_rewrite [2006/08/29 16:08] (current) – created - external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | # $EPIC: set_output_rewrite.txt, | ||
+ | ======Synopsis: | ||
+ | [[set]] output_rewrite | ||
+ | |||
+ | ======Description: | ||
+ | If this /[[SET]] is defined (by default, it is un-set), then every | ||
+ | time a LOGICAL line of output is about to be sent to a window, the | ||
+ | /[[SET]] value is expanded, and the result of that expansion is substituted | ||
+ | for the original text. The expansion is parsed in the context that: | ||
+ | |||
+ | | $0 | The window refnum the output is going to | | ||
+ | | $1- | The text itself | ||
+ | |||
+ | ======Examples: | ||
+ | This would timestamp all output to all windows: | ||
+ | /SET OUTPUT_REWRITE $Z $1- | ||
+ | |||
+ | This would timestamp all output to all windows with a custom timestamp | ||
+ | format: | ||
+ | /SET OUTPUT_REWRITE $strftime(%X) $1- | ||
+ | |||
+ | This would return proceed all output to all windows with the output of | ||
+ | the user defined function $myfunc() called with the window number. | ||
+ | /SET OUTPUT_REWRITE $myfunc($0) $1- | ||
+ | |||
+ | ======Notes: | ||
+ | When changing /[[set]] output_rewrite inside of an alias, please remember | ||
+ | that $'s are expanded before the /set is called, and so things like | ||
+ | $1- or $myfunc($0) would be expanded at the /set time and not at the | ||
+ | rewrite time. Make sure to double up your $$'s in such cases! | ||
+ | |||
+ | ======Practical: | ||
+ | For every line of output that goes to the screen, /[[on window]] is | ||
+ | thrown. | ||
+ | there are some instances where output goes to the window without | ||
+ | /[[on window]] having been thrown. | ||
+ | general purpose time stamp handlers. | ||
+ | way of doing final-editing on window output is needed. | ||
+ | provides that capability. | ||
+ | |||
+ | ======Performance Note:====== | ||
+ | This is a very expensive operation, but is cheaper than using | ||
+ | an /[[on window]], and probably less of a hassle than redefining | ||
+ | a zillion other / | ||
+ | will always be honored for all lines of output. | ||
set_output_rewrite.txt · Last modified: 2006/08/29 16:08 by 127.0.0.1