Actually pheonix $2- was correct if they are going to type it in input event. Ex: The user types

/msg #mychan hi

that would trigger the id == /msg and the $2 = #mychan $3 = hi

where as your saying /msg # $2- which is now:

/msg #typed-in-chan #mychan hi

as for redifining captain_obvios, try this:

alias msg {
.msg $1-
/echo $color(own) -ti2 $1 (theme here)
}