comparison runtime/doc/todo.txt @ 557:862863033fdd v7.0158

updated for version 7.0158
author vimboss
date Wed, 23 Nov 2005 21:25:05 +0000
parents f9eaf0a9872d
children 8b84fe17e147
comparison
equal deleted inserted replaced
556:f9eaf0a9872d 557:862863033fdd
1 *todo.txt* For Vim version 7.0aa. Last change: 2005 Oct 12 1 *todo.txt* For Vim version 7.0aa. Last change: 2005 Nov 23
2 2
3 3
4 VIM REFERENCE MANUAL by Bram Moolenaar 4 VIM REFERENCE MANUAL by Bram Moolenaar
5 5
6 6
28 be worked on, but only if you sponsor Vim development. See |sponsor|. 28 be worked on, but only if you sponsor Vim development. See |sponsor|.
29 29
30 *known-bugs* 30 *known-bugs*
31 -------------------- Known bugs and current work ----------------------- 31 -------------------- Known bugs and current work -----------------------
32 32
33 Using chown() is unsafe. (Jinpeng Wei)
34 ex_cmds.c: viminfo tempfile: use mch_open(O_EXCL) and fdopen()
35 fileio.c: use fchown() instead of chown()
36 vim.h: define O_NOFOLLOW if needed. Not in Vim 6.4?
37
38 Go over all changes between 6.3 and 6.4 and make sure they are included in 7.
39
40 'statusline' is drawn over the Omni menu.
41
42 Cygwin and Mac OS/X may preserve case for file names but ignore case
43 differences. Use Amiga code?
44
45 "make unixall": remove split in floppy-size archives.
46
47 To support mapping <F4> to be used as <F4>{motion}: Add operator that
48 executes a user defined function. '[ and '] marks are at start and end of
49 text. ":map <F4> :set opfunc=MyOp<CR>gy".
50
51 Patch from Yasuhiro Matsumoto: ":e ++enc=xxx" keeps encoding for conversion
52 errors and illegal bytes. How about replacing bytes with '?' or not?
53
33 ccomplete: 54 ccomplete:
34 - When an option is set: In completion mode and the user types (identifier) 55 - When an option is set: In completion mode and the user types (identifier)
35 characters, advance to the first match instead of removing the popup menu. 56 characters, advance to the first match instead of removing the popup menu.
36 If there is no match remove the selection. (Yegappan Lakshmanan) 57 If there is no match remove the selection. (Yegappan Lakshmanan)
58 - Complete the longest common match instead of the first match?
59 - !_TAG_FILE_FORMAT and it's ilk are listed in the global completions
37 - When completing something that is a structure, add the "." or "->". 60 - When completing something that is a structure, add the "." or "->".
38 - When a typedef or struct is local to a file only use it in that file? 61 - When a typedef or struct is local to a file only use it in that file?
62 - Window resize when poup is displayed
63 - page-up / page-down
39 64
40 spelling: 65 spelling:
41 - When a recognized word ends in a . don't have 'spellcapcheck" match it. 66 - When a recognized word ends in a . don't have 'spellcapcheck" match it.
42 - Use KEEPCASE instead of "KEP". applies to affixes too. 67 - Use KEEPCASE instead of "KEP". It applies to the word including affixes
68 Hunspell also uses it.
69 - Hunspell has NOSUGGEST flag (use for obscene words?)
70 - Check out Hunspell 1.1.2.
43 - Look into hungarian dictionary: 71 - Look into hungarian dictionary:
44 http://magyarispell.sourceforge.net/rc3-beta2.zip 72 http://magyarispell.sourceforge.net/rc3-beta2.zip
73 - Support breakpoint character · 0xb7 and ignore it?
74 - Dutch word list should be available here: http://www.woordenlijst.org/
75 8 Alternate Dutch word list at www.nederlandsewoorden.nl (use script to
76 obtain). But new Myspell wordlist will come (Hagen)
77 - Finding suggestions with sound folding is slow. Somehow store the
78 sound-folded words and link to the words it comes from?
79
80 When editing a file "a" that is a symbolic link to "b", while another Vim is
81 editing "b", there is no warning. Follow symlink to make swap file name?
82 Patch from Stefano Zacchiroli.
83
84 In diff mode deleting lines is very slow. E.g., when diffing two .po files
85 and then sourcing po/cleaup.vim.
86
87 7 Add plugins for formatting. Should be able to make a choice depending on
88 the language of a file (English/Korean/Japanese/etc.).
89 Setting the 'langformat' option to "chinese" would load the
90 "format/chinese.vim" plugin.
91 Edward L. Fox explains how it should be done for most Asian languages. (2005
92 Nov 24)
45 93
46 Mac unicode patch (Da Woon Jung): 94 Mac unicode patch (Da Woon Jung):
47 - selecting proportional font breaks display 95 - selecting proportional font breaks display
48 - UTF-8 text causes display problems. Font replacement causes this. 96 - UTF-8 text causes display problems. Font replacement causes this.
49 - Command-key mappings do not work. (Alan Schmitt) 97 - Command-key mappings do not work. (Alan Schmitt)
50 - Add default key mappings for the command key (Alan Schmitt) 98 - Add default key mappings for the command key (Alan Schmitt)
51 use http://macvim.org/OSX/files/gvimrc 99 use http://macvim.org/OSX/files/gvimrc
52 - With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work. 100 - With 'nopaste' pasting is wrong, with 'paste' Command-V doesn't work.
53 (Alan Schmitt) 101 (Alan Schmitt)
54 102
103 Patch to add a few flags to search(). (Benji Fisher, Nov 22)
104
55 Win32: Use the free downloadable compiler 7.1. Figure out how to do debugging 105 Win32: Use the free downloadable compiler 7.1. Figure out how to do debugging
56 (with Agide?) and describe it. (George Reilly) 106 (with Agide?) and describe it. (George Reilly)
57 Try out using the free MS compiler and debugger, using Make_mvc.mak. 107 Try out using the free MS compiler and debugger, using Make_mvc.mak.
108
109 Win32: Check that installer puts menu items in "all users" dir when possible,
110 not administrator dir.
58 111
59 Autoload: 112 Autoload:
60 - Add a Vim script in $VIMRUNTIME/tools that takes a file with a list of 113 - Add a Vim script in $VIMRUNTIME/tools that takes a file with a list of
61 script names and a help file and produces a script that can be sourced to 114 script names and a help file and produces a script that can be sourced to
62 install the scripts in the user's directories. 115 install the scripts in the user's directories.
65 script autoload/mylib.vim 118 script autoload/mylib.vim
66 script autoload/yourlib.vim 119 script autoload/yourlib.vim
67 helpfile doc/myscript.txt 120 helpfile doc/myscript.txt
68 For the "helpfile" item ":helptags" is run. 121 For the "helpfile" item ":helptags" is run.
69 122
70 Add ":smap", Select mode mapping? 123 Add ":smap", Select mode mapping? Otherwise: ":sunmap", so that Visual mode
124 mappings for normal keys can be removed from Select mode.
71 125
72 Awaiting response: 126 Awaiting response:
73 - Win32: tearoff menu window should have a scrollbar when it's taller than 127 - Win32: tearoff menu window should have a scrollbar when it's taller than
74 the screen. 128 the screen.
75 - mblen(NULL, 0) also in Vim 6.3? 129 - mblen(NULL, 0) also in Vim 6.3?
86 140
87 Separately develop the completion logic and the UI. When adding UI stuff 141 Separately develop the completion logic and the UI. When adding UI stuff
88 make it work for all completion methods. 142 make it work for all completion methods.
89 143
90 UI: 144 UI:
145 - Complete longest common string first, like 'wildmode' "longest:full".
146 - Add an "auto" mode: after typing a character (or string) completion is
147 done for the longest common string. plugin defines the possible
148 characters/strings. (Martin Stubenschrott)
91 - GUI implementation of the popup menu. 149 - GUI implementation of the popup menu.
92 - When using tags, show match in preview window (function prototype, 150 - When using tags, show match in preview window (function prototype,
93 struct member, etc.). 151 struct member, etc.).
94 Or use one window for matches, another for context/info (Doug Kearns, 152 Or use one window for matches, another for context/info (Doug Kearns,
95 2005 Sep 13) 153 2005 Sep 13)
189 - EMBEDDING: Make it possible to run Vim inside a window of another program. 247 - EMBEDDING: Make it possible to run Vim inside a window of another program.
190 For Xwindows this can be done with XReparentWindow(). 248 For Xwindows this can be done with XReparentWindow().
191 For GTK Neil Bird has a patch to use Vim like a widget. 249 For GTK Neil Bird has a patch to use Vim like a widget.
192 - Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd". Block 250 - Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd". Block
193 can be selected with CTRL-V. Allow '$' (end of line) for col2. 251 can be selected with CTRL-V. Allow '$' (end of line) for col2.
194 - Add DEBUGGER INTERFACE. Implementation for gdb by Xavier de Gaye, 252 - Add DEBUGGER INTERFACE. Implementation for gdb by Xavier de Gaye.
195 assisted by Mikolaj Machowski. Should work like an IDE. Try to keep it 253 Should work like an IDE. Try to keep it generic. Now found here:
196 generic. Also found here: http://skawina.eu.org/mikolaj/vimgdb 254 http://clewn.sf.net.
197 And the idevim plugin/script. 255 And the idevim plugin/script.
198 To be able to start the debugger from inside Vim: For GUI run a program 256 To be able to start the debugger from inside Vim: For GUI run a program
199 with a netbeans connection; for console: start a program that splits the 257 with a netbeans connection; for console: start a program that splits the
200 terminal, runs the debugger in one window and reconnect Vim I/O to the 258 terminal, runs the debugger in one window and reconnect Vim I/O to the
201 other window. 259 other window.
205 in terminal mode. 263 in terminal mode.
206 - ECLIPSE plugin. Problem is: the interface is very complicated. Need to 264 - ECLIPSE plugin. Problem is: the interface is very complicated. Need to
207 implement part in Java and then connect to Vim. Some hints from Alexandru 265 implement part in Java and then connect to Vim. Some hints from Alexandru
208 Roman, 2004 Dec 15. Should then also work with Oracle Jdeveloper, see JSR 266 Roman, 2004 Dec 15. Should then also work with Oracle Jdeveloper, see JSR
209 198 standard http://www.jcp.org/en/jsr/detail?id=198. 267 198 standard http://www.jcp.org/en/jsr/detail?id=198.
268 Eclim does it: http://eclim.sourceforge.net/ (Eric Van Dewoestine)
210 - STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is. 269 - STICKY CURSOR: Add a way of scrolling that leaves the cursor where it is.
211 Especially when using the scrollbar. Typing a cursor-movement command 270 Especially when using the scrollbar. Typing a cursor-movement command
212 scrolls back to where the cursor is. 271 scrolls back to where the cursor is.
213 - Execute a function with standard option values. No need to save and 272 - Execute a function with standard option values. No need to save and
214 restore option values. Especially useful for new options. Problem: how 273 restore option values. Especially useful for new options. Problem: how
351 7 Completion of network shares, patch by Yasuhiro Matsumoto. 410 7 Completion of network shares, patch by Yasuhiro Matsumoto.
352 Update 2004 Sep 6. 411 Update 2004 Sep 6.
353 How does this work? Missing comments. 412 How does this work? Missing comments.
354 gettext() Translate a message. (Patch from Yasuhiro Matsumoto) 413 gettext() Translate a message. (Patch from Yasuhiro Matsumoto)
355 Update 2004 Sep 10 414 Update 2004 Sep 10
356 More docs. Search in 'runtimepath'? 415 Another patch from Edward L. Fox (2005 Nov 24)
416 Search in 'runtimepath'?
417 More docs about how to use this.
357 How to get the messages into the .po files? 418 How to get the messages into the .po files?
358 --- did not respond (yet) -- 419 --- did not respond (yet) --
359 - Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav 420 - Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
360 Smilauer, 2004 Sep 13, fix Oct 31) 421 Smilauer, 2004 Sep 13, fix Oct 31)
361 Asked for improvements 2004 Dec 20. 422 Asked for improvements 2004 Dec 20.
393 - Patch from Herculano de Lima Einloft Neto for better formatting of the 454 - Patch from Herculano de Lima Einloft Neto for better formatting of the
394 quickfix window (2004 dec 2) 455 quickfix window (2004 dec 2)
395 7 When 'rightleft' is set, the search pattern should be displayed right 456 7 When 'rightleft' is set, the search pattern should be displayed right
396 to left as well? See patch of Dec 26. (Nadim Shaikli) 457 to left as well? See patch of Dec 26. (Nadim Shaikli)
397 8 Lock all used memory so that it doesn't get swapped to disk (uncrypted). 458 8 Lock all used memory so that it doesn't get swapped to disk (uncrypted).
398 Patch by Jason Holt, 2003 May 23. 459 Patch by Jason Holt, 2003 May 23. Uses mlock.
399 7 Support a stronger encryption. Jason Holt implemented AES (May 6 2003). 460 7 Support a stronger encryption. Jason Holt implemented AES (May 6 2003).
400 7 Add ! register, for shell commands. (patch from Grenie) 461 7 Add ! register, for shell commands. (patch from Grenie)
401 8 In the gzip plugin, also recognize *.gz.orig, *.gz.bak, etc. Like it's 462 8 In the gzip plugin, also recognize *.gz.orig, *.gz.bak, etc. Like it's
402 done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1. 463 done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
403 7 Add a "-@ filelist" argument: read file names from a file. (David 464 7 Add a "-@ filelist" argument: read file names from a file. (David
789 8 OS/2: Add clipboard support? See example clipbrd.exe from Alexander 850 8 OS/2: Add clipboard support? See example clipbrd.exe from Alexander
790 Wagner. 851 Wagner.
791 8 OS/2: Add Extended Attributes support and define HAVE_ACL. 852 8 OS/2: Add Extended Attributes support and define HAVE_ACL.
792 8 OS/2: When editing a file name "foo.txt" that is actually called FOO.txt, 853 8 OS/2: When editing a file name "foo.txt" that is actually called FOO.txt,
793 writing uses "foo.txt". Should obtain the real file name. 854 writing uses "foo.txt". Should obtain the real file name.
794 8 Should $USERPROFILE be preferred above $HOMEDRIVE/$HOMEPATH? 855 8 Should $USERPROFILE be preferred above $HOMEDRIVE/$HOMEPATH? No, but it's
856 a good fallback, thus use:
857 $HOME
858 $HOMEDRIVE$HOMEPATH
859 SHGetSpecialFolderPath(NULL, lpzsPath, CSIDL_APPDATA, FALSE);
860 $USERPROFILE
861 SHGetSpecialFolderPath(NULL, lpzsPath, CSIDL_COMMON_APPDATA, FALSE);
862 $ALLUSERSPROFILE
863 $SYSTEMDRIVE\
864 C:\
795 8 Win32 console: <M-Up> and <M-Down> don't work. (Geddes) We don't have 865 8 Win32 console: <M-Up> and <M-Down> don't work. (Geddes) We don't have
796 special keys for these. Should use modifier + key. 866 special keys for these. Should use modifier + key.
797 8 Win32 console: caps-lock makes non-alpha keys work like with shift. 867 8 Win32 console: caps-lock makes non-alpha keys work like with shift.
798 Should work like in the GUI version. 868 Should work like in the GUI version.
799 8 Environment variables in DOS are not case sensitive. Make a define for 869 8 Environment variables in DOS are not case sensitive. Make a define for
1380 http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/ 1450 http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/
1381 author: Kevin Hendricks <kevin.hendricks@sympatico.ca> 1451 author: Kevin Hendricks <kevin.hendricks@sympatico.ca>
1382 8 Make "en-rare" spell file? Ask Charles Campbell. 1452 8 Make "en-rare" spell file? Ask Charles Campbell.
1383 8 The English dictionaries for different regions are not consistent in their 1453 8 The English dictionaries for different regions are not consistent in their
1384 use of words with a dash. 1454 use of words with a dash.
1385 8 Alternate Dutch word list at www.nederlandsewoorden.nl (use script to
1386 obtain). But new Myspell wordlist will come (Hagen)
1387 7 Insert mode completion mechanism that uses the spell word lists. 1455 7 Insert mode completion mechanism that uses the spell word lists.
1388 8 Add hl groups to 'spelllang'? 1456 8 Add hl groups to 'spelllang'?
1389 :set spelllang=en_us,en-rare/SpellRare,en-math/SpellMath 1457 :set spelllang=en_us,en-rare/SpellRare,en-math/SpellMath
1390 More complicated: Regions with different languages? E.g., comments 1458 More complicated: Regions with different languages? E.g., comments
1391 in English, strings in German (po file). 1459 in English, strings in German (po file).
1392 8 Implement compound words when it works for Myspell. Current idea has the
1393 problem that "foo/X" always allows "foofoo", there is no way to specify a
1394 word can only be at the start or end, or that only certain words combine.
1395 1460
1396 1461
1397 Diff mode: 1462 Diff mode:
1398 8 Use diff mode to show the changes made in a buffer (compared to the file). 1463 8 Use diff mode to show the changes made in a buffer (compared to the file).
1399 Use an unnamed buffer, like doing: 1464 Use an unnamed buffer, like doing:
1400 new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis 1465 new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis
1466 Also show difference with the file when editing started? Should show what
1467 can be undone. (Tom Popovich)
1401 7 Add cursor-binding: when moving the cursor in one diff'ed buffer, also 1468 7 Add cursor-binding: when moving the cursor in one diff'ed buffer, also
1402 move it in other diff'ed buffers, so that CTRL-W commands go to the same 1469 move it in other diff'ed buffers, so that CTRL-W commands go to the same
1403 location. 1470 location.
1404 1471
1405 1472
1573 allow spell checking. (Fleiner) 1640 allow spell checking. (Fleiner)
1574 8 When listing syntax items, try to sort the keywords alphabetically. And 1641 8 When listing syntax items, try to sort the keywords alphabetically. And
1575 re-insert the [] if possible. 1642 re-insert the [] if possible.
1576 8 Make it possible to use color of text for Visual highlight group (like for 1643 8 Make it possible to use color of text for Visual highlight group (like for
1577 the Cursor). 1644 the Cursor).
1645 8 It would be useful to make the highlight group name an expression. Then
1646 when there is a match, the expression would be evaluated to find out what
1647 highlight group to use. Could be used to check if the shell used in a
1648 password file appears in /etc/shells. (Nikolai Weibull)
1649 syn match =s:checkShell(v:match) contained 'pattern'
1578 8 Make it possible to only highlight a sub-expression of a match. Like 1650 8 Make it possible to only highlight a sub-expression of a match. Like
1579 using "\1" in a ":s" command. 1651 using "\1" in a ":s" command.
1580 8 Support for deleting syntax items: 1652 8 Support for deleting syntax items:
1581 :syn keyword cTodo remove this 1653 :syn keyword cTodo remove this
1582 :syn match cTodo remove "pattern" 1654 :syn match cTodo remove "pattern"
3018 that marks if the option was set. Useful to keep the effect of setting 3090 that marks if the option was set. Useful to keep the effect of setting
3019 'compatible' after ":syntax on" has been used. 3091 'compatible' after ":syntax on" has been used.
3020 7 There is 'titleold', why is there no 'iconold'? (Chazelas) 3092 7 There is 'titleold', why is there no 'iconold'? (Chazelas)
3021 7 Make 'scrolloff' a global-local option, so that it can be different in the 3093 7 Make 'scrolloff' a global-local option, so that it can be different in the
3022 quickfix window, for example. (Gary Holloway) 3094 quickfix window, for example. (Gary Holloway)
3023 7 Add plugins for formatting. Should be able to make a choice depending on
3024 the language of a file (English/Korean/Japanese/etc.).
3025 3095
3026 3096
3027 External commands: 3097 External commands:
3028 8 When filtering text, redirect stderr so that it can't mess up the screen 3098 8 When filtering text, redirect stderr so that it can't mess up the screen
3029 and Vim doesn't need to redraw it. Also for ":r !cmd". 3099 and Vim doesn't need to redraw it. Also for ":r !cmd".
3347 starts a new paragraph, use '<' flag when smaller indent starts a new 3417 starts a new paragraph, use '<' flag when smaller indent starts a new
3348 paragraph. Both start a new paragraph on any indent change. 3418 paragraph. Both start a new paragraph on any indent change.
3349 7 Add a way to define an item list with a pattern in 'formatoptions'. The 3419 7 Add a way to define an item list with a pattern in 'formatoptions'. The
3350 'n' flag doesn't work for "6.3" or "6a.". 3420 'n' flag doesn't work for "6.3" or "6a.".
3351 8 Add 'formatexpr' option: Used for formatting operator "gq" instead of the 3421 8 Add 'formatexpr' option: Used for formatting operator "gq" instead of the
3352 builtin formatting or 'formatprg'. 3422 builtin formatting or 'formatprg'. Or use a string that starts with "="
3423 in 'formatprg': "=MyFormat()".
3353 8 Allow using a trailing space to signal a paragraph that continues on the 3424 8 Allow using a trailing space to signal a paragraph that continues on the
3354 next line (MIME text/plain; format=flowed, RFC 2646). Can be used for 3425 next line (MIME text/plain; format=flowed, RFC 2646). Can be used for
3355 continuous formatting. Could use 'autoformat' option, which specifies a 3426 continuous formatting. Could use 'autoformat' option, which specifies a
3356 regexp which triggers auto-formatting (for one line). 3427 regexp which triggers auto-formatting (for one line).
3357 ":set autoformat=\\s$". 3428 ":set autoformat=\\s$".