is it possible to be able to change events like
notice, ctcp, whisper to show the channel too? so that
#, $chan can be used in these events?
Both the on notice event and the ctcp events correctly supply both # and $chan when the target of the event is a channel. Obviously if someone /notice's or /ctcp's you individually then it cannot provide # or $chan because no channel is linked to the event or in any way relevant to it. The same goes for whisper (by which I assume you mean private messages).
If you want to know the channels you share with a nick you can always use $comchan() to find all the channels you're in together.