1.1 KiB
Post-display print observers
Python: hook_print_after(name, callback, userdata=None, priority=PRI_NORM).
The callback is (word, word_eol, userdata, attrs), matching hook_print_attrs().
It runs after display_event() has handled the text, so prnt() follows the original
text. Return values are ignored. Events eaten by a pre-hook or hidden by client
preferences do not invoke these observers. This is post-display notification,
not a notification that the entire incoming IRC command has finished updating state.
C: zoitechat_hook_print_after(ph, name, priority, flags, callback, userdata);
flags must be zero. Check get_info("api_hook_print_after") for "1" before
accessing the appended Windows function-table slot. Existing pre-hook timing is
unchanged. Unhook/unload use existing lifecycle functions. Recursive emission
skips an already-running observer to prevent it immediately invoking itself.
def after(word, word_eol, userdata, attrs):
zoitechat.prnt('This follows the original channel message')
zoitechat.hook_print_after('Channel Message', after)