tmate/TODO
2009-01-16 22:52:31 +00:00

76 lines
3.9 KiB
Plaintext

- line mode/char-at-a-time mode a la telnet?
- handle ioctl/termios stuff on window sockets
- figure out once and for all what is going on with backspace and del
backspace should be translated per the termios setting.
del passed through?
- window creation/idle time
- profile/optimise, particularly (i suspect) input.c
- could use bsearch all over the place or get rid of smaller tables (clientmsg)
- better errors when creating new windows/sessions (how?)
- Implicitly add exec to the commands for new windows (switch to disable it)
- 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 set attributes: bold, etc
- refer to windows by name etc (duplicates? fnmatch?)
- commands:
extend list-clients to list clients attached to a session (-a for all?)
bring back detach-session to detach all clients on a session?
clone-session command to link all windows to a new session
- allow fnmatch for -c, so that you can, eg, detach all clients
- bind non prefix keys
- garbage collect window history (100 lines at a time?) if it hasn't been used
in $x time (need window creation/use times)
- lift SHRT_MAX limits for history
- audit copy/scroll and other modes for problems with very small windows
- split clients into three RB trees by fd: attached/unattached/dead?
or tailqs? what would be fastest per-char?
- c/p is still borken in some ways
- better mode features: search, back word, forward word, etc
- flags to centre screen in window
- better terminal emulation (identify, insert mode, some other bits)
- when resizing, use history
- audit for leftover/unused code
- activity/bell should be per-window not per-link? what if it is cur win in
session not being watched?
- tidy up window modes
- problems with force-width when wrapping line in emacs?
- next prev word etc in command prompt; also ^K; also make it support modes
to support vi. is there something could use for this? editline(3)/readline?
- many more info() displays for various things
- vi half page scroll
- backspace should perhaps wrap backwards over newlines which were not moved
down by a newline: screen and the OS X terminal does this but xterm and most
others do not. this might be hard: a flag for each grid line (top bit of size
maybe)? a single flag is insufficient as can't then tell when to /stop/
unwrapping
- input.c is too complicated. simplify?
- try change from pass-though model to redraw model (use updated screen
data). maybe too slow though?
- use a better termcap internally instead of screen, perhaps xterm
- tty.c is a bit ugly
- a command to display the status line briefly when it is turned off
- FAQ "Can I have some examples of cool things I can do with tmux?" -- linkw, more??
- clone session command
- kill all but current pane
- fix rxvt cursor fg issue (text under cursor has non-white fg)
- key handling sucks a bit and needs to be reworked
- would be nice if tmux could be the shell
- key to switch to copy mode from scroll mode
- flag to scroll-mode/copy-mode to automatically scroll up a page
- some people find first window being 0 rather than 1 is awkward on the keyboard. what about a new-window-index option that sets the base at which tmux starts numbering new windows, then they can do: set -g new-window-index 1; bind 0 selectw -t:10
- suspend-client command bound to ^Z
soon:
- swap-pane-up, swap-pane-down
- move-pane (to window)
- should be able to move to a hidden pane and it would be moved into view
- command to run something without a window at all - output to window-more. what for? isnt this the same as doing it w/ splitw/neww now?
- command to purge window history? or apply history-limit changes?
- command: load-buffer -b number filename
- command: copy-buffer -s src-session -t dst-session -a src-index -b dst-index (copy from other session)
- function groups, bind-key ^W { select-window 0; send-key ^W } etc ***
- neww should support -k
for 0.6:
- document xterm-keys