mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-27 10:33:09 +01:00
Handle missing parm_*.
This commit is contained in:
parent
b10bd51d20
commit
5f6a9e7e5b
3
TODO
3
TODO
@ -61,6 +61,8 @@
|
|||||||
- chmod +x socket when any client is attached
|
- chmod +x socket when any client is attached
|
||||||
- split clients into three RB trees by fd: attached/unattached/dead?
|
- split clients into three RB trees by fd: attached/unattached/dead?
|
||||||
or tailqs? what would be fastest per-char?
|
or tailqs? what would be fastest per-char?
|
||||||
|
- everything should write via a screen and modes should be done by switching
|
||||||
|
screen out
|
||||||
|
|
||||||
-- For 0.2 --------------------------------------------------------------------
|
-- For 0.2 --------------------------------------------------------------------
|
||||||
- window splitting?
|
- window splitting?
|
||||||
@ -69,6 +71,7 @@
|
|||||||
split. string length should be part of the command size
|
split. string length should be part of the command size
|
||||||
- echo \\033[35\;46m\\033[2J last line quirk (with C-b r)
|
- echo \\033[35\;46m\\033[2J last line quirk (with C-b r)
|
||||||
- quick intro section (tmux new/attach/detach) etc
|
- quick intro section (tmux new/attach/detach) etc
|
||||||
|
- is ACS the right way round??
|
||||||
|
|
||||||
--------
|
--------
|
||||||
kmous -- \E[M
|
kmous -- \E[M
|
||||||
|
35
tty.c
35
tty.c
@ -1,4 +1,4 @@
|
|||||||
/* $Id: tty.c,v 1.7 2007-11-27 23:28:51 nicm Exp $ */
|
/* $Id: tty.c,v 1.8 2007-12-03 10:47:27 nicm Exp $ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||||
@ -268,19 +268,44 @@ tty_vwrite(struct tty *tty, int cmd, va_list ap)
|
|||||||
break;
|
break;
|
||||||
case TTY_INSERTLINE:
|
case TTY_INSERTLINE:
|
||||||
ua = va_arg(ap, u_int);
|
ua = va_arg(ap, u_int);
|
||||||
tty_puts(tty, tparm(parm_insert_line, ua));
|
if (parm_insert_line != NULL)
|
||||||
|
tty_puts(tty, tparm(parm_insert_line, ua));
|
||||||
|
else {
|
||||||
|
while (ua-- > 0)
|
||||||
|
tty_puts(tty, insert_line);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case TTY_DELETELINE:
|
case TTY_DELETELINE:
|
||||||
ua = va_arg(ap, u_int);
|
ua = va_arg(ap, u_int);
|
||||||
tty_puts(tty, tparm(parm_delete_line, ua));
|
if (parm_delete_line != NULL)
|
||||||
|
tty_puts(tty, tparm(parm_delete_line, ua));
|
||||||
|
else {
|
||||||
|
while (ua-- > 0)
|
||||||
|
tty_puts(tty, delete_line);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case TTY_INSERTCHARACTER:
|
case TTY_INSERTCHARACTER:
|
||||||
ua = va_arg(ap, u_int);
|
ua = va_arg(ap, u_int);
|
||||||
tty_puts(tty, tparm(parm_ich, ua));
|
if (parm_ich != NULL)
|
||||||
|
tty_puts(tty, tparm(parm_ich, ua));
|
||||||
|
else if (insert_character != NULL) {
|
||||||
|
while (ua-- > 0)
|
||||||
|
tty_puts(tty, insert_character);
|
||||||
|
} else if (enter_insert_mode != NULL) {
|
||||||
|
tty_puts(tty, enter_insert_mode);
|
||||||
|
while (ua-- > 0)
|
||||||
|
tty_putc(tty, ' ');
|
||||||
|
tty_puts(tty, exit_insert_mode);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case TTY_DELETECHARACTER:
|
case TTY_DELETECHARACTER:
|
||||||
ua = va_arg(ap, u_int);
|
ua = va_arg(ap, u_int);
|
||||||
tty_puts(tty, tparm(parm_dch, ua));
|
if (parm_dch != NULL)
|
||||||
|
tty_puts(tty, tparm(parm_dch, ua));
|
||||||
|
else {
|
||||||
|
while (ua-- > 0)
|
||||||
|
tty_puts(tty, delete_character);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case TTY_CURSORON:
|
case TTY_CURSORON:
|
||||||
if (cursor_normal != NULL)
|
if (cursor_normal != NULL)
|
||||||
|
Loading…
Reference in New Issue
Block a user