Robert de Bath wrote on 2001-05-28 12:44 UTC:
> In the vt102 manual:
>    http://vt100.net/docs/vt102-ug/chapter5.html#S5.5
> 
> " If a control character is received within a sequence, the terminal
> " performs the function of the control character, followed by the function
> " of the sequence.

:-(  Very ugly!

> Actually that approach may break the leading zero requirement 5.4.2(f)
> because leading 03/00's become significant in that enough of them
> could overflow the buffer and prevent the sequence being interpreted.
> Even if this approach is only done with private sequences the issue
> would apply to VT100 compatibility.

I'd argue that if you insist on sending 50 kilobytes of leading zeros
for no good reason, then that's your problem. Modern implementations
would use anyway a variable-length string type to implement the buffer,
as it is now conveniently available in any programming environment
except perhaps for embedded 8-bit microcontrollers with extremely tight
RAM.

> It's obvious that you're uncomfortable with requiring a code to be sent
> with every character that has it's default width overidden. OTOH I and
> others have an aversion to more breakable state at the terminal end.

I just try to come of with a robust solution that that doesn't waste
ridiculous amounts of bytes.

>    CSI > Pw ; Pn w

Also a decent possibility, though somewhat less compact. But please
remove the ">" byte after CSI. It is not needed since you stay
completely within the regular parameter string syntax (which does cover
the case of an empty parameter string) and thus can use any normal
parser.

>    Pw : The width requested for the following characters, default 2.
>    Pn : The number of characters to set, default 1.

If you fancy, add Pn=0 -> infinity and specify that the setting ends at
the next control function that repositions the cursor (CR, LF, set
cursor, etc.).

>      The default widths are as defined by wcwidth().
>
>      A width of 3 is available for Devanagari and any who may need it.

Do we REALLY need 3 for Devanagari? I would rather avoid having to load
a third font for that! For which glyph or ligature do you see the need
for triple-width glyphs?

Markus

-- 
Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK
Email: mkuhn at acm.org,  WWW: <http://www.cl.cam.ac.uk/~mgk25/>

-
Linux-UTF8:   i18n of Linux on all levels
Archive:      http://mail.nl.linux.org/linux-utf8/

Reply via email to