*todo.txt* For Vim version 7.3. Last change: 2011 May 28 VIM REFERENCE MANUAL by Bram Moolenaar TODO list for Vim *todo* This is a veeeery long list of known bugs, current work and desired improvements. To make it a little bit accessible, the items are grouped by subject. In the first column of the line a classification is used to be able to look for "the next thing to do": Priority classification: 9 next point release 8 next release 7 as soon as possible 6 soon 5 should be included 4 nice to have 3 consider including 2 maybe not 1 probably not - unclassified *votes-for-changes* See |develop.txt| for development plans. You can vote for which items should be worked on, but only if you sponsor Vim development. See |sponsor|. Issues can also be entered online: http://code.google.com/p/vim/issues/list Updates will be forwarded to the vim_dev maillist. Issues entered there will not be repeated below, unless there is extra information. *known-bugs* -------------------- Known bugs and current work ----------------------- Go through more coverity reports. Crash in autocomplete, valgrind log. (Greg Weber, 2011 Apr 22) Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10) Patch to build with GTK on Mac. (Ben Schmidt, 2011 Jan 18) Use another name instead of FEAT_GUI_ELSEWHERE. Patch for xxd makefile to avoid generating .dSYM files. (Ben Schmidt, 2011 Jan 18) Patch to show sign for folded text. (Christian Brabandt, 2011 Jan 12) Method to reproduce it: Jan 16. Patch to improve optwin.vim. (ZyX, 2011 Jan 29) Patch for Python 3 support. (lilydjwg, 2011 Feb 24) Patch to make putting from clipboard linewise when the text ends in a newline. (Sung Pae) Do we want this? Patch to add third dict argument to sort(). (ZyX, 2011 May 15) Building the MingW version without clipboard but with multi-byte doesn't work. (Bill Lam, 2010 Sep 18) Patch for handling of NL in substitute() with \= expression. (Motoya Kurotsu, 2011 Mar 16) Update Mar 24. Patch to disallow fork() when __APPLE__ is defined. (Hisashi T Fujinaka, 2010 Nov 25) 7 Output for ":scriptnames" and ":breaklist" should shorten the file names: use "~/" when possible. Patch by Jean-Rene David, 2011 May 1. Patch for better #if 0 syntax highlighting for C code. (Ben Schmidt, 2011 Jan 20) Change to C syntax folding to make it work much faster, but a bit less reliable. (Lech Lorens, 2009 Nov 9) Enable with an option? Most time is spent in in_id_list(). Updated to merge both patches. (Ben Schmidt, 2011 May 2) GTK: Patch to fix menu popping down. (Hong Xu, 2010 Dec 4, Dec 5) Update 2011 Feb 3. Patch to use pipes on Win32. (Vincent Berthoux, 2011 Feb 28) Update Mar 1 using 'shelltemp'. Patch to support UTF-8 for Hangul. (Shawn Y.H. Kim, 2011 May 1) Needs more work. Patch to make ";" not get stuck on "t" command. (Christian Brabandt, 2011 May 23) "gh" deletes the current line, except when it's the last line. Hint by Christian Brabandt, 2011 Mar 22 "echo 'abc' > ''" returns 0 or 1, depending on 'ignorecase'. mb_strnicmp() checks for illegal and truncated bytes are wrong. Should also not assume that byte length is equal before case folding. Patch by Ivan Krasilnikov, 2011 May 27. The :z command doesn't work exactly as it should. (ChangZhuo Chen, 2011 Mar 2) Compare with how old Vi works and with posix spec. terminal is 80 x 24, 'scroll' option set to 11. 'cursorline' is displayed too short when there are concealed characters and 'list' is set. (Dennis Preiser) Patch 7.3.116 was the wrong solution. When opening file from windows explorer, characters inside [] cause problems, even though double quotes are used. (Manuel Stol, 2011 Mar 9) Patch to change the meaning of \n in substitute(). (motoya kurotsu, 2011 Mar 8) Gui menu edit/paste in block mode insert only inserts in one line (Bjorn Winckler, 2011 May 11) Use function to set paste option and restore it, use CTRL-R+ to paste. Help file foldexpr (ZyX) Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2, only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug 21, Ben Fritz, 2010 Sep 14) Bug in repeating Visual "u". (Lawrence Kesteloot, 2010 Dec 20) Patch to automatically get version number into NSIS. (Guopeng Wen, 2011 May 27) In GTK Gvim, setting 'lines' and 'columns' to 99999 causes a crash (Tony Mechelynck, 2011 Apr 25). Can reproduce the crash sometimes: gvim -N -u NONE --cmd 'set lines=99999 columns=99999' (gvim:25968): Gdk-WARNING **: Native Windows wider or taller than 65535 pixels are not supported The program 'gvim' received an X Window System error. This probably reflects a bug in the program. The error was 'RenderBadPicture (invalid Picture parameter)'. (Details: serial 313 error_code 161 request_code 149 minor_code 8) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) Check that number of pixels doesn't go above 65535? 8 Add an event like CursorHold that is triggered repeatedly, not just once after typing something. Need for CursorHold that retriggers. Use a key that doesn't do anything, or a function that resets did_cursorhold. Patch by Christian Brabandt, 2011 May 6. CursorHold repeats typed key when it's the start of a mapping. (Will Gray, 2011 Mar 23) Christian Brabandt: problem is that OP_PENDING isn't set. Windows keys not set properly on Windows 7? (cncyber, 2010 Aug 26) This line hangs Vim, because of syntax HL: call append(line, "INFO ....12....18....24....30....36....42....48....54....60....66....72....78%$") When using a Vim server, a # in the path causes an error message. (Jeff Lanzarotta, 2011 Feb 17) Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5) Using ":break" or something else that stops executing commands inside a ":finally" does not rethrow a previously uncaught exception. (ZyX, 2010 Oct 15) Vim using lots of memory when joining lines. (John Little, 2010 Dec 3) On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a 64 bits value. Change all number options to use nropt_T and define it to the right type. string() can't parse back "inf" and "nan". Fix documentation or fix code? (ZyX, 2010 Aug 23) When doing "redir => s:foo" in a script and then "redir END" somewhere else (e.g. in a function) it can't find s:foo. maparg() does not show the