xref: /netbsd-src/external/bsd/nvi/dist/motif_l/TODO (revision 2f62cc9c12bc202c40224f32c879f81443fee079)
1Top priority would be the mouse.  We need to get cut&paste working.
2(Including extend beyond the visible screen.  I believe I'm sending
3the correct mouse events for that, but I haven't tested it.)
4
5=-=-=-=
6Find a tool to convert the reference doc to html, and just point a
7browser at it for the help screen.  Have "novice", "fast lookup"
8and an "everything" version.
9
10=-=-=-=
11Disassociate scrollbar actions from the cursor, i.e. when you
12scroll the screen moves but the cursor doesn't.
13
14>> However, it seems to me that the cursor should disappear from
15>> the screen as soon as it's no longer positioned on a line that's
16>> on the screen.  Does that make sense?  And, if so, how do we
17>> make that happen?
18>
19> I'd add a message:
20>       IPO_DISPLAY_CARET( boolean )
21> since the caret is also used for the current drawing position, we
22> really can't move it 'off the screen'.
23
24=-=-=-=
25>> BTW, this may be a bug, I can't seem to erase characters in the
26>> colon command line.
27>
28> It's a bug that I reported earlier.  Core is not (correctly) reading the
29> tty options for the terminal.  Since we have not bound magic
30> characters (VI_BACKSPACE) to BackSpace and Delete keys, the
31> editing here is counter-intuitive.  I'd guess that you use
32> Delete for Tty Erase.  Try ^H in the colon line and see what happens.
33
34=-=-=-=
35Implement a "word search" button for the search dialog -- it's not
36trivial, the ex/ex_subst.c/re_compile() routine is going to have to
37allocate memory for the pattern which isn't going to make it happy.
38
39=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
40/* TODO List:
41 *	scrollbars	Need protocol messages that tell us what to display
42 *			in the scrollbars.  Suggestion:
43 *				scrollbar( bottom, lines, home )
44 *				bottom is $
45 *				lines is lines shown in the window
46 *					(takes wrap into account)
47 *				home is the line number ot the top visible line
48 *
49 *			On the way back send scroll( top )
50 *
51 *			User should be able to enable/disable bar display
52 *
53 *			<yuch!> horizontal scrollbar
54 *
55 *	expose_func
56 *	insert/delete	When we have a partially obscured window, we only
57 *			refresh a single line after scrolling.  I believe this
58 *			is due to the exposure events all showing up after
59 *			the scrolling is completed (pipe_input_func does all
60 *			of the scrolling and then we get back to XtMainLoop)
61 *
62 *	split		Ought to be able to put a title on each pane
63 *			Need protocol messages to shift focus
64 *
65 *	bell		user settable visible bell
66 *
67 *	busy		don't understand the protocol
68 *
69 *	mouse		need to send IPO_MOVE_CARET( row, column )
70 *			(note that screen code does not know about tabs or
71 *			line wraps)
72 *			Connect to window manager cut buffer
73 *			need to send IPO_EXTEND_SELECT( r1, c1, r2, c1 )
74 *			otherwise core and screen duplicate selection logic
75 *			Need to determine correct screen for event.  Not
76 *			needed until split is implemented.
77 *
78 *	arrow keys	need to define a protocol.  I can easily send
79 *			the vt100 sequences (and currently do).
80 *			In general, we need to define what special keys
81 *			do (for example PageUp) and what happens when we
82 *			are in Insert mode.
83 *
84 *			Suggestion: IPO_COMMAND( string ).  vi core can
85 *			take it as a command even when in insert mode.
86 *
87 *	icon		Is currently B&W.  To get a color icon, would
88 *			require a lot of work or that bostic pick up
89 *			the xpm library.
90 */
91