The length is internal. Most likely, your network has a small line length compared to normal, so the network is cutting the line even if mIRC says it's not too long.
Here's a script to do it for you:
on *:start: {
timerCheckEditLine 0 1 CheckEditLine
}
alias CheckEditLine {
if (%EditLineLength != $len($editbox($active))) {
set %EditLineLength $len($editbox($active))
if ($len($editbox($active)) > [color:red]150[/color]) Beep
}
}
You can then edit the red 150 to the length you want. I don't know of a way to check if you type something without pressing enter, but this will check to see your line length every second, so it won't beep every time you press a key over the number of letters, but it will beep each second if you've typed another letter over the limit. Note that you may want to choose another sound than beep... you can use
splay soundname.wav instead of
beep if you want to use another sound.
Also, I know you can get data about what a server supports (such as $modespl), but I'm not sure if there's a way to get the server's line length value. If there is, you could just replace the 150 with that identifier (or perhaps that identifier minus 5 or something).
One thing to remember... if you type really fast, you could type 5+ letters in a second and since this beeps only once per second, you could end up over the limit by more than 1 letter before it beeps. So, set the number to less than the maximum line length... maybe 10 less or so. Also note that if you are typing an ECHO line in the edit box, that it counts the entire line length (including /echo), so it could beep at you while you still have space left over for the actual /echo line.
Here's an example if you have "1" as the limit:
H
(no beep)
1 second later:
Hi
(beep once)
1 second later many letters at once:
High
(beep once)
1 second later (no change):
High
(no beep)
1 second later (removing a letter):
Hig
(beep once)