mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			101 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
- window creation/idle time
 | 
						|
- 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 eg C-b K K
 | 
						|
- 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?
 | 
						|
- 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
 | 
						|
- better mode features: search, back word, forward word, etc
 | 
						|
- flags to centre screen in window
 | 
						|
- better terminal emulation (identify, insert mode, some other bits)
 | 
						|
- 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
 | 
						|
- next prev word etc in command prompt; also ^K
 | 
						|
- 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?
 | 
						|
- use a better termcap internally instead of screen, perhaps xterm
 | 
						|
- kill all but current pane
 | 
						|
- fix rxvt cursor fg issue (text under cursor can have non-white fg)
 | 
						|
- key handling sucks a bit and may need to be reworked
 | 
						|
- some people find first window being 0 rather than 1 is awkward on the
 | 
						|
  keyboard
 | 
						|
- client sx/sy should be in tty, then can let the terminal wrap at edge
 | 
						|
  to allow xterm to pick up it should be one line for its c/p
 | 
						|
- 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
 | 
						|
- 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?
 | 
						|
- would be nice if tmux could be the shell (tmux attach, but hard link to tmux
 | 
						|
  binary as "tmuxsh" or wrapper script?) problems with tty dev permissions
 | 
						|
- 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?
 | 
						|
- set-option should be set-session-option and should be overall global options
 | 
						|
  for stuff like mode keys?
 | 
						|
      also quiet, utf8 and maybe other flags?
 | 
						|
  -g is a bit unexpected in conf file
 | 
						|
- clear window title on exit
 | 
						|
- refer to windows by name etc (duplicates? fnmatch?)
 | 
						|
- the output code (tty.c) could do with optimisation depending on term
 | 
						|
  capibilities
 | 
						|
- would be nice to be able to use "--" to mark start of command w/ neww etc
 | 
						|
  to avoid quoting
 | 
						|
- goto line and search history in copy/scroll modes
 | 
						|
- a command to display the status line briefly when it is turned off
 | 
						|
- clone session command
 | 
						|
- make command sequences more usable: don't require space after ;, handle
 | 
						|
  errors better
 | 
						|
- might be nice if attach-session behaved like switch-client inside an
 | 
						|
  existing client
 | 
						|
- key to switch to copy mode from scroll mode
 | 
						|
- attach should have a flag to create session if it doesn't exist
 | 
						|
- layout/split stuff:
 | 
						|
	  ** NEW layout design:
 | 
						|
	     1. finish rewrite manual with tree of layout_cell
 | 
						|
	     2. convert automatic layout modes to produce a tree and make
 | 
						|
	        them one-off operations
 | 
						|
	     3. move any size/position details from window_pane to layout_cell
 | 
						|
	     3.5. fix -p/-l on split
 | 
						|
	     4. a way to address panes by name ("top-left") and position ("0,0")
 | 
						|
	 TO TEST: force-width/height OK, respawn-window, rotate-window OK, break-pane??
 | 
						|
	** rename split-window -> split-pane
 | 
						|
- fix UTF-8 guesswork on sparc64, improve tty checks
 | 
						|
- choice and more mode would be better per client than per window?
 | 
						|
- 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)
 | 
						|
- close/redirect stderr when popen to child proc for #() in status line
 | 
						|
- 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
 | 
						|
- does tmux require a exmple conf? where does it go?
 | 
						|
- there are an awful lot of commands. maybe separate man page for conf
 | 
						|
  file/commands -similar to ssh/ssh_config?
 | 
						|
- esc seq to set window title should be documented and should set automatic-rename
 | 
						|
- *** get rid of PANE_HIDDEN -- initially just check for outside window
 | 
						|
- way to set socket path from config file
 | 
						|
- the "window with one pane" vs window distinction is weird, eg you can't kill-pane the last pane
 | 
						|
- status-active-fg/bg/attr would be nice to highlight active window, as would options to set
 | 
						|
  the highlight stuff
 | 
						|
- XXX once env stuff is in, default-path and VISUAL/EDITOR should be picked up when session is started
 | 
						|
- expand leading ~ in source-file save-buffer etc
 | 
						|
- screen/xterm etc translate \n to \r when pasting:
 | 
						|
  18:31 <+NicM> so i think the best thing might be to a) stick with \n
 | 
						|
  	internally b) change paste-buffer to translate \r to \n per xterm c)
 | 
						|
  	add a -r option to paste-buffer to turn off the translation
 | 
						|
- paste-buffer etc should be able to handle \0, so needs a size member and no more strlen
 | 
						|
- tidy up and prioritise todo list ;-)
 |