A little late in the game to answer this, but thought I'd toss in my suggestion as well:
Submenu
.Submenu Option: {
var %c = $crlf $+ $crlf | set %thingy $input(This is a definition within this box with a lot of different things notated to choose from. Here are your options: $+ %c $+ Option 1 (Blah blah) type +1 $+ %c $+ Option 2 (blahblah) type -2 $+ %c $+ Option 3 (blahblah) type -3,ieo,Select Option)
}
The "%c" variable is not really important, all I did was make a local (temporary) variable using the 'var' command and it contained the $crlf command. It isn't really a necessary step, but it makes the parsing of a script execute quicker and there is less repetitiveness in the code.
Next up, as was previously suggested, I used the '$input()' identifier to make a much more professional-feeling input box, rather than the $?="", which I'm not even sure why it still exists. $input() carries with it a whole load of options, including: having a title for your input prompt, a much more flexible description screen, options to change the alert icon (warning, info, critical warning and so on), and you can choose what you want included, such as ok/yes/no/cancel buttons and input/password-input edit boxes.
For more help on this command, go into mIRC and type: /help $input. Good luck!