I requested this before, asking for a $text identifier. We got a $parms identifier. $parms is a nice identifier, but does not fulfill the original request for a static event-scope constant.

In any remote event that contains $rawmsg or a :(matchtext): parameter or a $1- / $parms output, we would also like an identifier that contains the event's untokenized message text, and that behaves as an event-scope constant. The same way $nick $chan $target $event $eventid $matchkey $address $fulladdress $site $wildsite, and other such event-scope constants behave. All of these event constants can be referenced from any depth of sub-alias or sub-identifier call, without having to be passed and re-passed as a parameter to said alias or identifier.

The passing, re-passing and storing-to-variable of an event's static message text is a very tedious process, when it shouldn't have to be. It probably also accounts for a bulk amount of needless spawning of memory just to handle and pass the same message over and over again.

$eventmsg or $eventtext or $eventparms or $msgtext would work anywhere that $nick $target $rawmsg, etc work, for the event's lifetime, in all child stacks.

On *:TEXT:*:#: channel_text_handler
On *:ACTION:*:#: channel_text_handler
On *:NOTICE:*:#: channel_text_handler
CTCP *:*:#: channel_text_handler

ALIAS channel_text_handler {
  echo -sti * DEBUG: channel_text_handler : $event : $nick : $target : $rawmsg : $eventmsg

Well. At least I won lunch.
Good philosophy, see good in bad, I like!