mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-23 08:33:17 +01:00
58 lines
2.2 KiB
Plaintext
58 lines
2.2 KiB
Plaintext
- key remapping
|
|
- decide if TIOCPKT is necessary and either handle it or remove the code
|
|
- it would be nice if there wasn't so much copying buffers about, audit uses
|
|
- useful env vars like WINDOW
|
|
- sort out who controls the buffers in local.c a bit
|
|
- better checking/emulation for missing term requirements
|
|
- alt charset, borders etc (terminfo(5)/Line Graphics)
|
|
- new window command prompt
|
|
- mouse handling and some other bits elinks needs
|
|
- scrollback
|
|
- server doesn't handle SIGTERM anymore...
|
|
- copy/paste
|
|
- the whole input/screen/local thing sucks a bit, reorganise/redesign it
|
|
- line mode/char-at-a-time mode a la telnet?
|
|
- some of the uses of buffers really sucks. buffer_reverse_add/remove,
|
|
and buffer_insert_range/delete_range are abominations. this should be
|
|
rethought
|
|
- figure out once and for all what is going on with backspace and del
|
|
- keys to add:
|
|
NONE?
|
|
- nuke '?' on getopts
|
|
- const char *opusage = ... on ops rather than dup usage args
|
|
- window creation/idle time
|
|
- attributes could be 8 not 16 bits
|
|
- profile/optimise, particularly (i suspect) input.c
|
|
- tidy up input.c a bit
|
|
- decide about customised status line
|
|
- rethink data structures. window->index is O(n), could have a w->idx member
|
|
or use queues/trees and avoid NULLs?
|
|
- client could pass term/tty fd up to server and then do nothing. what problems
|
|
would this cause? -- need access to all terminfo data at once... signals?
|
|
- cleanup/redesign IPC
|
|
IPC is arse-about-face: too much overhead. 8-byte header for each
|
|
packet... hrm. already scanning output for \e, could add an extra
|
|
byte to it for message
|
|
- could use bsearch all over the place
|
|
- better errors when creating new windows/sessions (how?)
|
|
|
|
-- For 0.1 --------------------------------------------------------------------
|
|
- man page
|
|
- commands:
|
|
rename sessions
|
|
swap windows
|
|
link/copy windows
|
|
detach session remotely
|
|
create window remotely
|
|
unlink window (error if window only linked to one session)
|
|
close window
|
|
kill session
|
|
set status on/off
|
|
set meta
|
|
set shell
|
|
list-keys (list key bindings)
|
|
- fix resize (width problems with multiple clients?)
|
|
- handle tmux in tmux (check $TMUX and abort)
|
|
- check for some reqd terminfo caps on startup
|
|
- sort out the pause mess
|