aboutsummaryrefslogtreecommitdiff
path: root/TODO
blob: e4e8c846da6ec8f65a9c49242328ed0af616a4de (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
- mouse handling and some other bits elinks needs
- 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)
- nested sessions, ie session as window - moving to it moves into session
  (remembering parent)
- 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
- save/restore (DECSC/DECRC) are ugly. maybe a struct screen_attr and memcpy
- force-default option: assume terminal supports default colours even if AX
  is missing (like, eg, xterm-color in an aterm)
- refer to windows by name etc (duplicates? fnmatch?)
- commands:
	command to run something without a window at all?
	command to purge window history
 	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
- function groups, bind-key ^W { select-window 0; send-key ^W } etc ***
- 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
- screen_draw_* moved out/renamed (accept TTY_*?)
- get rid of stderr/stdout hacks in log.c
- split clients into three RB trees by fd: attached/unattached/dead?
  or tailqs? what would be fastest per-char?
- window splitting?
- why do up/down work in angband with screen but not tmux??
	-- it's not kkeypad/kcursor
- fix kkeypad/kcursor
- c/p is still borken in some ways
- poll(2) is broken on OS X/Darwin, a workaround for this would be nice
- different screen model? layers perhaps? hmm
- cfg file improvements (env vars particularly)
- better mode features: search, back word, forward word, etc
- flags to centre screen in window
- get rid of DEFDATA etc

-- For 0.4 --------------------------------------------------------------------

- document zombie windows
- document buffer stuff
- document next/prev word
- commands:	save-buffer -b number filename
		load-buffer -b number filename
  	      	copy-buffer -s src-session -t dst-session -a src-index -b dst-index
		      		    (from other session)

-- For 0.5 --------------------------------------------------------------------

- clear EOL etc CANNOT rely on term using the current colour/attr and probably
  should not emulate it doing so
- activity/bell should be per-window not per-link? what if it is cur win in
  session not being watched?
- tidy up window modes
- support \033_string\033\\ for window title too
- list-keys should be sorted
- problems with force-width when wrapping line in emacs?
- command history for command-prompt. better tab completion (use options too)
- window options should be done similarly to standard options
- next prev word etc in command prompt
- split keys in command prompt/scroll mode/copy mode into vi and emacs and
  have a "edit-mode" option select which keymap
- zombie windows: don't disappear when the command dies. new command
  	 respawn-window [command] to restart; ommitting commands uses previous
- many more info displays for various things