Yes, I have stated in PM that it is undertstood for scripters that they would need to use one or the others two for the two differents features, keypresses and resulting chars.
I think they would be happy to, I'm really looking forward this addition.

In the past I made suggestions about having sizing/minimize/restore events inside menu { } definition, there's another feature that would be awesome to have, it's mouse wheel up/down event, I did test these last two with a dll to scroll a custom drawn list inside a picture window and it was working flawlessly. Given they are all windows messages, I think this could be part of a nice revamp and greatly improve picture windows.


Worth noting also that we can now access 3 more mouse events from on keydown with $keyval,
VK_MBUTTON 0x04 Middle mouse button (three-button mouse)
VK_XBUTTON1 0x05 X1 mouse button
VK_XBUTTON2 0x06 X2 mouse button

And here is an alias which convert $keyval value to meaningful text, it only works for keypress, not mouse button.

Code
alias keyvaltodesc {
  var %list 08 BACKSPACE.09 TAB.0C CLEAR.0D ENTER.10 SHIFT.11 CTRL.12 ALT.13 PAUSE.14 CAPS LOCK.15 IME Kana/Hangul mode.16 IME On.17 IME Junja mode.18 IME final mode.19 IME Hanja mode.19 IME Kanji mode.1A IME Off.1B ESC.1C IME convert.1D IME nonconvert. $+ $&
    1E IME accept.1F IME mode change request.20 SPACEBAR.21 PAGE UP.22 PAGE DOWN.23 END.24 HOME.25 LEFT ARROW.26 UP ARROW.27 RIGHT ARROW.28 DOWN ARROW.29 SELECT.2A PRINT.2B EXECUTE.2C PRINT SCREEN.2D INSERT.2E DELETE.2F HELP.30 0.31 1.32 2.33 3.34 4.35 5.36 6.37 7. $+ $&
    38 8.39 9.41 A.42 B.43 C.44 D.45 E.46 F.47 G.48 H.49 I.4A J.4B K.4C L.4D M.4E N.4F O.50 P.51 Q.52 R.53 S.54 T.55 U.56 V.57 W.58 X.59 Y.5A Z.5B LEFT WINKEY.5C RIGHT WINKEY.5D APPLICATIONKEY.5F COMPUTER SLEEP.60 NUMPAD 0.61 NUMPAD 1.62 NUMPAD 2.63 NUMPAD 3. $+ $&
    64 NUMPAD 4.65 NUMPAD 5.66 NUMPAD 6.67 NUMPAD 7.68 NUMPAD 8.69 NUMPAD 9.6A MULTIPLY.6B ADD.6C SEPARATOR.6D SUBSTRACT.6E DECIMAL.6F DIVIDE.70 F1.71 F2.72 F3.73 F4.74 F5.75 F6.76 F7.77 F8.78 F9.79 F10.7A F11.7B F12.7C F13.7D F14.7E F15.7F F16. $+ $&
    80 F17.81 F18.82 F19.83 F20.84 F21.85 F22.86 F23.87 F24.90 NUM LOCK.91 SCROLL LOCK.92 OEM.93 OEM.94 OEM.95 OEM.96 OEM.A0 LEFT SHIFT.A1 RIGHT SHIFT.A2 LEFT CONTROL.A3 RIGHT CONTROL.A4 LEFT MENU.A5 RIGHT MENU.A6 BROWSER BACK.A7 BROWSER FORWARD. $+ $&
    A8 BROWSER REFRESH.A9 BROWSER STOP.AA BROWSER SEARCH.AB BROWSER FAVORITES.AC BROWSER HOME.AD VOLUME MUTE.AE VOLUME DOWN.AF VOLUME UP.B0 MEDIA NEXT TRACK.B1 MEDIA PREVIOUS TRACK.B2 MEDIA STOP.B3 MEDIA PLAY/PAUSE.B4 LAUNCH MAIL.B5 LAUNCH MEDIA SELECT. $+ $&
    B6 LAUNCH_APP1.B7 LAUNCH APP2.BA OEM 1.BB OEM PLUS.BC OEM COMMA.BD OEM MINUS.BE OEM PERIOD.BF OEM 2.C0 OEM 3.DB OEM 4.DC OEM 5.DD OEM 6.DE OEM 7.DF OEM 8.E1 OEM specific.E2 OEM 102.E3 OEM specific.E4 OEM specific.E5 IME PROCESS.E6 OEM specific. $+ $&
    E9 OEM specific. EA OEM specific.EB OEM specific.EC OEM specific.ED OEM specific.EF OEM specific.F0 OEM specific.F1 OEM specific.F2 OEM specific.F3 OEM specific.F4 OEM specific.F5 OEM specific.F6 ATTN.F7 CRSEL.F8 EXSEL.F9 EREOF.FA PLAY.FB ZOOM.FD PA1.FE OEM CLEAR
  var %w $wildtok(%list,$base($1,10,16,2) *,1,46)
  tokenize 32 %w
  return $2-
}


#mircscripting @ irc.swiftirc.net == the best mIRC help channel