annotate runtime/doc/todo.txt @ 86:8173ec1e9f1f v7.0034

updated for version 7.0034
author vimboss
date Sat, 08 Jan 2005 16:11:57 +0000
parents d9030055c432
children 2b4debdc8d2c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
86
8173ec1e9f1f updated for version 7.0034
vimboss
parents: 83
diff changeset
1 *todo.txt* For Vim version 7.0aa. Last change: 2005 Jan 08
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 VIM REFERENCE MANUAL by Bram Moolenaar
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 TODO list for Vim *todo*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 This is a veeeery long list of known bugs, current work and desired
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 improvements. To make it a little bit accessible, the items are grouped by
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 subject. In the first column of the line a classification is used to be able
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 to look for "the next thing to do":
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 Priority classification:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 9 next point release
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 8 next release
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 7 as soon as possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 6 soon
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 5 should be included
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 4 nice to have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 3 consider including
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 2 maybe not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 1 probably not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 - unclassified
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 *votes-for-changes*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 See |develop.txt| for development plans. You can vote for which items should
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 be worked on, but only if you sponsor Vim development. See |sponsor|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 *known-bugs*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 -------------------- Known bugs and current work -----------------------
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32
86
8173ec1e9f1f updated for version 7.0034
vimboss
parents: 83
diff changeset
33 Add mouse patch from Marcin Dalecki.
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
34
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
35 Use 'ignorecase' for ":vimgrep"?
56
dbf53ece2e23 updated for version 7.0029
vimboss
parents: 51
diff changeset
36
80
d2796c60ca6f updated for version 7.0032
vimboss
parents: 76
diff changeset
37 When allocating a new variable, a search is done for an empty entry. May
d2796c60ca6f updated for version 7.0032
vimboss
parents: 76
diff changeset
38 waste a lot of time if there isn't one. Keep an index of available entry,
d2796c60ca6f updated for version 7.0032
vimboss
parents: 76
diff changeset
39 none available, or unknown.
d2796c60ca6f updated for version 7.0032
vimboss
parents: 76
diff changeset
40
51
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
41 patch for QuickFixCmdPre and QuickFixCmdPost autocommands. (Ciaran McCreesh,
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
42 2005 Jan 1)
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
43
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
44 New Motif toolbar button from Marcin Dalecki:
51
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
45 - add remark in version7.txt
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
46 - check if it works for pixmap loaded from a file.
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
47
43
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
48 Awaiting response:
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
49 - Patch for mch_FullName() also in Vim 6.3? os_mswin.c
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
50 - Win32: "gvim -V100" should use dialog with scrollbar. Using
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
51 gui_mch_dialog() would be good, but need to move display_errors() to after
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
52 creating the window, so that s_hwnd is valid.
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
53 How to add a scrollbar to the dialog?
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
54 - Win32: tearoff menu window should have a scrollbar when it's taller than
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
55 the screen.
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
56 - Included NetBeans patches (Gordon Prieur, Oct 20)
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
57 See two messages for list of changed files. Additionally:
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
58 doc/eval.txt
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
59 Docs for message E680.
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
60 Docs for ":nbkey".
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
61 Asked Gordon to send the differences again, some parts apparently are
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
62 missing.
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
63
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
64
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
65 PLANNED FOR VERSION 7.0:
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
66
39
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
67 - For string variables, use length instead of NUL termination?
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
68 + can include NUL characters
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
69 - setline() will have problems with NL vs NUL.
46
46d39f2eff86 updated for version 7.0027
vimboss
parents: 43
diff changeset
70 Can use list of numbers instead (inefficient though).
56
dbf53ece2e23 updated for version 7.0029
vimboss
parents: 51
diff changeset
71 Also: for strings up to 3 bytes don't allocate memory, VAR_STRINGX.
43
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
72 - new DATA TYPES:
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
73 - None? (or use empty string?)
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
74 - dictionary
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 Add type checking? See ~/vim/ideas.txt.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 - Add SPELLCHECKER, with easy to add support for many languages.
8
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
77 8 Add spell checking. Use "ispell -a" somehow.
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
78 ~/vim/patches/wm_vim-5_4d.zip can be used as an example (includes
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
79 ispell inside Vim). Gautam Iyer has an example with "aspell".
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
80 "engspchk" from Charles Campbell is a good way. Support for
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
81 approximate-regexps will help (agrep http://www.tgries.de/agrep/).
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
82 - Charles Campbell asks for method to add "contained" groups to
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
83 existing syntax items (to add @Spell). Add ":syntax contains
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
84 {pattern} add=@Spell" command? A bit like ":syn cluster" but change
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
85 the contains list directly for matching syntax items.
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
86 - Keep wordlist in syntax group, load it only once and use it several
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
87 times later. Sort of global syntax items.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
88 - Use wordlists from openoffice (myspell). Work together with them to
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
89 update the wordlist. (Adri Verhoef, Aad Nales)
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
90 - Patch from Marcin Dalecki. (2004 Dec) Uses ispell
46
46d39f2eff86 updated for version 7.0027
vimboss
parents: 43
diff changeset
91 implements "undercurl" attribute. But how to set its color?
46d39f2eff86 updated for version 7.0027
vimboss
parents: 43
diff changeset
92 Perhaps use "guicurl=Red" instead?
51
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
93 If underline and undercurl are both there use undercurl only.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 - REFACTORING: The main() function is very long. Move parts to separate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 functions, especially loops. Ideas from Walter Briscoe (2003 Apr 3, 2004
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 Feb 9).
8
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
97 - Improve the interface between the generic GUI code and the system-specific
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
98 code. Generic code handles text window with scrollbars, system-specific
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
99 code menu, toolbar, etc.
41
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
100 - Support using "**" in filename for ":next", ":vimgrep", etc., so that a
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
101 directory tree can be searched.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 - Store messages to allow SCROLLING BACK for all commands. And other "less"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 like commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 - "INTELLISENSE". First cleanup the Insert-mode completion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 http://www.vim.org/scripts/script.php?script_id=747
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 http://sourceforge.net/projects/insenvim
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
107 of http://insenvim.sourceforge.net
23
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
108 http://cedet.sourceforge.net/intellisense.shtml (for Emacs)
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
109 Ivan Villanueva has something for Java.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
110 Can't call it Intellisense, it is a trademark by Microsoft.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
111 Ideas from the Vim 7 BOF at SANE:
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
112 - It's not possible to have one solution for all languages. Design an
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
113 interface for completion plugins. The matches can be done in a
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
114 Vim-script list.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
115 - For interpreted languages, use the interpreter to obtain information.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
116 Should work for Java (Eclipse does this), Python, Tcl, etc.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
117 - Check Readline for its completion interface.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
118 - Use ctags for other languages. Writing a file could trigger running
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
119 ctags, merging the tags of the changed file.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
120 - UNDO TREE: keep all states of the text, don't delete undo info.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
121 When making a change, instead of clearing any future undo (thus redo)
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
122 info, make a new branch.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
123 To navigate through the undo tree number the states of the text
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
124 sequentially and make it possible to go through the tree in that order.
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
125 Use "g+++" to go forward, "g---" to go backward. Can mix - and +.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
126 Could also use timestamps (to show the time and/or jump to a state five
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
127 minutes ago). (David Schweikert)
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
128 To go from one state to another: backtrack to a common state, then forward
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
129 again.
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
130 Only difficult thing: When going back in time, how to find the previous
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
131 text state in the tree?
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
132 Show the list of changes in a window to be able to select a version?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 - PERSISTENT UNDO: store undo in a file.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
134 Use timestamps, so that a version a certain time ago can be found and info
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
135 before some time/date can be flushed. 'undopersist' gives maximum time to
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
136 keep undo: "3h", "1d", "2w", "1y", etc. For the file use dot and
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
137 extension: ".filename.un~" (like swapfile but "un~" instead of "swp").
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 7 Support WINDOW TABS. Works like several pages, each with their own
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
139 split windows. Patch for GTK 1.2 passed on by Christian Michon, 2004 Jan 6.
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
140 Also for the console!
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
141 In Emacs these are called frames. Could also call them "pages".
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
142 Use "1gt" - "99gt" to switch to a tab?
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
143 Simple patch for GTK by Luis M (nov 7).
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 - EMBEDDING: Make it possible to run Vim inside a window of another program.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 For Xwindows this can be done with XReparentWindow().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 For GTK Neil Bird has a patch to use Vim like a widget.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 - Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd". Block
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 can be selected with CTRL-V. Allow '$' (end of line) for col2.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 - Add DEBUGGER INTERFACE. Implementation for gdb by Xavier de Gaye,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 assisted by Mikolaj Machowski. Should work like an IDE. Try to keep it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 generic. Also found here: http://skawina.eu.org/mikolaj/vimgdb
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 To be able to start the debugger from inside Vim: For GUI run a program
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 with a netbeans connection; for console: start a program that splits the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 terminal, runs the debugger in one window and reconnect Vim I/O to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 other window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 Wishes for NetBeans commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 - make it possible to have 'defineAnnoType' also handle terminal colors.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 - send 'balloonText' events for the cursor position (using CursorHold ?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 in terminal mode.
39
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
160 - ECLIPSE plugin. Problem is: the interface is very complicated. Need to
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
161 implement part in Java and then connect to Vim. Some hints from Alexandru
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
162 Roman, 2004 Dec 15. Should then also work with Oracle Jdeveloper, see JSR
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
163 198 standard http://www.jcp.org/en/jsr/detail?id=198.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 - STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 Especially when using the scrollbar. Typing a cursor-movement command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 scrolls back to where the cursor is.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
167 - Execute a function with standard option values. No need to save and
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
168 restore option values. Especially useful for new options. Problem: how
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
169 to avoid a performance penalty (esp. for string options)?
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
170 8 Support four composing/combining characters, needed for Hebrew. (Ron Aaron)
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
171 Add the 'maxcombining' option to set the nr. of composing characters.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
172 At the same time support more colors (use two bytes when necessary).
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
173 - Add a few more things to 'diffopt': "horizontal", "vertical",
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
174 "foldcolumn". (Benji Fisher, 2004 Jun 21)
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
175 - FileChangedShellPost autocommand event: after (not) reloading a changed
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
176 file. Can be used to update statusline oslt.
41
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
177 - VimResized autocmd event: When the Vim window has been resized (SIGWINCH)
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
178 patch from Yakov Lerner, 2003 July 24.
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
179 It's not clear that this doesn't cause problems when the executed
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
180 commands do something like changing 'lines'. Esp. because the
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
181 screen has not yet been allocated with the new size.
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
182 - Running a shell command from the GUI still has limitations. Look into how
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
183 the Vim shell project can help: http://vimshell.wana.at
16
3ba373b54370 updated for version 7.0008
vimboss
parents: 15
diff changeset
184 8 When a file is change outside of Vim and unmodified in Vim there is no
3ba373b54370 updated for version 7.0008
vimboss
parents: 15
diff changeset
185 simple way to automatically reload the file. Either add an option for
3ba373b54370 updated for version 7.0008
vimboss
parents: 15
diff changeset
186 this or make it simple to have the FileChangedShell invoke the normal
3ba373b54370 updated for version 7.0008
vimboss
parents: 15
diff changeset
187 action, telling it what to do.
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
188 - Displaying size of Visual area: use 24-33 column display.
11
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
189 - Mac: Unicode input and display (Eckehard Berns, June 27)
12
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
190 8 Add patch from Muraoka Taro (Mar 16) to support input method on Mac?
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
191 New patch 2004 Jun 16
13
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
192 9 Add cursor-column highlighting. Enable it with 'cursorcolumn' option,
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
193 set highlighting with "CursorColumn" group. Useful for aligning text.
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
194 Also cursor-row highlighting. Patch from Yasuhiro Matsumoto for
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
195 underlining the cursor line: 2004 Jun 17. Should use highlight group
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
196 instead.
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
197 Alternative: when 'number' is set highlight the number of the current
24d5189d3956 updated for version 7.0005
vimboss
parents: 12
diff changeset
198 line.
14
946da5994c01 updated for version 7.0006
vimboss
parents: 13
diff changeset
199 7 Make ":startinsert" command work directly for functions and scripts?
946da5994c01 updated for version 7.0006
vimboss
parents: 13
diff changeset
200 Also make it possible to append (it's difficult at end of line).
17
9be87deaeb52 updated for version 7.0009
vimboss
parents: 16
diff changeset
201 - When using 'incsearch" CTRL-R CTRL-W gets the word under the cursor, but
9be87deaeb52 updated for version 7.0009
vimboss
parents: 16
diff changeset
202 the part that already matched is doubled then. Remove the part of the
9be87deaeb52 updated for version 7.0009
vimboss
parents: 16
diff changeset
203 word that would be doubled. Make it work line CTRL-N in Insert mode.
18
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
204 - Add Lua interface? (Wolfgang Oertl)
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
205 - "onemore" flag in 'virtualedit': move cursor past end of line. Patch by
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
206 Mattias Flodin (2004 Jul 30)
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
207 - In a :s command multi-byte characters should also be upper/lower cased
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
208 with \u, \U, etc.
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
209
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
210 Support ":set syntax=cpp.doxygen"? Suggested patch by Michael Geddes (9 Aug
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
211 2004). Should also work for 'filetype'.
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
212
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
213 For manipulating buffers without opening a new window, support Virtual
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
214 windows. Example:
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
215 :virtwin let l = GetBufLine(4, 10)
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
216 :fun GetBufLine(bufnr, lnum)
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
217 : exe "buffer " . a:bufnr
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
218 : return getline(lnum)
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
219 :endfun
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
220 The getline() and setline() functions could work for other buffers, using a
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
221 Virtual window.
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
222 A Virtual window only exists for one command. There can be several (for
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
223 nested commands). The window works as if it comes after the last window, size
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
224 is the Vim window size, but it's never displayed.
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
225
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
226 Win32: In the generated batch files, use $VIMRUNTIME if it's set. Examples by
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
227 Mathias Michaelis (2004 Sep 6)
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
228 Also place vimtutor.bat in %windir%?
18
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
229
29
ac33b7c03fac updated for version 7.0018
vimboss
parents: 26
diff changeset
230 Add gui_mch_browsedir() for Motif, KDE and Mac OS/X.
ac33b7c03fac updated for version 7.0018
vimboss
parents: 26
diff changeset
231
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
232 HTML indenting can be slow, find out why. Any way to do some kind of
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
233 profiling for Vim script?
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
234
83
d9030055c432 updated for version 7.0033
vimboss
parents: 80
diff changeset
235 List data type performance:
d9030055c432 updated for version 7.0033
vimboss
parents: 80
diff changeset
236 - Cache the length of a List?
d9030055c432 updated for version 7.0033
vimboss
parents: 80
diff changeset
237 - Use blocks of items, so that finding an item by index is faster?
d9030055c432 updated for version 7.0033
vimboss
parents: 80
diff changeset
238
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
239 Awaiting updated patches:
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
240 --- awaiting updated patch ---
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
241 7 Add patch from Wall for this one ( ~/Mail/oldmail/wall/in.00019 ):
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
242 'flipcase' variable: upper/lowercase pairs.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
243 Insert comma's between pairs and allow a range, make it look like
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
244 'isfname'. E.g. ":set flipcase=a-zA-Z,xX,23-33:143-153". The colon to
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
245 separate the from and to part is optional.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
246 Resp: no time now.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
247 8 Add GTK 2.3 file dialog support. Patch by Grahame Bowland, 2004 Mar
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
248 15, but it doesn't use "initdir" or "dflt". (will update patch)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
249 8 Add ":n" to fnamemodify(): normalize path, remove "../" when possible.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
250 Aric Blumer has a patch for this.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
251 He will update the patch for 6.3.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
252 Autocommands:
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
253 7 Completion of network shares, patch by Yasuhiro Matsumoto.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
254 Update 2004 Sep 6.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
255 How does this work? Missing comments.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
256 gettext() Translate a message. (Patch from Yasuhiro Matsumoto)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
257 Update 2004 Sep 10
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
258 More docs. Search in 'runtimepath'?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
259 How to get the messages into the .po files?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
260 --- did not respond (yet) --
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
261 - Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
262 Smilauer, 2004 Sep 13, fix Oct 31)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
263 Asked for improvements 2004 Dec 20.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
264 7 Make "5dd" on last-but-one-line not delete anything (Vi compatible).
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
265 Add flag in 'cpoptions' for this. When not present, "2dd" in the last
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
266 line should delete the last line. Patch from greenx 2002 Apr 11.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
267 8 Add a few more command names to the menus. Patch from Jiri Brezina
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
268 (28 feb 2002).
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
269 7 ATTENTION dialog choices are more logical when "Delete it' appears
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
270 before "Quit". Patch by Robert Webb, 2004 May 3.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
271 - Include flipcase patch: ~/vim/patches/wall.flipcase2 ? Make it work
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
272 for multi-byte characters.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
273 - Win32: add options to print dialog. Patch from Vipin Aravind.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
274 - Patch to add highlighting for whitespace. (Tom Schumm, 2003 Jul 5)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
275 use the patch that keeps using HLF_8 if HLF_WS has not
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
276 been given values.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
277 Add section in help files for these highlight groups?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
278 8 "fg" and "bg" don't work in an xterm. Get default colors from xterm
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
279 with an ESC sequence. Ideas in: ~/vim/patches/vikas.xtermcolors .
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
280 7 Add "DefaultFG" and "DefaultBG" for the colors of the menu. (Marcin
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
281 Dalecki has a patch for Motif)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
282 - Add possibility to highlight specific columns (for Fortran). Or put a
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
283 line in between columns (e.g. for 'textwidth').
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
284 Patch to add 'hlcolumn' from Vit Stradal, 2004 May 20.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
285 8 Add functions:
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
286 confirm() add "flags" argument, with 'v' for vertical
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
287 layout and 'c' for console dialog. (Haegg)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
288 Flemming Madsen has a patch for the 'c' flag
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
289 (2003 May 13)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
290 system({cmd}, {expr}) Filter {expr} through the shell command
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
291 {cmd} and return the result.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
292 (Patch from Yegappan Lakshmanan)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
293 raisewin() raise gvim window (see HierAssist patch for
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
294 Tcl implementation ~/vim/HierAssist/ )
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
295 7 Add patch from Benoit Cerrina to integrate Vim and Perl functions
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
296 better. Now also works for Ruby (2001 Nov 10)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
297 - Patch from Herculano de Lima Einloft Neto for better formatting of the
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
298 quickfix window (2004 dec 2)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
299 7 When 'rightleft' is set, the search pattern should be displayed right
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
300 to left as well? See patch of Dec 26. (Nadim Shaikli)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
301 8 Lock all used memory so that it doesn't get swapped to disk (uncrypted).
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
302 Patch by Jason Holt, 2003 May 23.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
303 7 Support a stronger encryption. Jason Holt implemented AES (May 6 2003).
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
304 7 Add ! register, for shell commands. (patch from Grenie)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
305 8 In the gzip plugin, also recognize *.gz.orig, *.gz.bak, etc. Like it's
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
306 done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
307 7 Add a "-@ filelist" argument: read file names from a file. (David
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
308 Kotchan has a patch for it)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
309 8 Add term entries for function keys on xterm with alt and ctrl (new in
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
310 pl 94). E.g., Control adds ";5" in "<Esc>[20;5~". Find a generic way
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
311 to prepend a modifier in console mode, to avoid having to specify each
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
312 individual modified key.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
313 Steve Wall has a patch (2002 Mar 12) for adding function keys up to 37,
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
314 with modifiers.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
315 8 Include a connection to an external program through a pipe? See
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
316 patches from Felbinger for a mathematica interface.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
317 Or use emacs server kind of thing?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
318 7 Add ":justify" command. Patch from Vit Stradal 2002 Nov 25.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
319 - findmatch() should be adjusted for Lisp. See remark at
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
320 get_lisp_indent(). Esp. \( and \) should be skipped. (Dorai Sitaram,
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
321 incomplete patch Mar 18)
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
322 - Set user variables to the names of the actually used user vimrc file,
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
323 the first directory looked for user plugins/syntax files.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
324 $MYVIMRC for .vimrc, $MYGVIMRC for .gvimrc, $MYRUNTIME/plugin for
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
325 runtime files?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
326 Also: when the environment variable exists, use it. If it doesn't
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
327 exist, set it. Requires good names: $VIM_USER_VIMRC $VIM_USER_DIR
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
328 - The Replace dialog takes "\r" literal, unless "replace all" is used.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
329 Need to escape backslashes.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
330 Win32: the text to replace with isn't remembered.
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
331 - For GUI Find/Replace dialog support using a regexp. Patch for Motif
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
332 and GTK by degreneir (nov 10 and nov 18).
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
333
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
334 Check if file explorer can handle directory names and links with a single
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
335 quote. (Nieko Maatjes, 2005 Jan 4)
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
336
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
337
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
338 Vi incompatibility:
23
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
339 9 In Ex mode, "u" undoes all changes, not just the last one. (John Cowan)
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
340 8 In Ex mode, an empty file doesn't have a first line, "1p" should fail.
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
341 8 In Ex mode, "1,3" should print three lines.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
342 8 With undo/redo only marks in the changed lines should be changed. Other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
343 marks should be kept. Vi keeps each mark at the same text, even when it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
344 is deleted or restored. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
345 Also: A mark is lost after: make change, undo, redo and undo.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
346 Example: "{d''" then "u" then "d''": deletes an extra line, because the ''
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
347 position is one line down. (Veselinovic)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
348 8 ":change" in a single-line file adds an empty line. When the file used to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
349 be longer a "~" line is displayed, but there really is an empty line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
350 (Haakon Riiser, 2003 Dec 3 and Dec 16)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
351 8 ":append" and ":insert" in an empty file add an extra empty line. (Haakon
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
352 Riiser, 2003 Dec 3) Test for ML_EMPTY.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
353 8 When stdin is not a tty, and Vim reads commands from it, an error should
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
354 make Vim exit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
355 7 Unix Vim (not gvim): Typing CTRL-C in Ex mode should finish the line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
356 (currently you can continue typing, but it's truncated later anyway).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
357 Requires a way to make CTRL-C interrupt select() when in cooked input.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
358 8 When loading a file in the .exrc, Vi loads the argument anyway. Vim skips
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
359 loading the argument if there is a file already. When no file argument
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
360 given, Vi starts with an empty buffer, Vim keeps the loaded file. (Bearded)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
361 6 In Insert mode, when using <BS> or <Del>, don't wipe out the text, but
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
362 only move back the cursor. Behaves like '$' in 'cpoptions'. Use a flag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
363 in 'cpoptions' to switch this on/off.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
364 8 When editing a file which is a symbolic link, and then opening another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
365 symbolic link on the same file, Vim uses the name of the first one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
366 Adjust the file name in the buffer to the last one used? Use several file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
367 names in one buffer???
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
368 Also: When first editing file "test", which is symlink to "test2", and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
369 then editing "test2", you end up editing buffer "test" again. It's not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
370 logical that the name that was first used sticks with the buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
371 7 The ":undo" command works differently in Ex mode. Edit a file, make some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
372 changes, "Q", "undo" and _all_ changes are undone, like the ":visual"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
373 command was one command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
374 7 The ":map" command output overwrites the command. Perhaps it should keep
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
375 the ":map" when it's used without arguments?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
376 7 CTRL-L is not the end of a section? It is for Posix! Make it an option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
377 7 Implement 'prompt' option. Init to off when stdin is not a tty.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
378 7 CTRL-T in Insert mode inserts 'shiftwidth' of spaces at the cursor. Add a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
379 flag in 'cpoptions' for this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
380 7 Add a way to send an email for a crashed edit session. Create a file when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
381 making changes (containing name of the swap file), delete it when writing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
382 the file. Supply a program that can check for crashed sessions (either
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
383 all, for a system startup, or for one user, for in a .login file).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
384 7 Vi doesn't do autoindenting when input is not from a tty (in Ex mode).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
385 7 "z3<CR>" should still use the whole window, but only redisplay 3 lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
386 7 ":tag xx" should move the cursor to the first non-blank. Or should it go
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
387 to the match with the tag? Option?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
388 7 Implement 'autoprint'/'ap' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
389 7 Add flag in 'cpoptions' that makes <BS> after a count work like <Del>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
390 (Sayre).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
391 7 Add flag in 'cpoptions' that makes operator (yank, filter) not move the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
392 cursor, at least when cancelled. (default Vi compatible).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
393 7 This Vi-trick doesn't work: "Q" to go to Ex mode, then "g/pattern/visual".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
394 In Vi you can edit in visual mode, and when doing "Q" you jump to the next
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
395 match. Nvi can do it too.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
396 7 Support '\' for line continuation in Ex mode for these commands: (Luebking)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
397 g/./a\ g/pattern1/ s/pattern2/rep1\\
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
398 line 1\ line 2\\
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
399 line 2\ line 3\\
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
400 . line4/
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
401 6 ":e /tmp/$tty" doesn't work. ":e $uid" does. Is $tty not set because of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
402 the way the shell is started?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
403 6 Vi compatibility (optional): make "ia<CR><ESC>10." do the same strange
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
404 thing. (only repeat insert for the first line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
405
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
406
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
407 GTK+ 1 (OK in GTK 2):
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
408 8 When menus are disabled, 'm' removed from 'guioptions', Alt-F still pops
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
409 up the File menu. Cannot reproduce this: gives a warning for a NULL
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
410 pointer if the menu was never displayed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
411 8 When using "gvim -geom 40x30" or setting 'columns' in .gvimrc or with a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
412 GUIEnter autocommand, the width is still set to fit the toolbar. Also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
413 happens when changing the font. How to avoid that the toolbar specifies
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
414 the minimal window width?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
415 8 When using a theme with different scrollbars (gtkstep), the scrollbars can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
416 be too narrow. (Drazen Kacar)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
417 8 Font "7x14" has a bold version "7x14bold". Try to find the bold font by
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
418 appending "bold" when there are not 14 dashes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
419
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
420 GTK+ GUI known bugs:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
421 8 GTK 2: Combining UTF-8 characters not displayed properly in menus (Mikolaj
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
422 Machowski) They are displayed as separate characters. Problem in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
423 creating a label?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
424 9 Can't paste a Visual selection from GTK-gvim to vim in xterm or Motif gvim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
425 when it is longer than 4000 characters. Works OK from gvim to gvim and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
426 vim to vim. Pasting through xterm (using the shift key) also works.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
427 It starts working after GTK gvim loses the selection and gains it again.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
428 7 DND doesn't work with KDE (also with GTK 1).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
429
12
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
430 KDE GUI known bugs:
43
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
431 - There is no active maintenance and "yzis" is supposed to replace it.
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
432 - With the default 'guifont' value bold text differs in size from normal
f55897d6921d updated for version 7.0026
vimboss
parents: 41
diff changeset
433 text, causing the display to be messed up.
12
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
434 - Error messages when starting up. The "tip of the day" box is empty.
bdeee1504ac1 updated for version 7.0004
vimboss
parents: 11
diff changeset
435 - Encoding of menu items needs to be converted. (Yasuhiro Matsumoto)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
436
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
437 Win32 GUI known bugs:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
438 8 On Windows 98 the unicows library is needed to support functions with UCS2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
439 file names. Can we load unicows.dll dynamically?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
440 8 The -P argument doesn't work very well with many MDI applications.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
441 The last argument of CreateWindowEx() should be used, see MSDN docs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
442 Tutorial: http://win32assembly.online.fr/tut32.html
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
443 8 In eval.c, io.h is included when MSWIN32 is defined. Shouldn't this be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
444 WIN32? Or can including io.h be moved to vim.h? (Dan Sharp)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
445 7 Windows XP: When using "ClearType" for text smoothing, a column of yellow
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
446 pixels remains when typing spaces in front of a "D" ('guifont' set to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
447 "lucida_console:h8").
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
448 6 Win32 GUI: With "-u NONE -U NONE" and doing "CTRL-W v" "CTRL-W o", the ":"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
449 of ":only" is highlighted like the cursor. (Lipelis)
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
450 8 When 'encoding' is "utf-8", should use 'guifont' for both normal and wide
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
451 characters to make Asian languages work. Win32 fonts contain both
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
452 type of characters.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
453 7 When font smoothing is enabled, redrawing can become very slow. The reason
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
454 appears to be drawing with a transparent background. Would it be possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
455 to use an opaque background in most places?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
456 8 Use another default for 'termencoding': the active codepage. Means that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
457 when 'encoding' is changed typing characters still works properly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
458 Alternative: use the Unicode functions to obtain typed characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
459 8 Win32: Multi-byte characters are not displayed, even though the same font
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
460 in Notepad can display them. (Srinath Avadhanula) Try with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
461 UTF-8-demo.txt page with Andale Mono.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
462 7 The cursor color indicating IME mode doesn't work properly. (Shizhu Pan,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
463 2004 May 9)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
464 8 Win32: When clicking on the gvim title bar, which gives it focus, produces
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
465 a file-changed dialog, after clicking on a button in that dialog the gvim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
466 window follows the mouse. The button-up event is lost. Only with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
467 MS-Windows 98?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
468 Try this: ":set sw ts", get enter-prompt, then change the file in a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
469 console, go back to Vim and click "reload" in the dialog for the changed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
470 file: Window moves with the cursor!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
471 Put focus event in input buffer and let generic Vim code handle it?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
472 8 When activating the Vim window with mouse click, don't move cursor to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
473 mouse position. Catch WM_MOUSEACTIVATE. (Luevelsmeyer)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
474 8 Win32: When mouse is hidden and in the toolbar, moving it won't make it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
475 appear. (Sami Salonen)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
476 8 Windows NT: writing to aux.* makes Vim hang. (Acevedo)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
477 8 Win32 GUI: With maximized window, ":set go-=r" doesn't use the space that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
478 comes available. (Poucet) It works OK on Win 98 but doesn't work on Win
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
479 NT 4.0. Leaves a grey area where the scrollbar was. ":set go+=r" also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
480 doesn't work properly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
481 8 When Vim is minimized and when maximizing it a file-changed dialog pops
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
482 up, Vim isn't maximized. It should be done before the dialog, so that it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
483 appears in the right position. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
484 9 When selecting at the more-prompt or hit-enter-prompt, the right mouse
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
485 button doesn't give popup menu.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
486 At the hit-enter prompt CTRL-Y doesn't work to copy the modeless
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
487 selection.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
488 On the command line, don't get a popup menu for the right mouse button.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
489 Let the middle button paste selected text (not the clipboard but the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
490 non-Visual selection)? Otherwise CTRL-Y has to be used to copy the text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
491 8 When 'grepprg' doesn't execute, the error only flashes by, the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
492 user can hardly see what is wrong. (Moore)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
493 Could use vimrun with an "-nowait" argument to only wait when an error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
494 occurs, but "command.com" doesn't return an error code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
495 8 When the 'shell' cannot be executed, should give an appropriate error msg.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
496 Esp. for a filter command, currently it only complains the file could not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
497 be read.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
498 8 MessageBox used for error messages can be too big. There is no way to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
499 scroll it, or even hit the OK button (but you can hit return).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
500 Use a scrollable window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
501 7 Add an option to add one pixel column to the character width? Lucida
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
502 Console italic is wider than the normal font ("d" overlaps with next char).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
503 Opposite of 'linespace': 'columnspace'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
504 7 At the hit-enter prompt scrolling now no longer works. Need to use the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
505 keyboard to get around this. Pretend <CR> was hit when the user tries to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
506 scroll? Need to be able to get out of hit-enter prompt with the mouse
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
507 anyway.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
508 7 Scrollbar width doesn't change when selecting other windows appearance.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
509 Also background color of Toolbar and rectangle below vert. scrollbar.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
510 7 "!start /min cmd" should run in a minimized window, instead of using
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
511 "/min" as the command name. (Rogall)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
512 6 Drawing text transparently doesn't seem to work (when drawing part cursor).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
513 8 CTRL key doesn't always work in combination with ALT key. It does work
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
514 for function keys, not for alphabetic characters. Perhaps this is because
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
515 CTRL-ALT is used by Windows as AltGr?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
516 8 CTRL-- doesn't work for AZERTY, because it's CTRL-[ for QWERTY. How do we
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
517 know which keyboard is being used?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
518 7 When scrolling, and a background color is dithered, the dither pattern
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
519 doesn't always join correctly between the scrolled area and the new drawn
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
520 area (Koloseike).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
521 8 When gui_init_font() is called with "*", p_guifont is freed while it might
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
522 still be used somewhere. This is too tricky, do the font selection first,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
523 then set the new font by name (requires putting all logfont parameters in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
524 the font name).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
525
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
526
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
527 Athena and Motif:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
528 9 Can configure be changed to disable netbeans if the Xpm library is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
529 required and it's missing?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
530 8 When using the resource "Vim*borderwidth 2" the widgets are positioned
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
531 wrong.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
532 9 XIM is disabled by default for SGI/IRIX. Fix XIM so that 'imdisable' can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
533 be off by default.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
534 9 XIM doesn't work properly for Athena/Motif. (Yasuhiro Matsumoto) For now,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
535 keep XIM active at all times when the input method has the preediting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
536 flag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
537 8 X11: A menu that contains an umlaut is truncated at that character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
538 Happens when the locale is "C", which uses ASCII instead of IS0-8859-1.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
539 Is there a way to use latin1 by default? Gnome_init() seems to do this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
540 8 Perhaps use fontsets for everything?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
541 6 When starting in English and switching the language to Japanese, setting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
542 the locale with ":lang", 'guifontset' and "hi menu font=", deleting all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
543 menus and setting them again, the menus don't use the new font. Most of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
544 the tooltips work though...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
545 7 Motif: when using a file selection dialog, the specified file name is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
546 always used (when specifying a filter or another directory).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
547 8 When 'encoding' is different from the current locale (e.g., utf-8) the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
548 menu strings don't work. Requires conversion from 'encoding' to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
549 current locale. Workaround: set 'langmenu'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
550
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
551
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
552 Athena GUI:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
553 9 When dragging the scrollbar thumb very fast, focus is only obtained in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
554 the scrollbar itself. And the thumb is no longer updated when moving
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
555 through files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
556 7 The file selector is not resizable. With a big font it is difficult to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
557 read long file names. (Schroeder)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
558 4 Re-write the widget attachments and code so that we will not have to go
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
559 through and calculate the absolute position of every widget every time the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
560 window is refreshed/changes size. This will help the "flashing-widgets"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
561 problem during a refresh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
562 5 When starting gvim with all the default colors and then typing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
563 ":hi Menu guibg=cyan", the menus change color but the background of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
564 pullright pixmap doesn't change colors.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
565 If you type ":hi Menu guibg=cyan font=anyfont", then the pixmap changes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
566 colors as it should.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
567 Allocating a new pixmap and setting the resource doesn't change the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
568 pullright pixmap's colors. Why? Possible Athena bug?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
569
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
570
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
571 Motif GUI:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
572 8 Popup menu ordering is wrong.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
573 7 Use XmStringCreateLocalized() instead of XmStringCreateSimple()?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
574 David Harrison says it's OK (it exists in Motif 1.2).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
575 8 The texts in the find/replace dialog don't use the right font.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
576 8 Lesstif: When deleting a menu that's torn off, the torn off menu becomes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
577 very small instead of disappearing. When closing it, Vim crashes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
578 (Phillipps)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
579
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
580
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
581 GUI:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
582 9 On Solaris, creating the popup menu causes the right mouse button no
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
583 longer to work for extending the selection. (Halevy)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
584 9 When running an external program, it can't always be killed with CTRL-C.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
585 e.g. on Solaris 5.5, when using "K" (Keech). Other 'guipty' problems on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
586 Solaris 2.6. (Marley)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
587 9 On Solaris: Using a "-geometry" argument, bigger than the window where Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
588 is started from, causes empty lines below the cmdline. (raf)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
589 8 X11 GUI: When menu is disabled by excluding 'm' from 'guioptions', ALT key
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
590 should not be used to trigger a menu (like the Win32 version).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
591 8 When setting 'langmenu', it should be effective immediately. Store both
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
592 the English and the translated text in the menu structure. Re-generate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
593 the translation when 'langmenu' has changed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
594 8 Basic flaw in the GUI code: NextScreen is updated before calling
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
595 gui_write(), but the GUI code relies on NextScreen to represent the state
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
596 of where it is processing the output.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
597 Need better separation of Vim core and GUI code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
598 8 When fontset support is enabled, setting 'guifont' to a single font
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
599 doesn't work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
600 8 Menu priority for sub-menus for: Amiga, BeOS.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
601 8 Add menu separators for Amiga, RISCOS.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
602 8 Add way to specify the file filter for the browse dialog. At least for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
603 browse().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
604 8 Add dialog for search/replace to other GUIs? Tk has something for this,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
605 use that code? Or use console dialog.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
606 8 When selecting a font with the font dialog and the font is invalid, the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
607 error message disappears too quick.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
608 8 gui_check_colors() is not called at the right moment. Do it much later,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
609 to avoid problems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
610 8 gui_update_cursor() is called for a cursor shape change, even when there
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
611 are mappings to be processed. Only do something when going to wait for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
612 input. Or maybe every 100 ms?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
613 8 X11: When the window size is reduced to fit on screen, there are blank
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
614 lines below the text and bottom scrollbar. "gvim -geometry 80x78+0+0".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
615 When the "+0+0" is omitted it works.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
616 8 When starting an external command, and 'guipty' set, BS and DEL are mixed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
617 up. Set erase character somehow?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
618 8 A dead circumflex followed by a space should give the '^' character
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
619 (Rommel). Look how xterm does this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
620 Also: Bednar has some code for dead key handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
621 Also: Nedit 5.0.2 with USE_XMIM does it right. (Gaya)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
622 8 The compose key doesn't work properly (Cepas). Both for Win32 and X11.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
623 7 The cursor in an inactive window should be hollow. Currently it's not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
624 visible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
625 7 GUI on Solaris 2.5.1, using /usr/dt/..: When gvim starts, cursor is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
626 hollow, after window lowered/raised it's OK. (Godfrey)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
627 7 When starting GUI with ":gui", and window is made smaller because it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
628 doesn't fit on the screen, there is an extra redraw.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
629 8 When setting font with .Xdefaults, there is an extra empty line at the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
630 bottom, which disappears when using ":set guifont=<Tab>". (Chadzelek)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
631 8 When font shape changes, but not the size, doing ":set font=" does not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
632 redraw the screen with the new font. Also for Win32.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
633 When the size changes, on Solaris 2.5 there isn't a redraw for the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
634 remaining part of the window (Phillipps).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
635 - Flashes really badly in certain cases when running remotely from a Sun.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
636 4 Re-write the code so that the highlighting isn't changed multiple times
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
637 when doing a ":hi clear". The color changes happen three or more times
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
638 currently. This is very obvious on a 66Mhz 486.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
639
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
640
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
641 MSDOS/DJGPP:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
642 9 Pressing CTRL-C often crashes the console Vim runs in. (Ken Liao)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
643 When 'bioskey' isn't set it doesn't happen. Could be a problem with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
644 BIOS emulation of the console. Version 5.6 already had this problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
645 8 DJGPP: "cd c:" can take us to a directory that no longer exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
646 change_drive() doesn't check this. How to check for this error?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
647 9 The 16 bit version runs out of memory very quickly. Should find unused
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
648 code and reduce static data.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
649 9 Crash when running on Windows 98 in a console window and pressing CTRL-C.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
650 Happens now and then. When debugging Vim in gdb this also happens. Since
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
651 the console crashes, might be a bug in the DOS console. Resetting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
652 'bioskey' avoids it, but then CTRL-C doesn't work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
653 9 DOS: Make CTRL-Fx and ALT-Fx work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
654 CTRL-F1 = CE-5E, CTRL-F2 = CE-5F, .., CTRL-F10 = CE-67
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
655 ALT-F1 = CE-68, ALT-F2 = CE-69, .., ALT-F10 = CE-71
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
656 Shifted cursor keys produce same codes as unshifted keys. Use bioskey(2)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
657 to get modifier mask for <S-C-M-Fx>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
658 Use K_SPECIAL/KS_MODIFIER codes to insert modifier mask in input stream?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
659 Make this work like in Win32 console.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
660 Mapping things like <M-A> doesn't work, because it generates an extended
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
661 key code. Use a translation table?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
662 9 Can't read an opened swap file when the "share" command has not been used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
663 At least ignore the swap files that Vim has opened itself.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
664 8 Use DJGPP 2.03.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
665 8 The Dos32 version (DJGPP) can't use long file names on Windows NT.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
666 Check if new package can be used (v2misc/ntlfn08[bs].zip).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
667 8 setlocale() is bogus.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
668 8 Vim busy waits for new characters or mouse clicks. Should put in some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
669 sort of sleep, to avoid eating 50% of the CPU time. Test on an unpatched
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
670 Windows 95 system!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
671 8 DJGPP: when shell is bash, make fails. (Donahoe)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
672 7 Hitting CTRL-P twice quickly (e.g. in keyword completion) on a 8088
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
673 machine, starts printer echo! (John Mullin).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
674 7 MSDOS 16 bit version can't work with COMSPEC that has an argument, e.g.:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
675 COMSPEC=C:\WINDOWS\COMMAND.COM /E:4096 (Bradley)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
676 Caused by BCC system() function (Borland "make" has the same problem).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
677 8 Mouse: handle left&right button pressed as middle button pressed. Add
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
678 modifier keys shift, ctrl and alt.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
679 7 When too many files are open (depends on FILES), strange things happen.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
680 The Dos16 version runs out of memory, in the Dos32 version "!ls" causes a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
681 crash. Another symptom: .swp files are not deleted, existing files are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
682 "[New file]".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
683 7 DJGPP version doesn't work with graphics display mode. Switch to a mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
684 that is supported?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
685 8 DJGPP: ":mode" doesn't work for many modes. Disable them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
686 8 DJGPP: When starting in Ex mode, shouldn't clear the screen. (Walter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
687 Briscoe)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
688
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
689
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
690 MSDOS, OS/2 and Win32:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
691 8 OS/2: Add backtick expansion. Undefine NO_EXPANDPATH and use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
692 gen_expand_wildcards().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
693 8 OS/2: Add clipboard support? See example clipbrd.exe from Alexander
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
694 Wagner.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
695 8 OS/2: Add Extended Attributes support and define HAVE_ACL.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
696 8 OS/2: When editing a file name "foo.txt" that is actually called FOO.txt,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
697 writing uses "foo.txt". Should obtain the real file name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
698 8 Should $USERPROFILE be used instead of $HOMEDRIVE/$HOMEPATH?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
699 8 Win32 console: <M-Up> and <M-Down> don't work. (Geddes) We don't have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
700 special keys for these. Should use modifier + key.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
701 8 Win32 console: caps-lock makes non-alpha keys work like with shift.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
702 Should work like in the GUI version.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
703 8 Environment variables in DOS are not case sensitive. Make a define for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
704 STRCMP_ENV(), and use it when comparing environment var names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
705 8 Setting 'shellslash' has no immediate effect. Change all file names when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
706 it is set/reset? Or only use it when actually executing a shell command?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
707 8 When editing a file on a Samba server, case might matter. ":e file"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
708 followed by ":e FILE" will edit "file" again, even though "FILE" might be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
709 another one. Set last used name in buflist_new()? Fix do_ecmd(), etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
710 8 ":mksession" generates a "cd" command where "aa\#bb" means directory "#bb"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
711 in "aa", but it's used as "aa#bb". (Ronald Hoellwarth)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
712 8 When a buffer is editing a file like "ftp://mach/file", which is not going
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
713 to be used like a normal file name, don't change the slashes to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
714 backslashes. (Ronald Hoellwarth)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
715
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
716
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
717 Windows 95:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
718 8 Editing a file by it's short file name and writing it, makes the long file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
719 name disappear. Setting 'backupcopy' helps.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
720 Use FindFirstFile()->cAlternateFileName in fname_case() (George Reilly).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
721 8 Doing wildcard expansion, will match the short filename, but result in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
722 long filename (both DJGPP and Win32).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
723
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
724
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
725 Win32 console:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
726 9 When editing a file by its short file name, it should be expanded into its
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
727 long file name, to avoid problems like these: (Mccollister)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
728 1) Create a file called ".bashrc" using some other editor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
729 2) Drag that file onto a shortcut or the actual executable.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
730 3) Note that the file name is something like BASHRC~1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
731 4) Go to File->Save As menu item and type ".bashrc" as the file name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
732 5) Press "Yes" to indicate that I want to overwrite the file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
733 6) Note that the message "File exists (add ! to override)" is displayed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
734 and the file is not saved.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
735 Use FindFirstFile() to expand a file name and directory in the path to its
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
736 long name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
737 8 Also implement 'conskey' option for the Win32 console version? Look at
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
738 how Xvi does console I/O under Windows NT.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
739 7 Re-install the use of $TERM and support the use of different terminals,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
740 besides the console.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
741 8 Use of <altgr> modifier doesn't work? 5.3 was OK. (Garcia-Suarez/Guckes)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
742 9 Mapping <C-S-Tab> doesn't work correctly. How to see the difference with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
743 <C-S-i>?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
744 9 tmpnam() uses file in root of file system: "\asdf". That doesn't work on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
745 a Netware network drive. Use same function as for Win32 GUI?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
746 8 In os_win32.h, HAVE_STRICMP and HAVE_STRNICMP are defined only if __GNUC__
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
747 is not defined. Shouldn't that be the other way around?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
748 7 Use SetConsoleCP() and SetConsoleOutputCP() to implement 'termencoding'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
749 Avoids that input and output work differently. Need to be restored when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
750 exiting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
751
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
752
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
753 Amiga:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
754 8 In mch_inchar() should use convert_input_safe() to handle incomplete byte
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
755 sequences.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
756 9 In mch_expandpath() a "*" is to be expanded, but "\*" isn't. Remove
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
757 backslashes in result.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
758 8 Executing a shell, only one option for 'shell' is separated. Should do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
759 all options, using white space separation.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
760
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
761
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
762 Macintosh:
9
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
763 7 Patch to add 'transparency' option. Disadvantage: it's slow. (Eckehard
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
764 Berns, 2004 May 9) http://ecki.to/vim/TransBack-2004-05-09.diff
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
765 Needs more work. Add when someone really wants it.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
766 7 Loading the Perl library only works on OS/X 10.2 or 10.3, never on both.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
767 Load the Perl library dynamically see Python sources file dynload_mac
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
768 (Jack)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
769 dynamic linking: http://developer.apple.com/technotes/tn2002/tn2064.html
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
770 8 Inputting Unicode characters does not work in the terminal. They appear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
771 to arrive as upper and lower bytes. (David Brown, 2004 April 17)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
772 8 Typing Unicode characters doesn't work at all in the GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
773 9 Problems in Carbon version for OS X: (Benji Fisher)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
774 - keyboard shortcuts in the menus get lost.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
775 8 The Vim/About menu doesn't work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
776 8 ":gui" doesn't fork. Enabling the code in gui.c to fork causes a SEGV.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
777 8 Define vim_mkdir() for Macintosh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
778 8 Define mch_writable() for Macintosh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
779 9 When DiskLock is running, using a swap file causes a crash. Appears to be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
780 a problem with writing a file that starts with a dot. (Giacalone)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
781 9 On G3 Mac, OS version 8, control strip causes characters messed up when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
782 scrolling (CTRL-L cleans it up). (Benji Fisher)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
783 9 On G3 Mac, OS version 8, variable-speed scrolling doesn't work, after two
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
784 seconds of scrolling the screen freezes. (Benji Fisher)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
785 9 In mac_expandpath() check that handling of backslashes is done properly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
786 8 Standard Mac shortcuts are missing. (Amerige)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
787 8 Handling of non-fixed width fonts is wrong. (Amerige)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
788
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
789
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
790 "Small" problems:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
791 8 When an ":edit" is inside a try command and the ATTENTION prompt is used,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
792 the :catch commands are always executed, also when the file is edited
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
793 normally. Should reset did_emsg and undo side effects. Also make sure
16
3ba373b54370 updated for version 7.0008
vimboss
parents: 15
diff changeset
794 the ATTENTION message shows up. Servatius Brandt works on this.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
795 9 When using ":e ++enc=foo file" and the file is already loaded with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
796 'fileencoding' set to "bar", then do_ecmd() uses that buffer, even though
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
797 the fileencoding differs. Reload the buffer in this situation? Need to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
798 check for the buffer to be unmodified.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
799 8 ":g//" gives "Pattern not found error" with E486. Should not use the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
800 error number, it's not a regular error message.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
801 7 Vimtutor leaves escape sequence in terminal. This is the xterm response to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
802 requesting the version number. (Yasuhiro Matsumoto)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
803 8 When redirecting and using ":silent" the current column for displaying and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
804 redirection can be different. Use a separate variable to hold the column
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
805 for redirection.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
806 7 There is no way to change directory and go back without changing the local
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
807 and/or global directory. Add a way to find out if the current window uses
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
808 a local directory. Add cdcmd() that returns ":cd" or ":lcd"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
809 7 After running "make test" the window title is sometimes not restored.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
810 Mostly sticks at "test3.in", but not always. Appears to happen more often
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
811 when compiled with Python (threading).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
812 7 The messages for "vim --help" and "vim --version" don't use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
813 'termencoding'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
814 8 When 'scrollbind' is set, a window won't scroll horizontally if the cursor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
815 line is too short. Add a word in 'scrollopt' to allow moving the cursor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
816 to longer line that is visible. A similar thing is done for the GUI when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
817 using the horizontal scrollbar.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
818 7 VisVim can only open one file. Hard to solve: each opened file is passed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
819 with a separate invocation, would need to use timestamps to know the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
820 invocations belong together.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
821 8 When giving a ":bwipeout" command a file-changed dialog may popup for this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
822 buffer, which is pointless. (Mike Williams)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
823 8 On MS-Windows ":make" doesn't show output while it is working. Use the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
824 tee.exe from http://unxutils.sourceforge.net/ ? About 16 Kbyte in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
825 UnxUtils.zip archive.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
826 Alternate one: http://www.pramodx.20m.com/tee_for_win32.htm, but Walter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
827 Briscoe says it's not as good.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
828 8 'fillchars' doesn't work for multi-byte characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
829 9 Editing a XML file with a long line is extremely slow. Example file from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
830 Randy Parker (Dec 13). Editing the dictionaries for engspchk plugin with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
831 syntax highlighting is also very slow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
832 Limit the searching for items to a few hundred characters?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
833 8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
834 ":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
835 7 Output for ":scriptnames" and ":breaklist" should shorten the file names:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
836 use "~/" when possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
837 7 mb_off2cells() doesn't work correctly on the tail byte of a double-byte
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
838 character. (Yasuhiro Matsumoto) It should return 1 when used on a tail
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
839 byte, like for utf-8. Store second byte of double-byte in ScreenLines2[]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
840 (like for DBCS_JPNU) and put a zero in the second byte (like for UTF-8).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
841 8 'backupdir' and 'directory' should use $TMPDIR, $TMP and/or $TEMP when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
842 defined.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
843 7 Inside a function with "perl <<EOF" a line with "$i++" is recognized as an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
844 ":insert" command, causing the following "endfunction" not to be found.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
845 Add skipping this perl construction inside function definitions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
846 7 When 'ttimeoutlen' is 10 and 'timeoutlen' is 1000, there is a keycode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
847 "<Esc>a" and a mapping <Esc>x", when typing "<Esc>a" with half a second
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
848 delay should not be interpreted as a keycode. (Hans Ginzel)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
849 7 ":botright 1 new" twice causes all window heights to be changed. Make the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
850 bottom window only bigger as much as needed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
851 7 "[p" doesn't work in Visual mode. (David Brown)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
852 7 The Cygwin and MingW makefiles define "PC", but it's not used anywhere.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
853 Remove? (Dan Sharp)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
854 9 The argument <f-args> of a user command doesn't handle backslashes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
855 properly. "Cmd \ e" is one argument, "Cmd \\ e" still is one argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
856 "Cmd \ e" is two arguments, first one ending in space. (Kontra Gergely)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
857 9 User commands use the context of the script they were defined in. This
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
858 causes a "s:var" argument to unexpectedly use a variable in the defining
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
859 script, not the calling script. Add an argument to ":command":
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
860 "-keepcontext". Do replace <SID>, so that a function in the defining
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
861 script can be called.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
862 8 The Japanese message translations for MS-Windows are called ja.sjis.po,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
863 but they use encoding cp932. Rename the file and check that it still
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
864 works.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
865 9 When a syntax region does not use "keepend" and a contained item does use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
866 "extend", this makes the outer region stop at the end of the contained
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
867 region. (Lutz Eymers) Another example Nov 14 2002.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
868 8 A very long message in confirm() can't be quit. Make this possible with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
869 CTRL-C.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
870 7 clip_x11_own_selection() uses CurrentTime, that is not allowed. VNC X
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
871 server has a problem with this. (Mark Waggoner) Remembering the timestamp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
872 of events isn't always possible. We don't get them in an xterm. GTK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
873 doesn't obtain the selection again when the timestamp differs, thus it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
874 won't work for GTK anyway.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
875 8 When the clipboard isn't supported: ":yank*" gives a confusing error
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
876 message. Specifically mention that the register name is invalid.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
877 8 "gf" always excludes trailing punctuation characters. file_name_in_line()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
878 is currently fixed to use ".,:;!". Add an option to make this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
879 configurable?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
880 8 'hkmap' should probably be global-local.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
881 9 When "$" is in 'cpoptions' and folding is active, a "C" command changes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
882 the folds and resets w_lines_valid. The display updating doesn't work
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
883 then. (Pritesh Mistry)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
884 8 ":s!from!to!" works, but ":smagic!from!to!" doesn't. It sees the "!" as a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
885 flag to to the command. Same for ":snomagic". (Johan Spetz)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
886 8 Using ":s" in a function changes the previous replacement string. Save
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
887 "old_sub" in save_search_patterns()?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
888 8 When appending to a file and 'patchmode' isn't empty, a backup file is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
889 always written, even when the original file already exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
890 7 When using "daw" on the last word in a file and this is a single letter,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
891 nothing is deleted. Should delete the letter and preceding white space.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
892 9 When getting focus while writing a large file, could warn for this file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
893 being changed outside of Vim. Avoid checking this while the file is being
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
894 written.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
895 9 The "Error detected while processing modelines" message should have an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
896 error number.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
897 7 The message in bt_dontwrite_msg() could be clearer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
898 8 The script ID that is stored with an option and displayed with ":verbose
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
899 set" isn't reset when the option is set internally. For example when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
900 'foldlevel' is set from 'foldlevelstart'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
901 8 In the fileformat dialog, "Cancel" isn't translated. Add a global
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
902 variable for this. (Eduardo Fernandez)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
903 9 When editing a file with 'readonly' set, there is no check for an existing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
904 swap file. Then using ":write" (without making any changes) doesn't give
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
905 a warning either. Should check for an existing swap file without creating
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
906 one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
907 7 When 'showbreak' is set, the amount of space a Tab occupies changes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
908 Should work like 'showbreak' is inserted without changing the Tabs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
909 7 When there is a "help.txt" window in a session file, restoring that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
910 session will not get the "LOCAL ADDITIONS" back.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
911 7 When 'mousefocus' is set and switching to another window with a typed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
912 command, the mouse pointer may be moved to a part of the window that's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
913 covered by another window and we lose focus. Only move in the y
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
914 direction, not horizontally?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
915 8 When using CTRL-D after ":help", restrict the number of matches to a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
916 thousand, otherwise using CTRL-D without an argument takes too long.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
917 8 ":hardcopy":
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
918 - Using the cterm_color[] table is wrong when t_colors is > 16.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
919 - Need to handle unprintable characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
920 - Win32: On a B&W printer syntax highlighting isn't visible. Perform
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
921 dithering to make grey text?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
922 - Add a flag in 'printoptions' to add an empty page to make the total
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
923 number even. "addempty"? (Mike Williams)
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
924 - Respect 'linebreak'. Perhaps also 'showbreak'?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
925 - Should interpreted CTRL-L as a page break.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
926 - Grey line numbers are not always readable. Add field in 'printoptions'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
927 Default to black when no syntax highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
928 - Be able to print a window in diff mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
929 - Be able to specify a colorscheme to use for printing. And a separate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
930 one for B&W printing (if that can be detected).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
931 8 In Visual block mode with 'lbr' set, a change command doesn't insert the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
932 text in following lines where the linebreak changes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
933 9 dosinst.c: The DJGPP version can't uninstall the Uninstall registry key on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
934 Windows NT. How to install a .inf file on Windows NT and how to detect
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
935 that Windows NT is being used?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
936 8 When 'virtualedit' is "block,insert" and encoding is "utf-8", selecting a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
937 block of one double-wide character, then "d" deletes only half of it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
938 8 When 'virtualedit' is set, should "I" in blockwise visual mode also insert
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
939 in lines that don't extend into the block?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
940 8 With 'virtualedit' set, in Insert mode just after the end of line, CTRL-O
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
941 yh does not yank the last character of the line. (Pavel Papushev)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
942 Doing "hl" first appears to make it work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
943 8 With 'virtualedit' set it's possible to move into the blank area from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
944 'linebreak'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
945 8 With 'virtualedit' set and 'selection' "exclusive", a Visual selection
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
946 that ends in or after a tab, "d" doesn't delete (part of) the tab.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
947 (Helmut Stiegler)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
948 8 With 'virtualedit' set, a blockwise Visual selection that starts and ends
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
949 in a tab, "<" shifts too much. (Helmut Stiegler)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
950 9 When jumping to a tag, the search pattern is put in the history. When
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
951 'magic' is on, the pattern may not work. Translate the pattern depending
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
952 on p_magic when putting it in the history? Alternative: Store value of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
953 'magic' in history. (Margo)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
954 9 optwin.vim: Restoring a mapping for <Space> or <CR> is not correct for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
955 ":noremap". Add "mapcmd({string}, {mode})? Use code from ":mkexrc".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
956 9 incsearch is incorrect for "/that/<Return>/this/;//" (last search pattern
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
957 isn't updated).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
958 9 term_console is used before it is set (msdos, Amiga).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
959 9 Get out-of-memory for ":g/^/,$s//@/" on 1000 lines, this is not handled
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
960 correctly. Get many error messages while redrawing the screen, which
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
961 cause another redraw, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
962 8 [<C-I> doesn't work when '*' is in 'iskeyword'. find_pattern_in_path()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
963 must escape special characters in the pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
964 8 Vim can overwrite a read-only file with ":w!". ":w" can't overwrite an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
965 existing file, "w!" can, but perhaps not a read-only file? Then use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
966 ":w!!" for that.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
967 Or ask for permission to overwrite it (if file can be made writable) and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
968 restore file to readonly afterwards.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
969 7 When compiled with "xterm_clipboard", startup can be slower and might get
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
970 error message for invalid $DISPLAY. Try connecting to the X server in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
971 background (forked), so that Vim starts up quicker? Connect as soon as
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
972 the clipboard is to be used (Visual select mode starts, paste from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
973 clipboard)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
974 7 X11: Some people prefer to use CLIPBOARD instead of PRIMARY for the normal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
975 selection. Add an "xclipboard" argument to the 'clipboard' option? (Mark
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
976 Waggoner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
977 8 For xterm need to open a connection to the X server to get the window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
978 title, which can be slow. Can also get the title with "<Esc>[21t", no
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
979 need to use X11 calls. This returns "<Esc>]l{title}<Esc>\".
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
980 6 When the xterm reports the number of colors, a redraw occurs. This is
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
981 annoying on a slow connection. Wait for the xterm to report the number of
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
982 colors before drawing the screen. With a timeout.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
983 8 When the builtin xterm termcap contains codes that are not wanted, need a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
984 way to avoid using the builtin termcap.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
985 8 Xterm sends ^[[H for <Home> and ^[[F for <End> in some mode. Also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
986 recognize these keys? Mostly useful for xterm simulators, like gnometerm.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
987 See http://dickey.his.com/xterm/xterm.faq.html#xterm_pc_style.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
988 8 '[ and '] should be set to start/end of line when using a linewise operator
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
989 (e.g., ":w").
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
990 8 CTRL-A can't handle big "long" numbers, they become negative. Check for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
991 "-" character, if not present, use unsigned long.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
992 8 Make it possible to disable the special meaning of "#" in the first column
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
993 for ">>".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
994 8 Add suspending with CTRL-Z at the "more" prompt, and when executing a long
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
995 script in do_cmdline().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
996 8 When using 'hidden', many swap files will be open. When Vim runs into the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
997 maximum number of open files, error messages will appear. Detect that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
998 this problem is present, and close any hidden files that don't have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
999 changes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1000 8 With 'viminfo' set such that the ".viminfo" file is written on a FAT
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1001 filesystem, an illegal file name may be created: ".vim".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1002 8 For each buffer that is opened, the viminfo file is opened and read to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1003 check for file marks. This can be slow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1004 7 In xterm, recognize both vt100 and vt220 cursor keys. Change
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1005 add_termcode() to not remove an existing entry for a name, when it's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1006 needed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1007 Need a generic solution to recognize different codes for the same key.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1008 8 Core dump within signal function: gdb doesn't show stack backtrace! Option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1009 to skip catch_signals()?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1010 9 Repeating a "cw" with "." doesn't work if the text was pasted from the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1011 clipboard. (Thomas Jones) It's because the menu/toolbar item exits Insert
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1012 mode and uses "gP". How to fix this without breaking inserting a block of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1013 text?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1014 8 In Replace mode pasting from the clipboard (using menu or toolbar) inserts
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1015 all the text. Add ":rmenu"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1016 8 Pasting with the mouse in Replace mode inserts the text, instead of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1017 overwriting, when it is more than one line. Same for using <C-R>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1018 9 CTRL-E and CTRL-Y don't work in small window when 'so' is 4 and lines are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1019 wrapping (Acevedo/in.226). E.g., when using CTRL-E, window height 7,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1020 window might actually scroll down when last line of buffer is displayed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1021 --> Remember if the previous command was "cursor follows screen" or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1022 "screen follow cursor" and use this in cursupdate().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1023 7 tilde_replace() can only handle "~/", should also do "~user/".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1024 Get the list of home directories (from /etc/passwd? Use getpwent()) and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1025 use some clever algorithm to match a path with that. Find common strings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1026 in the list?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1027 8 When dragging status line with mouse, sometimes a jump when first clicking
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1028 on the status line (caused by 'winheight'). Select window on button up,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1029 instead of on button down.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1030 8 Dragging the status line doesn't scroll but redraw.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1031 9 Evaluating 'statusline' in build_stl_str_hl() does not properly check for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1032 reaching the end of the available buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1033 8 When performing incremental search, should abort searching as soon as a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1034 character is typed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1035 8 When the value of $MAKE contains a path, configure can't handle this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1036 It's an autoconf bug. Remove the path from $MAKE to work around it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1037 8 How to set VIMRC_FILE to \"something\" for configure? Why does this not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1038 work: CFLAGS='-DVIMRC_FILE=\"/mydir/myfile\"' ./configure
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1039 8 The temporary file is sometimes not writable. Check for this, and use an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1040 alternate name when it isn't. Or add the 'temptemplate' option: template
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1041 for the temp file name ":set temptemplate=/usr/tmp/?????.tmp".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1042 Also: Win32 version uses Windows temp directory, which might not work for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1043 cygwin bash.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1044 7 Get error "*, \+ or \( operand could be empty" for pattern "\(.\)\1\{3}".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1045 Remember flags for backreferences.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1046 7 When switching to Daylight Saving Time, Vim complains that a file has been
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1047 changed since last read. Can we use a function that uses GMT?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1048 7 When completing an environment variable after a '$', check for file names
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1049 that contain a '$' after all have been found.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1050 8 When "cm" termcap entry is missing, starting gvim shouldn't complain about
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1051 it. (Lohner) Try out with "vt100" entry, cm replaced with cX.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1052 7 When an include file starts with "../", the check for already visiting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1053 this file doesn't work. Need to simplify the file name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1054 7 The names and comments for the arguments of do_browse() are confusing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1055 "dflt" isn't the default file name when "initdir" is not NULL and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1056 "initdir" is the default path to be used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1057 7 When 'scrolloff' is exactly half the window height, "j" causes a scroll of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1058 two lines at a time. "k" doesn't do this. (Cory T. Echols)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1059 8 When write_viminfo() is used while there are many orphaned viminfo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1060 tempfiles writing the viminfo file fails. Give a clear error message so
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1061 that the user knows he has to delete the files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1062 7 It's possible to redefine a script-local function with ":func
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1063 <SNR>123_Test()". (Krishna) Disallow this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1064 7 After ":%d" an undo reports the number of lines added as if there still
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1065 was one line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1066
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1067
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1068 I can't reproduce these (if you can, let me know how!):
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1069 9 NT 4.0 on NTFS file system: Editing ".bashrc" (drag and drop), file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1070 disappears. Editing ".xyz" is OK. Also, drag&drop only works for three
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1071 files. (McCollister)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1072 8 Motif: Tear-off menu item crashes Vim on some machines. (Netherton) It
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1073 works fine for me, maybe it's a Motif problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1074
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1075
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1076 Problems that will (probably) not be solved:
34
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1077 - xterm title: The following scenario may occur (esp. when running the Vim
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1078 test script): Vim 1 sets the title to "file1", then restores the title to
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1079 "xterm" when exiting with an ESC sequence. Vim 2 obtains the old title
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1080 with an X library call, this may result in "file1", because the window
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1081 manager hasn't processed the "xterm" title yet. Can apparently only be
7f788cd27415 updated for version 7.0020
vimboss
parents: 32
diff changeset
1082 worked around with a delay.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1083 - In a terminal with 'mouse' set such that the mouse is active when entering
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1084 a command line, after executing a shell command that scrolls up the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1085 display and then pressing ":": Selecting text with the mouse works like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1086 the display wasn't scrolled. Vim doesn't know how much the external
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1087 command scrolled up the display. Use Shift to select text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1088 - X windows: When $DISPLAY points to a X server where there is no access
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1089 permission, trying to connect to the X server causes an error message.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1090 XtOpenDisplay() prints this directly, there is no way to avoid it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1091 - X windows: Setting 'guifontset' to an illegal value sometimes crashes Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1092 This is caused by a fault in a X library function, can't be solved in Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1093 - Motif: When adding a menu item "Find this &Symbol", the "s" in "this" will
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1094 be underlined, instead of in "Symbol". Motif doesn't let us specify which
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1095 character gets the highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1096 - Moving the cursor removes color in color-xterm. This is a color-xterm
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1097 problem! color-xterm ver. 6.1 beta 3 and later work properly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1098 - In zsh, "gvim&" changes the terminal settings. This is a zsh problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1099 (Jennings)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1100 - Problem with HPterm under X: old contents of window is lost (Cosentino).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1101 - Amiga: When using quickfix with the Manx compiler we only get the first 25
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1102 errors. How do we get the rest?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1103 - Amiga: The ":cq" command does not always abort the Manx compiler. Why?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1104 - Linux: A file with protection r--rw-rw- is seen readonly for others. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1105 access() function in GNU libc is probably wrong.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1106 - MSDOS: When using smartdrive with write-back buffering, writing to a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1107 readonly floppy will cause problems. How to test for a writable floppy
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1108 first?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1109 - MSDOS: Both 16 and 32 bit versions: File name expansion doesn't work for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1110 names that start with a dot. These used to be illegal file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1111 - When doing a CTRL-Z and typing a command for the shell, while Vim is busy
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1112 (e.g. writing a file), the command for the shell is sometimes eaten by Vim,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1113 because the terminal mode is changed from RAW to CBREAK.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1114 - An old version of GNU tgoto can't handle the terminfo code for "AF". The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1115 "%p1" is interpreted as "%p" and "1", causing color not to be working.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1116 Fix: Change the "%p1" in the "AF" and "AB" terminfo entries to "%p".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1117 (Benzinger).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1118 - When running an external command from the GUI, typeahead is going to that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1119 program, not to Vim. It looks like the shell eats the characters, Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1120 can't get back what the external command didn't use.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1121 - Win32 GUI: Error code from external command not returned in shell_error.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1122 It appears that cmd.exe and command.com don't return an error code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1123 - Win32 GUI: The Toolbar is a bit too high when the flat style is being
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1124 used. We don't have control over the height of the Toolbar.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1125 - Win32: All files created on the day of switching from winter to summer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1126 time cause "changed since editing started" messages. It goes away when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1127 the file is written again the next day, or the timezone is adjusted.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1128 DJGPP version is OK. (Zaimi) Looks like a problem with the Win32 library.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1129 Rebooting doesn't help. Time stamps look OK in directory. (Penn)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1130 Is this on FAT (stores wall clock time) or NTFS (stores UTS)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1131 - Win32, MS-Windows XP: $HOME uses the wrong drive when the user profiles
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1132 are not on the boot disk. This is caused by a wrong value of $HOMEDRIVE.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1133 This is a bug in XP, see MSKB article 818134.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1134 - SunOS 5.5.1 with Motif: The file open dialog does not have a horizontal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1135 scroll bar for the "files" selection. This is a problem in the Motif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1136 libraries, get a patch from Sun.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1137 - Solaris 2.6 with GTK and Perl: gvim crashes when started. Problem with X
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1138 input method called from GDK code. Without Perl it doesn't crash.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1139 - VMS: Vimdiff doesn't work with the VMS diff, because the output looks
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1140 different. This makes test 47 fail. Install a Unix-compatible diff.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1141 - VMS v7.1 and older: Tests 21 and 32 fail. From VMS v7.1-2 and newer Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1142 does not have this behavior. (Zoltan Arpadffy)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1143 - Win32 GUI: mouse wheel always scrolls rightmost window. The events arrive
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1144 in Vim as if the rightmost scrollbar was used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1145 - GTK with Gnome: Produces an error message when starting up:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1146 Gdk-WARNING **: locale not supported by C library
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1147 This is caused by the gnome library gnome_init() setting $LC_CTYPE to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1148 "en_US". Not all systems support this locale name, thus causing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1149 error. Hopefully a newer version of GTK/Gnome fixes this problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1150 - GTK 2: With this mapping the hit-enter prompt is _sometimes_ below the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1151 screen, at other times there is a grey area below the command line:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1152 :nmap <F11> :if &guioptions=~'m' \| set guioptions-=m \| else \| set guioptions+=m \| endif<cr>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1153 - GTK: When pasting a selection from Vim to xclipboard gvim crashes with a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1154 ABRT signal. Probably an error in the file gdkselection.c, the assert
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1155 always fails when XmbTextListToTextProperty() fails. (Tom Allard)
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
1156 - GTK 2: gives an assertion error for every non-builtin icon in the toolbar.
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
1157 This is a GTK 2.4.x bug, fixed in GTK 2.4.2. (Thomas de Grenier de Latour)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1158 - When using an xterm that supports the termresponse feature, and the 't_Co'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1159 termcap option was wrong when Vim started, it will be corrected when the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1160 termresponse is received. Since the number of colors changes, the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1161 highlighting needs to be initialized again. This may cause colors defined
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1162 in the vimrc file to be lost.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1163 - On Windows NT 4.0 the number of files passed to Vim with drag&drop and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1164 "Edit with Vim" is limited. The maximum command line length is 255 chars.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1165
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1166 --------------------- extensions and improvements ----------------------
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1167 *extensions-improvements*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1168
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1169 Documentation:
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1170 8 The GUI help should explain the Find and Find/Replace dialogs. Add a link
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1171 to it from ":promptrepl" and ":promptfind".
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
1172 8 List of options should mention whether environment variables are expanded
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
1173 or not.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1174 8 Extend usr_27.txt a bit. (Adam Seyfarth)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1175 7 Add a section on debugging scripts in the user manual.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1176 9 Make the Reference Manual more precise. For each command mention:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1177 - change to cursor position and curswant
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1178 - if it can be undone (u/CTRL-R) and redone (.)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1179 - how it works for folded lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1180 - how it works with multi-byte characters
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1181 9 In change.txt, remark about Javadoc isn't right. Right alignment would
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1182 work too.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1183 8 Spread the windows commands over the other files. For example, ":stag"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1184 should be with ":tag". Cross-link with tags to avoid too much double
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1185 text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1186 8 Add tags for all features, e.g. "gui_running".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1187 7 MS-Windows: When a wrong command is typed with an ALT key, give a hint to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1188 look at the help for 'winaltkeys'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1189 7 Add a help.vim plugin that maps <Tab> to jump to the next tag in || and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1190 <C-Tab> (and <S-Tab>) to the previous tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1191 - Check text editor compendium for vi and Vim remarks.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1192
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1193
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1194 Help:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1195 - First try using the ":help" argument literally, before using it as a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1196 pattern. And then match it as part of a tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1197 - When a help item has multiple matches make it possible to use ":tn" to go
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1198 to the other matches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1199 - Support a way to view (and edit) .info files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1200 - Default mapping for help files: <Tab> to position cursor on next |:tag|.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1201 - Implement a "sticky" help window, some help text lines that are always
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1202 displayed in a window with fixed height. (Guckes) Use "~/.vimhelp" file,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1203 user can edit it to insert his favorite commands, new account can contain a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1204 default contents.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1205 - Make 'winminheight' a local option, so that the user can set a minimal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1206 height for the help window (and other windows).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1207 - ":help :s^I" should expand to ":help :substitute".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1208 - Make the help key (<F1>) context sensitive?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1209 - Learn mode: show short help while typing commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1210
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1211
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1212 User Friendlier:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1213 8 Windows install with install.exe: Use .exe instead of .bat files for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1214 links, so that command line arguments are passed on unmodified? (Walter
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1215 Briscoe)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1216 8 Windows install: Be able to associate Vim with a selection of file types?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1217 8 Windows uninstall: Have uninstal.c delete the vimfiles directories that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1218 dosinst.c creates. List the contents of the directory (recursively) if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1219 the user asks for it. Requires an implementation of "rm -rf".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1220 8 Remember the name of the vimrc file that was used (~/.vimrc, $VIM/_vimrc,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1221 $HOME/_vimrc, etc.) and add "edit vimrc" to the File menu.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1222 - Add a way to save local settings and mappings into a new plugin file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1223 ":mkplugin <file>"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1224 8 Add ":plugininstall" command. Can be used to install a plugin file that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1225 includes documentation. Let the user select a directory from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1226 'runtimepath'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1227 " Vim plugin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1228 <main plugin code>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1229 " >>> plugin help start <<<
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1230 <plugin docs>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1231 - Add mappings local to a window: ":map <window> ..."?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1232 9 Add buffer-local menu. Should offer a choice between removing the menu or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1233 disabling it. Be careful that tear-offs don't disappear (keep one empty
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1234 item?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1235 Alternative: use BufEnter and BufLeave autocommands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1236 8 make a vimtutor script for Amiga and other systems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1237 7 Add the arguments for configure to the ":version" output?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1238
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1239
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1240 Diff mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1241 8 Use diff mode to show the changes made in a buffer (compared to the file).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1242 Use an unnamed buffer, like doing:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1243 new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1244 7 Add cursor-binding: when moving the cursor in one diff'ed buffer, also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1245 move it in other diff'ed buffers, so that CTRL-W commands go to the same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1246 location.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1247
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1248
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1249 Folding:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1250 (commands still available: zg zG zI zJ zK zp zP zq zQ zV zw zW zy zY;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1251 secondary: zB zS zT zZ)
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
1252 8 Add "z/" and "z?" for searching in not folded text only.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1253 8 Add different highlighting for a fold line depending on the fold level.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1254 (Noel Henson)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1255 8 When a closed fold is displayed open because of 'foldminlines', the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1256 behavior of commands is still like the fold is closed. How to make the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1257 user aware of this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1258 8 Add an option 'foldskip' with values like 'foldopen' that specifies which
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1259 commands skip over a closed fold.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1260 8 "H" and "L" count buffer lines instead of window lines. (Servatius Brandt)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1261 8 Add a way to add fold-plugins. Johannes Zellner has one for VB.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1262 7 When using manual folding, the undo command should also restore folds.
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1263 - Allow completely hiding a closed fold. E.g., by setting 'foldtext' to an
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1264 empty string. Require showing a character in 'foldcolumn' to avoid the
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1265 missing line goes unnoticed.
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1266 How to implement this?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1267 - When pressing the down arrow of a scrollbar, a closed fold doesn't scroll
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1268 until after a long time. How to make scrolling with closed folds
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1269 smoother?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1270 - When creating a session, also store folds for buffers in the buffer list,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1271 using the wininfo in wi_folds.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1272 - 'foldmethod' "textobject": fold on sections and paragraph text objects.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1273 - Add 'hidecomment' option: don't display comments in /* */ and after //.
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1274 Or is the conceal patch from Vince Negri a more generic solution?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1275 - "zu": undo change in manual fold. "zU" redo change in manual fold. How to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1276 implement this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1277 - "zJ" command: add the line or fold below the fold in the fold under the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1278 cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1279 - 'foldmethod' "syntax": "fold=3": set fold level for a region.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1280 - Apply a new foldlevel to a range of lines. (Steve Litt)
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1281 8 Have some way to restrict commands to not folded text. Also commands like
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1282 searches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1283
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1284
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1285 Multi-byte characters:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1286 9 When the tail byte of a double-byte character is illegal (e.g., a CR), the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1287 display is messed up (Yasuhiro Matsumoto). Should check for illegal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1288 double-byte characters and display them differently (display each single
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1289 byte).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1290 8 Add an item in 'fileencodings' to check the first lines of a file for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1291 the encoding. See Python PEP: http://www.python.org/peps/pep-0263.html.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1292 To avoid getting a wrong encoding only accept something Emacs-like:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1293 "-*- coding: enc-na_me.foo -*-" and "-*- coding= enc-na_me.foo -*-"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1294 Match with "-\*-\s*coding[:=]\s*\([::word::-_.]\+\)\s*-\*-" and use first
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1295 item.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1296 8 Add an item in 'fileencodings' to check the first line of an XML file for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1297 the encoding. <?xml version="1.0" encoding="UTF-8"?> Or "charset=UTF-8"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1298 8 The quickfix file is read without conversion, thus in 'encoding'. Add an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1299 option to specify the encoding of the errorfile and convert it. Also for
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1300 ":grep" and ":helpgrep".
38
c524f99c7925 updated for version 7.0022
vimboss
parents: 36
diff changeset
1301 More generic solution: support a filter (e.g., by calling a function).
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1302 8 When a file was converted from 'fileencoding' to 'encoding', a tag search
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1303 should also do this on the search pattern. (Andrzej M. Ostruszka)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1304 7 When converting a file fails, mention which byte could not be converted,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1305 so that the user can fix the problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1306 8 Add configure option to be able to disable using the iconv library. (Udo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1307 Schweigert)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1308 9 'aleph' should be set to 1488 for Unicode. (Zvi Har'El)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1309 8 Should add test for using various commands with multi-byte characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1310 8 'infercase' doesn't work with multi-byte characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1311 8 toupper() function doesn't handle byte count changes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1312 8 "ga" should show all composing characters, also if there are more than 2.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1313 7 When searching, should order of composing characters be ignored?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1314 8 Should implement 'delcombine' for command line editing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1315 8 Detect overlong UTF-8 sequences and handle them like illegal bytes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1316 8 ":s/x/\u\1/" doesn't work, making uppercase isn't done for multi-byte
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1317 characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1318 8 UTF-8: "r" in Visual mode doesn't take composing characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1319 8 UTF-8: When there is a precomposed character in the font, use it instead
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1320 of a character and a composing character. See xterm for an example.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1321 7 When a character can't be displayed, display its digraph instead.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1322 'display' option to specify this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1323 7 Use ideas for nl_langinfo() from Markus Kuhn in enc_default():
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1324 (www.cl.cam.ac.uk/~mgk25/ucs/langinfo.c)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1325 - GTK and Win32: Allow selecting fonts for 'guifontset' with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1326 fontselector somehow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1327 - GTK and Win32: make it possible to set the font for the menu to make it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1328 possible to have 'encoding' different from the current locale.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1329 - dbcs_class() only works for Japanese and Korean. Implement this for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1330 other encodings. The "euc-jp" and "euc-kr" choices might be wrong.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1331 - Find some way to automatically select the right GUI font or fontset,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1332 depending on the default value of 'encoding'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1333 Irrelevant in the GTK+ 2 GUI so long as UTF-8 is used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1334 For Windows, the charset_pairs[] table could be used. But how do we know
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1335 if a font exists?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1336 - Do keyboard conversion from 'termencoding' to 'encoding' with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1337 convert_input() for Mac GUI, RiscOS GUI, BeOS GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1338 - Add mnemonics from RFC1345 longer than two characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1339 Support CTRL-K _{mnemonic}_
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1340 7 In "-- INSERT (lang) --" show the name of the keymap used instead of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1341 "lang". (Ilya Dogolazky)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1342 - Make 'langmap' accept multi-byte characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1343 - Do we need the reverse of 'keymap', like 'langmap' but with files and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1344 multi-byte characters? E.g., when using a Russian keyboard.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1345 - Add the possibility to enter mappings which are used whenever normal text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1346 could be entered. E.g., for "f" command. But not in Normal mode. Sort
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1347 of opposite of 'langmap'. Use ":tmap" command?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1348 - When breaking a line, take properties of multi-byte characters into
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1349 account. The "linebreak" program from Bruno Haible can do it:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1350 ftp://ftp.ilog.fr/pub/Users/haible/gnu/linebreak-0.1.tar.gz
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1351 But it's very complicated...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1352
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1353
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1354 Printing:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1355 - Add "page width" to wrap long lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1356 - Win32: use a font dialog for setting 'printfont'. Can reuse the code for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1357 the 'guifont' dialog, put the common code in a separate function.
46
46d39f2eff86 updated for version 7.0027
vimboss
parents: 43
diff changeset
1358 - Add the file timestamp to the page header (with an option). (George
46d39f2eff86 updated for version 7.0027
vimboss
parents: 43
diff changeset
1359 Reilly)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1360 - Win32: when 'printfont' is empty use 'guifont'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1361 - Unix: Use some dialog box to do the obvious settings (paper size, printer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1362 name, portrait/landscape, etc).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1363 - PostScript: only works for 7-bit ASCII and EBCDIC. Should support
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1364 different 'encoding' values somehow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1365 - Allow specifying the paper size, instead of using a standard size. Same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1366 units as for the margins.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1367 - Support right-to-left text?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1368 8 Make the foreground color darkening function preserve the hue of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1369 color.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1370
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1371
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1372 Syntax highlighting:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1373 8 Make ":syn off" use 'runtimepath' instead of $VIMRUNTIME. (Gary Johnson)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1374 Should do the same for ":syn on" and ":syn manual".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1375 8 Support "containedin" argument for ":syn include", so that the defined
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1376 cluster can be added to existing syntax items.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1377 8 C syntax: Don't highlight {} as errors inside () when used like this:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1378 "({ something })", often used in GCC code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1379 8 When editing a new file without a name and giving it a name (by writing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1380 it) and 'filetype' is not set, detect the filetype. Avoid doing it for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1381 ":wq file".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1382 8 Make conversion to HTML faster (Write it in C or pre-compile the script).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1383 9 There is still a redraw bug somewhere. Probably because a cached state is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1384 used in a wrong way. I can't reproduce it...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1385 7 Make syntax keyword table configurable. Set number of bits used with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1386 ":syn clear [hashbits]", so that we don't need to reallocate the table.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1387 minimal 4 bits, maximal 16. (Campbell)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1388 7 Be able to change only the background highlighting. Useful for Diff* and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1389 Search highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1390 8 Allow the user to add items to the Syntax menu sorted, without having to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1391 change this for each release.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1392 8 Add a "matchcontains" for regions: items contained in the start or end
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1393 pattern, but not in the body.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1394 8 Add a "keepend-contained" argument: Don't change the end of an item this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1395 one is contained in. Like "keepend" but specified on the contained item,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1396 instead of the containing item.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1397 8 For keywords, allow to define the size of the hash table with ":syn
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1398 clear". Change KHASH_ defines into variables stored in buffer struct.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1399 Use something else than linear linked list from the hash table. (Campbell)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1400 8 cpp.vim: In C++ it's allowed to use {} inside ().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1401 8 Some syntax files set 'iskeyword'. When switching to another filetype
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1402 this isn't reset. Add a special keyword definition for the syntax rules?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1403 When this is done, use vim.vim syntax highlighting for help file examples,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1404 but without ":" in 'iskeyword' for syntax.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1405 8 Add specific syntax item to match with parens/braces that don't have a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1406 "%" match. :syntax nomatch cMatchError (,{,[,),},] [contained]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1407 8 Highlight the text between two matching parens (e.g., with a grey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1408 background) when on one of the parens or in between them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1409 Or highlight the matching paren when the cursor is on one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1410 8 Add a command to jump to the next character highlighted with "Error".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1411 8 When using a cterm, and no ctermfg or ctermbg are defined, use start/stop
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1412 sequences. Add remark in docs that :if 'term' == "term-name" should be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1413 used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1414 8 Add @spell cluster to String and Comment groups for many languages. Will
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1415 allow spell checking. (Fleiner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1416 8 When listing syntax items, try to sort the keywords alphabetically. And
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1417 re-insert the [] if possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1418 8 Make it possible to use color of text for Visual highlight group (like for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1419 the Cursor).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1420 8 Make it possible to only highlight a sub-expression of a match. Like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1421 using "\1" in a ":s" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1422 8 Support for deleting syntax items:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1423 :syn keyword cTodo remove this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1424 :syn match cTodo remove "pattern"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1425 :syn region cString remove start="this" end="that"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1426 8 Add possibility to sync on something else, when the syncing in one way
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1427 doesn't find match. For HTML: When no {script} is found, try looking for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1428 a '<'. (Fleiner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1429 7 Replace the synchronizing method with a state machine specification?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1430 Should be able to start at any line in the file, search forwards or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1431 backwards, and use the result of matching a pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1432 7 Use parsing like awk, so that e.g., a ( without a matching ) can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1433 detected.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1434 8 Make it possible to use "inverted" highlighting, invert the original
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1435 character. For Visual mode. (xterm-selection already does this).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1436 8 Highlight non-printable characters with "SpecialChar", linked to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1437 "Special". Display them with the digraph characters, if possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1438 8 Highlight the clipboard-selection with a highlight group.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1439 8 Be able to reset highlighting to its original (default) values.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1440 7 Be able to write current highlighting to a file as commands, similar to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1441 ":mkvimrc".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1442 8 Improve c.vim:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1443 - Add check for unterminated strings, with a variable to switch it on:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1444 "c_strict_ansi".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1445 - Detect unbalanced "#endif". Requires looking back a long way...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1446 8 Add an option to restrict the updating of syntax highlighting to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1447 current line while in Insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1448 8 When guessing value of 'background', the syntax file has already been
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1449 loaded (from the .gvimrc). After changing 'background', load it again?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1450 8 Add ":syn resync" command, to re-parse the whole file until the current
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1451 display position.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1452 8 Should support "me" offset for a region start pattern. To be used to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1453 allow searching for the end pattern inside the match of the end pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1454 Example: syn region pikeXX start="([^{]" end=")" should work on "()".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1455 8 When using a regexp for "contains=", should delay matching with it until
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1456 redrawing happens. Set a flag when a group is added, check this flag when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1457 highlighting starts.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1458 7 Add "semitrans": Add highlighting. E.g., make the text bold, but keep the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1459 colors. And add colors, so that Green+Red becomes Yellow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1460 E.g. for this html:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1461 <B> bold text <I> italic+bold text </B> italic text </I>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1462 7 Wild idea: Not only set highlighting, but also change what is displayed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1463 (e.g., remove characters, so that "<B>bold</B>" can be shown as "bold"):
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1464 :syn region boldstuff start="<B>" display="" end="</B>" display=""
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1465 7 CTRL-] checks the highlight group for finding out what the tag is.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1466 7 Add an explanation how a list of words can be used to highlight misspelled
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1467 words.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1468 7 Command line completion for ":find" should search in 'path'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1469 8 Add more command line completion for :syntax.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1470 8 Add more command line completion for :highlight.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1471 8 Add more command line completion for :sign.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1472 7 Should find a better way to parse the :syntax and :highlight commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1473 Use tables or lists that can be shared by parsing for execution and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1474 completion?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1475 8 Add ColorSchemePost autocommand event, so that scripts can set up their
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1476 highlighting. (Salman Halim)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1477 7 Add a few sets of colors (e.g. Borland Turbo C one). With a menu to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1478 select one of the sets.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1479 8 Add offsets to sub-matches: "\(a*\) *"he=e1-1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1480 'e' is end of match 'e1' is end of sub-match 1, 's2' is start of submatch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1481 2, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1482 8 In Insert mode, when there are typeahead characters, postpone the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1483 highlighting (for "." command).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1484 8 Syncing on comments isn't 100% correct when / / lines mix with / * and * /.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1485 For example: What about a line that starts with / / and contains * /?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1486 8 Ignore / * and * / inside strings, when syncing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1487 7 Build a few more syntax files from the file "/usr/share/misc/vgrindefs":
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1488 ISP, LDL, Icon, ratfor. And check "nedit/source/highlight.c".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1489 6 Add possibility to have background color continue until the right edge of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1490 the window. Useful for comment blocks and function headings. (Rogall)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1491 - Make it possible to add "contains" items for all items in a group. Useful
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1492 when extending an already existing syntax file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1493 - Add line-continuation pattern for non-syncing items too?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1494 - Add possibility to highlight the whole line, including the right margin
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1495 (for comment blocks).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1496 - Add 'hlmatch' option: List of flags:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1497 'c': highlight match for character under the cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1498 'b': highlight the previous (, and its match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1499 'a': highlight all text from the previous ( until its match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1500 Also for {}, <>, etc.?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1501 'e': highlight all braces without a match (slow?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1502 OR: add an argument "cursor" to the syntax command, which means that the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1503 region/match/keyword is only highlighted when the cursor is on it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1504 (Campbell)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1505 Or do it like Elvis: define text objects and how to highlight them around
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1506 the cursor. (Iain Truskett)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1507 7 Make it possible to use all words in the tags files as Keyword.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1508 Can also be done with a script (but it's slow).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1509 7 Make it possible to call a ":" command when a match is found. Should
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1510 allow for adding keywords from the text (e.g. variables that are set).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1511 And allows for sections with different highlighting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1512 7 Add highlight group for commandline: "Commandline". Make sure it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1513 highlights the command line while typing a command, and any output from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1514 messages. And external commands?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1515 8 Make a version that works like less, but with highlighting: read stdin for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1516 text, exit at end of file, don't allow editing, etc. moreim? lessim?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1517 7 SpecialKey highlighting overrules syntax highlighting. Can't give an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1518 unprintable char another color. Would be useful for ^M at end of line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1519
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1520
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1521 Built-in script language:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1522 8 Add referring to key options with "&t_xx". Both for "echo &t_xx" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1523 ":let &t_xx =". Useful for making portable mappings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1524 8 exists("&&option") tests if 'option' is actually implemented. Useful for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1525 'shellslash', for example.
51
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
1526 - Add "{range}source": execute lines from a buffer.
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
1527 Alternative: Allow range for ":exec", pass it on to the executed command.
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
1528 (Webb)
8c25f10d49e7 updated for version 7.0028
vimboss
parents: 46
diff changeset
1529 You can already yank lines and use :@" to execute them.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1530 8 Have a look at VSEL. Would it be useful to include? (Bigham)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1531 8 Add ":fungroup" command, to group function definitions together. When
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1532 encountered, all functions in the group are removed. Suggest using an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1533 obscure name to avoid name clashes. Require a ":fungroup END" in the same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1534 sourced file? Assume the group ends at the end of the file. Handle
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1535 nested packages?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1536 Alternative: Support packages. {package-name}:{function-name}().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1537 Packages are loaded automatically when first used, from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1538 $VIMRUNTIME/packages (or use a search path).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1539 7 Make globpath() also work with "**" and upwards search. (Brian Medley)
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1540 7 Add the markclear() function to delete a mark in another buffer. Charles
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1541 Campbell (2004 Jan 9)
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1542 http://mysite.verizon.net/astronaut/vim/index.html#Patch
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1543 Implement setmark(markname, lnum [, col [, filename]]) instead?
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1544 When "lnum" is zero delete the mark.
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1545 When "filename" has no wildcards and there is no matching buffer, add
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
1546 the buffer (unlisted).
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1547 7 Pre-parse or compile Vim scripts into a bytecode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1548 1. Put the bytecode with the original script, with an ":if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1549 has('bytecode')" around it, so that it's only used with a Vim that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1550 supports it. Update the code with a command, can be used in an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1551 autocommand.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1552 2. Use a ".vic" file (like Python use .pyc). Create it when writing a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1553 .vim file. Problem: distribution.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1554 3. Use a cache directory for each user. How to recognize which cached
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1555 file belongs to a sourced script?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1556 7 Add "n" flag to search() function, just like searchpair(). (Alexey
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1557 Marinichev)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1558 7 Add argument to winwidth() to subtract the space taken by 'foldcolumn',
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1559 signs and/or 'number'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1560 8 Add functions:
20
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1561 search() Add optional offset argument.
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1562 realname() Get user name (first, last, full)
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1563 user_fullname() patch by Nikolai Weibull, Nov
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1564 3 2002
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1565 Only add this when also implemented for
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1566 non-Unix systems, otherwise a shell cmd could
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1567 be used.
4ac1dce8dd5e updated for version 7.0012
vimboss
parents: 19
diff changeset
1568 get_user_name() gets login name.
18
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1569 menuprop({name}, {idx}, {what})
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1570 Get menu property of menu {name} item {idx}.
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1571 menuprop("", 1, "name") returns "File".
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1572 menuprop("File", 1, "n") returns "nmenu
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1573 File.Open..." argument.
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1574 Patch by Ilya Sher, 2004 Apr 22
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1575 Return a list of menus and/or a dictionary
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1576 with properties instead.
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1577 mapname({idx}, mode) return the name of the idx'th mapping.
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1578 Patch by Ilya Sher, 2004 Mar 4.
293621502c4d updated for version 7.0010
vimboss
parents: 17
diff changeset
1579 Return a list instead.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1580 sprintf(format, arg, ..) How to prevent a crash???
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1581 attributes() return file protection flags "drwxrwxrwx"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1582 mkdir(dir) Create directory
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1583 copy(from, to) Copy a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1584 perl(cmd) call Perl and return string
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1585 shorten(fname) shorten a file name, like home_replace()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1586 input(prompt, complete) like input() but do specified completion
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1587 inputrl() like input() but right-to-left
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1588 virtualmode() add argument to obtain whether "$" was used in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1589 Visual block mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1590 tagtype(tag) get type of tag (also checks if it exists)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1591 getacp() Win32: get codepage (Glenn Maynard)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1592 getbufline() get line from any buffer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1593 deletebufline() delete line in any buffer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1594 appendbufline() append line in any buffer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1595 sort() Sort a newline-separated string. Also:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1596 ":sort".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1597 libcall() Allow more than one argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1598 libcallext() Like libcall(), but using a callback function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1599 to allow the library to execute a command or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1600 evaluate an expression.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1601 char2hex() convert char string to hex string. XX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1602 hex2char() convert hex string to char string. XX
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1603 7 Make bufname("'0") return the buffer name from mark '0. How to get the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1604 column and line number? col("'0") currently returns zero.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1605 8 argc() returns 0 when using "vim -t tag". How to detect that no file was
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1606 specified in any way? To be able to jump to the last edited file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1607 8 Pass the executable name to the Vim scripts in some way. As v:argv0?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1608 8 Add command arguments with three dashes, passed on to Vim scripts.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1609 8 When starting to source a vim script, delete all functions that it has
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1610 previously defined? Avoids using ":fun!" all the time.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1611 7 Add optional arguments to user functions:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1612 :func myFunc(arg1, arg2, arg3 = "blah", arg4 = 17)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1613 6 User functions: Functions local to buffer "b:func()"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1614 8 Add ":let var[{expr}] = {expr}". When past the end of "var" just ignore.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1615 8 The "= register should be writable, if followed by the name of a variable,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1616 option or environment variable.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1617 8 ":let &option" should list the value of the option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1618 7 Add synIDlist(), making the whole list of syntax items on the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1619 stack available (separated with '\n').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1620 8 Add autocommand-event for when a variable is changed:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1621 :au VarChanged {varname} {commands}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1622 8 Add "has("gui_capable")", to check if the GUI can be started.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1623 8 Add possibility to use variables like registers: characterwise (default),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1624 linewise (when ending in '\n'), blockwise (when ending in '\001'). reg0,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1625 rega, reg%, etc. Add functions linewise({expr}), blockwise({expr}) and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1626 charwise({expr}).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1627 7 Make it possible to do any command on a string variable (make a buffer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1628 with one line, containing the string). Maybe add an (invisible) scratch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1629 buffer for this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1630 result = scratch(string, command)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1631 result = apply(string, command)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1632 result = execute(string, command)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1633 "command" would use <> notation.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1634 Does scratch buffer have a number? Or re-use same number?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1635 7 Add function to generate unique number (date in milliseconds).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1636 7 Automatically load a function from a file when it is called. Need an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1637 option for the search path. (Sekera)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1638 7 Persistent variables: "p:var"; stored in viminfo file and sessions files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1639
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1640
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1641 Robustness:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1642 8 This pattern in syntax/java.vim causes a recursive call of regmatch():
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1643 syn match javaStringError +"\([^"\\]\|\\.\)*$+
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1644 A long line with a " in it can cause a crash when it runs out of stack
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1645 space (on systems where this isn't caught). How can we catch this for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1646 more systems?
11
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1647 6 Add file locking. Lock a file when starting to edit it with flock() or
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1648 fcntl(). This patch has advisory file locking while reading/writing
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1649 the file for Vim 5.4: ~/vim/patches/kahn_file_locking .
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1650 The patch is incomplete (needs support for more systems, autoconf).
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1651 Andy doesn't have time to work on it.
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1652 Disadvantage: Need to find ways to gracefully handle failure to obtain a
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
1653 lock. When to release a lock: When buffer is unloaded?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1654
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1655
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1656 Performance:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1657 8 Loading plugins takes startup time. Only load the part that is used to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1658 trigger the rest, and load the rest when it's needed?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1659 8 Turn b_syn_ic and b_syn_containedin into b_syn_flags.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1660 9 Loading menu.vim still takes quite a bit of time. How to make it faster?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1661 8 in_id_list() takes much time for syntax highlighting. Cache the result?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1662 7 setpcmark() shifts the jumplist, this takes quite a bit of time when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1663 jumping around. Instead use an index for the start?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1664 8 When displaying a space with only foreground highlighting, it's the same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1665 as a space without attributes. Avoid displaying spaces for the "~" lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1666 when starting up in a color terminal.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1667 8 Avoid alloc() for scratch buffer use, esp. in syntax.c. It's very slow on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1668 Win16.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1669 9 Setting GUI options in the console (e.g., 'guifont') should not cause a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1670 redraw.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1671 8 Profiling shows that in_id_list() is used very often for C code. Can this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1672 function be improved?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1673 8 For an existing file, the page size of the swap file is always the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1674 default, instead of using the block size of the device, because the swap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1675 file is created only after setting the block size in mf_open(). How can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1676 this be improved?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1677 8 Set default for 'ttyscroll' to half a screen height? Should speed up
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1678 MS-DOS version. (Negri)
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1679 7 C syntax highlighting gets a lot slower after ":set foldmethod=syntax".
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
1680 (Charles Campbell) Inserting a "{" is very slow. (dman)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1681 7 HTML syntax highlighting is slow for long lines. Try displaying
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1682 http://www.theregister.co.uk/content/4/22908.html. (Andre Pang)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1683 7 Check how performance of loading the wordlist can be improved (adding a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1684 lot of abbreviations).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1685 7 DOS console: Add t_DL support, to make scrolling faster.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1686 7 Compile Ex commands to byte codes. Store byte codes in a vim script file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1687 at the end, after "compiled:. Make it look like a single comment line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1688 for old Vim versions. Insert first line "Vim script compiled <timestamp>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1689 Only used compiled code when timestamp matches the file stat.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1690 Add command to compile a vim script and add it to the file in-place.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1691 Split Ex command executing into a parsing and executing phase.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1692 Use compiled code for functions, while loops, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1693 8 When editing a file with extremely long lines (e.g., an executable), the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1694 "linerest" in readfile() is allocated twice to be able to copy what was
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1695 read so far. Use realloc() instead? Or split the line when allocating
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1696 memory fails and "linerest" is big (> 100000)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1697 8 When defining autocommands (e.g., from $VIMRUNTIME/filetype.vim), need to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1698 compare each pattern with all existing patterns. Use a hash code to avoid
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1699 using strcmp() too often?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1700 7 Include turbo_loader patches, speeding up reading a file?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1701 Speed up reading a file by reading it into a fixed-size buffer, creating
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1702 the list of indexes in another buffer, and then copying the result into a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1703 memfile block with two copies. Then read the next block into another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1704 fixed-size buffer, create the second list of indexes and copy text from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1705 the two blocks to the memfile block.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1706 7 do_cmdline(): Avoid that the command line is copied to allocated memory
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1707 and freed again later all the time. For while loops, and for when called
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1708 with an argument that can be messed with.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1709 Generic solution: Make a struct that contains a pointer and a flag that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1710 indicates if the pointer should be freed when replaced.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1711 7 Check that the file size is not more than "sizeof(long)".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1712 - Further improve finding mappings in maphash[] in vgetorpeek()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1713 8 Syntax highlighting is slow when deleting lines. Try in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1714 $VIMRUNTIME/filetype.vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1715 - "out of memory" after deleting (1,$d) and changing (:%s/^/> /) a lot of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1716 lines (27000) a few times. Memory fragmentation?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1717 - Have a look at how pdksh does memory allocation (alloc.c). (Dalecki)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1718 - Do profiling on:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1719 - :g/pat/normal cmd
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1720 - 1000ii<Esc>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1721 - deleting 10Mbyte worth of lines (netscape binary)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1722 - "[i" and "[d" (Yegappan Lakshmanan)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1723 - ":g/^/m0" on a 450Kbyte file. And the "u".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1724 - highlighting "~/vim/test/longline.tex", "~/vim/test/scwoop.tcl" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1725 "~/vim/test/lockup.pl".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1726 - loading a syntax file to highlight all words not from a dictionary.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1727 - editing a vim script with syntax highlighting on (loading vim.vim).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1728 7 Screen updating can be further improved by only redrawing lines that were
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1729 changed (and lines after them, when syntax highlighting was used, and it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1730 changed).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1731 - On each change, remember start and end of the change.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1732 - When inserting/deleting lines, remember begin, end, and line count.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1733 - Use macros/duarte/capicua for profiling. Nvi 1.71 is the fastest!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1734 - When using a file with one long line (1Mbyte), then do "$hhhh", is still
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1735 very slow. Avoid calling getvcol() for each "h"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1736 - Executing a register, e.g. "10000@@" is slow, because ins_typebuf has to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1737 move the previous commands forward each time. Pass count from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1738 normal_cmd() down to do_execreg().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1739 - Repeating insert "1000i-<Esc>" displays --INSERT-- all the time, because of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1740 the <Esc> at the end. Make this work faster (disable redrawing).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1741 - Avoid calls to plines() for cursor line, use w_cline_height.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1742 - After ":set nowrap" remove superfluous redraw with wrong hor. offset if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1743 cursor is right of the screen.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1744 8 Make CTRL-C on Unix generate a signal, avoid using select() to check for a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1745 CTRL-C (it's slow).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1746
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1747
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1748 Code size:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1749 8 GUI: When NO_CONSOLE is defined, more code can be excluded.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1750 - Put getline() and cookie in a struct, so only one argument has to be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1751 passed to do_cmdline() and other functions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1752 8 Make a GUI-only version for Unix?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1753 8 In buf_write _() isn't needed when setting errmsg, do it once when using
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1754 it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1755 7 When compiling with a GUI-only version, the code for cterm colors can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1756 left out.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1757 8 When compiled with a GUI-only version, the termcap entries for terminals
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1758 can be removed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1759 8 Can the check for libelf in configure.in be removed?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1760
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1761
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1762 Messages:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1763 8 When using ":q" in a changed file, the error says to "add !". Add the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1764 command so that beginners understand it: "use :q!".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1765 8 For 'verbose' level 12 prints commands from source'ed files. How to skip
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1766 lines that aren't executed? Perhaps move the echoing to do_cmdline()?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1767 8 Use 'report' for ":bdel"? (Krishna) To avoid these messages when using a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1768 script.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1769 8 "vim --version" output goes to stderr, should be stdout. Can all output
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1770 from messages using printf() go to stdout?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1771 - Delete message after new command has been entered and have waited for key.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1772 Perhaps after ten seconds?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1773 - Make message history available in "msg" variables: msg1, msg2, .. msg9.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1774 9 Check handling of overwriting of messages and delays:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1775 Very wrong: errors while redrawing cause endless loop.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1776 When switching to another file and screen scrolls because of the long
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1777 message and return must be typed, don't scroll the screen back before
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1778 redrawing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1779 7 Add an option, which is a regexp, that disables warning messages which
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1780 match that regexp (Tsirkin).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1781 8 When address range is wrong you only get "Invalid range". Be a bit more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1782 specific: Negative, beyond last line, reverse range? Include the text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1783 8 Make it possible to ignore errors for a moment ('errorignore'?). Another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1784 option to switch off giving error messages ('errorquiet'?). Also an option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1785 not to give any messages ('quiet')? Or ":quiet on", ":quiet off".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1786 Careful: For a severe error (out of memory), and when the user starts
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1787 typing, error messages must be switched back on.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1788 Also a flag to ignore error messages for shell commands (for mappings).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1789 - Option to set time for emsg() sleep. Interrupt sleep when key is typed?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1790 sleep before second message?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1791 8 In Ex silent mode or when reading commands from a file, what exactly is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1792 not printed and what is? Check ":print", ":set all", ":args", ":vers",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1793 etc. At least there should be no prompt. (Smulders) And don't clear the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1794 screen when reading commands from stdin. (Kendall)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1795 --> Make a difference between informative messages, prompts, etc. and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1796 error messages, printing text, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1797 8 Window should be redrawn when resizing at the hit-enter prompt.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1798 Also at the ":tselect" prompt. Find a generic solution for redrawing when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1799 a prompt is present (with a callback function?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1800
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1801
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1802 Screen updating:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1803 7 Add a string to the 'display' option to make CTRL-E and CTRL-Y scroll one
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1804 screen line, also if this means the first line doesn't start with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1805 first character (like what happens with a single line that doesn't fit).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1806 - screen_line():
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1807 - insert/delete character stuff.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1808 - improve delete rest of line (spaces at end of line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1809 - When moving or resizing window, try to avoid a complete redraw (esp. when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1810 dragging the status line with the mouse).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1811 - When 'lazyredraw' set, don't echo :ex commands? Need a flag to redraw when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1812 waiting for a character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1813 8 Add a ":refresh [winnr]" command, to force updating a window. Useful from
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1814 an event handler where ":normal" can't be used. Also useful when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1815 'lazyredraw' is set in a mapping.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1816 7 Make 'list' and 'linebreak' work together.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1817
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1818
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1819 Scrolling:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1820 8 Add "zm" command: scroll horizontally to put the cursor in the middle.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1821 6 Add option to set the overlap for CTRL-F and CTRL-B. (Garhi)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1822 - extend 'scrollbind' option: 'scrollopt' words "search", "relative", etc..
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1823 Also 'e'xecute some commands (search, vertical movements) in all bound
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1824 windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1825 7 Add 'scrollbind' feature to make the offset of one window with the next
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1826 one equal to the window height. When editing one file in both windows it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1827 looks like each window displays a page of the buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1828 - Allow scrolling by dragging with the mouse (grab a character and move it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1829 up/down). Like the "hand" in Acrobat reader. Use Alt-LeftMouse for this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1830 (Goldfarb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1831 - Add command to execute some commands (search, vertical movements) in all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1832 bound windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1833 - Add 'search' option to 'scrollopt' to allow 'scrollbind' windows to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1834 be bound by regexp searches
9
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
1835 - Add "z>" and "z<": scroll sideways one screenful. (Campbell)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1836 - Add option to set the number of lines when not to scroll, instead of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1837 fixed number used now (for terminals that scroll slow with a large number
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1838 of lines but not with a single line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1839
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1840
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1841 Autoconf:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1842 8 Should use acconfig.h to define prototypes that are used by autoheader.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1843 8 Some compilers don't give an error for "-OPT:Olimit" but a warning. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1844 Add a check for the warning, so that "Olimit" can be added automatically?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1845 - Autoconf: Use @datadir@ for the system independent files. Make sure the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1846 system dependent and system independent files are separated. (Leitner).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1847 - Add autoconf check for waitpid()/wait4().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1848 - Remove fcntl() from autoconf, all systems have it?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1849 - Set default for 'dictionary', add search for dictionary to autoconf.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1850
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1851
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1852 Perl interface:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1853 8 Rename typemap file to something else?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1854 7 Make buffers accessed as Perl arrays. (Clark)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1855 7 Make it possible to compile with non-ANSI C?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1856 6 Tcl/Tk has the "load" command: load a shared library (.so or .dll).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1857
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1858
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1859 Shared libraries:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1860 6 Add support for loading shared libraries, and calling functions in it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1861 :libload internal-name libname
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1862 :libunload internal-name
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1863 :liblist
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1864 :libcall internal-name function(arg1, arg2, ...)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1865 :libcall function(arg1, arg2, ...)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1866 libcall() can have only one integer or String argument at the moment.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1867 6 Have a look on how Perl handles loading dynamic libraries.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1868
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1869
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1870 Tags:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1871 8 Add a command to jump to a certain kind of tag. Allow the user to specify
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1872 values for the optional fields. E.g., ":tag size type=m".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1873 8 Add a function that returns the line in the tags file for a matching tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1874 Can be used to extract more info (class name, inheritance, etc.) (Rico
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1875 Hendriks)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1876 7 Count before CTRL-]: jump to N'th match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1877 8 Scope arguments for ":tag", e.g.: ":tag class:cPage open", like Elvis.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1878 8 When output of ":tselect" is long, getting the more-prompt, should be able
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1879 to type the tag number directly.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1880 7 Add a tag-select window. Works like ":cwindow". (Michal Malecki)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1881 7 Add the possibility to use the "-t {tag}" argument multiple times. Open a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1882 window for each tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1883 7 Make output of ":tselect" a bit nicer. Use highlighting?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1884 7 Highlight the "tag 1 of >2" message. New highlight group, or same as "hit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1885 bottom" search message.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1886 7 When using ":tag" at the top of the tag stack, should add another entry,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1887 so CTRL-T can bring you back to where you are now AND to where you were
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1888 before the previous ":tag" command. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1889 7 When using CTRL-] on someClass::someMethod, separate class from method and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1890 use ":ta class:someClass someMethod".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1891 Include C++ tags changes (Bertin). Change "class::func" tag into "func"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1892 with "class=class"? Docs in oldmail/bertin/in.xxx.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1893 7 Add ":tagargs", to set values for fields:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1894 :tagargs class:someclass file:version.c
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1895 :tagargs clear
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1896 These are then the default values (changes the order of priority in tag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1897 matching).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1898 7 Support for "gtags" and "global"? With ":rtag" command?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1899 There is an example for how to do this in Nvi.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1900 Or do it like Elvis: 'tagprg' and 'tagprgonce' options. (Yamaguchi)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1901 The Elvis method is far more flexible, do it that way.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1902 7 Support "col:99" extra field, to position the cursor in that column. With
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1903 a flag in 'cpoptions' to switch it off again.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1904 7 Better support for jumping to where a function or variable is used. Use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1905 the id-utils, with a connection to "gid" (Emacs can do it too). Add
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1906 ":idselect", which uses an "ID" database (made by "mkid") like "tselect".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1907
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1908
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1909 Security:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1910 - nothing at the moment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1911
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1912
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1913 Win32 GUI:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1914 8 Make debug mode work while starting up (vim -D). Open console window for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1915 the message and input?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1916 7 The Python interface only works with one version of Python, selected at
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1917 compile time. Can this be made to work with version 2.1 and 2.2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1918 dynamically?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1919 7 GvimExt: when there are several existing Vims, move the list to a submenu.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1920 (Mike McCollister)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1921 8 When using "Edit with Vim" for one file it changes directory, when several
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1922 files are selected and using "Edit with single Vim" the directory isn't
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1923 changed. At least change directory when the path is the same for all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1924 files. Perhaps just use the path of the first file or use the longest
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1925 common part of the path.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1926 8 Add font argument to set the lfCharSet. (Bobcik)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1927 8 Somehow automatically detect the system language and set $LANG, so that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1928 gettext and menus work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1929 8 Could keep console open to run multiple commands, to avoid the need to hit
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1930 return in every console.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1931 Also: Look at how Emacs does runs external commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1932 http://www.cs.washington.edu/homes/voelker/ntemacs.html.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1933 8 Need a separate PopUp menu for modeless selection. Need two new commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1934 Copy selection to clipboard, Paste selection (as typed text).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1935 8 Support copy/paste for other file formats. At least HTML, perhaps RTF.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1936 Add "copy special" and "paste special" commands?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1937 7 Use different default colors, to match the current Windows color scheme.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1938 Sys_WindowText, Sys_Window, etc. (Lionel Schaffhauser)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1939 7 Use <C-Tab> to cycle through open windows (e.g., the find dialog).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1940 7 <Esc> should close a dialog.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1941 7 Keep the console for external commands open. Don't wait for a key to be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1942 hit. Re-open it when the user has closed it anyway. Or use a prepended
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1943 command: ":nowait {cmd}", or ":quiet", which executes {cmd} without any
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1944 prompts.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1945 7 Should be able to set an option so that when you double click a file that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1946 is associated with Vim, you can either get a new instance of Vim, or have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1947 the file added into an already running Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1948 7 The "-P" argument only works for the current codepage. Use wide
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1949 functions to find the window title.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1950
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1951
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1952 GUI:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1953 8 Make inputdialog() work for Photon, Amiga, RiscOS.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1954 - <C--> cannot be mapped. Should be possible to recognize this as a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1955 normal "-" with the Ctrl modifier.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1956 7 Implement ":popup" for other systems than Windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1957 8 Implement ":tearoff" for other systems than Win32 GUI.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1958 6 Implement ":untearoff": hide a torn-off menu.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1959 8 When using the scrollbar to scroll, don't move the cursor position. When
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1960 moving the cursor: scroll to the cursor position.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1961 9 Make <S-Insert> paste from the clipboard by default. (Kunze)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1962 7 Menu local to a buffer, like mappings. Or local to a filetype?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1963 8 In Buffers menu, add a choice whether selecting a buffer opens it in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1964 current window, splits the window or uses ":hide".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1965 8 Dragging the mouse pointer outside of a Vim Window should make the text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1966 scroll. Return a value from gui_send_mouse_event() to the machine
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1967 specific code to indicate the time in which the event should be repeated.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1968 8 Make it possible to ignore a mouse click when it's used to give Vim (gvim)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1969 window focus. Also when a mouse click is used to bring a window to front.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1970 8 Make the split into system independent code and system specific code more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1971 explicit. There are too many #ifdefs in gui.c.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1972 If possible, separate the Vim code completely from the GUI code, to allow
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1973 running them in separate processes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1974 7 X11: Support cursorColor resource and "-cr" argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1975 8 X11 (and others): CTRL-; is not different from ';'. Set the modifier mask
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1976 to include CTRL for keys where CTRL produces the same ASCII code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1977 7 Add some code to handle proportional fonts? Need to draw each character
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1978 separately (like xterm). Also for when a double-width font is not exactly
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1979 double-width. (Maeda)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1980 8 Should take font from xterm where gvim was started (if no other default).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1981 8 Selecting font names in X11 is difficult, make a script or something to
70
088a834ca0aa updated for version 7.0030
vimboss
parents: 56
diff changeset
1982 select one.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1983 8 Visual highlighting should keep the same font (bold, italic, etc.).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1984 8 Add flag to 'guioptions' to not put anything in the clipboard at all?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1985 8 Should support a way to use keys that we don't recognize yet. Add a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1986 command that adds entries to special_keys somehow. How do we make this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1987 portable (X11, Win32, ..)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1988 7 Add a flag to 'guioptions' that tells not to remove inactive menu items.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1989 For systems where greying-out or removing menu items is very slow. The
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1990 menu items would remain visibly normally, but not do anything.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1991 7 Add ":minimize" and ":maximize", which iconize the window and back.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1992 Useful when using gvim to run a script (e.g. 2html.vim).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1993 7 X11: Is it possible to free allocated colors, so that other programs can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1994 use them again? Otherwise, allow disabling allocating the default colors.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1995 Or allocate an own colormap (check UAE). With an option to use it. For
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1996 the commandline, "-install" is mostly used for X11 programs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1997 7 Add command line argument for "gvim" not to start the GUI. Sort of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1998 inverse of "vim -g". (Vikas)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1999 7 Should support multi-column menus.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2000 - Should add option for where to put the "Help" menu: like Motif at the far
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2001 right, or with the other menus (but still at the right).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2002 - Add menu item to "Keep Insert mode".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2003 8 ":mkgvimrc" command, that includes menus.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2004 6 Big change: Move GUI to separate program "vimgui", to make startup of vim a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2005 lot faster, but still be able to do "vim -g" or ":gui".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2006 7 More explicit mouse button binding instead of 'mousemodel'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2007 7 Add option to set the position of the window on the screen. 'windowpos',
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2008 which has a value of "123,456": <x>,<y>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2009 Or add a command, like ":winsize"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2010 7 Add toolbar for more GUIs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2011 8 Make it possible to use "amenu icon=BuiltIn##", so that the toolbar item
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2012 name can be chosen free.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2013 7 Make it possible to put the toolbar on top, left, right and/or bottom of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2014 the window? Allows for softkey-like use.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2015 6 Separate the part of Vim that does the editing from the part that runs the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2016 GUI. Communicate through a pseudo-tty. Vim starts up, creates a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2017 pty that is connected to the terminal. When the GUI starts, the pty is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2018 reconnected to the GUI process. When the GUI stops, it is connected to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2019 the terminal again. Also use the pty for external processes, it looks
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2020 like a vt100 terminal to them. Vim uses extra commands to communicate GUI
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2021 things.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2022 7 Motif: For a confirm() dialog <Enter> should be ignored when no default
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2023 button selected, <Esc> should close the dialog.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2024 - Motif steals <F10> from us, to pop up menus with the keyboard. How do we
36
125e80798a85 updated for version 7.0021
vimboss
parents: 34
diff changeset
2025 get it back if we want it? It's already solved for GTK.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2026 - Paste in Insert mode should not do autowrap etc. Or maybe this should be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2027 changeable with an option?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2028 - Put a nice picture in the icon (but how do we do that?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2029 7 When using a pseudo-tty Vim should behave like some terminal (vt52 looks
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2030 simple enough). Terminal codes to/from shell should be translated.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2031 - Would it be useful to be able to quit the GUI and go back to the terminal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2032 where it was started from?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2033 7 Support "-visual <type>" command line argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2034
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2035
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2036 VMS:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2037 - Improvement: rewrite term/TTY handling.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2038 - Improvement: create VMS GTK runtime libraries on OpenVMS 7.1-2 (today GTK
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2039 works just on 7.3).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2040
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2041
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2042 Autocommands:
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2043 7 For autocommand events that trigger multiple times per buffer (e.g.,
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2044 CursorHold), go through the list once and cache the result for a specific
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2045 buffer. Invalidate the cache when adding/deleting autocommands or
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2046 changing the buffer name.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2047 8 Add ScriptReadCmd event: used to load remote Vim scripts, e.g.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2048 "vim -u http://mach/path/vimrc".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2049 8 Use another option than 'updatetime' for the CursorHold event. The two
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2050 things are unrelated for the user (but the implementation is more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2051 difficult).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2052 8 Also trigger CursorHold in Insert mode?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2053 7 Add autocommand event for when a buffer cannot be abandoned. So that user
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2054 can define the action taking (autowrite, dialog, fail) based on the kind
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2055 of file. (Yakov Lerner) Or is BufLeave sufficient?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2056 8 Can't use ":normal" in CursorHold autocommands. Make the CursorHold event
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2057 insert a special key code, and call the autocommand functions from a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2058 higher level, so that vgetc() isn't used recursively.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2059 8 Autocommands should not change registers. And marks? And the jumplist?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2060 And anything else?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2061 8 Autocommand for when modified files have been found, when getting input
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2062 focus again (e.g., FileChangedFocus).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2063 Check when: getting focus, jumping to another buffer, ...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2064 8 Add autocommands, user functions and user commands to ":mkvimrc".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2065 8 Add "TagJumpFile" autocommand: When jumping to another file for a tag.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2066 Can be used to open "main.c.gz" when "main.c" isn't found.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2067 6 Add KeymapChanged event, so that the effects of a different keymap can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2068 handled (e.g., other font) (Ron Aaron)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2069 7 Add a way to skip an autocommand if going from one *.c file to another *.c
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2070 file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2071 7 When trying to open a directory, don't load the file but trigger an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2072 autocommand event OpenDirectory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2073 7 Add file type in front of file pattern: <d> for directory, <l> for link,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2074 <x> for executable, etc. <&xxx> for Risc OS. With commas to separate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2075 alternatives. The autocommand is only executed when both the file type
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2076 AND the file pattern match. (Leonard)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2077 5 Add option that specifies extensions which are to be discarded from the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2078 file name. E.g. 'ausuffix', with ".gz,.orig". Such that file.c.gz will
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2079 trigger the "*.c" autocommands. (Belabas)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2080 7 Add something to break the autocommands for the current event, and for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2081 what follows. Useful for a "BufWritePre" that wants to avoid writing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2082 file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2083 8 When editing "tt.gz", which is in DOS format, 'fileformat' stays at
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2084 "unix", thus writing the file changes it. Somehow detect that the read
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2085 command used dos fileformat. Same for 'fileencoding'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2086 - Add events to autocommands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2087 Error - When an error happens
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2088 NormalEnter - Entering Normal mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2089 InsertEnter - Entering Insert mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2090 ReplaceEnter - Entering Replace mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2091 CmdEnter - Entering Cmdline mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2092 VisualEnter - Entering Visual mode
11
4424b47a0797 updated for version 7.0003
vimboss
parents: 10
diff changeset
2093 *Leave - Leaving a mode (in pair with the above *Enter)
17
9be87deaeb52 updated for version 7.0009
vimboss
parents: 16
diff changeset
2094 VimLeaveCheck - Before Vim decides to exit, so that it can be cancelled
9be87deaeb52 updated for version 7.0009
vimboss
parents: 16
diff changeset
2095 when exiting isn't a good idea.
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
2096 WinMoved - when windows have been moved around, e.g, ":wincmd J"
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2097 CmdUndefined - Like FuncUndefined but for user commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2098 SearchPost - After doing a search command (e.g. to do "M")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2099 PreDirChanged/PostDirChanged
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2100 - Before/after ":cd" has been used (for changing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2101 window title)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2102 BufReadAction - replaces reading a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2103 BufWriteAction - replaces writing a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2104 ShutDown - when the system is about to shut down
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2105 InsertCharPre - user typed character Insert mode, before inserting the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2106 char. Pattern is matched with text before the cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2107 Set v:char to the character, can be changed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2108 (not triggered when 'paste' is set).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2109 InsertCharPost - user typed a character in Insert mode, after inserting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2110 the char.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2111 BufModified - When a buffer becomes modified, or unmodified (for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2112 putting a [+] in the window title or checking out the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2113 file from CVS).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2114 BufFirstChange - When making a change, when 'modified' is set. Can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2115 used to do a :preserve for remote files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2116 BufChange - after a change was made. Set some variables to indicate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2117 the position and number of inserted/deleted lines, so
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2118 that marks can be updated. HierAssist has patch to add
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2119 BufChangePre, BufChangePost and RevertBuf. (Shah)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2120 WinResized - When a window has been resized
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2121 - Add autocommand to be executed every so many seconds? For writing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2122 file now and then ('autosave').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2123 *'autosave'* *'as'* *'noautosave'* *'noas'*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2124 'autosave' 'aw' number (default 0)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2125 Automatically write the current buffer to file N seconds after the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2126 last change has been made and when |'modified'| is still set.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2127 Default: 0 = do not autosave the buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2128 Alternative: have 'autosave' use 'updatetime' and 'updatecount' but make
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2129 them save the file itself besides the swapfile.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2130
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2131
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2132 Insert mode completion/expansion:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2133 8 When there is no word before the cursor but something like "sys." complete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2134 with "sys.". Works well for C and similar languages.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2135 9 ^X^L completion doesn't repeat correctly. It uses the first match with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2136 the last added line, instead of continuing where the last match ended.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2137 (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2138 8 The code has become too complex. Redesign it, or at least add proper
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2139 comments.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2140 8 Add option to set different behavior for Insert mode completion:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2141 - ignore/match case
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2142 - different characters than 'iskeyword'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2143 8 Add a command to undo the completion, go back to the original text.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2144 8 Use the class information in the tags file to do context-sensitive
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2145 completion. After "foo." complete all member functions/variables of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2146 "foo". Need to search backwards for the class definition of foo.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2147 Should work for C++ and Java.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2148 Even more context would be nice: "import java.^N" -> "io", "lang", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2149 7 When expanding $HOME/dir with ^X^F keep the $HOME (with an option?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2150 7 Add CTRL-X command in Insert mode like CTRL-X CTRL-N, that completes WORDS
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2151 instead of words.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2152 8 Add CTRL-X CTRL-R: complete words from register contents.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2153 8 Add completion of previously inserted texts (like what CTRL-A does).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2154 Requires remembering a number of insertions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2155 8 Add 'f' flag to 'complete': Expand file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2156 Also apply 'complete' to whole line completion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2157 - Make it possible to search include files in several places. Use the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2158 'path' option? Can this be done with the dictionary completion (use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2159 wildcards in the file name)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2160 - Make CTRL-X CTRL-K do a binary search in the dictionary (if it's sorted).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2161 - Speed up CTRL-X CTRL-K dictionary searching (don't use a regexp?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2162 - Set a mark at the position where the match was found (file mark, could
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2163 be in another file).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2164 - Add CTRL-A command in CTRL-X mode: show all matches.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2165 - Make CTRL-X CTRL-L use the 'complete' option?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2166 - Add command in CTRL-X mode to add following words to the completed string
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2167 (e.g. to complete "Pointer->element" with CTRL-X CTRL-P CTRL-W CTRL-W)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2168 - CTRL-X CTRL-F: Use 'path' to find completions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2169 - CTRL-X CTRL-F: Option to use forward slashes on MS-Windows?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2170 - CTRL-X CTRL-F: Don't replace "$VIM" with the actual value. (Kelly)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2171 8 Add option 'isexpand', containing characters when doing expansion (so that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2172 "." and "\" can be included, without changing 'iskeyword'). (Goldfarb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2173 Also: 'istagword': characters used for CTRL-].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2174 When 'isexpand' or 'istagword' are empty, use 'iskeyword'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2175 - Allow listing all matches in some way (and picking one from the list).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2176
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2177
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2178 Command line editing:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2179 7 Add commands (keys) to delete from the cursor to the end of the command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2180 line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2181 8 Custom completion of user commands can't use the standard completion
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2182 functions. Add a hook to invoke a user function that returns the type of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2183 completion to be done: "file", "tag", "custom", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2184 - Add flags to 'whichwrap' for command line editing (cursor right at end of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2185 lines wraps to start of line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2186 - Make editing the command line work like Insert mode in a single-line view
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2187 on a buffer that contains the command line history. But this has many
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2188 disadvantages, only implement it when these can be solved. Elvis has run
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2189 into these, see remarks from Steve (~/Mail/oldmail/kirkendall/in.00012).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2190 - Going back in history and editing a line there would change the history.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2191 Would still need to keep a copy of the history elsewhere. Like the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2192 cmdwin does now already.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2193 - Use CTRL-O to execute one Normal mode command. How to switch to normal
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2194 mode for more commands? <Esc> should cancel the command line. CTRL-T?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2195 - To allow "/" and "= need to recursively call getcmdline(), overwrite the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2196 cmdline. But then we are editing a command-line again. How to avoid
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2197 that the user gets confused by the stack of command lines?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2198 - Use edit() for normal cmdline editing? Would have to integrate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2199 getcmdline() into edit(). Need to solve conflicts between Insert mode
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2200 and Command-line mode commands. Make it work like Korn shell and tcsh.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2201 Problems:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2202 - Insert: completion with 'wildchar'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2203 - Insert: use cmdline abbreviations
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2204 - Insert: CTRL-D deletes indent instead of listing matches
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2205 - Normal: no CTRL-W commands
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2206 - Normal: no ":" commands?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2207 - Normal: allow Visual mode only within one line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2208 - where to show insert/normal mode message? Change highlighting of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2209 character in first column?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2210 - Implementation ideas:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2211 - Set "curwin" and "curbuf" to the command line window and buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2212 - curwin->w_topline is always equal to curwin->w_cursor.lnum.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2213 - never set 'number', no folding, etc. No status line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2214 - sync undo after entering a command line?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2215 - use NV_NOCL flag for commands that are not allowed in Command-line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2216 Mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2217
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2218
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2219 Command line completion:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2220 8 Change expand_interactively into a flag that is passed as an argument.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2221 8 With command line completion after '%' and '#', expand current/alternate
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2222 file name, so it can be edited. Also with modifiers, such as "%:h".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2223 8 When completing command names, either sort them on the long name, or list
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2224 them with the optional part inside [].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2225 7 Completion of ":map x ": fill in the current mapping, so that it can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2226 edited. (Sven Guckes)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2227 7 Add completion for when entering an expression after CTRL-R= and "=.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2228 (Servatius Brandt)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2229 - For 'wildmenu': Simplify "../bar" when possible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2230 - When using <Up> in wildmenu mode for a submenu, should go back to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2231 current menu, not the first one. E.g., ":emenu File.Save<Up>".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2232 8 For ":find" and ":sfind" expand files found in 'path'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2233 8 Add cmdline completion for the ":debug" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2234 8 When using backtick expansion, the external command may write a greeting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2235 message. Add an option or commands to remove lines that match a regexp?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2236 7 When listing matches of files, display the common path separately from the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2237 file names, if this makes the listing shorter. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2238 - Add command line completion for ":ilist" and friends, show matching
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2239 identifiers (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2240 8 Add command line completion for "old value" of a command. ":args <key>"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2241 would result in the current list of arguments, which you can then edit.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2242 7 Add command line completion with CTRL-X, just like Insert mode completion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2243 Useful for ":s/word/xx/".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2244 - Add command to go back to the text as it was before completion started.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2245 Also to be used for <Up> in the command line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2246 - Add 'wildlongest' option: Key to use to find longest common match for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2247 command line completion (default CTRL-L), like 'wildchar'. (Cregut)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2248 Also: when there are several matches, show them line a CTRL-D.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2249 - Add completion for Environment variables: ":echo $SH<Tab>" -> "$SHELL".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2250
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2251
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2252 Command line history:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2253 - Add "KeyWasTyped" flag: It's reset before each command and set when a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2254 character from the keyboard is consumed. Value is used to decide to put a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2255 command line in history or not. Put line in history if it didn't
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2256 completely resulted from one mapping.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2257 - When using ":browse", also put the resulting edit command in the history,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2258 so that it can be repeated. (Demirel)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2259
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2260
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2261 Insert mode:
10
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
2262 9 When 'autoindent' is set, hitting <CR> twice, while there is text after
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
2263 the cursor, doesn't delete the autoindent in the resulting blank line.
4e2284e71352 updated for version 7.0002
vimboss
parents: 9
diff changeset
2264 (Rich Wales) This is Vi compatible, but it looks like a bug.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2265 8 When using CTRL-O in Insert mode, then executing an insert command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2266 "a" or "i", should we return to Insert mode after <Esc>? (Eggink)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2267 Perhaps it can be allowed a single time, to be able to do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2268 "<C-O>10axyz<Esc>". Nesting this further is confusing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2269 ":map <F2> 5aabc<Esc>" works only once from Insert mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2270 7 Use CTRL-G <count> to repeat what follows. Useful for inserting a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2271 character multiple times or repeating CTRL-Y.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2272 7 Use 'matchpairs' for 'showmatch': When inserting a character check if it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2273 appears in the rhs of 'matchpairs'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2274 - In Insert mode (and command line editing?): Allow undo of the last typed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2275 character. This is useful for CTRL-U, CTRL-W, delete and backspace, and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2276 also for characters that wrap to the next line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2277 Also: be able to undo CTRL-R (insert register).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2278 Possibly use 'backspace'="whole" for a mode where at least a <CR> that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2279 inserts autoindent is undone by a single <BS>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2280 - Use CTRL-G in Insert mode for an extra range of commands, like "g" in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2281 Normal mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2282 - Make 'paste' work without resetting other options, but override their
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2283 value. Avoids problems when changing files and modelines or autocommands
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2284 are used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2285 - When typing CTRL-V and a digit higher than 2, only expect two digits.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2286 - Insert binary numbers with CTRL-V b.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2287 - Make it possible to undo <BS>, <C-W> and <C-U>. Bash uses CTRL-Y.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2288
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2289
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2290 'cindent', 'smartindent':
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2291 8 Wrong indent for ":" after a method with line break in arguments:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2292 Foo::Foo (int one,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2293 int two)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2294 : something(4)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2295 {}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2296 8 Wrong indent for ":" after a method with multiple lines:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2297 Foo::Foo (int one, int two)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2298 : something(4),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2299 somethingelse(3)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2300 {}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2301 9 Too much indent for "lulu": (Uwe Zeisberger)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2302 int main ()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2303 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2304 if (lala)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2305 do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2306 ++(*lolo);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2307 while (lili
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2308 && lele);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2309 lulu;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2310 }
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2311 9 Function gets extra indent: (Jamax)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2312 void function(int param) {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2313 if (false)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2314 return;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2315 }
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2316 9 brace not indented correctly:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2317 case 'c': if (cond)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2318 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2319 Should align with "if" in case statement.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2320 7 Allow aligning a closing ")" with the line above, instead of the matching
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2321 "(": (Riehm) if (asdfasdf &&
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2322 asdf
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2323 )
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2324 8 Java: Inside an anonymous class, after an "else" or "try" the indent is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2325 too small. (Vincent Bergbauer)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2326 8 In C++ it's possible to have {} inside (): (Kirshna)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2327 func(
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2328 new String[] {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2329 "asdf",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2330 "asdf"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2331 }
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2332 );
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2333 7 Separate "(0" option into inside/outside a function (Zellner):
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2334 func(
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2335 int x) // indent like "(4"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2336 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2337 if (a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2338 && b) // indent like "(0"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2339 8 Strange problem with this code, "hello" is indented wrong: (Gary Holloway)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2340 main() { char foo[] = "/*";
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2341 /* This is a comment; the indentation of C
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2342 * source below this comment gets messed up due to the string above.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2343 */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2344 hello
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2345 9 Using "{" in a comment: (Helmut Stiegler)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2346 if (a)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2347 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2348 if (b)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2349 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2350 // {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2351 }
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2352 } <-- this is indented incorrect
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2353 9 Wrong indent for cino=(4, removing the (void) fixes it: (Zellner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2354 (void) MyFancyFunction(
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2355 argument);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2356 - Make smartindenting configurable. Add 'sioptions', e.g. '#' setting the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2357 indent to 0 should be switched on/off.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2358 7 Support ANSI style function header, with each argument on its own line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2359 - "[p" and "]p" should use 'cindent' code if it's on (only for the first
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2360 line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2361 - Add option to 'cindent' to set indent for comments outside of {}?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2362 - Make a command to line up a comment after a code line with a previous
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2363 comment after a code line. Can 'cindent' do this automatically?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2364 7 Add 'j' flag to 'formatoptions': Remove comment leader when joining lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2365 - When 'cindent'ing a '}', showmatch is done before fixing the indent. It
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2366 looks better when the indent is fixed before the showmatch. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2367 - Add option to make indenting work in comments too (for commented-out
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2368 code), unless the line starts with "*".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2369 - Don't use 'cindent' when doing formatting with "gq"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2370 - When formatting a comment after some text, insert the '*' for the new line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2371 (indent is correct if 'cindent' is set, but '*' doesn't get inserted).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2372 8 When 'comments' has both "s1:/*,mb:*,ex:*/" and "s1:(*,mb:*,ex:*)", the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2373 'x' flag always uses the first match. Need to continue looking for more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2374 matches of "*" and remember all characters that could end the comment.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2375 - For smartindent: When typing 'else' line it up with matching 'if'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2376 - 'smartindent': allow patterns in 'cinwords', for e.g. TeX files, where
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2377 lines start with "\item".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2378 - Support this style of comments (with an option): (Brown)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2379 /* here is a comment that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2380 is just autoindented, and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2381 nothing else */
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2382 - Add words to 'cinwords' to reduce the indent, e.g., "end" or "fi".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2383 7 Use Tabs for the indent of starting lines, pad with spaces for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2384 continuation lines. Allows changing 'tabstop' without messing up the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2385 indents.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2386 And/or: Add option to copy indent as-is, without changing spaces to tabs.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2387 also for 'autoindent'. 'keeptabs': when set don't change the tabs and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2388 spaces used for indent, when the indent remains the same or increases.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2389
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2390
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2391 Java:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2392 8 Can have {} constructs inside parens. Include changes from Steve
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2393 Odendahl?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2394 8 Recognize "import java.util.Vector" and use $CLASSPATH to find files for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2395 "[i" commands and friends.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2396 - For files found with 'include': handle "*" in included name, for Java.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2397 (Jason)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2398 - How to make a "package java.util" cause all classes in the package to be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2399 searched? Also for "import java.util.*". (Mark Brophy)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2400
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2401
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2402 'comments':
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2403 8 When formatting C comments that are after code, the "*" isn't repeated
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2404 like it's done when there is no code. And there is no automatic wrapping.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2405 Recognize comments that come after code. Should insert the comment leader
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2406 when it's "#" or "//".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2407 7 When using "comments=fg:--", Vim inserts three spaces for a new line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2408 When hitting a TAB, these spaces could be removed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2409 7 The 'n'esting flag doesn't do the indenting of the last (rightmost) item.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2410 6 Make strings in 'comments' option a RE, to be able to match more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2411 complicated things. (Phillipps) Use a special flag to indicate that a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2412 regexp is used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2413 8 Make the 'comments' option with "/* * */" lines only repeat the "*" line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2414 when there is a "/*" before it? Or include this in 'cindent'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2415
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2416
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2417 Virtual edit:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2418 8 Make the horizontal scrollbar work to move the text further left.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2419 7 Add a mode where the cursor is only allowed to go one character after the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2420 end of the line?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2421 7 Allow specifying it separately for Tabs and beyond end-of-line?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2422
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2423
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2424 Text objects:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2425 8 Add test script for text object commands "aw", "iW", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2426 7 Add text object for current search pattern: "a/" and "i/". Makes it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2427 possible to turn text highlighted for 'hlsearch' into a Visual area.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2428 8 Add "gp" and "gP" commands: insert text and make sure there is a single
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2429 space before it, unless at the start of the line, and after it, unless at
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2430 the end of the line or before a ".".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2431 7 Add objects with backwards extension? Use "I" and "A". Thus "2dAs"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2432 deletes the current and previous sentence. (Jens Paulus)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2433 7 Add "g{" and "g}" to move to the first/last character of a paragraph
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2434 (instead of the line just before/after a paragraph as with "{" and "}").
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2435 6 Ignore comment leaders for objects. Make "das" work in reply-email.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2436 5 Make it possible to use syntax group matches as a text object. For
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2437 example, define a "ccItem" group, then do "da<ccItem>" to delete one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2438 Or, maybe just define "dai", delete-an-item, to delete the syntax item the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2439 cursor is on.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2440
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2441
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2442 Select mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2443 8 In blockwise mode, typed characters are inserted in front of the block,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2444 backspace deletes a column before the block. (Steve Hall)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2445 7 Alt-leftmouse starts block mode selection in MS Word.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2446 See http://www.vim.org/tips/tip.php?tip_id=743
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2447 7 Add Cmdline-select mode. Like Select mode, but used on the command line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2448 - Change gui_send_mouse_event() to pass on mouse events when 'mouse'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2449 contains 'C' or 'A'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2450 - Catch mouse events in ex_getln.c. Also shift-cursor, etc., like in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2451 normal_cmd().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2452 - remember start and end of selection in cmdline_info.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2453 - Typing text replaces the selection.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2454
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2455
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2456 Visual mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2457 - When dragging the Visual selection with the mouse and 'scrolloff' is zero,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2458 behave like 'scrolloff' is one, so that the text scrolls when the pointer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2459 is in the top line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2460 8 When using "I" or "A" in Visual block mode, short lines do not get the new
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2461 text. make it possible to add the text to short lines too, with padding
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2462 where needed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2463 7 With a Visual block selected, "2x" deletes a block of double the width,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2464 "3y" yanks a block of triple width, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2465 7 When selecting linewise, using "itext" should insert "text" at the start
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2466 of each selected line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2467 8 What is "R" supposed to do in Visual mode?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2468 8 Make Visual mode local to the buffer. Allow changing to another buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2469 When starting a new Visual selection, remove the Visual selection in any
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2470 other buffer. (Ron Aaron)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2471 8 Support dragging the Visual area to drop it somewhere else. (Ron Aaron,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2472 Ben Godfrey)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2473 7 Support dragging the Visual area to drop it in another program, and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2474 receive dropped text from another program. (Ben Godfrey)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2475 7 With blockwise Visual mode and "c", "C", "I", "A", etc., allow the use of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2476 a <CR>. The entered lines are repeated over the Visual area.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2477 7 CTRL-V :s should substitute only in the block, not to whole lines. (David
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2478 Young is working on this)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2479 7 Filtering a block should only apply to the block, not to the whole lines.
8
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
2480 When the number of lines is increased, add lines. When decreased, pad with
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2481 spaces or delete? Use ":`<,`>" on the command line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2482 8 After filtering the Visual area, make "gv" select the filtered text?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2483 Currently "gv" only selects a single line, not useful.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2484 7 Don't move the cursor when scrolling? Needed when the selection should
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2485 stay the same. Scroll to the cursor at any movement command. With an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2486 option!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2487 7 In Visual block mode, need to be able to define a corner on a position
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2488 that doesn't have text? Also: when using the mouse, be able to select
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2489 part of a TAB. Even more: Add a mode where the cursor can be on a screen
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2490 position where there is no text. When typing, add spaces to fill the gap.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2491 Other solution: Always use curswant, so that you can move the cursor to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2492 the right column, and then use up/down movements to select the line,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2493 without changing the column.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2494 6 ":left" and ":right" should work in Visual block mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2495 7 CTRL-I and CTRL-O should work in Visual mode, but only jump to marks in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2496 current buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2497 7 CTRL-A and CTRL-X should increase/decrease all numbers in the Visual area.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2498 6 In non-Block mode, "I" should insert the same text in front of each line,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2499 before the first non-blank, "gI" in column 1.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2500 6 In non-Block mode, "A" should append the same text after each line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2501 6 ":'<,'>source" should read the selected lines and ":source" them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2502 6 When in blockwise visual selection (CTRL-V), allow cursor to be placed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2503 right of the line. Could also allow cursor to be placed anywhere on a TAB
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2504 or other special character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2505 6 Add commands to move selected text, without deselecting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2506
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2507
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2508 More advanced repeating commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2509 - Add "." command for visual mode: redo last visual command (e.g. ":fmt").
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2510 7 Repeating "d:{cmd}" with "." doesn't work. (Benji Fisher) Somehow remember
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2511 the command line so that it can be repeated?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2512 - Add "." command after operator: repeat last command of same operator. E.g.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2513 "c." will repeat last change, also when "x" used since then (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2514 "y." will repeat last yank.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2515 "c2." will repeat the last but one change?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2516 Also: keep history of Normal mode commands, add command to list the history
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2517 and/or pick an older command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2518 - History stack for . command? Use "g." command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2519
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2520
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2521 Mappings and Abbreviations:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2522 8 Let ":verbose map xx" report where the mapping was set, just like with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2523 ":verbose set".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2524 8 When "0" is mapped (it is a movement command) this mapping should not be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2525 used after typing another number, e.g. "20l". (Charles Campbell)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2526 Is this possible without disabling the mapping of the following command?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2527 8 Should mapping <C-A> and <C-S-A> both work?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2528 7 ":abbr b byte", append "b " to an existing word still expands to "byte".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2529 This is Vi compatible, but can we avoid it anyway?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2530 8 ":verbose map" could show the script where the mapping was defined.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2531 m_script_ID can be used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2532 8 To make a mapping work with a prepended "x to select a register, store the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2533 last _typed_ register name and access it with "&.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2534 8 Add ":amap", like ":amenu".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2535 8 Add ":cab!", abbreviations that only apply to Command-line mode and not to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2536 entering search strings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2537 8 Add a flag to ":abbrev" to eat the character that triggers the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2538 abbreviation. Thus "abb ab xxx" and typing "ab<Space>" inserts "xxx" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2539 not the <Space>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2540 8 Allow mapping of CTRL-@ (anywhere in the LHS).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2541 8 Give a warning when using CTRL-C in the lhs of a mapping. It will never
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2542 (?) work.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2543 7 ":verbose map" should display where a mapping was defined, like ":verbose
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2544 set".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2545 8 Add a way to save a current mapping and restore it later. Use a function
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2546 that returns the mapping command to restore it: mapcmd()? mapcheck() is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2547 not fool proof. How to handle ambiguous mappings?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2548 7 Add <0x8f> (hex), <033> (octal) and <123> (decimal) to <> notation?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2549 7 Allow mapping "Q" and "Q}" at the same time. Need to put a flag with "Q",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2550 that it needs an extra character before it can match. See Vile 'maplonger'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2551 option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2552 7 When someone tries to unmap with a trailing space, and it fails, try
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2553 unmapping without the trailing space. Helps for ":unmap xx | unmap yy".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2554 7 Make it possible to map 'wildchar', but only when it's a special character
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2555 (like CTRL-E). Currently it's only recognized when typed. Useful for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2556 mapping a key to do something and then completion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2557 7 Add a mapping that works always, for remapping the keyboard.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2558 6 Context-sensitive abbreviations: Specify syntax group(s) in which the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2559 abbreviations are to be used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2560 - Add mappings that take arguments. Could work like the ":s" command. For
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2561 example, for a mouse escape sequence:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2562 :mapexp <Esc>{\([0-9]*\),\([0-9]*\); H\1j\2l
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2563 - Make it possible to include a <Nul> in the lhs and rhs of a mapping.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2564 - Add command to repeat a whole mapping ("." only repeats the last change in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2565 a mapping). Also: Repeat a whole insert command, including any mappings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2566 that it included. Sort-of automatic recording?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2567 - Add an option to ":map" that makes it display the special keys in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2568 <> notation (e.g. <CR> instead of ^M). Or just always do this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2569 - Include an option (or flag to 'cpoptions') that makes errors in mappings
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2570 not flush the rest of the mapping (like nvi does).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2571 - Use context sensitiveness of completion to switch abbreviations and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2572 mappings off for :unab and :unmap.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2573 6 When using mappings in Insert mode, insert characters for incomplete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2574 mappings first, then remove them again when a mapping matches. Avoids
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2575 that characters that are the start of some mapping are not shown until you
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2576 hit another character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2577 - Add optional <Number> argument for mappings:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2578 :map <Number>q ^W^W<Number>G
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2579 :map <Number>q<Number>t ^W^W<Number1-1>G<Number2>l
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2580 :map q<Char> :s/<Char>/\u\0/g
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2581 Or implicit:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2582 :map q <Register>d<Number>$
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2583 - Add mappings for replace mode: ":rmap". How do we then enter mappings for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2584 non-replace Insert mode?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2585 - Add separate mappings for Visual-character/block/line mode?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2586 6 Alias for Normal mode commands, works like :substitute? Would allow
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2587 mappings with arguments.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2588 - Add 'mapstop' command, to stop recursive mappings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2589 - List mappings that have a raw escape sequence both with the name of the key
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2590 for that escape sequence (if there is one) and the sequence itself.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2591 - List mappings: Once with special keys listed as <>, once with meta chars as
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2592 <M-a>, once with the byte values (octal?). Sort of "spell mapping" command?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2593 - When entering mappings: Add the possibility to enter meta keys like they
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2594 are displayed, within <>: <M-a>, <~@> or <|a>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2595 - Allow multiple arguments to :unmap.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2596 - Command to show keys that are not used and available for mapping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2597 ":freekeys".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2598 - Allow any character except white space in abbreviations lhs (Riehm).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2599
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2600
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2601 Incsearch:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2602 - Add a limit to the number of lines that are searched for 'incsearch'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2603 - When no match is found and the user types more, the screen is redrawn
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2604 anyway. Could skip that. Esp. if the line wraps and the text is scrolled
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2605 up every time.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2606 - Temporarily open folds to show where the search ends up. Restore the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2607 folds when going to another line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2608 - When incsearch used and hitting return, no need to search again in many
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2609 cases, saves a lot of time in big files. (Slootman wants to work on this?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2610 When not using special characters, can continue search from the last match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2611 (or not at all, when there was no match). See oldmail/webb/in.872.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2612 - With incsearch, use CTRL-N/CTRL-P to go to next/previous match, some other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2613 key to copy matched word to search pattern (Alexander Schmid).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2614
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2615
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2616 Searching:
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2617 7 Add "g/" and "gb" to search for a pattern in the Visually selected text?
f1d2a58883b9 updated for version 7.0024
vimboss
parents: 39
diff changeset
2618 "g?" is already used for rot13.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2619 8 Add a mechanism for recursiveness: "\(([^()]*\@@[^()]*)\)\@r". \@@ stands
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2620 for "go recursive here" and \@r marks the recursive atom.
39
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
2621 7 Add an item stack to allow matching (). One side is "push X on
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2622 the stack if previous atom matched". Other side is "match with top of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2623 stack, pop it when it matches". Use "\@pX" and "\@m"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2624 Example: \((\@p).\{-}\@m\)*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2625 7 Add an option to accept a match at the cursor position. Also for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2626 search(). (Brett)
39
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
2627 7 Add a flag to "/pat/" to discard an error. Useful to continue a mapping
410fa1a31baf updated for version 7.0023
vimboss
parents: 38
diff changeset
2628 when a search fails. Could be "/pat/E" (e is already used for an offset).
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2629 7 Add pattern item to use properties of Unicode characters. In Perl it's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2630 "\p{L}" for a letter. See Regular Expression Pocket Reference.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2631 8 Would it be possible to allow ":23,45/pat/flags" to search for "pat" in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2632 lines 23 to 45? Or does this conflict with Ex range syntax?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2633 8 Allow identical pairs in 'matchpairs'. Restrict the search to the current
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2634 line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2635 7 Allow longer pairs in 'matchpairs'. Use ~/vim/macros/matchit.vim as an
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2636 example.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2637 8 Make it possible to define the character that "%" checks for in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2638 #if/#endif. For nmake it's !if/!endif.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2639 - For "%" command: set hierarchy for which things include other things that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2640 should be ignored (like "*/" or "#endif" inside /* */).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2641 Also: use "%" to jump from start to end of syntax region and back.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2642 Alternative: use matchit.vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2643 8 "/:/e+1" gets stuck on a match at the end of the line. Do we care?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2644 8 A pattern like "\([^a]\+\)\+" takes an awful long time. Recognize that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2645 the recursive "\+" is meaningless and optimize for it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2646 This one is also very slow on "/* some comment */": "^\/\*\(.*[^/]\)*$".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2647 7 Recognize "[a-z]", "[0-9]", etc. and replace them with the faster "\l" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2648 "\d".
24
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
2649 7 Add a way to specify characters in <C-M> or <Key> form. Could be
8ff7fd162d3c updated for version 7.0016
vimboss
parents: 23
diff changeset
2650 \%<C-M>.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2651 8 Flags that apply to the whole pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2652 This works for all places where a regexp is used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2653 Add "\q" to not store this pattern as the last search pattern?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2654 8 Add an argument after ":s/pat/str/" for a range of matches. For example,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2655 ":s/pat/str/#3-4" to replace only the third and fourth "pat" in a line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2656 8 Add an option not to use 'hlsearch' highlighting for ":s" and ":g"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2657 commands. (Kahn) It would work like ":noh" is used after that command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2658 Also: An extra flag to do this once, and a flag to keep the existing
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2659 search pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2660 - Add \%h{group-name}; to search for a specific highlight group.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2661 Add \%s{syntax-group}; to search for a specific syntax group.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2662 - Support Perl regexp. Use PCRE (Perl Compatible RE) package. (Shade)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2663 Or translate the pattern to a Vim one.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2664 Don't switch on with an option for typed commands/mappings/functions, it's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2665 too confusing. Use "\@@" in the pattern, to avoid incompatibilities.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2666 7 Add POSIX regexp, like Nvi, with 'extended' option? It's like very-magic.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2667 - Remember flags for backreferenced items, so that "*" can be used after it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2668 Check with "\(\S\)\1\{3}". (Hemmerling)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2669 - Add flags to search command (also for ":s"?):
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2670 i ignore case
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2671 I use case
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2672 p use Perl regexp syntax (or POSIX?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2673 v use Vi regexp syntax
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2674 f forget pattern, don't keep it for "n" command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2675 F remember pattern, keep it for "n" command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2676 Perl uses these too:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2677 e evaluate the right side as an expression (Perl only)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2678 m multiple line expression (we don't need it)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2679 o compile only once (Perl only)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2680 s single line expression (we don't need it)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2681 x extended regexp (we don't need it)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2682 When used after ":g" command, backslash needed to avoid confusion with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2683 following command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2684 Add 'searchflags' for default flags (replaces 'gdefault').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2685 - Add command to display the last used substitute pattern and last used
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2686 pattern. (Margo) Maybe make it accessible through a register (like "/
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2687 for search string)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2688 7 Use T-search algorithm, to speed up searching for strings without special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2689 characters. See C't article, August 1997.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2690 - Add 'fuzzycase' option, so that case doesn't matter, and '-' and '_' are
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2691 equivalent (for Unix filenames).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2692 - Add 'v' flag to search command: enter Visual mode, with the matching text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2693 as Visual area. (variation on idea from Bertin)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2694 - Searching: "/this//that/" should find "that" after "this".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2695 - Add global search commands: Instead of wrapping at the end of the buffer,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2696 they continue in another buffer. Use flag after search pattern:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2697 a for the next file in the argument list
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2698 f for file in the buffer list
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2699 w for file edited in a window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2700 e.g. "/pat/f". Then "n" and "N" work through files too. "f" flag also for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2701 ":s/pat/foo/f"??? Then when 'autowrite' and 'hidden' are both not set, ask
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2702 before saving files: "Save modified buffer "/path/file"? (Yes/Hide/No
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2703 Save-all/hide-All/Quit) ".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2704 - ":s/pat/foo/3": find 3rd match of "pat", like sed. (Thomas Koehler)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2705 7 When searching with 'n' give message when getting back where the search
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2706 first started. Remember start of search in '/ mark.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2707 7 Add option that scrolls screen to put cursor in middle of screen after
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2708 search always/when off-screen/never. And after a ":tag" command. Maybe
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2709 specify how many lines below the screen causes a redraw with the cursor in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2710 the middle (default would be half a screen, zero means always).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2711 6 Support multiple search buffers, so macros can be made without side
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2712 effects.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2713 7 From xvim: Allow a newline in search patterns (also for :s, can delete
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2714 newline). Add BOW, EOW, NEWL, NLORANY, NLBUTANY, magic 'n' and 'r', etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2715 [not in xvim:] Add option to switch on matches crossing ONE line boundary.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2716 7 Add ":iselect", a combination of ":ilist" and ":tselect". (Aaron)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2717 Also ":dselect".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2718
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2719
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2720 Undo:
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
2721 - Make it possible to undo all the commands from a mapping, including a
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
2722 trailing unfinished command, e.g. for ":map K iX^[r".
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2723 - When accidentally hitting "R" instead of Ctrl-R, further Ctrl-R is not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2724 possible, even when typing <Esc> immediately. (Grahn) Also for "i", "a",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2725 etc. Postpone saving for undo until something is really inserted?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2726 8 When Inserting a lot of text, it can only be undone as a whole. Make undo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2727 sync points at every line or word. Could recognize the start of a new
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2728 word (white space and then non-white space) and backspacing.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2729 Can already use CTRL-G u, but that requires remapping a lot of things.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2730 8 Make undo more memory-efficient: Compare text before and after change,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2731 only remember the lines that really changed.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2732 7 Add undo for a range of lines. Can change these back to a previous
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2733 version without changing the rest of the file. Stop doing this when a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2734 change includes only some of these lines and changes the line count. Need
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2735 to store these undo actions as a separate change that can be undone.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2736 - For u_save() include the column number. This can be used to set '[ and '].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2737 And in the future the undo can be made more efficient (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2738 - In out-of-memory situations: Free allocated space in undo, and reduce the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2739 number of undo levels (with confirmation).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2740 - Instead of [+], give the number of changes since the last write: [+123].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2741 When undoing to before the last write, change this to a negative number:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2742 [-99].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2743 - With undo with simple line delete/insert: optimize screen updating.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2744 - When executing macro's: Save each line for undo only once.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2745 - Store undo info in a file that survives until the next edit. Then it's
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2746 possible to undo to before the current editing session. Combined with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2747 viminfo?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2748 - When doing a global substitute, causing almost all lines to be changed,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2749 undo info becomes very big. Put undo info in swap file??
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2750
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2751
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2752 Buffer list:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2753 7 Command to execute a command in another buffer: ":inbuf {bufname} {cmd}".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2754 Also for other windows: ":inwin {winnr} {cmd}". How to make sure that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2755 this works properly for all commands, and still be able to return to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2756 current buffer/window? E.g.: ":inbuf xxx only".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2757 8 Add File.{recent_files} menu entries: Recently edited files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2758 Ron Aaron has a plugin for this: mru.vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2759 8 Unix: Check all uses of fnamecmp() and fnamencmp() if they should check
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2760 inode too.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2761 7 Add another number for a buffer, which is visible for the user. When
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2762 creating a new buffer, use the lowest number not in use. (or the highest
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2763 number in use plus one?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2764 7 Offer some buffer selection from the command line? Like using ":ls" and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2765 asking for a buffer number. (Zachmann)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2766 - When starting to edit a file that is already in the buffer list, use the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2767 file name argument for the new short file name. (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2768 - Add an option to make ":bnext" and ":bprev" wrap around the end of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2769 buffer list. Also for ":next" and ":prev"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2770 7 Add argument to ":ls" which is a pattern for buffers to list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2771 E.g. ":ls *.c". (Thompson)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2772 7 Add expansion of buffer names, so that "*.c" is expanded to all buffer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2773 names. Needed for ":bdel *.c", ":bunload *.c", etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2774 8 Support for <afile> where a buffer name is expected.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2775 8 Some commands don't use line numbers, but buffer numbers. '$'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2776 should then mean the number of the last buffer. E.g.: "4,$bdel".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2777 7 Add an option to mostly use slashes in file names. Separately for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2778 internal use and for when executing an external program?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2779
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2780
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2781 Swap (.swp) files:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2782 8 If writing to the swap file fails, should try to open one in another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2783 directory from 'dir'. Useful in case the file system is full and when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2784 there are short file name problems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2785 8 Also use the code to try using a short file name for the backup and swap
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2786 file for the Win32 and Dos 32 bit versions.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2787 8 When a file is edited by root, add $LOGNAME to know who did su.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2788 8 When the edited file is a symlink, try to put the swap file in the same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2789 dir as the actual file. Adjust FullName(). Avoids editing the same file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2790 twice (e.g. when using quickfix). Also try to make the name of the backup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2791 file the same as the actual file?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2792 Use the code for resolve()?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2793 7 When using 64 bit inode numbers, also store the top 32 bits. Add another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2794 field for this, using part of bo_fname[], to keep it compatible.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2795 7 When editing a file on removable media, should put swap file somewhere
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2796 else. Use something like 'r' flag in 'viminfo'. 'diravoid'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2797 Also: Be able to specify minimum disk space, skip directory when not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2798 enough room.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2799 7 Add a configure check for which directory should be used: /tmp, /var/tmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2800 or /var/preserve.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2801 - Add an option to create a swap file only when making the first change to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2802 the buffer. (Liang) Or only when the buffer is not read-only.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2803 - Add option to set "umask" for backup files and swap files (Antwerpen).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2804 'backupumask' and 'swapumask'? Or 'umaskback' and 'umaskswap'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2805 - When editing a readonly file, don't use a swap file but read parts from the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2806 original file. Also do this when the file is huge (>'maxmem'). We do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2807 need to load the file once to count the number of lines? Perhaps keep a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2808 cached list of which line is where.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2809
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2810
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2811 Viminfo:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2812 7 Can probably remove the code that checks for a writable viminfo file,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2813 because we now do the chown() for root, and others can't overwrite someone
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2814 else's viminfo file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2815 8 Add argument to keep the list of buffers when Vim is started with a file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2816 name. (Schild)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2817 8 Keep the last used directory of the file browser (File/Open menu).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2818 8 Remember the last used register for "@@".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2819 8 Remember a list of last accessed files. To be used in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2820 "File.Open Recent" menu. Default is to remember 10 files or so.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2821 Also remember which files have been read and written. How to display
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2822 this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2823 7 Also store the ". register (last inserted text).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2824 7 Make it possible to store buffer names in viminfo file relative to some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2825 directory, to make them portable over a network. (Aaron)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2826 6 Store a snapshot of the currently opened windows. So that when quitting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2827 Vim, and then starting again (without a file name argument), you see the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2828 same files in the windows. Use ":mksession" code?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2829 - Make marks present in .viminfo usable as file marks: Display a list of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2830 "last visited files" and select one to jump to.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2831
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2832
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2833 Modelines:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2834 8 Before trying to execute a modeline, check that it looks like one (valid
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2835 option names). If it's very wrong, silently ignore it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2836 Ignore a line that starts with "Subject: ".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2837 - When an option value is coming from a modeline, do not carry it over to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2838 another edited file? Would need to remember the value from before the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2839 modeline setting.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2840 - Allow setting a variable from a modeline? Only allow using fixed strings,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2841 no function calls, to avoid a security problem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2842 - Allow ":doauto BufRead x.cpp" in modelines, to execute autocommands for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2843 .cpp files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2844 - Support the "abbreviate" command in modelines (Kearns). Careful for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2845 characters after <Esc>, that is a security leak.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2846 - Add option setting to ask user if he wants to have the modelines executed
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2847 or not. Same for .exrc in local dir.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2848
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2849
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2850 Options:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2851 8 Make ":mksession" store buffer-specific options for the specific buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2852 8 With ":mksession" always store the 'sessionoptions' option, even when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2853 "options" isn't in it. (St-Amant)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2854 7 Setting an option always sets "w_set_curswant", while this is only
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2855 required for a few options. Only do it for those options to avoid the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2856 side effect.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2857 8 When using ":mksession", also store a command to reset all options to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2858 their default value, before setting the options that are not at their
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2859 default value.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2860 8 Should ":mksession" restore the current directory when writing the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2861 session, or the directory where the session file is? Probably need a word
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2862 in 'sessionoptions' to make a choice:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2863 "curdir" (cd to current directory when session file was generated)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2864 "sessiondir" (cd to directory of session file)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2865 "nodir" (don't cd at all)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2866 8 Make "old" number options that really give a number of effects into string
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2867 options that are a comma separated list. The old number values should
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2868 also be supported.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2869 8 Add commands to save and restore an option, which also preserves the flag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2870 that marks if the option was set. Useful to keep the effect of setting
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2871 'compatible' after ":syntax on" has been used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2872 7 There is 'titleold', why is there no 'iconold'? (Chazelas)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2873 7 Make 'scrolloff' a global-local option, so that it can be different in the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2874 quickfix window, for example. (Gary Holloway)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2875 7 Add plugins for formatting. Should be able to make a choice depending on
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2876 the language of a file (English/Korean/Japanese/etc.).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2877
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2878
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2879 External commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2880 8 When filtering text, redirect stderr so that it can't mess up the screen
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2881 and Vim doesn't need to redraw it. Also for ":r !cmd".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2882 4 Set separate shell for ":sh", piping "range!filter", reading text "r !ls"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2883 and writing text "w !wc". (Deutsche) Allow arguments for fast start (e.g.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2884 -f).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2885 4 Allow direct execution, without using a shell.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2886 4 Run an external command in the background. But how about I/O in the GUI?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2887 Careful: don't turn Vim into a shell!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2888 4 Add feature to disable using a shell or external commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2889
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2890
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2891 Multiple Windows:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2892 7 "vim -oO file ..." use both horizontal and vertical splits.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2893 8 Add CTRL-W T: go to the top window in the column of the current window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2894 And CTRL-W B: go to bottom window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2895 7 Use CTRL-W <Tab>, like alt-tab, to switch between buffers. Repeat <Tab>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2896 to select another buffer (only loaded ones?), <BS> to go back, <Enter> to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2897 select buffer, <Esc> to go back to original buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2898 7 Add a 'winfixwidth' option, similar to 'winfixheight'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2899 6 Add an option to resize the shell when splitting and/or closing a window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2900 ":vsp" would make the shell wider by as many columns as needed for the new
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2901 window. Specify a maximum size (or use the screen size). ":close" would
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2902 shrink the shell by as many columns as come available. (Demirel)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2903 7 When starting Vim several times, instantiate a Vim server, that allows
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2904 communication between the different Vims. Feels like one Vim running with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2905 multiple top-level windows. Esp. useful when Vim is started from an IDE
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2906 too. Requires some form of inter process communication.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2907 - Support a connection to an external viewer. Could call the viewer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2908 automatically after some seconds of non-activity, or with a command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2909 Allow some way of reporting scrolling and cursor positioning in the viewer
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2910 to Vim, so that the link between the viewed and edited text can be made.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2911
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2912
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2913 Marks:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2914 8 When cursor is first moved because of scrolling, set a mark at this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2915 position. (Rimon Barr) Use '-.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2916 8 Add a command to jump to a mark and make the motion inclusive. g'm and g`m?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2917 8 The '" mark is set to the first line, even when doing ":next" a few times.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2918 Only set the '" mark when the cursor was really moved in a file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2919 8 Make `` and '', which would position the new cursor position in the middle
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2920 of the window, restore the old topline (or relative position) from when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2921 the mark was set.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2922 7 Make a list of file marks in a separate window. For listing all buffers,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2923 matching tags, errors, etc. Normal commands to move around. Add commands
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2924 to jump to the mark (in current window or new window). Start it with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2925 ":browse marks"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2926 6 Add a menu that lists the Marks like ":marks". (Amerige)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2927 7 For ":jumps", ":tags" and ":marks", for not loaded buffers, remember the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2928 text at the mark. Highlight the column with the mark.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2929 7 Highlight each mark in some way (With "Mark" highlight group).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2930 Or display marks in a separate column, like 'number' does.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2931 7 Use d"m to delete rectangular area from cursor to mark m (like Vile's \m
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2932 command).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2933 7 Try to keep marks in the same position when:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2934 - replacing with a line break, like in ":s/pat/^M/", move marks after the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2935 line break column to the next line. (Acevedo)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2936 - inserting/deleting characters in a line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2937 5 Include marks for start/end of the current word and section. Useful in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2938 mappings.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2939 6 Add "unnamed mark" feature: Like marks for the ":g" command, but place and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2940 unplace them with commands before doing something with the lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2941 Highlight the marked lines somehow.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2942
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2943
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2944 Digraphs:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2945 7 Make "ga" show the digraph for a character, if it exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2946 Also the keymap?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2947 - Make it possible to enter "r<C-E>" and "r<C-Y>" (get character from line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2948 below/above).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2949 - Use digraph table to tell Vim about the collating sequence of special
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2950 characters?
26
404aac550f35 updated for version 7.0017
vimboss
parents: 24
diff changeset
2951 8 Add command to remove one or more (all) digraphs. (Brown)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2952 7 Support different sets of digraphs (depending on the character set?). At
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2953 least Latin1/Unicode, Latin-2, MS-DOS (esp. for Win32).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2954
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2955
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2956 Writing files:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2957 - In vim_rename(), should lock "from" file when deleting "to" file for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2958 systems other than Amiga. Avoids problems with unexpected longname to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2959 shortname conversion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2960 8 write mch_isdevice() for Amiga, Mac, VMS, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2961 8 When appending to a file, Vim should also make a backup and a 'patchmode'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2962 file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2963 8 'backupskip' doesn't write a backup file at all, a bit dangerous for some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2964 applications. Add 'backupelsewhere' to write a backup file in another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2965 directory? Or add a flag to 'backupdir'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2966 7 The 'directory' option supports changing path separators to "%" to make
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2967 file names unique, also support this for 'backupdir'. (Mikolaj Machowski)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2968 6 Add an option to write a new, numbered, backup file each time. Like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2969 'patchmode', e.g., 'backupmode'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2970 6 Make it possible to write 'patchmode' files to a different directory.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2971 E.g., ":set patchmode=~/backups/*.orig". (Thomas)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2972 6 Add an option to prepend something to the backup file name. E.g., "#".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2973 Or maybe allow a function to modify the backup file name?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2974 8 Only make a backup when overwriting a file for the first time. Avoids
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2975 losing the original when writing twice. (Slootman)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2976 7 On non-Unix machines, also overwrite the original file in some situations
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2977 (file system full, it's a link on an NFS partition).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2978 7 When editing a file, check that it has been change outside of Vim more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2979 often, not only when writing over it. E.g., at the time the swap file is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2980 flushed. Or every ten seconds or so (use the time of day, check it before
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2981 waiting for a character to be typed).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2982 8 When a file was changed since editing started, show this in the status
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2983 line of the window, like "[time]".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2984 Make it easier to reload all outdated files that don't have changes.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2985 Automatic and/or with a command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2986
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2987
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2988 Substitute:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2989 8 Make it easier to replace in all files in the argument list. E.g.:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2990 ":argsub/oldword/newword/". Works like ":argdo %s/oldword/newword/g|w".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2991 - :s///p prints the line after a substitution.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2992 - With :s///c replace \&, ~, etc. when showing the replacement pattern.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2993 8 With :s///c allow scrolling horizontally when 'nowrap' is effective.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2994 Also allow a count before the scrolling keys.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2995 - Add number option to ":s//2": replace second occurrence of string? Or:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2996 :s///N substitutes N times.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2997 - Add answers to ":substitute" with 'c' flag, used in a ":global", e.g.:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2998 ":g/pat1/s/pat2/pat3/cg": 'A' do all remaining replacements, 'Q' don't do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2999 any replacements, 'u' undo last substitution.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3000 7 Substitute in a block of text. Use {line}.{column} notation in an Ex
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3001 range, e.g.: ":1.3,$.5s" means to substitute from line 1 column 3 to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3002 last line column 5.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3003 5 Add commands to bookmark lines, display bookmarks, remove bookmarks,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3004 operate on lines with bookmarks, etc. Like ":global" but with the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3005 possibility to keep the bookmarks and use them with several commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3006 (Stanislav Sitar)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3007
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3008
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3009 Mouse support:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3010 8 Add 'o' flag to 'mouse'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3011 7 Be able to set a 'mouseshape' for the popup menu.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3012 8 Add 'mouse' flag, which sets a behavior like Visual mode, but automatic
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3013 yanking at the button-up event. Or like Select mode, but typing gets you
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3014 out of Select mode, instead of replacing the text. (Bhaskar)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3015 7 Checkout sysmouse() for FreeBSD console mouse support.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3016 - Implement mouse support for the Amiga console.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3017 - Using right mouse button to extend a blockwise selection should attach to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3018 the nearest corner of the rectangle (four possible corners).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3019 - Precede mouse click by a number to simulate double clicks?!?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3020 - When mouse click after 'r' command, get character that was pointed to.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3021
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3022
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3023 Crypt and security:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3024 8 Also crypt the swapfile, each block separately. Change mf_write() and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3025 mf_read(). How to get b_p_key to these functions?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3026
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3027
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3028 Argument list:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3029 6 Add command to put all filenames from the tag files in the argument list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3030 When given an argument, only use the files where that argument matches
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3031 (like `grep -l ident`) and jump to the first match.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3032 6 Add command to form an args list from all the buffers?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3033
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3034
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3035 Registers:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3036 8 Don't display empty registers with ":display". (Etienne)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3037 8 Make the # register writable, so that it can be restored after jumping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3038 around in windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3039 8 Add put command that overwrites existing text. Should also work for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3040 blocks. Useful to move text around in a table. Works like using "R ^R r"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3041 for every line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3042 6 When yanking into the unnamed registers several times, somehow make the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3043 previous contents also available (like it's done for deleting). What
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3044 register names to use? g"1, g"2, etc.?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3045 - When appending to a register, also report the total resulting number of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3046 lines. Or just say "99 more lines yanked", add the "more".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3047 - When inserting a register in Insert mode with CTRL-R, don't insert comment
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3048 leader when line wraps?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3049 - The ":@r" commands should take a range and execute the register for each
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3050 line in the range.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3051 - Add "P" command to insert contents of unnamed register, move selected text
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3052 to position of previous deleted (to swap foo and bar in " + foo")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3053 8 Should be able to yank and delete into the "/ register.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3054 How to take care of the flags (offset, magic)?
8
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
3055
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3056
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3057 Debug mode:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3058 7 Add something to enable debugging when a remote message is received.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3059 8 Add breakpoints for setting an option
9
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3060 8 Add breakpoints for assigning to a variable.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3061 7 Add a watchpoint in the debug mode: An expression that breaks execution
23
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
3062 when evaluating to non-zero. Add the "watchadd expr" command, stop when
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
3063 the value of the expression changes. ":watchdel" deletes an item,
3f44e9abe4ec updated for version 7.0015
vimboss
parents: 22
diff changeset
3064 ":watchlist" lists the items. (Charles Campbell)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3065 7 Store the history from debug mode in viminfo.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3066 7 Make the debug mode history available with histget() et al.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3067
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3068
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3069 Various improvements:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3070 8 Add ":rename" command: rename the file of the current buffer and rename
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3071 the buffer. Buffer may be modified.
41
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
3072 - Perhaps ":cexpr" could read errors from a list?
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
3073 Add %b to 'errorformat': buffer number. (Yegappan Lakshmanan / Suresh
f529edb9bab3 updated for version 7.0025
vimboss
parents: 40
diff changeset
3074 Govindachar)
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3075 6 In the quickfix window statusline add the command used to get the list of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3076 errors, e.g. ":make foo", ":grep something *.c".
22
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
3077 7 Add a ":cstring" command. Works like ":cfile" but reads from a string
cc049b00ee70 updated for version 7.0014
vimboss
parents: 21
diff changeset
3078 variable. Also accept a list variable?
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3079 6 Python interface: add vim.message() function. (Michal Vitecek, 2002 Nov 5)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3080 7 Support using ":vert" with User commands. Add expandable items <vert>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3081 Do the same for ":browse" and ":confirm"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3082 For ":silent" and ":debug" apply to the whole user command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3083 7 Allow a window not to have a statusline. Makes it possible to use a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3084 window as a buffer-tab selection.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3085 7 Add an invisible buffer which can be edited. For use in scripts that want
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3086 to manipulate text without changing the window layout.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3087 8 Add a command to revert to the saved version of file; undo or redo until
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3088 all changes are gone.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3089 7 Add a ":cpfile", go in the other direction as ":cnfile".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3090 6 "vim -q -" should read the list of errors from stdin. (Gautam Mudunuri)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3091 8 Add "--remote-fail": When contacting the server fails, exit Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3092 Add "--remote-self": When contacting the server fails, do it in this Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3093 Overrules the default of "--remote-send" to fail and "--remote" to do it
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3094 in this Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3095 8 When Vim was started without a server, make it possible to start one, as
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3096 if the "--servername" argument was given. ":startserver <name>"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3097 8 No address range can be used before the command modifiers. This makes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3098 them difficult to use in a menu for Visual mode. Accept the range and
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3099 have it apply to the following command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3100 8 Add the possibility to set 'fileformats' to force a format and strip other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3101 CR characters. For example, for "dos" files remove CR characters at the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3102 end of the line, so that a file with mixed line endings is cleaned up.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3103 To just not display the CR characters: Add a flag to 'display'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3104 7 Some compilers give error messages in which the file name does not have a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3105 path. Be able to specify that 'path' is used for these files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3106 7 Xterm sends <Esc>O3F for <M-End>. Similarly for other <M-Home>, <M-Left>,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3107 etc. Combinations of Alt, Ctrl and Shift are also possible. Recognize
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3108 these to avoid inserting the raw byte sequence, handle like the key
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3109 without modifier (unless mapped).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3110 8 Add ":breakdel *": delete all breakpoints.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3111 7 Support ":browse edit" in console, using explorer.vim?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3112 6 Add "gG": like what "gj" is to "j": go to the N'th window line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3113 8 Add command like ":normal" that accepts <Key> notation like ":map".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3114 9 Support ACLs on more systems.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3115 7 Add ModeMsgVisual, ModeMsgInsert, etc. so that each mode message can be
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3116 highlighted differently.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3117 8 Allow using "**" as a wildcard in commands like ":next" and ":args".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3118 7 Add a message area for the user. Set some option to reserve space (above
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3119 the command line?). Use an ":echouser" command to display the message
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3120 (truncated to fit in the space).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3121 7 Add %s to 'keywordprg': replace with word under the cursor. (Zellner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3122 8 Support printing on Unix. Can use "lpansi.c" as an example. (Bookout)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3123 8 Add put command that replaces the text under it. Esp. for blockwise
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3124 Visual mode.
8
7edf9b6e4c36 Various changes
vimboss
parents: 7
diff changeset
3125 7 Enhance termresponse stuff: Add t_CV(?): pattern of term response, use
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3126 regexp: "\e\[[>?][0-9;]*c", but only check just after sending t_RV.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3127 7 Add "g|" command: move to N'th column from the left margin (after wrapping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3128 and applying 'leftcol'). Works as "|" like what "g0" is to "0".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3129 7 Support setting 'equalprg' to a user function name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3130 7 Highlight the characters after the end-of-line differently.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3131 7 When 'whichwrap' contains "l", "$dl" should join lines?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3132 8 Add an argument to configure to use $CFLAGS and not modify it? (Mooney)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3133 8 Enabling features is a mix of configure arguments and defines in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3134 feature.h. How to make this consistent? Feature.h is required for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3135 non-unix systems. Perhaps let configure define CONF_XXX, and use #ifdef
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3136 CONF_XXX in feature.h? Then what should min-features and max-features do?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3137 8 Add "g^E" and "g^Y", to scroll a screen-full line up and down.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3138 6 Add ":timer" command, to set a command to be executed at a certain
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3139 interval, or once after some time has elapsed. (Aaron)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3140 8 Add ":confirm" handling in open_exfile(), for when file already exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3141 8 Use confirm/dialog stuff to ask the user, when a file has changed outside
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3142 of Vim, if he wants to reload it. Triggered when focus gained, after
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3143 shell command, when entering another buffer, etc..
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3144 Also do this when editing a new file, and another application creates
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3145 the file before doing ":w" in Vim.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3146 Also check if the file protection has changed. When checking a file into
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3147 RCS it is made read-only, when checking out it is made read-write.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3148 8 When quitting with changed files, make the dialog list the changed file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3149 and allow "write all", "discard all", "write some". The last one would
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3150 then ask "write" or "discard" for each changed file. Patch in HierAssist
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3151 does something like this. (Shah)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3152 7 Use growarray for replace stack.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3153 7 Have a look at viH (Hellenic or Greek version of Vim). But a solution
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3154 outside of Vim might be satisfactory (Haritsis).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3155 3 Make "2d%" work like "d%d%" instead of "d2%"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3156 8 Make "more" prompt accept command characters, like "hit-enter" prompt?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3157 Or extend it with more commands, like "less": 'b' for back, 'j' for one
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3158 line down, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3159 8 For the "--more--" prompt, support the 'b'ack command for more commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3160 Possible implementation: Do it at a very low level, caching the lines that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3161 are on the screen (with highlight attributes). Avoids that changes have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3162 to be made for all functions that list something.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3163 7 "g CTRL-O" jumps back to last used buffer. Skip CTRL-O jumps in the same
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3164 buffer. Make jumplist remember the last ten accessed buffers?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3165 - Keep a list of most recently used files for each window, use "[o" to go
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3166 back (older file) and "]n" to go forward (newer file) (like ^O and ^I for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3167 jumps) (Webb). Use ":files" and ":ls" to list the files in history order.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3168 7 Add a history of recently accessed buffer. Maybe make "2 CTRL-^" jump to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3169 the 2nd previously visited buffer, "3 CTRL-^" to the third, etc. Or use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3170 "3 g CTRL-^" for this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3171 - Add code to disable the CAPS key when going from Insert to Normal mode.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3172 - Set date/protection/etc. of the patchfile the same as the original file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3173 - Use growarray for termcodes[] in term.c
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3174 - Add <window-99>, like <cword> but use filename of 99'th window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3175 7 Add a way to change an operator to always work characterwise-inclusive
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3176 (like "v" makes the operator characterwise-exclusive). "x" could be used.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3177 - Make a set of operations on list of names: expand wildcards, replace home
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3178 dir, append a string, delete a string, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3179 - Remove mktemp() and use tmpname() only? Ctags does this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3180 - When replacing environment variables, and there is one that is not set,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3181 turn it into an empty string? Only when expanding options? (Hiebert)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3182 - Option to set command to be executed instead of producing a beep (e.g. to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3183 call "play newbeep.au").
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3184 - Add option to show the current function name in the status line. More or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3185 less what you find with "[[k", like how 'cindent' recognizes a function.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3186 (Bhatt).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3187 - "[r" and "]r": like "p" and "P", but replace instead of insert (esp. for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3188 blockwise registers).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3189 - Add 'timecheck' option, on by default. Makes it possible to switch off the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3190 timestamp warning and question. (Dodt).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3191 - Add an option to set the time after which Vim should check the timestamps
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3192 of the files. Only check when an event occurs (e.g., character typed,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3193 mouse moved). Useful for non-GUI versions where keyboard focus isn't
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3194 noticeable.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3195 9 When using ":w <fname>" it's possible that this file is loaded in another
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3196 buffer. Give a warning right away, don't wait for a shell command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3197 - Make 'smartcase' work even though 'ic' isn't set (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3198 7 When formatting text, allow to break the line at a number of characters.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3199 Use an option for this: 'breakchars'? Useful for formatting Fortran code.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3200 - Add flag to 'formatoptions' to be able to format book-style paragraphs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3201 (first line of paragraph has larger indent, no empty lines between
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3202 paragraphs). Complements the '2' flag. Use '>' flag when larger indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3203 starts a new paragraph, use '<' flag when smaller indent starts a new
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3204 paragraph. Both start a new paragraph on any indent change.
21
db5102f7e29f updated for version 7.0013
vimboss
parents: 20
diff changeset
3205 7 Add a way to define an item list with a pattern in 'formatoptions'. The
db5102f7e29f updated for version 7.0013
vimboss
parents: 20
diff changeset
3206 'n' flag doesn't work for "6.3" or "6a.".
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3207 8 Add 'formatexpr' option: Used for formatting operator "gq" instead of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3208 builtin formatting or 'formatprg'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3209 8 Allow using a trailing space to signal a paragraph that continues on the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3210 next line (MIME text/plain; format=flowed, RFC 2646). Can be used for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3211 continuous formatting. Could use 'autoformat' option, which specifies a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3212 regexp which triggers auto-formatting (for one line).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3213 ":set autoformat=\\s$".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3214 - Be able to redefine where a sentence stops. Use a regexp pattern?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3215 7 Add command "g)" to go to the end of a sentence, "g(" to go back to the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3216 end of a sentence. (Servatius Brandt)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3217 - Be able to redefine where a paragraph starts. For "[[" where the '{' is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3218 not in column 1.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3219 6 Add ":cdprev": go back to the previous directory. Need to remember a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3220 stack of previous directories. We also need ":cdnext".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3221 7 Should ":cd" for MS-DOS go to $HOME, when it's defined?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3222 - Make "gq<CR>" work on the last line in the file. Maybe for every operator?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3223 8 findmatchlimit() should be able to skip comments. Solves problem of
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3224 matching the '{' in /* if (foo) { */ (Fiveash)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3225 - Add more redirecting of Ex commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3226 :redir @> register (append)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3227 :redir # bufname
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3228 :redir #> bufname (append)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3229 :redir = variable
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3230 :redir => variable (append)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3231 - Setting of options, specifically for a buffer or window, with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3232 ":set window.option" or ":set buffer.option=val". Or use ":buffer.set".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3233 Also: "buffer.map <F1> quit".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3234 6 Would it be possible to change the color of the cursor in the Win32
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3235 console? (Klaus Hast)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3236 - Add :delcr command:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3237 *:delcr*
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3238 :[range]delcr[!] Check [range] lines (default: whole buffer) for lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3239 ending in <CR>. If all lines end in <CR>, or [!] is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3240 used, remove the <CR> at the end of lines in [range].
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3241 A CTRL-Z at the end of the file is removed. If
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3242 [range] is omitted, or it is the whole file, and all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3243 lines end in <CR> 'textmode' is set. {not in Vi}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3244 - Should integrate addstar() and file_pat_to_reg_pat().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3245 - When working over a serial line with 7 bit characters, remove meta
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3246 characters from 'isprint'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3247 - Use fchdir() in init_homedir(), like in FullName().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3248 - In win_update(), when the GUI is active, always use the scrolling area.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3249 Avoid that the last status line is deleted and needs to be redrawn.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3250 - That "cTx" fails when the cursor is just after 'x' is Vi compatible, but
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3251 may not be what you expect. Add a flag in 'cpoptions' for this? More
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3252 general: Add an option to allow "c" to work with a null motion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3253 - Give better error messages by using errno (strerror()).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3254 - Give "Usage:" error message when command used with wrong arguments (like
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3255 Nvi).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3256 - Make 'restorescreen' option also work for xterm (and others), replaces the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3257 SAVE_XTERM_SCREEN define.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3258 7 Support for ":winpos" In xterm: report the current window position.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3259 - Give warning message when using ":set t_xx=asdf" for a termcap code that
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3260 Vim doesn't know about. Add flag in 'shortmess'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3261 6 Add ":che <file>", list all the include paths which lead to this file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3262 - For a commandline that has several commands (:s, :d, etc.) summarize the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3263 changes all together instead of for each command (e.g. for the rot13
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3264 macro).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3265 - Add command like "[I" that also shows the tree of included files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3266 - Add command like ":ts" that shows the output of "[I" and asks for a match
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3267 to jump to. (Zellner)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3268 - ":set sm^L" results in ":set s", because short names of options are also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3269 expanded. Is there a better way to do this?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3270 - Add ":@!" command, to ":@" like what ":source!" is to ":source".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3271 8 Add ":@:!": repeat last command with forceit set.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3272 - Should be possible to write to a device, e.g. ":w! /dev/null".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3273 - Add 't_normal': Used whenever t_me, t_se, t_ue or t_Zr is empty.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3274 - ":cab map test ^V| je", ":cunab map" doesn't work. This is vi compatible!
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3275 - CTRL-W CTRL-E and CTRL-W CTRL-Y should move the current window up or down
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3276 if it is not the first or last window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3277 - Include-file-search commands should look in the loaded buffer of a file (if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3278 there is one) instead of the file itself.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3279 7 Change 'nrformats' to include the leader for each format. Example:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3280 nrformats=hex:$,binary:b,octal:0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3281 Add setting of 'nrformats' to syntax files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3282 - 'path' can become very long, don't use NameBuff for expansion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3283 - When unhiding a hidden buffer, put the same line at top of the window as
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3284 the one before hiding it. Or: keep the same relative cursor position (so
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3285 many percent down the windows).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3286 - Make it possible for the 'showbreak' to be displayed at the end of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3287 line. Use a comma to separate the part at the end and the start of the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3288 line? Highlight the linebreak characters, add flag in 'highlight'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3289 - Some string options should be expanded if they have wildcards, e.g.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3290 'dictionary' when it is "*.h".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3291 - Use a specific type for number and boolean options, making it possible to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3292 change it for specific machines (e.g. when a long is 64 bit).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3293 - Add option for <Insert> in replace mode going to normal mode. (Nugent)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3294 - Add a next/previous possibility to "[^I" and friends.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3295 - Add possibility to change the HOME directory. Use the directory from the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3296 passwd file? (Antwerpen)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3297 - When doing "[^I" or "[^D" add position to tag stack.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3298 - Add command to put current position to tag stack: ":tpush".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3299 8 Add commands to push and pop all or individual options. ":setpush tw",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3300 ":setpop tw", ":setpush all". Maybe pushing/popping all options is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3301 sufficient. ":setflush" resets the option stack?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3302 How to handle an aborted mapping? Remember position in tag stack when
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3303 mapping starts, restore it when an error aborts the mapping?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3304 - Change ":fixdel" into option 'fixdel', t_del will be adjusted each time
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3305 t_bs is set? (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3306 - "gc": goto character, move absolute character positions forward, also
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3307 counting newlines. "gC" goes backwards (Weigert).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3308 - When doing CTRL-^, redraw buffer with the same topline (Demirel). Store
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3309 cursor row and window height to redraw cursor at same percentage of window
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3310 (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3311 - Besides remembering the last used line number of a file, also remember the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3312 column. Use it with CTRL-^ et. al.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3313 - Check for non-digits when setting a number option (careful when entering
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3314 hex codes like 0xff).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3315 - Add option to make "." redo the "@r" command, instead of the last command
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3316 executed by it. Also to make "." redo the whole mapping. Basically: redo
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3317 the last TYPED command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3318 - Support URL links for ^X^F in Insert mode, like for "gf".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3319 - Support %name% expansion for "gf" on Windows.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3320 - Make "gf" work on "file://c:/path/name". "file:/c:/" and "file:///c:/"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3321 should also work?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3322 - Add 'urlpath', used like 'path' for when "gf" used on an URL?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3323 8 When using "gf" on an absolute file name, while editing a remote file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3324 (starts with scp:// or http://) should prepend the method and machine
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3325 name.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3326 - When finding an URL or file name, and it doesn't exist, try removing a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3327 trailing '.'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3328 - Add ":path" command modifier. Should work for every command that takes a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3329 file name argument, to search for the file name in 'path'. Use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3330 find_file_in_path().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3331 - Highlight control characters on the screen: Shows the difference between
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3332 CTRL-X and "^" followed by "X" (Colon).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3333 - Integrate parsing of cmdline command and parsing for expansion.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3334 - Create a program that can translate a .swp file from any machine into a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3335 form usable by Vim on the current machine.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3336 - Add ":noro" command: Reset 'ro' flag for all buffers, except ones that have
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3337 a readonly file. ":noro!" will reset all 'ro' flags.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3338 - Add a variant of CTRL-V that stops interpretation of more than one
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3339 character. For entering mappings on the command line where a key contains
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3340 several special characters, e.g. a trailing newline.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3341 - Add regex for 'paragraphs' and 'sections': 'parare' and 'sectre'. Combine
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3342 the two into a regex for searching. (Ned Konz)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3343 - Make '2' option in 'formatoptions' also work inside comments.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3344 - Add 's' flag to 'formatoptions': Do not break when inside a string. (Dodt)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3345 - When window size changed (with the mouse) and made too small, set it back
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3346 to the minimal size.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3347 - Add "]>" and "[<", shift comment at end of line (command; /* comment */).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3348 - Should not call cursorcmd() for each vgetc() in getcmdline().
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3349 - ":split file1 file2" adds two more windows (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3350 - Don't give message "Incomplete last line" when editing binary file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3351 - Add ":a", ":i" for preloading of named buffers.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3352 - Allow autowrite when doing ":e file" (with an option 'eaw').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3353 - Allow a "+command" argument before each file name in the Vim command line:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3354 "vim +123 file1 +234 file2 +345 file3". ???
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3355 - When entering text, keep other windows on same buffer updated (when a line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3356 entered)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3357 - Check out how screen does output optimizing. Apparently this is possible
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3358 as an output filter.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3359 - In dosub() regexec is called twice for the same line. Try to avoid this.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3360 - Window updating from memline.c: insert/delete/replace line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3361 - Optimize ml_append() for speed, esp. for reading a file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3362 - V..c should keep indent when 'ai' is set, just like [count]cc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3363 - Updatescript() can be done faster with a string instead of a char.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3364 - Screen updating is inefficient with CTRL-F and CTRL-B when there are long
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3365 lines.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3366 - Uppercase characters in ex commands can be made lowercase?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3367 8 Add option to show characters in text not as "|A" but as decimal ("^129"),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3368 hex ("\x81") or octal ("\201") or meta (M-x). Nvi has the 'octal' option
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3369 to switch from hex to octal. Vile can show unprintable characters in hex
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3370 or in octal.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3371 7 Tighter integration with xxd to edit binary files. Make it more
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3372 easy/obvious to use. Command line argument?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3373 - How does vi detect whether a filter has messed up the screen? Check source.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3374 After ":w !command" a wait_return?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3375 - Improve screen updating code for doput() (use s_ins()).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3376 - With 'p' command on last line: scroll screen up (also for terminals without
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3377 insert line command).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3378 - Use insert/delete char when terminal supports it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3379 - Optimize screen redraw for slow terminals.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3380 - Optimize "dw" for long row of spaces (say, 30000).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3381 - Add "-d null" for editing from a script file without displaying.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3382 - In Insert mode: Remember the characters that were removed with backspace
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3383 and re-insert them one at a time with <key1>, all together with <key2>.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3384 - Amiga: Add possibility to set a keymap. The code in amiga.c does not work
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3385 yet.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3386 - Implement 'redraw' option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3387 - Add special code to 'sections' option to define something else but '{' or
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3388 '}' as the start of a section (e.g. one shiftwidth to the right).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3389 - Use pipes for filtering on Unix. Requires using fork() to be able to read
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3390 and write at the same time, or some select() mechanism.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3391 7 Allow using Vim in a pipe: "ls | vim -u xxx.vim - | yyy". Only needs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3392 implementing ":w" to stdout in the buffer that was read from stdin.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3393 8 Allow opening an unnamed buffer with ":e !cmd" and ":sp !cmd". Vile can
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3394 do it.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3395 - Add commands like ]] and [[ that do not include the line jumped to.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3396 - When :unab without matching "from" part and several matching "to" parts,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3397 delete the entry that was used last, instead of the first in the list.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3398 - Add text justification option.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3399 - Set boolean options on/off with ":set paste=off", ":set paste=on".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3400 - After "inv"ing an option show the value: ":set invpaste" gives "paste is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3401 off".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3402 - Check handling of CTRL-V and '\' for ":" commands that do not have TRLBAR.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3403 - When a file cannot be opened but does exist, give error message.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3404 - Amiga: When 'r' protection bit is not set, file can still be opened but
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3405 gives read errors. Check protection before opening.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3406 - When writing check for file exists but no permission, "Permission denied".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3407 - If file does not exists, check if directory exists.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3408 - MSDOS: although t_cv and t_ci are not set, do invert char under cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3409 - Settings edit mode: make file with ":set opt=xx", edit it, parse it as ex
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3410 commands.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3411 - ":set -w all": list one option per line.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3412 - Amiga: test for 'w' flag when reading a file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3413 - :table command (Webb)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3414 - Add new operator: clear, make area white (replace with spaces): "g ".
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3415 - Make it possible for a user to define a new operator. Implementation with
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3416 internal scripting language or Perl?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3417 - Add command to ":read" a file at a certain column (blockwise read?).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3418 - Add sort of replace mode where case is taken from the old text (Goldfarb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3419 - Allow multiple arguments for ":read", read all the files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3420 - Support for tabs in specific columns: ":set tabcol=8,20,34,56" (Demirel).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3421 - Add 'searchdir' option: Directories to search for file name being edited
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3422 (Demirel).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3423 - Modifier for the put command: Change to linewise, charwise, blockwise, etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3424 - Add commands for saving and restoring options ":set save" "set restore",
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3425 for use in macro's and the like.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3426 - Keep output from listings in a window, so you can have a look at it while
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3427 working in another window. Put cmdline in a separate window?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3428 - Add possibility to put output of ex commands in a buffer or file, e.g. for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3429 ":set all". ":r :set all"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3430 - 'edit' option: When off changing the buffer is not possible (Really
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3431 read-only mode).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3432 - When the 'equalalways' option is set, creating a new window should not
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3433 result in windows to become bigger. Deleting a window should not result in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3434 a window to become smaller (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3435 - When resizing the whole Vim window, the windows inside should be resized
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3436 proportionally (Webb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3437 - Include options directly in option table, no indirect pointers. Use
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3438 mkopttab to make option table?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3439 - When doing ":w dir", where "dir" is a directory name, write the current
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3440 file into that directory, with the current file name (without the path)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3441 - Support for 'dictionary's that are sorted, makes access a lot faster
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3442 (Haritsis).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3443 - Add "^Vrx" on the command line, replace with contents of register x. Used
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3444 instead of CTRL-R to make repeating possible. (Marinichev)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3445 - Add "^Vb" on the command line, replace with word before or under the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3446 cursor?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3447 - Option to make a .swp file only when a change is made (Templeton).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3448 - Support mapping for replace mode and "r" command (Vi doesn't do this)?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3449 5 Add 'ignorefilecase' option: Ignore case when expanding file names.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3450 ":e ma<Tab>" would also find "Makefile" on Unix.
9
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3451 8 Sorting of filenames for completion is wrong on systems that ignore
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3452 case of filenames. Add 'ignorefncase' option. When set, case in
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3453 filenames is ignored for sorting them. Patch by Mike Williams:
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3454 ~/vim/patches/ignorefncase. Also change what matches? Or use another
4102fb4ea781 updated for version 7.0002
vimboss
parents: 8
diff changeset
3455 option name.
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3456 8 Should be able to compile Vim in another directory, with $(srcdir) set to
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3457 where the sources are. Add $(srcdir) in the Makefile in a lot of places.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3458 (Netherton)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3459 6 Make it configurable when "J" inserts a space or not. Should not add a
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3460 space after "(", for example.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3461 5 When inserting spaces after the end-of-line for 'virtualedit', use tabs
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3462 when the user wants this (e.g., add a "tab" field to 'virtualedit').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3463 (Servatius Brandt)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3464
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3465
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3466 From Elvis:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3467 - Use "instman.sh" to install manpages?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3468 - Add ":alias" command.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3469 - fontchanges recognized "\\fB" etc.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3470 - Search patterns:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3471 \@ match word under cursor.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3472 but do:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3473 \@w match the word under the cursor?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3474 \@W match the WORD under the cursor?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3475 8 ":window" command:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3476 :win + next window (up)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3477 :win ++ idem, wrapping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3478 :win - previous window (down)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3479 :win -- idem, wrapping
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3480 :win nr to window number "nr"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3481 :win name to window editing buffer "name"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3482 7 ":cc" compiles a single file (default: current one). 'ccprg' option is
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3483 program to use with ":cc". Use ":compile" instead of ":cc"?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3484
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3485
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3486 From Nvi:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3487 - 'searchincr' option, alias for 'incsearch'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3488 - 'leftright' option, alias for 'nowrap'?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3489 - Have a look at "vi/doc/vi.chart", for Nvi specialties.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3490 8 Add 'keytime', time in 1/10 sec for mapping timeout?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3491 - Add 'filec' option as an alternative for 'wildchar'.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3492 6 Support Nvi command names as an alias:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3493 :bg :hide
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3494 :fg fname :buf fname (with 'hidden' set?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3495 :dis b :ls
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3496 :Edit fname :split fname
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3497 :Fg fname :sbuf fname (with 'hidden' set?)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3498 :Next :snext (can't do this, already use :Next)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3499 :Previous :sprevious
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3500 :Tag :stag
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3501
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3502
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3503 From xvi:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3504 - CTRL-_ : swap 8th bit of character.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3505 - Add egrep-like regex type, like xvi (Ned Konz) or Perl (Emmanuel Mogenet)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3506
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3507
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3508 From vile:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3509 - When horizontal scrolling, use '>' for lines continuing right of a window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3510 - Support putting .swp files in /tmp: Command in rc.local to move .swp files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3511 from /tmp to some directory before deleting files.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3512
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3513
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3514 Far future and "big" extensions:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3515 - Make it easy to setup Vim for groups of users: novice vi users, novice
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3516 Vim users, C programmers, xterm users, GUI users,...
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3517 - Change layout of blocks in swap file: Text at the start, with '\n' in
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3518 between lines (just load the file without changes, except for Mac).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3519 Indexes for lines are from the end of the block backwards. It's the
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3520 current layout mirrored.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3521 - Make it possible to edit a register, in a window, like a buffer.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3522 - Add stuff to syntax highlighting to change the text (upper-case keywords,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3523 set indent, define other highlighting, etc.).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3524 - Mode to keep C-code formatted all the time (sort of on-line indent).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3525 - Several top-level windows in one Vim session. Be able to use a different
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3526 font in each top-level window.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3527 - Allow editing above start and below end of buffer (flag in 'virtualedit').
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3528 - Smart cut/paste: recognize words and adjust spaces before/after them.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3529 - Add open mode, use it when terminal has no cursor positioning.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3530 - Special "drawing mode": a line is drawn where the cursor is moved to.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3531 Backspace deletes along the line (from jvim).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3532 - Implement ":Bset", set option in all buffers. Also ":Wset", set in all
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3533 windows, ":Aset, set in all arguments and ":Tset", set in all files
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3534 mentioned in the tags file.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3535 Add buffer/arg range, like in ":2,5B%s/..." (do we really need this???)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3536 Add search string: "B/*.c/%s/.."? Or ":F/*.c/%s/.."?
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3537 - Support for underlining (underscore-BS-char), bold (char-BS-char) and other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3538 standout modes switched on/off with , 'overstrike' option (Reiter).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3539 - Add vertical mode (Paul Jury, Demirel): "5vdw" deletes a word in five
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3540 lines, "3vitextESC" will insert "text" in three lines, etc..
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3541 4 Recognize l, #, p as 'flags' to EX commands:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3542 :g/RE/#l shall print lines with line numbers and in list format.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3543 :g/RE/dp shall print lines that are deleted.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3544 POSIX: Commands where flags shall apply to all lines written: list,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3545 number, open, print, substitute, visual, &, z. For other commands, flags
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3546 shall apply to the current line after the command completes. Examples:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3547 :7,10j #l Join the lines 7-10 and print the result in list
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3548 - Allow two or more users to edit the same file at the same time. Changes
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3549 are reflected in each Vim immediately. Could work with local files but
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3550 also over the internet. See http://www.codingmonkeys.de/subethaedit/.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3551
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3552
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3553 vim:tw=78:sw=4:sts=4:ts=8:ft=help:norl:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3554 vim: set fo+=n :