{ "-decctlq", IXANY, 0 },
{ "imaxbel", IMAXBEL, 0 },
{ "-imaxbel", 0, IMAXBEL },
{ "iutf8", IUTF8, 0 },
{ "-iutf8", 0, IUTF8 },
{ NULL, 0, 0 },
};
Allow any character (allow only
.Dv START )
to restart output.
.It Cm iutf8 Pq Fl iutf8
Erase multibyte UTF-8 letters.
.It Cm imaxbel Pq Fl imaxbel
The system imposes a limit of
.Dv MAX_INPUT
/* enable input flow control */
.It Dv IXANY
/* any char will restart after stop */
.It Dv IUTF8
/* make ERASE character remove UTF-8 multibyte letters */
.It Dv IMAXBEL
/* ring bell on input queue full */
.El
characters are transmitted are implementation defined.
.Pp
If
.Dv IUTF8
and
.Dv ICANON
are set,
every letter would be removed as a UTF-8 multibyte letter upon receipt of the
.Dv ERASE
character.
.Dv IMAXBEL
is set and the input queue is full, subsequent input shall cause an
.Tn ASCII
* Flags that are supported and stored by this implementation.
*/
#define TTYSUP_IFLAG (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK|ISTRIP|\
INLCR|IGNCR|ICRNL|IXON|IXOFF|IXANY|IMAXBEL)
INLCR|IGNCR|ICRNL|IXON|IXOFF|IXANY|IMAXBEL|IUTF8)
#define TTYSUP_OFLAG (OPOST|ONLCR|TAB3|ONOEOT|OCRNL|ONOCR|ONLRET)
#define TTYSUP_LFLAG (ECHOKE|ECHOE|ECHOK|ECHO|ECHONL|ECHOPRT|\
ECHOCTL|ISIG|ICANON|ALTWERASE|IEXTEN|TOSTOP|\
int quote;
unsigned int prevpos, tablen;
if (ttyinq_peekchar(&tp->t_inq, &c, "e) != 0)
#define MULTIBYTE(u) (((u) & 0x80) == 0x80)
return (-1);
#define FIRST_OCTET(u) (((u) & 0xC0) == 0xC0)
ttyinq_unputchar(&tp->t_inq);
bool utf8 = CMP_FLAG(i, IUTF8);
do {
} while(utf8 && MULTIBYTE(c) && !FIRST_OCTET(c));
#undef MULTIBYTE
#undef FIRST_OCTET
if (CMP_FLAG(l, ECHO)) {
/*
#endif
#if __BSD_VISIBLE
#define IMAXBEL 0x00002000 /* ring bell on input queue full */
#define IUTF8 0x00004000 /* support UTF-8 encoding */