OMG. That would be evil to implement within an existing ANSI 'collector'.
It is also illegal according to ECMA-48 (5th ed) which states in short:

The format of a control sequence is
   CSI P ... P I ... I F

...

The Parameter Bytes are bit combinations from 03/00 to 03/15. The
parameter string is interpreted as follows:
a) If the first bit combination of the parameter string is in the range
   03/00 to 03/11, the parameter string is interpreted according to the
   format described in 5.4.2.

...

5.4.2 Parameter string format
A parameter string which does not start with a bit combination in the
range 03/12 to 03/15 shall have the following format:
a) A parameter string consists of one or more parameter sub-strings,
   each of which represents a number in decimal notation.
b) Each parameter sub-string consists of one or more bit combinations
   from 03/00 to 03/10; the bit combinations from 03/00 to 03/09
   represent the digits ZERO to NINE; bit combination 03/10 may be used
   as a separator in a parameter sub-string, for example, to separate
   the fractional part of a decimal number from the integer part of
   that number.

...

The general idea is that if it starts with a digit, ':' or ';' it must
follow the normal list of numbers rules. I think you'll find that most
emulators will be implemented with this assumption on all CSI sequences
Plus the assumption that there will be at most one 'other' character
between the CSI and the final byte.

The normal way to implement a special string is with a DCS code eg..

ESC P w (*$&%(*^$(%<>?:@~@!"~# ST

Tho as you only using 'I' bytes you may be able to get away with an
independent control function.

-- 
Rob.                          (Robert de Bath <rdebath @ poboxes.com>)
                                       <http://www.cix.co.uk/~mayday>


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

Reply via email to