summaryrefslogtreecommitdiffstats
path: root/TODO
blob: 5e47d696cf50bb8b44e44300de7baf1c310e2579 (plain)
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
- key remapping
- 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
- keys to add:
	NONE?
- nuke '?' on getopts
- const char *opusage = ... on ops rather than dup usage args
- 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

-- For 0.1 --------------------------------------------------------------------
- man page
- commands:
	rename sessions
	swap windows
	link/copy windows
	detach session remotely
	create window remotely
	unlink window (error if window only linked to one session)
	close window
	kill session
	set status on/off
	set meta
	set shell
	bind key??
- fix resize (width problems with multiple clients?)
- handle tmux in tmux (check $TMUX and abort)
- check for some reqd terminfo caps on startup
- sort out the pause mess