tmux/TODO
2007-10-12 12:08:51 +00:00

64 lines
2.8 KiB
Plaintext

- 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
- 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 or get rid of smaller tables (clientmsg)
- better errors when creating new windows/sessions (how?)
- commands should have to care less about CMD_KEY
- CLIENT_HOLD sucks
- session with CMD_NOSESSION should be an error
- each command should have a print op as well for list keys
- get rid of MAXNAMELEN limits (sessid)
- List available commands on ambigous command
- Implicitly add exec to the commands for new windows (switch to disable it)
- nested sessions, ie session as window - moving to it moves into session
(remembering parent)
- Nested sessions over the network, plug-in another tmux as a window/subsession
- it would be nice to have multichar commands so you could have C-b K K for
kill-window to limit accidental presses
- status-fg/status-bg should be able to a) use strings for colours "red" etc
b) set attributes too ("bold-red"?)
-- For 0.1 --------------------------------------------------------------------
- man page
- sort out bell: passing through should be optional
- commands:
refresh session (similar to detach: -a for all, else if key redraw cur,
else do nothing)
rename sessions
swap windows
link/copy windows
unlink window (error if window only linked to one session)
kill window (C-b backsp)
kill session (no not bind by default)
set shell
send prefix
- handle tmux in tmux (check $TMUX and abort)
- check for some reqd terminfo caps on startup