mirror of
https://github.com/opnsense/src.git
synced 2026-04-23 07:07:24 -04:00
Partially implement the mysterious cons25 \e[x escape sequence.
It seems the terminfo library on some systems (OS X, Linux) may emit the sequence \e[x to reset to default attributes. Apart from using the zero-command, this escape sequence allows many more operations, such as setting ANSI colors. I don't see this used anywhere, so this should be sufficient for now. This deficiency was spotted by the Debian GNU/kFreeBSD. They have their own patch, which is slightly flawed in my opinion. I don't know why they never reported this issue to us. MFC after: 1 week
This commit is contained in:
parent
6df3eebb63
commit
68fdfe2926
2 changed files with 15 additions and 0 deletions
|
|
@ -106,6 +106,7 @@ C25ADFG Cons25 set adapter foreground ^[ [ = F r
|
|||
C25BLPD Cons25 set bell pitch duration ^[ [ = B r r
|
||||
C25CURS Cons25 set cursor type ^[ [ = S r
|
||||
C25MODE Cons25 set terminal mode ^[ [ = T r
|
||||
C25SGR Cons25 set graphic rendition ^[ [ x r r
|
||||
C25VTSW Cons25 switch virtual terminal ^[ [ z r
|
||||
|
||||
# VT52 compatibility
|
||||
|
|
|
|||
|
|
@ -87,6 +87,20 @@ teken_subr_cons25_set_bell_pitch_duration(teken_t *t, unsigned int pitch,
|
|||
(duration & 0xffff));
|
||||
}
|
||||
|
||||
static void
|
||||
teken_subr_cons25_set_graphic_rendition(teken_t *t, unsigned int cmd,
|
||||
unsigned int param __unused)
|
||||
{
|
||||
|
||||
switch (cmd) {
|
||||
case 0: /* Reset. */
|
||||
t->t_curattr = t->t_defattr;
|
||||
break;
|
||||
default:
|
||||
teken_printf("unsupported attribute %u\n", cmd);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
teken_subr_cons25_set_terminal_mode(teken_t *t, unsigned int mode)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue