Regarding $window().fontsize, it is not a bug. It's just that the font size value displayed in the Font dialog does not match the value used in mirc commands. mirc however allows you to use values as those in the Font dialog, by specifying a negative number.
For example: type /font in the status window and, in the dialog that pops up, select Fixedsys with size 9. Then check $window(status window).fontsize. It returns 12. Now type /font -s 12 Fixedsys. You'll notice that the font does not change. This means that the 12 is translated to 9 in the Font dialog. Now if you type /font -s -9 Fixedsys, you'll see again that the font doesn't change. So /font -s -9 Fixedsys and /font -s 12 Fixedsys are equivalent. You can easily make an alias that converts a Font dialog value to a mirc value (the opposite is not directly possible, so one would have to make a little loop).
fontconv window -h @@ | font @@ $2 $+(",$remove($1,"),") | var %a = $window(@@).fontsize | window -c @@ | return %a
Usage: $fontconv(fontname,fontsize), where fontsize would be a negative number. Edit: it seems that the /window command itself does not support negative numbers :tongue: (or it doesn't do it properly, I don't know and don't have the time to check it thoroughly) so I had to change the script a bit.