|  | - implicitly add exec to the commands for new windows (switch to disable it)? | 
|  | - bring back detach-session to detach all clients on a session? | 
|  | - allow fnmatch for -c, so that you can, eg, detach all clients | 
|  | - garbage collect window history (100 lines at a time?) if it hasn't been used | 
|  | in $x time | 
|  | - flags to centre screen in window | 
|  | - activity/bell should be per-window not per-link? what if it is cur win in | 
|  | session not being watched? | 
|  | - use a better termcap internally instead of screen, perhaps xterm | 
|  | - should be able to move to a hidden pane and it would be moved into view. pane | 
|  | number in status line/top-right would be cool for this | 
|  | - support other mouse modes (highlight etc) and use it in copy mode | 
|  | - set-remain-on-exit is a bit of a hack, some way to do it generically? | 
|  | - clear window title on exit | 
|  | - would be nice to be able to use "--" to mark start of command w/ neww etc | 
|  | to avoid quoting | 
|  | - make command sequences more usable: don't require space after ;, handle | 
|  | errors better | 
|  | - attach should have a flag to create session if it doesn't exist | 
|  | - choice and more mode would be better per client than per window? | 
|  | - hooks to which commands may be attached, for example: tmux add-hook | 
|  | "new-session" if-shell "[ -e $HOME/.tmux-session.conf ]" source-file | 
|  | $HOME/.tmux-session.conf | 
|  | - get it passing all the vttest tests that don't require resizing the terminal | 
|  | - way to set socket path from config file | 
|  | - what about utmp etc? can tmux update it like screen? setgid? | 
|  | - warts on current naming: | 
|  | - display-time but message-fg/bg/attr | 
|  | - list-* vs show-* | 
|  | - server-info | 
|  | - up-pane/down-pane/swap-pane -U/swap-pane -D vs next-*/previous-* | 
|  | - split-window -> split-pane?? | 
|  | - a way for force-width/height to apply to only one pane (how?) | 
|  | - command to list what is actually running in each window with command line, | 
|  | pid (need some adaption of the osdep code) | 
|  | - support for bce | 
|  | - some way to force a screen to use the entire terminal even if it is forced | 
|  | to be smaller by other clients. pan smaller terminal? (like screen F) | 
|  | -- idea of a "view" onto a window, need base x/y offsets for redraw | 
|  | - handle resize better in copy mode | 
|  | - way to copy stuff that is off screen due to resize | 
|  | - commands should be able to succeed or fail and have || or && for command | 
|  | lists | 
|  | - some way to KEEP a command running continually and just use its LAST line of | 
|  | output | 
|  | - UTF-8 to a non-UTF-8 terminal should not be able to balls up | 
|  | the terminal - www/ruby-addressable; make regress | 
|  | - support esc-esc to quit in modes | 
|  | - fix ctrl+F1-F4 output. to what? | 
|  | - better utf8 support: window names, prompt input, message display | 
|  | - session history for client and last-session command | 
|  | - option to change status line colour when current window is in a mode? | 
|  | - option to move copy mode indicator into status line | 
|  | - list-buffer/show-buffer should display UTF-8 | 
|  | - selection behaviour closer to vi in vi mode | 
|  | - live update: server started with -U connects to server, requests sessions and | 
|  | windows, receives fds | 
|  | - command to show a tree of sessions-windows-panes (active marked with *) | 
|  | - sort out inheriting config from shell on new sessions/windows: | 
|  | should pick up default-path/termios/etc from client if possible, | 
|  | else leave empty/default | 
|  | - link panes into multiple windows | 
|  | - bells should be passed between sessions with visual-bell etc | 
|  | - use screen-256color when started on 256 colour terminal?? | 
|  | - if-shell/run-shell should block further command execution in the same command | 
|  | sequence until its shell exits, to allow them to be used from the config file | 
|  | - better session sharing: create-socket command to create socket somewhere (-r | 
|  | flag for readonly) | 
|  | - multiline status line (no?) | 
|  | - flag for absolute pane size to resize-pane | 
|  | - sanity check input to socket | 
|  | - support title stack, both internally and externally | 
|  | http://docs.freebsd.org/cgi/getmsg.cgi?fetch=1149299+0+archive/2010/freebsd-questions/20100207.freebsd-questions | 
|  | - command to show status line information briefly when it is off | 
|  | - some way to pad # stuff with spaces, #!2T maybe | 
|  | - a binding to "scroll down and exit at bottom" copy mode | 
|  | - some way to pass keystrokes in copy mode through to underlying window | 
|  | - last window update time and # replacement for it for display-message | 
|  | - find-window across sessions - other ways to make session handling easier? | 
|  | - ' and " should be parsed the same (eg "\e" vs '\e') in config and command | 
|  | prompt? | 
|  | - command to toggle selection not to move it in copy-mode | 
|  | - why are alerts per-winlink? try per window? | 
|  | - audit of escape sequence support vs xterm | 
|  | - support binding keys to mouse (mouse-select-pane -> mouse-keys or something, | 
|  | mouse click == select-pane -t %%, mouse scroll up == copy-mode) | 
|  | - something for -t "last window in session" so a session can be used as a stack | 
|  | - synchronous commands - client sends cmd and blocks, neww/splitw saves client | 
|  | ptr then when program inside died, sends MSG_SOMETHING with wait status to | 
|  | client | 
|  | - documentation improvements - rlpowell's tutorial - build instructions | 
|  | - bind commands to key sequences? -- make it so ALL keys go through a table, | 
|  | first an implicit table in which C-b is the only default binding to a | 
|  | command that says "next key from $othertable" and so on. means -n can | 
|  | go away as well | 
|  | - monitor, bell etc should monitor /all/ panes in the window not just one | 
|  | - a history of commands that can be reversed (reverse member of each command, | 
|  | and a buffer) info() when changing to same window | 
|  | - way to add dest for break-pane; maybe some easier way to unbreak-pane | 
|  | - case insensitive searching | 
|  | - option to move status line to top | 
|  | - configurable borders and empty space filler for when panes < window? | 
|  | - mouse-select-pane will screw up with !MODE_MOUSE_STANDARD (it sets the | 
|  | flag on w/o checking the others before calling tty_update_mode) | 
|  | - multiple keys could be done with tables, ie have prefixes go and instead | 
|  | bind -n ^A prefix-table "default" | 
|  | where prefix-table sets command lookup table and sets prefix flag, then next | 
|  | key is looked up in that table | 
|  | - pass shell commands as argv rather than strings, allow them to be specified | 
|  | in commands without quotes | 
|  | - a command to choose from a generic list, so you can do eg | 
|  | choose-list -l Abc,Moo,Blah "run-shell 'sh /my/choose/script %%'" | 
|  | - numeric prefix in copy mode should be paste buffer for C-w | 
|  | - named buffers and allow gaps in the stack | 
|  | - get rid of separate UTF-8 cell stuff: add 1 byte to cell and store BMP as | 
|  | uint16_t+3 bits of flags. anything <=0xffff is Unicode, higher are used to | 
|  | build tree of combined characters/non-BMP (LRU dropped when full) | 
|  | - entry in FAQ about what to do when someone does mkdir /tmp/tmux-1000 | 
|  | - show size under pane number in display-panes mode | 
|  | - monitor-activity is broken in several ways with multiple clients | 
|  | - monitor-activity should be more powerful (eg set a region) | 
|  | - maybe a way to put pane names instead of window names in status line | 
|  | - support for borderless panes | 
|  | - run-shell/if-shell should support status_replace stuff | 
|  | - wait-pane command or another way to make it synchronous/wait for command to | 
|  | finish | 
|  | - last-pane across sessions | 
|  | - attach should take a pane and select it as well as attaching | 
|  | - should default-path be a window option? | 
|  | - option to put status line at top (why?) | 
|  | - panes should have names like windows | 
|  | - command-prompt doesn't work if made read-only. why? | 
|  | - option to quote format eg #{session_name:quoted} | 
|  | - formats need to be used for much much more stuff! | 
|  | choose-* | 
|  | find-window | 
|  | - formats need conditions for >0 (for #P) | 
|  | - flags to find-window to select what is searched (title, name, content, history) | 
|  | - fetch full command line on !Linux, and add option to strip prefixes | 
|  | such as "sh " "/bin/sh " etc etc | 
|  | - synchronize-windows option | 
|  | - possibly support rxvt-unicode extended mouse input (1015) | 
|  | - append to buffer in copy mode | 
|  | - way to paste w/o trailing whitespace | 
|  | - flag to switch-client to switch all clients | 
|  | - history of layouts and undo/redo flags to selectl | 
|  | - way to tag a layout as a number/name | 
|  | - optimize pane redraws, 20120318184853.GK10965@yelena.nicm.ath.cx | 
|  | - support multibyte key strings | 
|  | * We need a tmux terminfo entry to document the extensions we are using in | 
|  | upstream terminfo. Must NOT change (only add or remove) anything from | 
|  | TERM=screen so we can fallback! |