vim: update release.sh to vim 7.3
[msysgit/mtrensch.git] / share / vim / vim72 / doc / version6.txt
blob611ff8df2da210961dab923cb252377a711b2e14
1 *version6.txt*  For Vim version 7.2.  Last change: 2008 Aug 06
4                   VIM REFERENCE MANUAL    by Bram Moolenaar
7 Welcome to Vim Version 6.0!  A large number of features has been added.  This
8 file mentions all the new items that have been added, changes to existing
9 features and bug fixes compared to Vim 5.x.
11 See |vi_diff.txt| for an overview of differences between Vi and Vim 6.0.
12 See |version4.txt| for differences between Vim 3.0 and Vim 4.0.
13 See |version5.txt| for differences between Vim 4.0 and Vim 5.0.
15 INCOMPATIBLE CHANGES                    |incompatible-6|
17 Cursor position in Visual mode          |curpos-visual|
18 substitute command Vi compatible        |substitute-CR|
19 global option values introduced         |new-global-values|
20 'fileencoding' changed                  |fileencoding-changed|
21 Digraphs changed                        |digraphs-changed|
22 Filetype detection changed              |filetypedetect-changed|
23 Unlisted buffers introduced             |new-unlisted-buffers|
24 CTRL-U in Command-line mode changed     |CTRL-U-changed|
25 Ctags gone                              |ctags-gone|
26 Documentation reorganized               |documentation-6|
27 Modeless selection and clipboard        |modeless-and-clipboard|
28 Small incompatibilities                 |incomp-small-6|
30 NEW FEATURES                            |new-6|
32 Folding                                 |new-folding|
33 Vertically split windows                |new-vertsplit|
34 Diff mode                               |new-diff-mode|
35 Easy Vim: click-and-type                |new-evim|
36 User manual                             |new-user-manual|
37 Flexible indenting                      |new-indent-flex|
38 Extended search patterns                |new-searchpat|
39 UTF-8 support                           |new-utf-8|
40 Multi-language support                  |new-multi-lang|
41 Plugin support                          |new-plugins|
42 Filetype plugins                        |new-filetype-plugins|
43 File browser                            |new-file-browser|
44 Editing files over a network            |new-network-files|
45 Window for command-line editing         |new-cmdwin|
46 Debugging mode                          |new-debug-mode|
47 Cursor in virtual position              |new-virtedit|
48 Debugger interface                      |new-debug-itf|
49 Communication between Vims              |new-vim-server|
50 Buffer type options                     |new-buftype|
51 Printing                                |new-printing|
52 Ports                                   |ports-6|
53 Quickfix extended                       |quickfix-6|
54 Operator modifiers                      |new-operator-mod|
55 Search Path                             |new-search-path|
56 Writing files improved                  |new-file-writing|
57 Argument list                           |new-argument-list|
58 Restore a View                          |new-View|
59 Color schemes                           |new-color-schemes|
60 Various new items                       |new-items-6|
62 IMPROVEMENTS                            |improvements-6|
64 COMPILE TIME CHANGES                    |compile-changes-6|
66 BUG FIXES                               |bug-fixes-6|
68 VERSION 6.1                     |version-6.1|
69 Changed                                 |changed-6.1|
70 Added                                   |added-6.1|
71 Fixed                                   |fixed-6.1|
73 VERSION 6.2                     |version-6.2|
74 Changed                                 |changed-6.2|
75 Added                                   |added-6.2|
76 Fixed                                   |fixed-6.2|
78 VERSION 6.3                     |version-6.3|
79 Changed                                 |changed-6.3|
80 Added                                   |added-6.3|
81 Fixed                                   |fixed-6.3|
83 VERSION 6.4                     |version-6.4|
84 Changed                                 |changed-6.4|
85 Added                                   |added-6.4|
86 Fixed                                   |fixed-6.4|
88 ==============================================================================
89 INCOMPATIBLE CHANGES                            *incompatible-6*
91 These changes are incompatible with previous releases.  Check this list if you
92 run into a problem when upgrading from Vim 5.x to 6.0
95 Cursor position in Visual mode                  *curpos-visual*
96 ------------------------------
98 When going from one window to another window on the same buffer while in
99 Visual mode, the cursor position of the other window is adjusted to keep the
100 same Visual area.  This can be used to set the start of the Visual area in one
101 window and the end in another.  In vim 5.x the cursor position of the other
102 window would be used, which could be anywhere and was not very useful.
105 Substitute command Vi compatible                *substitute-CR*
106 --------------------------------
108 The substitute string (the "to" part of the substitute command) has been made
109 Vi compatible.  Previously a CTRL-V had a special meaning and could be used to
110 prevent a <CR> to insert a line break.  This made it impossible to insert a
111 CTRL-V before a line break.  Now a backslash is used to prevent a <CR> to
112 cause a line break.  Since the number of backslashes is halved, it is still
113 possible to insert a line break at the end of the line.  This now works just
114 like Vi, but it's not compatible with Vim versions before 6.0.
116 When a ":s" command doesn't make any substitutions, it no longer sets the '[
117 and '] marks.  This is not related to Vi, since it doesn't have these marks.
120 Global option values introduced                 *new-global-values*
121 -------------------------------
123 There are now global values for options which are local to a buffer or window.
124 Previously the local options were copied from one buffer to another.  When
125 editing another file this could cause option values from a modeline to be used
126 for the wrong file.  Now the global values are used when entering a buffer
127 that has not been used before.  Also, when editing another buffer in a window,
128 the local window options are reset to their global values.  The ":set" command
129 sets both the local and global values, this is still compatible.  But a
130 modeline only sets the local value, this is not backwards compatible.
132 ":let &opt = val" now sets the local and global values, like ":set".  New
133 commands have been added to set the global or local value:
134         :let &opt = val         like ":set"
135         :let &g:opt = val       like ":setglobal"
136         :let &l:opt = val       like ":setlocal"
139 'fileencoding' changed                          *fileencoding-changed*
140 ----------------------
142 'fileencoding' was used in Vim 5.x to set the encoding used inside all of Vim.
143 This was a bit strange, because it was local to a buffer and worked for all
144 buffers.  It could never be different between buffers, because it changed the
145 way text in all buffers was interpreted.
146 It is now used for the encoding of the file related to the buffer.  If you
147 still set 'fileencoding' it is likely to be overwritten by the detected
148 encoding from 'fileencodings', thus it is "mostly harmless".
149 The old FileEncoding autocommand now does the same as the new EncodingChanged
150 event.
153 Digraphs changed                                *digraphs-changed*
154 ----------------
156 The default digraphs now correspond to RFC1345.  This is very different from
157 what was used in Vim 5.x. |digraphs|
160 Filetype detection changed                      *filetypedetect-changed*
161 --------------------------
163 The filetype detection previously was using the "filetype" autocommand group.
164 This caused confusion with the FileType event name (case is ignored).  The
165 group is now called "filetypedetect".  It still works, but if the "filetype"
166 group is used the autocommands will not be removed by ":filetype off".
167    The support for 'runtimepath' has made the "myfiletypefile" and
168 "mysyntaxfile" mechanism obsolete.  They are still used for backwards
169 compatibility.
171 The connection between the FileType event and setting the 'syntax' option was
172 previously in the "syntax" autocommand group.  That caused confusion with the
173 Syntax event name.  The group is now called "syntaxset".
175 The distributed syntax files no longer contain "syntax clear".  That makes it
176 possible to include one in the other without tricks.  The syntax is now
177 cleared when the 'syntax' option is set (by an autocommand added from
178 synload.vim).  This makes the syntax cleared when the value of 'syntax' does
179 not correspond to a syntax file.  Previously the existing highlighting was
180 kept.
183 Unlisted buffers introduced                     *new-unlisted-buffers*
184 ---------------------------
186 There is now a difference between buffers which don't appear in the buffer
187 list and buffers which are really not in the buffer list.  Commands like
188 ":ls", ":bnext", ":blast" and the Buffers menu will skip buffers not in the
189 buffer list. |unlisted-buffer|
190 The 'buflisted' option can be used to make a buffer appear in the buffer list
191 or not.
193 Several commands that previously added a buffer to the buffer list now create
194 an unlisted buffer.  This means that a ":bnext" and ":ball" will not find these
195 files until they have actually been edited.  For example, buffers used for the
196 alternative file by ":write file" and ":read file".
197    Other commands previously completely deleted a buffer and now only remove
198 the buffer from the buffer list.  Commands relying on a buffer not to be
199 present might fail.  For example, a ":bdelete" command in an autocommand that
200 relied on something following to fail (was used in the automatic tests).
201 |:bwipeout| can be used for the old meaning of ":bdelete".
203 The BufDelete autocommand event is now triggered when a buffer is removed from
204 the buffer list.  The BufCreate event is only triggered when a buffer is
205 created that is added to the buffer list, or when an existing buffer is added
206 to the buffer list.  BufAdd is a new name for BufCreate.
207 The new BufNew event is for creating any buffer and BufWipeout for really
208 deleting a buffer.
210 When doing Insert mode completion, only buffers in the buffer list are
211 scanned.  Added the 'U' flag to 'complete' to do completion from unlisted
212 buffers.
214 Unlisted buffers are not stored in a viminfo file.
217 CTRL-U in Command-line mode changed             *CTRL-U-changed*
218 -----------------------------------
220 Using CTRL-U when editing the command line cleared the whole line.  Most
221 shells only delete the characters before the cursor.  Made it work like that.
222 (Steve Wall)
224 You can get the old behavior with CTRL-E CTRL-U: >
225         :cnoremap <C-U> <C-E><C-U>
228 Ctags gone                                      *ctags-gone*
229 ----------
231 Ctags is no longer part of the Vim distribution.  It's now a grown-up program
232 by itself, it deserves to be distributed separately.
233 Ctags can be found here: http://ctags.sf.net/.
236 Documentation reorganized                       *documentation-6*
237 -------------------------
239 The documentation has been reorganized, an item may not be where you found it
240 in Vim 5.x.
241 - The user manual was added, some items have been moved to it from the
242   reference manual.
243 - The quick reference is now in a separate file (so that it can be printed).
245 The examples in the documentation were previously marked with a ">" in the
246 first column.  This made it difficult to copy/paste them.  There is now a
247 single ">" before the example and it ends at a "<" or a non-blank in the first
248 column.  This also looks better without highlighting.
250 'helpfile' is no longer used to find the help tags file.  This allows a user
251 to add its own help files (e.g., for plugins).
254 Modeless selection and clipboard                *modeless-and-clipboard*
255 --------------------------------
257 The modeless selection is used to select text when Visual mode can't be used,
258 for example when editing the command line or at the more prompt.
259 In Vim 5.x the modeless selection was always used.  On MS-Windows this caused
260 the clipboard to be overwritten, with no way to avoid that.  The modeless
261 selection now obeys the 'a' and 'A' flags in 'guioptions' and "autoselect" and
262 "autoselectml" in 'clipboard'.  By default there is no automatic copy on
263 MS-Windows.  Use the |c_CTRL-Y| command to manually copy the selection.
265 To get the old behavior back, do this: >
267         :set clipboard^=autoselectml guioptions+=A
270 Small incompatibilities                         *incomp-small-6*
271 -----------------------
273 'backupdir', 'cdpath', 'directory', 'equalprg', 'errorfile', 'formatprg',
274 'grepprg', 'helpfile', 'makeef', 'makeprg', 'keywordprg', 'cscopeprg',
275 'viminfo' and 'runtimepath' can no longer be set from a modeline, for better
276 security.
278 Removed '_' from the 'breakat' default: It's commonly used in keywords.
280 The default for 'mousehide' is on, because this works well for most people.
282 The Amiga binary is now always compiled with "big" features.  The "big" binary
283 archive no longer exists.
285 The items "[RO]", "[+]", "[help]", "[Preview]" and "[filetype]" in
286 'statusline' no longer have a leading space.
288 Non-Unix systems: When expanding wildcards for the Vim arguments, don't use
289 'suffixes'.  It now works as if the shell had expanded the arguments.
291 The 'lisp', 'smartindent' and 'cindent' options are not switched off when
292 'paste' is set.  The auto-indenting is disabled when 'paste' is set, but
293 manual indenting with "=" still works.
295 When formatting with "=" uses 'cindent' or 'indentexpr' indenting, and there
296 is no change in indent, this is not counted as a change ('modified' isn't set
297 and there is nothing to undo).
299 Report 'modified' as changed when 'fileencoding' or 'fileformat' was set.
300 Thus it reflects the possibility to abandon the buffer without losing changes.
302 The "Save As" menu entry now edits the saved file.  Most people expect it to
303 work like this.
305 A buffer for a directory is no longer added to the Buffers menu.
307 Renamed <Return> to <Enter>, since that's what it's called on most keyboards.
308 Thus it's now the hit-enter prompt instead of the hit-return prompt.
309 Can map <Enter> just like <CR> or <Return>.
311 The default for the 'viminfo' option is now '20,"50,h when 'compatible' isn't
312 set.  Most people will want to use it, including beginners, but it required
313 setting the option, which isn't that easy.
315 After using ":colder" the newer error lists are overwritten.  This makes it
316 possible to use ":grep" to browse in a tree-like way.  Must use ":cnewer 99"
317 to get the old behavior.
319 The patterns in 'errorformat' would sometimes ignore case (MS-Windows) and
320 sometimes not (Unix).  Now case is always ignored.  Add "\C" to the pattern to
321 match case.
323 The 16 bit MS-DOS version is now compiled without the +listcmds feature
324 (buffer list manipulation commands).  They are not often needed and this
325 executable needs to be smaller.
327 'sessionoptions' now includes "curdir" by default.  This means that restoring
328 a session will result in the current directory being restored, instead of
329 going to the directory where the session file is located.
331 A session deleted all buffers, deleting all marks.  Now keep the buffer list,
332 it shouldn't hurt for some existing buffers to remain present.
333 When the argument list is empty ":argdel *" caused an error message.
335 No longer put the search pattern from a tag jump in the history.
337 Use "SpecialKey" highlighting for unprintable characters instead of "NonText".
338 The idea is that unprintable text or any text that's displayed differently
339 from the characters in the file is using "SpecialKey", and "NonText" is used
340 for text that doesn't really exist in the file.
342 Motif now uses the system default colors for the menu and scrollbar.  Used to
343 be grey.  It's still possible to set the colors with ":highlight" commands and
344 resources.
346 Formatting text with "gq" breaks a paragraph at a non-empty blank line.
347 Previously the line would be removed, which wasn't very useful.
349 ":normal" does no longer hang when the argument ends in half a command.
350 Previously Vim would wait for more characters to be typed, without updating
351 the screen.  Now it pretends an <Esc> was typed.
353 Bitmaps for the toolbar are no longer searched for in "$VIM/bitmaps" but in
354 the "bitmaps" directories in 'runtimepath'.
356 Now use the Cmdline-mode menus for the hit-enter prompt instead of the Normal
357 mode menus.  This generally works better and allows using the "Copy" menu to
358 produce CTRL-Y to copy the modeless selection.
360 Moved the font selection from the Window to the Edit menu, together with the
361 other settings.
363 The default values for 'isfname' include more characters to make "gf" work
364 better.
366 Changed the license for the documentation to the Open Publication License.
367 This seemed fair, considering the inclusion of parts of the Vim book, which is
368 also published under the OPL.  The downside is that we can't force someone who
369 would sell copies of the manual to contribute to Uganda.
371 After  "ayy  don't let  ""yy  or  :let @" = val  overwrite the "a register.
372 Use the unnamed register instead.
374 MSDOS: A pattern "*.*" previously also matched a file name without a dot.
375 This was inconsistent with other versions.
377 In Insert mode, CTRL-O CTRL-\ CTRL-N {cmd} remains in Normal mode.  Previously
378 it would go back to Insert mode, thus confusing the meaning of CTRL-\ CTRL-N,
379 which is supposed to take us to Normal mode (especially in ":amenu").
381 Allow using ":" commands after an operator.  Could be used to implement a new
382 movement command.  Thus it no longer aborts a pending operator.
384 For the Amiga the "-d {device}" argument was possible.  When compiled with the
385 diff feature, this no longer works.  Use "-dev {device}" instead. |-dev|
387 Made the default mappings for <S-Insert> in Insert mode insert the text
388 literally, avoids that special characters like BS cause side effects.
390 Using ":confirm" applied to the rest of the line.  Now it applies only to the
391 command right after it.  Thus ":confirm if x | edit | endif" no longer works,
392 use ":if x | confirm edit | endif".  This was the original intention, that it
393 worked differently was a bug.
395 ==============================================================================
396 NEW FEATURES                                            *new-6*
398 Folding                                                 *new-folding*
399 -------
401 Vim can now display a buffer with text folded.  This allows overviewing the
402 structure of a file quickly.  It is also possible to yank, delete and put
403 folded text, for example to move a function to another position.
405 There is a whole bunch of new commands and options related to folding.
406 See |folding|.
409 Vertically split windows                                *new-vertsplit*
410 ------------------------
412 Windows can also be split vertically.  This makes it possible to have windows
413 side by side.  One nice use for this is to compare two similar files (see
414 |new-diff-mode|).  The 'scrollbind' option can be used to synchronize
415 scrolling.
417 A vertical split can be created with the commands:
418         :vsplit   or  CTRL-W v  or CTRL-W CTRL-V        |:vsplit|
419         :vnew                                           |:vnew|
420         :vertical {cmd}                                 |:vertical|
421 The last one is a modifier, which has a meaning for any command that splits a
422 window.  For example: >
423         :vertical stag main
424 Will vertically split the window and jump to the tag "main" in the new window.
426 Moving from window to window horizontally can be done with the |CTRL-W_h| and
427 |CTRL-W_l| commands.  The |CTRL-W_k| and |CTRL-W_j| commands have been changed
428 to jump to the window above or below the cursor position.
430 The vertical and horizontal splits can be mixed as you like.  Resizing windows
431 is easy when using the mouse, just position the pointer on a status line or
432 vertical separator and drag it.  In the GUI a special mouse pointer shape
433 indicates where you can drag a status or separator line.
435 To resize vertically split windows use the |CTRL-W_<| and |CTRL-W_>| commands.
436 To make a window the maximum width use the CTRL-W | command |CTRL-W_bar|.
438 To force a new window to use the full width or height of the Vim window,
439 these two modifiers are available:
440         :topleft {cmd}          New window appears at the top with full
441                                 width or at the left with full height.
442         :botright {cmd}         New window appears at the bottom with full
443                                 width or at the right with full height.
444 This can be combined with ":vertical" to force a vertical split: >
445         :vert bot dsplit DEBUG
446 This will open a window at the far right, occupying the full height of the Vim
447 window, with the cursor on the first definition of "DEBUG".
448 The help window is opened at the top, like ":topleft" was used, if the current
449 window is fewer than 80 characters wide.
451 A few options can be used to set the preferences for vertically split windows.
452 They work similar to their existing horizontal equivalents:
453         horizontal      vertical ~
454         'splitbelow'    'splitright'
455         'winheight'     'winwidth'
456         'winminheight'  'winminwidth'
457 It's possible to set 'winminwidth' to zero, so that temporarily unused windows
458 hardly take up space without closing them.
460 The new 'eadirection' option tells where 'equalalways' applies:
461         :set eadirection=both           both directions
462         :set eadirection=ver            equalize window heights
463         :set eadirection=hor            equalize windows widths
464 This can be used to avoid changing window sizes when you want to keep them.
466 Since windows can become quite narrow with vertical splits, text lines will
467 often not fit.  The 'sidescrolloff' has been added to keep some context left
468 and right of the cursor.  The 'listchars' option has been extended with the
469 "precedes" item, to show a "<" for example, when there is text left off the
470 screen. (Utz-Uwe Haus)
472 "-O" command line argument: Like "-o" but split windows vertically. (Scott
473 Urban)
475 Added commands to move the current window to the very top (CTRL-W K), bottom
476 (CTRL-W J), left (CTRL-W H) and right (CTRL-W L).  In the new position the
477 window uses the full width/height of the screen.
479 When there is not enough room in the status line for both the file name and
480 the ruler, use up to half the width for the ruler.  Useful for narrow windows.
483 Diff mode                                               *new-diff-mode*
484 ---------
486 In diff mode Vim shows the differences between two, three or four files.
487 Folding is used to hide the parts of the file that are equal.
488 Highlighting is used to show deleted and changed lines.
489 See |diff-mode|.
491 An easy way to start in diff mode is to start Vim as "vimdiff file1 file2".
492 Added the vimdiff manpage.
494 In a running Vim the |:diffsplit| command starts diff mode for the current
495 file and another file.  The |:diffpatch| command starts diff mode using the
496 current file and a patch file.  The |:diffthis| command starts diff mode for
497 the current window.
499 Differences can be removed with the |:diffget| and |:diffput| commands.
501 - The 'diff' option switches diff mode on in a window.
502 - The |:diffupdate| command refreshes the diffs.
503 - The 'diffopt' option changes how diffs are displayed.
504 - The 'diffexpr' option can be set how a diff is to be created.
505 - The 'patchexpr' option can be set how patch is applied to a file.
506 - Added the "diff" folding method.  When opening a window for diff-mode, set
507   'foldlevel' to zero and 'foldenable' on, to close the folds.
508 - Added the DiffAdd, DiffChange, DiffDelete and DiffText highlight groups to
509   specify the highlighting for differences.  The defaults are ugly...
510 - Unix: make a vimdiff symbolic link for "make install".
511 - Removed the now obsolete "vimdiff.vim" script from the distribution.
512 - Added the "[c" and "]c" commands to move to the next/previous change in diff
513   mode.
516 Easy Vim: click-and-type                                *new-evim*
517 ------------------------
519 eVim stands for "Easy Vim".  This is a separate program, but can also be
520 started as "vim -y".
522 This starts Vim with 'insertmode' set to allow click-and-type editing.  The
523 $VIMRUNTIME/evim.vim script is used to add mappings and set options to be able
524 to do most things like Notepad.  This is only for people who can't stand two
525 modes.
527 eView does the same but in readonly mode.
529 In the GUI a CTRL-C now only interrupts when busy with something, not when
530 waiting for a character.  Allows using CTRL-C to copy text to the clipboard.
533 User manual                                             *new-user-manual*
534 -----------
536 The user manual has been added.  It is organised around editing tasks.  It
537 reads like a book, from start to end.  It should allow beginners to start
538 learning Vim.  It helps everybody to learn using the most useful Vim features.
539 It is much easier to read than the reference manual, but omits details.  See
540 |user-manual|.
542 The user manual includes parts of the Vim book by Steve Oualline |frombook|.
543 It is published under the OPL |manual-copyright|.
545 When syntax highlighting is not enabled, the characters in the help file which
546 mark examples ('>' and '<') and header lines ('~') are replaced with a space.
548 When closing the help window, the window layout is restored from before
549 opening it, if the window layout didn't change since then.
550 When opening the help window, put it at the top of the Vim window if the
551 current window is fewer than 80 characters and not full width.
554 Flexible indenting                                      *new-indent-flex*
555 ------------------
557 Automatic indenting is now possible for any language.  It works with a Vim
558 script, which makes it very flexible to compute the indent.
560 The ":filetype indent on" command enables using the provided indent scripts.
561 This is explained in the user manual: |30.3|.
563 The 'indentexpr' option is evaluated to get the indent for a line.  The
564 'indentkeys' option tells when to trigger re-indenting.  Normally these
565 options are set from an indent script.  Like Syntax files, indent scripts will
566 be created and maintained by many people.
569 Extended search patterns                                *new-searchpat*
570 ------------------------
572 Added the possibility to match more than one line with a pattern. (partly by
573 Loic Grenie)
574 New items in a search pattern for multi-line matches:
575 \n              match end-of-line, also in []
576 \_[]            match characters in range and end-of-line
577 \_x             match character class and end-of-line
578 \_.             match any character or end-of-line
579 \_^             match start-of-line, can be used anywhere in the regexp
580 \_$             match end-of-line, can be used anywhere in the regexp
582 Various other new items in search patterns:
583 \c              ignore case for the whole pattern
584 \C              match case for the whole pattern
585 \m              magic on for the following
586 \M              magic off for the following
587 \v              make following characters "very magic"
588 \V              make following characters "very nomagic"
590 \@!             don't match atom before this.
591                 Example: "foo\(bar\)\@!" matches "foo " but not "foobar".
592 \@=             match atom, resulting in  zero-width match
593                 Example: "foo\(bar\)\@=" matches "foo" in "foobar".
594 \@<!            don't match preceding atom before the current position
595 \@<=            match preceding atom before the current position
596 \@>             match preceding atom as a subexpression
598 \&              match only when branch before and after it match
600 \%[]            optionally match a list of atoms; "end\%[if]" matches "end",
601                 "endi" and "endif"
602 \%(\)           like \(\), but without creating a back-reference; there can be
603                 any number of these, overcomes the limit of nine \( \) pairs
604 \%^             match start-of-file (Chase Tingley)
605 \%$             match end-of-file (Chase Tingley)
606 \%#             Match with the cursor position. (Chase Tingley)
607 \?              Just like "\=" but can't be used in a "?" command.
609 \%23l           match in line 23
610 \%<23l          match before line 23
611 \%>23l          match after line 23
612 \%23c, \%<23c, \%>23c   match in/before/after column 23
613 \%23v, \%<23v, \%>23v   match in/before/after virtual column 23
616 For syntax items:
617 \z(...\)        external reference match set (in region start pattern)
618 \z1 - \z9       external reference match use (in region skip or end pattern)
619         (Scott Bigham)
621 \zs             use position as start of match
622 \ze             use position as end of match
624 Removed limit of matching only up to 32767 times with *, \+, etc.
626 Added support to match multi-byte characters. (partly by Muraoka Taro)
627 Made "\<" and "\>" work for UTF-8. (Muraoka Taro)
630 UTF-8 support                                           *new-utf-8*
631 -------------
633 Vim can now edit files in UTF-8 encoding.  Up to 31 bit characters can be
634 used, but only 16 bit characters are displayed.  Up to two combining
635 characters are supported, they overprint the preceding character.
636 Double-wide characters are also supported.  See |UTF-8|.
638 UCS-2, UCS-4 and UTF-16 encodings are supported too, they are converted to
639 UTF-8 internally.  There is also support for editing Unicode files in a Latin1
640 environment.  Other encodings are converted with iconv() or an external
641 converter specified with 'charconvert'.
643 Many new items for Multi-byte support:
644 - Added 'encoding' option: specifies character encoding used inside Vim.  It
645   can be any 8-bit encoding, some double-byte encodings or Unicode.
646   It is initialized from the environment when a supported value is found.
647 - Added 'fileencoding' and 'fileencodings': specify character coding in a
648   file, similar to 'fileformat' and 'fileformats'.
649   When 'encoding' is "utf-8" and 'fileencodings' is "utf-8,latin1" this will
650   automatically switch to latin1 if a file does not contain valid UTF-8.
651 - Added 'bomb' option and detection of a BOM at the start of a file.  Can be
652   used with "ucs-bom" in 'fileencodings' to automatically detect a Unicode
653   file if it starts with a BOM.  Especially useful on MS-Windows (NT and
654   2000), which uses ucs-2le files with a BOM (e.g., when exporting the
655   registry).
656 - Added the 'termencoding' option: Specifies the encoding used for the
657   terminal.  Useful to put Vim in utf-8 mode while in a non-Unicode locale: >
658     :let &termencoding = &encoding
659     :set encoding=utf-8
660 - When 'viminfo' contains the 'c' flag, the viminfo file is converted from the
661   'encoding' it was written with to the current 'encoding'.
662 - Added ":scriptencoding" command: convert lines in a sourced script to
663   'encoding'.  Useful for menu files.
664 - Added 'guifontwide' to specify a font for double-wide characters.
665 - Added Korean support for character class detection.  Also fix cls() in
666   search.c. (Chong-Dae Park)
667 - Win32: Typing multi-byte characters without IME. (Alexander Smishlajev)
668 - Win32 with Mingw: compile with iconv library. (Ron Aaron)
669 - Win32 with MSVC: dynamically load iconv.dll library. (Muraoka Taro)
670 - Make it possible to build a version with multi-byte and iconv support with
671   Borland 5.5.  (Yasuhiro Matsumoto)
672 - Added 'delcombine' option: Delete combining character separately. (Ron
673   Aaron)
674 - The "xfontset" feature isn't required for "xim".  These are now two
675   independent features.
676 - XIM: enable XIM when typing a language character (Insert mode, Search
677   pattern, "f" or "r" command).  Disable XIM when typing a Normal mode
678   command.
679 - When the XIM is active, show "XIM" in the 'showmode' message. (Nam SungHyun)
680 - Support "CursorIM" for XIM.  (Nam SungHyun)
681 - Added 'm' flag to 'formatoptions': When wrapping words, allow splitting at
682   each multibyte character, not only at a space.
683 - Made ":syntax keyword" work with multi-byte characters.
684 - Added support for Unicode upper/lowercase flipping and comparing. (based on
685   patch by Raphael Finkel)
686   Let "~" on multi-byte characters that have a third case ("title case")
687   switch between the three cases. (Raphael Finkel)
689 Allow defining digraphs for multi-byte characters.
690 Added RFC1345 digraphs for Unicode.
691 Most Normal mode commands that accept a character argument, like "r", "t" and
692 "f" now accept a digraph.  The 'D' flag in 'cpoptions' disables this to remain
693 Vi compatible.
695 Added Language mapping and 'keymap' to be able to type multi-byte characters:
696 - Added the ":lmap" command and friends: Define mappings that are used when
697   typing characters in the language of the text.  Also for "r", "t", etc.  In
698   Insert and Command-line mode CTRL-^ switches the use of the mappings on/off.
699   CTRL-^ also toggles the use of an input method when no language mappings are
700   present.  Allows switching the IM back on halfway typing.
701 - "<char-123>" argument to ":map", allows to specify the decimal, octal or
702   hexadecimal value of a character.
703 - Implemented the 'keymap' option: Load a keymap file.  Uses ":lnoremap" to
704   define mappings for the keymap.  The new ":loadkeymap" command is used in
705   the keymap file.
706 - Added 'k' flag in 'statusline': Value of "b:keymap_name" or 'keymap' when
707   it's being used.  Uses "<lang>" when no keymap is loaded and ":lmap"s are
708   active.  Show this text in the default statusline too.
709 - Added the 'iminsert' and 'imsearch' options: Specify use of langmap mappings
710   and Input Method with an option. (Muraoka Taro)
711   Added 'imcmdline' option: When set the input method is always enabled when
712   starting to edit a command line.  Useful for a XIM that uses dead keys to
713   type accented characters.
714   Added 'imactivatekey' option to better control XIM.  (Muraoka Taro)
715 - When typing a mapping that's not finished yet, display the last character
716   under the cursor in Insert mode and Command-line mode.  Looks good for dead
717   characters.
718 - Made the 'langmap' option recognize multi-byte characters.  But mapping only
719   works for 8-bit characters.  Helps when using UTF-8.
720 - Use a different cursor for when ":lmap" mappings are active.  Can specify
721   two highlight groups for an item in 'guicursor'.  By default "lCursor" and
722   "Cursor" are equal, the user must set a color he likes.
723   Use the cursor color for hangul input as well. (Sung-Hyun Nam)
724 - Show "(lang)" for 'showmode' when language mapping is enabled.
725 - UTF-8: Made "r" work with a ":lmap" that includes a composing character.
726   Also works for "f", which now works to find a character that includes a
727   composing character.
729 Other multi-byte character additions:
730 - Support double-byte single-width characters for euc-jp: Characters starting
731   with 0x8E.  Added ScreenLines2[] to store the second byte.
734 Multi-language support                                  *new-multi-lang*
735 ----------------------
737 The messages used in Vim can be translated.  Several translations are
738 available.  This uses the gettext mechanism.  It allows adding a translation
739 without recompiling Vim.  |multi-lang| (partly by Marcin Dalecki)
741 The translation files are in the src/po directory.  The src/po/README.txt file
742 explains a few things about doing a translation.
744 Menu translations are available as well.  This uses the new |:menutranslate|
745 command.  The translations are found in the runtime directory "lang".  This
746 allows a user to add a translation.
748 Added |:language| command to set the language (locale) for messages, time and
749 character type.  This allows switching languages in Vim without changing the
750 locale outside of Vim.
752 Made it possible to have vimtutor use different languages.  (Eduardo Fernandez)
753 Spanish (Eduardo Fernandez), Italian (Antonio Colombo), Japanese (Yasuhiro
754 Matsumoto) and French (Adrien Beau) translations are included.
755 Added "vimtutor.bat": script to start Vim on a copy of the tutor file for
756 MS-Windows. (Dan Sharp)
758 - Added v:lang variable to be able to get current language setting.
759   (Marcin Dalecki)  Also v:lc_time and v:ctype.
760 - Make it possible to translate the dialogs used by the menus.  Uses global
761   "menutrans_" variables.  ":menutrans clear" deletes them.
762 - removed "broken locale" (Marcin Dalecki).
763 - Don't use color names in icons, use RGB values.  The names could be
764   translated.
765 - Win32: Added global IME support (Muraoka)
766 - Win32: Added dynamic loading of IME support.
767 - ":messages" prints a message about who maintains the messages or the
768   translations.  Useful to find out where to make a remark about a wrong
769   translation.
770 - --disable-nls argument for configure: Disable use of gettext(). (Sung-Hyun
771   Nam)
772 - Added NLS support for Win32 with the MingW compiler. (Eduardo Fernandez)
773 - When available, call bind_textdomain_codeset() to have gettext() translate
774   messages to 'encoding'.  This requires GNU gettext 0.10.36 or later.
775 - Added gettext support for Win32.  This means messages will be translated
776   when the locale is set and libintl.dll can be found.  (Muraoka Taro)
777   Also made it work with MingW compiler.  (Eduardo Fernandez)
778   Detect the language and set $LANG to get the appropriate translated messages
779   (if supported).  Also use $LANG to select a language, v:lang is a very
780   different kind of name.
781 - Made gvimext.dll use translated messages, if possible. (Yasuhiro Matsumoto)
784 Plugin support                                  *new-plugins*
785 --------------
787 To make it really easy to load a Vim script when starting Vim, the "plugin"
788 runtime directory can be used.  All "*.vim" files in it will be automatically
789 loaded.  For Unix, the directory "~/.vim/plugin" is used by default.  The
790 'runtimepath' option can be set to look in other directories for plugins.
791 |load-plugins| |add-plugin|
793 The |:runtime| command has been added to load one or more files in
794 'runtimepath'.
796 Standard plugins:
797 netrw.vim - Edit files over a network |new-network-files|
798 gzip.vim - Edit compressed files
799 explorer.vim - Browse directories |new-file-browser|
801 Added support for local help files. |add-local-help|.
802 When searching for help tags, all "doc/tags" files in 'runtimepath' are used.
803 Added the ":helptags" command: Generate a tags file for a help directory.
804 The first line of each help file is automagically added to the "LOCAL
805 ADDITIONS" section in doc/help.txt.
807 Added the <unique> argument to ":map": only add a mapping when it wasn't
808 defined before.
810 When displaying an option value with 'verbose' set will give a message about
811 where the option was last set.  Very useful to find out which script did set
812 the value.
814 The new |:scriptnames| command displays a list of all scripts that have been
815 sourced.
817 GUI: For Athena, Motif and GTK look for a toolbar bitmap in the "bitmaps"
818 directories in 'runtimepath'.  Allows adding your own bitmaps.
821 Filetype plugins                                *new-filetype-plugins*
822 -----------------
824 A new group of files has been added to do settings for specific file types.
825 These can be options and mappings which are specifically used for one value of
826 'filetype'.
828 The files are located in "$VIMRUNTIME/ftplugin".  The 'runtimepath' option
829 makes it possible to use several sets of plugins: Your own, system-wide,
830 included in the Vim distribution, etc.
832 To be able to make this work, several features were added:
833 - Added the "s:" variables, local to a script.  Avoids name conflicts with
834   global variables.  They can be used in the script and in functions,
835   autocommands and user commands defined in the script.  They are kept between
836   invocations of the same script.  |s:var|
837 - Added the global value for local options.  This value is used when opening
838   a new buffer or editing another file.  The option value specified in a
839   modeline or filetype setting is not carried over to another buffer.
840   ":set" sets both the local and the global value.
841   ":setlocal" sets the local option value only.
842   ":setglobal" sets or displays the global value for a local option.
843   ":setlocal name<" sets a local option to its global value.
844 - Added the buffer-local value for some global options: 'equalprg', 'makeprg',
845   'errorformat', 'grepprg', 'path', 'dictionary', 'thesaurus', 'tags',
846   'include' and 'define'.  This allows setting a local value for these global
847   options, without making it incompatible.
848 - Added mappings and abbreviations local to a buffer: ":map <buffer>".
849 - In a mapping "<Leader>" can be used to get the value of the "mapleader"
850   variable.  This simplifies mappings that use "mapleader".  "<Leader>"
851   defaults to "\".  "<LocalLeader>" does the same with "maplocalleader".  This
852   is to be used for mappings local to a buffer.
853 - Added <SID> Script ID to define functions and mappings local to a script.
854 - Added <script> argument to ":noremap" and ":noremenu": Only remap
855   script-local mappings.  Avoids that mappings from other scripts get in the
856   way, but does allow using mappings defined in the script.
857 - User commands can be local to a buffer: ":command -buffer".
859 The new ":setfiletype" command is used in the filetype detection autocommands,
860 to avoid that 'filetype' is set twice.
863 File browser                                            *new-file-browser*
864 ------------
866 When editing a directory, the explorer plugin will list the files in the
867 directory.  Pressing <Enter> on a file name edits that file.  Pressing <Enter>
868 on a directory moves the browser to that directory.
870 There are several other possibilities, such as opening a file in the preview
871 window, renaming files and deleting files.
874 Editing files over a network                            *new-network-files*
875 ----------------------------
877 Files starting with scp://, rcp://, ftp:// and http:// are recognized as
878 remote files.  An attempt is made to access these files with the indicated
879 method.  For http:// only reading is possible, for the others writing is also
880 supported.  Uses the netrw.vim script as a standard "plugin". |netrw|
882 Made "gf" work on a URL.  It no longer assumes the file is local on the
883 computer (mostly didn't work anyway, because the full path was required).
884 Adjusted test2 for this.
886 Allow using a URL in 'path'.  Makes ":find index.html" work.
888 GTK: Allow dropping a http:// and ftp:// URL on Vim.  The netrw plugin takes
889 care of downloading the file. (MiKael Berthe)
892 Window for command-line editing                         *new-cmdwin*
893 -------------------------------
895 The Command-line window can be used to edit a command-line with Normal and
896 Insert mode commands.  When it is opened it contains the history.  This allows
897 copying parts of previous command lines. |cmdwin|
899 The command-line window can be opened from the command-line with the key
900 specified by the 'cedit' option (like Nvi).  It can also be opened directly
901 from Normal mode with "q:", "q/" and "q?".
903 The 'cmdwinheight' is used to specify the initial height of the window.
905 In Insert mode CTRL-X CTRL-V can be used to complete an Ex command line, like
906 it's done on the command-line.  This is also useful for writing Vim scripts!
908 Additionally, there is "improved Ex mode".  Entered when Vim is started as
909 "exim" or "vim -E", and with the "gQ" command.  Works like repeated use of
910 ":", with full command-line editing and completion. (Ulf Carlsson)
913 Debugging mode                                          *new-debug-mode*
914 --------------
916 In debugging mode sourced scripts and user functions can be executed line by
917 line.  There are commands to step over a command or step into it. |debug-mode|
919 Breakpoints can be set to run until a certain line in a script or user
920 function is executed. |:breakadd|
922 Debugging can be started with ":debug {cmd}" to debug what happens when a
923 command executes.  The |-D| argument can be used to debug while starting up.
926 Cursor in virtual position                              *new-virtedit*
927 --------------------------
929 Added the 'virtualedit' option: Allow positioning the cursor where there is no
930 actual character in Insert mode, Visual mode or always. (Matthias Kramm)
931 This is especially useful in Visual-block mode.  It allows positioning a
932 corner of the area where there is no text character.  (Many improvements by
933 Chase Tingley)
936 Debugger interface                                      *new-debug-itf*
937 ------------------
939 This was originally made to work with Sun Visual Workshop. (Gordon Prieur)
940 See |debugger.txt|, |sign.txt| and |workshop.txt|.
942 Added the ":sign" command to define and place signs.  They can be displayed
943 with two ASCII characters or an icon.  The line after it can be highlighted.
944 Useful to display breakpoints and the current PC position.
946 Added the |:wsverb| command to execute debugger commands.
948 Added balloon stuff: 'balloondelay' and 'ballooneval' options.
950 Added "icon=" argument for ":menu".  Allows defining a specific icon for a
951 ToolBar item.
954 Communication between Vims                              *new-vim-server*
955 --------------------------
957 Added communication between two Vims.  Makes it possible to send commands from
958 one Vim to another.  Works for X-Windows and MS-Windows |clientserver|.
960 Use "--remote" to have files be edited in an already running Vim.
961 Use "--remote-wait" to do the same and wait for the editing to finish.
962 Use "--remote-send" to send commands from one Vim to another.
963 Use "--remote-expr" to have an expression evaluated in another Vim.
964 Use "--serverlist" to list the currently available Vim servers.  (X only)
965 There are also functions to communicate between the server and the client.
966 |remote_send()| |remote_expr()|
968 (X-windows version implemented by Flemming Madsen, MS-Windows version by Paul
969 Moore)
971 Added the command server name to the window title, so you can see which server
972 name belongs to which Vim.
974 Removed the OleVim directory and SendToVim.exe and EditWithVim.exe from the
975 distribution.  Can now use "gvim --remote" and "gvim --remote-send", which is
976 portable.
978 GTK+: Support running Vim inside another window.  Uses the --socketid argument
979 (Neil Bird)
982 Buffer type options                                     *new-buftype*
983 -------------------
985 The 'buftype' and 'bufhidden' options have been added.  They can be set to
986 have different kinds of buffers.  For example:
987 - 'buftype' = "quickfix": buffer with error list
988 - 'buftype' = "nofile" and 'bufhidden' = "delete": scratch buffer that will be
989   deleted as soon as there is no window displaying it.
991 'bufhidden' can be used to overrule the 'hidden' option for one buffer.
993 In combination with 'buflisted' and 'swapfile' this offers the possibility to
994 use various kinds of special buffers.  See |special-buffers|.
997 Printing                                                *new-printing*
998 --------
1000 Included first implementation of the ":hardcopy" command for printing
1001 to paper.  For MS-Windows any installed printer can be used.  For other
1002 systems a PostScript file is generated, which can be printed with the
1003 'printexpr' option.
1004 (MS-Windows part by Vince Negri, Vipin Aravind, PostScript by Vince Negri and
1005 Mike Williams)
1007 Made ":hardcopy" work with multi-byte characters. (Muraoka Taro, Yasuhiro
1008 Matsumoto)
1010 Added options to tune the way printing works: (Vince Negri)
1011 - 'printoptions' defines various things.
1012 - 'printheader' specifies the header format.  Added "N" field to 'statusline'
1013   for the page number.
1014 - 'printfont' specifies the font name and attributes.
1015 - 'printdevice' defines the default printer for ":hardcopy!".
1018 Ports                                                   *ports-6*
1019 -----
1021 Port to OS/390 Unix (Ralf Schandl)
1022 - A lot of changes to handle EBCDIC encoding.
1023 - Changed Ctrl('x') to Ctrl_x define.
1025 Included jsbmouse support. (Darren Garth)
1026 Support for dec mouse in Unix. (Steve Wall)
1028 Port to 16-bit MS Windows (Windows 3.1x) (Vince Negri)
1030 Port to QNX.  Supports the Photon GUI, mouse, etc. (Julian Kinraid)
1032 Allow cross-compiling the Win32 version with Make_ming.mak. (Ron Aaron)
1033 Added Python support for compiling with Mingw. (Ron Aaron)
1035 Dos 32 bit: Added support the Windows clipboard. (David Kotchan)
1037 Win32: Dynamically load Perl and Python.  Allows compiling Vim with these
1038 interfaces and will try to find the DLLs at runtime. (Muraoka Taro)
1040 Compiling the Win32 GUI with Cygwin.  Also compile vimrun, dosinst and
1041 uninstall.  (Gerfried)
1043 Mac: Make Vim compile with the free MPW compiler supplied by Apple.  And
1044 updates for CodeWarrior. (Axel Kielhorn)
1046 Added typecasts and ifdefs as a start to make Vim work on Win64 (George
1047 Reilly)
1050 Quickfix extended                                       *quickfix-6*
1051 -----------------
1053 Added the "error window".  It contains all the errors of the current error
1054 list.  Pressing <Enter> in a line makes Vim jump to that line (in another
1055 window).  This makes it easy to navigate through the error list.
1056 |quickfix-window|.
1058 - |:copen| opens the quickfix window.
1059 - |:cclose| closes the quickfix window.
1060 - |:cwindow| takes care that there is a quickfix window only when there are
1061   recognized errors. (Dan Sharp)
1063 - Quickfix also knows "info", next to "warning" and "error" types.  "%I" can be
1064   used for the start of a multi-line informational message. (Tony Leneis)
1065 - The "%p" argument can be used in 'errorformat' to get the column number from
1066   a line where "^" points to the column. (Stefan Roemer)
1067 - When using "%f" in 'errorformat' on a DOS/Windows system, also include "c:"
1068   in the filename, even when using "%f:".
1071 Operator modifiers                                      *new-operator-mod*
1072 ------------------
1074 Insert "v", "V" or CTRL-V between an operator and a motion command to force
1075 the operator to work characterwise, linewise or blockwise. |o_v|
1078 Search Path                                             *new-search-path*
1079 -----------
1081 Vim can search in a directory tree not only in downwards but also upwards.
1082 Works for the 'path', 'cdpath' and 'tags' options. (Ralf Schandl)
1084 Also use "**" for 'tags' option. (Ralf Schandl)
1086 Added 'includeexpr', can be used to modify file name found by 'include'
1087 option.
1088 Also use 'includeexpr' for "gf" and "<cfile>" when the file can't be found
1089 without modification.  Useful for doing "gf" on the name after an include or
1090 import statement.
1092 Added the 'cdpath' option: Locations to find a ":cd" argument. (Raf)
1094 Added the 'suffixesadd' option: Suffixes to be added to a file name when
1095 searching for a file for the "gf", "[I", etc. commands.
1098 Writing files improved                                  *new-file-writing*
1099 ----------------------
1101 Added the 'backupcopy' option: Select whether a file is to be copied or
1102 renamed to make a backup file.  Useful on Unix to speed up writing an ordinary
1103 file.  Useful on other systems to preserve file attributes and when editing a
1104 file on a Unix filesystem.
1106 Added the 'autowriteall' option.  Works like 'autowrite' but for more
1107 commands.
1109 Added the 'backupskip' option: A list of file patterns to skip making a backup
1110 file when it matches.  The default for Unix includes "/tmp/*", this makes
1111 "crontab -e" work.
1113 Added support for Access Control Lists (ACL) for FreeBSD and Win32.  The ACL
1114 is copied from the original file to the new file (or the backup if it's
1115 copied).
1116 ACL is also supported for AIX, Solaris and generic POSIX. (Tomas Ogren)
1117 And on SGI.
1120 Argument list                                           *new-argument-list*
1121 -------------
1123 The support for the argument list has been extended.  It can now be
1124 manipulated to contain the files you want it to contain.
1126 The argument list can now be local to a window.  It is created with the
1127 |:arglocal| command.  The |:argglobal| command can be used to go back to the
1128 global argument list.
1130 The |:argdo| command executes a command on all files in the argument list.
1132 File names can be added to the argument list with |:argadd|.  File names can
1133 be removed with |:argdelete|.
1135 "##" can be used like "#", it is replaced by all the names in the argument
1136 list concatenated.  Useful for ":grep foo ##".
1138 The |:argedit| adds a file to the argument list and edits it.  Like ":argadd"
1139 and then ":edit".
1142 Restore a View                                          *new-View*
1143 --------------
1145 The ":mkview" command writes a Vim script with the settings and mappings for
1146 one window.  When the created file is sourced, the view of the window is
1147 restored.  It's like ":mksession" for one window.
1148 The View also contains the local argument list and manually created, opened
1149 and closed folds.
1151 Added the ":loadview" command and the 'viewdir' option: Allows for saving and
1152 restoring views of a file with simple commands.  ":mkview 1" saves view 1 for
1153 the current file, ":loadview 1" loads it again.  Also allows quickly switching
1154 between two views on one file.  And saving and restoring manual folds and the
1155 folding state.
1157 Added 'viewoptions' to specify how ":mkview" works.
1159 ":mksession" now also works fine with vertical splits.  It has been further
1160 improved and restores the view of each window.  It also works properly with
1161 preview and quickfix windows.
1163 'sessionoptions' is used for ":mkview" as well.
1164 Added "curdir" and "sesdir" to 'sessionoptions'.  Allows selection of what
1165 the current directory will be restored to.
1167 The session file now also contains the argument list(s).
1170 Color schemes                                           *new-color-schemes*
1171 -------------
1173 Support for loading a color scheme.  Added the ":colorscheme" command.
1174 Automatically add menu entries for available schemes.
1175 Should now properly reset the colors when 'background' or 't_Co' is changed.
1176 ":highlight clear" sets the default colors again.
1177 ":syntax reset" sets the syntax highlight colors back to the defaults.
1178 For ":set bg&" guess the value.  This allows a color scheme to switch back to
1179 the default colors.
1180 When syntax highlighting is switched on and a color scheme was defined, reload
1181 the color scheme to define the colors.
1184 Various new items                                       *new-items-6*
1185 -----------------
1187 Normal mode commands: ~
1189 "gi"            Jump to the ^ mark and start Insert mode.  Also works when the
1190                 mark is just after the line. |gi|
1192 "g'm" and "g`m"
1193                 Jump to a mark without changing the jumplist.  Now you can use
1194                 g`" to jump to the last known position in a file without side
1195                 effects.  Also useful in mappings.
1197 [', [`, ]' and ]`
1198                 move the cursor to the next/previous lowercase mark.
1200 g_              Go to last non-blank in line. (Steve Wall)
1203 Options: ~
1205 'autoread'      When detected that a file changed outside of Vim,
1206                 automatically read a buffer again when it's not changed.
1207                 It has a global and a local value.  Use ":setlocal autoread<"
1208                 to go back to using the global value for 'autoread'.
1210 'debug'         When set to "msg" it will print error messages that would
1211                 otherwise be omitted.  Useful for debugging 'indentexpr' and
1212                 'foldexpr'.
1214 'lispwords'     List of words used for lisp indenting.  It was previously hard
1215                 coded.  Added a number of Lisp names to the default.
1217 'fold...'       Many new options for folding.
1219 'modifiable'    When off, it is impossible to make changes to a buffer.
1220                 The %m and %M items in 'statusline' show a '-'.
1222 'previewwindow' Set in the preview window.  Used in a session file to mark a
1223                 window as the preview window.
1225 'printfont'
1226 'printexpr'
1227 'printheader'
1228 'printdevice'
1229 'printoptions'  for ":hardcopy".
1231 'buflisted'     Makes a buffer appear in the buffer list or not.
1233 Use "vim{version}:" for modelines, only to be executed when the version is
1234 >= {version}.  Also "vim>{version}", "vim<{version}" and "vim={version}".
1237 Ex commands: ~
1239 :sav[eas][!] {file}
1240                 Works like ":w file" and ":e #", but without loading the file
1241                 again and avoiding other side effects. |:saveas|
1243 :silent[!] {cmd}
1244                 Execute a command silently.  Also don't use a delay that would
1245                 come after the message.  And don't do 'showmatch'.
1246                 RISCOS: Removed that "!~cmd" didn't output anything, and
1247                 didn't wait for <Enter> afterwards.  Can use ":silent !cmd"
1248                 now.
1249 :menu <silent>  Add a menu that won't echo Ex commands.
1250 :map <silent>   Add a mapping that won't echo Ex commands.
1252 :checktime      Check for changed buffers.
1254 :verbose {cmd}  Set 'verbose' for one command.
1256 :echomsg {expr}
1257 :echoerr {expr} Like ":echo" but store the message in the history. (Mark
1258                 Waggoner)
1260 :grepadd        Works just like ":grep" but adds to the current error list
1261                 instead of defining a new list. |:grepadd|
1263 :finish         Finish sourcing a file.  Can be used to skip the rest of a Vim
1264                 script. |:finish|
1266 :leftabove
1267 :aboveleft      Split left/above current window.
1269 :rightbelow
1270 :belowright     Split right/below current window.
1272 :first, :bfirst, :ptfirst, etc.
1273                 Alias for ":rewind".  It's more logical compared to ":last".
1275 :enew           Edit a new, unnamed buffer.  This is needed, because ":edit"
1276                 re-edits the same file. (Wall)
1278 :quitall        Same as ":qall".
1280 :match          Define match highlighting local to a window.  Allows
1281                 highlighting an item in the current window without interfering
1282                 with syntax highlighting.
1284 :menu enable
1285 :menu disable   Commands to enable/disable menu entries without removing them.
1286                 (Monish Shah)
1288 :windo          Execute a command in all windows.
1289 :bufdo          Execute a command in all buffers.
1291 :wincmd         Window (CTRL-W) command.  Useful when a Normal mode command
1292                 can't be used (e.g., for a CursorHold autocommand).  See
1293                 |CursorHold-example| for a nice application with it.
1295 :lcd and :lchdir
1296                 Set local directory for a window. (Benjie Chen)
1298 :hide {command}
1299                 Execute {command} with 'hidden' set.
1301 :emenu          in Visual mode to execute a ":vmenu" entry.
1303 :popup          Pop up a popup menu.
1305 :redraw         Redraw the screen even when busy with a script or function.
1307 :hardcopy       Print to paper.
1309 :compiler       Load a Vim script to do settings for a specific compiler.
1311 :z#             List numbered lines. (Bohdan Vlasyuk)
1314 New marks: ~
1316 '( and ')       Begin or end of current sentence.  Useful in Ex commands.
1317 '{ and '}       Begin or end of current paragraph.  Useful in Ex commands.
1318 '.              Position of the last change in the current buffer.
1319 '^              Position where Insert mode was stopped.
1321 Store the ^ and . marks in the viminfo file.  Makes it possible to jump to the
1322 last insert position or changed text.
1325 New functions: ~
1326 argidx()        Current index in argument list.
1327 buflisted()     Checks if the buffer exists and has 'buflisted' set.
1328 cindent()       Get indent according to 'cindent'.
1329 eventhandler()  Returns 1 when inside an event handler and interactive
1330                 commands can't be used.
1331 executable()    Checks if a program or batch script can be executed.
1332 filewritable()  Checks if a file can be written. (Ron Aaron)
1333 foldclosed()    Find out if there is a closed fold. (Johannes Zellner).
1334 foldcloseend()  Find the end of a closed fold.
1335 foldlevel()     Find out the foldlevel. (Johannes Zellner)
1336 foreground()    Move the GUI window to the foreground.
1337 getchar()       Get one character from the user.  Can be used to define a
1338                 mapping that takes an argument.
1339 getcharmod()    Get last used key modifier.
1340 getbufvar()     gets the value of an option or local variable in a buffer (Ron
1341                 Aaron)
1342 getfsize()      Return the size of a file.
1343 getwinvar()     gets the value of an option or local variable in a window (Ron
1344                 Aaron)
1345 globpath()      Find matching files in a list of directories.
1346 hasmapto()      Detect if a mapping to a string is already present.
1347 iconv()         Convert a string from one encoding to another.
1348 indent()        gets the indent of a line (Ron Aaron)
1349 inputdialog()   Like input() but use a GUI dialog when possible.  Currently
1350                 only works for Win32, Motif, Athena and GTK.
1351                 Use inputdialog() for the Edit/Settings/Text Width menu.  Also
1352                 for the Help/Find.. and Toolbar FindHelp items.
1353                 (Win32 support by Thore B. Karlsen)
1354                 (Win16 support by Vince Negri)
1355 inputsecret()   Ask the user to type a string without showing the typed keys.
1356                 (Charles Campbell)
1357 libcall()       for Unix (Neil Bird, Johannes Zellner, Stephen Wall)
1358 libcallnr()     for Win32 and Unix
1359 lispindent()    Get indent according to 'lisp'.
1360 mode()          Return a string that indicates the current mode.
1361 nextnonblank()  Skip blank lines forwards.
1362 prevnonblank()  Skip blank lines backwards.  Useful to for indent scripts.
1363 resolve()       MS-Windows: resolve a shortcut to the file it points to.
1364                 Unix: resolve a symbolic link.
1365 search()        Search for a pattern.
1366 searchpair()    Search for matching pair.  Can be used in indent files to find
1367                 the "if" matching an endif.
1368 setbufvar()     sets an option or variable local to a buffer (Ron Aaron)
1369 setwinvar()     sets an option or variable local to a window (Ron Aaron)
1370 stridx()        Search for first occurrence of one string in another.
1371 strridx()       Search for last occurrence of one string in another.
1372 tolower()       Convert string to all-lowercase.
1373 toupper()       Convert string to all-uppercase.
1374 type()          Check the type of an expression.
1375 wincol()        window column of the cursor
1376 winwidth()      Width of a window. (Johannes Zellner)
1377 winline()       window line of the cursor
1380 Added expansion of curly braces in variable and function names.  This can be
1381 used for variable names that include the value of an option.  Or a primitive
1382 form of arrays. (Vince Negri)
1385 New autocommand events: ~
1386 BufWinEnter     Triggered when a buffer is displayed in a window, after using
1387                 the modelines.  Can be used to load a view.
1388 BufWinLeave     Triggered when a buffer is no longer in a window.  Also
1389                 triggered when exiting Vim.  Can be used to save views.
1390 FileChangedRO   Triggered before making the first change to a read-only file.
1391                 Can be used to check-out the file. (Scott Graham)
1392 TermResponse    Triggered when the terminal replies to the version-request.
1393                 The v:termresponse internal variable holds the result.  Can be
1394                 used to react to the version of the terminal.  (Ronald Schild)
1395 FileReadCmd     Triggered before reading a file.
1396 BufReadCmd      Triggered before reading a file into a buffer.
1397 FileWriteCmd    Triggered before writing a file.
1398 BufWriteCmd     Triggered before writing a buffer into a file.
1399 FileAppendCmd   Triggered before appending to a file.
1400 FuncUndefined   Triggered when a user function is not defined. (Ron Aaron)
1402 The autocommands for the *Cmd events read or write the file instead of normal
1403 file read/write.  Use this in netrw.vim to be able to edit files on a remote
1404 system. (Charles Campbell)
1407 New Syntax files: ~
1409 bdf             BDF font definition (Nikolai Weibull)
1410 catalog         SGML catalog (Johannes Zellner)
1411 debchangelog    Debian Changelog (Wichert Akkerman)
1412 debcontrol      Debian Control (Wichert Akkerman)
1413 dot             dot (Markus Mottl)
1414 dsl             DSSSL syntax (Johannes Zellner)
1415 eterm           Eterm configuration (Nikolai Weibull)
1416 indent          Indent profile (Nikolai Weibull)
1417 lftp            LFTP (Nikolai Weibull)
1418 lynx            Lynx config (Doug Kearns)
1419 mush            mush sourcecode (Bek Oberin)
1420 natural         Natural (Marko Leipert)
1421 pilrc           Pal resource compiler (Brian Schau)
1422 plm             PL/M (Philippe Coulonges)
1423 povini          Povray configuration (David Necas)
1424 ratpoison       Ratpoison config/command (Doug Kearns)
1425 readline        readline config (Nikolai Weibull)
1426 screen          Screen RC (Nikolai Weibull)
1427 specman         Specman (Or Freund)
1428 sqlforms        SQL*Forms (Austin Ziegler)
1429 terminfo        terminfo (Nikolai Weibull)
1430 tidy            Tidy configuration (Doug Kearns)
1431 wget            Wget configuration (Doug Kearns)
1434 Updated many syntax files to work both with Vim 5.7 and 6.0.
1436 Interface to Ruby. (Shugo Maeda)
1437 Support dynamic loading of the Ruby interface on MS-Windows. (Muraoka Taro)
1438 Support this for Mingw too. (Benoit Cerrina)
1440 Win32: Added possibility to load TCL dynamically. (Muraoka Taro)
1441 Also for Borland 5.5. (Dan Sharp)
1443 Win32: When editing a file that is a shortcut (*.lnk file), edit the file it
1444 links to.  Unless 'binary' is set, then edit the shortcut file itself.
1445 (Yasuhiro Matsumoto)
1447 The ":command" command now accepts a "-bar" argument.  This allows the user
1448 command to be followed by "| command".
1450 The preview window is now also used by these commands:
1451 - |:pedit| edits the specified file in the preview window
1452 - |:psearch| searches for a word in included files, like |:ijump|, and
1453   displays the found text in the preview window.
1454 Added the CTRL-W P command: go to preview window.
1456 MS-DOS and MS-Windows also read the system-wide vimrc file $VIM/vimrc.  Mostly
1457 for NT systems with multiple users.
1459 A double-click of the mouse on a character that has a "%" match selects from
1460 that character to the match.  Similar to "v%".
1462 "-S session.vim" argument: Source a script file when starting up.  Convenient
1463 way to start Vim with a session file.
1465 Added "--cmd {command}" Vim argument to execute a command before a vimrc file
1466 is loaded. (Vince Negri)
1468 Added the "-M" Vim argument: reset 'modifiable' and 'write', thus disallow
1469 making changes and writing files.
1471 Added runtime/delmenu.vim.  Source this to remove all menus and prepare for
1472 loading new menus.  Useful when changing 'langmenu'.
1474 Perl script to filter Perl error messages to quickfix usable format. (Joerg
1475 Ziefle)
1477 Added runtime/macros/less.vim: Vim script to simulate less, but with syntax
1478 highlighting.
1480 MS-Windows install program: (Jon Merz)
1481 - The Win32 program can now create shortcuts on the desktop and install Vim in
1482   the Start menu.
1483 - Possibly remove old "Edit with Vim" entries.
1484 - The Vim executable is never moved or $PATH changed.  A small batch file is
1485   created in a directory in $PATH.  Fewer choices to be made.
1486 - Detect already installed Vim versions and offer to uninstall them first.
1488 Improved the MS-Windows uninstal program.  It now also deletes the entries in
1489 the Start menu, icons from the desktop and the created batch files. (Jon Merz)
1490 Also made it possible to delete only some of these.  Also unregister gvim for
1491 OLE.
1493 Generate a self-installing Vim package for MS-Windows.  This uses NSIS. (Jon
1494 Merz et al.)
1496 Added ":filetype detect".  Try detecting the filetype again.  Helps when
1497 writing a new shell script, after adding "#!/bin/csh".
1499 Added ":augroup! name" to delete an autocommand group.  Needed for the
1500 client-server "--remote-wait".
1502 Add the Vim version number to the viminfo file, useful for debugging.
1504 ==============================================================================
1505 IMPROVEMENTS                                            *improvements-6*
1507 Added the 'n' flag in 'cpoptions': When omitted text of wrapped lines is not
1508 put between line numbers from 'number' option.  Makes it a lot easier to read
1509 wrapped lines.
1511 When there is a format error in a tags file, the byte position is reported so
1512 that the error can be located.
1514 "gf" works in Visual mode: Use the selected text as the file name. (Chase
1515 Tingley)
1517 Allow ambiguous mappings.  Thus "aa" and "aaa" can both be mapped, the longest
1518 matching one is used.  Especially useful for ":lmap" and 'keymap'.
1520 Encryption: Ask the key to be typed twice when crypting the first time.
1521 Otherwise a typo might cause the text to be lost forever. (Chase Tingley)
1523 The window title now has "VIM" on the end.  The file name comes first, useful
1524 in the taskbar.  A "+" is added when the file is modified.  "=" is added for
1525 a read-only file.  "-" is added for a file with 'modifiable' off.
1527 In Visual mode, mention the size of the selected area in the 'showcmd'
1528 position.
1530 Added the "b:changedtick" variable.  Incremented at each change, also for
1531 undo.  Can be used to take action only if the buffer has been changed.
1533 In the replacement string of a ":s" command "\=" can be used to replace with
1534 the result of an expression.  From this expression the submatch() function can
1535 be used to access submatches.
1537 When doing ":qall" and there is a change in a buffer that is being edited in
1538 another window, jump to that window, instead of editing that buffer in the
1539 current window.
1541 Added the "++enc=" and "++ff=" arguments to file read/write commands to force
1542 using the given 'encoding' or 'fileformat'.  And added the "v:cmdarg"
1543 variable, to be used for FileReadCmd autocommands that read/write the file
1544 themselves.
1546 When reading stdin, first read the text in binary mode and then re-read it
1547 with automatic selection of 'fileformat' and 'fileencoding'.  This avoids
1548 problems with not being able to rewind the file (e.g., when a line near the
1549 end of the file ends in LF instead of CR-LF).
1550 When reading text from stdin and the buffer is empty, don't mark it changed.
1551 Allows exiting without trouble.
1553 Added an ID to many error messages.  This will make it easier to find help for
1554 a message.
1556 Insert mode:
1557 - "CTRL-G j" and "CTRL-G k" can be used to insert in another line in the same
1558   column.  Useful for editing a table.
1559 - Added Thesaurus completion with CTRL-X CTRL-T. (Vince Negri)
1560 - Added the 'thesaurus' option, to use instead of 'dictionary' for thesaurus
1561   completion.  Added the 's' flag in 'complete'.
1562 - Made CTRL-X CTRL-L in Insert mode use the 'complete' option.  It now also
1563   scans other loaded buffers for matching lines.
1564 - CTRL-R now also works in Insert mode while doing completion with CTRL-X or
1565   CTRL-N. (Neil Bird)
1566 - When doing Insert mode completion, when completion is finished check for a
1567   match with words from 'cinkeys' or 'indentkeys'.
1569 Performance:
1570 - Made display updating more efficient.  Insert/delete lines may be used for
1571   all changes, also for undo/redo.
1572 - The display is not redrawn when there is typeahead in Insert mode.  Speeds
1573   up CTRL-R a lot.
1574 - Improved speed of screen output for 32 bit DOS version. (Vince Negri)
1575 - When dragging with the mouse, there is a lookahead to skip mouse codes when
1576   there is another one next.  Makes dragging with the mouse a lot faster.
1577 - Also a memory usage improvement: When calling u_save with a single line,
1578   don't save it if the line was recently saved for the same undo already.
1579 - When using a script that appends one character at a time, the amount of
1580   allocated memory was growing steadily.  Also when 'undolevels' is -1.
1581   Caused by the line saved for "U" never to be freed.  Now free an undo block
1582   when it becomes empty.
1583 - GUI and Dos32: Use a vertical scroll region, to make scrolling in a
1584   vertically split window faster.  No need to redraw the whole window.
1585 - When scrolling isn't possible with terminal codes (e.g., for a vertically
1586   split window) redraw from ScreenLines[].  That should be faster than going
1587   through the lines with win_line(), especially when using syntax
1588   highlighting.
1589 - The Syntax menu is now pre-generated by a separate script.  Makes loading
1590   the menu 70% faster.  This can halve the startup time of gvim.
1591 - When doing ":help tag", don't open help.txt first, jump directly to the help
1592   tag.  It's faster and avoids an extra message.
1593 - Win32: When a file name doesn't end in ".lnk" don't try resolving a
1594   shortcut, it takes quite a bit of time.
1595 - Don't update the mouse pointer shape while there are typeahead characters.
1596 - Change META[] from a string into an array, avoids using strchr() on it.
1597 - Don't clear the command line when adding characters, avoids that screen_fill
1598   is called but doesn't do anything.
1600 Robustness:
1601 - Unix: Check for running out of stack space when executing a regexp.  Avoids
1602   a nasty crash.  Only works when the system supports running the signal
1603   function on another stack.
1604 - Disallow ":source <dirname>".  On unix it's possible to read a directory,
1605   does not make sense to use it as Vim commands.
1607 Security:
1608 - When reading from or writing to a temporary file, check that it isn't a
1609   symbolic link.  Gives some protection against symlink attacks.
1610 - When creating a backup file copy or a swap file, check for it already
1611   existing to avoid a symlink attack. (Colin Phipps)
1612 - Evaluating options which are an expression is done in a |sandbox|.  If the
1613   option was set by a modeline, it cannot cause damage.
1614 - Use a secure way to generate temp file names: Create a private directory for
1615   temp files.  Used for Unix, MS-DOS and OS/2.
1616 - 'makeef' can be empty, which means that an internally generated file name is
1617   used.  The old default was "/tmp/file", which is a security risk.
1618   Writing 'makeef' in the current directory fails in a read-only directory and
1619   causes trouble when using ":grep" on all files.  Made the default empty for
1620   all systems, so that a temp file is used.
1621 - The command from a tags file is executed in the sandbox for better security.
1622 - The Ruby, Tcl and Python interfaces cannot be used from the sandbox.  They
1623   might do dangerous things.  Perl is still possible, but limited to the Safe
1624   environment. (Donnie Smith)
1626 Syntax highlighting:
1627 - Optimized the speed by caching the state stack all over the file, not just
1628   the part being displayed.  Required for folding.
1629 - Added ":syntax sync fromstart": Always parse from the start of the file.
1630 - Added the "display" argument for syntax items: use the item only when
1631   displaying the result.  Can make parsing faster for text that isn't going to
1632   be displayed.
1633 - When using CTRL-L, the cached states are deleted, to force parsing the text
1634   again.
1635 - Use elfhash algorithm for table of keywords.  This should give a better
1636   distribution and speedup keyword lookup. (Campbell)
1637 - Also allow the "lc" leading context for skip and end patterns. (Scott
1638   Bigham)
1639 - Syntax items can have the "extend" argument to undo the effect of a
1640   "keepend" argument of an item it is contained in.  Makes it possible to have
1641   some contained items extend a region while others don't.
1642 - ":syntax clear" now deletes the b:current_syntax variable.  That's logical,
1643   since no syntax is defined after this command.
1644 - Added ":syntax enable": switch on syntax highlighting without changing the
1645   colors.  This allows specifying the colors in the .vimrc file without the
1646   need for a mysyntaxfile.
1647 - Added ":syntax reset": reset the colors to their defaults.
1648 - Added the "contains=TOP" and "contains=CONTAINED" arguments.  Makes it
1649   possible to define a transparent item that doesn't contain itself.
1650 - Added a "containedin" argument to syntax items.  Allows adding a contained
1651   item to an existing item (e.g., to highlight a name in a comment).
1653 Modeless selection:
1654 - When in the command-line window, use modeless selection in the other
1655   windows.  Makes it possible to copy visible text to the command-line window.
1656 - Support modeless selection on the cmdline in a terminal.  Previously it was
1657   only possible for the GUI.
1658 - Make double-right-click in modeless selection select a whole word.  Single
1659   right click doesn't use the word selection started by a double-left-click.
1660   Makes it work like in Visual mode.
1661 - The modeless selection no longer has an implied automatic copy to the
1662   clipboard.  It now obeys the 'a' and 'A' flags in 'guioptions' or
1663   "autoselect" and "autoselectml" in 'clipboard'.
1664 - Added the CTRL-Y command in Cmdline-mode to copy the modeless selection to
1665   the clipboard.  Also works at the hit-enter prompt and the more prompt.
1666   Removed the mappings in runtime/mswin.vim for CTRL-Y and CTRL-Z in
1667   cmdline-mode to be able to use CTRL-Y in the new way.
1669 Reduced the amount of stack space used by regmatch() to allow it to handle
1670 complicated patterns on a longer text.
1672 'isfname' now includes '%' and '#'.  Makes "vim dir\#file" work for MS-DOS.
1674 Added keypad special keys <kEnter>, <k0> - <k9>.  When not mapped they behave
1675 like the ASCII equivalent. (Ivan Wellesz and Vince Negri)
1676 Recognize a few more xterm keys: <C-Right>, <C-Left>, <C-End>, <C-Home>
1678 Also trigger the BufUnload event when Vim is going to exit.  Perhaps a script
1679 needs to do some cleaning up.
1681 Expand expression in backticks: `={expr}`.  Can be used where backtick
1682 expansion is done. (Vince Negri)
1684 GUI:
1685 - Added 'L' and 'R' flags in 'guioptions': Add a left or right scrollbar only
1686   when there is a vertically split window.
1687 - X11: When a color can't be allocated, use the nearest match from the
1688   colormap.  This avoids that black is used for many things. (Monish Shah)
1689   Also do this for the menu and scrollbar, to avoid that they become black.
1690 - Win32 and X11: Added 'mouseshape' option: Adjust the mouse pointer shape to
1691   the current mode. (Vince Negri)
1692 - Added the 'linespace' option: Insert a pixel line between lines. (Nam)
1693 - Allow modeless selection (without moving the cursor) by keeping CTRL and
1694   SHIFT pressed. (Ivan Wellesz)
1695 - Motif: added toolbar. (Gordon Prieur)  Also added tooltips.
1696 - Athena: added toolbar and tooltips. (David Harrison -- based on Gordon
1697   Prieur's work)
1698 - Made the 'toolbar' option work for Athena and Motif.  Can now switch between
1699   text and icons on the fly.  (David Harrison)
1700 - Support menu separator lines for Athena.  (David Harrison)
1701 - Athena: Adjust the arrow pixmap used in a pullright menu to the size of the
1702   font. (David Harrison)
1703 - Win32: Added "c" flag to 'guifont' to be able to specify the charset. (Artem
1704   Khodush)
1705 - When no --enable-xim argument is given, automatically enable it when a X GUI
1706   is used.  Required for dead key support (and multi-byte input).
1707 - After a file selection dialog, check that the edited files were not changed
1708   or deleted.  The Win32 dialog allows deleting and renaming files.
1709 - Motif and Athena: Added support for "editres". (Marcin Dalecki)
1710 - Motif and Athena: Added "menuFont" to be able to specify a font or fontset
1711   for the menus.  Can also be set with the "Menu" highlight group.  Useful
1712   when the locale is different from 'encoding'. (David Harrison)
1713   When FONTSET_ALWAYS is defined, always use a fontset for the menus.  Should
1714   avoid trouble with changing from a font to a fontset.  (David Harrison)
1715 - Highlighting and font for the tooltips can be specified with the "Tooltip"
1716   highlight group. (David Harrison)
1717 - The Cmdline-mode menus can be used at the more-prompt.  This mostly works
1718   fine, because they start with a CTRL-C.  The "Copy" menu works to copy the
1719   modeless selection.  Allows copying the output of ":set all" or ":intro"
1720   without auto-selection.
1721 - When starting the GUI when there is no terminal connected to stdout and
1722   stderr, display error messages in a dialog.  Previously they wouldn't be
1723   displayed at all.
1724 - Allow setting 'browsedir' to the name of a directory, to be used for the
1725   file dialog. (Dan Sharp)
1726 - b:browsefilter and g:browsefilter can be set to the filters used for the
1727   file dialog.  Supported for Win32 and Motif GUI. (Dan Sharp)
1729 X11:
1730 - Support for the clipboard selection as register "+.  When exiting or
1731   suspending copy the selection to cut buffer 0.  Should allow copy/paste with
1732   more applications in a X11-standard way.  (Neil Bird)
1733 - Use the X clipboard in any terminal, not just in an xterm.
1734   Added "exclude:" in 'clipboard': Specify a pattern to match against terminal
1735   names for which no connection should be made to the X server.  The default
1736   currently work for FreeBSD and Linux consoles.
1737 - Added a few messages for when 'verbose' is non-zero to show what happens
1738   when trying to connect to the X server.  Should help when trying to find out
1739   why startup is slow.
1741 GTK GUI: (partly by Marcin Dalecki)
1742 - With some fonts the characters can be taller than ascent + descent.  E.g.,
1743   "-misc-fixed-*-*-*-*-18-*-*-*-*-*-iso10646-1".  Add one to the character
1744   cell height.
1745 - Implement "no" value for 'winaltkeys': don't use Alt-Key as a menu shortcut,
1746   when 'wak' changed after creating the menus.
1747 - Setting 'wak' after the GUI started works.
1748 - recycle text GC's to reduce communication.
1749 - Adjust icon size to window manager.
1750 - Cleanup in font handling.
1751 - Replace XQueryColor with GDK calls.
1752 - Gnome support.  Detects Gnome in configure and uses different widgets.
1753   Otherwise it's much like GTK. (Andy Kahn)
1754   It is disabled by default, because it causes a few problems.
1755 - Removed the special code to fork first and then start the GUI.  Now use
1756   _exit() instead of exit(), this works fine without special tricks.
1757 - Dialogs sometimes appeared a bit far away.  Position the dialogs inside
1758   the gvim window. (Brent Verner)
1759 - When dropping a file on Vim, remove extra slashes from the start of the
1760   path.  Also shorten the file name if possible.
1762 Motif: (Marcin Dalecki)
1763 - Made the dialog layout better.
1764 - Added find and find/replace dialogs.
1765 - For the menus, change "iso-8859" to "iso_8859", Linux appears to need this.
1766 - Added icon to dialogs, like for GTK.
1767 - Use XPM bitmaps for the icon when possible.  Use the Solaris XpmP.h include
1768   file when it's available.
1769 - Change the shadow of the toolbar items to get a visual feedback of it being
1770   pressed on non-LessTif.
1771 - Use gadgets instead of windows for some items for speed.
1773 Command line completion:
1774 - Complete environment variable names. (Mike Steed)
1775 - For ":command", added a few completion methods: "mapping", "function",
1776   "expression" and "environment".
1777 - When a function doesn't take arguments, let completion add () instead of (.
1779 For MS-DOS, MS-Windows and OS/2: Expand %VAR% environment variables like $VAR.
1780 (Walter Briscoe)
1782 Redirect messages to the clipboard ":redir @*" and to the unnamed register
1783 ":redir @"". (Wall)
1785 ":let @/ = ''" clears the search pattern, instead of setting it to an empty
1786 string.
1788 Expression evaluation:
1789 - "? :" can be used like in C.
1790 - col("$") returns the length of the cursor line plus one. (Stephen P. Wall)
1791 - Optional extra argument for match(), matchend() and matchstr(): Offset to
1792   start looking for a match.
1793 - Made third argument to strpart() optional.  (Paul Moore, Zdenek Sekera)
1794 - exists() can also be used to check for Ex commands and defined autocommands.
1795 - Added extra argument to input(): Default text.
1796 - Also set "v:errmsg" when using ":silent! cmd".
1797 - Added the v:prevcount variable: v:count for the previous command.
1798 - Added "v:progname", name with which Vim was started. (Vince Negri)
1799 - In the verbose message about returning from a function, also show the return
1800   value.
1802 Cscope:
1803 - Added the cscope_connection() function. (Andy Kahn)
1804 - ":cscope kill -1" kills all cscope connections. (Andy Kahn)
1805 - Added the 'cscopepathcomp' option. (Scott Hauck)
1806 - Added ":scscope" command, split window and execute Cscope command. (Jason
1807   Duell)
1809 VMS:
1810 - Command line arguments are always uppercase.  Interpret a "-X" argument as
1811   "-x" and "-/X" as "-X".
1812 - Set 'makeprg' and 'grepprg' to meaningful defaults. (Zoltan Arpadffy)
1813 - Use the X-clipboard feature and the X command server. (Zoltan Arpadffy)
1815 Macintosh: (Dany St-Amant)
1816 - Allow a tags file to have CR, CR-LF or LF line separator. (Axel Kielhorn)
1817 - Carbonized (while keeping non Carbon code)
1818   (Some work "stolen" from Ammon Skidmore)
1819 - Improved the menu item index handling (should be faster)
1820 - Runtime commands now handle / in file name (MacOS 9 version)
1821 - Added ":winpos" support.
1822 - Support using "~" in file names for home directory.
1824 Options:
1825 - When using set += or ^= , check for items used twice.  Duplicates are
1826   removed.  (Vince Negri)
1827 - When setting an option that is a list of flags, remove duplicate flags.
1828 - If possible, use getrlimit() to set 'maxmemtot' and 'maxmem'. (Pina)
1829 - Added "alpha" to 'nrformats': increment or decrement an alphabetic character
1830   with CTRL-A and CTRL-X.
1831 - ":set opt&vi" sets an option to its Vi default, ":set opt&vim" to its Vim
1832   default.  Useful to set 'cpo' to its Vim default without knowing what flags
1833   that includes.
1834 - 'scrolloff' now also applies to a long, wrapped line that doesn't fit in the
1835   window.
1836 - Added more option settings to the default menus.
1837 - Updated the option window with new options.  Made it a bit easier to read.
1839 Internal changes:
1840 - Split line pointers in text part and attributes part.  Allows for future
1841   change to make attribute more than one byte.
1842 - Provide a qsort() function for systems that don't have it.
1843 - Changed the big switch for Normal mode commands into a table.  This cleans
1844   up the code considerably and avoids trouble for some optimizing compilers.
1845 - Assigned a negative value to special keys, to avoid them being mixed up with
1846   Unicode characters.
1847 - Global variables expand_context and expand_pattern were not supposed to be
1848   global.  Pass them to ExpandOne() and all functions called by it.
1849 - No longer use the global reg_ic flag.  It caused trouble and in a few places
1850   it was not set.
1851 - Removed the use of the stuff buffer for "*", "K", CTRL-], etc.  Avoids
1852   problem with autocommands.
1853 - Moved some code from ex_docmd.c to ex_cmds2.c.  The file was getting too
1854   big.  Also moved some code from screen.c to move.c.
1855 - Don't include the CRC table for encryption, generate it.  Saves quite a bit
1856   of space in the source code. (Matthias Kramm)
1857 - Renamed multibyte.c to mbyte.c to avoid a problem with 8.3 filesystems.
1858 - Removed the GTK implementation of ":findhelp", it now uses the
1859   ToolBar.FindHelp  menu entry.
1860 - Renamed mch_windexit() to mch_exit(), mch_init() to mch_early_init() and
1861   mch_shellinit() to mch_init().
1863 Highlighting:
1864 - In a ":highlight" listing, show "xxx" with the highlight color.
1865 - Added support for xterm with 88 or 256 colors.  The right color numbers will
1866   be used for the name used in a ":highlight" command. (Steve Wall)
1867 - Added "default" argument for ":highlight".  When included, the command is
1868   ignored if highlighting for the group was already defined.
1869   All syntax files now use ":hi default ..." to allow the user to specify
1870   colors in his vimrc file.  Also, the "if did_xxx_syntax_inits" is not needed
1871   anymore.  This greatly simplifies using non-default colors for a specific
1872   language.
1873 - Adjusted colortest.vim: Included colors on normal background and reduced the
1874   size by using a while loop. (Rafael Garcia-Suarez)
1875 - Added the "DarkYellow" color name.  Just to make the list of standard colors
1876   consistent, it's not really a nice color to use.
1878 When an xterm is in 8-bit mode this is detected by the code returned for
1879 |t_RV|.  All key codes are automatically converted to their 8-bit versions.
1881 The OPT_TCAP_QUERY in xterm patch level 141 and later is used to obtain the
1882 actual key codes used and the number of colors for t_Co.  Only when |t_RV| is
1883 also used.
1885 ":browse set" now also works in the console mode.  ":browse edit" will give an
1886 error message.
1888 ":bdelete" and ":bunload" only report the number of deleted/unloaded buffers
1889 when more than 'report'.  The message was annoying when deleting a buffer in a
1890 script.
1892 Jump list:
1893 - The number of marks kept in the jumplist has been increased from 50 to 100.
1894 - The jumplist is now stored in the viminfo file.  CTRL-O can be used to jump
1895   to positions from a previous edit session.
1896 - When doing ":split" copy the jumplist to the new window.
1898 Also set the '[ and '] marks for the "~" and "r" commands.  These marks are
1899 now always set when making a change with a Normal mode command.
1901 Python interface: Allow setting the width of a vertically split window. (John
1902 Cook)
1904 Added "=word" and "=~word" to 'cinkeys' (also used in 'indentkeys').
1906 Added "j1" argument in 'cinoptions': indent {} inside () for Java. (Johannes
1907 Zellner)
1908 Added the "l" flag in 'cinoptions'. (Anduin Withers)
1909 Added 'C', 'U', 'w' and 'm' flags to 'cinoptions'. (Servatius Brandt)
1911 When doing ":wall" or ":wqall" and a modified buffer doesn't have a name,
1912 mention its buffer number in the error message.
1914 ":function Name" lists the function with line numbers.  Makes it easier to
1915 find out where an error happened.
1917 In non-blockwise Visual mode, "r" replaces all selected characters with the
1918 typed one, like in blockwise Visual mode.
1920 When editing the last file in the argument list in any way, allow exiting.
1921 Previously this was only possible when getting to that file with ":next" or
1922 ":last".
1924 Added the '1' flag to 'formatoptions'. (Vit Stradal)
1925 Added 'n' flag in 'formatoptions': format a numbered list.
1927 Swap file:
1928 - When a swap file already exists, and the user selects "Delete" at the
1929   ATTENTION prompt, use the same ".swp" swapfile, to avoid creating a ".swo"
1930   file which won't always be found.
1931 - When giving the ATTENTION message and the date of the file is newer than the
1932   date of swap file, give a warning about this.
1933 - Made the info for an existing swap file a bit shorter, so that it still fits
1934   on a 24 line screen.
1935 - It was possible to make a symlink with the name of a swap file, linking to a
1936   file that doesn't exist.  Vim would then silently use another file (if open
1937   with O_EXCL refuses a symlink).  Now check for a symlink to exist.  Also do
1938   another check for an existing swap file just before creating it to catch a
1939   symlink attack.
1941 The g CTRL-G command also works in Visual mode and counts the number of words.
1942 (Chase Tingley)
1944 Give an error message when using 'shell' and it's empty.
1946 Added the possibility to include "%s" in 'shellpipe'.
1948 Added "uhex" value for 'display': show non-printable characters as <xx>.
1949 Show unprintable characters with NonText highlighting, also in the command
1950 line.
1952 When asked to display the value of a hidden option, tell it's not supported.
1954 Win32:
1955 - When dropping a shortcut on gvim (.lnk file) edit the target, not the
1956   shortcut itself.  (Yasuhiro Matsumoto)
1957 - Added C versions of the OpenWithVim and SendToVim programs. (Walter Briscoe)
1958 - When 'shell' is "cmd" or "cmd.exe", set 'shellredir' to redirect stderr too.
1959   Also check for the Unix shell names.
1960 - When $HOMEDRIVE and $HOMEPATH are defined, use them to define $HOME.  (Craig
1961   Barkhouse)
1963 Win32 console version:
1964 - Includes the user and system name in the ":version" message, when available.
1965   It generates a pathdef.c file for this.  (Jon Miner)
1966 - Set the window icon to Vim's icon (only for Windows 2000).  While executing
1967   a shell command, modify the window title to show this.  When exiting,
1968   restore the cursor position too.  (Craig Barkhouse)
1969 - The Win32 console version can be compiled with OLE support.  It can only
1970   function as a client, not as an OLE server.
1972 Errorformat:
1973 - Let "%p" in 'errorformat' (column of error indicated by a row of characters)
1974   also accept a line of dots.
1975 - Added "%v" item in 'errorformat': Virtual column number. (Dan Sharp)
1976 - Added a default 'errorformat' value for VMS. (Jim Bush)
1978 The "p" command can now be used in Visual mode.  It overwrites the selected
1979 text with the contents of a register.
1981 Highlight the <> items in the intro message to make clear they are special.
1983 When using the "c" flag for ":substitute", allow typing "l" for replacing this
1984 item and then stop: "last".
1986 When printing a verbose message about sourcing another file, print the line
1987 number.
1989 When resizing the Vim window, don't use 'equalalways'.  Avoids that making the
1990 Vim window smaller makes split windows bigger.  And it's what the docs say.
1992 When typing CTRL-D in Insert mode, just after an autoindent, then hitting CR
1993 kept the remaining white space.  Now made it work like BS: delete the
1994 autoindent to avoid a blank non-empty line results.
1996 Added a GetHwnd() call to the OLE interface.  (Vince Negri)
1998 Made ":normal" work in an event handler.  Useful when dropping a file on Vim
1999 and for CursorHold autocommands.
2001 For the MS-Windows version, don't change to the directory of the file when a
2002 slash is used instead of a backslash.  Explorer should always use a backslash,
2003 the user can use a slash when typing the command.
2005 Timestamps:
2006 - When a buffer was changed outside of Vim and regaining focus, give a dialog
2007   to allow the user to reload the file.  Now also for other GUIs than
2008   MS-Windows.  And also used in the console, when compiled with dialog
2009   support.
2010 - Inspect the file contents to find out if it really changed, ignore
2011   situations where only the time stamp changed (e.g., checking the file out
2012   from CVS).
2013 - When checking the timestamp, first check if the file size changed, to avoid
2014   a file compare then.  Makes it quicker for large (log) files that are
2015   appended to.
2016 - Don't give a warning for a changed or deleted file when 'buftype' is set.
2017 - No longer warn for a changed directory.  This avoids that the file explorer
2018   produces warnings.
2019 - Checking timestamps is only done for buffers that are not hidden.  These
2020   will be checked when they become unhidden.
2021 - When checking for a file being changed outside of Vim, also check if the
2022   file permissions changed.  When the file contents didn't change but the
2023   permissions did, give a warning.
2024 - Avoid checking too often, otherwise the dialog keeps popping up for a log
2025   file that steadily grows.
2027 Mapping <M-A> when 'encoding' is "latin1" and then setting 'encoding' to
2028 "utf-8" causes the first byte of a multi-byte to be mapped.  Can cause very
2029 hard to find problems.  Disallow mapping part of a multi-byte character.
2031 For ":python" and ":tcl" accept an in-line script. (Johannes Zellner)
2032 Also for ":ruby" and ":perl". (Benoit Cerrina)
2034 Made ":syn include" use 'runtimepath' when the file name is not a full path.
2036 When 'switchbuf' contains "split" and the current window is empty, don't split
2037 the window.
2039 Unix: Catch SIGPWR to preserve files when the power is about to go down.
2041 Sniff interface: (Anton Leherbauer)
2042 - fixed windows code, esp. the event handling stuff
2043 - adaptations for sniff 4.x ($SNIFF_DIR4)
2044 - support for adding sniff requests at runtime
2046 Support the notation <A-x> as an alias for <M-x>.  This logical, since the Alt
2047 key is used.
2049 ":find" accepts a count, which means that the count'th match in 'path' is
2050 used.
2052 ":ls" and ":buffers" output shows modified/readonly/modifiable flag.  When a
2053 buffer is active show "a" instead of nothing.  When a buffer isn't loaded
2054 show nothing instead of "-".
2056 Unix install:
2057 - When installing the tools, set absolute paths in tools scripts efm_perl.pl
2058   and mve.awk.  Avoids that the user has to edit these files.
2059 - Install Icons for KDE when the directories exist and the icons do not exist
2060   yet.
2062 Added has("win95"), to be able to distinguish between MS-Windows 95/98/ME and
2063 NT/2000/XP in a Vim script.
2065 When a ":cd" command was typed, echo the new current directory. (Dan Sharp)
2067 When using ":winpos" before the GUI window has been opened, remember the
2068 values until it is opened.
2070 In the ":version" output, add "/dyn" for features that are dynamically loaded.
2071 This indicates the feature may not always work.
2073 On Windows NT it is possible that a directory is read-only, but a file can be
2074 deleted.  When making a backup by renaming the file and 'backupdir' doesn't
2075 use the current directory, this causes the original file to be deleted,
2076 without the possibility to create a new file.  Give an extra error message
2077 then to warn to user about this.
2079 Made CTRL-R CTRL-O at the command line work like CTRL-R CTRL-R, so that it's
2080 consistent with Insert mode.
2082 ==============================================================================
2083 COMPILE TIME CHANGES                                    *compile-changes-6*
2085 All generated files have been moved out of the "src" directory.  This makes it
2086 easy to see which files are not edited by hand.  The files generated by
2087 configure are now in the "src/auto" directory.  For Unix, compiled object
2088 files go in the objects directory.
2090 The source archive was over the 1.4M floppy limit.  The archives are now split
2091 up into two runtime and two source archives.  Also provide a bzip2 compressed
2092 archive that contains all the sources and runtime files.
2094 Added "reconfig" as a target for make.  Useful when changing some of the
2095 arguments that require flushing the cache, such as switching from GTK to
2096 Motif.  Adjusted the meaning of GUI_INC_LOC and GUI_LIB_LOC to be consistent
2097 over different GUIs.
2099 Added src/README.txt to give an overview of the main parts of the source code.
2101 The Unix Makefile now fully supports using $(DESTDIR) to install to a specific
2102 location.  Replaces the manual setting of *ENDLOC variables.
2104 Added the possibility for a maintainer of a binary version to include his
2105 e-mail address with the --with-compiledby configure argument.
2107 Included features are now grouped in "tiny", "small", "normal", "big" and
2108 "huge".  This replaces "min-features" and "max-features".  Using "tiny"
2109 disables multiple windows for a really small Vim.
2111 For the tiny version or when FEAT_WINDOWS is not defined: Firstwin and lastwin
2112 are equal to curwin and don't use w_next and w_prev.
2114 Added the +listcmds feature.  Can be used to compile without the Vim commands
2115 that manipulate the buffer list and argument list (the buffer list itself is
2116 still there, can't do without it).
2118 Added the +vreplace feature.  It is disabled in the "small" version to avoid
2119 that the 16 bit DOS version runs out of memory.
2121 Removed GTK+ support for versions older than 1.1.16.
2123 The configure checks for using PTYs have been improved.  Code taken from a
2124 recent version of screen.
2126 Added configure options to install Vim, Ex and View under another name (e.g.,
2127 vim6, ex6 and view6).
2129 Added "--with-global-runtime" configure argument.  Allows specifying the
2130 global directory used in the 'runtimepath' default.
2132 Made enabling the SNiFF+ interface possible with a configure argument.
2134 Configure now always checks /usr/local/lib for libraries and
2135 /usr/local/include for include files.  Helps finding the stuff for iconv() and
2136 gettext().
2138 Moved the command line history stuff into the +cmdline_hist feature, to
2139 exclude the command line history from the tiny version.
2141 MS-Windows: Moved common functions from Win16 and Win32 to os_mswin.c.  Avoids
2142 having to change two files for one problem.  (Vince Negri)
2144 Moved common code from gui_w16.c and gui_w32.c to gui_w48.c (Vince Negri)
2146 The jumplist is now a separate feature.  It is disabled for the "small"
2147 version (16 bit MS-DOS).
2149 Renamed all types ending in _t to end in _T.  Avoids potential problems with
2150 system types.
2152 Added a configure check for X11 header files that implicitly define the return
2153 type to int. (Steve Wall)
2155 "make doslang" in the top directory makes an archive with the menu and .mo
2156 files for Windows.  This uses the files generated on Unix, these should work
2157 on MS-Windows as well.
2159 Merged a large part of os_vms.c with os_unix.c.  The code was duplicated in
2160 the past which made maintenance more work.  (Zoltan Arpadffy)
2162 Updated the Borland C version 5 Makefile: (Dan Sharp)
2163 - Fixed the Perl build
2164 - Added python and tcl builds
2165 - Added dynamic perl and dynamic python builds
2166 - Added uninstal.exe build
2167 - Use "yes" and "no" for the options, like in Make_mvc.mak.
2169 Win32: Merged Make_gvc.mak and Make_ovc.mak into one file: Make_ivc.mak.  It's
2170 much smaller, many unnecessary text has been removed. (Walter Briscoe)
2171 Added Make_dvc.mak to be able to debug exe generated with Make_mvc.mak in
2172 MS-Devstudio. (Walter Briscoe)
2174 MS-Windows: The big gvim.exe, which includes OLE, now also includes
2175 dynamically loaded Tcl, Perl and Python.  This uses ActivePerl 5.6.1,
2176 ActivePython 2.1.1 and ActiveTCL 8.3.3
2178 Added AC_EXEEXT to configure.in, to check if the executable needs ".exe" for
2179 Cygwin or MingW.  Renamed SUFFIX to EXEEXT in Makefile.
2181 Win32: Load comdlg32.dll delayed for faster startup.  Only when using VC 6.
2182 (Vipin Aravind)
2184 Win32: When compiling with Borland, allow using IME. (Yasuhiro Matsumoto)
2186 Win32: Added Makefile for Borland 5 to compile gvimext.dll. (Yasuhiro
2187 Matsumoto)
2189 ==============================================================================
2190 BUG FIXES                                               *bug-fixes-6*
2192 When checking the command name for "gvim", "ex", etc. ignore case.  Required
2193 for systems where case is ignored in command names.
2195 Search pattern "[a-c-e]" also matched a 'd' and didn't match a '-'.
2197 When double-clicking in another window, wasn't recognized as double click,
2198 because topline is different.  Added set_mouse_topline().
2200 The BROKEN_LOCALE check was broken.  (Marcin Dalecki)
2202 When "t_Co" is set, the default colors remain the same, thus wrong.  Reset the
2203 colors after changing "t_Co". (Steve Wall)
2205 When exiting with ":wqall" the messages about writing files could overwrite
2206 each other and be lost forever.
2208 When starting Vim with an extremely long file name (around 1024 characters) it
2209 would crash.  Added a few checks to avoid buffer overflows.
2211 CTRL-E could get stuck in a file with very long lines.
2213 ":au syntax<Tab>" expanded event names while it should expand groups starting
2214 with "syntax".
2216 When expanding a file name caused an error (e.g., for <amatch>) it was
2217 produced even when inside an "if 0".
2219 'cindent' formatted C comments differently from what the 'comments' option
2220 specified. (Steve Wall)
2222 Default for 'grepprg' didn't include the file name when only grepping in one
2223 file.  Now /dev/null has been added for Unix.
2225 Opening the option window twice caused trouble.  Now the cursor goes to the
2226 existing option window.
2228 ":sview" and ":view" didn't set 'readonly' for an existing buffer.  Now do set
2229 'readonly', unless the buffer is also edited in another window.
2231 GTK GUI: When 'guioptions' excluded 'g', the more prompt caused the toolbar
2232 and menubar to disappear and resize the window (which clears the text).
2233 Now always grey-out the toplevel menus to avoid that the menubar changes size
2234 or disappears.
2236 When re-using the current buffer for a new buffer, buffer-local variables were
2237 not deleted.
2239 GUI: when 'scrolloff' is 0 dragging the mouse above the window didn't cause a
2240 down scroll.  Now pass on a mouse event with mouse_row set to -1.
2242 Win32: Console version didn't work on telnet, because of switching between two
2243 console screens.  Now use one console screen and save/restore the contents
2244 when needed.  (Craig Barkhouse)
2246 When reading a file the magic number for encryption was included in the file
2247 length. (Antonio Colombo)
2249 The quickfix window contained leading whitespace and NULs for multi-line
2250 messages. (David Harrison)
2252 When using cscope, redundant tags were removed.  This caused a numbering
2253 problem, because they were all listed.  Don't remove redundant cscope tags.
2254 (David Bustos).
2256 Cscope: Test for which matches are in the current buffer sometimes failed,
2257 causing a jump to another match than selected. (David Bustos)
2259 Win32: Buffer overflow when adding a charset name in a font.
2261 'titlestring' and 'iconstring' were evaluating an expression in the current
2262 context, which could be a user function, which is a problem for local
2263 variables vs global variables.
2265 Win32 GUI: Mapping <M-F> didn't work.  Now handle SHIFT and CTRL in
2266 _OnSysChar().
2268 Win32 GUI: (on no file), :vs<CR>:q<CR> left a trail of pixels down the middle.
2269 Could also happen for the ruler.  screen_puts() didn't clear the right char in
2270 ScreenLines[] for the bold trick.
2272 Win32: ":%!sort|uniq" didn't work, because the input file name touches the
2273 "|".  Insert a space before the "|".
2275 OS/2: Expanding wildcards included non-existing files.  Caused ":runtime" to
2276 fail, which caused syntax highlighting to fail.
2278 Pasting a register containing CTRL-R on the command line could cause an
2279 endless loop that can't be interrupted.  Now it can be stopped with CTRL-C.
2281 When 'verbose' is set, a message for file read/write could overwrite the
2282 previous message.
2283 When 'verbose' is set, the header from ":select" was put after the last
2284 message.  Now start a new line.
2286 The hit-enter prompt reacted to the response of the t_RV string, causing
2287 messages at startup to disappear.
2289 When t_Co was set to 1, colors were still used.  Now only use color when t_Co
2290 > 1.
2292 Listing functions with ":function" didn't quit when 'q' or ':' was typed at
2293 the more prompt.
2295 Use mkstemp() instead of mktemp() when it's available, avoids a warning for
2296 linking on FreeBSD.
2298 When doing Insert mode completion it's possible that b_sfname is NULL.  Don't
2299 give it to printf() for the "Scanning" message.
2301 ":set runtimepath-=$VIMRUNTIME" didn't work, because expansion of wildcards
2302 was done after trying to remove the string.  Now for ":set opt+=val" and ":set
2303 opt-=val" the expansion of wildcards is done before adding or removing "val".
2305 Using CTRL-V with the "r" command with a blockwise Visual selection inserted a
2306 CTRL-V instead of getting a special character.
2308 Unix: Changed the order of libraries: Put -lXdmcp after -lX11 and -lSM -lICE
2309 after -lXdmcp.  Should fix link problem on HP-UX 10.20.
2311 Don't remove the last "-lm" from the link line.  Vim may link but fail later
2312 when the GUI starts.
2314 When the shell returns with an error when trying to expand wildcards, do
2315 include the pattern when the "EW_NOTFOUND" flag was set.
2316 When expanding wildcards with the shell fails, give a clear error message
2317 instead of just "1 returned".
2319 Selecting a Visual block, with the start partly on a Tab, deleting it leaves
2320 the cursor too far to the left.  Causes "s" to work in the wrong position.
2322 Pound sign in normal.c caused trouble on some compilers.  Use 0xA3 instead.
2324 Warning for changing a read-only file wasn't given when 'insertmode' was set.
2326 Win32: When 'shellxquote' is set to a double quote (e.g., using csh), ":!start
2327 notepad file" doesn't work.  Remove the double quotes added by 'shellxquote'
2328 when using ":!start". (Pavol Juhas)
2330 The "<f-args>" argument of ":command" didn't accept Tabs for white space.
2331 Also, don't add an empty argument when there are trailing blanks.
2333 ":e test\\je" edited "test\je", but ":next test\\je" edited "testje".
2334 Backslashes were removed one time too many for ":next".
2336 VMS: "gf" didn't work properly.  Use vms_fixfilename() to translate the file
2337 name. (Zoltan Arpadffy)
2339 After ":hi Normal ctermbg=black ctermfg=white" and suspending Vim not all
2340 characters are redrawn with the right background.
2342 When doing "make test" without +eval or +windows feature, many tests failed.
2343 Now have test1 generate a script to copy the correct output, so that a test
2344 that doesn't work is skipped.
2346 On FreeBSD the Perl interface added "-lc" to the link command and Python added
2347 "-pthread".  These two don't work together, because the libc_r library should
2348 be used.  Removed "-lc" from Perl, it should not be needed.
2349 Also: Add "-pthread" to $LIBS, so that the checks for functions is done with
2350 libc_r.  Sigaltstack() appears to be missing from libc_r.
2352 The Syntax sub-menus were getting too long, reorganized them and added another
2353 level for some languages.
2355 Visual block "r"eplace didn't work well when a Tab is partly included.
2356 (Matthias Kramm)
2358 When yanking a Visual block, where some lines end halfway the block, putting
2359 the text somewhere else doesn't insert a block.  Padd with spaces for missing
2360 characters.  Added "y_width" to struct yankreg. (Matthias Kramm)
2362 If a substitute string has a multibyte character after a backslash only the
2363 first byte of it was skipped. (Muraoka Taro)
2365 Win32: Numeric keypad keys were missing from the builtin termcap entry.
2367 When a file was read-only ":wa!" didn't force it to be written. (Vince Negri)
2369 Amiga: A file name starting with a colon was considered absolute but it isn't.
2370 Amiga: ":pwd" added a slash when in the root of a drive.
2372 Don't let 'ttymouse' default to "dec" when compiled with dec mouse support.
2373 It breaks the gpm mouse (Linux console).
2375 The prototypes for the Perl interface didn't work for threaded Perl.  Added a
2376 sed command to remove the prototypes from proto/if_perl.pro and added them
2377 manually to if_perl.xs.
2379 When ":w!" resets the 'readonly' option the title and status lines were not
2380 updated.
2382 ":args" showed the current file when the argument list was empty.  Made this
2383 work like Vi: display nothing.
2385 "99:<C-U>echo v:count" echoed "99" in Normal mode, but 0 in Visual mode.
2386 Don't set v:count when executing a stuffed command.
2388 Amiga: Got a requester for "home:" because it's in the default runtime path.
2389 Don't bring up a requester when searching for a file in 'path', sourcing the
2390 .vimrc file or using ":runtime".
2392 Win16 and Win32: Considered a file "\path\file" absolute.  Can cause the same
2393 file to appear as two different buffers.
2395 Win32: Renaming a file to an empty string crashed Vim.  Happened when using
2396 explorer.vim and hitting ESC at the rename prompt.
2398 Win32: strftime() crashed when called with a "-1" value for the time.
2400 Win32 with Borland compiler: mch_FullName() didn't work, caused tag file not
2401 to be found.
2403 Cscope sometimes jumped to the wrong tag. (David Bustos)
2405 OS/2: Could not find the tags file.  mch_expand_wildcards() added another
2406 slash to a directory name.
2408 When using ">>" the `] mark was not in the last column.
2410 When Vim was compiled without menu support, filetype.vim was still trying to
2411 source the menu.vim script. (Rafael Garcia-Suarez)
2413 ":ptag" added an item to the tag stack.
2415 Win32 IME: "gr" didn't use IME mode.
2417 In the "vim --help" message the term "options" was used for arguments.  That's
2418 confusing, call them "arguments".
2420 When there are two windows, and a BufUnload autocommand for closing window #1
2421 closed window #2, Vim would crash.
2423 When there is a preview window and only one other window, ":q" wouldn't exit.
2425 In Insert mode, when cancelling a digraph with ESC, the '?' wasn't removed.
2427 On Unix glob(".*") returned "." and "..", on Windows it didn't.  On Windows
2428 glob("*") also returned files starting with a dot.  Made this work like Unix
2429 on all systems.
2431 Win32: Removed old code to open a console.  Vimrun is now used and works fine.
2433 Compute the room needed by the intro message accurately, so that it also fits
2434 on a 25 line console. (Craig Barkhouse)
2436 ":ptnext" was broken.  Now remember the last tag used in the preview window
2437 separately from the tagstack.
2439 Didn't check for "-display" being the last argument. (Wichert Akkerman)
2441 GTK GUI: When starting "gvim" under some conditions there would be an X error.
2442 Don't replace the error handler when creating the xterm clipboard. (Wichert
2443 Akkerman)
2445 Adding a space after a help tag caused the tag not to be found.  E.g., ":he
2446 autoindent ".
2448 Was trying to expand a URL into a full path name.  On Windows this resulted in
2449 the current directory to be prepended to the URL.  Added vim_isAbsName() and
2450 vim_FullName() to avoid that various machine specific functions do it
2451 differently.
2453 ":n *.c" ":cd .." ":n" didn't use the original directory of the file.  Vi only
2454 does it for the current file (looks like a bug).  Now remember the buffer used
2455 for the entry in the argument list and use it's name (adjusted when doing
2456 ":cd"), unless it's deleted.
2458 When inserting a special key as its name ("<F8>" as four characters) after
2459 moving around in Insert mode, undo didn't work properly.
2461 Motif GUI: When using the right mouse button, for some people gvim froze for
2462 a couple of seconds (Motif 1.2?).  This doesn't happen when there is no Popup
2463 menu.  Solved by only creating a popup menu when 'mousemodel' is "popup" or
2464 "popup_setpos". (David Harrison)
2466 Motif: When adding many menu items, the "Help" menu disappeared but the
2467 menubar didn't wrap.  Now manually set the menubar height.
2469 When using <BS> in Insert mode to remove a line break, or using "J" to join
2470 lines, the cursor could end up halfway a multi-byte character. (Muraoka Taro)
2472 Removed defining SVR4 in configure.  It causes problems for some X header
2473 files and doesn't appear to be used anywhere.
2475 When 'wildignore' is used, 'ignorecase' for a tag match was not working.
2477 When 'wildignore' contains "*~" it was impossible to edit a file ending in a
2478 "~".  Now don't recognize a file ending in "~" as containing wildcards.
2480 Disabled the mouse code for OS/2.  It was not really used.
2482 ":mksession" always used the full path name for a buffer, also when the short
2483 name could be used.
2484 ":mkvimrc" and ":mksession" didn't save 'wildchar' and 'pastetoggle' in such a
2485 way that they would be restored.  Now use the key name if possible, this is
2486 portable.
2488 After recovering a file and abandoning it, an ":edit" command didn't give the
2489 ATTENTION prompt again.  Would be useful to be able to delete the file in an
2490 easy way.  Reset the BF_RECOVERED flag when unloading the buffer.
2492 histdel() could match or ignore case, depending on what happened before it.
2493 Now always match case.
2495 When a window size was specified when splitting a window, it would still get
2496 the size from 'winheight' or 'winwidth' if it's larger.
2498 When using "append" or "insert" inside a function definition, a line starting
2499 with "function" or "endfunction" caused confusion.  Now recognize the commands
2500 and skip lines until a ".".
2502 At the end of any function or sourced file need_wait_return could be reset,
2503 causing messages to disappear when redrawing.
2505 When in a while loop the line number for error messages stayed fixed.  Now the
2506 line number is remembered in the while loop.
2508 "cd c:/" didn't work on MS-DOS.  mch_isdir() removed a trailing slash.
2510 MS-Windows: getftime() didn't work when a directory had a trailing slash or
2511 backslash.  Didn't show the time in the explorer because of this.
2513 When doing wildcard completion, a directory "a/" sorted after "a-b".  Now
2514 recognize path separators when sorting files.
2516 Non-Unix systems: When editing "c:/dir/../file" and "c:/file" they were
2517 created as different buffers, although it's the same file.  Expand to a full
2518 file name also when an absolute name contains "..".
2520 "g&" didn't repeat the last substitute properly.
2522 When 'clipboard' was set to "unnamed", a "Y" command would not write to "0.
2523 Now make a copy of register 0 to the clipboard register.
2525 When the search pattern matches in many ways, it could not always be
2526 interrupted with a CTRL-C.  And CTRL-C would have to be hit once for every
2527 line when 'hlsearch' is on.
2528 When 'incsearch' is on and interrupting the search for a match, don't abandon
2529 the command line.
2531 When turning a directory name into a full path, e.g., with fnamemodify(),
2532 sometimes a slash was added.  Make this consistent: Don't add a slash.
2534 When a file name contains a "!", using it in a shell command will cause
2535 trouble: ":!cat %".  Escape the "!" to avoid that.  Escape it another time
2536 when 'shell' contains "sh".
2538 Completing a file name that has a tail that starts with a "~" didn't work:
2539 ":e view/~<Tab>".
2541 Using a ":command" argument that contains < and > but not for a special
2542 argument was not skipped properly.
2544 The DOS install program: On Win2000 the check for a vim.exe or gvim.exe in
2545 $PATH didn't work, it always found it in the current directory.
2546 Rename the vim.exe in the current dir to avoid this. (Walter Briscoe)
2548 In the MS-DOS/Windows install program, use %VIM% instead of an absolute path,
2549 so that moving Vim requires only one change in the batch file.
2551 Mac: mch_FullName() changed the "fname" argument and didn't always initialize
2552 the buffer.
2554 MS-DOS: mch_FullName() didn't fix forward/backward slashes in an absolute file
2555 name.
2557 "echo expand("%:p:h")" with an empty file name removed one directory name on
2558 MS-DOS.  For Unix, when the file name is a directory, the directory name was
2559 removed.  Now make it consistent: "%:p" adds a path separator for all systems,
2560 but no path separator is added in other situations.
2562 Unix: When checking for a CTRL-C (could happen any time) and there is an X
2563 event (e.g., clipboard updated) and there is typeahead, Vim would hang until a
2564 character was typed.
2566 MS-DOS, MS-Windows and Amiga: expanding "$ENV/foo" when $ENV ends in a colon,
2567 had the slash removed.
2569 ":he \^=" gave an error for using \_.  ":he ^=" didn't find tag :set^=.  Even
2570 "he :set^=" didn't find it.
2572 A tags file name "D:/tags" was used as file "tags" in "D:".  That doesn't work
2573 when the current path for D: isn't the root of the drive.
2575 Removed calls to XtInitializeWidgetClass(), they shouldn't be necessary.
2577 When using a dtterm or various other color terminals, and the Normal group has
2578 been set to use a different background color, the background wouldn't always
2579 be displayed with that color.  Added check for "ut" termcap entry: If it's
2580 missing, clearing the screen won't give us the current background color.  Need
2581 to draw each character instead.  Vim now also works when the "cl" (clear
2582 screen) termcap entry is missing.
2584 When repeating a "/" search command with a line offset, the "n" did use the
2585 offset but didn't make the motion linewise.  Made "d/pat/+2" and "dn" do the
2586 same.
2588 Win32: Trying to use ":tearoff" for a menu that doesn't exist caused a crash.
2590 OpenPTY() didn't work on Sequent.  Add a configure check for getpseudotty().
2592 C-indenting: Indented a line starting with ")" with the matching "(", but not
2593 a line starting with "x)" looks strange.  Also compute the indent for aligning
2594 with items inside the () and use the lowest indent.
2596 MS-DOS and Windows: ":n *.vim" also matched files ending in "~".
2597 Moved mch_expandpath() from os_win16.c and os_msdos.c to misc1.c, they are
2598 equal.
2600 Macintosh: (Dany St-Amant)
2601 - In Vi-compatible mode didn't read files with CR line separators.
2602 - Fixed a bug in the handling of Activate/Deactivate Event
2603 - Fixed a bug in gui_mch_dialog (using wrong pointer)
2605 Multibyte GDK XIM: While composing a multibyte-word, if user presses a
2606 mouse button, then the word is removed.  It should remain and composing end.
2607 (Sung-Hyun Nam)
2609 MS-DOS, MS-Windows and OS/2: When reading from stdin, automatic CR-LF
2610 conversion by the C library got in the way of detecting a "dos" 'fileformat'.
2612 When 'smartcase' is set, patterns with "\S" would also make 'ignorecase'
2613 reset.
2615 When clicking the mouse in a column larger than 222, it moved to the first
2616 column.  Can't encode a larger number in a character.  Now limit the number to
2617 222, don't jump back to the first column.
2619 GUI: In some versions CSI would cause trouble, either when typed directly or
2620 when part of a multi-byte sequence.
2622 When using multibyte characters in a ":normal" command, a trailing byte that
2623 is CSI or K_SPECIAL caused problems.
2625 Wildmenu didn't handle multi-byte characters.
2627 ":sleep 10" could not be interrupted on Windows, while "gs" could.  Made them
2628 both work the same.
2630 Unix: When waiting for a character is interrupted by an X-windows event (e.g.,
2631 to obtain the contents of the selection), the wait time would not be honored.
2632 A message could be overwritten quickly.  Now compute the remaining waiting
2633 time.
2635 Windows: Completing "\\share\c$\S" inserted a backslash before the $ and then
2636 the name is invalid.  Don't insert the backslash.
2638 When doing an auto-write before ":make", IObuff was overwritten and the wrong
2639 text displayed later.
2641 On the Mac the directories "c:/tmp" and "c:/temp" were used in the defaults
2642 for 'backupdir' and 'directory', they don't exist.
2644 The check for a new file not to be on an MS-DOS filesystem created the file
2645 temporarily, which can be slow.  Don't do this if there is another check for
2646 the swap file being on an MS-DOS filesystem.
2648 Don't give the "Changing a readonly file" warning when reading from stdin.
2650 When using the "Save As" menu entry and not entering a file name, would get an
2651 error message for the trailing ":edit #".  Now only do that when the
2652 alternate file name was changed.
2654 When Vim owns the X11 selection and is being suspended, an application that
2655 tries to use the selection hangs.  When Vim continues it could no longer
2656 obtain the selection.  Now give up the selection when suspending.
2658 option.h and globals.h were included in some files, while they were already
2659 included in vim.h.  Moved the definition of EXTERN to vim.h to avoid doing it
2660 twice.
2662 When repeating an operator that used a search pattern and the search pattern
2663 contained characters that have a special meaning on the cmdline (e.g., CTRL-U)
2664 it didn't work.
2666 Fixed various problems with using K_SPECIAL (0x80) and CSI (0x9b) as a byte in
2667 a (multibyte) character.  For example, the "r" command could not be repeated.
2669 The DOS/Windows install program didn't always work from a directory with a
2670 long filename, because $VIM and the executable name would not have the same
2671 path.
2673 Multi-byte:
2674 - Using an any-but character range [^x] in a regexp didn't work for UTF-8.
2675   (Muraoka Taro)
2676 - When backspacing over inserted characters in Replace mode multi-byte
2677   characters were not handled correctly. (Muraoka Taro)
2678 - Search commands "#" and "*" didn't work with multibyte characters. (Muraoka
2679   Taro)
2680 - Word completion in Insert mode didn't work with multibyte characters.
2681   (Muraoka Taro)
2682 - Athena/Motif GUI: when 'linespace' is non-zero the cursor would be drawn too
2683   wide (number of bytes instead of cell width).
2684 - When changing 'encoding' to "euc-jp" and inserting a character Vim would
2685   crash.
2686 - For euc-jp characters positioning the cursor would sometimes be wrong.
2687   Also, with two characters with 0x8e leading byte only the first one would be
2688   displayed.
2689 - When using DYNAMIC_ICONV on Win32 conversion might fail because of using the
2690   wrong error number. (Muraoka Taro)
2691 - Using Alt-x in the GUI while 'encoding' was set to "utf-8" didn't produce
2692   the right character.
2693 - When using Visual block selection and only the left halve of a double-wide
2694   character is selected, the highlighting continued to the end of the line.
2695 - Visual-block delete didn't work properly when deleting the right halve of a
2696   double-wide character.
2697 - Overstrike mode for the cmdline replaced only the first byte of a multibyte
2698   character.
2699 - The cursor in Replace mode (also in the cmdline) was to small on a
2700   double-wide character.
2701 - When a multibyte character contained a 0x80 byte, it didn't work (was using
2702   a CSI byte instead). (Muraoka Taro)
2703 - Wordwise selection with the mouse didn't work.
2704 - Yanking a modeless selection of multi-byte characters didn't work.
2705 - When 'selection' is "exclusive", selecting a word that ends in a multi-byte
2706   character used wrong highlighting for the following character.
2708 Win32 with Make_mvc.mak: Didn't compile for debugging. (Craig Barkhouse)
2710 Win32 GUI: When "vimrun.exe" is used to execute an external command, don't
2711 give a message box with the return value, it was already printed by vimrun.
2712 Also avoid printing the return value of the shell when ":silent!" is used.
2714 Win32: selecting a lot of text and using the "find/replace" dialog caused a
2715 crash.
2717 X11 GUI: When typing a character with the 8th bit set and the Meta/Alt
2718 modifier, the modifier was removed without changing the character.
2720 Truncating a message to make it fit on the command line, using "..." for the
2721 middle, didn't always compute the space correctly.
2723 Could not imap <C-@>.  Now it works like <Nul>.
2725 VMS:
2726 - Fixed a few things for VAXC.  os_vms_fix.com had some strange CTRL-M
2727   characters. (Zoltan Arpadffy and John W. Hamill)
2728 - Added VMS-specific defaults for the 'isfname' and 'isprint' options.
2729   (Zoltan Arpadffy)
2730 - Removed os_vms_osdef.h, it's no longer used.
2732 The gzip plugin used a ":normal" command, this doesn't work when dropping a
2733 compressed file on Vim.
2735 In very rare situations a binary search for a tag would fail, because an
2736 uninitialized value happens to be half the size of the tag file. (Narendran)
2738 When using BufEnter and BufLeave autocommands to enable/disable a menu, it
2739 wasn't updated right away.
2741 When doing a replace with the "c"onfirm flag, the cursor was positioned after
2742 the ruler, instead of after the question.  With a long replacement string the
2743 screen could scroll up and cause a "more" prompt.  Now the message is
2744 truncated to make it fit.
2746 Motif: The autoconf check for the Xp library didn't work.
2748 When 'verbose' is set to list lines of a sourced file, defining a function
2749 would reset the counter used for the "more" prompt.
2751 In the Win32 find/replace dialog, a '/' character caused problems.  Escape it
2752 with a backslash.
2754 Starting a shell with ":sh" was different from starting a shell for CTRL-Z
2755 when suspending doesn't work.  They now work the same way.
2757 Jumping to a file mark while in a changed buffer gave a "mark not set" error.
2759 ":execute histget("cmd")" causes an endless loop and crashed Vim.  Now catch
2760 all commands that cause too much recursiveness.
2762 Removed "Failed to open input method" error message, too many people got this
2763 when they didn't want to use a XIM.
2765 GUI: When compiled without the +windows feature, the scrollbar would start
2766 below line one.
2768 Removed the trick with redefining character class functions from regexp.c.
2770 Win32 GUI: Find dialog gives focus back to main window, when typing a
2771 character mouse pointer is blanked, it didn't reappear when moving it in the
2772 dialog window. (Vince Negri)
2774 When recording and typing a CTRL-C, no character was recorded.  When in Insert
2775 mode or cancelling half a command, playing back the recorded sequence wouldn't
2776 work.  Now record the CTRL-C.
2778 When the GUI was started, mouse codes for DEC and netterm were still checked
2779 for.
2781 GUI: When scrolling and 'writedelay' is non-zero, the character under the
2782 cursor was displayed in the wrong position (one line above/below with
2783 CTRL-E/CTRL-Y).
2785 A ":normal" command would reset the 'scrollbind' info.  Causes problems when
2786 using a ":normal" command in an autocommand for opening a file.
2788 Windows GUI: a point size with a dot, like "7.5", wasn't recognized. (Muraoka
2789 Taro)
2791 When 'scrollbind' wasn't set would still remember the current position,
2792 wasting time.
2794 GTK: Crash when 'shell' doesn't exist and doing":!ls".  Use _exit() instead of
2795 exit() when the child couldn't execute the shell.
2797 Multi-byte:
2798 - GUI with double-byte encoding: a mouse click in left halve of double-wide
2799   character put the cursor in previous char.
2800 - Using double-byte encoding and 'selection' is "exclusive": "vey" and "^Vey"
2801   included the character after the word.
2802 - When using a double-byte encoding and there is a lead byte at the end of the
2803   line, the preceding line would be displayed.  "ga" also showed wrong info.
2804 - "gf" didn't include multi-byte characters before the cursor properly.
2805   (Muraoka Taro)
2807 GUI: The cursor was sometimes not removed when scrolling.  Changed the policy
2808 from redrawing the cursor after each call to gui_write() to only update it at
2809 the end of update_screen() or when setting the cursor position.  Also only
2810 update the scrollbars at the end of update_screen(), that's the only place
2811 where the window text may have been scrolled.
2813 Formatting "/*<Tab>long text", produced "* <Tab>" in the next line.  Now
2814 remove the space before the Tab.
2815 Formatting "/*<Tab>  long text", produced "* <Tab> long text" in the next
2816 line.  Now keep the space after the Tab.
2818 In some places non-ASCII alphabetical characters were accepted, which could
2819 cause problems.  For example, ":X" (X being such a character).
2821 When a pattern matches the end of the line, the last character in the line was
2822 highlighted for 'hlsearch'.  That looks wrong for "/\%3c".  Now highlight the
2823 character just after the line.
2825 Motif: If a dialog was closed by clicking on the "X" of the window frame Vim
2826 would no longer respond.
2828 When using CTRL-X or CTRL-A on a number with many leading zeros, Vim would
2829 crash. (Matsumoto)
2831 When 'insertmode' is set, the mapping in mswin.vim for CTRL-V didn't work in
2832 Select mode.  Insert mode wasn't restarted after overwriting the text.
2833 Now allow nesting Insert mode with insert and change commands.  CTRL-O
2834 cwfoo<Esc> now also works.
2836 Clicking with the right mouse button in another window started Visual mode,
2837 but used the start position of the current window.  Caused ml_get errors when
2838 the line number was invalid.  Now stay in the same window.
2840 When 'selection' is "exclusive", "gv" sometimes selected one character fewer.
2842 When 'comments' contains more than one start/middle/end triplet, the optional
2843 flags could be mixed up.  Also didn't align the end with the middle part.
2845 Double-right-click in Visual mode didn't update the shown mode.
2847 When the Normal group has a font name, it was never used when starting up.
2848 Now use it when 'guifont' and 'guifontset' are empty.
2849 Setting a font name to a highlight group before the GUI was started didn't
2850 work.
2852 "make test" didn't use the name of the generated Vim executable.
2854 'cindent' problems:
2855 - Aligned with an "else" inside a do-while loop for a line below that loop.
2856   (Meikel Brandmeyer)
2857 - A line before a function would be indented even when terminated with a
2858   semicolon. (Meikel Brandmeyer)
2859 - 'cindent' gave too much indent to a line after a "};" that ends an array
2860   init.
2861 - Support declaration lines ending in "," and "\".  (Meikel Brandmeyer)
2862 - A case statement inside a do-while loop was used for indenting a line after
2863   the do-while loop. (Meikel Brandmeyer)
2864 - When skipping a string in a line with one double quote it could continue in
2865   the previous line. (Meikel Brandmeyer)
2867 When 'list' is set, 'hlsearch' didn't highlight a match at the end of the
2868 line.  Now highlight the '$'.
2870 The Paste menu item in the menu bar, the popup menu and the toolbar were all
2871 different.  Now made them all equal to how it was done in mswin.vim.
2873 st_dev can be smaller than "unsigned".  The compiler may give an overflow
2874 warning.  Added a configure check for dev_t.
2876 Athena: closing a confirm() dialog killed Vim.
2878 Various typos in the documentation. (Matt Dunford)
2880 Python interface: The definition of _DEBUG could cause trouble, undefine it.
2881 The error message for not being able to load the shared library wasn't
2882 translated.  (Muraoka Taro)
2884 Mac: (Dany St-Amant and Axel Kielhorn)
2885 - Several fixes.
2886 - Vim was eating 80% of the CPU time.
2887 - The project os_mac.pbxproj didn't work,  Moved it to a subdirectory.
2888 - Made the menu priority work for the menubar.
2889 - Fixed a problem with dragging the scrollbar.
2890 - Cleaned up the various #ifdefs.
2892 Unix: When catching a deadly signal and we keep getting one use _exit() to
2893 exit in a quick and dirty way.
2895 Athena menu ordering didn't work correctly. (David Harrison)
2897 A ":make" or ":grep" command with a long argument could cause a crash.
2899 Doing ":new file" and using "Quit" for the ATTENTION dialog still opened a new
2900 window.
2902 GTK: When starting the GUI and there is an error in the .vimrc file, don't
2903 present the wait-return prompt, since the message was given in the terminal.
2905 When there was an error in a .vimrc file the terminal where gvim was started
2906 could be cleared.  Set msg_row in main.c before writing any messages.
2908 GTK and X11 GUI: When trying to read characters from the user (e.g. with
2909 input()) before the Vim window was opened caused Vim to hang when it was
2910 started from the desktop.
2912 OS/390 uses 31 bit pointers.  That broke some computations with MAX_COL.
2913 Reduce MAX_COL by one bit for OS/390. (Ralf Schandl)
2915 When defining a function and it already exists, Vim didn't say it existed
2916 until after typing it.  Now do this right away when typing it.
2918 The message remembered for displaying later (keep_msg) was sometimes pointing
2919 into a generic buffer, which might be changed by the time the message is
2920 displayed.  Now make a copy of the message.
2922 When using multi-byte characters in a menu and a trailing byte is a backslash,
2923 the menu would not be created correctly.  (Muraoka Taro)
2924 Using a multibyte character in the substitute string where a trail byte is a
2925 backslash didn't work.  (Muraoka Taro)
2927 When setting "t_Co" in a vimrc file, then setting it automatically from an
2928 xterm termresponse and then setting it again manually caused a crash.
2930 When getting the value of a string option that is not supported, the number
2931 zero was returned.  This breaks a check like "&enc == "asdf".  Now an empty
2932 string is returned for string options.
2934 Crashed when starting the GTK GUI while using 'notitle' in the vimrc, setting
2935 'title' in the gvimrc and starting the GUI with ":gui".  Closed the connection
2936 to the X server accidentally.
2938 Had to hit return after selecting an entry for ":ts".
2940 The message from ":cn" message was sometimes cleared.  Now display it after
2941 redrawing if it doesn't cause a scroll (truncated when necessary).
2943 hangulin.c didn't compile when the GUI was disabled.  Disable it when it won't
2944 work.
2946 When setting a termcap option like "t_CO", the value could be displayed as
2947 being for a normal key with a modifier, like "<M-=>".
2949 When expanding the argument list, entries which are a directory name did not
2950 get included.  This stopped "vim c:/" from opening the file explorer.
2952 ":syn match sd "^" nextgroup=asdf" skipped the first column and matched the
2953 nextgroup in the second column.
2955 GUI: When 'lazyredraw' is set, 'showmatch' didn't work.  Required flushing
2956 the output.
2958 Don't define the <NetMouse> termcode in an xterm, reduces the problem when
2959 someone types <Esc> } in Insert mode.
2961 Made slash_adjust() work correctly for multi-byte characters. (Yasuhiro
2962 Matsumoto)
2963 Using a filename in Big5 encoding for autocommands didn't work (backslash in
2964 trailbyte).  (Yasuhiro Matsumoto)
2966 DOS and Windows: Expanding *.vim also matched file.vimfoo.  Expand path like
2967 Unix to avoid problems with Windows dir functions.  Merged the DOS and Win32
2968 functions.
2970 Win32: Gvimext could not edit more than a few files at once, the length of the
2971 argument was fixed.
2973 "ls -1 * | xargs vim" worked, but the input was in cooked mode.  Now switch to
2974 raw mode when needed.  Use dup() to copy the stderr file descriptor to stdin
2975 to make shell commands work.  No longer requires an external program to do
2976 this.
2978 When using ":filetype off", ftplugin and indent usage would be switched off at
2979 the same time.  Don't do this, setting 'filetype' manually can still use them.
2981 GUI: When writing a double-byte character, it could be split up in two calls
2982 to gui_write(), which doesn't work.  Now flush before the output buffer
2983 becomes full.
2985 When 'laststatus' is set and 'cmdheight' is two or bigger, the intro message
2986 would be written over the status line.
2987 The ":intro" command didn't work when there wasn't enough room.
2989 Configuring for Ruby failed with a recent version of Ruby. (Akinori Musha)
2991 Athena: When deleting the directory in which Vim was started, using the file
2992 browser made Vim exit.  Removed the use of XtAppError().
2994 When using autoconf 2.50, UNIX was not defined.  Moved the comment for "#undef
2995 UNIX" to a separate line.
2997 Win32: Disabled _OnWindowPosChanging() to make maximize work better.
2999 Win32: Compiling with VC 4.0 didn't work. (Walter Briscoe)
3001 Athena:
3002 - Finally fixed the problems with deleting a menu. (David Harrison)
3003 - Athena: When closing the confirm() dialog, worked like OK was pressed,
3004   instead of Cancel.
3006 The file explorer didn't work in compatible mode, because of line
3007 continuation.
3009 Didn't give an error message for ":digraph a".
3011 When using Ex mode in the GUI and typing a special key, <BS> didn't delete it
3012 correctly.  Now display '?' for a special key.
3014 When an operator is pending, clicking in another window made it apply to that
3015 window, even though the line numbers could be beyond the end of the buffer.
3017 When a function call doesn't have a terminating ")" Vim could crash.
3019 Perl interface: could crash on exit with perl 5.6.1. (Anduin Withers)
3021 Using %P in 'errorformat' wasn't handled correctly. (Tomas Zellerin)
3023 Using a syntax cluster that includes itself made Vim crash.
3025 GUI: With 'ls' set to 2, dragging the status line all the way up, then making
3026 the Vim window smaller: Could not the drag status line anymore.
3028 "vim -c startinsert! file" placed cursor on last char of a line, instead of
3029 after it.  A ":set" command in the buffer menu set w_set_curswant.  Now don't
3030 do this when w_curswant is MAXCOL.
3032 Win32: When the gvim window was maximized and selecting another font, the
3033 window would no longer fill the screen.
3035 The line with 'pastetoggle' in ":options" didn't show the right value when it
3036 is a special key.  Hitting <CR> didn't work either.
3038 Formatting text, resulting in a % landing in the first line, repeated the % in
3039 the following lines, like it's the start of a comment.
3041 GTK: When adding a toolbar item while gvim is already running, it wasn't
3042 possible to use the tooltip.  Now it works by adding the tooltip first.
3044 The output of "g CTRL-G" mentioned "Char" but it's actually bytes.
3046 Searching for the end of a oneline region didn't work correctly when there is
3047 an offset for the highlighting.
3049 Syntax highlighting: When synchronizing on C-comments, //*/ was seen as the
3050 start of a comment.
3052 Win32: Without scrollbars present, the MS mouse scroll wheel didn't work.
3053 Also handle the scrollbars when they are not visible.
3055 Motif: When there is no right scrollbar, the bottom scrollbar would still
3056 leave room for it.  (Marcin Dalecki)
3058 When changing 'guicursor' and the value is invalid, some of the effects would
3059 still take place.  Now first check for errors and only make the new value
3060 effective when it's OK.
3062 Using "A" In Visual block mode, appending to lines that don't extend into the
3063 block, padding was wrong.
3065 When pasting a block of text, a character that occupies more than one screen
3066 column could be deleted and spaces inserted instead.  Now only do that with a
3067 tab.
3069 Fixed conversion of documentation to HTML using Perl. (Dan Sharp)
3071 Give an error message when a menu name starts with a dot.
3073 Avoid a hang when executing a shell from the GUI on HP-UX by pushing "ptem"
3074 even when sys/ptem.h isn't present.
3076 When creating the temp directory, make sure umask is 077, otherwise the
3077 directory is not accessible when it was set to 0177.
3079 Unix: When resizing the window and a redraw is a bit slow, could get a window
3080 resize event while redrawing, resulting in a messed up window.  Any input
3081 (e.g., a mouse click) would redraw.
3083 The "%B" item in the status line became zero in Insert mode (that's normal)
3084 for another than the current window.
3086 The menu entries to convert to xxd and back didn't work in Insert mode.
3088 When ":vglobal" didn't find a line where the pattern doesn't match, the error
3089 message would be the wrong way around.
3091 When ignoring a multi-line error message with "%-A", the continuation lines
3092 would be used anyway. (Servatius Brandt)
3094 "grx" on a double-wide character inserted "x", instead of replacing the
3095 character with "x ".  "gR" on <xx> ('display' set the "uhex") didn't replace
3096 at all.  When doing "gRxx" on a control character the first "x" would be
3097 inserted, breaking the alignment.
3099 Added "0)" to 'cinkeys', so that when typing a ) it is put in the same place
3100 as where "==" would put it.
3102 Win32: When maximized, adding/removing toolbar didn't resize the text area.
3104 When using <C-RightMouse> a count was discarded.
3106 When typing CTRL-V and <RightMouse> in the command line, would insert
3107 <LeftMouse>.
3109 Using "vis" or "vas" when 'selection' is exclusive didn't include the last
3110 character.
3112 When adding to an option like 'grepprg', leading space would be lost.  Don't
3113 expand environment variables when there is no comma separating the items.
3115 GUI: When using a bold-italic font, would still use the bold trick and
3116 underlining.
3118 Motif: The default button didn't work in dialogs, the first one was always
3119 used.  Had to give input focus to the default button.
3121 When using CTRL-T to jump within the same file, the '' mark wasn't set.
3123 Undo wasn't Vi compatible when using the 'c' flag for ":s".  Now it undoes the
3124 whole ":s" command instead of each confirmed replacement.
3126 The Buffers menu, when torn-off, disappeared when being refreshed.  Add a
3127 dummy item to avoid this.
3129 Removed calling msg_start() in main(), it should not be needed.
3131 vim_strpbrk() did not support multibyte characters. (Muraoka Taro)
3133 The Amiga version didn't compile, the code was too big for relative jumps.
3134 Moved a few files from ex_docmd.c to ex_cmds2.c
3136 When evaluating the "= register resulted in the "= register being changed, Vim
3137 would crash.
3139 When doing ":view file" and it fails, the current buffer was made read-only.
3141 Motif: For some people the separators in the toolbar disappeared when resizing
3142 the Vim window. (Marcin Dalecki)
3144 Win32 GUI: when setting 'lines' to a huge number, would not compute the
3145 available space correctly.  Was counting the menu height twice.
3147 Conversion of the docs to HTML didn't handle the line with the +quickfix tag
3148 correctly. (Antonio Colombo)
3150 Win32: fname_case() didn't handle multi-byte characters correctly. (Yasuhiro
3151 Matsumoto)
3153 The Cygwin version had trouble with fchdir().  Don't use that function for
3154 Cygwin.
3156 The generic check in scripts.vim for "conf" syntax was done before some checks
3157 in filetype.vim, resulting in "conf" syntax too often.
3159 Dos32: Typing lagged behind.  Would wait for one biostick when checking if a
3160 character is available.
3162 GTK: When setting 'columns' while starting up "gvim", would set the width of
3163 the terminal it was started in.
3165 When using ESC in Insert mode, an autoindent that wraps to the next line
3166 caused the cursor to move to the end of the line temporarily.  When the
3167 character before the cursor was a double-wide multi-byte character the cursor
3168 would be on the right halve, which causes problems with some terminals.
3170 Didn't handle multi-byte characters correctly when expanding a file name.
3171 (Yasuhiro Matsumoto)
3173 Win32 GUI: Errors generated before the GUI is decided to start were not
3174 reported.
3176 globpath() didn't reserve enough room for concatenated results. (Anduin
3177 Withers)
3179 When expanding an option that is very long already, don't do the expansion, it
3180 would be truncated to MAXPATHL. (Anduin Withers)
3182 When 'selection' is "exclusive", using "Fx" in Visual mode only moved until
3183 just after the character.
3185 When using IME on the console to enter a file name, the screen may scroll up.
3186 Redraw the screen then. (Yasuhiro Matsumoto)
3188 Motif: In the find/replace dialog the "Replace" button didn't work first time,
3189 second time it replaced all matches.  Removed the use of ":s///c".
3190 GTK: Similar problems with the find/replace dialog, moved the code to a common
3191 function.
3193 X11: Use shared GC's for text. (Marcin Dalecki)
3195 "]i" found the match under the cursor, instead of the first one below it.
3196 Same for "]I", "] CTRL-I", "]d", "]D" and "] CTRL-D".
3198 Win16: When maximized and the font is changed, don't change the window size.
3199 (Vince Negri)
3201 When 'lbr' is set, deleting a block of text could leave the cursor in the
3202 wrong position.
3204 Win32: When opening a file with the "Edit with Vim" popup menu entry,
3205 wildcards would cause trouble.  Added the "--literal" argument to avoid
3206 expanding file names.
3208 When using "gv", it didn't restore that "$" was used in Visual block mode.
3210 Win32 GUI: While waiting for a shell command to finish, the window wasn't
3211 redrawn at all. (Yasuhiro Matsumoto)
3213 Syntax highlighting: A match that continues on a next line because of a
3214 contained region didn't end when that region ended.
3216 The ":s" command didn't allow flags like 'e' and 'i' right after it.
3218 When using ":s" to split a line, marks were moved to the next line.  Vi keeps
3219 them in the first line.
3221 When using ":n" ":rew", the previous context mark was at the top of the file,
3222 while Vi puts it in the same place as the cursor.  Made it Vi compatible.
3224 Fixed Vi incompatibility: Text was not put in register 1 when using "c" and
3225 "d" with a motion character, when deleting within one line with one of the
3226 commands: % ( ) `<character> / ? N n { }
3228 Win32 GUI: The tooltip for tear-off items remained when the tear-off item was
3229 no longer selected.
3231 GUI: When typing ":" at the more prompt, would return to Normal mode and not
3232 redraw the screen.
3234 When starting Vim with an argument "-c g/at/p" the printed lines would
3235 overwrite each other.
3237 BeOS: Didn't compile.  Configure didn't add the os_beos files, the QNX check
3238 removed them.  Various changes to os_beos.cc. (Joshua Haberman)
3239 Removed the check for the hardware platform, the BeBox has not been produced
3240 for a long time now.
3242 Win32 GUI: don't use a message box when the shell returns an error code,
3243 display the message in the Vim window.
3245 Make_mvc.mak always included "/debug" for linking.  "GUI=no" argument didn't
3246 work.  Use "DEBUG=yes" instead of "DEBUG=1" to make it consistent. (Dan Sharp)
3248 When a line in the tags file ended in ;" (no TAB following) the command would
3249 not be recognized as a search command.
3251 X11: The inputMethod resource never worked.  Don't use the "none" input method
3252 for SGI, it apparently makes the first character in Input method dropped.
3254 Fixed incorrect tests in os_mac.h. (Axel Kielhorn)
3256 Win32 console: When the console where Vim runs in is closed, Vim could hang in
3257 trying to restore the window icon. (Yasuhiro Matsumoto)
3259 When using ":3call func()" or ":3,3call func() the line number was ignored.
3261 When 'showbreak' and 'linebreak' were both set, Visual highlighting sometimes
3262 continued until the end of the line.
3264 GTK GUI: Tearoff items were added even when 'guioptions' didn't contain 't'
3265 when starting up.
3267 MS-Windows: When the current directory includes a "~", searching files with
3268 "gf" or ":find" didn't work.  A "$" in the directory had the same problem.
3269 Added mch_has_exp_wildcard() functions.
3271 When reducing the Vim window height while starting up, would get an
3272 out-of-memory error message.
3274 When editing a very long search pattern, 'incsearch' caused the redraw of the
3275 command line to fail.
3277 Motif GUI: On some systems the "Help" menu would not be on the far right, as
3278 it should be.  On some other systems (esp. IRIX) the command line would not
3279 completely show.  Solution is to only resize the menubar for Lesstif.
3281 Using "%" in a line that contains "\\" twice didn't take care of the quotes
3282 properly.  Now make a difference between \" and \\".
3284 For non-Unix systems a dummy file is created when finding a swap name to
3285 detect a 8.3 filesystem.  When there is an existing swap file, would get a
3286 warning for the file being created outside of Vim.  Also, when closing the Vim
3287 window the file would remain.
3289 Motif: The menu height was always computed, using a "-menuheight" argument
3290 was setting the room for the command line.  Now make clear the argument is not
3291 supported.
3293 For some (EBCDIC) systems, POUND was equal to '#'.  Added an #if for that to
3294 avoid a duplicate case in a switch.
3296 The GUI may have problems when forking.  Always call _exit() instead of exit()
3297 in the parent, the child will call exit().
3299 Win32 GUI: Accented characters were often wrong in dialogs and tearoff menus.
3300 Now use CP_ACP instead of CP_OEMCP. (Vince Negri)
3302 When displaying text with syntax highlighting causes an error (e.g., running
3303 out of stack) the syntax highlighting is disabled to avoid further messages.
3305 When a command in a .vimrc or .gvimrc causes an ATTENTION prompt, and Vim was
3306 started from the desktop (no place to display messages) it would hang.  Now
3307 open the GUI window early to be able to display the messages and pop up the
3308 dialog.
3310 "r<CR>" on a multi-byte character deleted only the first byte of the
3311 character.  "3r<CR>" deleted three bytes instead of three characters.
3313 When interrupting reading a file, Vi considers the buffer modified.  Added the
3314 'i' flag in 'cpoptions' flag for this (we don't want it modified to be able to
3315 do ":q").
3317 When using an item in 'guicursor' that starts with a colon, Vim would get
3318 stuck or crash.
3320 When putting a file mark in a help file and later jumping back to it, the
3321 options would not be set.  Extended the modeline in all help files to make
3322 this work better.
3324 When a modeline contained "::" the local option values would be printed.  Now
3325 ignore it.
3327 Some help files did not use a 8.3 names, which causes problems when using
3328 MS-DOS unzip.  Renamed "multibyte.txt" to "mbyte.txt", "rightleft.txt" to
3329 "rileft.txt", "tagsearch.txt" to "tagsrch.txt", "os_riscos.txt" to
3330 "os_risc.txt".
3332 When Visual mode is blockwise, using "iw" or "aw" made it characterwise.  That
3333 doesn't seem right, only do this when in linewise mode.  But then do it
3334 always, not only when start and end of Visual mode are equal.
3336 When using "viw" on a single-letter word and 'selection' is exclusive, would
3337 not include the word.
3339 When formatting text from Insert mode, using CTRL-O, could mess up undo
3340 information.
3342 While writing a file (also for the backup file) there was no check for an
3343 interrupt (hitting CTRL-C).  Vim could hang when writing a large file over a
3344 slow network, and moving the mouse didn't make it appear (when 'mousehide' is
3345 set) and the screen wasn't updated in the GUI.  Also allow interrupting when
3346 syncing the swap file, it can take a long time.
3348 When using ":mksession" while there is help window, it would later be restored
3349 to the right file but not marked as a help buffer.  ":help" would then open
3350 another window.  Now use the value "help" for 'buftype' to mark a help buffer.
3352 The session file contained absolute path names in option values, that doesn't
3353 work when the home directory depends on the situation.  Replace the home
3354 directory with ~/ when possible.
3356 When using 'showbreak' a TAB just after the shown break would not be counted
3357 correctly, the cursor would be positioned wrong.
3359 With 'showbreak' set to "--->" or "------->" and 'sts' set to 4, inserting
3360 tabs did not work right.  Could cause a crash.  Backspacing was also wrong,
3361 could get stuck at a line break.
3363 Win32: crashed when tearing off a menu with over 300 items.
3365 GUI: A menu or toolbar item would appear when only a tooltip was defined for
3368 When 'scrolloff' is non-zero and "$" is in 'cpoptions', using "s" while the
3369 last line of the file is the first line on screen, the text wasn't displayed.
3371 When running "autoconf", delete the configure cache to force starting cleanly
3372 when configure is run again.
3374 When changing the Normal colors for cterm, the value of 'background' was
3375 changed even when the GUI was used.
3377 The warning for a missing vimrun.exe was always given on startup, but some
3378 people just editing a file don't need to be bothered by it.  Only show it when
3379 vimrun would be used.
3381 When using "%" in a multibyte text it could get confused by trailbytes that
3382 match. (Muraoka Taro)
3384 Termcap entry for RiscOS was wrong, using 7 and 8 in octal codes.
3386 Athena: The title of a dialog window and the file selector window were not
3387 set. (David Harrison)
3389 The "htmlLink" highlight group specified colors, which gives problems when
3390 using a color scheme.  Added the "Underlined" highlight group for this.
3392 After using ":insert" or ":change" the '[ mark would be one line too low.
3394 When looking for the file name after a match with 'include' one character was
3395 skipped.  Same for 'define'.
3397 Win32 and DJGPP: When editing a file with a short name in a directory, and
3398 editing the same file but using the long name, would end up with two buffers
3399 on the same file.
3401 "gf" on a filename that starts with "../" only worked when the file being
3402 edited is in the current directory.  An include file search didn't work
3403 properly for files starting with "../" or ".".  Now search both relative to
3404 the file and to the current directory.
3406 When 'printheader', 'titlestring', 'iconstring', 'rulerformat' or 'statusline'
3407 contained "%{" but no following "}" memory was corrupted and a crash could
3408 happen.
3410 ":0append" and then inserting two lines did not redraw the blank lines that
3411 were scrolled back down.
3413 When using insert mode completion in a narrow window, the message caused a
3414 scroll up.  Now shorten the message if it doesn't fit and avoid writing the
3415 ruler over the message.
3417 XIM still didn't work correctly on some systems, especially SGI/IRIX.  Added
3418 the 'imdisable' option, which is set by default for that system.
3420 Patch 6.0aw.008
3421 Problem:    When the first character of a file name is over 127, the Buffers
3422             menu entry would get a negative priority and cause problems.
3423 Solution:   Reduce the multiplier for the first character when computing
3424             the hash value for a Buffers menu entry.
3425 Files:      runtime/menu.vim
3427 Patch 6.0aw.010
3428 Problem:    Win32: ":browse edit dir/dir" didn't work. (Vikas)
3429 Solution:   Change slashes to backslashes in the directory passed to the file
3430             browser.
3431 Files:      src/gui_w48.c
3433 Athena file browser: On some systems wcstombs() can't be used to get the
3434 length of a multi-byte string.  Use the maximum length then. (Yasuhiro
3435 Matsumoto)
3437 Patch 6.0ax.001
3438 Problem:    When 'patchmode' is set, appending to a file gives an empty
3439             original file. (Ed Ralston)
3440 Solution:   Also make a backup copy when appending and 'patchmode' is set.
3441 Files:      src/fileio.c
3443 Patch 6.0ax.002
3444 Problem:    When 'patchmode' is set, appending to a compressed file gives an
3445             uncompressed original file. (Ed Ralston)
3446 Solution:   Create the original file before decompressing.
3447 Files:      runtime/plugin/gzip.vim
3449 Patch 6.0ax.005
3450 Problem:    Athena file selector keeps the title of the first invocation.
3451 Solution:   Set the title each time the file selector is opened. (David
3452             Harrison)
3453 Files:      src/gui_at_fs.c
3455 Patch 6.0ax.007
3456 Problem:    When using GPM (mouse driver in a Linux console) a double click is
3457             interpreted as a scroll wheel click.
3458 Solution:   Check if GPM is being used when deciding if a mouse event is for
3459             the scroll wheel.
3460 Files:      src/term.c
3462 Patch 6.0ax.010
3463 Problem:    The Edit.Save menu and the Save toolbar button didn't work when
3464             the buffer has no file name.
3465 Solution:   Use a file browser to ask for a file name.  Also fix the toolbar
3466             Find item in Visual mode.
3467 Files:      runtime/menu.vim
3469 Patch 6.0ax.012
3470 Problem:    When 'cpoptions' contains "$", breaking a line for 'textwidth'
3471             doesn't redraw properly. (Stefan Schulze)
3472 Solution:   Remove the dollar before breaking the line.
3473 Files:      src/edit.c
3475 Patch 6.0ax.014
3476 Problem:    Win32: On Windows 98 ":make -f file" doesn't work when 'shell' is
3477             "command.com" and 'makeprg' is "nmake".  The environment isn't
3478             passed on to "nmake".
3479 Solution:   Also use vimrun.exe when redirecting the output of a command.
3480 Files:      src/os_win32.c
3482 Patch 6.0ax.016
3483 Problem:    The version number was reported wrong in the intro screen.
3484 Solution:   Check for a version number with two additional letters.
3485 Files:      src/version.c
3487 Patch 6.0ax.019
3488 Problem:    When scrolling a window with folds upwards, switching to another
3489             vertically split window and back may not update the scrollbar.
3490 Solution:   Limit w_botline to the number of lines in the buffer plus one.
3491 Files:      src/move.c
3494 ==============================================================================
3495 VERSION 6.1                                             *version-6.1*
3497 This section is about improvements made between version 6.0 and 6.1.
3499 This is a bug-fix release, there are not really any new features.
3502 Changed                                                 *changed-6.1*
3503 -------
3505 'iminsert' and 'imsearch' are no longer set as a side effect of defining a
3506 language-mapping using ":lmap".
3509 Added                                                   *added-6.1*
3510 -----
3512 Syntax files:
3513 ampl            AMPL (David Krief)
3514 ant             Ant (Johannes Zellner)
3515 baan            Baan (Her van de Vliert)
3516 cs              C# (Johannes Zellner)
3517 lifelines       Lifelines (Patrick Texier)
3518 lscript         LotusScript (Taryn East)
3519 moo             MOO (Timo Frenay)
3520 nsis            NSIS (Alex Jakushev)
3521 ppd             Postscript Printer Description (Bjoern Jacke)
3522 rpl             RPL/2 (Joel Bertrand)
3523 scilab          Scilab (Benoit Hamelin)
3524 splint          Splint (Ralf Wildenhues)
3525 sqlj            SQLJ (Andreas Fischbach)
3526 wvdial          WvDial (Prahlad Vaidyanathan)
3527 xf86conf        XFree86 config (Nikolai Weibull)
3528 xmodmap         Xmodmap (Nikolai Weibull)
3529 xslt            Xslt (Johannes Zellner)
3530 monk            Monk (Mike Litherland)
3531 xsd             Xsd (Johannes Zellner)
3532 cdl             CDL (Raul Segura Acevedo)
3533 sendpr          Send-pr (Hendrik Scholz)
3535 Added indent file for Scheme. (Dorai Sitaram)
3536 Added indent file for Prolog. (Kontra Gergely)
3537 Added indent file for Povray (David Necas)
3538 Added indent file for IDL (Aleksandar Jelenak)
3539 Added C# indent and ftplugin scripts.
3541 Added Ukrainian menu translations. (Bohdan Vlasyuk)
3542 Added ASCII version of the Czech menus. (Jiri Brezina)
3544 Added Simplified Chinese translation of the tutor. (Mendel L Chan)
3546 Added Russian keymap for yawerty keyboard.
3548 Added an explanation of using the vimrc file in the tutor.
3549 Changed tutor.vim to get the right encoding for the Taiwainese tutor.
3551 Added Russian tutor. (Andrey Kiselev)
3552 Added Polish tutor. (Mikolaj Machowski)
3554 Added darkblue color scheme. (Bohdan Vlasyuk)
3556 When packing the dos language archive automatically generate the .mo files
3557 that are required.
3559 Improved NSIS script to support NSIS 180.  Added icons for the
3560 enabled/disabled status. (Mirek Pruchnik)
3562 cp1250 version of the Slovak message translations.
3564 Compiler plugins for IRIX compilers. (David Harrison)
3567 Fixed                                                   *fixed-6.1*
3568 -----
3570 The license text was updated to make the meaning clearer and make it
3571 compatible with the GNU GPL.  Otherwise distributors have a problem when
3572 linking Vim with a GPL'ed library.
3574 When installing the "less.sh" script it was not made executable. (Chuck Berg)
3576 Win32: The "9" key on the numpad wasn't working. (Julian Kinraid)
3578 The NSIS install script didn't work with NSIS 1.80 or later.  Also add
3579 Vim-specific icons. (Pruchnik)
3581 The script for conversion to HTML contained an "if" in the wrong place.
3582 (Michael Geddes)
3584 Allow using ":ascii" in the sandbox, it's harmless.
3586 Removed creat() from osdef2.h.in, it wasn't used and may cause a problem when
3587 it's redefined to creat64().
3589 The text files in the VisVim directory were in "dos" format.  This caused
3590 problems when applying a patch.  Now keep them in "unix" format and convert
3591 them to "dos" format only for the PC archives.
3593 Add ruby files to the dos source archive, they can be used by Make_mvc.mak.
3594 (Mirek Pruchnik)
3596 "cp -f" doesn't work on all systems.  Change "cp -f" in the Makefile to "rm
3597 -f" and "cp".
3599 Didn't compile on a Compaq Tandem Himalaya OSS. (Michael A. Benzinger)
3601 The GTK file selection dialog didn't include the "Create Dir", "Delete File"
3602 and "Rename File" buttons.
3604 When doing ":browse source" the dialog has the title "Run Macro".  Better
3605 would be "Source Vim script". (Yegappan Lakshmanan)
3607 Win32: Don't use the printer font as default for the font dialog.
3609 "make doslang" didn't work when configure didn't run (yet).  Set $MAKEMO to
3610 "yes". (Mirek Pruchnik)
3612 The ToolBar TagJump item used "g]", which prompts for a selection even when
3613 there is only one matching tag.  Use "g<C-]>" instead.
3615 The ming makefile for message translations didn't have the right list of
3616 files.
3618 The MS-Windows 3.1 version complains about LIBINTL.DLL not found.  Compile
3619 this version without message translations.
3621 The Borland 5 makefile contained a check for Ruby which is no longer needed.
3622 The URLs for the TCL library was outdated. (Dan Sharp)
3624 The eviso.ps file was missing from the DOS runtime archive, it's needed for
3625 printing PostScript in the 32bit DOS version.
3627 In menu files ":scriptencoding" was used in a wrong way after patch 6.1a.032
3628 Now use ":scriptencoding" in the file where the translations are given.  Do
3629 the same for all menus in latin1 encoding.
3631 Included a lot of fixes for the Macintosh, mostly to make it work with Carbon.
3632 (Dany StAmant, Axel Kielhorn, Benji Fisher)
3634 Improved the vimtutor shell script to use $TMPDIR when it exists, and delete
3635 the copied file when exiting in an abnormal way. (Max Ischenko)
3637 When "iconv.dll" can't be found, try using "libiconv.dll".
3639 When encryption is used, filtering with a shell command wasn't possible.
3641 DJGPP: ":cd c:" always failed, can't get permissions for "c:".
3642 Win32: ":cd c:/" failed if the previous current directory on c: had become
3643 invalid.
3645 DJGPP: Shift-Del and Del both produce \316\123.  Default mapping for Del is
3646 wrong.  Disabled it.
3648 Dependencies on header files in MingW makefile was wrong.
3650 Win32: Don't use ACL stuff for MSVC 4.2, it's not supported. (Walter Briscoe)
3652 Win32 with Borland: bcc.cfg was caching the value for $(BOR), but providing a
3653 different argument to make didn't regenerate it.
3655 Win32 with MSVC: Make_ivc.mak generates a new if_ole.h in a different
3656 directory, the if_ole.h in the src directory may be used instead.  Delete the
3657 distributed file.
3659 When a window is vertically split and then ":ball" is used, the window layout
3660 is messed up, can cause a crash. (Muraoka Taro)
3662 When 'insertmode' is set, using File/New menu and then double clicking, "i" is
3663 soon inserted. (Merlin Hansen)
3665 When Select mode is active and using the Buffers menu to switch to another
3666 buffer, an old selection comes back.  Reset VIsual_reselect for a ":buffer"
3667 command.
3669 When Select mode is active and 'insertmode' is set, using the Buffers menu to
3670 switch to another buffer, did not return to Insert mode.  Make sure
3671 "restart_edit" is set.
3673 When double clicking on the first character of a word while 'selection' is
3674 "exclusive" didn't select that word.
3677 Patch 6.0.001
3678 Problem:    Loading the sh.vim syntax file causes error messages . (Corinna
3679             Vinschen)
3680 Solution:   Add an "if". (Charles Campbell)
3681 Files:      runtime/syntax/sh.vim
3683 Patch 6.0.002
3684 Problem:    Using a '@' item in 'viminfo' doesn't work. (Marko Leipert)
3685 Solution:   Add '@' to the list of accepted items.
3686 Files:      src/option.c
3688 Patch 6.0.003
3689 Problem:    The configure check for ACLs on AIX doesn't work.
3690 Solution:   Fix the test program so that it compiles. (Tomas Ogren)
3691 Files:      src/configure.in, src/auto/configure
3693 Patch 6.0.004
3694 Problem:    The find/replace dialog doesn't reuse a previous argument
3695             properly.
3696 Solution:   After removing a "\V" terminate the string. (Zwane Mwaikambo)
3697 Files:      src/gui.c
3699 Patch 6.0.005
3700 Problem:    In Insert mode, "CTRL-O :ls" has a delay before redrawing.
3701 Solution:   Don't delay just after wait_return() was called.  Added the
3702             did_wait_return flag.
3703 Files:      src/globals.h, src/message.c, src/normal.c, src/screen.c
3705 Patch 6.0.006
3706 Problem:    With a vertical split, 'number' set and 'scrolloff' non-zero,
3707             making the window width very small causes a crash. (Niklas
3708             Lindstrom)
3709 Solution:   Check for a zero width.
3710 Files:      src/move.c
3712 Patch 6.0.007
3713 Problem:    When setting 'filetype' while there is no FileType autocommand, a
3714             following ":setfiletype" would set 'filetype' again. (Kobus
3715             Retief)
3716 Solution:   Set did_filetype always when 'filetype' has been set.
3717 Files:      src/option.c
3719 Patch 6.0.008
3720 Problem:    'imdisable' is missing from the options window. (Michael Naumann)
3721 Solution:   Add an entry for it.
3722 Files:      runtime/optwin.vim
3724 Patch 6.0.009
3725 Problem:    Nextstep doesn't have S_ISBLK. (John Beppu)
3726 Solution:   Define S_ISBLK using S_IFBLK.
3727 Files:      src/os_unix.h
3729 Patch 6.0.010
3730 Problem:    Using "gf" on a file name starting with "./" or "../" in a buffer
3731             without a name causes a crash. (Roy Lewis)
3732 Solution:   Check for a NULL file name.
3733 Files:      src/misc2.c
3735 Patch 6.0.011
3736 Problem:    Python: After replacing or deleting lines get an ml_get error.
3737             (Leo Lipelis)
3738 Solution:   Adjust the cursor position for deleted or added lines.
3739 Files:      src/if_python.c
3741 Patch 6.0.012
3742 Problem:    Polish translations contain printf format errors, this can result
3743             in a crash when using one of them.
3744 Solution:   Fix for translated messages. (Michal Politowski)
3745 Files:      src/po/pl.po
3747 Patch 6.0.013
3748 Problem:    Using ":silent! cmd" still gives some error messages, like for an
3749             invalid range. (Salman Halim)
3750 Solution:   Reset emsg_silent after calling emsg() in do_one_cmd().
3751 Files:      src/ex_docmd.c
3753 Patch 6.0.014
3754 Problem:    When 'modifiable' is off and 'virtualedit' is "all", "rx" on a TAB
3755             still changes the buffer. (Muraoka Taro)
3756 Solution:   Check if saving the line for undo fails.
3757 Files:      src/normal.c
3759 Patch 6.0.015
3760 Problem:    When 'cpoptions' includes "S" and "filetype plugin on" has been
3761             used, can get an error for deleting the b:did_ftplugin variable.
3762             (Ralph Henderson)
3763 Solution:   Only delete the variable when it exists.
3764 Files:      runtime/ftplugin.vim
3766 Patch 6.0.016
3767 Problem:    bufnr(), bufname() and bufwinnr() don't find unlisted buffers when
3768             the argument is a string. (Hari Krishna Dara)
3769             Also for setbufvar() and getbufvar().
3770 Solution:   Also find unlisted buffers.
3771 Files:      src/eval.c
3773 Patch 6.0.017
3774 Problem:    When 'ttybuiltin' is set and a builtin termcap entry defines t_Co
3775             and the external one doesn't, it gets reset to empty. (David
3776             Harrison)
3777 Solution:   Only set t_Co when it wasn't set yet.
3778 Files:      src/term.c
3780 Patch 6.0.018
3781 Problem:    Initializing 'encoding' may cause a crash when setlocale() is not
3782             used. (Dany St-Amant)
3783 Solution:   Check for a NULL pointer.
3784 Files:      src/mbyte.c
3786 Patch 6.0.019
3787 Problem:    Converting a string with multi-byte characters to a printable
3788             string, e.g., with strtrans(), may cause a crash. (Tomas Zellerin)
3789 Solution:   Correctly compute the length of the result in transstr().
3790 Files:      src/charset.c
3792 Patch 6.0.020
3793 Problem:    When obtaining the value of a global variable internally, could
3794             get the function-local value instead.  Applies to using <Leader>
3795             and <LocalLeader> and resetting highlighting in a function.
3796 Solution:   Prepend "g:" to the variable name. (Aric Blumer)
3797 Files:      src/syntax.c, src/term.c
3799 Patch 6.0.021
3800 Problem:    The 'cscopepathcomp' option didn't work.
3801 Solution:   Change USE_CSCOPE to FEAT_CSCOPE. (Mark Feng)
3802 Files:      src/option.c
3804 Patch 6.0.022
3805 Problem:    When using the 'langmap' option, the second character of a command
3806             starting with "g" isn't adjusted.
3807 Solution:   Apply 'langmap' to the second character. (Alex Kapranoff)
3808 Files:      src/normal.c
3810 Patch 6.0.023
3811 Problem:    Loading the lhaskell syntax doesn't work. (Thore B. Karlsen)
3812 Solution:   Use ":runtime" instead of "source" to load haskell.vim.
3813 Files:      runtime/syntax/lhaskell.vim
3815 Patch 6.0.024
3816 Problem:    Using "CTRL-V u 9900" in Insert mode may cause a crash. (Noah
3817             Levitt)
3818 Solution:   Don't insert a NUL byte in the text, use a newline.
3819 Files:      src/misc1.c
3821 Patch 6.0.025
3822 Problem:    The pattern "\vx(.|$)" doesn't match "x" at the end of a line.
3823             (Preben Peppe Guldberg)
3824 Solution:   Always see a "$" as end-of-line after "\v".  Do the same for "^".
3825 Files:      src/regexp.c
3827 Patch 6.0.026
3828 Problem:    GTK: When using arrow keys to navigate through the menus, the
3829             separators are selected.
3830 Solution:   Set the separators "insensitive". (Pavel Kankovsky)
3831 Files:      src/gui_gtk.c, src/gui_gtk_x11.c
3833 Patch 6.0.027
3834 Problem:    VMS: Printing doesn't work, the file is deleted too quickly.
3835             No longer need the VMS specific printing menu.
3836             gethostname() is not available with VAXC.
3837             The makefile was lacking selection of the tiny-huge feature set.
3838 Solution:   Adjust the 'printexpr' option default.  Fix the other problems and
3839             update the documentation.  (Zoltan Arpadffy)
3840 Files:      runtime/doc/os_vms.txt, runtime/menu.vim, src/INSTALLvms.txt,
3841             src/Make_vms.mms, src/option.c, src/os_unix.c, src/os_vms_conf.h
3843 Patch 6.0.028
3844 Problem:    Can't compile without +virtualedit and with +visualextra. (Geza
3845             Lakner)
3846 Solution:   Add an #ifdef for +virtualedit.
3847 Files:      src/ops.c
3849 Patch 6.0.029
3850 Problem:    When making a change in line 1, then in line 2 and then deleting
3851             line 1, undo info could be wrong.  Only when the changes are undone
3852             at once. (Gerhard Hochholzer)
3853 Solution:   When not saving a line for undo because it was already done
3854             before, remember for which entry the last line must be computed.
3855             Added ue_getbot_entry pointer for this.  When the number of lines
3856             changes, adjust the position of newer undo entries.
3857 Files:      src/structs.h, src/undo.c
3859 Patch 6.0.030
3860 Problem:    Using ":source! file" doesn't work inside a loop or after
3861             ":argdo". (Pavol Juhas)
3862 Solution:   Execute the commands in the file right away, do not let the main
3863             loop do it.
3864 Files:      src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c, src/globals.h,
3865             src/proto/ex_docmd.pro, src/proto/getchar.pro
3867 Patch 6.0.031
3868 Problem:    Nextstep doesn't have setenv() or putenv().  (John Beppu)
3869 Solution:   Move putenv() from pty.c to misc2.c
3870 Files:      src/misc2.c, src/pty.c
3872 Patch 6.0.032
3873 Problem:    When changing a setting that affects all folds, they are not
3874             displayed immediately.
3875 Solution:   Set the redraw flag in foldUpdateAll().
3876 Files:      src/fold.c
3878 Patch 6.0.033
3879 Problem:    Using 'wildmenu' on MS-Windows, file names that include a space
3880             are only displayed starting with that space. (Xie Yuheng)
3881 Solution:   Don't recognize a backslash before a space as a path separator.
3882 Files:      src/screen.c
3884 Patch 6.0.034
3885 Problem:    Calling searchpair() with three arguments could result in a crash
3886             or strange error message. (Kalle Bjorklid)
3887 Solution:   Don't use the fifth argument when there is no fourth argument.
3888 Files:      src/eval.c
3890 Patch 6.0.035
3891 Problem:    The menu item Edit/Global_Settings/Toggle_Toolbar doesn't work
3892             when 'ignorecase' is set. (Allen Castaban)
3893 Solution:   Always match case when checking if a flag is already present in
3894             'guioptions'.
3895 Files:      runtime/menu.vim
3897 Patch 6.0.036
3898 Problem:    OS/2, MS-DOS and MS-Windows: Using a path that starts with a
3899             slash in 'tags' doesn't work as expected. (Mathias Koehrer)
3900 Solution:   Only use the drive, not the whole path to the current directory.
3901             Also make it work for "c:dir/file".
3902 Files:      src/misc2.c
3904 Patch 6.0.037
3905 Problem:    When the user has set "did_install_syntax_menu" to avoid the
3906             default Syntax menu it still appears. (Virgilio)
3907 Solution:   Don't add the three default items when "did_install_syntax_menu"
3908             is set.
3909 Files:      runtime/menu.vim
3911 Patch 6.0.038
3912 Problem:    When 'selection' is "exclusive", deleting a block of text at the
3913             end of a line can leave the cursor beyond the end of the line.
3914 Solution:   Correct the cursor position.
3915 Files:      src/ops.c
3917 Patch 6.0.039
3918 Problem:    "gP" leaves the cursor in the wrong position when 'virtualedit' is
3919             used.  Using "c" in blockwise Visual mode leaves the cursor in a
3920             strange position.
3921 Solution:   For "gP" reset the "coladd" field for the '] mark.  For "c" leave
3922             the cursor on the last inserted character.
3923 Files:      src/ops.c
3925 Patch 6.0.040
3926 Problem:    When 'fileencoding' is invalid and writing fails because of
3927             this, the original file is gone. (Eric Carlier)
3928 Solution:   Restore the original file from the backup.
3929 Files:      src/fileio.c
3931 Patch 6.0.041
3932 Problem:    Using ":language messages en" when LC_MESSAGES is undefined
3933             results in setting LC_CTYPE. (Eric Carlier)
3934 Solution:   Set $LC_MESSAGES instead.
3935 Files:      src/ex_cmds2.c
3937 Patch 6.0.042
3938 Problem:    ":mksession" can't handle file names with a space.
3939 Solution:   Escape special characters in file names with a backslash.
3940 Files:      src/ex_docmd.c
3942 Patch 6.0.043
3943 Problem:    Patch 6.0.041 was wrong.
3944 Solution:   Use mch_getenv() instead of vim_getenv().
3945 Files:      src/ex_cmds2.c
3947 Patch 6.0.044
3948 Problem:    Using a "containedin" list for a syntax item doesn't work for an
3949             item that doesn't have a "contains" argument.  Also, "containedin"
3950             doesn't ignore a transparent item. (Timo Frenay)
3951 Solution:   When there is a "containedin" argument somewhere, always check for
3952             contained items.  Don't check for the transparent item but the
3953             item it's contained in.
3954 Files:      src/structs.h, src/syntax.c
3956 Patch 6.0.045
3957 Problem:    After creating a fold with a Visual selection, another window
3958             with the same buffer still has inverted text. (Sami Salonen)
3959 Solution:   Redraw the inverted text.
3960 Files:      src/normal.c
3962 Patch 6.0.046
3963 Problem:    When getrlimit() returns an 8 byte number the check for running
3964             out of stack may fail. (Anthony Meijer)
3965 Solution:   Skip the stack check if the limit doesn't fit in a long.
3966 Files:      src/auto/configure, src/config.h.in, src/configure.in,
3967             src/os_unix.c
3969 Patch 6.0.047
3970 Problem:    Using a regexp with "\(\)" inside a "\%[]" item causes a crash.
3971             (Samuel Lacas)
3972 Solution:   Don't allow nested atoms inside "\%[]".
3973 Files:      src/regexp.c
3975 Patch 6.0.048
3976 Problem:    Win32: In the console the mouse doesn't always work correctly.
3977             Sometimes after getting focus a mouse movement is interpreted like
3978             a button click.
3979 Solution:   Use a different function to obtain the number of mouse buttons.
3980             Avoid recognizing a button press from undefined bits. (Vince Negri)
3981 Files:      src/os_win32.c
3983 Patch 6.0.049
3984 Problem:    When using evim the intro screen is misleading. (Adrian Nagle)
3985 Solution:   Mention whether 'insertmode' is set and the menus to be used.
3986 Files:      runtime/menu.vim, src/version.c
3988 Patch 6.0.050
3989 Problem:    UTF-8: "viw" doesn't include non-ASCII characters before the
3990             cursor. (Bertilo Wennergren)
3991 Solution:   Use dec_cursor() instead of decrementing the column number.
3992 Files:      src/search.c
3994 Patch 6.0.051
3995 Problem:    UTF-8: Using CTRL-R on the command line doesn't insert composing
3996             characters. (Ron Aaron)
3997 Solution:   Also include the composing characters and fix redrawing them.
3998 Files:      src/ex_getln.c, src/ops.c
4000 Patch 6.0.052
4001 Problem:    The check for rlim_t in patch 6.0.046 does not work on some
4002             systems. (Zdenek Sekera)
4003 Solution:   Also look in sys/resource.h for rlim_t.
4004 Files:      src/auto/configure, src/configure.in
4006 Patch 6.0.053 (extra)
4007 Problem:    Various problems with QNX.
4008 Solution:   Minor fix for configure.  Switch on terminal clipboard support in
4009             main.c.  Fix "pterm" mouse support.  os_qnx.c didn't build without
4010             photon. (Julian Kinraid)
4011 Files:      src/auto/configure, src/configure.in, src/gui_photon.c,
4012             src/main.c, src/misc2.c, src/option.h, src/os_qnx.c, src/os_qnx.h,
4013             src/syntax.c
4015 Patch 6.0.054
4016 Problem:    When using mswin.vim, CTRL-V pastes a block of text like it is
4017             normal text.  Using CTRL-V in blockwise Visual mode leaves "x"
4018             characters behind.
4019 Solution:   Make CTRL-V work as it should.  Do the same for the Paste menu
4020             entries.
4021 Files:      runtime/menu.vim, runtime/mswin.vim
4023 Patch 6.0.055
4024 Problem:    GTK: The selection isn't copied the first time.
4025 Solution:   Own the selection at the right moment.
4026 Files:      src/gui_gtk_x11.c
4028 Patch 6.0.056
4029 Problem:    Using "CTRL-O cw" in Insert mode results in a nested Insert mode.
4030             <Esc> doesn't leave Insert mode then.
4031 Solution:   Only use nested Insert mode when 'insertmode' is set or when a
4032             mapping is used.
4033 Files:      src/normal.c
4035 Patch 6.0.057
4036 Problem:    Using ":wincmd g}" in a function doesn't work.  (Gary Holloway)
4037 Solution:   Execute the command directly, instead of putting it in the
4038             typeahead buffer.
4039 Files:      src/normal.c, src/proto/normal.pro, src/window.c
4041 Patch 6.0.058
4042 Problem:    When a Cursorhold autocommand moved the cursor, the ruler wasn't
4043             updated. (Bohdan Vlasyuk)
4044 Solution:   Update the ruler after executing the autocommands.
4045 Files:      src/gui.c
4047 Patch 6.0.059
4048 Problem:    Highlighting for 'hlsearch' isn't visible in lines that are
4049             highlighted for diff highlighting.  (Gary Holloway)
4050 Solution:   Let 'hlsearch' highlighting overrule diff highlighting.
4051 Files:      src/screen.c
4053 Patch 6.0.060
4054 Problem:    Motif: When the tooltip is to be popped up, Vim crashes.
4055             (Gary Holloway)
4056 Solution:   Check for a NULL return value from gui_motif_fontset2fontlist().
4057 Files:      src/gui_beval.c
4059 Patch 6.0.061
4060 Problem:    The toolbar buttons to load and save a session do not correctly
4061             use v:this_session.
4062 Solution:   Check for v:this_session to be empty instead of existing.
4063 Files:      runtime/menu.vim
4065 Patch 6.0.062
4066 Problem:    Crash when 'verbose' is > 3 and using ":shell". (Yegappan
4067             Lakshmanan)
4068 Solution:   Avoid giving a NULL pointer to printf().  Also output a newline
4069             and switch the cursor on.
4070 Files:      src/misc2.c
4072 Patch 6.0.063
4073 Problem:    When 'cpoptions' includes "$", using "cw" to type a ')' on top of
4074             the "$" doesn't update syntax highlighting after it.
4075 Solution:   Stop displaying the "$" when typing a ')' in its position.
4076 Files:      src/search.c
4078 Patch 6.0.064 (extra)
4079 Problem:    The NSIS install script doesn't work with newer versions of NSIS.
4080             The diff feature doesn't work when there isn't a good diff.exe on
4081             the system.
4082 Solution:   Replace the GetParentDir instruction by a user function.
4083             Fix a few cosmetic problems.  Use defined constants for the
4084             version number, so that it's defined in one place only.
4085             Only accept the install directory when it ends in "vim".
4086             (Eduardo Fernandez)
4087             Add a diff.exe and use it from the default _vimrc.
4088 Files:      nsis/gvim.nsi, nsis/README.txt, src/dosinst.c
4090 Patch 6.0.065
4091 Problem:    When using ":normal" in 'indentexpr' it may use redo characters
4092             before its argument.  (Neil Bird)
4093 Solution:   Save and restore the stuff buffer in ex_normal().
4094 Files:      src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h
4096 Patch 6.0.066
4097 Problem:    Sometimes undo for one command is split into two undo actions.
4098             (Halim Salman)
4099 Solution:   Don't set the undo-synced flag when reusing a line that was
4100             already saved for undo.
4101 Files:      src/undo.c
4103 Patch 6.0.067
4104 Problem:    if_xcmdsrv.c doesn't compile on systems where fd_set isn't defined
4105             in the usual header file (e.g., AIX). (Mark Waggoner)
4106 Solution:   Include sys/select.h in if_xcmdsrv.c for systems that have it.
4107 Files:      src/if_xcmdsrv.c
4109 Patch 6.0.068
4110 Problem:    When formatting a Visually selected area with "gq" and the number
4111             of lines increases the last line may not be redrawn correctly.
4112             (Yegappan Lakshmanan)
4113 Solution:   Correct the area to be redrawn for inserted/deleted lines.
4114 Files:      src/ops.c
4116 Patch 6.0.069
4117 Problem:    Using "K" on a word that includes a "!" causes a "No previous
4118             command" error, because the "!" is expanded. (Craig Jeffries)
4119 Solution:   Put a backslash before the "!".
4120 Files:      src/normal.c
4122 Patch 6.0.070
4123 Problem:    Win32: The error message for a failed dynamic linking of a Perl,
4124             Ruby, Tcl and Python library is unclear about what went wrong.
4125 Solution:   Give the name of the library or function that could not be loaded.
4126             Also for the iconv and gettext libraries when 'verbose' is set.
4127 Files:      src/eval.c, src/if_perl.xs, src/if_python.c, src/if_ruby.c,
4128             src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/if_perl.pro,
4129             src/proto/if_python.pro, src/proto/if_ruby.pro,
4130             src/proto/if_tcl.pro, src/proto/mbyte.pro
4132 Patch 6.0.071
4133 Problem:    The "iris-ansi" builtin termcap isn't very good.
4134 Solution:   Fix the wrong entries. (David Harrison)
4135 Files:      src/term.c
4137 Patch 6.0.072
4138 Problem:    When 'lazyredraw' is set, a mapping that stops Visual mode, moves
4139             the cursor and starts Visual mode again causes a redraw problem.
4140             (Brian Silverman)
4141 Solution:   Redraw both the old and the new Visual area when necessary.
4142 Files:      src/normal.c, src/screen.c
4144 Patch 6.0.073 (extra)
4145 Problem:    DJGPP: When using CTRL-Z to start a shell, the prompt is halfway
4146             the text. (Volker Kiefel)
4147 Solution:   Position the system cursor before starting the shell.
4148 Files:      src/os_msdos.c
4150 Patch 6.0.074
4151 Problem:    When using "&" in a substitute string a multi-byte character with
4152             a trailbyte 0x5c is not handled correctly.
4153 Solution:   Recognize multi-byte characters inside the "&" part. (Muraoka Taro)
4154 Files:      src/regexp.c
4156 Patch 6.0.075
4157 Problem:    When closing a horizontally split window while 'eadirection' is
4158             "hor" another horizontally split window is still resized. (Aron
4159             Griffis)
4160 Solution:   Only resize windows in the same top frame as the window that is
4161             split or closed.
4162 Files:      src/main.c, src/proto/window.pro, src/window.c
4164 Patch 6.0.076
4165 Problem:    Warning for wrong pointer type when compiling.
4166 Solution:   Use char instead of char_u pointer.
4167 Files:      src/version.c
4169 Patch 6.0.077
4170 Problem:    Patch 6.0.075 was incomplete.
4171 Solution:   Fix another call to win_equal().
4172 Files:      src/option.c
4174 Patch 6.0.078
4175 Problem:    Using "daw" at the end of a line on a single-character word didn't
4176             include the white space before it.  At the end of the file it
4177             didn't work at all.  (Gavin Sinclair)
4178 Solution:   Include the white space before the word.
4179 Files:      src/search.c
4181 Patch 6.0.079
4182 Problem:    When "W" is in 'cpoptions' and 'backupcopy' is "no" or "auto", can
4183             still overwrite a read-only file, because it's renamed. (Gary
4184             Holloway)
4185 Solution:   Add a check for a read-only file before renaming the file to
4186             become the backup.
4187 Files:      src/fileio.c
4189 Patch 6.0.080
4190 Problem:    When using a session file that has the same file in two windows,
4191             the fileinfo() call in do_ecmd() causes a scroll and a hit-enter
4192             prompt. (Robert Webb)
4193 Solution:   Don't scroll this message when 'shortmess' contains 'O'.
4194 Files:      src/ex_cmds.c
4196 Patch 6.0.081
4197 Problem:    After using ":saveas" the new buffer name is added to the Buffers
4198             menu with a wrong number. (Chauk-Mean Proum)
4199 Solution:   Trigger BufFilePre and BufFilePost events for the renamed buffer
4200             and BufAdd for the old name (which is with a new buffer).
4201 Files:      src/ex_cmds.c
4203 Patch 6.0.082
4204 Problem:    When swapping screens in an xterm and there is an (error) message
4205             from the vimrc script, the shell prompt is after the message.
4206 Solution:   Output a newline when there was output on the alternate screen.
4207             Also when starting the GUI.
4208 Files:      src/main.c
4210 Patch 6.0.083
4211 Problem:    GTK: When compiled without menu support the buttons in a dialog
4212             don't have any text. (Erik Edelmann)
4213 Solution:   Add the text also when GTK_USE_ACCEL isn't defined.  And define
4214             GTK_USE_ACCEL also when not using menus.
4215 Files:      src/gui_gtk.c
4217 Patch 6.0.084
4218 Problem:    UTF-8: a "r" command with an argument that is a keymap for a
4219             character with a composing character can't be repeated with ".".
4220             (Raphael Finkel)
4221 Solution:   Add the composing characters to the redo buffer.
4222 Files:      src/normal.c
4224 Patch 6.0.085
4225 Problem:    When 'mousefocus' is set, using "s" to go to Insert mode and then
4226             moving the mouse pointer to another window stops Insert mode,
4227             while this doesn't happen with "a" or "i". (Robert Webb)
4228 Solution:   Reset finish_op before calling edit().
4229 Files:      src/normal.c
4231 Patch 6.0.086
4232 Problem:    When using "gu" the message says "~ed".
4233 Solution:   Make the message say "changed".
4234 Files:      src/ops.c
4236 Patch 6.0.087 (lang)
4237 Problem:    Message translations are incorrect, which may cause a crash.
4238             (Peter Figura)
4239             The Turkish translations needed more work and the maintainer
4240             didn't have time.
4241 Solution:   Fix order of printf arguments.  Remove %2$d constructs.
4242             Add "-v" to msgfmt to get a warning for wrong translations.
4243             Don't install the Turkish translations for now.
4244             Update a few more translations.
4245 Files:      src/po/Makefile, src/po/af.po, src/po/cs.po, src/po/cs.cp1250.po,
4246             src/po/de.po, src/po/es.po, src/po/fr.po, src/po/it.po,
4247             src/po/ja.po, src/po/ja.sjis.po, src/po/ko.po, src/po/pl.po,
4248             src/po/sk.po, src/po/uk.po, src/po/zh_CN.UTF-8.po,
4249             src/po/zh_CN.cp936.po, src/po/zh_CN.po, src/po/zh_TW.po
4251 Patch 6.0.088
4252 Problem:    "." doesn't work after using "rx" in Visual mode.  (Charles
4253             Campbell)
4254 Solution:   Also store the replacement character in the redo buffer.
4255 Files:      src/normal.c
4257 Patch 6.0.089
4258 Problem:    In a C file, using "==" to align a line starting with "*  " after
4259             a line with "* -" indents one space too few.  (Piet Delport)
4260 Solution:   Align with the previous line if the comment-start-string matches
4261             there.
4262 Files:      src/misc1.c
4264 Patch 6.0.090
4265 Problem:    When a wrapping line does not fit in a window and 'scrolloff' is
4266             bigger than half the window height, moving the cursor left or
4267             right causes the screen to flash badly. (Lubomir Host)
4268 Solution:   When there is not enough room to show 'scrolloff' screen lines and
4269             near the end of the line, show the end of the line.
4270 Files:      src/move.c
4272 Patch 6.0.091
4273 Problem:    Using CTRL-O in Insert mode, while 'virtualedit' is "all" and the
4274             cursor is after the end-of-line, moves the cursor left. (Yegappan
4275             Lakshmanan)
4276 Solution:   Keep the cursor in the same position.
4277 Files:      src/edit.c
4279 Patch 6.0.092
4280 Problem:    The explorer plugin doesn't ignore case of 'suffixes' on
4281             MS-Windows. (Mike Williams)
4282 Solution:   Match or ignore case as appropriate for the OS.
4283 Files:      runtime/plugin/explorer.vim
4285 Patch 6.0.093
4286 Problem:    When the Tcl library couldn't be loaded dynamically, get an error
4287             message when closing a buffer or window. (Muraoka Taro)
4288 Solution:   Only free structures if already using the Tcl interpreter.
4289 Files:      src/if_tcl.c
4291 Patch 6.0.094
4292 Problem:    Athena: When clicking in the horizontal scrollbar Vim crashes.
4293             (Paul Ackersviller)
4294 Solution:   Use the thumb size instead of the window pointer of the scrollbar
4295             (which is NULL). (David Harrison)
4296             Also avoid that scrolling goes the wrong way in a narrow window.
4297 Files:      src/gui_athena.c
4299 Patch 6.0.095
4300 Problem:    Perl: Deleting lines may leave the cursor beyond the end of the
4301             file.
4302 Solution:   Check the cursor position after deleting a line. (Serguei)
4303 Files:      src/if_perl.xs
4305 Patch 6.0.096
4306 Problem:    When ":saveas fname" fails because the file already exists, the
4307             file name is changed anyway and a following ":w" will overwrite
4308             the file. (Eric Carlier)
4309 Solution:   Don't change the file name if the file already exists.
4310 Files:      src/ex_cmds.c
4312 Patch 6.0.097
4313 Problem:    Re-indenting in Insert mode with CTRL-F may cause a crash with a
4314             multi-byte encoding.
4315 Solution:   Avoid using a character before the start of a line. (Sergey
4316             Vlasov)
4317 Files:      src/edit.c
4319 Patch 6.0.098
4320 Problem:    GTK: When using Gnome the "Search" and "Search and Replace" dialog
4321             boxes are not translated.
4322 Solution:   Define ENABLE_NLS before including gnome.h. (Eduardo Fernandez)
4323 Files:      src/gui_gtk.c, src/gui_gtk_x11.c
4325 Patch 6.0.099
4326 Problem:    Cygwin: When running Vi compatible MS-DOS line endings cause
4327             trouble.
4328 Solution:   Make the default for 'fileformats' "unix,dos" in Vi compatible
4329             mode.  (Michael Schaap)
4330 Files:      src/option.h
4332 Patch 6.0.100
4333 Problem:    ":badd +0 test%file" causes a crash.
4334 Solution:   Take into account that the "+0" is NUL terminated when allocating
4335             room for replacing the "%".
4336 Files:      src/ex_docmd.c
4338 Patch 6.0.101
4339 Problem:    ":mksession" doesn't restore editing a file that has a '#' or '%'
4340             in its name.  (Wolfgang Blankenburg)
4341 Solution:   Put a backslash before the '#' and '%'.
4342 Files:      src/ex_docmd.c
4344 Patch 6.0.102
4345 Problem:    When changing folds the cursor may appear halfway a closed fold.
4346             (Nam SungHyun)
4347 Solution:   Set w_cline_folded correctly. (Yasuhiro Matsumoto)
4348 Files:      src/move.c
4350 Patch 6.0.103
4351 Problem:    When using 'scrollbind' a large value of 'scrolloff' will make the
4352             scroll binding stop near the end of the file. (Coen Engelbarts)
4353 Solution:   Don't use 'scrolloff' when limiting the topline for scroll
4354             binding. (Dany StAmant)
4355 Files:      src/normal.c
4357 Patch 6.0.104
4358 Problem:    Multi-byte: When '$' is in 'cpoptions', typing a double-wide
4359             character that overwrites the left halve of an old double-wide
4360             character causes a redraw problem and the cursor stops blinking.
4361 Solution:   Clear the right half of the old character. (Yasuhiro Matsumoto)
4362 Files:      src/edit.c, src/screen.c
4364 Patch 6.0.105
4365 Problem:    Multi-byte: In a window of one column wide, with syntax
4366             highlighting enabled a crash might happen.
4367 Solution:   Skip getting the syntax attribute when the character doesn't fit
4368             anyway.  (Yasuhiro Matsumoto)
4369 Files:      src/screen.c
4371 Patch 6.0.106 (extra)
4372 Problem:    Win32: When the printer font is wrong, there is no error message.
4373 Solution:   Give an appropriate error message. (Yasuhiro Matsumoto)
4374 Files:      src/os_mswin.c
4376 Patch 6.0.107 (extra)
4377 Problem:    VisVim: When editing another file, a modified file may be written
4378             unexpectedly and without warning.
4379 Solution:   Split the window if a file was modified.
4380 Files:      VisVim/Commands.cpp
4382 Patch 6.0.108
4383 Problem:    When using folding could try displaying line zero, resulting in an
4384             error for a NULL pointer.
4385 Solution:   Stop decrementing w_topline when the first line of a window is in
4386             a closed fold.
4387 Files:      src/window.c
4389 Patch 6.0.109
4390 Problem:    XIM: When the input method is enabled, repeating an insertion with
4391             "." disables it. (Marcel Svitalsky)
4392 Solution:   Don't store the input method status when a command comes from the
4393             stuff buffer.
4394 Files:      src/ui.c
4396 Patch 6.0.110
4397 Problem:    Using undo after executing "Ox\ejAx\ekdd" from a register in
4398             an empty buffer gives an error message.  (Gerhard Hochholzer)
4399 Solution:   Don't adjust the bottom line number of an undo block when it's
4400             zero.  Add a test for this problem.
4401 Files:      src/undo.c, src/testdir/test20.in, src/testdir/test20.ok
4403 Patch 6.0.111
4404 Problem:    The virtcol() function doesn't take care of 'virtualedit'.
4405 Solution:   Add the column offset when needed. (Yegappan Lakshmanan)
4406 Files:      src/eval.c
4408 Patch 6.0.112
4409 Problem:    The explorer plugin doesn't sort directories with a space or
4410             special character after a directory with a shorter name.
4411 Solution:   Ignore the trailing slash when comparing directory names.  (Mike
4412             Williams)
4413 Files:      runtime/plugin/explorer.vim
4415 Patch 6.0.113
4416 Problem:    ":edit ~/fname" doesn't work if $HOME includes a space.  Also,
4417             expanding wildcards with the shell may fail. (John Daniel)
4418 Solution:   Escape spaces with a backslash when needed.
4419 Files:      src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/os_unix.c
4421 Patch 6.0.114
4422 Problem:    Using ":p" with fnamemodify() didn't expand "~/" or "~user/" to a
4423             full path.  For Win32 the current directory was prepended.
4424             (Michael Geddes)
4425 Solution:   Expand the home directory.
4426 Files:      src/eval.c
4428 Patch 6.0.115 (extra)
4429 Problem:    Win32: When using a dialog with a textfield it cannot scroll the
4430             text.
4431 Solution:   Add ES_AUTOHSCROLL to the textfield style. (Pedro Gomes)
4432 Files:      src/gui_w32.c
4434 Patch 6.0.116 (extra)
4435 Problem:    MS-Windows NT/2000/XP: filewritable() doesn't work correctly for
4436             filesystems that use ACLs.
4437 Solution:   Use ACL functions to check if a file is writable. (Mike Williams)
4438 Files:      src/eval.c, src/macros.h, src/os_win32.c, src/proto/os_win32.pro
4440 Patch 6.0.117 (extra)
4441 Problem:    Win32: when disabling the menu, "set lines=999" doesn't use all
4442             the available screen space.
4443 Solution:   Don't subtract the fixed caption height but the real menu height
4444             from the available screen space.  Also: Avoid recursion in
4445             gui_mswin_get_menu_height().
4446 Files:      src/gui_w32.c, src/gui_w48.c
4448 Patch 6.0.118
4449 Problem:    When $TMPDIR is a relative path, the temp directory is missing a
4450             trailing slash and isn't deleted when Vim exits. (Peter Holm)
4451 Solution:   Add the slash after expanding the directory to an absolute path.
4452 Files:      src/fileio.c
4454 Patch 6.0.119 (depends on patch 6.0.116)
4455 Problem:    VMS: filewritable() doesn't work properly.
4456 Solution:   Use the same method as for Unix. (Zoltan Arpadffy)
4457 Files:      src/eval.c
4459 Patch 6.0.120
4460 Problem:    The conversion to html isn't compatible with XHTML.
4461 Solution:   Quote the values. (Jess Thrysoee)
4462 Files:      runtime/syntax/2html.vim
4464 Patch 6.0.121 (extra) (depends on patch 6.0.116)
4465 Problem:    Win32: After patch 6.0.116 Vim doesn't compile with mingw32.
4466 Solution:   Add an #ifdef HAVE_ACL.
4467 Files:      src/os_win32.c
4469 Patch 6.0.122 (extra)
4470 Problem:    Win16: Same resize problems as patch 6.0.117 fixed for Win32.  And
4471             dialog textfield problem from patch 6.0.115.
4472 Solution:   Set old_menu_height only when used.  Add ES_AUTOHSCROLL flag.
4473             (Vince Negri)
4474 Files:      src/gui_w16.c
4476 Patch 6.0.123 (depends on patch 6.0.119)
4477 Problem:    Win16: Compilation problems.
4478 Solution:   Move "&&" to other lines. (Vince Negri)
4479 Files:      src/eval.c
4481 Patch 6.0.124
4482 Problem:    When using a ":substitute" command that starts with "\="
4483             (evaluated as an expression), "~" was still replaced with the
4484             previous substitute string.
4485 Solution:   Skip the replacement when the substitute string starts with "\=".
4486             Also adjust the documentation about doubling backslashes.
4487 Files:      src/ex_cmds.c, runtime/doc/change.txt
4489 Patch 6.0.125 (extra)
4490 Problem:    Win32: When using the multi_byte_ime feature pressing the shift
4491             key would be handled as if a character was entered, thus mappings
4492             with a shifted key didn't work. (Charles Campbell)
4493 Solution:   Ignore pressing the shift, control and alt keys.
4494 Files:      src/os_win32.c
4496 Patch 6.0.126
4497 Problem:    The python library was always statically linked.
4498 Solution:   Link the python library dynamically. (Matthias Klose)
4499 Files:      src/auto/configure, src/configure.in
4501 Patch 6.0.127
4502 Problem:    When using a terminal that swaps screens and the Normal background
4503             color has a different background, using an external command may
4504             cause the color of the wrong screen to be changed. (Mark Waggoner)
4505 Solution:   Don't call screen_stop_highlight() in stoptermcap().
4506 Files:      src/term.c
4508 Patch 6.0.128
4509 Problem:    When moving a vertically split window to the far left or right,
4510             the scrollbars are not adjusted. (Scott E Lee)  When 'mousefocus'
4511             is set the mouse pointer wasn't adjusted.
4512 Solution:   Adjust the scrollbars and the mouse pointer.
4513 Files:      src/window.c
4515 Patch 6.0.129
4516 Problem:    When using a very long file name, ":ls" (repeated a few times)
4517             causes a crash.  Test with "vim `perl -e 'print "A"x1000'`".
4518             (Tejeda)
4519 Solution:   Terminate a string before getting its length in buflist_list().
4520 Files:      src/buffer.c
4522 Patch 6.0.130
4523 Problem:    When using ":cprev" while the error window is open, and the new
4524             line at the top wraps, the window isn't correctly drawn.
4525             (Yegappan Lakshmanan)
4526 Solution:   When redrawing the topline don't scroll twice.
4527 Files:      src/screen.c
4529 Patch 6.0.131
4530 Problem:    When using bufname() and there are two matches for listed buffers
4531             and one match for an unlisted buffer, the unlisted buffer is used.
4532             (Aric Blumer)
4533 Solution:   When there is a match with a listed buffer, don't check for
4534             unlisted buffers.
4535 Files:      src/buffer.c
4537 Patch 6.0.132
4538 Problem:    When setting 'iminsert' in the vimrc and using an xterm with two
4539             screens the ruler is drawn in the wrong screen. (Igor Goldenberg)
4540 Solution:   Only draw the ruler when using the right screen.
4541 Files:      src/option.c
4543 Patch 6.0.133
4544 Problem:    When opening another buffer while 'keymap' is set and 'iminsert'
4545             is zero, 'iminsert' is set to one unexpectedly. (Igor Goldenberg)
4546 Solution:   Don't set 'iminsert' as a side effect of defining a ":lmap"
4547             mapping.  Only do that when 'keymap' is set.
4548 Files:      src/getchar.c, src/option.c
4550 Patch 6.0.134
4551 Problem:    When completing ":set tags=" a path with an embedded space causes
4552             the completion to stop. (Sektor van Skijlen)
4553 Solution:   Escape spaces with backslashes, like for ":set path=".  Also take
4554             backslashes into account when searching for the start of the path
4555             to complete (e.g., for 'backupdir' and 'cscopeprg').
4556 Files:      src/ex_docmd.c, src/ex_getln.c, src/option.c, src/structs.h
4558 Patch 6.0.135
4559 Problem:    Menus that are not supposed to do anything used "<Nul>", which
4560             still produced an error beep.
4561             When CTRL-O is mapped for Insert mode, ":amenu" commands didn't
4562             work in Insert mode.
4563             Menu language falls back to English when $LANG ends in "@euro".
4564 Solution:   Use "<Nop>" for a menu item that doesn't do anything, just like
4565             mappings.
4566             Use ":anoremenu" instead of ":amenu".
4567             Ignore "@euro" in the locale name.
4568 Files:      runtime/makemenu.vim, runtime/menu.vim, src/menu.c
4570 Patch 6.0.136
4571 Problem:    When completing in Insert mode, a mapping could be unexpectedly
4572             applied.
4573 Solution:   Don't use mappings when checking for a typed character.
4574 Files:      src/edit.c
4576 Patch 6.0.137
4577 Problem:    GUI: When using the find or find/replace dialog from Insert mode,
4578             the input mode is stopped.
4579 Solution:   Don't use the input method status when the main window doesn't
4580             have focus.
4581 Files:      src/ui.c
4583 Patch 6.0.138
4584 Problem:    GUI: When using the find or find/replace dialog from Insert mode,
4585             the text is inserted when CTRL-O is mapped. (Andre Pang)
4586             When opening the dialog again, a whole word search isn't
4587             recognized.
4588             When doing "replace all" a whole word search was never done.
4589 Solution:   Don't put a search or replace command in the input buffer,
4590             execute it directly.
4591             Recognize "\<" and "\>" after removing "\V".
4592             Add "\<" and "\>" also for "replace all".
4593 Files:      src/gui.c
4595 Patch 6.0.139
4596 Problem:    When stopping 'wildmenu' completion, the statusline of the
4597             bottom-left vertically split window isn't redrawn. (Yegappan
4598             Lakshmanan)
4599 Solution:   Redraw all the bottom statuslines.
4600 Files:      src/ex_getln.c, src/proto/screen.pro, src/screen.c
4602 Patch 6.0.140
4603 Problem:    Memory allocated for local mappings and abbreviations is leaked
4604             when the buffer is wiped out.
4605 Solution:   Clear the local mappings when deleting a buffer.
4606 Files:      src/buffer.c, src/getchar.c, src/proto/getchar.pro, src/vim.h
4608 Patch 6.0.141
4609 Problem:    When using ":enew" in an empty buffer, some buffer-local things
4610             are not cleared.  b:keymap_name is not set.
4611 Solution:   Clear user commands and mappings local to the buffer when re-using
4612             the current buffer.  Reload the keymap.
4613 Files:      src/buffer.c
4615 Patch 6.0.142
4616 Problem:    When Python is linked statically, loading dynamic extensions might
4617             fail.
4618 Solution:   Add an extra linking flag when needed. (Andrew Rodionoff)
4619 Files:      src/configure.in, src/auto/configure
4621 Patch 6.0.143
4622 Problem:    When a syntax item includes a line break in a pattern, the syntax
4623             may not be updated properly when making a change.
4624 Solution:   Add the "linebreaks" argument to ":syn sync".
4625 Files:      runtime/doc/syntax.txt, src/screen.c, src/structs.h, src/syntax.c
4627 Patch 6.0.144
4628 Problem:    After patch 6.0.088 redoing "veU" doesn't work.
4629 Solution:   Don't add the "U" to the redo buffer, it will be used as an undo
4630             command.
4631 Files:      src/normal.c
4633 Patch 6.0.145
4634 Problem:    When Vim can't read any input it might get stuck.  When
4635             redirecting stdin and stderr Vim would not read commands from a
4636             file.  (Servatius Brandt)
4637 Solution:   When repeatedly trying to read a character when it's not possible,
4638             exit Vim.  When stdin and stderr are not a tty, still try reading
4639             from them, but don't do a blocking wait.
4640 Files:      src/ui.c
4642 Patch 6.0.146
4643 Problem:    When 'statusline' contains "%{'-'}" this results in a zero.
4644             (Milan Vancura)
4645 Solution:   Don't handle numbers with a minus as a number, they were not
4646             displayed anyway.
4647 Files:      src/buffer.c
4649 Patch 6.0.147
4650 Problem:    It's not easy to mark a Vim version as being modified.  The new
4651             license requires this.
4652 Solution:   Add the --modified-by argument to configure and the MODIFIED_BY
4653             define.  It's used in the intro screen and the ":version" output.
4654 Files:      src/auto/configure, src/configure.in, src/config.h.in,
4655             src/feature.h, src/version.c
4657 Patch 6.0.148
4658 Problem:    After "p" in an empty line, `[ goes to the second character.
4659             (Kontra Gergely)
4660 Solution:   Don't increment the column number in an empty line.
4661 Files:      src/ops.c
4663 Patch 6.0.149
4664 Problem:    The pattern "\(.\{-}\)*" causes a hang.  When using a search
4665             pattern that causes a stack overflow to be detected Vim could
4666             still hang.
4667 Solution:   Correctly report "operand could be empty" when using "\{-}".
4668             Check for "out_of_stack" inside loops to avoid a hang.
4669 Files:      src/regexp.c
4671 Patch 6.0.150
4672 Problem:    When using a multi-byte encoding, patch 6.0.148 causes "p" to work
4673             like "P". (Sung-Hyun Nam)
4674 Solution:   Compute the byte length of a multi-byte character.
4675 Files:      src/ops.c
4677 Patch 6.0.151
4678 Problem:    Redrawing the status line and ruler can be wrong when it contains
4679             multi-byte characters.
4680 Solution:   Use character width and byte length correctly. (Yasuhiro Matsumoto)
4681 Files:      src/screen.c
4683 Patch 6.0.152
4684 Problem:    strtrans() could hang on an illegal UTF-8 byte sequence.
4685 Solution:   Skip over illegal bytes. (Yasuhiro Matsumoto)
4686 Files:      src/charset.c
4688 Patch 6.0.153
4689 Problem:    When using (illegal) double-byte characters and Vim syntax
4690             highlighting Vim can crash. (Yasuhiro Matsumoto)
4691 Solution:   Increase a pointer over a character instead of a byte.
4692 Files:      src/regexp.c
4694 Patch 6.0.154
4695 Problem:    MS-DOS and MS-Windows: The menu entries for xxd don't work when
4696             there is no xxd in the path.
4697             When converting back from Hex the filetype may remain "xxd" if it
4698             is not detected.
4699 Solution:   When xxd is not in the path use the one in the runtime directory,
4700             where the install program has put it.
4701             Clear the 'filetype' option before detecting the new value.
4702 Files:      runtime/menu.vim
4704 Patch 6.0.155
4705 Problem:    Mac: compilation problems in ui.c after patch 6.0.145. (Axel
4706             Kielhorn)
4707 Solution:   Don't call mch_inchar() when NO_CONSOLE is defined.
4708 Files:      src/ui.c
4710 Patch 6.0.156
4711 Problem:    Starting Vim with the -b argument and two files, ":next" doesn't
4712             set 'binary' in the second file, like Vim 5.7. (Norman Diamond)
4713 Solution:   Set the global value for 'binary'.
4714 Files:      src/option.c
4716 Patch 6.0.157
4717 Problem:    When defining a user command with "-complete=dir" files will also
4718             be expanded.  Also, "-complete=mapping" doesn't appear to work.
4719             (Michael Naumann)
4720 Solution:   Use the expansion flags defined with the user command.
4721             Handle expanding mappings specifically.
4722 Files:      src/ex_docmd.c
4724 Patch 6.0.158
4725 Problem:    When getting the warning for a file being changed outside of Vim
4726             and reloading the file, the 'readonly' option is reset, even when
4727             the permissions didn't change. (Marcel Svitalsky)
4728 Solution:   Keep 'readonly' set when reloading a file and the permissions
4729             didn't change.
4730 Files:      src/fileio.c
4732 Patch 6.0.159
4733 Problem:    Wildcard expansion for ":emenu" also shows separators.
4734 Solution:   Skip menu separators for ":emenu", ":popup" and ":tearoff".
4735             Also, don't handle ":tmenu" as if it was ":tearoff".  And leave
4736             out the alternatives with "&" included.
4737 Files:      src/menu.c
4739 Patch 6.0.160
4740 Problem:    When compiling with GCC 3.0.2 and using the "-O2" argument, the
4741             optimizer causes a problem that makes Vim crash.
4742 Solution:   Add a configure check to avoid "-O2" for this version of gcc.
4743 Files:      src/configure.in, src/auto/configure
4745 Patch 6.0.161 (extra)
4746 Problem:    Win32: Bitmaps don't work with signs.
4747 Solution:   Make it possible to use bitmaps with signs. (Muraoka Taro)
4748 Files:      src/ex_cmds.c, src/feature.h, src/gui_w32.c, src/gui_x11.c,
4749             src/proto/gui_w32.pro, src/proto/gui_x11.pro
4751 Patch 6.0.162
4752 Problem:    Client-server: An error message for a wrong expression appears in
4753             the server instead of the client.
4754 Solution:   Pass the error message from the server to the client.  Also
4755             adjust the example code. (Flemming Madsen)
4756 Files:      src/globals.h, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
4757             src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro,
4758             runtime/doc/eval.txt, runtime/tools/xcmdsrv_client.c
4760 Patch 6.0.163
4761 Problem:    When using a GUI dialog, a file name is sometimes used like it was
4762             a directory.
4763 Solution:   Separate path and file name properly.
4764             For GTK, Motif and Athena concatenate directory and file name for
4765             the default selection.
4766 Files:      src/diff.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
4767             src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c, src/message.c
4769 Patch 6.0.164
4770 Problem:    After patch 6.0.135 the menu entries for pasting don't work in
4771             Insert and Visual mode. (Muraoka Taro)
4772 Solution:   Add <script> to allow script-local mappings.
4773 Files:      runtime/menu.vim
4775 Patch 6.0.165
4776 Problem:    Using --remote and executing locally gives unavoidable error
4777             messages.
4778 Solution:   Add --remote-silent and --remote-wait-silent to silently execute
4779             locally.
4780             For Win32 there was no error message when a server didn't exist.
4781 Files:      src/eval.c, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
4782             src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro
4784 Patch 6.0.166
4785 Problem:    GUI: There is no way to avoid dialogs to pop up.
4786 Solution:   Add the 'c' flag to 'guioptions': Use console dialogs.  (Yegappan
4787             Lakshmanan)
4788 Files:      runtime/doc/options.txt, src/option.h, src/message.c
4790 Patch 6.0.167
4791 Problem:    When 'fileencodings' is "latin2" some characters in the help files
4792             are displayed wrong.
4793 Solution:   Force the 'fileencoding' for the help files to be "latin1".
4794 Files:      src/fileio.c
4796 Patch 6.0.168
4797 Problem:    ":%s/\n/#/" doesn't replace at an empty line. (Bruce DeVisser)
4798 Solution:   Don't skip matches after joining two lines.
4799 Files:      src/ex_cmds.c
4801 Patch 6.0.169
4802 Problem:    When run as evim and the GUI can't be started we get stuck in a
4803             terminal without menus in Insert mode.
4804 Solution:   Exit when using "evim" and "gvim -y" when the GUI can't be
4805             started.
4806 Files:      src/main.c
4808 Patch 6.0.170
4809 Problem:    When printing double-width characters the size of tabs after them
4810             is wrong.  (Muraoka Taro)
4811 Solution:   Correctly compute the column after a double-width character.
4812 Files:      src/ex_cmds2.c
4814 Patch 6.0.171
4815 Problem:    With 'keymodel' including "startsel", in Insert mode after the end
4816             of a line, shift-Left does not move the cursor. (Steve Hall)
4817 Solution:   CTRL-O doesn't move the cursor left, need to do that explicitly.
4818 Files:      src/edit.c
4820 Patch 6.0.172
4821 Problem:    CTRL-Q doesn't replace CTRL-V after CTRL-X in Insert mode while it
4822             does in most other situations.
4823 Solution:   Make CTRL-X CTRL-Q work like CTRL-X CTRL-V in Insert mode.
4824 Files:      src/edit.c
4826 Patch 6.0.173
4827 Problem:    When using "P" to insert a line break the cursor remains past the
4828             end of the line.
4829 Solution:   Check for the cursor being beyond the end of the line.
4830 Files:      src/ops.c
4832 Patch 6.0.174
4833 Problem:    After using "gd" or "gD" the search direction for "n" may still be
4834             backwards. (Servatius Brandt)
4835 Solution:   Reset the search direction to forward.
4836 Files:      src/normal.c, src/search.c, src/proto/search.pro
4838 Patch 6.0.175
4839 Problem:    ":help /\z(\)" doesn't work. (Thomas Koehler)
4840 Solution:   Double the backslashes.
4841 Files:      src/ex_cmds.c
4843 Patch 6.0.176
4844 Problem:    When killed by a signal autocommands are still triggered as if
4845             nothing happened.
4846 Solution:   Add the v:dying variable to allow autocommands to work differently
4847             when a deadly signal has been trapped.
4848 Files:      src/eval.c, src/os_unix.c, src/vim.h
4850 Patch 6.0.177
4851 Problem:    When 'commentstring' is empty and 'foldmethod' is "marker", "zf"
4852             doesn't work. (Thomas S. Urban)
4853 Solution:   Add the marker even when 'commentstring' is empty.
4854 Files:      src/fold.c, src/normal.c
4856 Patch 6.0.178
4857 Problem:    Uninitialized memory read from xp_backslash field.
4858 Solution:   Initialize xp_backslash field properly.
4859 Files:      src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/tag.c
4861 Patch 6.0.179
4862 Problem:    Win32: When displaying UTF-8 characters may read uninitialized
4863             memory.
4864 Solution:   Add utfc_ptr2len_check_len() to avoid reading past the end of a
4865             string.
4866 Files:      src/mbyte.c, src/proto/mbyte.pro, src/gui_w32.c
4868 Patch 6.0.180
4869 Problem:    Expanding environment variables in a string that ends in a
4870             backslash could go past the end of the string.
4871 Solution:   Detect the trailing backslash.
4872 Files:      src/misc1.c
4874 Patch 6.0.181
4875 Problem:    When using ":cd dir" memory was leaked.
4876 Solution:   Free the allocated memory.  Also avoid an uninitialized memory
4877             read.
4878 Files:      src/misc2.c
4880 Patch 6.0.182
4881 Problem:    When using a regexp on multi-byte characters, could try to read a
4882             character before the start of the line.
4883 Solution:   Don't decrement a pointer to before the start of the line.
4884 Files:      src/regexp.c
4886 Patch 6.0.183
4887 Problem:    Leaking memory when ":func!" redefines a function.
4888 Solution:   Free the function name when it's not used.
4889 Files:      src/eval.c
4891 Patch 6.0.184
4892 Problem:    Leaking memory when expanding option values.
4893 Solution:   Don't always copy the expanded option into allocated memory.
4894 Files:      src/option.c
4896 Patch 6.0.185
4897 Problem:    Crash in Vim when pasting a selection in another application, on a
4898             64 bit machine.
4899 Solution:   Fix the format for an Atom to 32 bits. (Peter Derr)
4900 Files:      src/ui.c
4902 Patch 6.0.186
4903 Problem:    X11: Three warnings when compiling the client-server code.
4904 Solution:   Add a typecast to unsigned char.
4905 Files:      src/if_xcmdsrv.c
4907 Patch 6.0.187
4908 Problem:    "I" in Visual mode and then "u" reports too many changes. (Andrew
4909             Stryker)
4910             "I" in Visual linewise mode adjusts the indent for no apparent
4911             reason.
4912 Solution:   Only save those lines for undo that are changed.
4913             Don't change the indent after inserting in Visual linewise mode.
4914 Files:      src/ops.c
4916 Patch 6.0.188
4917 Problem:    Win32: After patch 6.0.161 signs defined in the vimrc file don't
4918             work.
4919 Solution:   Initialize the sign icons after initializing the GUI. (Vince
4920             Negri)
4921 Files:      src/gui.c, src/gui_x11.c
4923 Patch 6.0.189
4924 Problem:    The size of the Visual area isn't always displayed when scrolling
4925             ('ruler' off, 'showcmd' on).  Also not when using a search
4926             command. (Sylvain Hitier)
4927 Solution:   Redisplay the size of the selection after showing the mode.
4928 Files:      src/screen.c
4930 Patch 6.0.190
4931 Problem:    GUI: when 'mouse' is empty a click with the middle button still
4932             moves the cursor.
4933 Solution:   Paste at the cursor position instead of the mouse position.
4934 Files:      src/normal.c
4936 Patch 6.0.191
4937 Problem:    When no servers are available serverlist() gives an error instead
4938             of returning an empty string. (Hari Krishna)
4939 Solution:   Don't give an error message.
4940 Files:      src/eval.c
4942 Patch 6.0.192
4943 Problem:    When 'virtualedit' is set, "ylj" goes to the wrong column. (Andrew
4944             Nikitin)
4945 Solution:   Reset the flag that w_virtcol is valid when moving the cursor back
4946             to the start of the operated area.
4947 Files:      src/normal.c
4949 Patch 6.0.193
4950 Problem:    When 'virtualedit' is set, col(".") after the end of the line
4951             should return one extra.
4952 Solution:   Add one to the column.
4953 Files:      src/eval.c
4955 Patch 6.0.194
4956 Problem:    "--remote-silent" tries to send a reply to the client, like it was
4957             "--remote-wait".
4958 Solution:   Properly check for the argument.
4959 Files:      src/main.c
4961 Patch 6.0.195
4962 Problem:    When 'virtualedit' is set and a search starts in virtual space
4963             ":call search('x')" goes to the wrong position. (Eric Long)
4964 Solution:   Reset coladd when finding a match.
4965 Files:      src/search.c
4967 Patch 6.0.196
4968 Problem:    When 'virtualedit' is set, 'selection' is "exclusive" and visually
4969             selecting part of a tab at the start of a line, "x" joins it with
4970             the previous line.  Also, when the selection spans more than one
4971             line the whole tab is deleted.
4972 Solution:   Take coladd into account when adjusting for 'selection' being
4973             "exclusive".  Also expand a tab into spaces when deleting more
4974             than one line.
4975 Files:      src/normal.c, src/ops.c
4977 Patch 6.0.197
4978 Problem:    When 'virtualedit' is set and 'selection' is "exclusive", "v$x"
4979             doesn't delete the last character in the line. (Eric Long)
4980 Solution:   Don't reset the inclusive flag. (Helmut Stiegler)
4981 Files:      src/normal.c
4983 Patch 6.0.198
4984 Problem:    When 'virtualedit' is set and 'showbreak' is not empty, moving the
4985             cursor over the line break doesn't work properly. (Eric Long)
4986 Solution:   Make getviscol() and getviscol2() use getvvcol() to obtain the
4987             virtual cursor position.  Adjust coladvance() and oneleft() to
4988             skip over the 'showbreak' characters.
4989 Files:      src/edit.c, src/misc2.c
4991 Patch 6.0.199
4992 Problem:    Multi-byte: could use iconv() after calling iconv_end().
4993             (Yasuhiro Matsumoto)
4994 Solution:   Stop converting input and output stream after calling iconv_end().
4995 Files:      src/mbyte.c
4997 Patch 6.0.200
4998 Problem:    A script that starts with "#!perl" isn't recognized as a Perl
4999             filetype.
5000 Solution:   Ignore a missing path in a script header.  Also, speed up
5001             recognizing scripts by simplifying the patterns used.
5002 Files:      runtime/scripts.vim
5004 Patch 6.0.201
5005 Problem:    When scrollbinding and doing a long jump, switching windows jumps
5006             to another position in the file.  Scrolling a few lines at a time
5007             is OK. (Johannes Zellner)
5008 Solution:   When setting w_topline reset the flag that indicates w_botline is
5009             valid.
5010 Files:      src/diff.c
5012 Patch 6.0.202
5013 Problem:    The "icon=" argument for the menu command to define a toolbar icon
5014             with a file didn't work for GTK. (Christian J. Robinson)
5015             For Motif and Athena a full path was required.
5016 Solution:   Search the icon file using the specified path.  Expand environment
5017             variables in the file name.
5018 Files:      src/gui_gtk.c, src/gui_x11.c
5020 Patch 6.0.203
5021 Problem:    Can change 'fileformat' even though 'modifiable' is off.
5022             (Servatius Brandt)
5023 Solution:   Correct check for kind of set command.
5024 Files:      src/option.c
5026 Patch 6.0.204
5027 Problem:    ":unlet" doesn't work for variables with curly braces. (Thomas
5028             Scott Urban)
5029 Solution:   Handle variable names with curly braces properly. (Vince Negri)
5030 Files:      src/eval.c
5032 Patch 6.0.205 (extra)
5033 Problem:    "gvim -f" still forks when using the batch script to start Vim.
5034 Solution:   Add an argument to "start" to use a foreground session (Michael
5035             Geddes)
5036 Files:      src/dosinst.c
5038 Patch 6.0.206
5039 Problem:    Unix: if expanding a wildcard in a file name results in a
5040             wildcard character and there are more parts in the path with a
5041             wildcard, it is expanded again.
5042             Windows: ":edit \[abc]" could never edit the file "[abc]".
5043 Solution:   Don't expand wildcards in already expanded parts.
5044             Don't remove backslashes used to escape the special meaning of a
5045             wildcard; can edit "[abc]" if '[' is removed from 'isfname'.
5046 Files:      src/misc1.c, src/os_unix.c
5048 Patch 6.0.207 (extra)
5049 Problem:    Win32: The shortcuts and start menu entries let Vim startup in the
5050             desktop directory, which is not very useful.
5051 Solution:   Let shortcuts start Vim in $HOME or $HOMEDIR$HOMEPATH.
5052 Files:      src/dosinst.c
5054 Patch 6.0.208
5055 Problem:    GUI: When using a keymap and the cursor is not blinking, CTRL-^ in
5056             Insert mode doesn't directly change the cursor color.  (Alex
5057             Solow)
5058 Solution:   Force a redraw of the cursor after CTRL-^.
5059 Files:      src/edit.c
5061 Patch 6.0.209
5062 Problem:    GUI GTK: After selecting a 'guifont' with the font dialog there
5063             are redraw problems for multi-byte characters.
5064 Solution:   Separate the font dialog from setting the new font name to avoid
5065             that "*" is used to find wide and bold fonts.
5066             When redrawing extra characters for the bold trick, take care of
5067             UTF-8 characters.
5068 Files:      src/gui.c, src/gui_gtk_x11.c, src/option.c, src/proto/gui.pro,
5069             src/proto/gui_gtk_x11.pro
5071 Patch 6.0.210
5072 Problem:    After patch 6.0.167 it's no longer possible to edit a help file in
5073             another encoding than latin1.
5074 Solution:   Let the "++enc=" argument overrule the encoding.
5075 Files:      src/fileio.c
5077 Patch 6.0.211
5078 Problem:    When reading a file fails, the buffer is empty, but it might still
5079             be possible to write it with ":w" later.  The original file is
5080             lost then. (Steve Amerige)
5081 Solution:   Set the 'readonly' option for the buffer.
5082 Files:      src/fileio.c
5084 Patch 6.0.212
5085 Problem:    GUI GTK: confirm("foo", "") causes a crash.
5086 Solution:   Don't make a non-existing button the default.  Add a default "OK"
5087             button if none is specified.
5088 Files:      src/eval.c, src/gui_gtk.c
5090 Patch 6.0.213
5091 Problem:    When a file name contains unprintable characters, CTRL-G and other
5092             commands don't work well.
5093 Solution:   Turn unprintable into printable characters. (Yasuhiro Matsumoto)
5094 Files:      src/buffer.c, src/charset.c
5096 Patch 6.0.214
5097 Problem:    When there is a buffer without a name, empty entries appear in the
5098             jumplist saved in the viminfo file.
5099 Solution:   Don't write jumplist entries without a file name.
5100 Files:      src/mark.c
5102 Patch 6.0.215
5103 Problem:    After using "/" from Visual mode the Paste menu and Toolbar
5104             entries don't work.  Pasting with the middle mouse doesn't work
5105             and modeless selection doesn't work.
5106 Solution:   Use the command line mode menus and use the mouse like in the
5107             command line.
5108 Files:      src/gui.c, src/menu.c, src/ui.c
5110 Patch 6.0.216
5111 Problem:    After reloading a file, displayed in another window than the
5112             current one, which was changed outside of Vim the part of the file
5113             around the cursor set by autocommands may be displayed, but
5114             jumping back to the original cursor position when entering the
5115             window again.
5116 Solution:   Restore the topline of the window.
5117 Files:      src/fileio.c
5119 Patch 6.0.217
5120 Problem:    When getting help from a help file that was used before, an empty
5121             unlisted buffer remains in the buffer list. (Eric Long)
5122 Solution:   Wipe out the buffer used to do the tag jump from.
5123 Files:      src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
5125 Patch 6.0.218
5126 Problem:    With explorer plugin: "vim -o filename dirname" doesn't load the
5127             explorer window until entering the window.
5128 Solution:   Call s:EditDir() for each window after starting up.
5129 Files:      runtime/plugin/explorer.vim
5131 Patch 6.0.219
5132 Problem:    ":setlocal" and ":setglobal", without arguments, display terminal
5133             options. (Zdenek Sekera)
5134 Solution:   Skip terminal options for these two commands.
5135 Files:      src/option.c
5137 Patch 6.0.220
5138 Problem:    After patch 6.0.218 get a beep on startup. (Muraoka Taro)
5139 Solution:   Don't try going to another window when there isn't one.
5140 Files:      runtime/plugin/explorer.vim
5142 Patch 6.0.221
5143 Problem:    When using ":bdel" and all other buffers are unloaded the lowest
5144             numbered buffer is jumped to instead of the most recent one. (Dave
5145             Cecil)
5146 Solution:   Prefer an unloaded buffer from the jumplist.
5147 Files:      src/buffer.c
5149 Patch 6.0.222
5150 Problem:    When 'virtualedit' is set and using autoindent, pressing Esc after
5151             starting a new line leaves behind part of the autoindent. (Helmut
5152             Stiegler)
5153 Solution:   After deleting the last char in the line adjust the cursor
5154             position in del_bytes().
5155 Files:      src/misc1.c, src/ops.c
5157 Patch 6.0.223
5158 Problem:    When splitting a window that contains the explorer, hitting CR on
5159             a file name gives error messages.
5160 Solution:   Set the window variables after splitting the window.
5161 Files:      runtime/plugin/explorer.vim
5163 Patch 6.0.224
5164 Problem:    When 'sidescroll' and 'sidescrolloff' are set in a narrow window
5165             the text may jump left-right and the cursor is displayed in the
5166             wrong position. (Aric Blumer)
5167 Solution:   When there is not enough room, compute the left column for the
5168             window to put the cursor in the middle.
5169 Files:      src/move.c
5171 Patch 6.0.225
5172 Problem:    In Visual mode "gk" gets stuck in a closed fold. (Srinath
5173             Avadhanula)
5174 Solution:   Behave differently in a closed fold.
5175 Files:      src/normal.c
5177 Patch 6.0.226
5178 Problem:    When doing ":recover file" get the ATTENTION prompt.
5179             After recovering the same file five times get a read error or a
5180             crash.  (Alex Davis)
5181 Solution:   Set the recoverymode flag before setting the file name.
5182             Correct the amount of used memory for the size of block zero.
5183 Files:      src/ex_docmd.c
5185 Patch 6.0.227 (extra)
5186 Problem:    The RISC OS port has several problems.
5187 Solution:   Update the makefile and fix some of the problems. (Andy Wingate)
5188 Files:      src/Make_ro.mak, src/os_riscos.c, src/os_riscos.h,
5189             src/proto/os_riscos.pro, src/search.c
5191 Patch 6.0.228
5192 Problem:    After putting text in Visual mode the '] mark is not at the end of
5193             the put text.
5194             Undo doesn't work properly when putting a word into a Visual
5195             selection that spans more than one line.
5196 Solution:   Correct the '] mark for the deleting the Visually selected text.
5197             #ifdef code that depends on FEAT_VISUAL properly.
5198             Also fix that "d" crossing line boundary puts '[ just before
5199             deleted text.
5200             Fix undo by saving all deleted lines at once.
5201 Files:      src/ex_docmd.c, src/globals.h, src/normal.c, src/ops.c,
5202             src/structs.h, src/vim.h
5204 Patch 6.0.229
5205 Problem:    Multi-byte: With 'm' in 'formatoptions', formatting doesn't break
5206             at a multi-byte char followed by an ASCII char, and the other way
5207             around. (Muraoka Taro)
5208             When joining lines a space is inserted between multi-byte
5209             characters, which is not always wanted.
5210 Solution:   Check for multi-byte character before and after the breakpoint.
5211             Don't insert a space before or after a multi-byte character when
5212             joining lines and the 'M' flag is in 'formatoptions'.  Don't
5213             insert a space between multi-byte characters when the 'B' flag is
5214             in 'formatoptions'.
5215 Files:      src/edit.c, src/ops.c, src/option.h
5217 Patch 6.0.230
5218 Problem:    The ":" used as a motion after an operator is exclusive, but
5219             sometimes it should be inclusive.
5220 Solution:   Make the "v" in between an operator and motion toggle
5221             inclusive/exclusive. (Servatius Brandt)
5222 Files:      runtime/doc/motion.txt, src/normal.c
5224 Patch 6.0.231
5225 Problem:    "gd" and "gD" don't work when the variable matches in a comment
5226             just above the match to be found. (Servatius Brandt)
5227 Solution:   Continue searching in the first column below the comment.
5228 Files:      src/normal.c
5230 Patch 6.0.232
5231 Problem:    "vim --version" prints on stderr while "vim --help" prints on
5232             stdout.
5233 Solution:   Make "vim --version" use stdout.
5234 Files:      runtime/doc/starting.txt, src/globals.h, src/main.c, src/message.c
5236 Patch 6.0.233
5237 Problem:    "\1\{,8}" in a regexp is not allowed, but it should work, because
5238             there is an upper limit.  (Jim Battle)
5239 Solution:   Allow using "\{min,max}" after an atom that can be empty if there
5240             is an upper limit.
5241 Files:      src/regexp.c
5243 Patch 6.0.234
5244 Problem:    It's not easy to set the cursor position without modifying marks.
5245 Solution:   Add the cursor() function. (Yegappan Lakshmanan)
5246 Files:      runtime/doc/eval.txt, src/eval.c
5248 Patch 6.0.235
5249 Problem:    When writing a file and renaming the original file to make the
5250             backup, permissions could change when setting the owner.
5251 Solution:   Only set the owner when it's needed and set the permissions again
5252             afterwards.
5253             When 'backupcopy' is "auto" check that the owner and permissions
5254             of a newly created file can be set properly.
5255 Files:      src/fileio.c
5257 Patch 6.0.236
5258 Problem:    ":edit" without argument should move cursor to line 1 in Vi
5259             compatible mode.
5260 Solution:   Add 'g' flag to 'cpoptions'.
5261 Files:      runtime/doc/options.txt, src/ex_docmd.c, src/option.h
5263 Patch 6.0.237
5264 Problem:    In a C file, using the filetype plugin, re-indenting a comment
5265             with two spaces after the middle "*" doesn't align properly.
5266 Solution:   Don't use a middle entry from a start/middle/end to line up with
5267             the start of the comment when the start part doesn't match with
5268             the actual comment start.
5269 Files:      src/misc1.c
5271 Patch 6.0.238
5272 Problem:    Using a ":substitute" command with a substitute() call in the
5273             substitution expression causes errors. (Srinath Avadhanula)
5274 Solution:   Save and restore pointers when doing substitution recursively.
5275 Files:      src/regexp.c
5277 Patch 6.0.239
5278 Problem:    Using "A" to append after a Visually selected block which is after
5279             the end of the line, spaces are inserted in the wrong line and
5280             other unexpected effects. (Michael Naumann)
5281 Solution:   Don't advance the cursor to the next line.
5282 Files:      src/ops.c
5284 Patch 6.0.240
5285 Problem:    Win32: building with Python 2.2 doesn't work.
5286 Solution:   Add support for Python 2.2 with dynamic linking. (Paul Moore)
5287 Files:      src/if_python.c
5289 Patch 6.0.241
5290 Problem:    Win32: Expanding the old value of an option that is a path that
5291             starts with a backslash, an extra backslash is inserted.
5292 Solution:   Only insert backslashes where needed.
5293             Also handle multi-byte characters properly when removing
5294             backslashes.
5295 Files:      src/option.c
5297 Patch 6.0.242
5298 Problem:    GUI: On a system with an Exceed X server sometimes get a "Bad
5299             Window" error. (Tommi Maekitalo)
5300 Solution:   When forking, use a pipe to wait in the parent for the child to
5301             have done the setsid() call.
5302 Files:      src/gui.c
5304 Patch 6.0.243
5305 Problem:    Unix: "vim --version" outputs a NL before the last line instead of
5306             after it. (Charles Campbell)
5307 Solution:   Send the NL to the same output stream as the text.
5308 Files:      src/message.c, src/os_unix.c, src/proto/message.pro
5310 Patch 6.0.244
5311 Problem:    Multi-byte: Problems with (illegal) UTF-8 characters in menu and
5312             file name (e.g., icon text, status line).
5313 Solution:   Correctly handle unprintable characters.  Catch illegal UTF-8
5314             characters and replace them with <xx>.  Truncating the status line
5315             wasn't done correctly at a multi-byte character. (Yasuhiro
5316             Matsumoto)
5317             Added correct_cmdspos() and transchar_byte().
5318 Files:      src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c,
5319             src/message.c, src/screen.c, src/vim.h
5321 Patch 6.0.245
5322 Problem:    After using a color scheme, setting the 'background' option might
5323             not work. (Peter Horst)
5324 Solution:   Disable the color scheme if it switches 'background' back to the
5325             wrong value.
5326 Files:      src/option.c
5328 Patch 6.0.246
5329 Problem:    ":echomsg" didn't use the highlighting set by ":echohl". (Gary
5330             Holloway)
5331 Solution:   Use the specified attributes for the message. (Yegappan
5332             Lakshmanan)
5333 Files:      src/eval.c
5335 Patch 6.0.247
5336 Problem:    GTK GUI: Can't use gvim in a kpart widget.
5337 Solution:   Add the "--echo-wid" argument to let Vim echo the window ID on
5338             stdout. (Philippe Fremy)
5339 Files:      runtime/doc/starting.txt, src/globals.h, src/gui_gtk_x11.c,
5340             src/main.c
5342 Patch 6.0.248
5343 Problem:    When using compressed help files and 'encoding' isn't "latin1",
5344             Vim converts the help file before decompressing. (David Reviejo)
5345 Solution:   Don't convert a help file when 'binary' is set.
5346 Files:      src/fileio.c
5348 Patch 6.0.249
5349 Problem:    "vim -t edit -c 'sta ex_help'" doesn't move cursor to edit().
5350 Solution:   Don't set the cursor on the first line for "-c" arguments when
5351             there also is a "-t" argument.
5352 Files:      src/main.c
5354 Patch 6.0.250 (extra)
5355 Problem:    Macintosh: Various problems when compiling.
5356 Solution:   Various fixes, mostly #ifdefs. (Dany St. Amant)
5357 Files:      src/gui_mac.c, src/main.c, src/misc2.c, src/os_mac.h,
5358             src/os_mac.pbproj/project.pbxproj, src/os_unix.c
5360 Patch 6.0.251 (extra)
5361 Problem:    Macintosh: menu shortcuts are not very clear.
5362 Solution:   Show the shortcut with the Mac clover symbol. (raindog)
5363 Files:      src/gui_mac.c
5365 Patch 6.0.252
5366 Problem:    When a user function was defined with "abort", an error that is
5367             not inside if/endif or while/endwhile doesn't abort the function.
5368             (Servatius Brandt)
5369 Solution:   Don't reset did_emsg when the function is to be aborted.
5370 Files:      src/ex_docmd.c
5372 Patch 6.0.253
5373 Problem:    When 'insertmode' is set, after "<C-O>:edit file" the next <C-O>
5374             doesn't work. (Benji Fisher)  <C-L> has the same problem.
5375 Solution:   Reset need_start_insertmode once in edit().
5376 Files:      src/edit.c
5378 Patch 6.0.254 (extra)
5379 Problem:    Borland C++ 5.5: Checking for stack overflow doesn't work
5380             correctly.  Matters when using a complicated regexp.
5381 Solution:   Remove -N- from Make_bc5.mak. (Yasuhiro Matsumoto)
5382 Files:      src/Make_bc5.mak
5384 Patch 6.0.255 (extra) (depends on patch 6.0.116 and 6.0.121)
5385 Problem:    Win32: ACL support doesn't work well on Samba drives.
5386 Solution:   Add a check for working ACL support. (Mike Williams)
5387 Files:      src/os_win32.c
5389 Patch 6.0.256 (extra)
5390 Problem:    Win32: ":highlight Comment guifg=asdf" does not give an error
5391             message. (Randall W.  Morris)  Also for other systems.
5392 Solution:   Add gui_get_color() to give one error message for all systems.
5393 Files:      src/gui.c, src/gui_amiga.c, src/gui_athena.c, src/gui_motif.c,
5394             src/gui_riscos.c, src/gui_x11.c, src/gui_gtk_x11.c,
5395             src/proto/gui.pro, src/syntax.c
5397 Patch 6.0.257
5398 Problem:    Win32: When 'mousefocus' is set and there is a BufRead
5399             autocommand, after the dialog for permissions changed outside of
5400             Vim: 'mousefocus' stops working. (Robert Webb)
5401 Solution:   Reset need_mouse_correct after checking timestamps.
5402 Files:      src/fileio.c
5404 Patch 6.0.258
5405 Problem:    When 'scrolloff' is 999 and there are folds, the text can jump up
5406             and down when moving the cursor down near the end of the file.
5407             (Lubomir Host)
5408 Solution:   When putting the cursor halfway the window start counting lines at
5409             the end of a fold.
5410 Files:      src/move.c
5412 Patch 6.0.259
5413 Problem:    MS-DOS: after editing the command line the cursor shape may remain
5414             like in Insert mode. (Volker Kiefel)
5415 Solution:   Reset the cursor shape after editing the command line.
5416 Files:      src/ex_getln.c
5418 Patch 6.0.260
5419 Problem:    GUI: May crash while starting up when giving an error message for
5420             missing color. (Servatius Brandt)
5421 Solution:   Don't call gui_write() when still starting up.  Don't give error
5422             message for empty color name.  Don't use 't_vb' while the GUI is
5423             still starting up.
5424 Files:      src/fileio.c, src/gui.c, src/misc1.c, src/ui.c
5426 Patch 6.0.261
5427 Problem:    nr2char() and char2nr() don't work with multi-byte characters.
5428 Solution:   Use 'encoding' for these functions. (Yasuhiro Matsumoto)
5429 Files:      runtime/doc/eval.txt, src/eval.c
5431 Patch 6.0.262 (extra)
5432 Problem:    Win32: IME doesn't work properly.  OnImeComposition() isn't used
5433             at all.
5434 Solution:   Adjust various things for IME.
5435 Files:      src/globals.h, src/gui_w32.c, src/mbyte.c, src/proto/ui.pro,
5436             src/structs.h, src/ui.c
5438 Patch 6.0.263
5439 Problem:    GTK: When a dialog is closed by the window manager, Vim hangs.
5440             (Christian J. Robinson)
5441 Solution:   Use GTK_WIDGET_DRAWABLE() instead of GTK_WIDGET_VISIBLE().
5442 Files:      src/gui_gtk.c, src/gui_gtk_x11.c
5444 Patch 6.0.264
5445 Problem:    The amount of virtual memory is used to initialize 'maxmemtot',
5446             which may be much more than the amount of physical memory,
5447             resulting in a lot of swapping.
5448 Solution:   Get the amount of physical memory with sysctl(), sysconf() or
5449             sysinfo() when possible.
5450 Files:      src/auto/configure, src/configure.in, src/config.h.in,
5451             src/os_unix.c, src/os_unix.h
5453 Patch 6.0.265
5454 Problem:    Win32: Using backspace while 'fkmap' is set causes a crash.
5455             (Jamshid Oasjmoha)
5456 Solution:   Don't try mapping special keys.
5457 Files:      src/farsi.c
5459 Patch 6.0.266
5460 Problem:    The rename() function deletes the file if the old and the new name
5461             are the same. (Volker Kiefel)
5462 Solution:   Don't do anything if the names are equal.
5463 Files:      src/fileio.c
5465 Patch 6.0.267
5466 Problem:    UTF-8: Although 'isprint' says a character is printable,
5467             utf_char2cells() still considers it unprintable.
5468 Solution:   Use vim_isprintc() for characters upto 0x100. (Yasuhiro Matsumoto)
5469 Files:      src/mbyte.c
5471 Patch 6.0.268 (extra) (depends on patch 6.0.255)
5472 Problem:    Win32: ACL check crashes when using forward slash in file name.
5473 Solution:   Improve the check for the path in the file name.
5474 Files:      src/os_win32.c
5476 Patch 6.0.269
5477 Problem:    Unprintable characters in a file name may cause problems when
5478             using the 'statusline' option or when 'buftype' is "nofile".
5479 Solution:   call trans_characters() for the resulting statusline. (Yasuhiro
5480             Matsumoto)
5481 Files:      src/buffer.c, src/screen.c, src/charset.c
5483 Patch 6.0.270 (depends on patch 6.0.267)
5484 Problem:    A tab causes UTF-8 text to be displayed in the wrong position.
5485             (Ron Aaron)
5486 Solution:   Correct utf_char2cells() again.
5487 Files:      src/mbyte.c
5489 Patch 6.1a.001 (extra)
5490 Problem:    32bit DOS: copying text to the clipboard may cause a crash.
5491             (Jonathan D Johnston)
5492 Solution:   Don't copy one byte too much in SetClipboardData().
5493 Files:      src/os_msdos.c
5495 Patch 6.1a.002
5496 Problem:    GTK: On some configurations, when closing a dialog from the window
5497             manager, Vim hangs.
5498 Solution:   Catch the "destroy" signal. (Aric Blumer)
5499 Files:      src/gui_gtk.c
5501 Patch 6.1a.003
5502 Problem:    Multi-byte: With UTF-8 double-wide char and 'virtualedit' set:
5503             yanking in Visual mode doesn't include the last byte. (Eric Long)
5504 Solution:   Don't add a space for a double-wide character.
5505 Files:      src/ops.c
5507 Patch 6.1a.004 (extra)
5508 Problem:    MINGW: undefined type. (Ron Aaron)
5509 Solution:   Make GetCompositionString_inUCS2() static.
5510 Files:      src/gui_w32.c, src/gui_w48.c, src/proto/gui_w32.pro
5512 Patch 6.1a.005 (extra)
5513 Problem:    Win32: ":hardcopy" doesn't work after ":hardcopy!". (Jonathan
5514             Johnston)
5515 Solution:   Don't keep the driver context when using ":hardcopy!". (Vince
5516             Negri)
5517 Files:      src/os_mswin.c
5519 Patch 6.1a.006
5520 Problem:    multi-byte: after setting 'encoding' the window title might be
5521             wrong.
5522 Solution:   Force resetting the title. (Yasuhiro Matsumoto)
5523 Files:      src/option.c
5525 Patch 6.1a.007
5526 Problem:    Filetype detection for "*.inc" doesn't work.
5527 Solution:   Use a ":let" command. (David Schweikert)
5528 Files:      runtime/filetype.vim
5530 Patch 6.1a.008 (extra)
5531 Problem:    Win32: ACL detection for network shares doesn't work.
5532 Solution:   Include the trailing (back)slash in the root path. (Mike Williams)
5533 Files:      src/os_win32.c
5535 Patch 6.1a.009
5536 Problem:    When using "\@<=" or "\@<!" in a pattern, a "\1" may refer to a ()
5537             part that follows, but it generates an error message.
5538 Solution:   Allow a forward reference when there is a following "\@<=" or
5539             "\@<!".
5540 Files:      runtime/doc/pattern.txt, src/regexp.c
5542 Patch 6.1a.010
5543 Problem:    When using ":help" and opening a new window, the alternate file
5544             isn't set.
5545 Solution:   Set the alternate file to the previously edited file.
5546 Files:      src/ex_cmds.c
5548 Patch 6.1a.011
5549 Problem:    GTK: ":set co=77", change width with the mouse, ":set co=77"
5550             doesn't resize the window. (Darren Hiebert)
5551 Solution:   Set the form size after handling a resize event.
5552 Files:      src/gui_gtk_x11.c
5554 Patch 6.1a.012
5555 Problem:    GTK: The file browser always returns a full path. (Lohner)
5556 Solution:   Shorten the file name if possible.
5557 Files:      src/gui_gtk.c
5559 Patch 6.1a.013
5560 Problem:    When using "=~word" in 'cinkeys' or 'indentkeys', the case of the
5561             last character of the word isn't ignored. (Raul Segura Acevedo)
5562 Solution:   Ignore case when checking the last typed character.
5563 Files:      src/edit.c
5565 Patch 6.1a.014
5566 Problem:    After patch 6.1a.006 can't compile without the title feature.
5567 Solution:   Add an #ifdef.
5568 Files:      src/option.c
5570 Patch 6.1a.015
5571 Problem:    MS-Windows: When expanding a file name that contains a '[' or '{'
5572             an extra backslash is inserted. (Raul Segura Acevedo)
5573 Solution:   Avoid adding the backslash.
5574 Files:      src/ex_getln.c
5576 Patch 6.1a.016
5577 Problem:    Completion after ":language" doesn't include "time". (Raul Segura
5578             Acevedo)
5579 Solution:   Add the alternative to the completions.
5580 Files:      src/ex_cmds2.c
5582 Patch 6.1a.017
5583 Problem:    Clicking the mouse in the top row of a window where the first line
5584             doesn't fit moves the cursor to the wrong column.
5585 Solution:   Add the skipcol also for the top row of a window.
5586 Files:      src/ui.c
5588 Patch 6.1a.018
5589 Problem:    When 'scrolloff' is one and the window height is one, "gj" can put
5590             the cursor above the window. (Raul Segura Acevedo)
5591 Solution:   Don't let skipcol become bigger than the cursor column.
5592 Files:      src/move.c
5594 Patch 6.1a.019
5595 Problem:    When using a composing character on top of an ASCII character, the
5596             "l" command clears the composing character.  Only when 'ruler' and
5597             'showcmd' are off. (Raphael Finkel)
5598 Solution:   Don't move the cursor by displaying characters when there are
5599             composing characters.
5600 Files:      src/screen.c
5602 Patch 6.1a.020
5603 Problem:    GTK: after patch 6.1a.011 resizing with the mouse doesn't always
5604             work well for small sizes. (Adrien Beau)
5605 Solution:   Use another way to avoid the problem with ":set co=77".
5606 Files:      src/gui_gtk_x11.c
5608 Patch 6.1a.021
5609 Problem:    Several Syntax menu entries are wrong or confusing.
5610 Solution:   Rephrase and correct the menu entries. (Adrien Beau)
5611 Files:      runtime/makemenu.vim, runtime/menu.vim
5613 Patch 6.1a.022
5614 Problem:    A tags file might be used twice on case insensitive systems.
5615             (Rick Swanton)
5616 Solution:   Don't use the same file name twice in the default for the 'tags'
5617             option.  Ignore case when comparing names of already visited
5618             files.
5619 Files:      src/misc2.c, src/option.c
5621 Patch 6.1a.023
5622 Problem:    When starting the GUI get "C" characters echoed in the terminal.
5623 Solution:   Don't try sending a clear-screen command while the GUI is starting
5624             up.
5625 Files:      src/screen.c
5627 Patch 6.1a.024
5628 Problem:    In other editors CTRL-F is often used for a find dialog.
5629 Solution:   In evim use CTRL-F for the find dialog.
5630 Files:      runtime/evim.vim
5632 Patch 6.1a.025
5633 Problem:    The choices for the fileformat dialog can't be translated.
5634 Solution:   Add g:menutrans_fileformat_choices. (Adrien Beau)
5635 Files:      runtime/menu.vim
5637 Patch 6.1a.026
5638 Problem:    Indenting Java files is wrong with "throws", "extends" and
5639             "implements" clauses.
5640 Solution:   Update the Java indent script.
5641 Files:      runtime/indent/java.vim
5643 Patch 6.1a.027
5644 Problem:    A few Syntax menu entries missing or incorrect.
5645 Solution:   Add and correct the menu entries. (Adrien Beau)
5646             Shorten a few menus to avoid they become too long.
5647 Files:      runtime/makemenu.vim, runtime/menu.vim
5649 Patch 6.1a.028
5650 Problem:    XIM: problems with feedback and some input methods.
5651 Solution:   Use iconv for calculating the cells.  Remove the queue for
5652             key_press_event only when text was changed. (Yasuhiro Matsumoto)
5653 Files:      src/globals.h, src/mbyte.c, src/screen.c
5655 Patch 6.1a.029
5656 Problem:    After patch 6.1a.028 can't compile GTK version with XIM but
5657             without multi-byte chars.
5658 Solution:   Add an #ifdef. (Aschwin Marsman)
5659 Files:      src/mbyte.c
5661 Patch 6.1a.030
5662 Problem:    With double-byte encodings toupper() and tolower() may have wrong
5663             results.
5664 Solution:   Skip double-byte characters. (Eric Long)
5665 Files:      src/eval.c
5667 Patch 6.1a.031
5668 Problem:    Accessing the 'balloondelay' variable may cause a crash.
5669 Solution:   Make the variable for 'balloondelay' a long. (Olaf Seibert)
5670 Files:      src/option.h
5672 Patch 6.1a.032 (extra)
5673 Problem:    Some menu files used a wrong encoding name for "scriptencoding".
5674 Solution:   Move the translations to a separate file, which is sourced after
5675             setting "scriptencoding".
5676             Also add Czech menu translations in ASCII and update the other
5677             encodings.
5678 Files:      runtime/lang/menu_cs_cz.iso_8859-1.vim,
5679             runtime/lang/menu_cs_cz.iso_8859-2.vim,
5680             runtime/lang/menu_czech_czech_republic.1250.vim,
5681             runtime/lang/menu_czech_czech_republic.1252.vim,
5682             runtime/lang/menu_czech_czech_republic.ascii.vim,
5683             runtime/lang/menu_de_de.iso_8859-1.vim,
5684             runtime/lang/menu_de_de.latin1.vim,
5685             runtime/lang/menu_fr_fr.iso_8859-1.vim,
5686             runtime/lang/menu_fr_fr.latin1.vim,
5687             runtime/lang/menu_french_france.1252.vim,
5688             runtime/lang/menu_german_germany.1252.vim,
5689             runtime/lang/menu_ja_jp.euc-jp.vim,
5690             runtime/lang/menu_ja_jp.utf-8.vim,
5691             runtime/lang/menu_japanese_japan.932.vim
5693 Patch 6.1a.033
5694 Problem:    XIM: doesn't reset input context.
5695 Solution:   call xim_reset() with im_set_active(FALSE). (Takuhiro Nishioka)
5696 Files:      src/mbyte.c
5698 Patch 6.1a.034 (extra)
5699 Problem:    Win32: The ACL checks for a readonly file still don't work well.
5700 Solution:   Remove the ACL checks, go back to how it worked in Vim 6.0.
5701 Files:      src/os_win32.c
5703 Patch 6.1a.035
5704 Problem:    multi-byte: When using ":sh" in the GUI, typed and displayed
5705             multi-byte characters are not handled correctly.
5706 Solution:   Deal with multi-byte characters to and from the shell. (Yasuhiro
5707             Matsumoto)  Also handle UTF-8 composing characters.
5708 Files:      src/os_unix.c
5710 Patch 6.1a.036
5711 Problem:    GTK: the save-yourself event was not handled.
5712 Solution:   Catch the save-yourself event and preserve swap files. (Neil Bird)
5713 Files:      src/gui_gtk_x11.c
5715 Patch 6.1a.037
5716 Problem:    The MS-Windows key mapping doesn't include CTRL-S for saving.
5717             (Vlad Sandrini)
5718 Solution:   Map CTRL-S to ":update".
5719 Files:      runtime/mswin.vim
5721 Patch 6.1a.038
5722 Problem:    Solaris: Including both sys/sysctl.h and sys/sysinfo.h doesn't
5723             work. (Antonio Colombo)
5724 Solution:   Don't include sys/sysinfo.h when not calling sysinfo().
5725 Files:      src/os_unix.c
5727 Patch 6.1a.039
5728 Problem:    Not all visual basic files are recognized.
5729 Solution:   Add checks to catch *.ctl files. (Raul Segura Acevedo)
5730 Files:      runtime/filetype.vim
5732 Patch 6.1a.040
5733 Problem:    A *.pl file is recognized as Perl, but it could be a prolog file.
5734 Solution:   Check the first non-empty line. (Kontra Gergely)
5735 Files:      runtime/filetype.vim
5737 Patch 6.1a.041
5738 Problem:    When pressing the left mouse button in the command line and them
5739             moving the mouse upwards, nearly all the text is selected.
5740 Solution:   Don't try extending a modeless selection when there isn't one.
5741 Files:      src/ui.c
5743 Patch 6.1a.042
5744 Problem:    When merging files, ":diffput" and ":diffget" are used a lot, but
5745             they require a lot of typing.
5746 Solution:   Add "dp" for ":diffput" and "do" for ":diffget".
5747 Files:      runtime/doc/diff.txt, src/diff.c, src/normal.c, src/proto/diff.pro
5750 Patch 6.1b.001 (extra)
5751 Problem:    Checking for wildcards in a path does not handle multi-byte
5752             characters with a trail byte which is a wildcard.
5753 Solution:   Handle multi-byte characters correctly. (Muraoka Taro)
5754 Files:      src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c,
5755             src/os_unix.c
5757 Patch 6.1b.002
5758 Problem:    A regexp that ends in "\{" is not flagged as an error.  May cause
5759             a stack overflow when 'incsearch' is set. (Gerhard Hochholzer)
5760 Solution:   Handle a missing "}" as an error.
5761 Files:      src/regexp.c
5763 Patch 6.1b.003 (extra)
5764 Problem:    The RISC OS GUI doesn't compile.
5765 Solution:   Include changes since Vim 5.7. (Andy Wingate)
5766 Files:      src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c,
5767             src/os_riscos.h, src/proto/gui_riscos.pro
5769 Patch 6.1b.004
5770 Problem:    col("'>") returns a negative number for linewise selection. (Neil
5771             Bird)
5772 Solution:   Don't add one to MAXCOL.
5773 Files:      src/eval.c
5775 Patch 6.1b.005
5776 Problem:    Using a search pattern that causes an out-of-stack error while
5777             'hlsearch' is set keeps giving the hit-Enter prompt.
5778             A search pattern that takes a long time delays typing when
5779             'incsearch' is set.
5780 Solution:   Stop 'hlsearch' highlighting when the regexp causes an error.
5781             Stop searching for 'incsearch' when a character is typed.
5782 Files:      src/globals.h, src/message.c, src/screen.c, src/search.c,
5783             src/vim.h
5785 Patch 6.1b.006
5786 Problem:    When entering a composing character on the command line with
5787             CTRL-V, the text isn't redrawn correctly.
5788 Solution:   Redraw the text under and after the cursor.
5789 Files:      src/ex_getln.c
5791 Patch 6.1b.007
5792 Problem:    When the cursor is in the white space between two sentences, "dis"
5793             deletes the first character of the following sentence, "das"
5794             deletes a space after the sentence.
5795 Solution:   Backup the cursor one character in these situations.
5796 Files:      src/search.c
5798 Patch 6.1b.008
5799 Problem:    *.xsl files are not recognized as xslt but xml.
5800             Monk files are not recognized.
5801 Solution:   Delete the duplicate line for *.xsl. (Johannes Zellner)
5802             Recognize monk files.
5803 Files:      runtime/filetype.vim
5805 Patch 6.1b.009
5806 Problem:    Can't always compile small features and then adding eval feature,
5807             "sandbox" is undefined. (Axel Kielhorn)
5808 Solution:   Always define "sandbox" when the eval feature is used.
5809 Files:      src/globals.h
5811 Patch 6.1b.010 (extra)
5812 Problem:    When compiling gvimext.cpp with MSVC 4.2 get a number of warnings.
5813 Solution:   Change "true" to "TRUE". (Walter Briscoe)
5814 Files:      GvimExt/gvimext.cpp
5816 Patch 6.1b.011
5817 Problem:    When using a very long string for confirm(), can't quit the
5818             displaying at the more prompt. (Hari Krishna Dara)
5819 Solution:   Jump to the end of the message to show the choices.
5820 Files:      src/message.c
5822 Patch 6.1b.012
5823 Problem:    Multi-byte: When 'showbreak' is set and a double-wide character
5824             doesn't fit at the right window edge the cursor gets stuck there.
5825             Using cursor-left gets stuck when 'virtualedit' is set.  (Eric
5826             Long)
5827 Solution:   Fix the way the extra ">" character is counted when 'showbreak' is
5828             set.  Don't correct cursor for virtual editing on a double-wide
5829             character.
5830 Files:      src/charset.c, src/edit.c
5832 Patch 6.1b.013
5833 Problem:    A user command that partly matches with a buffer-local user
5834             command and matches full with a global user command unnecessarily
5835             gives an 'ambiguous command' error.
5836 Solution:   Find the full global match even after a partly local match.
5837 Files:      src/ex_docmd.c
5839 Patch 6.1b.014
5840 Problem:    EBCDIC: switching mouse events off causes garbage on screen.
5841             Positioning the cursor in the GUI causes garbage.
5842 Solution:   Insert an ESC in the terminal code. (Ralf Schandl)
5843             Use "\b" instead of "\010" for KS_LE.
5844 Files:      src/os_unix.c, src/term.c
5846 Patch 6.1b.015
5847 Problem:    Vimtutor has a typo.  Get a warning for "tempfile" if it
5848             doesn't exist.
5849 Solution:   Move a quote to the end of a line. (Max Ischenko)
5850             Use "mktemp" first, more systems have it.
5851 Files:      src/vimtutor
5853 Patch 6.1b.016
5854 Problem:    GTK: loading a fontset that works partly, Vim might hang or crash.
5855 Solution:   Avoid that char_width becomes zero. (Yasuhiro Matsumoto)
5856 Files:      src/gui_gtk_x11.c
5858 Patch 6.1b.017
5859 Problem:    GUI: When using ":shell" and there is a beep, nothing happens.
5860 Solution:   Call vim_beep() to produce the beep from the shell. (Yasuhiro
5861             Matsumoto)
5862 Files:      src/message.c
5864 Patch 6.1b.018 (depends on 6.1b.006)
5865 Problem:    When entering the encryption key, special keys may still reveal
5866             the typed characters.
5867 Solution:   Make sure stars are used or nothing is shown in all cases.
5868 Files:      src/digraph.c, src/getchar.c, src/ex_getln.c
5870 Patch 6.1b.019 (depends on 6.1b.005)
5871 Problem:    A search pattern that takes a long time slows down typing when
5872             'incsearch' is set.
5873 Solution:   Pass SEARCH_PEEK to dosearch().
5874 Files:      src/ex_getln.c
5876 Patch 6.1b.020
5877 Problem:    When using the matchit plugin, "%" finds a match on the "end" of a
5878             ":syntax region" command in Vim scripts.
5879 Solution:   Skip over ":syntax region" commands by setting b:match_skip.
5880 Files:      runtime/ftplugin/vim.vim
5882 Patch 6.1b.021
5883 Problem:    when 'mousefocus' is set, CTRL-W CTRL-] sometimes doesn't warp the
5884             pointer to the new window. (Robert Webb)
5885 Solution:   Don't reset need_mouse_correct when checking the timestamp of a
5886             file.
5887 Files:      src/fileio.c
5889 Patch 6.1b.022
5890 Problem:    With lots of folds "j" does not obey 'scrolloff' properly.
5891             (Srinath Avadhanula)
5892 Solution:   Go to end of the fold before counting context lines.
5893 Files:      src/move.c
5895 Patch 6.1b.023
5896 Problem:    On MS-Windows system() may cause checking timestamps, because Vim
5897             loses and gains input focus, while this doesn't happen on Unix.
5898 Solution:   Don't check timestamps while system() is busy.
5899 Files:      src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c
5901 Patch 6.1b.024 (extra)
5902 Problem:    Gettext 0.11 complains that "sjis" is not a standard name.
5903 Solution:   Use "cp932" instead.
5904 Files:      src/po/sjiscorr.c
5906 Patch 6.1b.025 (extra)
5907 Problem:    Win32: When closing gvim while it is minimized  and has a changed
5908             file, the file-changed dialog pops up in a corner of the screen.
5909 Solution:   Put the dialog in the middle of the screen.
5910 Files:      src/gui_w48.c
5912 Patch 6.1b.026
5913 Problem:    When 'diffopt' contains 'iwhite' but not 'icase': differences in
5914             case are not highlighted properly. (Gerhard Hochholzer)
5915 Solution:   Don't ignore case when ignoring white space differences.
5916 Files:      src/diff.c
5918 Patch 6.1b.027
5919 Problem:    "vim --remote +" may cause a crash.
5920 Solution:   Check for missing file name argument. (Martin Kahlert)
5921 Files:      src/main.c
5923 Patch 6.1b.028 (extra)
5924 Problem:    Win16: Can't compile after patch 6.1b.025.
5925 Solution:   Add code specifically for Win16. (Vince Negri)
5926 Files:      src/gui_w48.c
5928 Patch 6.1b.029
5929 Problem:    Win32: When a directory on an NTFS partition is read/execute (no
5930             delete,modify,write) and the file has modify rights, trying to
5931             write the file deletes it.  Making the file read/write/execute
5932             (not delete) solves it. (Mark Canup)
5933 Solution:   Use the Unix code to check for a writable directory.  If not, then
5934             make a backup copy and overwrite the file.
5935 Files:      src/fileio.c
5937 Patch 6.1b.030 (extra)
5938 Problem:    Mac: small mistake in the build script and prototypes.
5939 Solution:   Fix the build script and add the prototypes. (Axel Kielhorn)
5940 Files:      src/os_mac.build, src/gui_mac.c
5942 Patch 6.1b.031 (extra)
5943 Problem:    Win32 GUI: ":set guifont=*" doesn't set 'guifont' to the resulting
5944             font name. (Vlad Sandrini)
5945 Solution:   Put the code back in gui_mch_init_font() to form the font name out
5946             of the logfont.
5947 Files:      src/gui_w48.c
5949 Patch 6.1b.032
5950 Problem:    Athena: Setting a color scheme before the GUI has started causes a
5951             crash. (Todd Blumer)
5952 Solution:   Don't try using color names that haven't been set yet.
5953 Files:      src/gui_athena.c
5955 Patch 6.1b.033
5956 Problem:    When using a count after a ":s" command may get ml_get errors.
5957             (Dietmar Lang)
5958 Solution:   Check that the resulting range does not go past the end of the
5959             buffer.
5960 Files:      src/ex_cmds.c
5962 Patch 6.1b.034
5963 Problem:    After sourcing mswin.vim, when using <C-S-Right> after
5964             auto-indenting and then <Del>, get warning for allocating
5965             ridiculous amount of memory. (Dave Delgreco)
5966 Solution:   Adjust the start of the Visual area when deleting the auto-indent.
5967 Files:      src/edit.c
5969 Patch 6.1b.035
5970 Problem:    When using evim, dropping a file on Vim and then double clicking
5971             on a word, it is changed to "i". (Merlin Hansen)
5972 Solution:   Reset need_start_insertmode after editing the file.
5973 Files:      src/ex_docmd.c
5976 ==============================================================================
5977 VERSION 6.2                                             *version-6.2*
5979 This section is about improvements made between version 6.1 and 6.2.
5981 This is mainly a bug-fix release.  There are also a few new features.
5983 Main new features:
5984 - Support for GTK 2. (Daniel Elstner)
5985 - Support for editing Arabic text. (Nadim Shaikli & Isam Bayazidi)
5986 - ":try" command and exception handling. (Servatius Brandt)
5987 - Support for the neXtaw GUI toolkit (mostly like Athena). (Alexey Froloff)
5988 - Cscope support for Win32. (Khorev Sergey)
5989 - Support for PostScript printing in various 8-bit encodings. (Mike Williams)
5992 Changed                                                 *changed-6.2*
5993 -------
5995 Removed the scheme indent file, the internal Lisp indenting works well now.
5997 Moved the GvimEXt, OleVim and VisVim directories into the "src" directory.
5998 This is more consistent with how xxd is handled.
6000 The VisVim.dll file is installed in the top directory, next to gvimext.dll,
6001 instead of in a subdirectory "VisVim".  Fixes that NSIS was uninstalling it
6002 from the wrong directory.
6004 Removed the art indent file, it didn't do anything.
6006 submatch() returned line breaks with CR instead of LF.
6008 Changed the Win32 Makefiles to become more uniform and compile gvimext.dll.
6009 (Dan Sharp)
6011 'cindent': Align a "//" comment with a "//" comment in a previous line.
6012 (Helmut Stiegler)
6014 Previously only for xterm-like terminals parent widgets were followed to find
6015 the title and icon label.  Now do this for all terminal emulators.
6017 Made it possible to recognize backslashes for "%" matching.  The 'M' flag in
6018 'cpoptions' disables it. (Haakon Riiser)
6020 Removed the Make_tcc.mak makefile for Turbo C.  It didn't work and we probably
6021 can't make it work (the compiler runs out of memory).
6023 Even though the documentation refers to keywords, "[ CTRL-D" was using
6024 'isident' to find matches.  Changed it to use 'iskeyword'.  Also applies to
6025 other commands that search for defined words in included files such as
6026 ":dsearch", "[D" and "[d".
6028 Made 'keywordprg' global-local. (Christian Robinson)
6030 Enabled the Netbeans interface by default.  Reversed the configure argument
6031 from "--enable-netbeans" to "--disable-netbeans".
6034 Added                                                   *added-6.2*
6035 -----
6037 New options:
6038         'arabic'
6039         'arabicshape'
6040         'ambiwidth'
6041         'autochdir'
6042         'casemap'
6043         'copyindent'
6044         'cscopequickfix'
6045         'preserveindent'
6046         'printencoding'
6047         'rightleftcmd'
6048         'termbidi'
6049         'toolbariconsize'
6050         'winfixheight'
6052 New keymaps:
6053         Serbian (Aleksandar Veselinovic)
6054         Chinese Pinyin (Fredrik Roubert)
6055         Esperanto (Antoine J. Mechelynck)
6057 New syntax files:
6058         Valgrind (Roger Luethi)
6059         Smarty template (Manfred Stienstra)
6060         MySQL (Kenneth Pronovici)
6061         RockLinux package description (Piotr Esden-Tempski)
6062         MMIX (Dirk Huesken)
6063         gkrellmrc (David Necas)
6064         Tilde (Tobias Rundtrom)
6065         Logtalk (Paulo Moura)
6066         PLP (Juerd Waalboer)
6067         fvwm2m4 (David Necas)
6068         IPfilter (Hendrik Scholz)
6069         fstab (Radu Dineiu)
6070         Quake (Nikolai Weibull)
6071         Occam (Mario Schweigler)
6072         lpc (Shizhu Pan)
6073         Exim conf (David Necas)
6074         EDIF (Artem Zankovich)
6075         .cvsrc (Nikolai Weibull)
6076         .fetchmailrc (Nikolai Weibull)
6077         GNU gpg (Nikolai Weibull)
6078         Grub (Nikolai Weibull)
6079         Modconf (Nikolai Weibull)
6080         RCS (Dmitry Vasiliev)
6081         Art (Dorai Sitaram)
6082         Renderman Interface Bytestream (Andrew J Bromage)
6083         Mailcap (Doug Kearns)
6084         Subversion commit file (Dmitry Vasiliev)
6085         Microsoft IDL (Vadim Zeitlin)
6086         WildPackets EtherPeek Decoder (Christopher Shinn)
6087         Spyce (Rimon Barr)
6088         Resolv.conf (Radu Dineiu)
6089         A65 (Clemens Kirchgatterer)
6090         sshconfig and sshdconfig (David Necas)
6091         Cheetah and HTMLCheetah (Max Ischenko)
6092         Packet filter (Camiel Dobbelaar)
6094 New indent files:
6095         Eiffel (David Clarke)
6096         Tilde (Tobias Rundtrom)
6097         Occam (Mario Schweigler)
6098         Art (Dorai Sitaram)
6099         PHP (Miles Lott)
6100         Dylan (Brent Fulgham)
6102 New tutor translations:
6103         Slovak (Lubos Celko)
6104         Greek (Christos Kontas)
6105         German (Joachim Hofmann)
6106         Norwegian (Øyvind Holm)
6108 New filetype plugins:
6109         Occam (Mario Schweigler)
6110         Art (Dorai Sitaram)
6111         ant.vim, aspvbs.vim, config.vim, csc.vim, csh.vim, dtd.vim, html.vim,
6112         jsp.vim, pascal.vim, php.vim, sgml.vim, sh.vim, svg.vim, tcsh.vim,
6113         xhtml.vim, xml.vim, xsd.vim.  (Dan Sharp)
6115 New compiler plugins:
6116         Checkstyle (Doug Kearns)
6117         g77 (Ralf Wildenhues)
6118         fortran (Johann-Guenter Simon)
6119         Xmllint (Doug Kearns)
6120         Ruby (Tim Hammerquist)
6121         Modelsim vcom (Paul Baleme)
6123 New menu translations:
6124         Brazilian (José de Paula)
6125         British (Mike Williams)
6126         Korean in UTF-8. (Nam SungHyun)
6127         Norwegian (Øyvind Holm)
6128         Serbian (Aleksandar Jelenak)
6130 New message translation for Norwegian. (Øyvind Holm)
6132 New color scheme:
6133         desert (Hans Fugal)
6135 Arabic specific features.  'arabicshape', 'termbidi', 'arabic' and
6136 'rightleftcmd' options.  (Nadim Shaikli & Isam Bayazidi)
6138 Support for neXtaw GUI toolkit, mostly like Athena. (Alexey Froloff)
6140 Win32: cscope support. (Khorev Sergey)
6142 VMS: various improvements to documentation and makefiles.  (Zoltan Arpadffy)
6144 Added "x" key to the explorer plugin: execute the default action. (Yasuhiro
6145 Matsumoto)
6147 Compile gvimext.dll with MingW. (Rene de Zwart)
6149 Add the "tohtml.vim" plugin.  It defines the ":TOhtml" user command, an easy
6150 way to convert text to HTML.
6152 Added ":try" / ":catch" / ":finally" / ":endtry" commands.  Add E999 numbers
6153 to all error messages, so that they can be caught by the number.
6154 (Servatius Brandt)
6155 Moved part of ex_docmd.c to the new ex_eval.c source file.
6157 Include support for GTK+ 2.2.x (Daniel Elstner)
6158 Adds the "~" register: drag & drop text.
6159 Adds the 'toolbariconsize' option.
6160 Add -Dalloca when running lint to work around a problem with alloca()
6161 prototype.
6163 When selecting an item in the error window to jump to, take some effort to
6164 find an ordinary window to show the file in (not a preview window).
6166 Support for PostScript printing of various 8-bit encodings. (Mike Williams)
6168 inputdialog() accepts a third argument that is used when the dialog is
6169 cancelled.  Makes it possible to see a difference between cancelling and
6170 entering nothing.
6172 Included Aap recipes.  Can be used to update Vim to the latest version,
6173 building and installing.
6175 "/" option in 'cinoptions': extra indent for comment lines. (Helmut Stiegler)
6177 Vim variable "v:register" and functions setreg(), getreg() and getregtype().
6178 (Michael Geddes)
6180 "v" flag in 'cpoptions': Leave text on screen with backspace in Insert mode.
6181 (Phillip Vandry)
6183 Dosinst.exe also finds gvimext.dll in the "GvimExt" directory.  Useful when
6184 running install in the "src" directory for testing.
6186 Support tag files that were sorted with case ignored. (Flemming Madsen)
6188 When completing a wildcard in a leading path element, as in "../*/Makefile",
6189 only the last part ("Makefile") was listed.  Support custom defined
6190 command line completion.  (Flemming Madsen)
6192 Also recognize "rxvt" as an xterm-like terminal. (Tomas Styblo)
6194 Proper X11 session management.  Fixes that the WM_SAVE_YOURSELF event was not
6195 used by popular desktops.  (Neil Bird)
6196 Not used for Gnome 2, it has its own handling.
6198 Support BOR, DEBUG and SPAWNO arguments for the Borland 3 Makefile. (Walter
6199 Briscoe)
6201 Support page breaks for printing.  Adds the "formfeed" field in
6202 'printoptions'.  (Mike Williams)
6204 Mac OSX: multi-language support: iconv and gettext. (Muraoka Taro, Axel
6205 Kielhorn)
6207 "\Z" flag in patterns: ignore differences in combining characters. (Ron Aaron)
6209 Added 'preserveindent' and 'copyindent' options.  They use existing white
6210 space characters instead of using Tabs as much as possible. (Chris Leishman)
6212 Updated Unicode tables to Unicode 4.0. (Raphael Finkel)
6214 Support for the mouse wheel in rxvt. (AIDA Shinra)
6216 Win32: Added ":8" file modifier to get short filename.  Test50 tests the ":8"
6217 expansion on Win32 systems. (Michael Geddes)
6219 'cscopequickfix' option: Open quickfix window for Cscope commands.  Also
6220 cleanup the code for giving messages.  (Khorev Sergey)
6222 GUI: Support more than 222 columns for mouse positions.
6224 ":stopinsert" command: Don't return to Insert mode.
6226 "interrupt" command for debug mode.  Useful for simulating CTRL-C. (Servatius
6227 Brandt)
6230 Fixed                                                   *fixed-6.2*
6231 -----
6233 Removed a few unused #defines from config.h.in, os_os2_cfg.h and os_vms_conf.h.
6235 The Vim icons in PNG format didn't have a transparent background. (Greg
6236 Roelofs)
6238 Fixed a large number of spelling mistakes in the docs. (Adri Verhoef)
6240 The #defines for prototype generation were causing trouble.  Changed them to
6241 typedefs.
6243 A new version of libintl.h uses __asm__, which confuses cproto.  Define a
6244 dummy __asm__ macro.
6246 When 'virtualedit' is set can't move to halfway an unprintable character.
6247 Cripples CTRL-V selection. (Taro Muraoka)
6248 Allow moving to halfway an unprintable character.  Don't let getvvcol() change
6249 the pos->coladd argument.
6251 When a tab wraps to the next line, 'listchars' is set and 'foldcolumn' is
6252 non-zero, only one character of the foldcolumn is highlighted. (Muraoka Taro)
6254 When using ":catch" without an argument Vim crashes. (Yasuhiro Matsumoto)
6255 When no argument given use the ".*" pattern.
6257 Win32: When gvim.exe is started from a shortcut with the window style property
6258 set to maximize Vim doesn't start with a maximized window. (Yasuhiro
6259 Matsumoto)  Open the window with the default size and don't call ShowWindow()
6260 again when it's already visible. (Helmut Stiegler)
6262 gui_gtk.c used MAX, but it's undefined to avoid a conflict with system header
6263 files.
6265 Win32: When closing a window from a mapping some pixels remain on the
6266 statusline. (Yasuhiro Matsumoto)
6268 A column number in an errorformat that goes beyond the end of the line may
6269 cause a crash.
6271 ":throw 'test'" crashes Vim. (Yasuhiro Matsumoto)
6273 The file selector's scrollbar colors are not set after doing a ":hi Scrollbar
6274 guifg=color".  And the file selector's colors are not changed by the
6275 colorscheme command.  (David Harrison)
6277 Motif: When compiling with FEAT_FOOTER defined, the text area gets a few
6278 pixels extra space on the right.  Remove the special case in
6279 gui_get_base_width(). (David Harrison)
6281 Using CTRL-R CTRL-P in Insert mode puts the '] mark in the wrong position.
6282 (Helmut Stiegler)
6284 When 'formatoptions' includes "awct" a non-comment wasn't auto-formatted.
6286 Using a "--cmd" argument more than 10 times caused a crash.
6288 DEC style mouse support didn't work if the page field is not empty.
6289 (Uribarri)
6291 "vim -l one two" did only set 'lisp' in the first file.  Vi does it for every
6292 file.
6294 ":set tw<" didn't work.  Was checking for '^' instead of '<'.
6296 In ":hardcopy > %.ps" the "%" was not expanded to the current filename.
6298 Made ":redraw" also update the Visual area.
6300 When a not implemented command, such as ":perl", has wrong arguments the less
6301 important error was reported, giving the user the idea the command could work.
6303 On non-Unix systems autocommands for writing did not attempt a match with the
6304 short file name, causing a pattern like "a/b" to fail.
6306 VMS: e_screenmode was not defined and a few other fixes for VMS. (Zoltan
6307 Arpadffy)
6309 redraw_msg() depended on FEAT_ARABIC instead of FEAT_RIGHTLEFT. (Walter
6310 Briscoe)
6312 Various changes for the PC Makefiles. (Walter Briscoe)
6314 Use _truename() instead of our own code to expand a file name into a full
6315 path. (Walter Briscoe)
6317 Error in filetype check for /etc/modutils. (Lubomir Host)
6319 Cscope interface: allocated a buffer too small.
6321 Win16: remove a trailing backslash from a path when obtaining the permission
6322 flags. (Vince Negri)
6324 When searching for tags with case ignored Vim could hang.
6326 When searching directories with a stopdir could get a crash.  Did not
6327 re-allocate enough memory. (Vince Negri)
6329 A user command may cause a crash.  Don't use the command index when it's
6330 negative. (Vince Negri)
6332 putenv() didn't work for MingW and Cygwin. (Dan Sharp)
6334 Many functions were common between os_msdos.c and os_win16.c.  Use os_msdos.c
6335 for compiling the Win16 version and remove the functions from os_win16.c.
6336 (Vince Negri)
6338 For terminals that behave like an xterm but didn't have a name that is
6339 recognized, the window title would not always be set.
6341 When syntax highlighting is off ":hardcopy" could still attempt printing
6342 colors.
6344 Crash when using ":catch" without an argument.  (Servatius Brandt)
6346 Win32: ":n #" doubled the backslashes.
6348 Fixed Arabic shaping for the command line. (Nadim Shaikli)
6350 Avoid splitting up a string displayed on the command line into individual
6351 characters, it breaks Arabic shaping.
6353 Updated Cygwin and MingW makefiles to use more dependencies. (Dan Sharp)
6355 2html.vim didn't work with 'nomagic' set.
6357 When a local argument list is used and doing ":only" Vim could crash later.
6358 (Muraoka Taro)
6360 When using "%P" in 'statusline' and the fillchar is "-", a percentage of 3%
6361 could result in "-3%".  Also avoid changing a space inside a filename to the
6362 fill character.
6364 MSwin: Handling of backslashes and double quotes for command line arguments
6365 was not like what other applications do.  (Walter Briscoe)
6367 Test32 sometimes didn't work, because test11.out was written as TEST11.OUT.
6369 Avoid pointer conversions warnings for Borland C 5.5 in dosinst.c and
6370 uninstal.c.
6372 More improvements for Make_bc3.mak file. (Walter Briscoe)
6374 When ":syn sync linebreaks=1" is used, editing the first line caused a redraw
6375 of the whole screen.
6377 Making translated messages didn't work, if_perl.xs wasn't found. (Vlad
6378 Sandrini)
6380 Motif and Athena: moving Vim to the foreground didn't uniconify it.  Use
6381 XMapRaised() instead of XRaiseWindow(). (Srikanth Sankaran)
6383 When using ":ptag" in a window where 'scrollbind' is set the preview window
6384 would also have 'scrollbind' set.  Also reset 'foldcolumn' and 'diff'.
6386 Various commands that split a window took over 'scrollbind', which is hardly
6387 ever desired.  Esp. for "q:" and ":copen".  Mostly reset 'scrollbind' when
6388 splitting a window.
6390 When 'shellslash' is set in the vimrc file the first entry of ":scriptnames"
6391 would still have backslashes.  Entries in the quickfix list could also have
6392 wrong (back)slashes.
6394 Win32: printer dialog texts were not translated. (Yasuhiro Matsumoto)
6396 When using a multi-byte character with a K_SPECIAL byte or a special key code
6397 with "--remote-send" the received byte sequence was mangled.  Put it in the
6398 typeahead buffer instead of the input buffer.
6400 Win32: The cursor position was incorrect after changing cursor shape.
6401 (Yasuhiro Matsumoto).
6403 Win32: When 'encoding' is not the current codepage the title could not be set
6404 to non-ascii characters.
6406 "vim -d scp://machine/file1 scp://machine/file2" did not work, there was only
6407 one window.  Fixed the netrw plugin not to wipe out the buffer if it is
6408 displayed in other windows.
6410 "/$" caused "e" in last column of screen to disappear, a highlighted blank was
6411 displayed instead.
6413 ":s/ *\ze\n//e" removed the line break and introduced arbitrary text.  Was
6414 using the line count including what matched after the "\ze".
6416 Using the "c" flag with ":s" changed the behavior when a line break is
6417 replaced and "\@<=" is used.  Without "c" a following match was not found.
6419 ":%s/\vA@<=\nB@=//gce" got stuck on "A\nB" when entering "n".
6421 VMS: add HAVE_STRFTIME in the config file. (Zoltan Arpadffy)
6423 When a delete prompts if a delete should continue when yanking is not
6424 possible, restore msg_silent afterwards.
6426 ":sign" did not complain about a missing argument.
6428 When adding or deleting a sign 'hlsearch' highlighting could disappear.
6429 Use the generic functions for updating signs.
6431 On MS-Windows NT, 2K and XP don't use command.com but cmd.exe for testing.
6432 Makes the tests work on more systems.
6434 In the DOS tests don't create "/tmp" to avoid an error.
6436 Mac classic: Problems with reading files with CR vs CR/LF.  Rely on the
6437 library version of fgets() to work correctly for Metrowerks 2.2. (Axel
6438 Kielhorn)
6440 When typing a password a "*" was shown for each byte instead of for each
6441 character.  Added multi-byte handling to displaying the stars. (Yasuhiro
6442 Matsumoto)
6444 When using Perl 5.6 accessing $curbuf doesn't work.  Add an #ifdef to use
6445 different code for 5.6 and 5.8.  (Dan Sharp)
6447 MingW and Cygwin: Don't strip the debug executable. (Dan Sharp)
6449 An assignment to a variable with curlies that includes "==" doesn't work.
6450 Skip over the curlies before searching for an "=". (Vince Negri)
6452 When cancelling the selection of alternate matching tags the tag stack index
6453 could be advanced too far, resulting in an error message when using CTRL-T.
6456 Patch 6.1.001
6457 Problem:    When formatting UTF-8 text it might be wrapped at a space that is
6458             followed by a composing character. (Raphael Finkel)
6459             Also correct a display error for removing a composing char on top
6460             of a space.
6461 Solution:   Check for a composing character on a space.
6462 Files:      src/edit.c, src/misc1.c, src/screen.c
6464 Patch 6.1.002 (extra)
6465 Problem:    Win32: after a ":popup" command the mouse pointer stays hidden.
6466 Solution:   Unhide the mouse pointer before showing the menu.
6467 Files:      src/gui_w48.c
6469 Patch 6.1.003
6470 Problem:    When 'laststatus' is zero and there is a vertical split, the
6471             vertical separator is drawn in the command line. (Srikant
6472             Sankaran)
6473 Solution:   Don't draw the vertical separator where there is no statusline.
6474 Files:      src/screen.c
6476 Patch 6.1.004
6477 Problem:    Unicode 3.2 changes width and composing of a few characters.
6478             (Markus Kuhn)
6479 Solution:   Adjust the Unicode functions for the character width and composing
6480             characters.
6481 Files:      src/mbyte.c
6483 Patch 6.1.005
6484 Problem:    When using more than 50 items in 'statusline' Vim might crash.
6485             (Steve Hall)
6486 Solution:   Increment itemcnt in check_stl_option(). (Flemming Madsen)
6487 Files:      src/option.c
6489 Patch 6.1.006
6490 Problem:    When using "P" in Visual mode to put linewise selected text, the
6491             wrong text is deleted. (Jakub Turski)
6492 Solution:   Put the text before the Visual area and correct the text to be
6493             deleted for the inserted lines.
6494             Also fix that "p" of linewise text in Visual block mode doesn't
6495             work correctly.
6496 Files:      src/normal.c, src/ops.c
6498 Patch 6.1.007
6499 Problem:    Using ":filetype plugin off" when filetype plugins were never
6500             enabled causes an error message. (Yiu Wing)
6501 Solution:   Use ":silent!" to avoid the error message.
6502 Files:      runtime/ftplugof.vim
6504 Patch 6.1.008
6505 Problem:    The "%" command doesn't ignore \" inside a string, it's seen as
6506             the end of the string. (Ken Clark)
6507 Solution:   Skip a double quote preceded by an odd number of backslashes.
6508 Files:      src/search.c
6510 Patch 6.1.009
6511 Problem:    Vim crashes when using a huge number for the maxwid value in a
6512             statusline. (Robert M. Nowotniak)
6513 Solution:   Check for an overflow that makes maxwid negative.
6514 Files:      src/buffer.c
6516 Patch 6.1.010
6517 Problem:    Searching backwards for a question mark with "?\?" doesn't work.
6518             (Alan Isaac)  Same problem in ":s?\??" and ":g?\??".
6519 Solution:   Change the "\?" in a pattern to "?" when using "?" as delimiter.
6520 Files:      src/ex_cmds.c, src/ex_docmd.c, src/proto/regexp.pro, src/regexp.c,
6521             src/search.c, src/syntax.c, src/tag.c
6523 Patch 6.1.011
6524 Problem:    XIM: doesn't work correctly when 'number' is set.  Also, a focus
6525             problem when selecting candidates.
6526 Solution:   Fix the XIM problems. (Yasuhiro Matsumoto)
6527 Files:      src/mbyte.c, src/screen.c
6529 Patch 6.1.012
6530 Problem:    A system() call might fail if fread() does CR-LF to LF
6531             translation.
6532 Solution:   Open the output file in binary mode. (Pavol Huhas)
6533 Files:      src/misc1.c
6535 Patch 6.1.013
6536 Problem:    Win32: The default for 'printexpr' doesn't work when there are
6537             special characters in 'printdevice'.
6538 Solution:   Add double quotes around the device name. (Mike Williams)
6539 Files:      runtime/doc/option.txt, src/option.c
6541 Patch 6.1.014
6542 Problem:    An operator like "r" used in Visual block mode doesn't use
6543             'virtualedit' when it's set to "block".
6544 Solution:   Check for 'virtualedit' being active in Visual block mode when the
6545             operator was started.
6546 Files:      src/ex_docmd.c, src/globals.h, src/misc2.c, src/normal.c,
6547             src/ops.c, src/undo.c
6549 Patch 6.1.015
6550 Problem:    After patch 6.1.014 can't compile with tiny features. (Christian
6551             J. Robinson)
6552 Solution:   Add the missing define of virtual_op.
6553 Files:      src/vim.h
6555 Patch 6.1.016 (extra)
6556 Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
6557             reversing.
6558 Solution:   Replace the RevOut() function with ETO_IGNORELANGUAGE. (Ron Aaron)
6559 Files:      src/gui_w32.c
6561 Patch 6.1.017
6562 Problem:    Cygwin: After patch 6.1.012 Still doesn't do binary file I/O.
6563             (Pavol Juhas)
6564 Solution:   Define BINARY_FILE_IO for Cygwin.
6565 Files:      src/os_unix.h
6567 Patch 6.1.018
6568 Problem:    Error message when using cterm highlighting. (Leonardo Di Lella)
6569 Solution:   Remove a backslash before a question mark.
6570 Files:      runtime/syntax/cterm.vim
6572 Patch 6.1.019 (extra)
6573 Problem:    Win32: File name is messed up when editing just a drive name.
6574             (Walter Briscoe)
6575 Solution:   Append a NUL after the drive name. (Vince Negri)
6576 Files:      src/os_win32.c
6578 Patch 6.1.020
6579 Problem:    col("'>") returns a huge number after using Visual line mode.
6580 Solution:   Return the length of the line instead.
6581 Files:      src/eval.c
6583 Patch 6.1.021 (depends on patch 6.1.009)
6584 Problem:    Vim crashes when using a huge number for the minwid value in a
6585             statusline. (Robert M. Nowotniak)
6586 Solution:   Check for an overflow that makes minwid negative.
6587 Files:      src/buffer.c
6589 Patch 6.1.022
6590 Problem:    Grabbing the status line above the command-line window works like
6591             the bottom status line was grabbed. (Jim Battle)
6592 Solution:   Make it possible to grab the status line above the command-line
6593             window, so that it can be resized.
6594 Files:      src/ui.c
6596 Patch 6.1.023 (extra)
6597 Problem:    VMS: running tests doesn't work properly.
6598 Solution:   Adjust the makefile. (Zoltan Arpadffy)
6599 Files:      src/testdir/Make_vms.mms
6601 Patch 6.1.024
6602 Problem:    When header files use a new syntax for declaring functions, Vim
6603             can't figure out missing prototypes properly.
6604 Solution:   Accept braces around a function name. (M. Warner Losh)
6605 Files:      src/osdef.sh
6607 Patch 6.1.025
6608 Problem:    Five messages for "vim --help" don't start with a capital. (Vlad
6609             Sandrini)
6610 Solution:   Make the messages consistent.
6611 Files:      src/main.c
6613 Patch 6.1.026
6614 Problem:    *.patch files are not recognized as diff files.  In a script a
6615             "VAR=val" argument after "env" isn't ignored.  PHP scripts are not
6616             recognized.
6617 Solution:   Add *.patch for diff filetypes.  Ignore "VAR=val".  Recognize PHP
6618             scripts. (Roman Neuhauser)
6619 Files:      runtime/filetype.vim, runtime/scripts.vim
6621 Patch 6.1.027
6622 Problem:    When 'foldcolumn' is non-zero, a special character that wraps to
6623             the next line disturbs the foldcolumn highlighting.  (Yasuhiro
6624             Matsumoto)
6625 Solution:   Only use the special highlighting when drawing text characters.
6626 Files:      src/screen.c
6628 Patch 6.1.028
6629 Problem:    Client-server: When a --remote-expr fails, Vim still exits with
6630             status zero.
6631 Solution:   Exit Vim with a non-zero status to indicate the --remote-expr
6632             failed. (Thomas Scott Urban)
6633 Files:      src/main.c
6635 Patch 6.1.029
6636 Problem:    When 'encoding' is an 8-bit encoding other than "latin1", editing
6637             a utf-8 or other Unicode file uses the wrong conversion. (Jan
6638             Fedak)
6639 Solution:   Don't use Unicode to latin1 conversion for 8-bit encodings other
6640             than "latin1".
6641 Files:      src/fileio.c
6643 Patch 6.1.030
6644 Problem:    When CTRL-N is mapped in Insert mode, it is also mapped after
6645             CTRL-X CTRL-N, while it is not mapped after CTRL-X CTRL-F.
6646             (Kontra Gergely)
6647 Solution:   Don't map CTRL-N after CTRL-X CTRL-N.  Same for CTRL-P.
6648 Files:      src/getchar.c
6650 Patch 6.1.031
6651 Problem:    Cygwin: Xxd could read a file in text mode instead of binary mode.
6652 Solution:   Use "rb" or "rt" when needed. (Pavol Juhas)
6653 Files:      src/xxd/xxd.c
6655 Patch 6.1.032
6656 Problem:    Can't specify a quickfix file without jumping to the first error.
6657 Solution:   Add the ":cgetfile" command. (Yegappan Lakshmanan)
6658 Files:      runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmds.h,
6659             src/quickfix.c
6661 Patch 6.1.033
6662 Problem:    GUI: When the selection is lost and the Visual highlighting is
6663             changed to underlining, the cursor is left in a different
6664             position. (Christian Michon)
6665 Solution:   Update the cursor position after redrawing the selection.
6666 Files:      src/ui.c
6668 Patch 6.1.034
6669 Problem:    A CVS diff file isn't recognized as diff filetype.
6670 Solution:   Skip lines starting with "? " before checking for an "Index:" line.
6671 Files:      runtime/scripts.vim
6673 Patch 6.1.035 (extra, depends on 6.1.016)
6674 Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
6675             reversing on MS-Windows 95/98/ME.
6676 Solution:   Restore the RevOut() function and use it in specific situations
6677             only. (Ron Aaron)
6678 Files:      src/gui_w32.c
6680 Patch 6.1.036
6681 Problem:    This command may cause a crash: ":v/./,//-j". (Ralf Arens)
6682 Solution:   Compute the right length of the regexp when it's empty.
6683 Files:      src/search.c
6685 Patch 6.1.037
6686 Problem:    When 'lazyredraw' is set, pressing "q" at the hit-enter prompt
6687             causes an incomplete redraw and the cursor isn't positioned.
6688             (Lubomir Host)
6689 Solution:   Overrule 'lazyredraw' when do_redraw is set.
6690 Files:      src/main.c, src/screen.c
6692 Patch 6.1.038
6693 Problem:    Multi-byte: When a ":s" command contains a multi-byte character
6694             where the trail byte is '~' the text is messed up.
6695 Solution:   Properly skip multi-byte characters in regtilde() (Muraoka Taro)
6696 Files:      src/regexp.c
6698 Patch 6.1.039
6699 Problem:    When folds are defined and the file is changed outside of Vim,
6700             reloading the file doesn't update the folds. (Anders
6701             Schack-Nielsen)
6702 Solution:   Recompute the folds after reloading the file.
6703 Files:      src/fileio.c
6705 Patch 6.1.040
6706 Problem:    When changing directory for expanding a file name fails there is
6707             no error message.
6708 Solution:   Give an error message for this situation.  Don't change directory
6709             if we can't return to the original directory.
6710 Files:      src/diff.c, src/ex_docmd.c, src/globals.h, src/misc1.c,
6711             src/os_unix.c
6713 Patch 6.1.041
6714 Problem:    ":mkvimrc" doesn't handle a mapping that has a leading space in
6715             the rhs. (Davyd Ondrejko)
6716 Solution:   Insert a CTRL-V before the leading space.  Also display leading
6717             and trailing white space in <> form.
6718 Files:      src/getchar.c, src/message.c
6720 Patch 6.1.042
6721 Problem:    "vim -r" doesn't show all matches when 'wildignore' removes swap
6722             files. (Steve Talley)
6723 Solution:   Keep all matching swap file names.
6724 Files:      src/memline.c
6726 Patch 6.1.043
6727 Problem:    After patch 6.1.040 a few warnings are produced.
6728 Solution:   Add a type cast to "char *" for mch_chdir(). (Axel Kielhorn)
6729 Files:      src/diff.c, src/ex_docmd.c.c, src/misc1.c, src/os_unix.c
6731 Patch 6.1.044 (extra)
6732 Problem:    GUI: When using the find/replace dialog with text that contains a
6733             slash, an invalid substitute command is generated.
6734             On Win32 a find doesn't work when 'insertmode' is set.
6735 Solution:   Escape slashes with a backslash.
6736             Make the Win32, Motif and GTK gui use common code for the
6737             find/replace dialog.
6738             Add the "match case" option for Motif and GTK.
6739 Files:      src/feature.h, src/proto/gui.pro, src/gui.c, src/gui.h,
6740             src/gui_motif.c, src/gui_gtk.c, src/gui_w48.c
6742 Patch 6.1.045
6743 Problem:    In Visual mode, with lots of folds and 'scrolloff' set to 999,
6744             moving the cursor down near the end of the file causes the text to
6745             jump up and down. (Lubomir Host)
6746 Solution:   Take into account that the cursor may be on the last line of a
6747             closed fold.
6748 Files:      src/move.c
6750 Patch 6.1.046
6751 Problem:    X11 GUI: ":set lsp=2 gcr=n-v-i:hor1-blinkon0" draws a black
6752             rectangle.  ":set lsp=2 gcr=n-v-i:hor10-blinkon0" makes the cursor
6753             disappear.  (Nam SungHyun)
6754 Solution:   Correctly compute the height of the horizontal cursor.
6755 Files:      src/gui_gtk_x11.c, src/gui_x11.c
6757 Patch 6.1.047
6758 Problem:    When skipping commands after an error was encountered, expressions
6759             for ":if", ";elseif" and ":while" are still evaluated.
6760 Solution:   Skip the expression after an error. (Servatius Brandt)
6761 Files:      src/ex_docmd.c
6763 Patch 6.1.048
6764 Problem:    Unicode 3.2 changes were missing a few Hangul Jamo characters.
6765 Solution:   Recognize more characters as composing characters. (Jungshik Shin)
6766 Files:      src/mbyte.c
6768 Patch 6.1.049 (extra)
6769 Problem:    On a 32 bit display a valid color may cause an error message,
6770             because its pixel value is negative. (Chris Paulson-Ellis)
6771 Solution:   Check for -11111 instead of the color being negative.
6772             Don't add one to the pixel value, -1 may be used for white.
6773 Files:      src/globals.h, src/gui.c, src/gui.h, src/gui_amiga.c,
6774             src/gui_athena.c, src/gui_beos.cc, src/gui_gtk_x11.c,
6775             src/gui_mac.c, src/gui_motif.c, src/gui_photon.c,
6776             src/gui_riscos.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c,
6777             src/gui_x11.c, src/mbyte.c, src/syntax.c
6779 Patch 6.1.050 (depends on 6.1.049)
6780 Problem:    After patch 6.1.049 the non-GUI version doesn't compile.
6781 Solution:   Add an #ifdef FEAT_GUI.  (Robert Stanton)
6782 Files:      src/syntax.c
6784 Patch 6.1.051 (depends on 6.1.044)
6785 Problem:    Doesn't compile with GUI and small features.
6786 Solution:   Adjust the #if for ga_append().
6787 Files:      src/misc2.c
6789 Patch 6.1.052
6790 Problem:    Unix: The executable() function doesn't work when the "which"
6791             command isn't available.
6792 Solution:   Go through $PATH manually.  Also makes it work for VMS.
6793 Files:      src/os_unix.c
6795 Patch 6.1.053
6796 Problem:    When 'sessionoptions' contains "globals", or "localoptions" and an
6797             option value contains a line break, the resulting script is wrong.
6798 Solution:   Use "\n" and "\r" for a line break. (Srinath Avadhanula)
6799 Files:      src/eval.c
6801 Patch 6.1.054
6802 Problem:    GUI: A mouse click is not recognized at the more prompt, even when
6803             'mouse' includes 'r'.
6804 Solution:   Recognize a mouse click at the more prompt.
6805             Also accept a mouse click in the last line in the GUI.
6806             Add "ml" entry in 'mouseshape'.
6807 Files:      src/gui.c, src/message.c, src/misc1.c, src/misc2.c, src/option.c,
6808             src/structs.h
6810 Patch 6.1.055
6811 Problem:    When editing a compressed file, Vim will inspect the contents to
6812             guess the filetype.
6813 Solution:   Don't source scripts.vim for .Z, .gz, .bz2, .zip and .tgz files.
6814 Files:      runtime/filetype.vim, runtime/plugin/gzip.vim
6816 Patch 6.1.056
6817 Problem:    Loading the Syntax menu can take quite a bit of time.
6818 Solution:   Add the "skip_syntax_sel_menu" variable.  When it's defined the
6819             available syntax files are not in the Syntax menu.
6820 Files:      runtime/doc/gui.txt, runtime/menu.vim
6822 Patch 6.1.057
6823 Problem:    An ESC inside a mapping doesn't work as documented when
6824             'insertmode' is set, it does go from Visual or Normal mode to
6825             Insert mode. (Benji Fisher)
6826 Solution:   Make it work as documented.
6827 Files:      src/normal.c
6829 Patch 6.1.058
6830 Problem:    When there is a closed fold just above the first line in the
6831             window, using CTRL-X CTRL-Y in Insert mode will show only one line
6832             of the fold. (Alexey Marinichev)
6833 Solution:   Correct the topline by putting it at the start of the fold.
6834 Files:      src/move.c
6836 Patch 6.1.059
6837 Problem:    ":redir > ~/file" doesn't work. (Stephen Rasku)
6838 Solution:   Expand environment variables in the ":redir >" argument.
6839 Files:      src/ex_docmd.c
6841 Patch 6.1.060
6842 Problem:    When 'virtualedit' is set and 'selection' is "exclusive", deleting
6843             a character just before a tab changes the tab into spaces.  Undo
6844             doesn't restore the tab. (Helmut Stiegler)
6845 Solution:   Don't replace the tab by spaces when it's not needed.  Correctly
6846             save the line before it's changed.
6847 Files:      src/ops.c
6849 Patch 6.1.061
6850 Problem:    When 'virtualedit' is set and 'selection' is "exclusive", a Visual
6851             selection that ends just after a tab doesn't include that tab in
6852             the highlighting.  (Helmut Stiegler)
6853 Solution:   Use a different way to exclude the character under the cursor.
6854 Files:      src/screen.c
6856 Patch 6.1.062
6857 Problem:    The "man" filetype plugin doesn't work properly on Solaris 5.
6858 Solution:   Use a different way to detect that "man -s" should be used. (Hugh
6859             Sasse)
6860 Files:      runtime/ftplugin/man.vim
6862 Patch 6.1.063
6863 Problem:    Java indenting doesn't work properly.
6864 Solution:   Ignore comments when checking if the indent doesn't increase after
6865             a "}".
6866 Files:      runtime/indent/java.vim
6868 Patch 6.1.064
6869 Problem:    The URLs that the netrw plugin recognized for ftp and rcp did not
6870             conform to the standard method://[user@]host[:port]/path.
6871 Solution:   Use ftp://[user@]host[[:#]port]/path, which supports both the new
6872             and the previous style.  Also added a bit of dav/cadaver support.
6873             (Charles Campbell)
6874 Files:      runtime/plugin/netrw.vim
6876 Patch 6.1.065
6877 Problem:    VMS: The colorscheme, keymap and compiler menus are not filled in.
6878 Solution:   Ignore case when looking for ".vim" files. (Coen Engelbarts)
6879 Files:      runtime/menu.vim
6881 Patch 6.1.066 (extra)
6882 Problem:    When calling system() in a plugin reading stdin hangs.
6883 Solution:   Don't set the terminal to RAW mode when it wasn't in RAW mode
6884             before the system() call.
6885 Files:      src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_unix.c,
6886             src/os_win16.c, src/os_win32.c
6888 Patch 6.1.067
6889 Problem:    ":set viminfo+=f0" is not working. (Benji Fisher)
6890 Solution:   Check the "f" flag instead of "'" in 'viminfo'.
6891 Files:      src/mark.c
6893 Patch 6.1.068
6894 Problem:    When a file is reloaded after it was changed outside of Vim, diff
6895             mode isn't updated. (Michael Naumann)
6896 Solution:   Invalidate the diff info so that it's updated when needed.
6897 Files:      src/fileio.c
6899 Patch 6.1.069
6900 Problem:    When 'showmatch' is set and "$" is in 'cpoptions', using
6901             "C}<Esc>" may forget to remove the "$". (Preben Guldberg)
6902 Solution:   Restore dollar_vcol after displaying the matching cursor position.
6903 Files:      src/search.c
6905 Patch 6.1.070 (depends on 6.1.060)
6906 Problem:    Compiler warning for signed/unsigned mismatch. (Mike Williams)
6907 Solution:   Add a typecast to int.
6908 Files:      src/ops.c
6910 Patch 6.1.071
6911 Problem:    When 'selection' is exclusive, g CTRL-G in Visual mode counts one
6912             character too much. (David Necas)
6913 Solution:   Subtract one from the end position.
6914 Files:      src/ops.c
6916 Patch 6.1.072
6917 Problem:    When a file name in a tags file starts with http:// or something
6918             else for which there is a BufReadCmd autocommand, the file isn't
6919             opened anyway.
6920 Solution:   Check if there is a matching BufReadCmd autocommand and try to
6921             open the file.
6922 Files:      src/fileio.c, src/proto/fileio.pro, src/tag.c
6924 Patch 6.1.073 (extra)
6925 Problem:    BC5: Can't easily specify a tiny, small, normal, big or huge
6926             version.
6927 Solution:   Allow selecting the version with the FEATURES variable. (Ajit
6928             Thakkar)
6929 Files:      src/Make_bc5.mak
6931 Patch 6.1.074
6932 Problem:    When 'cdpath' includes "../..", changing to a directory in which
6933             we currently already are doesn't work.  ff_check_visited() adds
6934             the directory both when using it as the root for searching and for
6935             the actual matches. (Stephen Rasku)
6936 Solution:   Use a separate list for the already searched directories.
6937 Files:      src/misc2.c
6939 Patch 6.1.075 (depends on 6.1.072)
6940 Problem:    Can't compile fileio.c on MS-Windows.
6941 Solution:   Add a declaration for the "p" pointer. (Madoka Machitani)
6942 Files:      src/fileio.c
6944 Patch 6.1.076 (extra)
6945 Problem:    Macintosh: explorer plugin doesn't work on Mac Classic.
6946             IME doesn't work.  Dialog boxes don't work on Mac OS X
6947 Solution:   Fix explorer plugin and key modifiers. (Axel Kielhorn)
6948             Fix IME support. (Muraoka Taro)
6949             Disable dialog boxes. (Benji Fisher)
6950 Files:      src/edit.c, src/feature.h, src/gui_mac.c, src/os_mac.c
6952 Patch 6.1.077
6953 Problem:    On a Debian system with ACL linking fails. (Lubomir Host)
6954 Solution:   When the "acl" library is used, check if the "attr" library is
6955             present and use it.
6956 Files:      src/auto/configure, src/configure.in, src/link.sh
6958 Patch 6.1.078
6959 Problem:    When using 'foldmethod' "marker" and the end marker appears before
6960             the start marker in the file, no fold is found. (Nazri Ramliy)
6961 Solution:   Don't let the fold depth go negative.
6962 Files:      src/fold.c
6964 Patch 6.1.079
6965 Problem:    When using "s" in Visual block mode with 'virtualedit' set, when
6966             the selected block is after the end of some lines the wrong text
6967             is inserted and some lines are skipped. (Servatius Brandt)
6968 Solution:   Insert the right text and extend short lines.
6969 Files:      src/ops.c
6971 Patch 6.1.080
6972 Problem:    When using gcc with /usr/local already in the search path, adding
6973             it again causes problems.
6974 Solution:   Adjust configure.in to avoid adding /usr/local/include and
6975             /usr/local/lib when using GCC and they are already used. (Johannes
6976             Zellner)
6977 Files:      src/auto/configure, src/configure.in
6979 Patch 6.1.081
6980 Problem:    ":help CTRL-\_CTRL-N" doesn't work.  (Christian J. Robinson)
6981 Solution:   Double the backslash to avoid the special meaning of "\_".
6982 Files:      src/ex_cmds.c
6984 Patch 6.1.082
6985 Problem:    On MS-Windows the vimrc_example.vim script is sourced and then
6986             mswin.vim.  This enables using select mode, but since "p" is
6987             mapped it doesn't replace the selection.
6988 Solution:   Remove the mapping of "p" from vimrc_example.vim, it's obsolete.
6989             (Vlad Sandrini)
6990 Files:      runtime/vimrc_example.vim
6992 Patch 6.1.083
6993 Problem:    When $LANG is "sk" or "sk_sk", the Slovak menu file isn't found.
6994             (Martin Lacko)
6995 Solution:   Guess the right menu file based on the system.
6996 Files:      runtime/lang/menu_sk_sk.vim
6998 Patch 6.1.084 (depends on 6.1.080)
6999 Problem:    "include" and "lib" are mixed up when checking the directories gcc
7000             already searches.
7001 Solution:   Swap the variable names. (SunHo Kim)
7002 Files:      src/auto/configure, src/configure.in
7004 Patch 6.1.085
7005 Problem:    When using CTRL-O CTRL-\ CTRL-N from Insert mode, the displayed
7006             mode "(insert)" isn't removed. (Benji Fisher)
7007 Solution:   Clear the command line.
7008 Files:      src/normal.c
7010 Patch 6.1.086 (depends on 6.1.049)
7011 Problem:    The guifg color for CursorIM doesn't take effect.
7012 Solution:   Use the foreground color when it's defined. (Muraoka Taro)
7013 Files:      src/gui.c
7015 Patch 6.1.087
7016 Problem:    A thesaurus with Japanese characters has problems with characters
7017             in different word classes.
7018 Solution:   Only separate words with single-byte non-word characters.
7019             (Muraoka Taro)
7020 Files:      src/edit.c
7022 Patch 6.1.088 (extra)
7023 Problem:    Win32: no debugging info is generated.  Tags file excludes .cpp
7024             files.
7025 Solution:   Add "/map" to compiler flags.  Add "*.cpp" to ctags command.
7026             (Muraoka Taro)
7027 Files:      src/Make_mvc.mak
7029 Patch 6.1.089
7030 Problem:    On BSDI systems there is no ss_sp field in stack_t. (Robert Jan)
7031 Solution:   Use ss_base instead.
7032 Files:      src/auto/configure, src/configure.in, src/config.h.in,
7033             src/os_unix.c
7035 Patch 6.1.090
7036 Problem:    CTRL-F gets stuck when 'scrolloff' is non-zero and there is a mix
7037             of long wrapping lines and a non-wrapping line.
7038 Solution:   Check that CTRL-F scrolls at least one line.
7039 Files:      src/move.c
7041 Patch 6.1.091
7042 Problem:    GTK: Can't change preeditstate without setting 'imactivatekey'.
7043 Solution:   Add some code to change preeditstate for OnTheSpot. (Yasuhiro
7044             Matsumoto)
7045 Files:      src/mbyte.c
7047 Patch 6.1.092
7048 Problem:    ":mapclear <buffer>" doesn't work. (Srikanth Adayapalam)
7049 Solution:   Allow an argument for ":mapclear".
7050 Files:      src/ex_cmds.h
7052 Patch 6.1.093 (extra)
7053 Problem:    Mac and MS-Windows GUI: when scrolling while ":s" is working the
7054             results can be messed up, because the cursor is moved.
7055 Solution:   Disallow direct scrolling when not waiting for a character.
7056 Files:      src/gui_mac.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7058 Patch 6.1.094
7059 Problem:    Cygwin: Passing a file name that has backslashes isn't handled
7060             very well.
7061 Solution:   Convert file name arguments to Posix.  (Chris Metcalf)
7062 Files:      src/main.c
7064 Patch 6.1.095
7065 Problem:    When using signs can free an item on the stack.
7066             Overruling sign colors doesn't work. (Srikanth Sankaran)
7067 Solution:   Don't free the item on the stack.  Use NULL instead of "none" for
7068             the value of the color.
7069 Files:      src/gui_x11.c
7071 Patch 6.1.096
7072 Problem:    When erasing the right halve of a double-byte character, it may
7073             cause further characters to be erased. (Yasuhiro Matsumoto)
7074 Solution:   Make sure only one character is erased.
7075 Files:      src/screen.c
7077 Patch 6.1.097 (depends on 6.1.090)
7078 Problem:    When 'scrolloff' is set to a huge value, CTRL-F at the end of the
7079             file scrolls one line. (Lubomir Host)
7080 Solution:   Don't scroll when CTRL-F detects the end-of-file.
7081 Files:      src/move.c
7083 Patch 6.1.098
7084 Problem:    MS-Windows: When the xxd program is under "c:\program files" the
7085             "Convert to Hex" menu doesn't work. (Brian Mathis)
7086 Solution:   Put the path to xxd in double quotes.
7087 Files:      runtime/menu.vim
7089 Patch 6.1.099
7090 Problem:    Memory corrupted when closing a fold with more than 99999 lines.
7091 Solution:   Allocate more space for the fold text. (Walter Briscoe)
7092 Files:      src/eval.c
7094 Patch 6.1.100 (extra, depends on 6.1.088)
7095 Problem:    Win32: VC5 and earlier don't support the /mapinfo option.
7096 Solution:   Add "/mapinfo" only when "MAP=lines" is specified. (Muraoka Taro)
7097 Files:      src/Make_mvc.mak
7099 Patch 6.1.101
7100 Problem:    After using ":options" the tabstop of a new window is 15.  Entry
7101             in ":options" window for 'autowriteall' is wrong. (Antoine J
7102             Mechelynck)  Can't insert a space in an option value.
7103 Solution:   Use ":setlocal" instead of ":set".  Change "aw" to "awa".
7104             Don't map space in Insert mode.
7105 Files:      runtime/optwin.vim
7107 Patch 6.1.102
7108 Problem:    Unprintable and multi-byte characters in a statusline item are not
7109             truncated correctly. (Yasuhiro Matsumoto)
7110 Solution:   Count the width of characters instead of the number of bytes.
7111 Files:      src/buffer.c
7113 Patch 6.1.103
7114 Problem:    A function returning from a while loop, with 'verbose' set to 12
7115             or higher, doesn't mention the return value.  A function with the
7116             'abort' attribute may return -1 while the verbose message says
7117             something else.
7118 Solution:   Move the verbose message about returning from a function to
7119             call_func(). (Servatius Brandt)
7120 Files:      src/eval.c
7122 Patch 6.1.104
7123 Problem:    GCC 3.1 appears to have an optimizer problem that makes test 3
7124             crash.
7125 Solution:   For GCC 3.1 add -fno-strength-reduce to avoid the optimizer bug.
7126             Filter out extra info from "gcc --version".
7127 Files:      src/auto/configure, src/configure.in
7129 Patch 6.1.105
7130 Problem:    Win32: The default for 'shellpipe' doesn't redirect stderr. (Dion
7131             Nicolaas)
7132 Solution:   Redirect stderr, depending on the shell (like for 'shellredir').
7133 Files:      src/option.c
7135 Patch 6.1.106
7136 Problem:    The maze program crashes.
7137 Solution:   Change "11" to "27" and it works. (Greg Roelofs)
7138 Files:      runtime/macros/maze/mazeansi.c
7140 Patch 6.1.107
7141 Problem:    When 'list' is set the current line in the error window may be
7142             displayed wrong. (Muraoka Taro)
7143 Solution:   Don't continue the line after the $ has been displayed and the
7144             rightmost column is reached.
7145 Files:      src/screen.c
7147 Patch 6.1.108
7148 Problem:    When interrupting a filter command such as "!!sleep 20" the file
7149             becomes read-only. (Mark Brader)
7150 Solution:   Only set the read-only flag when opening a buffer is interrupted.
7151             When the shell command was interrupted, read the output that was
7152             produced so far.
7153 Files:      src/ex_cmds.c, src/fileio.c
7155 Patch 6.1.109
7156 Problem:    When 'eadirection' is "hor", using CTRL-W = doesn't equalize the
7157             window heights. (Roman Neuhauser)
7158 Solution:   Ignore 'eadirection' for CTRL-W =
7159 Files:      src/window.c
7161 Patch 6.1.110
7162 Problem:    When using ":badd file" when "file" is already present but not
7163             listed, it stays unlisted. (David Frey)
7164 Solution:   Set 'buflisted'.
7165 Files:      src/buffer.c
7167 Patch 6.1.111
7168 Problem:    It's not possible to detect using the Unix sources on Win32 or Mac.
7169 Solution:   Add has("macunix") and has("win32unix").
7170 Files:      runtime/doc/eval.txt, src/eval.c
7172 Patch 6.1.112
7173 Problem:    When using ":argdo", ":bufdo" or ":windo", CTRL-O doesn't go to
7174             the cursor position from before this command but every position
7175             where the argument was executed.
7176 Solution:   Only remember the cursor position from before the ":argdo",
7177             ":bufdo" and ":windo".
7178 Files:      src/ex_cmds2.c, src/mark.c
7180 Patch 6.1.113
7181 Problem:    ":bufdo bwipe" only wipes out half the buffers.  (Roman Neuhauser)
7182 Solution:   Decide what buffer to go to next before executing the command.
7183 Files:      src/ex_cmds2.c
7185 Patch 6.1.114
7186 Problem:    ":python import vim", ":python vim.current.buffer[0:0] = []" gives
7187             a lalloc(0) error. (Chris Southern)
7188 Solution:   Don't allocate an array when it's size is zero.
7189 Files:      src/if_python.c
7191 Patch 6.1.115
7192 Problem:    "das" on the white space at the end of a paragraph does not delete
7193             the "." the sentence ends with.
7194 Solution:   Don't exclude the last character when it is not white space.
7195 Files:      src/search.c
7197 Patch 6.1.116
7198 Problem:    When 'endofline' is changed while 'binary' is set a file should be
7199             considered modified. (Olaf Buddenhagen)
7200 Solution:   Remember the 'eol' value when editing started and consider the
7201             file changed when the current value is different and 'binary' is
7202             set.  Also fix that the window title isn't updated when 'ff' or
7203             'bin' changes.
7204 Files:      src/option.c, src/structs.h
7206 Patch 6.1.117
7207 Problem:    Small problem with editing a file over ftp: and with Cygwin.
7208 Solution:   Remove a dot from a ":normal" command.  Use "cygdrive" where
7209             appropriate.  (Charles Campbell)
7210 Files:      runtime/plugin/netrw.vim
7212 Patch 6.1.118
7213 Problem:    When a file in diff mode is reloaded because it changed outside
7214             of Vim, other windows in diff mode are not always updated.
7215             (Michael Naumann)
7216 Solution:   After reloading a file in diff mode mark all windows in diff mode
7217             for redraw.
7218 Files:      src/diff.c
7220 Patch 6.1.119 (extra)
7221 Problem:    With the Sniff interface, using Sniff 4.0.X on HP-UX, there may be
7222             a crash when connecting to Sniff.
7223 Solution:   Initialize sniff_rq_sep such that its value can be changed.
7224             (Martin Egloff)
7225 Files:      src/if_sniff.c
7227 Patch 6.1.120 (depends on 6.1.097)
7228 Problem:    When 'scrolloff' is non-zero and there are folds, CTRL-F at the
7229             end of the file scrolls part of a closed fold.  (Lubomir Host)
7230 Solution:   Adjust the first line to the start of a fold.
7231 Files:      src/move.c
7233 Patch 6.1.121 (depends on 6.1.098)
7234 Problem:    When starting Select mode from Insert mode, then using the Paste
7235             menu entry, the cursor is left before the last pasted character.
7236             (Mario Schweigler)
7237 Solution:   Set the cursor for Insert mode one character to the right.
7238 Files:      runtime/menu.vim
7240 Patch 6.1.122
7241 Problem:    ":file name" creates a new buffer to hold the old buffer name,
7242             which becomes the alternate file.  This buffer is unexpectedly
7243             listed.
7244 Solution:   Create the buffer for the alternate name unlisted.
7245 Files:      src/ex_cmds.c
7247 Patch 6.1.123
7248 Problem:    A ":match" command with more than one argument doesn't report an
7249             error.
7250 Solution:   Check for extra characters. (Servatius Brandt)
7251 Files:      src/ex_docmd.c
7253 Patch 6.1.124
7254 Problem:    When trying to exit and there is a hidden buffer that had 'eol'
7255             off and 'bin' set exiting isn't possible. (John McGowan)
7256 Solution:   Set b_start_eol when clearing the buffer.
7257 Files:      src/buffer.c
7259 Patch 6.1.125
7260 Problem:    Explorer plugin asks for saving a modified buffer even when it's
7261             open in another window as well.
7262 Solution:   Count the number of windows using the buffer.
7263 Files:      runtime/plugin/explorer.vim
7265 Patch 6.1.126
7266 Problem:    Adding the choices in the syntax menu is consuming much of the
7267             startup time of the GUI while it's not often used.
7268 Solution:   Only add the choices when the user wants to use them.
7269 Files:      Makefile, runtime/makemenu.vim, runtime/menu.vim,
7270             runtime/synmenu.vim, src/Makefile
7272 Patch 6.1.127
7273 Problem:    When using "--remote file" and the server has 'insertmode' set,
7274             commands are inserted instead of being executed. (Niklas Volbers)
7275 Solution:   Go to Normal mode again after the ":drop" command.
7276 Files:      src/main.c
7278 Patch 6.1.128
7279 Problem:    The expression "input('very long prompt')" puts the cursor in the
7280             wrong line (column is OK).
7281 Solution:   Add the wrapped lines to the indent. (Yasuhiro Matsumoto)
7282 Files:      src/ex_getln.c
7284 Patch 6.1.129
7285 Problem:    On Solaris editing "file/" and then "file" results in using the
7286             same buffer.  (Jim Battle)
7287 Solution:   Before using stat(), check that there is no illegal trailing
7288             slash.
7289 Files:      src/auto/configure, src/config.h.in, src/configure.in,
7290             src/macros.h src/misc2.c, src/proto/misc2.pro
7292 Patch 6.1.130
7293 Problem:    The documentation for some of the 'errorformat' items is unclear.
7294 Solution:   Add more examples and explain hard to understand items. (Stefan
7295             Roemer)
7296 Files:      runtime/doc/quickfix.txt
7298 Patch 6.1.131
7299 Problem:    X11 GUI: when expanding a CSI byte in the input stream to K_CSI,
7300             the CSI byte itself isn't copied.
7301 Solution:   Copy the CSI byte.
7302 Files:      src/gui_x11.c
7304 Patch 6.1.132
7305 Problem:    Executing a register in Ex mode may cause commands to be skipped.
7306             (John McGowan)
7307 Solution:   In Ex mode use an extra check if the register contents was
7308             consumed, to avoid input goes into the typeahead buffer.
7309 Files:      src/ex_docmd.c
7311 Patch 6.1.133
7312 Problem:    When drawing double-wide characters in the statusline, may clear
7313             half of a character. (Yasuhiro Matsumoto)
7314 Solution:   Force redraw of the next character by setting the attributes
7315             instead of putting a NUL in ScreenLines[].  Do put a NUL in
7316             ScreenLines[] when overwriting half of a double-wide character.
7317 Files:      src/screen.c
7319 Patch 6.1.134
7320 Problem:    An error for a trailing argument of ":match" should not be given
7321             after ":if 0". (Servatius Brandt)
7322 Solution:   Only do the check when executing commands.
7323 Files:      src/ex_docmd.c
7325 Patch 6.1.135
7326 Problem:    Passing a command to the shell that includes a newline always has
7327             a backslash before the newline.
7328 Solution:   Remove one backslash before the newline.  (Servatius Brandt)
7329 Files:      src/ex_docmd.c
7331 Patch 6.1.136
7332 Problem:    When $TERM is "linux" the default for 'background' is "dark", even
7333             though the GUI uses a light background. (Hugh Allen)
7334 Solution:   Don't mark the option as set when defaulting to "dark" for the
7335             linux console.  Also reset 'background' to "light" when the GUI
7336             has a light background.
7337 Files:      src/option.c
7339 Patch 6.1.137
7340 Problem:    Converting to HTML has a clumsy way of dealing with tabs which may
7341             change the highlighting.
7342 Solution:   Replace tabs with spaces after converting a line to HTML. (Preben
7343             Guldberg)
7344 Files:      runtime/syntax/2html.vim
7346 Patch 6.1.138 (depends on 6.1.126)
7347 Problem:    Adding extra items to the Syntax menu can't be done when the "Show
7348             individual choices" menu is used.
7349 Solution:   Use ":runtime!" instead of ":source", so that all synmenu.vim
7350             files in the runtime path are loaded. (Servatius Brandt)
7351             Also fix that a translated menu can't be removed.
7352 Files:      runtime/menu.vim
7354 Patch 6.1.139
7355 Problem:    Cygwin: PATH_MAX is not defined.
7356 Solution:   Include limits.h. (Dan Sharp)
7357 Files:      src/main.c
7359 Patch 6.1.140
7360 Problem:    Cygwin: ":args `ls *.c`" does not work if the shell command
7361             produces CR NL line separators.
7362 Solution:   Remove the CR characters ourselves. (Pavol Juhas)
7363 Files:      src/os_unix.c
7365 Patch 6.1.141
7366 Problem:    ":wincmd gx" may cause problems when mixed with other commands.
7367             ":wincmd c" doesn't close the window immediately. (Benji Fisher)
7368 Solution:   Pass the extra command character directly instead of using the
7369             stuff buffer and call ex_close() directly.
7370 Files:      src/ex_docmd.c, src/normal.c, src/proto/normal.pro,
7371             src/proto/window.pro, src/window.c
7373 Patch 6.1.142
7374 Problem:    Defining paragraphs without a separating blank line isn't
7375             possible.  Paragraphs can't be formatted automatically.
7376 Solution:   Allow defining paragraphs with lines that end in white space.
7377             Added the 'w' and 'a' flags in 'formatoptions'.
7378 Files:      runtime/doc/change.txt, src/edit.c, src/misc1.c, src/normal.c,
7379             src/option.h, src/ops.c, src/proto/edit.pro, src/proto/ops.pro,
7380             src/vim.h
7382 Patch 6.1.143 (depends on 6.1.142)
7383 Problem:    Auto formatting near the end of the file moves the cursor to a
7384             wrong position.  In Insert mode some lines are made one char too
7385             narrow.  When deleting a line undo might not always work properly.
7386 Solution:   Don't always move to the end of the line in the last line.  Don't
7387             position the cursor past the end of the line in Insert mode.
7388             After deleting a line save the cursor line for undo.
7389 Files:      src/edit.c, src/ops.c, src/normal.c
7391 Patch 6.1.144
7392 Problem:    Obtaining the size of a line in screen characters can be wrong.
7393             A pointer may wrap around zero.
7394 Solution:   In win_linetabsize() check for a MAXCOL length argument. (Jim
7395             Dunleavy)
7396 Files:      src/charset.c
7398 Patch 6.1.145
7399 Problem:    GTK: Drag&drop with more than 3 files may cause a crash. (Mickael
7400             Marchand)
7401 Solution:   Rewrite the code that parses the received list of files to be more
7402             robust.
7403 Files:      src/charset.c, src/gui_gtk_x11.c
7405 Patch 6.1.146
7406 Problem:    MS-Windows: When $HOME is constructed from $HOMEDRIVE and
7407             $HOMEPATH, it is not used for storing the _viminfo file.  (Normal
7408             Diamond)
7409 Solution:   Set $HOME with the value obtained from $HOMEDRIVE and $HOMEPATH.
7410 Files:      src/misc1.c
7412 Patch 6.1.147 (extra)
7413 Problem:    MS-Windows: When a dialog has no default button, pressing Enter
7414             ends it anyway and all buttons are selected.
7415 Solution:   Don't end a dialog when there is no default button.  Don't select
7416             all button when there is no default. (Vince Negri)
7417 Files:      src/gui_w32.c
7419 Patch 6.1.148 (extra)
7420 Problem:    MS-Windows: ACL is not properly supported.
7421 Solution:   Add an access() replacement that also works for ACL. (Mike
7422             Williams)
7423 Files:      runtime/doc/editing.txt, src/os_win32.c
7425 Patch 6.1.149 (extra)
7426 Problem:    MS-Windows: Can't use diff mode from the file explorer.
7427 Solution:   Add a "diff with Vim" context menu entry. (Dan Sharp)
7428 Files:      GvimExt/gvimext.cpp, GvimExt/gvimext.h
7430 Patch 6.1.150
7431 Problem:    OS/2, MS-Windows and MS-DOS: When 'shellslash' is set getcwd()
7432             still uses backslash. (Yegappan Lakshmanan)
7433 Solution:   Adjust slashes in getcwd().
7434 Files:      src/eval.c
7436 Patch 6.1.151 (extra)
7437 Problem:    Win32: The NTFS substream isn't copied.
7438 Solution:   Copy the substream when making a backup copy. (Muraoka Taro)
7439 Files:      src/fileio.c, src/os_win32.c, src/proto/os_win32.pro
7441 Patch 6.1.152
7442 Problem:    When $LANG is iso8859-1 translated menus are not used.
7443 Solution:   Change iso8859 to iso_8859.
7444 Files:      runtime/menu.vim
7446 Patch 6.1.153
7447 Problem:    Searching in included files may search recursively when the path
7448             starts with "../".  (Sven Berkvens-Matthijsse)
7449 Solution:   Compare full file names, use inode/device when possible.
7450 Files:      src/search.c
7452 Patch 6.1.154 (extra)
7453 Problem:    DJGPP: "vim -h" leaves the cursor in a wrong position.
7454 Solution:   Don't position the cursor using uninitialized variables. (Jim
7455             Dunleavy)
7456 Files:      src/os_msdos.c
7458 Patch 6.1.155
7459 Problem:    Win32: Cursor may sometimes disappear in Insert mode.
7460 Solution:   Change "hor10" in 'guicursor' to "hor15". (Walter Briscoe)
7461 Files:      src/option.c
7463 Patch 6.1.156
7464 Problem:    Conversion between DBCS and UCS-2 isn't implemented cleanly.
7465 Solution:   Clean up a few things.
7466 Files:      src/mbyte.c, src/structs.h
7468 Patch 6.1.157
7469 Problem:    'hlsearch' highlights only the second comma in ",,,,," with
7470             "/,\@<=[^,]*". (Preben Guldberg)
7471 Solution:   Also check for an empty match to start just after a previous
7472             match.
7473 Files:      src/screen.c
7475 Patch 6.1.158
7476 Problem:    "zs" and "ze" don't work correctly with ":set nowrap siso=1".
7477             (Preben Guldberg)
7478 Solution:   Take 'siso' into account when computing the horizontal scroll
7479             position for "zs" and "ze".
7480 Files:      src/normal.c
7482 Patch 6.1.159
7483 Problem:    When expanding an abbreviation that includes a multi-byte
7484             character too many characters are deleted. (Andrey Urazov)
7485 Solution:   Delete the abbreviation counting characters instead of bytes.
7486 Files:      src/getchar.c
7488 Patch 6.1.160
7489 Problem:    ":$read file.gz" doesn't work. (Preben Guldberg)
7490 Solution:   Don't use the '[ mark after it has become invalid.
7491 Files:      runtime/plugin/gzip.vim
7493 Patch 6.1.161 (depends on 6.1.158)
7494 Problem:    Warning for signed/unsigned compare.  Can set 'siso' to a negative
7495             value. (Mike Williams)
7496 Solution:   Add a typecast.  Add a check for 'siso' being negative.
7497 Files:      src/normal.c, src/option.c
7499 Patch 6.1.162
7500 Problem:    Python interface: Didn't initialize threads properly.
7501 Solution:   Call PyEval_InitThreads() when starting up.
7502 Files:      src/if_python.c
7504 Patch 6.1.163
7505 Problem:    Win32: Can't compile with Python after 6.1.162.
7506 Solution:   Dynamically load  PyEval_InitThreads(). (Dan Sharp)
7507 Files:      src/if_python.c
7509 Patch 6.1.164
7510 Problem:    If 'modifiable' is off, converting to xxd fails and 'filetype' is
7511             changed to "xxd" anyway.
7512 Solution:   Don't change 'filetype' when conversion failed.
7513 Files:      runtime/menu.vim
7515 Patch 6.1.165
7516 Problem:    Making changes in several lines and then a change in one of these
7517             lines that splits it in two or more lines, undo information was
7518             corrupted.  May cause a crash. (Dave Fishburn)
7519 Solution:   When skipping to save a line for undo because it was already
7520             saved, move it to become the last saved line, so that when the
7521             command changes the line count other saved lines are not involved.
7522 Files:      src/undo.c
7524 Patch 6.1.166
7525 Problem:    When 'autoindent' is set and mswin.vim has been sourced, pasting
7526             with CTRL-V just after auto-indenting removes the indent. (Shlomi
7527             Fish)
7528 Solution:   First insert an "x" and delete it again, so that the auto-indent
7529             remains.
7530 Files:      runtime/mswin.vim
7532 Patch 6.1.167
7533 Problem:    When giving a negative argument to ":retab" strange things start
7534             happening. (Hans Ginzel)
7535 Solution:   Check for a negative value.
7536 Files:      src/ex_cmds.c
7538 Patch 6.1.168
7539 Problem:    Pressing CTRL-C at the hit-enter prompt doesn't end the prompt.
7540 Solution:   Make CTRL-C stop the hit-enter prompt.
7541 Files:      src/message.c
7543 Patch 6.1.169
7544 Problem:    bufexists() finds a buffer by using the name of a symbolic link to
7545             it, but bufnr() doesn't. (Yegappan Lakshmanan)
7546 Solution:   When bufnr() can't find a buffer, try using the same method as
7547             bufexists().
7548 Files:      src/eval.c
7550 Patch 6.1.170
7551 Problem:    Using ":mksession" uses the default session file name, but "vim
7552             -S" doesn't. (Hans Ginzel)
7553 Solution:   Use the default session file name if "-S" is the last command
7554             line argument or another option follows.
7555 Files:      runtime/doc/starting.txt, src/main.c
7557 Patch 6.1.171
7558 Problem:    When opening a line just above a closed fold with "O" and the
7559             comment leader is automatically inserted, the cursor is displayed
7560             in the first column. (Sung-Hyun Nam)
7561 Solution:   Update the flag that indicates the cursor is in a closed fold.
7562 Files:      src/misc1.c
7564 Patch 6.1.172
7565 Problem:    Command line completion of ":tag /pat" does not show the same
7566             results as the tags the command actually finds. (Gilles Roy)
7567 Solution:   Don't modify the pattern to make it a regexp.
7568 Files:      src/ex_getln.c, src/tag.c
7570 Patch 6.1.173
7571 Problem:    When using remote control to edit a position in a file and this
7572             file is the current buffer and it's modified, the window is split
7573             and the ":drop" command fails.
7574 Solution:   Don't split the window, keep editing the same buffer.
7575             Use the ":drop" command in VisVim to avoid the problem there.
7576 Files:      src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
7577             VisVim/Commands.cpp
7579 Patch 6.1.174
7580 Problem:    It is difficult to know in a script whether an option not only
7581             exists but really works.
7582 Solution:   Add "exists('+option')".
7583 Files:      runtime/doc/eval.txt, src/eval.c
7585 Patch 6.1.175
7586 Problem:    When reading commands from a pipe and a CTRL-C is pressed, Vim
7587             will hang. (Piet Delport)
7588 Solution:   Don't keep reading characters to clear typeahead when an interrupt
7589             was detected, stop when a single CTRL-C is read.
7590 Files:      src/getchar.c, src/ui.c
7592 Patch 6.1.176
7593 Problem:    When the stack limit is very big a false out-of-stack error may
7594             be detected.
7595 Solution:   Add a check for overflow of the stack limit computation. (Jim
7596             Dunleavy)
7597 Files:      src/os_unix.c
7599 Patch 6.1.177 (depends on 6.1.141)
7600 Problem:    ":wincmd" does not allow a following command. (Gary Johnson)
7601 Solution:   Check for a following " | cmd".  Also give an error for trailing
7602             characters.
7603 Files:      src/ex_docmd.c
7605 Patch 6.1.178
7606 Problem:    When 'expandtab' is set "r<C-V><Tab>" still expands the Tab.
7607             (Bruce deVisser)
7608 Solution:   Replace with a literal Tab.
7609 Files:      src/normal.c
7611 Patch 6.1.179 (depends on 6.1.091)
7612 Problem:    When using X11R5 XIMPreserveState is undefined. (Albert Chin)
7613 Solution:   Include the missing definitions.
7614 Files:      src/mbyte.c
7616 Patch 6.1.180
7617 Problem:    Use of the GUI code for forking is inconsistent.
7618 Solution:   Define MAY_FORK and use it for later #ifdefs. (Ben Fowlwer)
7619 Files:      src/gui.c
7621 Patch 6.1.181
7622 Problem:    If the terminal doesn't wrap from the last char in a line to the
7623             next line, the last column is blanked out. (Peter Karp)
7624 Solution:   Don't output a space to mark the wrap, but the same character
7625             again.
7626 Files:      src/screen.c
7628 Patch 6.1.182 (depends on 6.1.142)
7629 Problem:    It is not possible to auto-format comments only. (Moshe Kaminsky)
7630 Solution:   When the 'a' and 'c' flags are in 'formatoptions' only auto-format
7631             comments.
7632 Files:      runtime/doc/change.txt, src/edit.c
7634 Patch 6.1.183
7635 Problem:    When 'fencs' is empty and 'enc' is utf-8, reading a file with
7636             illegal bytes gives "CONVERSION ERROR" even though no conversion
7637             is done.  'readonly' is set, even though writing the file results
7638             in an unmodified file.
7639 Solution:   For this specific error use "ILLEGAL BYTE" and don't set
7640             'readonly'.
7641 Files:      src/fileio.c
7643 Patch 6.1.184 (extra)
7644 Problem:    The extra mouse buttons found on some mice don't work.
7645 Solution:   Support two extra buttons for MS-Windows. (Michael Geddes)
7646 Files:      runtime/doc/term.txt, src/edit.c, src/ex_getln.c, src/gui.c,
7647             src/gui_w32.c, src/gui_w48.c, src/keymap.h, src/message.c,
7648             src/misc1.c, src/misc2.c, src/normal.c, src/vim.h
7650 Patch 6.1.185 (depends on 6.1.182)
7651 Problem:    Can't compile without +comments feature.
7652 Solution:   Add #ifdef FEAT_COMMENTS. (Christian J. Robinson)
7653 Files:      src/edit.c
7655 Patch 6.1.186 (depends on 6.1.177)
7656 Problem:    ":wincmd" does not allow a following comment. (Aric Blumer)
7657 Solution:   Check for a following double quote.
7658 Files:      src/ex_docmd.c
7660 Patch 6.1.187
7661 Problem:    Using ":doarg" with 'hidden' set and the current file is the only
7662             argument and was modified gives an error message. (Preben
7663             Guldberg)
7664 Solution:   Don't try re-editing the same file.
7665 Files:      src/ex_cmds2.c
7667 Patch 6.1.188 (depends on 6.1.173)
7668 Problem:    Unused variable in the small version.
7669 Solution:   Move the declaration for "p" inside #ifdef FEAT_LISTCMDS.
7670 Files:      src/ex_cmds2.c
7672 Patch 6.1.189
7673 Problem:    inputdialog() doesn't work when 'c' is in 'guioptions'. (Aric
7674             Blumer)
7675 Solution:   Fall back to the input() function in this situation.
7676 Files:      src/eval.c
7678 Patch 6.1.190 (extra)
7679 Problem:    VMS: doesn't build with GTK GUI.  Various other problems.
7680 Solution:   Fix building for GTK.  Improved Perl, Python and TCL support.
7681             Improved VMS documentation. (Zoltan Arpadffy)
7682             Added Vimtutor for VMS (T. R. Wyant)
7683 Files:      runtime/doc/os_vms.txt, src/INSTALLvms.txt, src/gui_gtk_f.h,
7684             src/if_tcl.c, src/main.c, src/gui_gtk_vms.h, src/Make_vms.mms,
7685             src/os_vms.opt, src/proto/if_tcl.pro, vimtutor.com,
7686             src/testdir/Make_vms.mms
7688 Patch 6.1.191
7689 Problem:    When using "vim -s script" and redirecting the output, the delay
7690             for the "Output is not to a terminal" warning slows Vim down too
7691             much.
7692 Solution:   Don't delay when reading commands from a script.
7693 Files:      src/main.c
7695 Patch 6.1.192
7696 Problem:    ":diffsplit" doesn't add "hor" to 'scrollopt'. (Gary Johnson)
7697 Solution:   Add "hor" to 'scrollopt' each time ":diffsplit" is used.
7698 Files:      src/diff.c, src/main.c
7700 Patch 6.1.193
7701 Problem:    Crash in in_id_list() for an item with a "containedin" list. (Dave
7702             Fishburn)
7703 Solution:   Check for a negative syntax id, used for keywords.
7704 Files:      src/syntax.c
7706 Patch 6.1.194
7707 Problem:    When "t_ti" is set but it doesn't cause swapping terminal pages,
7708             "ZZ" may cause the shell prompt to appear on top of the file-write
7709             message.
7710 Solution:   Scroll the text up in the Vim page before swapping to the terminal
7711             page. (Michael Schroeder)
7712 Files:      src/os_unix.c
7714 Patch 6.1.195
7715 Problem:    The quickfix and preview windows always keep their height, while
7716             other windows can't fix their height.
7717 Solution:   Add the 'winfixheight' option, so that a fixed height can be
7718             specified for any window.  Also fix that the wildmenu may resize a
7719             one-line window to a two-line window if 'ls' is zero.
7720 Files:      runtime/doc/options.txt, runtime/optwin.vim, src/ex_cmds.c,
7721             src/ex_getln.c, src/globals.h, src/option.c, src/quickfix.c,
7722             src/screen.c, src/structs.h, src/window.c
7724 Patch 6.1.196  (depends on 6.1.084)
7725 Problem:    On Mac OS X 10.2 generating osdef.h fails.
7726 Solution:   Add -no-cpp-precomp to avoid using precompiled header files, which
7727             disables printing the search path. (Ben Fowler)
7728 Files:      src/auto/configure, src/configure.in
7730 Patch 6.1.197
7731 Problem:    ":help <C-V><C-\><C-V><C-N>" (resulting in <1c><0e>) gives an
7732             error message. (Servatius Brandt)
7733 Solution:   Double the backslash in "CTRL-\".
7734 Files:      src/ex_cmds.c
7736 Patch 6.1.198 (extra) (depends on 6.1.076)
7737 Problem:    Mac OS X: Dialogues don't work.
7738 Solution:   Fix a crashing problem for some GUI dialogues.  Fix a problem when
7739             saving to a new file from the GUI. (Peter Cucka)
7740 Files:      src/feature.h, src/gui_mac.c
7742 Patch 6.1.199
7743 Problem:    'guifontwide' doesn't work on Win32.
7744 Solution:   Output each wide character separately. (Michael Geddes)
7745 Files:      src/gui.c
7747 Patch 6.1.200
7748 Problem:    ":syn sync fromstart" is not skipped after ":if 0".  This can make
7749             syntax highlighting very slow.
7750 Solution:   Check "eap->skip" appropriately. (Rob West)
7751 Files:      src/syntax.c
7753 Patch 6.1.201 (depends on 6.1.192)
7754 Problem:    Warning for illegal pointer combination. (Zoltan Arpadffy)
7755 Solution:   Add a typecast.
7756 Files:      src/diff.c
7758 Patch 6.1.202  (extra)(depends on 6.1.148)
7759 Problem:    Win32: filewritable() doesn't work properly on directories.
7760 Solution:   fix filewritable(). (Mike Williams)
7761 Files:      src/os_win32.c
7763 Patch 6.1.203
7764 Problem:    ":%s/~//" causes a crash after ":%s/x//". (Gary Holloway)
7765 Solution:   Avoid reading past the end of a line when "~" is empty.
7766 Files:      src/regexp.c
7768 Patch 6.1.204 (depends on 6.1.129)
7769 Problem:    Warning for an illegal pointer on Solaris.
7770 Solution:   Add a typecast. (Derek Wyatt)
7771 Files:      src/misc2.c
7773 Patch 6.1.205
7774 Problem:    The gzip plugin changes the alternate file when editing a
7775             compressed file. (Oliver Fuchs)
7776 Solution:   Temporarily remove the 'a' and 'A' flags from 'cpo'.
7777 Files:      runtime/plugin/gzip.vim
7779 Patch 6.1.206
7780 Problem:    The script generated with ":mksession" doesn't work properly when
7781             some commands are mapped.
7782 Solution:   Use ":normal!" instead of ":normal".  And use ":wincmd" where
7783             possible. (Muraoka Taro)
7784 Files:      src/ex_docmd.c, src/fold.c
7786 Patch 6.1.207
7787 Problem:    Indenting a Java file hangs below a line with a comment after a
7788             command.
7789 Solution:   Break out of a loop. (Andre Pang)
7790             Also line up } with matching {.
7791 Files:      runtime/indent/java.vim
7793 Patch 6.1.208
7794 Problem:    Can't use the buffer number from the Python interface.
7795 Solution:   Add buffer.number. (Michal Vitecek)
7796 Files:      src/if_python.c
7798 Patch 6.1.209
7799 Problem:    Printing doesn't work on Mac OS classic.
7800 Solution:   Use a ":" for path separator when opening the resource file. (Axel
7801             Kielhorn)
7802 Files:      src/ex_cmds2.c
7804 Patch 6.1.210
7805 Problem:    When there is an iconv() conversion error when reading a file
7806             there can be an error the next time iconv() is used.
7807 Solution:   Reset the state of the iconv() descriptor. (Yasuhiro Matsumoto)
7808 Files:      src/fileio.c
7810 Patch 6.1.211
7811 Problem:    The message "use ! to override" is confusing.
7812 Solution:   Make it "add ! to override".
7813 Files:      src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
7814             src/globals.h
7816 Patch 6.1.212
7817 Problem:    When Vim was started with "-R" ":new" creates a buffer
7818             'noreadonly' while ":enew" has 'readonly' set. (Preben Guldberg)
7819 Solution:   Don't set 'readonly in a new empty buffer for ":enew".
7820 Files:      src/ex_docmd.c
7822 Patch 6.1.213
7823 Problem:    Using CTRL-W H may cause a big gap to appear below the last
7824             window. (Aric Blumer)
7825 Solution:   Don't set the window height when there is a vertical split.
7826             (Yasuhiro Matsumoto)
7827 Files:      src/window.c
7829 Patch 6.1.214
7830 Problem:    When installing Vim and the runtime files were checked out from
7831             CVS the CVS directories will also be installed.
7832 Solution:   Avoid installing the CVS dirs and their contents.
7833 Files:      src/Makefile
7835 Patch 6.1.215
7836 Problem:    Win32: ":pwd" uses backslashes even when 'shellslash' is set.
7837             (Xiangjiang Ma)
7838 Solution:   Adjust backslashes before printing the message.
7839 Files:      src/ex_docmd.c
7841 Patch 6.1.216
7842 Problem:    When dynamically loading the iconv library, the error codes may be
7843             confused.
7844 Solution:   Use specific error codes for iconv and redefine them for dynamic
7845             loading. (Yasuhiro Matsumoto)
7846 Files:      src/fileio.c, src/mbyte.c, src/vim.h
7848 Patch 6.1.217
7849 Problem:    When sourcing the same Vim script using a different name (symbolic
7850             link or MS-Windows 8.3 name) it is listed twice with
7851             ":scriptnames".  (Tony Mechelynck)
7852 Solution:   Turn the script name into a full path before using it.  On Unix
7853             compare inode/device numbers.
7854 Files:      src/ex_cmds2.c
7856 Patch 6.1.218
7857 Problem:    No error message for using the function argument "5+".  (Servatius
7858             Brandt)
7859 Solution:   Give an error message if a function or variable is expected but is
7860             not found.
7861 Files:      src/eval.c
7863 Patch 6.1.219
7864 Problem:    When using ":amenu :b 1<CR>" with a Visual selection and
7865             'insertmode' is set, Vim does not return to Insert mode. (Mickael
7866             Marchand)
7867 Solution:   Add the command CTRL-\ CTRL-G that goes to Insert mode if
7868             'insertmode' is set and to Normal mode otherwise.  Append this to
7869             menus defined with ":amenu".
7870 Files:      src/edit.c, src/ex_getln.c, src/normal.c
7872 Patch 6.1.220
7873 Problem:    When using a BufReadPost autocommand that changes the line count,
7874             e.g., "$-1join", reloading a file that was changed outside Vim
7875             does not work properly. (Alan G Isaac)
7876 Solution:   Make the buffer empty before reading the new version of the file.
7877             Save the lines in a dummy buffer, so that they can be put back
7878             when reading the file fails.
7879 Files:      src/buffer.c, src/ex_cmds.c, src/fileio.c, src/globals.h,
7880             src/proto/buffer.pro
7882 Patch 6.1.221
7883 Problem:    Changing case may not work properly, depending on the current
7884             locale.
7885 Solution:   Add the 'casemap' option to let the user chose how changing case
7886             is to be done.
7887             Also fix lowering case when an UTF-8 character doesn't keep the
7888             same byte length.
7889 Files:      runtime/doc/options.txt, src/ascii.h, src/auto/configure,
7890             src/buffer.c, src/charset.c, src/config.h.in, src/configure.in,
7891             src/diff.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
7892             src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/gui_amiga.c
7893             src/gui_mac.c, src/gui_photon.c, src/gui_w48.c, src/gui_beos.cc,
7894             src/macros.h, src/main.c, src/mbyte.c, src/menu.c, src/message.c,
7895             src/misc1.c, src/misc2.c, src/option.c, src/os_msdos.c,
7896             src/os_mswin.c, src/proto/charset.pro, src/regexp.c, src/option.h,
7897             src/syntax.c
7899 Patch 6.1.222 (depends on 6.1.219)
7900 Problem:    Patch 6.1.219 was incomplete.
7901 Solution:   Add the changes for ":amenu".
7902 Files:      src/menu.c
7904 Patch 6.1.223 (extra)
7905 Problem:    Win32: When IME is activated 'iminsert' is set, but it might never
7906             be reset when IME is disabled. (Muraoka Taro)
7907             All systems: 'iminsert' is set to 2 when leaving Insert mode, even
7908             when langmap is being used. (Peter Valach)
7909 Solution:   Don't set "b_p_iminsert" in _OnImeNotify(). (Muraoka Taro)
7910             Don't store the status of the input method in 'iminsert' when
7911             'iminsert' is one.  Also for editing the command line and for
7912             arguments to Normal mode commands.
7913 Files:      src/edit.c, src/ex_getln.c, src/gui_w32.c, src/normal.c
7915 Patch 6.1.224
7916 Problem:    "expand('$VAR')" returns an empty string when the expanded $VAR
7917             is not an existing file. (Aric Blumer)
7918 Solution:   Included non-existing files, as documented.
7919 Files:      src/eval.c
7921 Patch 6.1.225
7922 Problem:    Using <C-O><C-^> in Insert mode has a delay when starting "vim -u
7923             NONE" and ":set nocp hidden". (Emmanuel)  do_ecmd() uses
7924             fileinfo(), the redraw is done after a delay to give the user time
7925             to read the message.
7926 Solution:   Put the message from fileio() in "keep_msg", so that the redraw is
7927             done before the delay (still needed to avoid the mode message
7928             overwrites the fileinfo() message).
7929 Files:      src/buffer.c
7931 Patch 6.1.226
7932 Problem:    Using ":debug" with a ":normal" command may cause a hang.  (Colin
7933             Keith)
7934 Solution:   Save the typeahead buffer when obtaining a debug command.
7935 Files:      src/ex_cmds2.c, src/getchar.c, src/proto/getchar.pro
7937 Patch 6.1.227
7938 Problem:    It is possible to use a variable name "asdf:asdf" and ":let j:asdf
7939             = 5" does not give an error message. (Mikolaj Machowski)
7940 Solution:   Check for a ":" inside the variable name.
7941 Files:      src/eval.c
7943 Patch 6.1.228 (extra)
7944 Problem:    Win32: The special output function for Hangul is used too often,
7945             causing special handling for other situations to be skipped.
7946             bInComposition is always FALSE, causing ImeGetTempComposition()
7947             always to return NULL.
7948 Solution:   Remove HanExtTextOut().  Delete the dead code around
7949             bInComposition and ImeGetTempComposition().
7950 Files:      src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7952 Patch 6.1.229
7953 Problem:    Win32: Conversion to/from often used codepages requires the iconv
7954             library, which is not always available.
7955 Solution:   Use standard MS-Windows functions for the conversion when
7956             possible. (mostly by Glenn Maynard)
7957             Also fixes missing declaration for patch 6.1.220.
7958 Files:      src/fileio.c
7960 Patch 6.1.230 (extra)
7961 Problem:    Win16: building doesn't work.
7962 Solution:   Exclude the XBUTTON handling. (Vince Negri)
7963 Files:      src/gui_w48.c
7965 Patch 6.1.231
7966 Problem:    Double clicking with the mouse to select a word does not work for
7967             multi-byte characters.
7968 Solution:   Use vim_iswordc() instead of vim_isIDc().  This means 'iskeyword'
7969             is used instead of 'isident'.  Also fix that mixing ASCII with
7970             multi-byte word characters doesn't work, the mouse class for
7971             punctuation and word characters was mixed up.
7972 Files:      src/normal.c
7974 Patch 6.1.232 (depends on 6.1.226)
7975 Problem:    Using ex_normal_busy while it might not be available. (Axel
7976             Kielhorn)
7977 Solution:   Only use ex_normal_busy when FEAT_EX_EXTRA is defined.
7978 Files:      src/ex_cmds2.c
7980 Patch 6.1.233
7981 Problem:    ":help expr-||" does not work.
7982 Solution:   Don't use the '|' as a command separator
7983 Files:      src/ex_cmds.c
7985 Patch 6.1.234 (depends on 6.1.217)
7986 Problem:    Get a warning for using a negative value for st_dev.
7987 Solution:   Don't assign a negative value to st_dev.
7988 Files:      src/ex_cmds2.c
7990 Patch 6.1.235 (depends on 6.1.223)
7991 Problem:    'iminsert' is changed from 1 to 2 when leaving Insert mode. (Peter
7992             Valach)
7993 Solution:   Check "State" before resetting it to NORMAL.
7994 Files:      src/edit.c
7996 Patch 6.1.236
7997 Problem:    Memory leaks when appending lines for ":diffget" or ":diffput" and
7998             when reloading a changed buffer.
7999 Solution:   Free a line after calling ml_append().
8000 Files:      src/diff.c, src/fileio.c
8002 Patch 6.1.237
8003 Problem:    Putting in Visual block mode does not work correctly when "$" was
8004             used or when the first line is short.  (Christian Michon)
8005 Solution:   First delete the selected text and then put the new text.  Save
8006             and restore registers as necessary.
8007 Files:      src/globals.h, src/normal.c, src/ops.c, src/proto/ops.pro,
8008             src/vim.h
8010 Patch 6.1.238 (extra)
8011 Problem:    Win32: The "icon=" argument for the ":menu" command does not
8012             search for the bitmap file.
8013 Solution:   Expand environment variables and search for the bitmap file.
8014             (Vince Negri)
8015             Make it consistent, use the same mechanism for X11 and GTK.
8016 Files:      src/gui.c src/gui_gtk.c, src/gui_w32.c, src/gui_x11.c,
8017             src/proto/gui.pro
8019 Patch 6.1.239
8020 Problem:    Giving an error for missing :endif or :endwhile when being
8021             interrupted.
8022 Solution:   Don't give these messages when interrupted.
8023 Files:      src/ex_docmd.c, src/os_unix.c
8025 Patch 6.1.240 (extra)
8026 Problem:    Win32 with BCC 5: CPU may be defined in the environment, which
8027             causes a wrong argument for the compiler. (Walter Briscoe)
8028 Solution:   Use CPUNR instead of CPU.
8029 Files:      src/Make_bc5.mak
8031 Patch 6.1.241
8032 Problem:    Something goes wrong when drawing or undrawing the cursor.
8033 Solution:   Remember when the cursor invalid in a better way.
8034 Files:      src/gui.c
8036 Patch 6.1.242
8037 Problem:    When pasting a large number of lines on the command line it is not
8038             possible to interrupt. (Jean Jordaan)
8039 Solution:   Check for an interrupt after each pasted line.
8040 Files:      src/ops.c
8042 Patch 6.1.243 (extra)
8043 Problem:    Win32: When the OLE version is started and wasn't registered, a
8044             message pops up to suggest registering, even when this isn't
8045             possible (when the registry is not writable).
8046 Solution:   Check if registering is possible before asking whether it should
8047             be done. (Walter Briscoe)
8048             Also avoid restarting Vim after registering.
8049 Files:      src/if_ole.cpp
8051 Patch 6.1.244
8052 Problem:    Patch 6.1.237 was missing the diff for vim.h. (Igor Goldenberg)
8053 Solution:   Include it here.
8054 Files:      src/vim.h
8056 Patch 6.1.245
8057 Problem:    Comparing with ignored case does not work properly for Unicode
8058             with a locale where case folding an ASCII character results in a
8059             multi-byte character. (Glenn Maynard)
8060 Solution:   Handle ignore-case compare for Unicode differently.
8061 Files:      src/mbyte.c
8063 Patch 6.1.246
8064 Problem:    ":blast" goes to the first buffer if the last one is unlisted.
8065             (Andrew Stryker)
8066 Solution:   From the last buffer search backwards for the first listed buffer
8067             instead of forwards.
8068 Files:      src/ex_docmd.c
8070 Patch 6.1.247
8071 Problem:    ACL support doesn't always work properly.
8072 Solution:   Add a configure argument to disable ACL "--disable-acl". (Thierry
8073             Vignaud)
8074 Files:      src/auto/configure, src/configure.in
8076 Patch 6.1.248
8077 Problem:    Typing 'q' at the more-prompt for ":let" does not quit the
8078             listing. (Hari Krishna Dara)
8079 Solution:   Quit the listing when got_int is set.
8080 Files:      src/eval.c
8082 Patch 6.1.249
8083 Problem:    Can't expand a path on the command line if it includes a "|" as a
8084             trail byte of a multi-byte character.
8085 Solution:   Check for multi-byte characters. (Yasuhiro Matsumoto)
8086 Files:      src/ex_docmd.c
8088 Patch 6.1.250
8089 Problem:    When changing the value of 'lines' inside the expression set with
8090             'diffexpr' Vim might crash. (Dave Fishburn)
8091 Solution:   Don't allow changing the screen size while updating the screen.
8092 Files:      src/globals.h, src/option.c, src/screen.c
8094 Patch 6.1.251
8095 Problem:    Can't use completion for ":lcd" and ":lchdir" like ":cd".
8096 Solution:   Expand directory names for these commands. (Servatius Brandt)
8097 Files:      src/ex_docmd.c
8099 Patch 6.1.252
8100 Problem:    "vi}" does not include a line break when the "}" is at the start
8101             of a following line. (Kamil Burzynski)
8102 Solution:   Include the line break.
8103 Files:      src/search.c
8105 Patch 6.1.253 (extra)
8106 Problem:    Win32 with Cygwin: Changes the path of arguments in a wrong way.
8107             (Xiangjiang Ma)
8108 Solution:   Don't use cygwin_conv_to_posix_path() for the Win32 version.
8109             Update the Cygwin makefile to support more features.  (Dan Sharp)
8110 Files:      src/Make_cyg.mak, src/if_ole.cpp, src/main.c
8112 Patch 6.1.254
8113 Problem:    exists("foo{bar}") does not work.  ':unlet v{"a"}r' does not work.
8114             ":let v{a}r1 v{a}r2" does not work. ":func F{(1)}" does not work.
8115             ":delfunc F{" does not give an error message.  ':delfunc F{"F"}'
8116             does not work.
8117 Solution:   Support magic braces for the exists() argument. (Vince Negri)
8118             Check for trailing comments explicitly for ":unlet".  Add support
8119             for magic braces in further arguments of ":let".  Look for a
8120             parenthesis only after the function name.  (Servatius Brandt)
8121             Also expand magic braces for "exists('*expr')".  Give an error
8122             message for an invalid ":delfunc" argument.  Allow quotes in the
8123             ":delfunc" argument.
8124 Files:      src/eval.c, src/ex_cmds.h, src/ex_docmd.c
8126 Patch 6.1.255 (depends on 6.1.254)
8127 Problem:    Crash when loading menu.vim a second time. (Christian Robinson)
8128             ":unlet garbage foo" tries unletting "foo" after an error message.
8129             (Servatius Brandt)
8130             Very long function arguments cause very long messages when
8131             'verbose' is 14 or higher.
8132 Solution:   Avoid reading from uninitialized memory.
8133             Break out of a loop after an invalid argument for ":unlet".
8134             Truncate long function arguments to 80 characters.
8135 Files:      src/eval.c
8137 Patch 6.1.256 (depends on 6.1.255)
8138 Problem:    Defining a function after ":if 0" could still cause an error
8139             message for an existing function.
8140             Leaking memory when there are trailing characters for ":delfunc".
8141 Solution:   Check the "skip" flag.  Free the memory. (Servatius Brandt)
8142 Files:      src/eval.c
8144 Patch 6.1.257
8145 Problem:    ":cwindow" always sets the previous window to the last but one
8146             window.  (Benji Fisher)
8147 Solution:   Set the previous window properly.
8148 Files:      src/globals.c, src/quickfix.c, src/window.c
8150 Patch 6.1.258
8151 Problem:    Buffers menu doesn't work properly for multibyte buffer names.
8152 Solution:   Use a pattern to get the left and right part of the name.
8153             (Yasuhiro Matsumoto)
8154 Files:      runtime/menu.vim
8156 Patch 6.1.259 (extra)
8157 Problem:    Mac: with 'patchmode' is used filenames are truncated.
8158 Solution:   Increase the BASENAMELEN for Mac OS X. (Ed Ralston)
8159 Files:      src/os_mac.h
8161 Patch 6.1.260 (depends on 6.1.104)
8162 Problem:    GCC 3.2 still seems to have an optimizer problem. (Zvi Har'El)
8163 Solution:   Use the same configure check as used for GCC 3.1.
8164 Files:      src/auto/configure, src/configure.in
8166 Patch 6.1.261
8167 Problem:    When deleting a line in a buffer which is not the current buffer,
8168             using the Perl interface Delete(), the cursor in the current
8169             window may move. (Chris Houser)
8170 Solution:   Don't adjust the cursor position when changing another buffer.
8171 Files:      src/if_perl.xs
8173 Patch 6.1.262
8174 Problem:    When jumping over folds with "z[", "zj" and "zk" the previous
8175             position is not remembered. (Hari Krishna Dara)
8176 Solution:   Set the previous context mark before jumping.
8177 Files:      src/fold.c
8179 Patch 6.1.263
8180 Problem:    When typing a multi-byte character that triggers an abbreviation
8181             it is not inserted properly.
8182 Solution:   Handle adding the typed multi-byte character. (Yasuhiro Matsumoto)
8183 Files:      src/getchar.c
8185 Patch 6.1.264 (depends on patch 6.1.254)
8186 Problem:    exists() does not work for built-in functions. (Steve Wall)
8187 Solution:   Don't check for the function name to start with a capital.
8188 Files:      src/eval.c
8190 Patch 6.1.265
8191 Problem:    libcall() can be used in 'foldexpr' to call any system function.
8192             rename(), delete() and remote_send() can also be used in
8193             'foldexpr'.  These are security problems. (Georgi Guninski)
8194 Solution:   Don't allow using libcall(), rename(), delete(), remote_send() and
8195             similar functions in the sandbox.
8196 Files:      src/eval.c
8198 Patch 6.1.266 (depends on 6.1.265)
8199 Problem:    Win32: compile error in eval.c. (Bill McCarthy)
8200 Solution:   Move a variable declaration.
8201 Files:      src/eval.c
8203 Patch 6.1.267
8204 Problem:    Using "p" to paste into a Visual selected area may cause a crash.
8205 Solution:   Allocate enough memory for saving the register contents. (Muraoka
8206             Taro)
8207 Files:      src/ops.c
8209 Patch 6.1.268
8210 Problem:    When triggering an abbreviation with a multi-byte character, this
8211             character is not correctly inserted after expanding the
8212             abbreviation. (Taro Muraoka)
8213 Solution:   Add ABBR_OFF to all characters above 0xff.
8214 Files:      src/edit.c, src/ex_getln.c, src/getchar.c
8216 Patch 6.1.269
8217 Problem:    After using input() text written with ":redir" gets extra indent.
8218             (David Fishburn)
8219 Solution:   Restore msg_col after using input().
8220 Files:      src/ex_getln.c
8222 Patch 6.1.270 (depends on 6.1.260)
8223 Problem:    GCC 3.2.1 still seems to have an optimizer problem.
8224 Solution:   Use the same configure check as used for GCC 3.1.
8225 Files:      src/auto/configure, src/configure.in
8227 Patch 6.1.271
8228 Problem:    When compiling without the +syntax feature there are errors.
8229 Solution:   Don't use some code for syntax highlighting. (Roger Cornelius)
8230             Make test 45 work without syntax highlighting.
8231             Also fix an error in a pattern matching: "\%(" was not supported.
8232 Files:      src/ex_cmds2.c, src/regexp.c, src/testdir/test45.in
8234 Patch 6.1.272
8235 Problem:    After using ":set define<" a crash may happen. (Christian Robinson)
8236 Solution:   Make a copy of the option value in allocated memory.
8237 Files:      src/option.c
8239 Patch 6.1.273
8240 Problem:    When the cursor doesn't blink, redrawing an exposed area may hide
8241             the cursor.
8242 Solution:   Always draw the cursor, also when it didn't move. (Muraoka Taro)
8243 Files:      src/gui.c
8245 Patch 6.1.274 (depends on 6.1.210)
8246 Problem:    Resetting the iconv() state after each error is wrong for an
8247             incomplete sequence.
8248 Solution:   Don't reset the iconv() state.
8249 Files:      src/fileio.c
8251 Patch 6.1.275
8252 Problem:    When using "v" in a startup script, get warning message that
8253             terminal cannot highlight. (Charles Campbell)
8254 Solution:   Only give the message after the terminal has been initialized.
8255 Files:      src/normal.c
8257 Patch 6.1.276
8258 Problem:    "gvim --remote file" doesn't prompt for an encryption key.
8259 Solution:   The further characters the client sends to the server are used.
8260             Added inputsave() and inputrestore() to allow prompting the
8261             user directly and not using typeahead.
8262             Also fix possible memory leak for ":normal".
8263 Files:      src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c,
8264             src/main.c, src/proto/getchar.pro, src/proto/ui.pro,
8265             src/runtime/doc/eval.txt, src/structs.h, src/ui.c, src/vim.h
8267 Patch 6.1.277 (depends on 6.1.276)
8268 Problem:    Compilation error when building with small features.
8269 Solution:   Define trash_input_buf() when needed. (Kelvin Lee)
8270 Files:      src/ui.c
8272 Patch 6.1.278
8273 Problem:    When using signs the line number of a closed fold doesn't line up
8274             with the other line numbers. (Kamil Burzynski)
8275 Solution:   Insert two spaces for the sign column.
8276 Files:      src/screen.c
8278 Patch 6.1.279
8279 Problem:    The prototype for smsg() and smsg_attr() do not match the function
8280             definition.  This may cause trouble for some compilers. (Nix)
8281 Solution:   Use va_list for systems that have stdarg.h.  Use "int" instead of
8282             "void" for the return type.
8283 Files:      src/auto/configure, src/config.h.in, src/configure.in,
8284             src/proto.h, src/message.c
8286 Patch 6.1.280
8287 Problem:    It's possible to use an argument "firstline" or "lastline" for a
8288             function but using "a:firstline" or "a:lastline" in the function
8289             won't work.  (Benji Fisher)
8290 Solution:   Give an error message for these arguments.
8291             Also avoid that the following function body causes a whole row of
8292             errors, skip over it after an error in the first line.
8293 Files:      src/eval.c
8295 Patch 6.1.281
8296 Problem:    In Insert mode CTRL-X CTRL-G leaves the cursor after the ruler.
8297 Solution:   Set the cursor position before waiting for the argument of CTRL-G.
8298             (Yasuhiro Matsumoto)
8299 Files:      src/edit.c
8301 Patch 6.1.282
8302 Problem:    Elvis uses "se" in a modeline, Vim doesn't recognize this.
8303 Solution:   Also accept "se " where "set " is accepted in a modeline.
8304             (Yasuhiro Matsumoto)
8305 Files:      src/buffer.c
8307 Patch 6.1.283
8308 Problem:    For ":sign" the icon file name cannot contain a space.
8309 Solution:   Handle backslashes in the file name.  (Yasuhiro Matsumoto)
8310 Files:      src/ex_cmds.c
8312 Patch 6.1.284
8313 Problem:    On Solaris there is a warning for "struct utimbuf".
8314 Solution:   Move including "utime.h" to outside the function. (Derek Wyatt)
8315 Files:      src/fileio.c
8317 Patch 6.1.285
8318 Problem:    Can't wipe out a buffer with 'bufhide' option.
8319 Solution:   Add "wipe" value to 'bufhide'. (Yegappan Lakshmanan)
8320 Files:      runtime/doc/options.txt, src/buffer.c, src/option.c,
8321             src/quickfix.c
8323 Patch 6.1.286
8324 Problem:    'showbreak' cannot contain multi-byte characters.
8325 Solution:   Allow using all printable characters for 'showbreak'.
8326 Files:      src/charset.c, src/move.c, src/option.c
8328 Patch 6.1.287 (depends on 6.1.285)
8329 Problem:    Effect of "delete" and "wipe" in 'bufhide' were mixed up.
8330 Solution:   Wipe out when wiping out is asked for.
8331 Files:      src/buffer.c
8333 Patch 6.1.288
8334 Problem:    ":silent function F" hangs. (Hari Krishna Dara)
8335 Solution:   Don't use msg_col, it is not incremented when using ":silent".
8336             Also made the function output look a bit better.  Don't translate
8337             "function".
8338 Files:      src/eval.c
8340 Patch 6.1.289 (depends on 6.1.278)
8341 Problem:    Compiler warning for pointer. (Axel Kielhorn)
8342 Solution:   Add a typecast for "  ".
8343 Files:      src/screen.c
8345 Patch 6.1.290 (extra)
8346 Problem:    Truncating long text for message box may break multi-byte
8347             character.
8348 Solution:   Adjust to start of multi-byte character. (Yasuhiro Matsumoto)
8349 Files:      src/os_mswin.c
8351 Patch 6.1.291 (extra)
8352 Problem:    Win32: CTRL-@ doesn't work.  Don't even get a message for it.
8353 Solution:   Recognize the keycode for CTRL-@. (Yasuhiro Matsumoto)
8354 Files:      src/gui_w48.c
8356 Patch 6.1.292 (extra, depends on 6.1.253)
8357 Problem:    Win32: Can't compile with new MingW compiler.
8358             Borland 5 makefile doesn't generate pathdef.c.
8359 Solution:   Remove -wwide-multiply argument. (Rene de Zwart)
8360             Various fixes for other problems in Win32 makefiles. (Dan Sharp)
8361 Files:      src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
8362             src/Make_mvc.mak
8364 Patch 6.1.293
8365 Problem:    byte2line() returns a wrong result for some values.
8366 Solution:   Change ">=" to ">" in ml_find_line_or_offset(). (Bradford C Smith)
8367             Add one to the line number when at the end of a block.
8368 Files:      src/memline.c
8370 Patch 6.1.294
8371 Problem:    Can't include a multi-byte character in a string by its hex value.
8372             (Benji Fisher)
8373 Solution:   Add "\u....": a character specified with up to four hex numbers
8374             and stored according to the value of 'encoding'.
8375 Files:      src/eval.c
8377 Patch 6.1.295 (extra)
8378 Problem:    Processing the cs.po file generates an error. (Rahul Agrawal)
8379 Solution:   Fix the printf format characters in the translation.
8380 Files:      src/po/cs.po
8382 Patch 6.1.296
8383 Problem:    Win32: When cancelling the font dialog 'guifont' remains set to
8384             "*".
8385 Solution:   Restore the old value of 'guifont' (Yasuhiro Matsumoto)
8386 Files:      src/option.c
8388 Patch 6.1.297
8389 Problem:    "make test" fails in test6 in an UTF-8 environment. (Benji Fisher)
8390 Solution:   Before executing the BufReadPost autocommands save the current
8391             fileencoding, so that the file isn't marked changed.
8392 Files:      src/fileio.c
8394 Patch 6.1.298
8395 Problem:    When using signs and the first line of a closed fold has a sign
8396             it can be redrawn as if the fold was open.  (Kamil Burzynski)
8397 Solution:   Don't redraw a sign inside a closed fold.
8398 Files:      src/screen.c
8400 Patch 6.1.299
8401 Problem:    ":edit +set\ ro file" doesn't work.
8402 Solution:   Halve the number of backslashes in the "+cmd" argument.
8403 Files:      src/ex_docmd.c
8405 Patch 6.1.300 (extra)
8406 Problem:    Handling of ETO_IGNORELANGUAGE is confusing.
8407 Solution:   Clean up the handling of ETO_IGNORELANGUAGE. (Glenn Maynard)
8408 Files:      src/gui_w32.c
8410 Patch 6.1.301 (extra)
8411 Problem:    French translation of file-save dialog doesn't show file name.
8412 Solution:   Insert a star in the printf string. (Francois Terrot)
8413 Files:      src/po/fr.po
8415 Patch 6.1.302
8416 Problem:    Counting lines of the Visual area is incorrect for closed folds.
8417             (Mikolaj Machowski)
8418 Solution:   Correct the start and end for the closed fold.
8419 Files:      src/normal.c
8421 Patch 6.1.303 (extra)
8422 Problem:    The Top/Bottom/All text does not always fit in the ruler when
8423             translated to Japanese.  Problem with a character being wider when
8424             in a bold font.
8425 Solution:   Use ETO_PDY to specify the width of each character. (Yasuhiro
8426             Matsumoto)
8427 Files:      src/gui_w32.c
8429 Patch 6.1.304 (extra, depends on 6.1.292)
8430 Problem:    Win32: Postscript is always enabled in the MingW Makefile.
8431             Pathdef.c isn't generated properly with Make_bc5.mak. (Yasuhiro
8432             Matsumoto)
8433 Solution:   Change an ifdef to an ifeq. (Madoka Machitani)
8434             Use the Borland make redirection to generate pathdef.c. (Maurice
8435             Barnum)
8436 Files:      src/Make_bc5.mak, src/Make_ming.mak
8438 Patch 6.1.305
8439 Problem:    When 'verbose' is 14 or higher, a function call may cause reading
8440             uninitialized data. (Walter Briscoe)
8441 Solution:   Check for end-of-string in trunc_string().
8442 Files:      src/message.c
8444 Patch 6.1.306
8445 Problem:    The AIX VisualAge cc compiler doesn't define __STDC__.
8446 Solution:   Use __EXTENDED__ like __STDC__. (Jess Thrysoee)
8447 Files:      src/os_unix.h
8449 Patch 6.1.307
8450 Problem:    When a double-byte character has an illegal tail byte the display
8451             is messed up. (Yasuhiro Matsumoto)
8452 Solution:   Draw "XX" instead of the wrong character.
8453 Files:      src/screen.c
8455 Patch 6.1.308
8456 Problem:    Can't reset the Visual mode returned by visualmode().
8457 Solution:   Use an optional argument to visualmode(). (Charles Campbell)
8458 Files:      runtime/doc/eval.txt, src/eval.c, src/normal.c,
8459             src/structs.h
8461 Patch 6.1.309
8462 Problem:    The tutor doesn't select German if the locale name is
8463             "German_Germany.1252". (Joachim Hofmann)
8464 Solution:   Check for "German" in the locale name.  Also check for
8465             ".ge".  And include the German and Greek tutors.
8466 Files:      runtime/tutor/tutor.de, runtime/tutor/tutor.vim,
8467             runtime/tutor/tutor.gr, runtime/tutor/tutor.gr.cp737
8469 Patch 6.1.310 (depends on 6.1.307)
8470 Problem:    All double-byte characters are displayed as "XX".
8471 Solution:   Use ">= 32" instead of "< 32".  (Yasuhiro Matsumoto)
8472 Files:      src/screen.c
8474 Patch 6.1.311 (extra)
8475 Problem:    VMS: path in window title doesn't include necessary separator.
8476             file version doesn't always work properly with Unix.
8477             Crashes because of memory overwrite in GUI.
8478             Didn't always handle files with lowercase and correct path.
8479 Solution:   Fix the problems.  Remove unnecessary file name translations.
8480             (Zoltan Arpadffy)
8481 Files:      src/buffer.c, src/ex_cmds2.c, src/fileio.c, src/memline.c,
8482             src/misc1.c, src/misc2.c, src/os_unix.c, src/os_vms.c, src/tag.c
8484 Patch 6.1.312
8485 Problem:    When using ":silent" debugging is also done silently.
8486 Solution:   Disable silence while at the debug prompt.
8487 Files:      src/ex_cmds2.c
8489 Patch 6.1.313
8490 Problem:    When a ":drop fname" command is used and "fname" is open in
8491             another window, it is also opened in the current window.
8492 Solution:   Change to the window with "fname" instead.
8493             Don't redefine the argument list when dropping only one file.
8494 Files:      runtime/doc/windows.txt, src/ex_cmds2.c, src/ex_cmds.c,
8495             src/ex_docmd.c, src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro
8497 Patch 6.1.314 (depends on 6.1.126)
8498 Problem:    Missing backslash in "Generic Config file" syntax menu.
8499 Solution:   Insert the backslash. (Zak Beck)
8500 Files:      runtime/makemenu.vim, runtime/synmenu.vim
8502 Patch 6.1.315 (extra)
8503 Problem:    A very long hostname may lead to an unterminated string.  Failing
8504             to obtain a hostname may result in garbage.  (Walter Briscoe)
8505 Solution:   Add a NUL at the end of the hostname buffer.
8506 Files:      src/os_mac.c, src/os_msdos.c, src/os_unix.c, src/os_win16.c,
8507             src/os_win32.c
8509 Patch 6.1.316
8510 Problem:    When exiting with "wq" and there is a hidden buffer, after the
8511             "file changed" dialog there is a warning for a changed buffer.
8512             (Ajit Thakkar)
8513 Solution:   Do update the buffer timestamps when exiting.
8514 Files:      src/fileio.c
8516 Patch 6.1.317
8517 Problem:    Closing a window may cause some of the remaining windows to be
8518             positioned wrong if there is a mix of horizontal and vertical
8519             splits. (Stefan Ingi Valdimarsson)
8520 Solution:   Update the frame sizes before updating the window positions.
8521 Files:      src/window.c
8523 Patch 6.1.318
8524 Problem:    auto/pathdef.c can include wrong quotes when a compiler flag
8525             includes quotes.
8526 Solution:   Put a backslash before the quotes in compiler flags. (Shinra Aida)
8527 Files:      src/Makefile
8529 Patch 6.1.319 (depends on 6.1.276)
8530 Problem:    Using "--remote +cmd file" does not execute "cmd".
8531 Solution:   Call inputrestore() in the same command line as inputsave(),
8532             otherwise it will never get executed.
8533 Files:      src/main.c
8535 Patch 6.1.320 (depends on 6.1.313)
8536 Problem:    When a ":drop one\ file" command is used the file "one\ file" is
8537             opened, the backslash is not removed. (Taro Muraoka)
8538 Solution:   Handle backslashes correctly.  Always set the argument list to
8539             keep it simple.
8540 Files:      runtime/doc/windows.txt, src/ex_cmds.c
8542 Patch 6.1.321
8543 Problem:    When 'mouse' includes 'n' but not 'v', don't allow starting Visual
8544             mode with the mouse.
8545 Solution:   Don't use MOUSE_MAY_VIS when there is no 'v' in 'mouse'. (Flemming
8546             Madsen)
8547 Files:      src/normal.c
8549 Patch 6.1.322 (extra, depends on 6.1.315)
8550 Problem:    Win32: The host name is always "PC " plus the real host name.
8551 Solution:   Don't insert "PC " before the host name.
8552 Files:      src/os_win32.c
8554 Patch 6.1.323
8555 Problem:    ":registers" doesn't stop listing for a "q" at the more prompt.
8556             (Hari Krishna Dara)
8557 Solution:   Check for interrupt and got_int.
8558 Files:      src/ops.c, src/proto/ops.pro
8560 Patch 6.1.324
8561 Problem:    Crash when dragging a vertical separator when <LeftMouse> is
8562             remapped to jump to another window.
8563 Solution:   Pass the window pointer to the function doing the dragging instead
8564             of always using the current window. (Daniel Elstner)
8565             Also fix that starting a drag changes window focus.
8566 Files:      src/normal.c, src/proto/window.pro, src/ui.c, src/vim.h,
8567             src/window.c
8569 Patch 6.1.325
8570 Problem:    Shift-Tab is not automatically recognized in an xterm.
8571 Solution:   Add <Esc>[Z as the termcap code. (Andrew Pimlott)
8572 Files:      src/term.c
8574 Patch 6.1.326
8575 Problem:    Using a search pattern may read from uninitialized data (Yasuhiro
8576             Matsumoto)
8577 Solution:   Initialize pointers to NULL.
8578 Files:      src/regexp.c
8580 Patch 6.1.327
8581 Problem:    When opening the "mbyte.txt" help file the utf-8 characters are
8582             unreadable, because the fileencoding is forced to be latin1.
8583 Solution:   Check for utf-8 encoding first in help files. (Daniel Elstner)
8584 Files:      runtime/doc/mbyte.txt, src/fileio.c
8586 Patch 6.1.328
8587 Problem:    Prototype for enc_canon_search() is missing.
8588 Solution:   Add the prototype. (Walter Briscoe)
8589 Files:      src/mbyte.c
8591 Patch 6.1.329
8592 Problem:    When editing a file "a b c" replacing "%" in ":Cmd %" or ":next %"
8593             does not work properly.  (Hari Krishna Dara)
8594 Solution:   Always escape spaces when expanding "%".  Don't split argument for
8595             <f-args> in a user command when only one argument is used.
8596 Files:      src/ex_docmd.c
8598 Patch 6.1.330
8599 Problem:    GTK, Motif and Athena: Keypad keys produce the same code as
8600             non-keypad keys, making it impossible to map them separately.
8601 Solution:   Use different termcap codes for the keypad keys. (Neil Bird)
8602 Files:      src/gui_gtk_x11.c, src/gui_x11.c
8604 Patch 6.1.331
8605 Problem:    When translating the help files, "LOCAL ADDITIONS" no longer marks
8606             the spot where help files from plugins are to be listed.
8607 Solution:   Add a "local-additions" tag and use that to find the right spot.
8608 Files:      runtime/doc/help.txt, src/ex_cmds.c
8610 Patch 6.1.332 (extra)
8611 Problem:    Win32: Loading Perl dynamically doesn't work with Perl 5.8.
8612             Perl 5.8 also does not work with Cygwin and Ming.
8613 Solution:   Adjust the function calls. (Taro Muraoka)
8614             Adjust the cyg and ming makefiles. (Dan Sharp)
8615 Files:      src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
8616             src/if_perl.xs
8618 Patch 6.1.333 (extra)
8619 Problem:    Win32: Can't handle Unicode text on the clipboard.
8620             Can't pass NUL byte, it becomes a line break.  (Bruce DeVisser)
8621 Solution:   Support Unicode for the clipboard (Ron Aaron and Glenn Maynard)
8622             Also support copy/paste of NUL bytes.
8623 Files:      src/os_mswin.c, src/os_win16.c src/os_win32.c
8625 Patch 6.1.334 (extra, depends on 6.1.303)
8626 Problem:    Problem with drawing Hebrew characters.
8627 Solution:   Only use ETO_PDY for Windows NT and the like. (Yasuhiro Matsumoto)
8628 Files:      src/gui_w32.c
8630 Patch 6.1.335 (extra)
8631 Problem:    Failure of obtaining the cursor position and window size is
8632             ignored.
8633 Solution:   Remove a semicolon after an "if". (Walter Briscoe)
8634 Files:      src/gui_w32.c
8636 Patch 6.1.336 (extra)
8637 Problem:    Warning for use of function prototypes of smsg().
8638 Solution:   Define HAVE_STDARG_H. (Walter Briscoe)
8639 Files:      src/os_win32.h
8641 Patch 6.1.337
8642 Problem:    When using "finish" in debug mode in function B() for ":call
8643             A(B())" does not stop after B() is finished.
8644 Solution:   Increase debug_level while evaluating a function.
8645 Files:      src/ex_docmd.c
8647 Patch 6.1.338
8648 Problem:    When using a menu that checks out the current file from Insert
8649             mode, there is no warning for the changed file until exiting
8650             Insert mode.  (Srikanth Sankaran)
8651 Solution:   Add a check for need_check_timestamps in the Insert mode loop.
8652 Files:      src/edit.c
8654 Patch 6.1.339
8655 Problem:    Completion doesn't allow "g:" in ":let g:did_<Tab>". (Benji
8656             Fisher)
8657 Solution:   Return "g:var" for global variables when that is what is being
8658             expanded. (Flemming Madsen)
8659 Files:      src/eval.c
8661 Patch 6.1.340 (extra, depends on 6.1.332)
8662 Problem:    Win32: Can't compile the Perl interface with nmake.
8663 Solution:   Don't compare the version number as a string but as a number.
8664             (Juergen Kraemer)
8665 Files:      src/Make_mvc.mak
8667 Patch 6.1.341
8668 Problem:    In Insert mode with 'rightleft' set the cursor is drawn halfway a
8669             double-wide character.  For CTRL-R and CTRL-K in Insert mode the "
8670             or ? is not displayed.
8671 Solution:   Draw the cursor in the next character cell.  Display the " or ?
8672             over the right half of the double-wide character. (Yasuhiro
8673             Matsumoto)  Also fix that cancelling a digraph doesn't redraw
8674             a double-byte character correctly.
8675 Files:      src/edit.c, src/gui.c, src/mbyte.c
8677 Patch 6.1.342 (depends on 6.1.341)
8678 Problem:    With 'rightleft' set typing "c" on a double-wide character causes
8679             the cursor to be displayed one cell to the left.
8680 Solution:   Draw the cursor in the next character cell.  (Yasuhiro Matsumoto)
8681 Files:      src/gui.c
8683 Patch 6.1.343 (depends on 6.1.342)
8684 Problem:    Cannot compile with the +multi_byte feature but without +rightleft.
8685             Cannot compile without the GUI.
8686 Solution:   Fix the #ifdefs.  (partly by Nam SungHyun)
8687 Files:      src/gui.c, src/mbyte.c, src/ui.c
8689 Patch 6.1.344
8690 Problem:    When using ":silent filetype" the output is still put in the
8691             message history. (Hari Krishna Dara)
8692 Solution:   Don't add messages in the history when ":silent" is used.
8693 Files:      src/message.c
8695 Patch 6.1.345 (extra)
8696 Problem:    Win32: 'imdisable' doesn't work.
8697 Solution:   Make 'imdisable' work. (Yasuhiro Matsumoto)
8698 Files:      src/gui_w32.c
8700 Patch 6.1.346
8701 Problem:    The scroll wheel can only scroll the current window.
8702 Solution:   Make the scroll wheel scroll the window that the mouse points to.
8703             (Daniel Elstner)
8704 Files:      src/edit.c, src/gui.c, src/normal.c, src/term.c
8706 Patch 6.1.347
8707 Problem:    When using cscope to list matching tags, the listed number is
8708             sometimes not equal to what cscope uses. (Vihren Milev)
8709 Solution:   For cscope tags use only one table, don't give tags in the current
8710             file a higher priority.
8711 Files:      src/tag.c
8713 Patch 6.1.348
8714 Problem:    Wildmode with wildmenu: ":set wildmode=list,full", ":colorscheme
8715             <tab>" results in "zellner" instead of the first entry. (Anand
8716             Hariharan)
8717 Solution:   Don't call ExpandOne() from globpath(). (Flemming Madsen)
8718 Files:      src/ex_getln.c
8720 Patch 6.1.349
8721 Problem:    "vim --serverlist" when no server was ever started gives an error
8722             message without "\n".
8723             "vim --serverlist" doesn't exit when the X server can't be
8724             contacted, it starts Vim unexpectedly. (Ricardo Signes)
8725 Solution:   Don't give an error when no Vim server was ever started.
8726             Treat failing of opening the display equal to errors inside the
8727             remote*() functions. (Flemming Madsen)
8728 Files:      src/if_xcmdsrv.c, src/main.c
8730 Patch 6.1.350
8731 Problem:    When entering a buffer with ":bnext" for the first time, using an
8732             autocommand to restore the last used cursor position doesn't work.
8733             (Paolo Giarusso)
8734 Solution:   Don't use the last known cursor position of the current Vim
8735             invocation if an autocommand changed the position.
8736 Files:      src/buffer.c
8738 Patch 6.1.351 (depends on 6.1.349)
8739 Problem:    Crash when starting Vim the first time in an X server. (John
8740             McGowan)
8741 Solution:   Don't call xFree() with a fixed string.
8742 Files:      src/if_xcmdsrv.c
8744 Patch 6.1.352 (extra, depends on 6.1.345)
8745 Problem:    Win32: Crash when setting "imdisable" in _vimrc.
8746 Solution:   Don't call IME functions when imm32.dll was not loaded (yet).
8747             Also add typecasts to avoid Compiler warnings for
8748             ImmAssociateContext() argument.
8749 Files:      src/gui_w32.c
8751 Patch 6.1.353 (extra, depends on 6.1.334)
8752 Problem:    Problem with drawing Arabic characters.
8753 Solution:   Don't use ETO_PDY, do use padding.
8754 Files:      src/gui_w32.c
8756 Patch 6.1.354 (extra, depends on 6.1.333)
8757 Problem:    MS-Windows 98: Notepad can't paste text copied from Vim when
8758             'encoding' is "utf-8".
8759 Solution:   Also make CF_TEXT available on the clipboard. (Ron Aaron)
8760 Files:      src/os_mswin.c
8762 Patch 6.1.355
8763 Problem:    In a regexp '\n' will never match anything in a string.
8764 Solution:   Make '\n' match a newline character.
8765 Files:      src/buffer.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
8766             src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/misc1.c,
8767             src/option.c, src/os_mac.c, src/os_unix.c, src/quickfix.c,
8768             src/regexp.c, src/search.c, src/syntax.c, src/tag.c, src/vim.h
8770 Patch 6.1.356 (extra, depends on, well, eh, several others)
8771 Problem:    Compiler warnings for using convert_setup() and a few other
8772             things.
8773 Solution:   Add typecasts.
8774 Files:      src/mbyte.c, src/os_mswin.c, src/proto/os_win32.pro, src/os_win32.c
8776 Patch 6.1.357
8777 Problem:    CR in the quickfix window jumps to the error under the cursor, but
8778             this doesn't work in Insert mode. (Srikanth Sankaran)
8779 Solution:   Handle CR in Insert mode in the quickfix window.
8780 Files:      src/edit.c
8782 Patch 6.1.358
8783 Problem:    The tutor doesn't select another locale version properly.
8784 Solution:   Insert the "let" command. (Yasuhiro Matsumoto)
8785 Files:      runtime/tutor/tutor.vim
8787 Patch 6.1.359 (extra)
8788 Problem:    Mac Carbon: Vim doesn't get focus when started from the command
8789             line.  Crash when using horizontal scroll bar.
8790 Solution:   Set Vim as the frontprocess.  Fix scrolling.  (Peter Cucka)
8791 Files:      src/gui_mac.c
8793 Patch 6.1.360 (depends on 6.1.341)
8794 Problem:    In Insert mode CTRL-K ESC messes up a multi-byte character.
8795             (Anders Helmersson)
8796 Solution:   Save all bytes of a character when displaying a character
8797             temporarily.
8798 Files:      src/edit.c, src/proto/screen.pro, src/screen.c
8800 Patch 6.1.361
8801 Problem:    Cannot jump to a file mark with ":'M".
8802 Solution:   Allow jumping to another file for a mark in an Ex address when it
8803             is the only thing in the command line.
8804 Files:      src/ex_docmd.c
8806 Patch 6.1.362
8807 Problem:    tgetent() may return zero for success. tgetflag() may return -1
8808             for an error.
8809 Solution:   Check tgetflag() for returning a positive value.  Add an autoconf
8810             check for the value that tgetent() returns.
8811 Files:      src/auto/configure, src/config.h.in, src/configure.in, src/term.c
8813 Patch 6.1.363
8814 Problem:    byte2line() can return one more than the number of lines.
8815 Solution:   Return -1 if the offset is one byte past the end.
8816 Files:      src/memline.c
8818 Patch 6.1.364
8819 Problem:    That the FileChangedShell autocommand event never nests makes it
8820             difficult to reload a file in a normal way.
8821 Solution:   Allow nesting for the FileChangedShell event but do not allow
8822             triggering itself again.
8823             Also avoid autocommands for the cmdline window in rare cases.
8824 Files:      src/ex_getln.c, src/fileio.c, src/window.c
8826 Patch 6.1.365 (depends on 6.1.217)
8827 Problem:    Setting a breakpoint in a sourced file with a relative path name
8828             doesn't work. (Servatius Brandt)
8829 Solution:   Expand the file name to a full path.
8830 Files:      src/ex_cmds2.c
8832 Patch 6.1.366
8833 Problem:    Can't use Vim with Netbeans.
8834 Solution:   Add the Netbeans interface.  Includes support for sign icons and
8835             "-fg" and "-bg" arguments for GTK.  Add the 'autochdir'
8836             option.  (Gordon Prieur, George Hernandez, Dave Weatherford)
8837             Make it possible to display both a sign with a text and one with
8838             line highlighting in the same line.
8839             Add support for Agide, interface version 2.1.
8840             Also fix that when 'iskeyword' includes '?' the "*" command
8841             doesn't work properly on a word that includes "?" (Bill McCarthy):
8842             Don't escape "?" to "\?" when searching forward.
8843 Files:      runtime/doc/Makefile, runtime/doc/netbeans.txt,
8844             runtime/doc/options.txt, runtime/doc/various.txt,
8845             src/Makefile, src/auto/configure, src/buffer.c, src/config.h.in,
8846             src/config.mk.in, src/configure.in, src/edit.c, src/ex_cmds.c,
8847             src/ex_docmd.c, src/feature.h, src/fileio.c, src/globals.h,
8848             src/gui.c, src/gui_beval.c, src/gui_gtk_x11.c, src/gui_x11.c,
8849             src/main.c, src/memline.c, src/misc1.c, src/misc2.c, src/move.c,
8850             src/nbdebug.c, src/nbdebug.h, src/netbeans.c, src/normal.c,
8851             src/ops.c, src/option.c, src/option.h, src/proto/buffer.pro,
8852             src/proto/gui_beval.pro, src/proto/gui_gtk_x11.pro,
8853             src/proto/gui_x11.pro, src/proto/misc2.pro,
8854             src/proto/netbeans.pro, src/proto/normal.pro, src/proto/ui.pro,
8855             src/proto.h, src/screen.c, src/structs.h, src/ui.c, src/undo.c,
8856             src/vim.h, src/window.c, src/workshop.c
8858 Patch 6.1.367 (depends on 6.1.365)
8859 Problem:    Setting a breakpoint in a function doesn't work.  For a sourced
8860             file it doesn't work when symbolic links are involved.  (Servatius
8861             Brandt)
8862 Solution:   Expand the file name in the same way as do_source() does.  Don't
8863             prepend the path to a function name.
8864 Files:      src/ex_cmds2.c
8866 Patch 6.1.368
8867 Problem:    Completion for ":map" does not include <silent> and <script>.
8868             ":mkexrc" do not save the <silent> attribute of mappings.
8869 Solution:   Add "<silent>" to the generated map commands when appropriate.
8870             (David Elstner)
8871             Add <silent> and <script> to command line completion.
8872 Files:      src/getchar.c
8874 Patch 6.1.369 (extra)
8875 Problem:    VMS: Vim hangs when attempting to edit a read-only file in the
8876             terminal.  Problem with VMS filenames for quickfix.
8877 Solution:   Rewrite low level input.  Remove version number from file name in
8878             a couple more places.  Fix crash after patch 6.1.362.  Correct
8879             return code for system().  (Zoltan Arpadffy, Tomas Stehlik)
8880 Files:      src/misc1.c, src/os_unix.c, src/os_vms.c, src/proto/os_vms.pro,
8881             src/os_vms_conf.h, src/quickfix.c, src/ui.c
8883 Patch 6.1.370
8884 Problem:    #ifdef nesting is unclear.
8885 Solution:   Insert spaces to indicate the nesting.
8886 Files:      src/os_unix.c
8888 Patch 6.1.371
8889 Problem:    "%V" in 'statusline' doesn't show "0-1" in an empty line.
8890 Solution:   Add one to the column when comparing with virtual column (Andrew
8891             Pimlott)
8892 Files:      src/buffer.c
8894 Patch 6.1.372
8895 Problem:    With 16 bit ints there are compiler warnings. (Walter Briscoe)
8896 Solution:   Change int into long.
8897 Files:      src/structs.h, src/syntax.c
8899 Patch 6.1.373
8900 Problem:    The default page header for printing is not translated.
8901 Solution:   Add _() around the two places where "Page" is used. (Mike
8902             Williams)  Translate the default value of the 'titleold' and
8903             'printheader' options.
8904 Files:      src/ex_cmds2.c, src/option.c
8906 Patch 6.1.374 (extra)
8907 Problem:    MS-Windows: Cannot build GvimExt with MingW or Cygwin.
8908 Solution:   Add makefile and modified resource files. (Rene de Zwart)
8909             Also support Cygwin. (Alejandro Lopez_Valencia)
8910 Files:      GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile,
8911             GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc
8913 Patch 6.1.375
8914 Problem:    MS-Windows: ':!dir "%"' does not work for a file name with spaces.
8915             (Xiangjiang Ma)
8916 Solution:   Don't insert backslashes for spaces in a shell command.
8917 Files:      src/ex_docmd.c
8919 Patch 6.1.376
8920 Problem:    "vim --version" and "vim --help" have a non-zero exit code.
8921             That is unusual. (Petesea)
8922 Solution:   Use a zero exit code.
8923 Files:      src/main.c
8925 Patch 6.1.377
8926 Problem:    Can't add words to 'lispwords' option.
8927 Solution:   Add P_COMMA and P_NODUP flags. (Haakon Riiser)
8928 Files:      src/option.c
8930 Patch 6.1.378
8931 Problem:    When two buffer-local user commands are ambiguous, a full match
8932             with a global user command isn't found. (Hari Krishna Dara)
8933 Solution:   Detect this situation and accept the global command.
8934 Files:      src/ex_docmd.c
8936 Patch 6.1.379
8937 Problem:    Linux with kernel 2.2 can't use the alternate stack in combination
8938             with threading, causes an infinite loop.
8939 Solution:   Don't use the alternate stack in this situation.
8940 Files:      src/os_unix.c
8942 Patch 6.1.380
8943 Problem:    When 'winminheight' is zero and the quickfix window is zero lines,
8944             entering the window doesn't make it higher. (Christian J.
8945             Robinson)
8946 Solution:   Make sure the current window is at least one line high.
8947 Files:      src/window.c
8949 Patch 6.1.381
8950 Problem:    When a BufWriteCmd is used and it leaves the buffer modified, the
8951             window may still be closed. (Hari Krishna Dara)
8952 Solution:   Return FAIL from buf_write() when the buffer is still modified
8953             after a BufWriteCmd autocommand was used.
8954 Files:      src/fileio.c
8956 Patch 6.1.382 (extra)
8957 Problem:    Win32 GUI: When using two monitors, the code that checks/fixes the
8958             window size and position (e.g. when a font changes) doesn't work
8959             properly.  (George Reilly)
8960 Solution:   Handle a double monitor situation. (Helmut Stiegler)
8961 Files:      src/gui_w32.c
8963 Patch 6.1.383
8964 Problem:    The filling of the status line doesn't work properly for
8965             multi-byte characters. (Nam SungHyun)
8966             There is no check for going past the end of the buffer.
8967 Solution:   Properly distinguish characters and bytes.  Properly check for
8968             running out of buffer space.
8969 Files:      src/buffer.c, src/ex_cmds2.c, src/proto/buffer.pro, src/screen.c
8971 Patch 6.1.384
8972 Problem:    It is not possible to find if a certain patch has been included.
8973             (Lubomir Host)
8974 Solution:   Support using has() to check if a patch was included.
8975 Files:      runtime/doc/eval.txt, src/eval.c, src/proto/version.pro,
8976             src/version.c
8978 Patch 6.1.385 (depends on 6.1.383)
8979 Problem:    Can't compile without the multi-byte feature.
8980 Solution:   Move an #ifdef.  (Christian J. Robinson)
8981 Files:      src/buffer.c
8983 Patch 6.1.386
8984 Problem:    Get duplicate tags when running ":helptags".
8985 Solution:   Do the other halve of moving a section to another help file.
8986 Files:      runtime/tagsrch.txt
8988 Patch 6.1.387 (depends on 6.1.373)
8989 Problem:    Compiler warning for pointer cast.
8990 Solution:   Add (char_u *).
8991 Files:      src/option.c
8993 Patch 6.1.388 (depends on 6.1.384)
8994 Problem:    Compiler warning for pointer cast.
8995 Solution:   Add (char *).  Only include has_patch() when used.
8996 Files:      src/eval.c, src/version.c
8998 Patch 6.1.389 (depends on 6.1.366)
8999 Problem:    Balloon evaluation doesn't work for GTK.
9000             has("balloon_eval") doesn't work.
9001 Solution:   Add balloon evaluation for GTK.  Also improve displaying of signs.
9002             (Daniel Elstner)
9003             Also make ":gui" start the netbeans connection and avoid using
9004             netbeans functions when the connection is not open.
9005 Files:      src/Makefile, src/feature.h, src/gui.c, src/gui.h,
9006             src/gui_beval.c, src/gui_beval.h, src/gui_gtk.c,
9007             src/gui_gtk_x11.c, src/eval.c, src/memline.c, src/menu.c,
9008             src/netbeans.c, src/proto/gui_beval.pro, src/proto/gui_gtk.pro,
9009             src/structs.h, src/syntax.c, src/ui.c, src/workshop.c
9011 Patch 6.1.390 (depends on 6.1.389)
9012 Problem:    It's not possible to tell Vim to save and exit through the
9013             Netbeans interface.  Would still try to send balloon eval text
9014             after the connection is closed.
9015             Can't use Unicode characters for sign text.
9016 Solution:   Add functions "saveAndExit" and "getModified".  Check for a
9017             working connection before sending a balloonText event.
9018             various other cleanups.
9019             Support any character for sign text. (Daniel Elstner)
9020 Files:      runtime/doc/netbeans.txt, runtime/doc/sign.txt, src/ex_cmds.c,
9021             src/netbeans.c, src/screen.c
9023 Patch 6.1.391
9024 Problem:    ml_get() error when using virtualedit. (Charles Campbell)
9025 Solution:   Get a line from a specific window, not the current one.
9026 Files:      src/charset.c
9028 Patch 6.1.392 (depends on 6.1.383)
9029 Problem:    Highlighting in the 'statusline' is in the wrong position when an
9030             item is truncated. (Zak Beck)
9031 Solution:   Correct the start of 'statusline' items properly for a truncated
9032             item.
9033 Files:      src/buffer.c
9035 Patch 6.1.393
9036 Problem:    When compiled with Python and threads, detaching the terminal may
9037             cause Vim to loop forever.
9038 Solution:   Add -pthread to $CFLAGS when using Python and gcc. (Daniel
9039             Elstner)
9040 Files:      src/auto/configure,, src/configure.in
9042 Patch 6.1.394 (depends on 6.1.390)
9043 Problem:    The netbeans interface doesn't recognize multibyte glyph names.
9044 Solution:   Check the number of cells rather than bytes to decide
9045             whether a glyph name is not a filename. (Daniel Elstner)
9046 Files:      src/netbeans.c
9048 Patch 6.1.395 (extra, depends on 6.1.369)
9049 Problem:    VMS: OLD_VMS is never defined.  Missing function prototype.
9050 Solution:   Define OLD_VMS in Make_vms.mms.  Add vms_sys_status() to
9051             os_vms.pro. (Zoltan Arpadffy)
9052 Files:      src/Make_vms.mms, src/proto/os_vms.pro
9054 Patch 6.1.396 (depends on 6.1.330)
9055 Problem:    Compiler warnings for using enum.
9056 Solution:   Add typecast to char_u.
9057 Files:      src/gui_gtk_x11.c, src/gui_x11.c
9059 Patch 6.1.397 (extra)
9060 Problem:    The install program may use a wrong path for the diff command if
9061             there is a space in the install directory path.
9062 Solution:   Use double quotes around the path if necessary. (Alejandro
9063             Lopez-Valencia)  Also use double quotes around the file name
9064             arguments.
9065 Files:      src/dosinst.c
9067 Patch 6.1.398
9068 Problem:    Saving the typeahead for debug mode causes trouble for a test
9069             script. (Servatius Brandt)
9070 Solution:   Add the ":debuggreedy" command to avoid saving the typeahead.
9071 Files:      runtime/doc/repeat.txt, src/ex_cmds.h, src/ex_cmds2.c,
9072             src/ex_docmd.c, src/proto/ex_cmds2.pro
9074 Patch 6.1.399
9075 Problem:    Warning for unused variable.
9076 Solution:   Remove the variable two_or_more.
9077 Files:      src/ex_cmds.c
9079 Patch 6.1.400 (depends on 6.1.381)
9080 Problem:    When a BufWriteCmd wipes out the buffer it may still be accessed.
9081 Solution:   Don't try accessing a buffer that has been wiped out.
9082 Files:      src/fileio.c
9084 Patch 6.1.401 (extra)
9085 Problem:    Building the Win16 version with Borland 5.01 doesn't work.
9086             "make test" doesn't work with Make_dos.mak. (Walter Briscoe)
9087 Solution:   Various fixes to the w16 makefile. (Walter Briscoe)
9088             Don't use deltree.  Use "mkdir \tmp" instead of "mkdir /tmp".
9089 Files:      src/Make_w16.mak, src/testdir/Make_dos.mak
9091 Patch 6.1.402
9092 Problem:    When evaluating a function name with curly braces, an error
9093             is not handled consistently.
9094 Solution:   Accept the result of an curly braces expression when an
9095             error was encountered.  Skip evaluating an expression in curly
9096             braces when skipping.  (Servatius Brandt)
9097 Files:      src/eval.c
9099 Patch 6.1.403 (extra)
9100 Problem:    MS-Windows 16 bit: compiler warnings.
9101 Solution:   Add typecasts. (Walter Briscoe)
9102 Files:      src/ex_cmds2.c, src/gui_w48.c, src/os_mswin.c, src/os_win16.c,
9103             src/syntax.c
9105 Patch 6.1.404 (extra)
9106 Problem:    Various small problems.
9107 Solution:   Fix comments.  Various small additions, changes in indent, removal
9108             of unused items and fixes.
9109 Files:      Makefile, README.txt, runtime/menu.vim, runtime/vimrc_example.vim,
9110             src/INSTALL, src/INSTALLole.txt, src/Make_bc5.mak,
9111             src/Make_cyg.mak, src/Make_ming.mak, src/Makefile,
9112             src/config.h.in, src/edit.c, src/eval.c, src/ex_cmds2.c,
9113             src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/getchar.c,
9114             src/gui.c, src/gui_gtk.c, src/gui_photon.c, src/if_cscope.c,
9115             src/if_python.c, src/keymap.h, src/mark.c, src/mbyte.c,
9116             src/message.c, src/misc1.c, src/misc2.c, src/normal.c,
9117             src/option.c, src/os_os2_cfg.h, src/os_win32.c,
9118             src/proto/getchar.pro, src/proto/message.pro,
9119             src/proto/regexp.pro, src/screen.c, src/structs.h, src/syntax.c,
9120             src/term.c, src/testdir/test15.in, src/testdir/test15.ok,
9121             src/vim.rc, src/xxd/Make_cyg.mak, src/xxd/Makefile
9123 Patch 6.1.405
9124 Problem:    A few files are missing from the toplevel Makefile.
9125 Solution:   Add the missing files.
9126 Files:      Makefile
9128 Patch 6.1.406 (depends on 6.1.392)
9129 Problem:    When a statusline item doesn't fit arbitrary text appears.
9130             (Christian J. Robinson)
9131 Solution:   When there is just enough room but not for the "<" truncate the
9132             statusline item like there is no room.
9133 Files:      src/buffer.c
9135 Patch 6.1.407
9136 Problem:    ":set scrollbind | help" scrollbinds the help window. (Andrew
9137             Pimlott)
9138 Solution:   Reset 'scrollbind' when opening a help window.
9139 Files:      src/ex_cmds.c
9141 Patch 6.1.408
9142 Problem:    When 'rightleft' is set unprintable character 0x0c is displayed as
9143             ">c0<".
9144 Solution:   Reverse the text of the hex character.
9145 Files:      src/screen.c
9147 Patch 6.1.409
9148 Problem:    Generating tags for the help doesn't work for some locales.
9149 Solution:   Set LANG=C LC_ALL=C in the environment for "sort". (Daniel
9150             Elstner)
9151 Files:      runtime/doc/Makefile
9153 Patch 6.1.410 (depends on 6.1.390)
9154 Problem:    Linking error when compiling with Netbeans but without sign icons.
9155             (Malte Neumann)
9156 Solution:   Don't define buf_signcount() when sign icons are unavailable.
9157 Files:      src/buffer.c
9159 Patch 6.1.411
9160 Problem:    When 'virtualedit' is set, highlighting a Visual block beyond the
9161             end of a line may be wrong.
9162 Solution:   Correct the virtual column when the end of the line is before the
9163             displayed part of the line. (Muraoka Taro)
9164 Files:      src/screen.c
9166 Patch 6.1.412
9167 Problem:    When swapping terminal screens and using ":gui" to start the GUI,
9168             the shell prompt may be after a hit-enter prompt.
9169 Solution:   Output a newline in the terminal when starting the GUI and there
9170             was a hit-enter prompt..
9171 Files:      src/gui.c
9173 Patch 6.1.413
9174 Problem:    When 'clipboard' contains "unnamed", "p" in Visual mode doesn't
9175             work correctly.
9176 Solution:   Save the register before overwriting it and put the resulting text
9177             on the clipboard afterwards.  (Muraoka Taro)
9178 Files:      src/normal.c, src/ops.c
9180 Patch 6.1.414 (extra, depends on 6.1.369)
9181 Problem:    VMS: Vim busy waits when waiting for input.
9182 Solution:   Delay for a short while before getting another character.  (Zoltan
9183             Arpadffy)
9184 Files:      src/os_vms.c
9186 Patch 6.1.415
9187 Problem:    When there is a vertical split and a quickfix window, reducing the
9188             size of the Vim window may result in a wrong window layout and a
9189             crash.
9190 Solution:   When reducing the window size and there is not enough space for
9191             'winfixheight' set the frame height to the larger height, so that
9192             there is a retry while ignoring 'winfixheight'. (Yasuhiro
9193             Matsumoto)
9194 Files:      src/window.c
9196 Patch 6.1.416 (depends on 6.1.366)
9197 Problem:    When using the Netbeans interface, a line with a sign cannot be
9198             changed.
9199 Solution:   Respect the GUARDEDOFFSET for sign IDs when checking for a guarded
9200             area.
9201 Files:      src/netbeans.c
9203 Patch 6.1.417
9204 Problem:    Unprintable multi-byte characters are not handled correctly.
9205             Multi-byte characters above 0xffff are displayed as another
9206             character.
9207 Solution:   Handle unprintable multi-byte characters.  Display multi-byte
9208             characters above 0xffff with a marker.  Recognize UTF-16 words and
9209             BOM words as unprintable.  (Daniel Elstner)
9210 Files:      src/charset.c, src/mbyte.c, src/screen.c
9212 Patch 6.1.418
9213 Problem:    The result of strftime() is in the current locals.  Need to
9214             convert it to 'encoding'.
9215 Solution:   Obtain the current locale and convert the argument for strftime()
9216             to it and the result back to 'encoding'.  (Daniel Elstner)
9217 Files:      src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/mbyte.c,
9218             src/proto/mbyte.pro, src/option.c, src/os_mswin.c
9220 Patch 6.1.419
9221 Problem:    Vim doesn't compile on AIX 5.1.
9222 Solution:   Don't define _NO_PROTO on this system. (Uribarri)
9223 Files:      src/auto/configure, src/configure.in
9225 Patch 6.1.420 (extra)
9226 Problem:    convert_input() has an unnecessary STRLEN().
9227             Conversion from UCS-2 to a codepage uses word count instead of
9228             byte count.
9229 Solution:   Remove the STRLEN() call. (Daniel Elstner)
9230             Always use byte count for string_convert().
9231 Files:      src/gui_w32.c, src/mbyte.c
9233 Patch 6.1.421 (extra, depends on 6.1.354)
9234 Problem:    MS-Windows 9x: When putting text on the clipboard it can be in
9235             the wrong encoding.
9236 Solution:   Convert text to the active codepage for CF_TEXT. (Glenn Maynard)
9237 Files:      src/os_mswin.c
9239 Patch 6.1.422
9240 Problem:    Error in .vimrc doesn't cause hit-enter prompt when swapping
9241             screens. (Neil Bird)
9242 Solution:   Set msg_didany also when sending a message to the terminal
9243             directly.
9244 Files:      src/message.c
9246 Patch 6.1.423
9247 Problem:    Can't find arbitrary text in help files.
9248 Solution:   Added the ":helpgrep" command.
9249 Files:      runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
9250             src/proto/quickfix.pro, src/quickfix.c
9252 Patch 6.1.424 (extra)
9253 Problem:    Win32: Gvim compiled with VC++ 7.0 run on Windows 95 does not show
9254             menu items.
9255 Solution:   Define $WINVER to avoid an extra item is added to MENUITEMINFO.
9256             (Muraoka Taro)
9257 Files:      src/Make_mvc.mak
9259 Patch 6.1.425
9260 Problem:    ":helptags $VIMRUNTIME/doc" does not add the "help-tags" tag.
9261 Solution:   Do add the "help-tags" tag for that specific directory.
9262 Files:      src/ex_cmds.c
9264 Patch 6.1.426
9265 Problem:    "--remote-wait +cmd file" waits forever. (Valery Kondakoff)
9266 Solution:   Don't wait for the "+cmd" argument to have been edited.
9267 Files:      src/main.c
9269 Patch 6.1.427
9270 Problem:    Several error messages for regexp patterns are not translated.
9271 Solution:   Use _() properly. (Muraoka Taro)
9272 Files:      src/regexp.c
9274 Patch 6.1.428
9275 Problem:    FreeBSD: wait() may hang when compiled with Python support and
9276             doing a system() call in a startup script.
9277 Solution:   Use waitpid() instead of wait() and poll every 10 msec, just like
9278             what is done in the GUI.
9279 Files:      src/os_unix.c
9281 Patch 6.1.429 (depends on 6.1.390)
9282 Problem:    Crash when using showmarks.vim plugin. (Charles Campbell)
9283 Solution:   Check for sign_get_text() returning a NULL pointer.
9284 Files:      src/screen.c
9286 Patch 6.1.430
9287 Problem:    In Lisp code backslashed parens should be ignored for "%". (Dorai)
9288 Solution:   Skip over backslashed parens.
9289 Files:      src/search.c
9291 Patch 6.1.431
9292 Problem:    Debug commands end up in redirected text.
9293 Solution:   Disable redirection while handling debug commands.
9294 Files:      src/ex_cmds2.c
9296 Patch 6.1.432 (depends on 6.1.375)
9297 Problem:    MS-Windows: ":make %:p" inserts extra backslashes. (David Rennalls)
9298 Solution:   Don't add backslashes, handle it like ":!cmd".
9299 Files:      src/ex_docmd.c
9301 Patch 6.1.433
9302 Problem:    ":popup" only works for Win32.
9303 Solution:   Add ":popup" support for GTK.  (Daniel Elstner)
9304 Files:      runtime/doc/gui.txt, src/ex_docmd.c, src/gui_gtk.c, src/menu.c,
9305             src/proto/gui_gtk.pro
9307 Patch 6.1.434 (extra)
9308 Problem:    Win32: When there are more than 32767 lines, the scrollbar has a
9309             roundoff error.
9310 Solution:   Make a click on an arrow move one line.  Also move the code to
9311             gui_w48.c, there is hardly any difference between the 16 bit and
9312             32 bit versions. (Walter Briscoe)
9313 Files:      src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
9315 Patch 6.1.435
9316 Problem:    ":winsize x" resizes the Vim window to the minimal size. (Andrew
9317             Pimlott)
9318 Solution:   Give an error message for wrong arguments of ":winsize" and
9319             ":winpos".
9320 Files:      src/ex_docmd.c
9322 Patch 6.1.436
9323 Problem:    When a long UTF-8 file contains an illegal byte it's hard to find
9324             out where it is. (Ron Aaron)
9325 Solution:   Add the line number to the error message.
9326 Files:      src/fileio.c
9328 Patch 6.1.437 (extra, depends on 6.1.421)
9329 Problem:    Using multi-byte functions when they are not available.
9330 Solution:   Put the clipboard conversion inside an #ifdef. (Vince Negri)
9331             Also fix a pointer type mistake. (Walter Briscoe)
9332 Files:      src/os_mswin.c
9334 Patch 6.1.438
9335 Problem:    When Perl has thread support Vim cannot use the Perl interface.
9336 Solution:   Add a configure check and disable Perl when it will not work.
9337             (Aron Griffis)
9338 Files:      src/auto/configure, src/configure.in
9340 Patch 6.1.439
9341 Problem:    Netbeans: A "create" function doesn't actually create a buffer,
9342             following functions may fail.
9343 Solution:   Create a Vim buffer without a name when "create" is called.
9344             (Gordon Prieur)
9345 Files:      runtime/doc/netbeans.txt, src/netbeans.c
9347 Patch 6.1.440
9348 Problem:    The "@*" command doesn't obtain the actual contents of the
9349             clipboard. (Hari Krishna Dara)
9350 Solution:   Obtain the clipboard text before executing the command.
9351 Files:      src/ops.c
9353 Patch 6.1.441
9354 Problem:    "zj" and "zk" cannot be used as a motion command after an
9355             operator. (Ralf Hetzel)
9356 Solution:   Accept these commands as motion commands.
9357 Files:      src/normal.c
9359 Patch 6.1.442
9360 Problem:    Unicode 3.2 defines more space and punctuation characters.
9361 Solution:   Add the new characters to the Unicode tables. (Raphael Finkel)
9362 Files:      src/mbyte.c
9364 Patch 6.1.443 (extra)
9365 Problem:    Win32: The gvimext.dll build with Borland 5.5 requires another
9366             DLL.
9367 Solution:   Build a statically linked version by default. (Dan Sharp)
9368 Files:      GvimExt/Make_bc5.mak
9370 Patch 6.1.444 (extra)
9371 Problem:    Win32: Enabling a build with gettext support is not consistent.
9372 Solution:   Use "GETTEXT" for Borland and msvc makefiles. (Dan Sharp)
9373 Files:      src/Make_bc5.mak, src/Make_mvc.mak
9375 Patch 6.1.445 (extra)
9376 Problem:    DJGPP: get warning for argument of putenv()
9377 Solution:   Define HAVE_PUTENV to use DJGPP's putenv(). (Walter Briscoe)
9378 Files:      src/os_msdos.h
9380 Patch 6.1.446 (extra)
9381 Problem:    Win32: The MingW makefile uses a different style of arguments than
9382             other makefiles.
9383             Dynamic IME is not supported for Cygwin.
9384 Solution:   Use "no" and "yes" style arguments.  Remove the use of the
9385             dyn-ming.h include file. (Dan Sharp)
9386             Do not include the ime.h file and adjust the makefile. (Alejandro
9387             Lopez-Valencia)
9388 Files:      src/Make_cyg.mak, src/Make_ming.mak, src/gui_w32.c,
9389             src/if_perl.xs, src/if_python.c, src/if_ruby.c, src/os_win32.c
9391 Patch 6.1.447
9392 Problem:    "make install" uses "make" directly for generating help tags.
9393 Solution:   Use $(MAKE) instead of "make". (Tim Mooney)
9394 Files:      src/Makefile
9396 Patch 6.1.448
9397 Problem:    'titlestring' has a default maximum width of 50 chars per item.
9398 Solution:   Remove the default maximum (also for 'statusline').
9399 Files:      src/buffer.c
9401 Patch 6.1.449
9402 Problem:    When "1" and "a" are in 'formatoptions', auto-formatting always
9403             moves a newly added character to the next line. (Servatius Brandt)
9404 Solution:   Don't move a single character to the next line when it was just
9405             typed.
9406 Files:      src/edit.c
9408 Patch 6.1.450
9409 Problem:    Termcap entry "kB" for back-tab is not recognized.
9410 Solution:   Use back-tab as the shift-tab code.
9411 Files:      src/keymap.h, src/misc2.c, src/term.c
9413 Patch 6.1.451
9414 Problem:    GUI: When text in the find dialog contains a slash, a backslash is
9415             inserted the next time it is opened. (Mezz)
9416 Solution:   Remove escaped backslashes and question marks. (Daniel Elstner)
9417 Files:      src/gui.c
9419 Patch 6.1.452 (extra, after 6.1.446)
9420 Problem:    Win32: IME support doesn't work for MSVC.
9421 Solution:   Use _MSC_VER instead of __MSVC. (Alejandro Lopez-Valencia)
9422 Files:      src/gui_w32.c
9424 Patch 6.1.453 (after 6.1.429)
9425 Problem:    When compiled without sign icons but with sign support, adding a
9426             sign may cause a crash.
9427 Solution:   Check for the text sign to exist before using it. (Kamil
9428             Burzynski)
9429 Files:      src/screen.c
9431 Patch 6.1.454 (extra)
9432 Problem:    Win32: pasting Russian text in Vim with 'enc' set to cp1251
9433             results in utf-8 bytes.  (Perelyubskiy)
9434             Conversion from DBCS to UCS2 does not work when 'encoding' is not
9435             the active codepage.
9436 Solution:   Introduce enc_codepage and use it for conversion to 'encoding'
9437             (Glenn Maynard)
9438             Use MultiByteToWideChar() and WideCharToMultiByte() instead of
9439             iconv().  Should do most needed conversions without iconv.dll.
9440 Files:      src/globals.h, src/gui_w32.c, src/mbyte.c, src/os_mswin.c,
9441             src/proto/mbyte.pro, src/proto/os_mswin.pro, src/structs.h
9443 Patch 6.1.455
9444 Problem:    Some Unicode characters can be one or two character cells wide.
9445 Solution:   Add the 'ambiwidth' option to tell Vim how to display these
9446             characters. (Jungshik Shin)
9447             Also reset the script ID when setting an option to its default
9448             value, so that ":verbose set" won't give wrong info.
9449 Files:      runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h
9451 Patch 6.1.456 (extra, after 6.1.454)
9452 Problem:    Win32: IME doesn't work.
9453 Solution:   ImmGetCompositionStringW() returns the size in bytes, not words.
9454             (Yasuhiro Matsumoto)  Also fix typecast problem.
9455 Files:      src/gui_w32.c, src/os_mswin.c
9457 Patch 6.1.457
9458 Problem:    An empty register in viminfo causes conversion to fail.
9459 Solution:   Don't convert an empty string. (Yasuhiro Matsumoto)
9460 Files:      src/ex_cmds.c, src/mbyte.c
9462 Patch 6.1.458
9463 Problem:    Compiler warning for pointer.
9464 Solution:   Add a typecast.
9465 Files:      src/ex_cmds.c
9467 Patch 6.1.459 (extra)
9468 Problem:    Win32: libcall() may return an invalid pointer and cause Vim to
9469             crash.
9470 Solution:   Add a strict check for the returned pointer. (Bruce Mellows)
9471 Files:      src/os_mswin.c
9473 Patch 6.1.460
9474 Problem:    GTK: after scrolling the text one line with a key, clicking the
9475             arrow of the scrollbar does not always work. (Nam SungHyun)
9476 Solution:   Always update the scrollbar thumb when the value changed, even
9477             when it would not move, like for RISCOS.  (Daniel Elstner)
9478 Files:      src/gui.c, src/gui.h
9480 Patch 6.1.461
9481 Problem:    When a keymap is active, typing a character in Select mode does
9482             not use it. (Benji Fisher)
9483 Solution:   Apply Insert mode mapping to the character typed in Select mode.
9484 Files:      src/normal.c
9486 Patch 6.1.462
9487 Problem:    When autocommands wipe out a buffer, a crash may happen. (Hari
9488             Krishna Dara)
9489 Solution:   Don't decrement the window count of a buffer before calling the
9490             autocommands for it.  When re-using the current buffer, watch out
9491             for autocommands changing the current buffer.
9492 Files:      src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
9494 Patch 6.1.463
9495 Problem:    When writing a compressed file, the file name that gzip stores in
9496             the file is the weird temporary file name. (David Rennalls)
9497 Solution:   Use the real file name when possible.
9498 Files:      runtime/plugin/gzip.vim
9500 Patch 6.1.464
9501 Problem:    Crash when using C++ syntax highlighting. (Gerhard Hochholzer)
9502 Solution:   Check for a negative index.
9503 Files:      src/syntax.c
9505 Patch 6.1.465 (after 6.1.454)
9506 Problem:    Compile error when using cygwin.
9507 Solution:   Change #ifdef WIN32 to #ifdef WIN3264. (Alejandro Lopez-Valencia)
9508             Undefine WIN32 after including windows.h
9509 Files:      src/mbyte.c
9511 Patch 6.1.466
9512 Problem:    The "-f" argument is a bit obscure.
9513 Solution:   Add the "--nofork" argument.  Improve the help text a bit.
9514 Files:      runtime/doc/starting.txt, src/main.c
9516 Patch 6.1.467
9517 Problem:    Setting the window title doesn't work for Chinese.
9518 Solution:   Use an X11 function to convert text to a text property. (Kentaro
9519             Nakazawa)
9520 Files:      src/os_unix.c
9522 Patch 6.1.468
9523 Problem:    ":mksession" also stores folds for buffers which will not be
9524             restored.
9525 Solution:   Only store folds for a buffer with 'buftype' empty and help files.
9526 Files:      src/ex_docmd.c
9528 Patch 6.1.469
9529 Problem:    'listchars' cannot contain multi-byte characters.
9530 Solution:   Handle multi-byte UTF-8 list characters. (Matthew Samsonoff)
9531 Files:      src/message.c, src/option.c, src/screen.c
9533 Patch 6.1.470 (lang)
9534 Problem:    Polish messages don't show up correctly on MS-Windows.
9535 Solution:   Convert messages to cp1250. (Mikolaj Machowski)
9536             Also add English message translations, because it got in the way
9537             of the patch.
9538 Files:      Makefile, src/po/Makefile, src/po/en_gb.po, src/po/pl.po
9540 Patch 6.1.471
9541 Problem:    ":jumps" output continues after pressing "q" at the more-prompt.
9542             (Hari Krishna Dara)
9543 Solution:   Check for "got_int" being set.
9544 Files:      src/mark.c
9546 Patch 6.1.472
9547 Problem:    When there is an authentication error when connecting to the X
9548             server Vim exits.
9549 Solution:   Use XSetIOErrorHandler() to catch the error and longjmp() to avoid
9550             the exit.  Also do this in the main loop, so that when the X
9551             server exits a Vim running in a console isn't killed.
9552 Files:      src/globals.h, src/main.c, src/os_unix.c
9554 Patch 6.1.473
9555 Problem:    Referring to $curwin or $curbuf in Perl 5.6 causes a crash.
9556 Solution:   Add "pTHX_" to cur_val(). (Yasuhiro Matsumoto)
9557 Files:      src/if_perl.xs
9559 Patch 6.1.474
9560 Problem:    When opening the command-line window in Ex mode it's impossible to
9561             go back. (Pavol Juhas)
9562 Solution:   Reset "exmode_active" and restore it when the command-line window
9563             is closed.
9564 Files:      src/ex_getln.c
9567 Patch 6.2f.001
9568 Problem:    The configure check for Ruby didn't work properly for Ruby 1.8.0.
9569 Solution:   Change the way the Ruby check is done. (Aron Griffis)
9570 Files:      src/auto/configure, src/configure.in
9572 Patch 6.2f.002
9573 Problem:    The output of ":ls" doesn't show whether a buffer had read errors.
9574 Solution:   Add the "x" flag in the ":ls" output.
9575 Files:      runtime/doc/windows.txt, src/buffer.c
9577 Patch 6.2f.003
9578 Problem:    Test49 doesn't properly test the behavior of ":catch" without an
9579             argument.
9580 Solution:   Update test49. (Servatius Brandt)
9581 Files:      src/testdir/test49.ok, src/testdir/test49.vim
9583 Patch 6.2f.004
9584 Problem:    "vim --version" always uses CR/LF in the output.
9585 Solution:   Omit the CR.
9586 Files:      src/message.c, src/os_unix.c
9588 Patch 6.2f.005
9589 Problem:    Two error messages without a colon after the number.
9590 Solution:   Add the colon. (Taro Muraoka)
9591 Files:      src/if_cscope.c
9593 Patch 6.2f.006
9594 Problem:    When saving a file takes a while and Vim regains focus this can
9595             result in a "file changed outside of Vim" warning and ml_get()
9596             errors. (Mike Williams)
9597 Solution:   Add the "b_saving" flag to avoid checking the timestamp while the
9598             buffer is being saved. (Michael Schaap)
9599 Files:      src/fileio.c, src/structs.h
9601 Patch 6.2f.007
9602 Problem:    Irix compiler complains about multiple defined symbols.
9603             vsnprintf() is not available.  (Charles Campbell)
9604 Solution:   Insert EXTERN for variables in globals.h.  Change the configure
9605             check for vsnprintf() from compiling to linking.
9606 Files:      src/auto/configure, src/configure.in, src/globals.h
9608 Patch 6.2f.008
9609 Problem:    The Aap recipe doesn't work with Aap 0.149.
9610 Solution:   Change targetarg to TARGETARG.  Update the mysign file.
9611 Files:      src/main.aap, src/mysign
9613 Patch 6.2f.009 (extra)
9614 Problem:    Small problem when building with Borland 5.01.
9615 Solution:   Use mkdir() instead of _mkdir(). (Walter Briscoe)
9616 Files:      src/dosinst.h
9618 Patch 6.2f.010
9619 Problem:    Warning for missing prototypes.
9620 Solution:   Add missing prototypes. (Walter Briscoe)
9621 Files:      src/if_cscope.c
9623 Patch 6.2f.011
9624 Problem:    The configure script doesn't work with autoconf 2.5x.
9625 Solution:   Add square brackets around a header check. (Aron Griffis)
9626             Note: touch src/auto/configure after applying this patch.
9627 Files:      src/configure.in
9629 Patch 6.2f.012
9630 Problem:    ":echoerr" doesn't work correctly inside try/endtry.
9631 Solution:   Don't reset did_emsg inside a try/endtry. (Servatius Brandt)
9632 Files:      src/eval.c
9634 Patch 6.2f.013 (extra)
9635 Problem:    Macintosh: Compiler warning for a trigraph.
9636 Solution:   Insert a backslash before each question mark. (Peter Cucka)
9637 Files:      src/os_mac.h
9639 Patch 6.2f.014 (extra)
9640 Problem:    Macintosh: ex_eval is not included in the project file.
9641 Solution:   Add ex_eval. (Dany St-Amant)
9642 Files:      src/os_mac.pbproj/project.pbxproj
9644 Patch 6.2f.015 (extra)
9645 Problem:    Win32: When changing header files not all source files involved
9646             are recompiled.
9647 Solution:   Improve the dependency rules. (Dan Sharp)
9648 Files:      src/Make_cyg.mak, src/Make_ming.mak
9650 Patch 6.2f.016
9651 Problem:    "vim --version > ff" on non-Unix systems results in a file with a
9652             missing line break at the end. (Bill McCArthy)
9653 Solution:   Add a line break.
9654 Files:      src/main.c
9656 Patch 6.2f.017
9657 Problem:    Unix: starting Vim in the background and then bringing it to the
9658             foreground may cause the terminal settings to be wrong.
9659 Solution:   Check for tcsetattr() to return an error, retry when it does.
9660             (Paul Tapper)
9661 Files:      src/os_unix.c
9663 Patch 6.2f.018
9664 Problem:    Mac OS X 10.2: OK is defined to zero in cursus.h while Vim uses
9665             one.  Redefining it causes a warning message.
9666 Solution:   Undefine OK before defining it to one. (Taro Muraoka)
9667 Files:      src/vim.h
9669 Patch 6.2f.019
9670 Problem:    Mac OS X 10.2: COLOR_BLACK and COLOR_WHITE are defined in
9671             curses.h.
9672 Solution:   Rename them to PRCOLOR_BLACK and PRCOLOR_WHITE.
9673 Files:      src/ex_cmds2.c
9675 Patch 6.2f.020
9676 Problem:    Win32: test50 produces beeps and fails with some versions of diff.
9677 Solution:   Remove empty lines and convert the output to dos fileformat.
9678 Files:      src/testdir/test50.in
9680 Patch 6.2f.021
9681 Problem:    Running configure with "--enable-netbeans" disables Netbeans.
9682             (Gordon Prieur)
9683 Solution:   Fix the tests in configure.in where the default is to enable a
9684             feature.  Fix that "--enable-acl" reported "yes" confusingly.
9685 Files:      src/auto/configure, src/configure.in, src/mysign
9687 Patch 6.2f.022
9688 Problem:    A bogus value for 'foldmarker' is not rejected, possibly causing a
9689             hang. (Derek Wyatt)
9690 Solution:   Check for a non-empty string before and after the comma.
9691 Files:      src/option.c
9693 Patch 6.2f.023
9694 Problem:    When the help files are not in $VIMRUNTIME but 'helpfile' is
9695             correct Vim still can't find the help files.
9696 Solution:   Also look for a tags file in the directory of 'helpfile'.
9697 Files:      src/tag.c
9699 Patch 6.2f.024
9700 Problem:    When 'delcombine' is set and a character has more than two
9701             composing characters "x" deletes them all.
9702 Solution:   Always delete only the last composing character.
9703 Files:      src/misc1.c
9705 Patch 6.2f.025
9706 Problem:    When reading a file from stdin that has DOS line endings but a
9707             missing end-of-line for the last line 'fileformat' becomes "unix".
9708             (Bill McCarthy)
9709 Solution:   Don't add the missing line break when re-reading the text from the
9710             buffer.
9711 Files:      src/fileio.c
9713 Patch 6.2f.026
9714 Problem:    When typing new text at the command line, old composing characters
9715             may be displayed.
9716 Solution:   Don't read composing characters from after the end of the
9717             text to be displayed.
9718 Files:      src/ex_getln.c, src/mbyte.c, src/message.c, src/proto/mbyte.pro,
9719             src/screen.c
9721 Patch 6.2f.027
9722 Problem:    Compiler warnings for unsigned char pointers. (Tony Leneis)
9723 Solution:   Add typecasts to char pointer.
9724 Files:      src/quickfix.c
9726 Patch 6.2f.028
9727 Problem:    GTK: When 'imactivatekey' is empty and XIM is inactive it can't be
9728             made active again.  Cursor isn't updated immediately when changing
9729             XIM activation.  Japanese XIM may hang when using 'imactivatekey'.
9730             Can't activate XIM after typing fFtT command or ":sh".
9731 Solution:   Properly set the flag that indicates the IM is active.  Update the
9732             cursor right away.  Do not send a key-release event.  Handle
9733             Normal mode and running an external command differently.
9734             (Yasuhiro Matsumoto)
9735 Files:      src/mbyte.c
9737 Patch 6.2f.029
9738 Problem:    Mixing use of int and enum.
9739 Solution:   Adjust argument type of cs_usage_msg().  Fix wrong typedef.
9740 Files:      src/if_cscope.c, src/if_cscope.h
9742 Patch 6.2f.030 (after 6.2f.028)
9743 Problem:    Cursor moves up when using XIM.
9744 Solution:   Reset im_preedit_cursor.  (Yasuhiro Matsumoto)
9745 Files:      src/mbyte.c
9747 Patch 6.2f.031
9748 Problem:    Crash when listing a function argument in the debugger. (Ron Aaron)
9749 Solution:   Init the name field of an argument to NULL.
9750 Files:      src/eval.c
9752 Patch 6.2f.032
9753 Problem:    When a write fails for a ":silent!" while inside try/endtry the
9754             BufWritePost autocommands are not triggered.
9755 Solution:   Check the emsg_silent flag in should_abort(). (Servatius Brandt)
9756 Files:      src/ex_eval.c, src/testdir/test49.ok, src/testdir/test49.vim
9758 Patch 6.2f.033
9759 Problem:    Cscope: re-entrance problem for ":cscope" command.  Checking for
9760             duplicate database didn't work well for Win95.  Didn't check for
9761             duplicate databases after an empty entry.
9762 Solution:   Don't set postponed_split too early.  Remember first empty
9763             database entry. (Sergey Khorev)
9764 Files:      src/if_cscope.c
9766 Patch 6.2f.034
9767 Problem:    The netbeans interface cannot be used on systems without
9768             vsnprintf(). (Tony Leneis)
9769 Solution:   Use EMSG(), EMSGN() and EMSG2() instead.
9770 Files:      src/auto/configure, src/configure.in, src/netbeans.c
9772 Patch 6.2f.035
9773 Problem:    The configure check for the netbeans interface doesn't work if the
9774             socket and nsl libraries are required.
9775 Solution:   Check for the socket and nsl libraries before the netbeans check.
9776 Files:      src/auto/configure, src/configure.in
9778 Patch 6.2f.036
9779 Problem:    Moving leftwards over text with an illegal UTF-8 byte moves one
9780             byte instead of one character.
9781 Solution:   Ignore an illegal byte after the cursor position.
9782 Files:      src/mbyte.c
9784 Patch 6.2f.037
9785 Problem:    When receiving a Netbeans command at the hit-enter or more prompt
9786             the screen is redrawn but Vim is still waiting at the prompt.
9787 Solution:   Quit the prompt like a CTRL-C was typed.
9788 Files:      src/netbeans.c
9790 Patch 6.2f.038
9791 Problem:    The dependency to run autoconf causes a patch for configure.in
9792             to run autoconf, even though the configure script was updated as
9793             well.
9794 Solution:   Only run autoconf with "make autoconf".
9795 Files:      src/Makefile
9797 Patch 6.2f.039
9798 Problem:    CTRL-W K makes the new top window very high.
9799 Solution:   When 'equalalways' is set equalize the window heights.
9800 Files:      src/window.c
9803 ==============================================================================
9804 VERSION 6.3                                             *version-6.3*
9806 This section is about improvements made between version 6.2 and 6.3.
9808 This is mainly a bug-fix release.  There are also a few new features.
9809 The major number of new items is in the runtime files and translations.
9812 Changed                                                 *changed-6.3*
9813 -------
9815 The intro message also displays a note about sponsoring Vim, mixed randomly
9816 with the message about helping children in Uganda.
9818 Included the translated menus, keymaps and tutors with the normal runtime
9819 files.  The separate "lang" archive now only contains translated messages.
9821 Made the translated menu file names a bit more consistent.  Use "latin1" for
9822 "iso_8859-1" and "iso_8859-15".
9824 Removed the "file_select.vim" script from the distribution.  It's not more
9825 useful than other scripts that can be downloaded from www.vim.org.
9827 The "runtime/doc/tags" file is now always in unix fileformat.  On MS-Windows
9828 it used to be dos fileformat, but ":helptags" generates a unix format file.
9831 Added                                                   *added-6.3*
9832 -----
9834 New commands:
9835         :cNfile         go to last error in previous file
9836         :cpfile         idem
9837         :changes        print the change list
9838         :keepmarks      following command keeps marks where they are
9839         :keepjumps      following command keeps jumplist and marks
9840         :lockmarks      following command keeps marks where they are
9841         :redrawstatus   force a redraw of the status line(s)
9843 New options:
9844         'antialias'     Mac OS X: use smooth, antialiased fonts
9845         'helplang'      preferred help languages
9847 Syntax files:
9848         Arch inventory (Nikolai Weibull)
9849         Calendar (Nikolai Weibull)
9850         Ch (Wayne Cheng)
9851         Controllable Regex Mutilator (Nikolai Weibull)
9852         D (Jason Mills)
9853         Desktop (Mikolaj Machowski)
9854         Dircolors (Nikolai Weibull)
9855         Elinks configuration (Nikolai Weibull)
9856         FASM (Ron Aaron)
9857         GrADS scripts (Stefan Fronzek)
9858         Icewm menu (James Mahler)
9859         LDIF (Zak Johnson)
9860         Locale input, fdcc. (Dwayne Bailey)
9861         Pinfo config (Nikolai Weibull)
9862         Pyrex (Marco Barisione)
9863         Relax NG Compact (Nikolai Weibull)
9864         Slice (Morel Bodin)
9865         VAX Macro Assembly (Tom Uijldert)
9866         grads (Stefan Fronzek)
9867         libao (Nikolai Weibull)
9868         mplayer (Nikolai Weibull)
9869         rst (Nikolai Weibull)
9870         tcsh (Gautam Iyer)
9871         yaml (Nikolai Weibull)
9873 Compiler plugins:
9874         ATT dot (Marcos Macedo)
9875         Apple Project Builder (Alexander von Below)
9876         Intel (David Harrison)
9877         bdf (Nikolai Weibull)
9878         icc (Peter Puck)
9879         javac (Doug Kearns)
9880         neato (Marcos Macedo)
9881         onsgmls (Robert B. Rowsome)
9882         perl (Christian J. Robinson)
9883         rst (Nikolai Weibull)
9884         se (SmartEiffel) (Doug Kearns)
9885         tcl (Doug Kearns)
9886         xmlwf (Robert B. Rowsome)
9888 Filetype plugins:
9889         Aap (Bram Moolenaar)
9890         Ch (Wayne Cheng)
9891         Css (Nikolai Weibull)
9892         Pyrex (Marco Barisione)
9893         Rst (Nikolai Weibull)
9895 Indent scripts:
9896         Aap (Bram Moolenaar)
9897         Ch (Wayne Cheng)
9898         DocBook (Nikolai Weibull)
9899         MetaPost (Eugene Minkovskii)
9900         Objective-C (Kazunobu Kuriyama)
9901         Pyrex (Marco Barisione)
9902         Rst (Nikolai Weibull)
9903         Tcsh (Gautam Iyer)
9904         XFree86 configuration file (Nikolai Weibull)
9905         Zsh (Nikolai Weibull)
9907 Keymaps:
9908         Greek for cp1253 (Panagiotis Louridas)
9909         Hungarian (Magyar) (Laszlo Zavaleta)
9910         Persian-Iranian (Behnam Esfahbod)
9912 Message translations:
9913         Catalan (Ernest Adrogue)
9914         Russian (Vassily Ragosin)
9915         Swedish (Johan Svedberg)
9917 Menu translations:
9918         Catalan (Ernest Adrogue)
9919         Russian (Tim Alexeevsky)
9920         Swedish (Johan Svedberg)
9922 Tutor translations:
9923         Catalan (Ernest Adrogue)
9924         Russian in cp1251 (Alexey Froloff)
9925         Slovak in cp1250 and iso8859-2 (Lubos Celko)
9926         Swedish (Johan Svedberg)
9927         Korean (Kee-Won Seo)
9928         UTF-8 version of the Japanese tutor (Yasuhiro Matsumoto) Use this as
9929                 the original, create the other Japanese tutor by conversion.
9931 Included "russian.txt" help file. (Vassily Ragosin)
9933 Include Encapsulated PostScript and PDF versions of the Vim logo in the extra
9934 archive.
9936 The help highlighting finds the highlight groups and shows them in the color
9937 that is actually being used. (idea from Yakov Lerner)
9939 The big Win32 version is now compiled with Ruby interface, version 1.8.  For
9940 Python version 2.3 is used.  For Perl version 5.8 is used.
9942 The "ftdetect" directory is mentioned in the documentation.  The DOS install
9943 program creates it.
9946 Fixed                                                   *fixed-6.3*
9947 -----
9949 Test 42 failed on MS-Windows.  Set and reset 'fileformat' and 'binary' options
9950 here and there.  (Walter Briscoe)
9952 The explorer plugin didn't work for double-byte 'encoding's.
9954 Use "copy /y" in Make_bc5.mak to avoid a prompt for overwriting.
9956 Patch 6.2.001
9957 Problem:    The ":stopinsert" command doesn't have a help tag.
9958 Solution:   Add the tag. (Antoine J.  Mechelynck)
9959 Files:      runtime/doc/insert.txt, runtime/doc/tags
9961 Patch 6.2.002
9962 Problem:    When compiled with the +multi_byte feature but without +eval,
9963             displaying UTF-8 characters may cause a crash. (Karsten Hopp)
9964 Solution:   Also set the default for 'ambiwidth' when compiled without the
9965             +eval feature.
9966 Files:      src/option.c
9968 Patch 6.2.003
9969 Problem:    GTK 2: double-wide characters below 256 are not displayed
9970             correctly.
9971 Solution:   Check the cell width for characters above 127. (Yasuhiro
9972             Matsumoto)
9973 Files:      src/gui_gtk_x11.c
9975 Patch 6.2.004
9976 Problem:    With a line-Visual selection at the end of the file a "p" command
9977             puts the text one line upwards.
9978 Solution:   Detect that the last line was deleted and put forward. (Taro
9979             Muraoka)
9980 Files:      src/normal.c
9982 Patch 6.2.005
9983 Problem:    GTK: the "Find" and "Find and Replace" tools don't work. (Aschwin
9984             Marsman)
9985 Solution:   Show the dialog after creating it.  (David Necas)
9986 Files:      src/gui_gtk.c
9988 Patch 6.2.006
9989 Problem:    The Netbeans code contains an obsolete function that uses "vim61"
9990             and sets the fall-back value for $VIMRUNTIME.
9991 Solution:   Delete the obsolete function.
9992 Files:      src/main.c, src/netbeans.c, src/proto/netbeans.pro
9994 Patch 6.2.007
9995 Problem:    Listing tags for Cscope doesn't always work.
9996 Solution:   Avoid using smgs_attr(). (Sergey Khorev)
9997 Files:      src/if_cscope.c
9999 Patch 6.2.008
10000 Problem:    XIM with GTK 2: After backspacing preedit characters are wrong.
10001 Solution:   Reset the cursor position. (Yasuhiro Matsumoto)
10002 Files:      src/mbyte.c
10004 Patch 6.2.009
10005 Problem:    Win32: The self-installing executable "Full" selection only
10006             selects some of the items to install. (Salman Mohsin)
10007 Solution:   Change commas to spaces in between section numbers.
10008 Files:      nsis/gvim.nsi
10010 Patch 6.2.010
10011 Problem:    When 'virtualedit' is effective and a line starts with a
10012             multi-byte character, moving the cursor right doesn't work.
10013 Solution:   Obtain the right character to compute the column offset. (Taro
10014             Muraoka)
10015 Files:      src/charset.c
10017 Patch 6.2.011
10018 Problem:    Alpha OSF1: stat() is a macro and doesn't allow an #ifdef halfway.
10019             (Moshe Kaminsky)
10020 Solution:   Move the #ifdef outside of stat().
10021 Files:      src/os_unix.c
10023 Patch 6.2.012
10024 Problem:    May hang when polling for a character.
10025 Solution:   Break the wait loop when not waiting for a character.
10026 Files:      src/os_unix.c
10028 Patch 6.2.013 (extra)
10029 Problem:    Win32: The registry key for uninstalling GvimExt still uses "6.1".
10030 Solution:   Change the version number to "6.2". (Ajit Thakkar)
10031 Files:      src/GvimExt/GvimExt.reg
10033 Patch 6.2.014 (after 6.2.012)
10034 Problem:    XSMP doesn't work when using poll().
10035 Solution:   Use xsmp_idx instead of gpm_idx. (Neil Bird)
10036 Files:      src/os_unix.c
10038 Patch 6.2.015
10039 Problem:    The +xsmp feature is never enabled.
10040 Solution:   Move the #define for USE_XSMP to below where WANT_X11 is defined.
10041             (Alexey Froloff)
10042 Files:      src/feature.h
10044 Patch 6.2.016
10045 Problem:    Using ":scscope find" with 'cscopequickfix' does not always split
10046             the window. (Gary Johnson)
10047             Win32: ":cscope add" could make the script that contains it
10048             read-only until the corresponding ":cscope kill".
10049             Errors during ":cscope add" may not be handled properly.
10050 Solution:   When using the quickfix window may need to split the window.
10051             Avoid file handle inheritance for the script.
10052             Check for a failed connection and/or process.  (Sergey Khorev)
10053 Files:      src/ex_cmds2.c, src/if_cscope.c
10055 Patch 6.2.017
10056 Problem:    Test11 sometimes prompts the user, because a file would have been
10057             changed outside of Vim. (Antonio Colombo)
10058 Solution:   Add a FileChangedShell autocommand to avoid the prompt.
10059 Files:      src/testdir/test11.in
10061 Patch 6.2.018
10062 Problem:    When using the XSMP protocol and reading from stdin Vim may wait
10063             for a key to be pressed.
10064 Solution:   Avoid that RealWaitForChar() is used recursively.
10065 Files:      src/os_unix.c
10067 Patch 6.2.019 (lang)
10068 Problem:    Loading the Portuguese menu causes an error message.
10069 Solution:   Join two lines.  (Jose Pedro Oliveira, José de Paula)
10070 Files:      runtime/lang/menu_pt_br.vim
10072 Patch 6.2.020
10073 Problem:    The "Syntax/Set syntax only" menu item causes an error message.
10074             (Oyvind Holm)
10075 Solution:   Set the script-local variable in a function. (Benji Fisher)
10076 Files:      runtime/synmenu.vim
10078 Patch 6.2.021
10079 Problem:    The user manual section on exceptions contains small mistakes.
10080 Solution:   Give a good example of an error that could be missed and other
10081             improvements. (Servatius Brandt)
10082 Files:      runtime/doc/usr_41.txt
10084 Patch 6.2.022 (extra)
10085 Problem:    Win32: After deleting a menu item it still appears in a tear-off
10086             window.
10087 Solution:   Set the mode to zero for the deleted item. (Yasuhiro Matsumoto)
10088 Files:      src/gui_w32.c
10090 Patch 6.2.023 (extra)
10091 Problem:    Win32: Make_ivc.mak does not clean everything.
10092 Solution:   Delete more files in the clean rule. (Walter Briscoe)
10093 Files:      src/Make_ivc.mak
10095 Patch 6.2.024 (extra)
10096 Problem:    Win32: Compiler warnings for typecasts.
10097 Solution:   Use DWORD instead of WORD. (Walter Briscoe)
10098 Files:      src/gui_w32.c
10100 Patch 6.2.025
10101 Problem:    Missing prototype for sigaltstack().
10102 Solution:   Add the prototype when it is not found in a header file.
10103 Files:      src/os_unix.c
10105 Patch 6.2.026
10106 Problem:    Warning for utimes() argument.
10107 Solution:   Add a typecast.
10108 Files:      src/fileio.c
10110 Patch 6.2.027
10111 Problem:    Warning for uninitialized variable.
10112 Solution:   Set mb_l to one when not using multi-byte characters.
10113 Files:      src/message.c
10115 Patch 6.2.028
10116 Problem:    Cscope connection may kill Vim process and others.
10117 Solution:   Check for pid being larger than one. (Khorev Sergey)
10118 Files:      src/if_cscope.c
10120 Patch 6.2.029
10121 Problem:    When using the remote server functionality Vim may leak memory.
10122             (Srikanth Sankaran)
10123 Solution:   Free the result of XListProperties().
10124 Files:      src/if_xcmdsrv.c
10126 Patch 6.2.030
10127 Problem:    Mac: Warning for not being able to use precompiled header files.
10128 Solution:   Don't redefine select.  Use -no-cpp-precomp for compiling, so that
10129             function prototypes are still found.
10130 Files:      src/os_unix.c, src/osdef.sh
10132 Patch 6.2.031
10133 Problem:    The langmenu entry in the options window doesn't work. (Rodolfo
10134             Lima)
10135             With GTK 1 the ":options" command causes an error message.
10136             (Michael Naumann)
10137 Solution:   Change "lmenu" to "langmenu".  Only display the 'tbis' option for
10138             GTK 2.
10139 Files:      runtime/optwin.vim
10141 Patch 6.2.032
10142 Problem:    The lpc filetype is never recognized. (Shizhu Pan)
10143 Solution:   Check for g:lpc_syntax_for_c instead of the local variable
10144             lpc_syntax_for_c. (Benji Fisher)
10145 Files:      runtime/filetype.vim
10147 Patch 6.2.033 (extra)
10148 Problem:    Mac: Various compiler warnings.
10149 Solution:   Don't include Classic-only headers in Unix version.
10150             Remove references to several unused variables. (Ben Fowler)
10151             Fix double definition of DEFAULT_TERM.
10152             Use int instead of unsigned short for pixel values, so that the
10153             negative error values are recognized.
10154 Files:      src/gui_mac.c, src/term.c
10156 Patch 6.2.034
10157 Problem:    Mac: Compiler warning for redefining DEFAULT_TERM.
10158 Solution:   Fix double definition of DEFAULT_TERM.
10159 Files:      src/term.c
10161 Patch 6.2.035
10162 Problem:    Mac: Compiler warnings in Python interface.
10163 Solution:   Make a difference between pure Mac and Unix-Mac. (Peter Cucka)
10164 Files:      src/if_python.c
10166 Patch 6.2.036 (extra)
10167 Problem:    Mac Unix version: If foo is a directory, then ":e f<Tab>" should
10168             expand to ":e foo/" instead of ":e foo" .  (Vadim Zeitlin)
10169 Solution:   Define DONT_ADD_PATHSEP_TO_DIR only for pure Mac. (Benji Fisher)
10170 Files:      src/os_mac.h
10172 Patch 6.2.037
10173 Problem:    Win32: converting an encoding name to a codepage could result in
10174             an arbitrary number.
10175 Solution:   make encname2codepage() return zero if the encoding name doesn't
10176             contain a codepage number.
10177 Files:      src/mbyte.c
10179 Patch 6.2.038 (extra)
10180 Problem:    Warning messages when using the MingW compiler. (Bill McCarthy)
10181             Can't compile console version without +mouse feature.
10182 Solution:   Initialize variables, add parenthesis.
10183             Add an #ifdef around g_nMouseClick. (Ajit Thakkar)
10184 Files:      src/eval.c, src/os_win32.c, src/gui_w32.c, src/dosinst.c
10186 Patch 6.2.039 (extra)
10187 Problem:    More warning messages when using the MingW compiler.
10188 Solution:   Initialize variables. (Bill McCarthy)
10189 Files:      src/os_mswin.c
10191 Patch 6.2.040
10192 Problem:    FreeBSD: Crash while starting up when compiled with +xsmp feature.
10193 Solution:   Pass a non-NULL argument to IceAddConnectionWatch().
10194 Files:      src/os_unix.c
10196 Patch 6.2.041 (extra, after 6.2.033)
10197 Problem:    Mac: Compiler warnings for conversion types, missing prototype,
10198             missing return type.
10199 Solution:   Change sscanf "%hd" to "%d", the argument is an int now.  Add
10200             gui_mch_init_check() prototype.  Add "int" to termlib functions.
10201 Files:      src/gui_mac.c, src/proto/gui_mac.pro, src/termlib.c.
10203 Patch 6.2.042 (extra)
10204 Problem:    Cygwin: gcc 3.2 has an optimizer problem, sometimes causing a
10205             crash.
10206 Solution:   Add -fno-strength-reduce to the compiler arguments. (Dan Sharp)
10207 Files:      src/Make_cyg.mak
10209 Patch 6.2.043
10210 Problem:    Compiling with both netbeans and workshop doesn't work.
10211 Solution:   Move the shellRectangle() function to gui_x11.c. (Gordon Prieur)
10212 Files:      src/gui_x11.c, src/integration.c, src/netbeans.c,
10213             src/proto/netbeans.pro
10215 Patch 6.2.044
10216 Problem:    ":au filetypedetect" gives an error for a non-existing event name,
10217             but it's actually a non-existing group name. (Antoine Mechelynck)
10218 Solution:   Make the error message clearer.
10219 Files:      src/fileio.c
10221 Patch 6.2.045
10222 Problem:    Obtaining the '( mark changes the '' mark. (Gary Holloway)
10223 Solution:   Don't set the '' mark when searching for the start/end of the
10224             current sentence/paragraph.
10225 Files:      src/mark.c
10227 Patch 6.2.046
10228 Problem:    When evaluating an argument of a function throws an exception the
10229             function is still called. (Hari Krishna Dara)
10230 Solution:   Don't call the function when an exception was thrown.
10231 Files:      src/eval.c
10233 Patch 6.2.047 (extra)
10234 Problem:    Compiler warnings when using MingW. (Bill McCarthy)
10235 Solution:   Give the s_dwLastClickTime variable a type.  Initialize dwEndTime.
10236 Files:      src/os_win32.c
10238 Patch 6.2.048
10239 Problem:    The Python interface doesn't compile with Python 2.3 when
10240             dynamically loaded.
10241 Solution:   Use dll_PyObject_Malloc and dll_PyObject_Free. (Paul Moore)
10242 Files:      src/if_python.c
10244 Patch 6.2.049
10245 Problem:    Using a "-range=" argument with ":command" doesn't work and
10246             doesn't generate an error message.
10247 Solution:   Generate an error message.
10248 Files:      src/ex_docmd.c
10250 Patch 6.2.050
10251 Problem:    Test 32 didn't work on MS-Windows.
10252 Solution:   Write the temp file in Unix fileformat. (Walter Briscoe)
10253 Files:      src/testdir/test32.in
10255 Patch 6.2.051
10256 Problem:    When using "\=submatch(0)" in a ":s" command, line breaks become
10257             NUL characters.
10258 Solution:   Change NL to CR characters, so that they become line breaks.
10259 Files:      src/regexp.c
10261 Patch 6.2.052
10262 Problem:    A few messages are not translated.
10263 Solution:   Add _() to the messages. (Muraoka Taro)
10264 Files:      src/ex_cmds.c
10266 Patch 6.2.053
10267 Problem:    Prototype for bzero() doesn't match most systems.
10268 Solution:   Use "void *" instead of "char *" and "size_t" instead of "int".
10269 Files:      src/osdef1.h.in
10271 Patch 6.2.054
10272 Problem:    A double-byte character with a second byte that is a backslash
10273             causes problems inside a string.
10274 Solution:   Skip over multi-byte characters in a string properly. (Yasuhiro
10275             Matsumoto)
10276 Files:      src/eval.c
10278 Patch 6.2.055
10279 Problem:    Using col('.') from CTRL-O in Insert mode does not return the
10280             correct value for multi-byte characters.
10281 Solution:   Correct the cursor position when it is necessary, move to the
10282             first byte of a multi-byte character. (Yasuhiro Matsumoto)
10283 Files:      src/edit.c
10285 Patch 6.2.056 (extra)
10286 Problem:    Building with Sniff++ doesn't work.
10287 Solution:   Use the multi-threaded libc when needed. (Holger Ditting)
10288 Files:      src/Make_mvc.mak
10290 Patch 6.2.057 (extra)
10291 Problem:    Mac: With -DMACOS_X putenv() is defined twice, it is in a system
10292             library.  Get a warning for redefining OK.  Unused variables in
10293             os_mac.c
10294 Solution:   Define HAVE_PUTENV.  Undefine OK after including curses.h.
10295             Remove declarations for unused variables.
10296 Files:      src/os_mac.c, src/os_mac.h, src/vim.h
10298 Patch 6.2.058
10299 Problem:    When 'autochdir' is set ":bnext" to a buffer without a name causes
10300             a crash.
10301 Solution:   Don't call vim_chdirfile() when the file name is NULL. (Taro
10302             Muraoka)
10303 Files:      src/buffer.c
10305 Patch 6.2.059
10306 Problem:    When 'scrolloff' is a large number and listing completion results
10307             on the command line, then executing a command that jumps close to
10308             where the cursor was before, part of the screen is not updated.
10309             (Yakov Lerner)
10310 Solution:   Don't skip redrawing part of the window when it was scrolled.
10311 Files:      src/screen.c
10313 Patch 6.2.060 (extra)
10314 Problem:    Win32: When 'encoding' is set to "iso-8859-7" copy/paste to/from
10315             the clipboard gives a lalloc(0) error. (Kriton Kyrimis)
10316 Solution:   When the string length is zero allocate one byte.  Also fix that
10317             when the length of the Unicode text is zero (conversion from
10318             'encoding' to UCS-2 was not possible) the normal text is used.
10319 Files:      src/os_mswin.c
10321 Patch 6.2.061
10322 Problem:    GUI: Using the left mouse button with the shift key should work
10323             like "*" but it scrolls instead. (Martin Beller)
10324 Solution:   Don't recognize an rxvt scroll wheel event when using the GUI.
10325 Files:      src/term.c
10327 Patch 6.2.062
10328 Problem:    When one buffer uses a syntax with "containedin" and another
10329             buffer does not, redrawing depends on what the current buffer is.
10330             (Brett Pershing Stahlman)
10331 Solution:   Use "syn_buf" instead of "curbuf" to get the b_syn_containedin
10332             flag.
10333 Files:      src/syntax.c
10335 Patch 6.2.063
10336 Problem:    When using custom completion end up with no matches.
10337 Solution:   Make cmd_numfiles and cmd_files local to completion to avoid that
10338             they are overwritten when ExpandOne() is called recursively by
10339             f_glob().
10340 Files:      src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/proto/ex_getln.pro,
10341             src/misc1.c, src/structs.h, src/tag.c
10343 Patch 6.2.064
10344 Problem:    resolve() only handles one symbolic link, need to repeat it to
10345             resolve all of them.  Then need to simplify the file name.
10346 Solution:   Make resolve() resolve all symbolic links and simplify the result.
10347             Add simplify() to just simplify a file name.  Fix that test49
10348             doesn't work if /tmp is a symbolic link.  (Servatius Brandt)
10349 Files:      runtime/doc/eval.txt, src/eval.c, src/tag.c,
10350             src/testdir/test49.vim
10352 Patch 6.2.065
10353 Problem:    ":windo 123" only updates other windows when entering them.
10354             (Walter Briscoe)
10355 Solution:   Update the topline before going to the next window.
10356 Files:      src/ex_cmds2.c
10358 Patch 6.2.066 (extra)
10359 Problem:    Ruby interface doesn't work with Ruby 1.8.0.
10360 Solution:   Change "defout" to "stdout". (Aron Grifis)
10361             Change dynamic loading. (Taro Muraoka)
10362 Files:      src/if_ruby.c, src/Make_mvc.mak
10364 Patch 6.2.067
10365 Problem:    When searching for a string that starts with a composing character
10366             the command line isn't drawn properly.
10367 Solution:   Don't count the space to draw the composing character on and
10368             adjust the cursor column after drawing the string.
10369 Files:      src/message.c
10371 Patch 6.2.068
10372 Problem:    Events for the netbeans interface that include a file name with
10373             special characters don't work properly.
10374 Solution:   Use nb_quote() on the file name. (Sergey Khorev)
10375 Files:      src/netbeans.c
10377 Patch 6.2.069 (after 6.2.064)
10378 Problem:    Unused variables "limit" and "new_st" and unused label "fail" in
10379             some situation. (Bill McCarthy)
10380 Solution:   Put the declarations inside an #ifdef. (Servatius Brandt)
10381 Files:      src/eval.c, src/tag.c
10383 Patch 6.2.070 (after 6.2.069)
10384 Problem:    Still unused variable "new_st". (Bill McCarthy)
10385 Solution:   Move the declaration to the right block this time.
10386 Files:      src/tag.c
10388 Patch 6.2.071
10389 Problem:    'statusline' can only contain 50 % items. (Antony Scriven)
10390 Solution:   Allow 80 items and mention it in the docs.
10391 Files:      runtime/doc/option.txt, src/vim.h
10393 Patch 6.2.072
10394 Problem:    When using expression folding, foldexpr() mostly returns -1 for
10395             the previous line, which makes it difficult to write a fold
10396             expression.
10397 Solution:   Make the level of the previous line available while still looking
10398             for the end of a fold.
10399 Files:      src/fold.c
10401 Patch 6.2.073
10402 Problem:    When adding detection of a specific filetype for a plugin you need
10403             to edit "filetype.vim".
10404 Solution:   Source files from the "ftdetect" directory, so that a filetype
10405             detection plugin only needs to be dropped in a directory.
10406 Files:      runtime/doc/filetype.txt, runtime/doc/usr_05.txt,
10407             runtime/doc/usr_41.txt, runtime/filetype.vim
10409 Patch 6.2.074
10410 Problem:    Warnings when compiling the Python interface. (Ajit Thakkar)
10411 Solution:   Use ANSI function declarations.
10412 Files:      src/if_python.c
10414 Patch 6.2.075
10415 Problem:    When the temp file for writing viminfo can't be used "NULL"
10416             appears in the error message. (Ben Lavender)
10417 Solution:   Print the original file name when there is no temp file name.
10418 Files:      src/ex_cmds.c
10420 Patch 6.2.076
10421 Problem:    The tags listed for cscope are in the wrong order. (Johannes
10422             Stezenbach)
10423 Solution:   Remove the reordering of tags for the current file. (Sergey
10424             Khorev)
10425 Files:      src/if_cscope.c
10427 Patch 6.2.077
10428 Problem:    When a user function specifies custom completion, the function
10429             gets a zero argument instead of an empty string when there is no
10430             word before the cursor. (Preben Guldberg)
10431 Solution:   Don't convert an empty string to a zero.
10432 Files:      src/eval.c
10434 Patch 6.2.078
10435 Problem:    "make test" doesn't work if Vim wasn't compiled yet. (Ed Avis)
10436 Solution:   Build Vim before running the tests.
10437 Files:      src/Makefile
10439 Patch 6.2.079
10440 Problem:    ":w ++enc=utf-8 !cmd" doesn't work.
10441 Solution:   Check for the "++" argument before the "!".
10442 Files:      src/ex_docmd.c
10444 Patch 6.2.080
10445 Problem:    When 't_ti' is not empty but doesn't swap screens, using "ZZ" in
10446             an unmodified file doesn't clear the last line.
10447 Solution:   Call msg_clr_eos() when needed. (Michael Schroeder)
10448 Files:      src/os_unix.c
10450 Patch 6.2.081
10451 Problem:    Problem when using a long multibyte string for the statusline.
10452 Solution:   Use the right pointer to get the cell size. (Taro Muraoka)
10453 Files:      src/buffer.c
10455 Patch 6.2.082
10456 Problem:    Can't compile with Perl 5.8.1.
10457 Solution:   Rename "e_number" to "e_number_exp". (Sascha Blank)
10458 Files:      src/digraph.c, src/globals.h
10460 Patch 6.2.083
10461 Problem:    When a compiler uses ^^^^ to mark a word the information is not
10462             visible in the quickfix window. (Srikanth Sankaran)
10463 Solution:   Don't remove the indent for a line that is not recognized as an
10464             error message.
10465 Files:      src/quickfix.c
10467 Patch 6.2.084
10468 Problem:    "g_" in Visual mode always goes to the character after the line.
10469             (Jean-Rene David)
10470 Solution:   Ignore the NUL at the end of the line.
10471 Files:      src/normal.c
10473 Patch 6.2.085
10474 Problem:    ":verbose set ts" doesn't say an option was set with a "-c" or
10475             "--cmd" argument.
10476 Solution:   Remember the option was set from a Vim argument.
10477 Files:      src/main.c, src/ex_cmds2.c, src/vim.h
10479 Patch 6.2.086
10480 Problem:    "{" and "}" stop inside a closed fold.
10481 Solution:   Only stop once inside a closed fold. (Stephen Riehm)
10482 Files:      src/search.c
10484 Patch 6.2.087
10485 Problem:    CTRL-^ doesn't use the 'confirm' option.  Same problem with
10486             ":bnext". (Yakov Lerner)
10487 Solution:   Put up a dialog for a changed file when 'confirm' is set in more
10488             situations.
10489 Files:      src/buffer.c, src/ex_cmds.c
10491 Patch 6.2.088
10492 Problem:    When 'sidescrolloff' is set 'showmatch' doesn't work correctly if
10493             the match is less than 'sidescrolloff' off from the side of the
10494             window.  (Roland Stahn)
10495 Solution:   Set 'sidescrolloff' to zero while displaying the match.
10496 Files:      src/search.c
10498 Patch 6.2.089
10499 Problem:    ":set isk+=" adds a comma. (Mark Waggoner)
10500 Solution:   Don't add a comma when the added value is empty.
10501 Files:      src/option.c
10503 Patch 6.2.090 (extra)
10504 Problem:    Win32: MingW compiler complains about #pragmas. (Bill McCarthy)
10505 Solution:   Put an #ifdef around the #pragmas.
10506 Files:      src/os_win32.c
10508 Patch 6.2.091
10509 Problem:    When an autocommand is triggered when a file is dropped on Vim and
10510             it produces output, messages from a following command may be
10511             scrolled unexpectedly. (David Rennalls)
10512 Solution:   Save and restore msg_scroll in handle_drop().
10513 Files:      src/ex_docmd.c
10515 Patch 6.2.092
10516 Problem:    Invalid items appear in the help file tags. (Antonio Colombo)
10517 Solution:   Only accept tags with white space before the first "*".
10518 Files:      runtime/doc/doctags.c, src/ex_cmds.c
10520 Patch 6.2.093
10521 Problem:    ":nnoremenu" also defines menu for Visual mode. (Klaus Bosau)
10522 Solution:   Check the second command character for an "o", not the third.
10523 Files:      src/menu.c
10525 Patch 6.2.094
10526 Problem:    Can't compile with GTK and tiny features.
10527 Solution:   Include handle_drop() and vim_chdirfile() when FEAT_DND is defined.
10528             Do not try to split the window.
10529 Files:      src/ex_docmd.c, src/misc2.c
10531 Patch 6.2.095
10532 Problem:    The message "Cannot go to buffer x" is confusing for ":buf 6".
10533             (Frans Englich)
10534 Solution:   Make it "Buffer x does not exist".
10535 Files:      src/buffer.c
10537 Patch 6.2.096
10538 Problem:    Win32: ":let @* = ''" put a newline on the clipboard. (Klaus
10539             Bosau)
10540 Solution:   Put zero bytes on the clipboard for an empty string.
10541 Files:      src/ops.c
10543 Patch 6.2.097
10544 Problem:    Setting or resetting 'insertmode' in a BufEnter autocommand
10545             doesn't always have immediate effect. (Nagger)
10546 Solution:   When 'insertmode' is set, set need_start_insertmode, when it's
10547             reset set stop_insert_mode.
10548 Files:      src/option.c
10550 Patch 6.2.098 (after 6.2.097)
10551 Problem:    Can't build Vim with tiny features. (Christian J. Robinson)
10552 Solution:   Declare stop_insert_mode always.
10553 Files:      src/edit.c, src/globals.h
10555 Patch 6.2.099 (extra)
10556 Problem:    Test 49 fails. (Mikolaj Machowski)
10557 Solution:   The Polish translation must not change "E116" to "R116".
10558 Files:      src/po/pl.po
10560 Patch 6.2.100
10561 Problem:    "make proto" fails when compiled with the Perl interface.
10562 Solution:   Remove "-fno.*" from PERL_CFLAGS, cproto sees it as its option.
10563 Files:      src/auto/configure, src/configure.in
10565 Patch 6.2.101
10566 Problem:    When using syntax folding, opening a file slows down a lot when
10567             it's size increases by only 20%. (Gary Johnson)
10568 Solution:   The array with cached syntax states is leaking entries.  After
10569             cleaning up the list obtain the current entry again.
10570 Files:      src/syntax.c
10572 Patch 6.2.102
10573 Problem:    The macros equal() and CR conflict with a Carbon header file.
10574 Solution:   Rename equal() to equalpos().  Rename CR to CAR.
10575             Do this in the non-extra files only.
10576 Files:      src/ascii.h, src/buffer.c, src/charset.c, src/edit.c, src/eval.c,
10577             src/ex_cmds.c, src/ex_cmds2.c, src/ex_getln.c, src/fileio.c,
10578             src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk_x11.c,
10579             src/gui_motif.c, src/macros.h, src/mark.c, src/message.c,
10580             src/misc1.c, src/misc2.c, src/normal.c, src/ops.c, src/os_unix.c,
10581             src/regexp.c, src/search.c, src/ui.c, src/workshop.c
10583 Patch 6.2.103 (extra)
10584 Problem:    The macros equal() and CR conflict with a Carbon header file.
10585 Solution:   Rename equal() to equalpos().  Rename CR to CAR.
10586             Do this in the extra files only.
10587 Files:      src/gui_photon.c, src/gui_w48.c
10589 Patch 6.2.104
10590 Problem:    Unmatched braces in the table with options.
10591 Solution:   Move the "}," outside of the #ifdef. (Yakov Lerner)
10592 Files:      src/option.c
10594 Patch 6.2.105
10595 Problem:    When the cursor is past the end of the line when calling
10596             get_c_indent() a crash might occur.
10597 Solution:   Don't look past the end of the line. (NJ Verenini)
10598 Files:      src/misc1.c
10600 Patch 6.2.106
10601 Problem:    Tag searching gets stuck on a very long line in the tags file.
10602 Solution:   When skipping back to search the first matching tag remember the
10603             offset where searching started looking for a line break.
10604 Files:      src/tag.c
10606 Patch 6.2.107 (extra)
10607 Problem:    The NetBeans interface cannot be used on Win32.
10608 Solution:   Add support for the NetBeans for Win32.  Add support for reading
10609             XPM files on Win32.  Also fixes that a sign icon with a space in
10610             the file name did not work through the NetBeans interface.
10611             (Sergey Khorev)
10612             Also: avoid repeating error messages when the connection is lost.
10613 Files:      Makefile, runtime/doc/netbeans.txt, src/Make_bc5.mak,
10614             src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
10615             src/bigvim.bat, src/feature.h, src/gui_beval.c, src/gui_beval.h,
10616             src/gui_w32.c, src/gui_w48.c, src/menu.c, src/nbdebug.c,
10617             src/nbdebug.h, src/netbeans.c, src/os_mswin.c, src/os_win32.h,
10618             src/proto/gui_beval.pro, src/proto/gui_w32.pro,
10619             src/proto/netbeans.pro, src/proto.h, src/version.c, src/vim.h,
10620             src/xpm_w32.c, src/xpm_w32.h
10622 Patch 6.2.108
10623 Problem:    Crash when giving a message about ignoring case in a tag. (Manfred
10624             Kuehn)
10625 Solution:   Use a longer buffer for the message.
10626 Files:      src/tag.c
10628 Patch 6.2.109
10629 Problem:    Compiler warnings with various Amiga compilers.
10630 Solution:   Add typecast, prototypes, et al. that are also useful for other
10631             systems.  (Flavio Stanchina)
10632 Files:      src/eval.c, src/ops.c
10634 Patch 6.2.110
10635 Problem:    When $LANG includes the encoding, a menu without an encoding name
10636             is not found.
10637 Solution:   Also look for a menu file without any encoding.
10638 Files:      runtime/menu.vim
10640 Patch 6.2.111
10641 Problem:    Encoding "cp1251" is not recognized.
10642 Solution:   Add "cp1251" to the table of encodings. (Alexey Froloff)
10643 Files:      src/mbyte.c
10645 Patch 6.2.112
10646 Problem:    After applying patches test32 fails. (Antonio Colombo)
10647 Solution:   Have "make clean" in the testdir delete *.rej and *.orig files.
10648             Use this when doing "make clean" in the src directory.
10649 Files:      src/Makefile, src/testdir/Makefile
10651 Patch 6.2.113
10652 Problem:    Using ":startinsert" after "$" works like "a" instead of "i".
10653             (Ajit Thakkar)
10654 Solution:   Reset "w_curswant" for ":startinsert" and reset o_eol in edit().
10655 Files:      src/edit.c, src/ex_docmd.c
10657 Patch 6.2.114
10658 Problem:    When stdout is piped through "tee", the size of the screen may not
10659             be correct.
10660 Solution:   Use stdin instead of stdout for ioctl() when stdin is a tty and
10661             stdout isn't.
10662 Files:      src/os_unix.c
10664 Patch 6.2.115 (extra)
10665 Problem:    Compiler warnings with various Amiga compilers.
10666 Solution:   Add typecast, prototypes, et al.  Those changes that are
10667             Amiga-specific. (Flavio Stanchina)
10668 Files:      src/fileio.c, src/memfile.c, src/os_amiga.c, src/os_amiga.h,
10669             src/vim.h
10671 Patch 6.2.116 (extra)
10672 Problem:    German keyboard with Numlock set different from system startup
10673             causes problems.
10674 Solution:   Ignore keys with code 0xff. (Helmut Stiegler)
10675 Files:      src/gui_w48.c
10677 Patch 6.2.117
10678 Problem:    Breakpoints in loops of sourced files and functions are not
10679             detected. (Hari Krishna Dara)
10680 Solution:   Check for breakpoints when using lines that were previously read.
10681             (Servatius Brandt)
10682 Files:      src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/proto/eval.pro,
10683             src/proto/ex_cmds2.pro
10685 Patch 6.2.118 (extra)
10686 Problem:    Mac: Compiling is done in a non-standard way.
10687 Solution:   Use the Unix method for Mac OS X, with autoconf.  Add "CARBONGUI"
10688             to Makefile and configure. (Eric Kow)
10689             Move a few prototypes from os_mac.pro to gui_mac.pro.
10690 Files:      src/Makefile, src/auto/configure, src/configure.in,
10691             src/config.mk.in, src/gui_mac.c, src/os_mac.h, src/os_macosx.c,
10692             src/proto/gui_mac.pro, src/proto/os_mac.pro,
10693             src/infplist.xml, src/vim.h
10695 Patch 6.2.119 (after 6.2.107)
10696 Problem:    When packing the MS-Windows archives a few files are missing.
10697             (Guopeng Wen)
10698 Solution:   Add gui_beval.* to the list of generic source files.
10699 Files:      Makefile
10701 Patch 6.2.120
10702 Problem:    Win32 GUI: The console dialogs are not supported on MS-Windows,
10703             disabling the 'c' flag of 'guioptions'. (Servatius Brandt)
10704 Solution:   Define FEAT_CON_DIALOG also for GUI-only builds.
10705 Files:      src/feature.h
10707 Patch 6.2.121 (after 6.2.118)
10708 Problem:    Not all make programs support "+=". (Charles Campbell)
10709 Solution:   Use a normal assignment.
10710 Files:      src/Makefile
10712 Patch 6.2.122 (after 6.2.119)
10713 Problem:    Not all shells can expand [^~].  File missing.  (Guopeng Wen)
10714 Solution:   Use a simpler pattern.  Add the Aap recipe for the maze program
10715             and a clean version of the source code.
10716 Files:      Makefile, runtime/macros/maze/Makefile,
10717             runtime/macros/maze/README.txt, runtime/macros/maze/main.aap,
10718             runtime/macros/maze/mazeclean.c
10720 Patch 6.2.123 (after 6.2.118)
10721 Problem:    Running configure fails. (Tony Leneis)
10722 Solution:   Change "==" to "=" for a test.
10723 Files:      src/auto/configure, src/configure.in
10725 Patch 6.2.124 (after 6.2.121)(extra)
10726 Problem:    Mac: Recursive use of M4FLAGS causes problems.  When running Vim
10727             directly it can't find the runtime files.  (Emily Jackson)
10728             Using GNU constructs causes warnings with other make programs.
10729             (Ronald Schild)
10730 Solution:   Use another name for the M4FLAGS variable.
10731             Don't remove "Vim.app" from the path.
10732             Update the explanation for compiling on the Mac. (Eric Kow)
10733             Don't use $(shell ) and $(addprefix ).
10734 Files:      src/INSTALLmac.txt, src/Makefile, src/misc1.c
10736 Patch 6.2.125 (after 6.2.107)
10737 Problem:    The "winsock2.h" file isn't always available.
10738 Solution:   Don't include this header file.
10739 Files:      src/netbeans.c
10741 Patch 6.2.126
10742 Problem:    Typing CTRL-C at a confirm() prompt doesn't throw an exception.
10743 Solution:   Reset "mapped_ctrl_c" in get_keystroke(), so that "got_int" is set
10744             in _OnChar().
10745 Files:      src/misc1.c
10747 Patch 6.2.127 (extra)
10748 Problem:    Win32 console: Typing CTRL-C doesn't throw an exception.
10749 Solution:   Set got_int immediately when CTRL-C is typed, don't wait for
10750             mch_breakcheck() being called.
10751 Files:      src/os_win32.c
10753 Patch 6.2.128 (after 6.2.118)
10754 Problem:    src/auto/configure is not consistent with src/configure.in.
10755 Solution:   Use the newly generated configure script.
10756 Files:      src/auto/configure
10758 Patch 6.2.129
10759 Problem:    When 'number' is set 'wrapmargin' does not work Vi-compatible.
10760             (Yasuhiro Matsumoto)
10761 Solution:   Reduce the textwidth when 'number' is set.  Also for 'foldcolumn'
10762             and similar things.
10763 Files:      src/edit.c
10765 Patch 6.2.130 (extra)
10766 Problem:    Win32 console: When 'restorescreen' is not set exiting Vim causes
10767             the screen to be cleared. (Michael A. Mangino)
10768 Solution:   Don't clear the screen when exiting and 'restorescreen' isn't set.
10769 Files:      src/os_win32.c
10771 Patch 6.2.131 (extra)
10772 Problem:    Win32: Font handles are leaked.
10773 Solution:   Free italic, bold and bold-italic handles before overwriting them.
10774             (Michael Wookey)
10775 Files:      src/gui_w48.c
10777 Patch 6.2.132 (extra)
10778 Problem:    Win32: console version doesn't work on latest Windows Server 2003.
10779 Solution:   Copy 12000 instead of 15000 cells at a time to avoid running out
10780             of memory.
10781 Files:      src/os_win32.c
10783 Patch 6.2.133
10784 Problem:    When starting the GUI a bogus error message about 'imactivatekey'
10785             may be given.
10786 Solution:   Only check the value of 'imactivatekey' when the GUI is running.
10787 Files:      src/gui.c, src/option.c
10789 Patch 6.2.134 (extra)
10790 Problem:    Win32: When scrolling parts of the window are redrawn when this
10791             isn't necessary.
10792 Solution:   Only invalidate parts of the window when they are obscured by
10793             other windows. (Michael Wookey)
10794 Files:      src/gui_w48.c
10796 Patch 6.2.135
10797 Problem:    An item <> in the ":command" argument is interpreted as <args>.
10798 Solution:   Avoid that <> is recognized as <args>.
10799 Files:      src/ex_docmd.c
10801 Patch 6.2.136
10802 Problem:    ":e ++enc=latin1 newfile" doesn't set 'fenc' when the file doesn't
10803             exist.  (Miroslaw Dobrzanski-Neumann)
10804 Solution:   Set 'fileencoding' to the specified encoding when editing a file
10805             that does not exist.
10806 Files:      src/fileio.c
10808 Patch 6.2.137
10809 Problem:    "d:cmd<CR>" cannot be repeated with ".".  Breaks repeating "d%"
10810             when using the matchit plugin.
10811 Solution:   Store the command to be repeated.  This is restricted to
10812             single-line commands.
10813 Files:      src/ex_docmd.c, src/globals.h, src/normal.c, src/vim.h
10815 Patch 6.2.138 (extra)
10816 Problem:    Compilation problem on VMS with dynamic buffer on the stack.
10817 Solution:   Read one byte less than the size of the buffer, so that we can
10818             check for the string length without an extra buffer.
10819 Files:      src/os_vms.c
10821 Patch 6.2.139
10822 Problem:    Code is repeated in the two Perl files.
10823 Solution:   Move common code from if_perl.xs and if_perlsfio.c to vim.h.
10824             Also fix a problem with generating prototypes.
10825 Files:      src/if_perl.xs, src/if_perlsfio.c, src/vim.h
10827 Patch 6.2.140 (after 6.2.121)
10828 Problem:    Mac: Compiling with Python and Perl doesn't work.
10829 Solution:   Adjust the configure check for Python to use "-framework Python"
10830             for Python 2.3 on Mac OS/X.
10831             Move "-ldl" after "DynaLoader.a" in the link command.
10832             Change "perllibs" to "PERL_LIBS".
10833 Files:      src/auto/configure, src/configure.in, src/config.mk.in
10835 Patch 6.2.141 (extra)
10836 Problem:    Mac: The b_FSSpec field is sometimes unused.
10837 Solution:   Change the #ifdef to FEAT_CW_EDITOR and defined it in feature.h
10838 Files:      src/fileio.c, src/gui_mac.c, src/structs.h, src/feature.h
10840 Patch 6.2.142 (after 6.2.124)
10841 Problem:    Mac: building without GUI through configure doesn't work.
10842             When the system is slow, unpacking the resource file takes too
10843             long.
10844 Solution:   Don't always define FEAT_GUI_MAC when MACOS is defined, define it
10845             in the Makefile.
10846             Add a configure option to skip Darwin detection.
10847             Use a Python script to unpack the resources to avoid a race
10848             condition. (Taro Muraoka)
10849 Files:      Makefile, src/Makefile, src/auto/configure, src/configure.in,
10850             src/dehqx.py, src/vim.h
10852 Patch 6.2.143
10853 Problem:    Using "K" on Visually selected text doesn't work if it ends in
10854             a multi-byte character.
10855 Solution:   Include all the bytes of the last character. (Taro Muraoka)
10856 Files:      src/normal.c
10858 Patch 6.2.144
10859 Problem:    When "g:html_use_css" is set the HTML header generated by the
10860             2html script is wrong.
10861 Solution:   Add the header after adding HREF for links.
10862             Also use ":normal!" instead of ":normal" to avoid mappings
10863             getting in the way.
10864 Files:      runtime/syntax/2html.vim
10866 Patch 6.2.145 (after 6.2.139)
10867 Problem:    Undefining "bool" doesn't work for older systems. (Wojtek Pilorz)
10868 Solution:   Only undefine "bool" on Mac OS.
10869 Files:      src/vim.h
10871 Patch 6.2.146
10872 Problem:    On some systems the prototype for iconv() is wrong, causing a
10873             warning message.
10874 Solution:   Use a cast (void *) to avoid the warning. (Charles Campbell)
10875 Files:      src/fileio.c, src/mbyte.c
10877 Patch 6.2.147
10878 Problem:    ":s/pat/\=col('.')" always replaces with "1".
10879 Solution:   Set the cursor to the start of the match before substituting.
10880             (Helmut Stiegler)
10881 Files:      src/ex_cmds.c
10883 Patch 6.2.148
10884 Problem:    Can't break an Insert into several undoable parts.
10885 Solution:   Add the CTRL-G u command.
10886 Files:      runtime/doc/insert.txt, src/edit.c
10888 Patch 6.2.149
10889 Problem:    When the cursor is on a line past 21,474,748 the indicated
10890             percentage of the position is invalid.  With that many lines
10891             "100%" causes a negative cursor line number, resulting in a crash.
10892             (Daniel Goujot)
10893 Solution:   Divide by 100 instead of multiplying.  Avoid overflow when
10894             computing the line number for "100%".
10895 Files:      src/buffer.c, src/ex_cmds2.c, src/normal.c
10897 Patch 6.2.150
10898 Problem:    When doing "vim - < file" lines are broken at NUL chars.
10899             (Daniel Goujot)
10900 Solution:   Change NL characters back to NUL when reading from the temp
10901             buffer.
10902 Files:      src/fileio.c
10904 Patch 6.2.151
10905 Problem:    When doing "vim --remote +startinsert file" some commands are
10906             inserted as text. (Klaus Bosau)
10907 Solution:   Put all the init commands in one Ex line, not using a <CR>, so
10908             that Insert mode isn't started too early.
10909 Files:      src/main.c
10911 Patch 6.2.152
10912 Problem:    The cursor() function doesn't reset the column offset for
10913             'virtualedit'.
10914 Solution:   Reset the offset to zero. (Helmut Stiegler)
10915 Files:      src/eval.c
10917 Patch 6.2.153
10918 Problem:    Win32: ":lang german" doesn't use German messages.
10919 Solution:   Add a table to translate the Win32 language names to two-letter
10920             language codes.
10921 Files:      src/ex_cmds2.c
10923 Patch 6.2.154
10924 Problem:    Python bails out when giving a warning message. (Eugene
10925             Minkovskii)
10926 Solution:   Set sys.argv[] to an empty string.
10927 Files:      src/if_python.c
10929 Patch 6.2.155
10930 Problem:    Win32: Using ":tjump www" in a help file gives two results.
10931             (Dave Roberts)
10932 Solution:   Ignore differences between slashes and backslashes when checking
10933             for identical tag matches.
10934 Files:      src/tag.c
10936 Patch 6.2.156 (after 6.2.125)
10937 Problem:    Win32: Netbeans fails to build, EINTR is not defined.
10938 Solution:   Redefine EINTR to WSAEINTR. (Mike Williams)
10939 Files:      src/netbeans.c
10941 Patch 6.2.157
10942 Problem:    Using "%p" in 'errorformat' gives a column number that is too
10943             high.
10944 Solution:   Set the flag to use the number as a virtual column.  (Lefteris
10945             Koutsoloukas)
10946 Files:      src/quickfix.c
10948 Patch 6.2.158
10949 Problem:    The sed command on Solaris and HPUX doesn't work for a line that
10950             doesn't end in a newline.
10951 Solution:   Add a newline when feeding text to sed. (Mark Waggoner)
10952 Files:      src/configure.in, src/auto/configure
10954 Patch 6.2.159
10955 Problem:    When using expression folding and 'foldopen' is "undo" an undo
10956             command doesn't always open the fold.
10957 Solution:   Save and restore the KeyTyped variable when evaluating 'foldexpr'.
10958             (Taro Muraoka)
10959 Files:      src/fold.c
10961 Patch 6.2.160
10962 Problem:    When 'virtualedit' is "all" and 'selection is "exclusive",
10963             selecting a double-width character below a single-width character
10964             may cause a crash.
10965 Solution:   Avoid overflow on unsigned integer decrement. (Taro Muraoka)
10966 Files:      src/normal.c
10968 Patch 6.2.161 (extra)
10969 Problem:    VMS: Missing header file.  Reading input busy loops.
10970 Solution:   Include termdef.h.  Avoid the use of a wait function in
10971             vms_read().  (Frank Ries)
10972 Files:      src/os_unix.h, src/os_vms.c
10974 Patch 6.2.162
10975 Problem:    ":redraw" doesn't always display the text that includes the cursor
10976             position, e.g. after ":call cursor(1, 0)". (Eugene Minkovskii)
10977 Solution:   Call update_topline() before redrawing.
10978 Files:      src/ex_docmd.c
10980 Patch 6.2.163
10981 Problem:    "make install" may also copy AAPDIR directories.
10982 Solution:   Delete AAPDIR directories, just like CVS directories.
10983 Files:      src/Makefile
10985 Patch 6.2.164 (after 6.2.144)
10986 Problem:    When "g:html_use_css" is set the HTML header generated by the
10987             2html script is still wrong.
10988 Solution:   Search for a string instead of jumping to a fixed line number.
10989             Go to the start of the line before inserting the header.
10990             (Jess Thrysoee)
10991 Files:      runtime/syntax/2html.vim
10993 Patch 6.2.165
10994 Problem:    The configure checks hang when using autoconf 2.57.
10995 Solution:   Invoke AC_PROGRAM_EGREP to set $EGREP. (Aron Griffis)
10996 Files:      src/auto/configure, src/configure.in
10998 Patch 6.2.166
10999 Problem:    When $GZIP contains "-N" editing compressed files doesn't work
11000             properly.
11001 Solution:   Add "-n" to "gzip -d" to avoid restoring the file name. (Oyvind
11002             Holm)
11003 Files:      runtime/plugin/gzip.vim
11005 Patch 6.2.167
11006 Problem:    The Python interface leaks memory when assigning lines to a
11007             buffer. (Sergey Khorev)
11008 Solution:   Do not copy the line when calling ml_replace().
11009 Files:      src/if_python.c
11011 Patch 6.2.168
11012 Problem:    Python interface: There is no way to get the indices from a range
11013             object.
11014 Solution:   Add the "start" and "end" attributes. (Maurice S. Barnum)
11015 Files:      src/if_python.c, runtime/doc/if_pyth.txt
11017 Patch 6.2.169
11018 Problem:    The prototype for _Xmblen() appears in a recent XFree86 header
11019             file, causing a warning for our prototype. (Hisashi T Fujinaka)
11020 Solution:   Move the prototype to an osdef file, so that it's filtered out.
11021 Files:      src/mbyte.c, src/osdef2.h.in
11023 Patch 6.2.170
11024 Problem:    When using Sun WorkShop the current directory isn't changed to
11025             where the file is.
11026 Solution:   Set the 'autochdir' option when using WorkShop.  And avoid using
11027             the basename when 'autochdir' is not set.
11028 Files:      src/gui_x11.c, src/ex_cmds.c
11030 Patch 6.2.171 (after 6.2.163)
11031 Problem:    The "-or" argument of "find" doesn't work for SysV systems.
11032 Solution:   Use "-o" instead. (Gordon Prieur)
11033 Files:      src/Makefile
11035 Patch 6.2.172 (after 6.2.169)
11036 Problem:    The prototype for _Xmblen() still causes trouble.
11037 Solution:   Include the X11 header file that defines the prototype.
11038 Files:      src/osdef2.h.in, src/osdef.sh
11040 Patch 6.2.173 (extra)
11041 Problem:    Win32: Ruby interface doesn't work with Ruby 1.8.0 for other
11042             compilers than MSVC.
11043 Solution:   Fix the BC5, Cygwin and Mingw makefiles. (Dan Sharp)
11044 Files:      src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak
11046 Patch 6.2.174
11047 Problem:    After the ":intro" message only a mouse click in the last line
11048             gets past the hit-return prompt.
11049 Solution:   Accept a click at or below the hit-return prompt.
11050 Files:      src/gui.c, src/message.c
11052 Patch 6.2.175
11053 Problem:    Changing 'backupext' in a *WritePre autocommand doesn't work.
11054             (William Natter)
11055 Solution:   Move the use of p_bex to after executing the *WritePre
11056             autocommands.  Also avoids reading allocated memory after freeing.
11057 Files:      src/fileio.c
11059 Patch 6.2.176
11060 Problem:    Accented characters in translated help files are not handled
11061             correctly. (Fabien Vayssiere)
11062 Solution:   Include "192-255" in 'iskeyword' for the help window.
11063 Files:      src/ex_cmds.c
11065 Patch 6.2.177 (extra)
11066 Problem:    VisVim: Opening a file with a space in the name doesn't work. (Rob
11067             Retter)  Arbitrary commands are being executed. (Neil Bird)
11068 Solution:   Put a backslash in front of every space in the file name.
11069             (Gerard Blais)  Terminate the CTRL-\ CTRL-N command with a NUL.
11070 Files:      src/VisVim/Commands.cpp, src/VisVim/VisVim.rc
11072 Patch 6.2.178
11073 Problem:    People who don't know how to exit Vim try pressing CTRL-C.
11074 Solution:   Give a message how to exit Vim when CTRL-C is pressed and it
11075             doesn't cancel anything.
11076 Files:      src/normal.c
11078 Patch 6.2.179 (extra)
11079 Problem:    The en_gb messages file isn't found on case sensitive systems.
11080 Solution:   Rename en_gb to en_GB. (Mike Williams)
11081 Files:      src/po/en_gb.po, src/po/en_GB.po, src/po/Make_ming.mak,
11082             src/po/Make_mvc.mak, src/po/Makefile, src/po/README_mvc.txt
11084 Patch 6.2.180
11085 Problem:    Compiling with GTK2 on Win32 doesn't work.
11086 Solution:   Include gdkwin32.h instead of gdkx.h. (Srinath Avadhanula)
11087 Files:      src/gui_gtk.c, src/gui_gtk_f.c, src/gui_gtk_x11.c, src/mbyte.c
11089 Patch 6.2.181 (after 6.2.171)
11090 Problem:    The "-o" argument of "find" has lower priority than the implied
11091             "and" with "-print".
11092 Solution:   Add parenthesis around the "-o" expression. (Gordon Prieur)
11093 Files:      src/Makefile
11095 Patch 6.2.182 (after 6.2.094)
11096 Problem:    Compilation with tiny features fails because of missing
11097             get_past_head() function.
11098 Solution:   Adjust the #ifdef for get_past_head().
11099 Files:      src/misc1.c
11101 Patch 6.2.183 (after 6.2.178)
11102 Problem:    Warning for char/unsigned char mixup.
11103 Solution:   Use MSG() instead of msg(). (Tony Leneis)
11104 Files:      src/normal.c
11106 Patch 6.2.184
11107 Problem:    With 'formatoptions' set to "1aw" inserting text may cause the
11108             paragraph to be ended. (Alan Schmitt)
11109 Solution:   Temporarily add an extra space to make the paragraph continue
11110             after moving the word after the cursor to the next line.
11111             Also format when pressing Esc.
11112 Files:      src/edit.c, src/normal.c, src/proto/edit.pro
11114 Patch 6.2.185
11115 Problem:    Restoring a session with zero-height windows does not work
11116             properly. (Charles Campbell)
11117 Solution:   Accept a zero argument to ":resize" as intended.  Add a window
11118             number argument to ":resize" to be able to set the size of other
11119             windows, because the current window cannot be zero-height.
11120             Fix the explorer plugin to avoid changing the window sizes.  Add
11121             the winrestcmd() function for this.
11122 Files:      runtime/doc/eval.txt, runtime/plugin/explorer.vim, src/eval.c,
11123             src/ex_cmds.h, src/ex_docmd.c, src/proto/window.pro, src/window.c
11125 Patch 6.2.186 (after 6.2.185)
11126 Problem:    Documentation file eval.txt contains examples without indent.
11127 Solution:   Insert the indent.  Also fix other mistakes.
11128 Files:      runtime/doc/eval.txt
11130 Patch 6.2.187
11131 Problem:    Using Insure++ reveals a number of bugs.  (Dominique Pelle)
11132 Solution:   Initialize variables where needed.  Free allocated memory to avoid
11133             leaks.  Fix comparing tags to avoid reading past allocated memory.
11134 Files:      src/buffer.c, src/diff.c, src/fileio.c, src/mark.c, src/misc1.c,
11135             src/misc2.c, src/ops.c, src/option.c, src/tag.c, src/ui.c
11137 Patch 6.2.188 (extra)
11138 Problem:    MS-Windows: Multi-byte characters in a filename cause trouble for
11139             the window title.
11140 Solution:   Return when the wide function for setting the title did its work.
11141 Files:      src/gui_w48.c
11143 Patch 6.2.189
11144 Problem:    When setting 'viminfo' after editing a new buffer its marks are
11145             not stored. (Keith Roberts)
11146 Solution:   Set the "b_marks_read" flag when skipping to read marks from the
11147             viminfo file.
11148 Files:      src/fileio.c
11150 Patch 6.2.190
11151 Problem:    When editing a compressed files, marks are lost.
11152 Solution:   Add the ":lockmarks" modifier and use it in the gzip plugin.
11153             Make exists() also check for command modifiers, so that the
11154             existence of ":lockmarks" can be checked for.
11155             Also add ":keepmarks" to avoid that marks are deleted when
11156             filtering text.
11157             When deleting lines put marks 'A - 'Z and '0 - '9 at the first
11158             deleted line instead of clearing the mark.  They were kept in the
11159             viminfo file anyway.
11160             Avoid that the gzip plugin puts deleted text in registers.
11161 Files:      runtime/doc/motion.txt, runtime/plugin/gzip.vim, src/ex_cmds.c,
11162             src/ex_docmd.c, src/mark.c, src/structs.h
11164 Patch 6.2.191
11165 Problem:    The intro message is outdated.  Information about sponsoring and
11166             registering is missing.
11167 Solution:   Show info about sponsoring and registering Vim in the intro
11168             message now and then.  Add help file about sponsoring.
11169 Files:      runtime/doc/help.txt, runtime/doc/sponsor.txt, runtime/doc/tags,
11170             runtime/menu.vim, src/version.c
11172 Patch 6.2.192
11173 Problem:    Using CTRL-T and CTRL-D with "gR" messes up the text.  (Jonahtan
11174             Hankins)
11175 Solution:   Avoid calling change_indent() recursively.
11176 Files:      src/edit.c
11178 Patch 6.2.193
11179 Problem:    When recalling a search pattern from the history from a ":s,a/c,"
11180             command the '/' ends the search string. (JC van Winkel)
11181 Solution:   Store the separator character with the history entries.  Escape
11182             characters when needed, replace the old separator with the new one.
11183             Also fixes that recalling a "/" search for a "?" command messes up
11184             trailing flags.
11185 Files:      src/eval.c, src/ex_getln.c, src/normal.c, src/proto/ex_getln.pro,
11186             src/search.c, src/tag.c
11188 Patch 6.2.194 (after 6.2.068)
11189 Problem:    For NetBeans, instead of writing the file and sending an event
11190             about it, tell NetBeans to write the file.
11191 Solution:   Add the "save" command, "netbeansBuffer" command and
11192             "buttonRelease" event to the netbeans protocol.  Updated the
11193             interface to version 2.2.  (Gordon Prieur)
11194             Also: open a fold when the cursor has been positioned.
11195             Also: fix memory leak, free result of nb_quote().
11196 Files:      runtime/doc/netbeans.txt, src/fileio.c, src/netbeans.c,
11197             src/normal.c, src/proto/netbeans.pro, src/structs.h
11199 Patch 6.2.195 (after 6.2.190)
11200 Problem:    Compiling fails for missing CPO_REMMARK symbol.
11201 Solution:   Add the patch I forgot to include...
11202 Files:      src/option.h
11204 Patch 6.2.196 (after 6.2.191)
11205 Problem:    Rebuilding the documentation doesn't use the sponsor.txt file.
11206 Solution:   Add sponsor.txt to the Makefile. (Christian J. Robinson)
11207 Files:      runtime/doc/Makefile
11209 Patch 6.2.197
11210 Problem:    It is not possible to force a redraw of status lines. (Gary
11211             Johnson)
11212 Solution:   Add the ":redrawstatus" command.
11213 Files:      runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
11214             src/screen.c
11216 Patch 6.2.198
11217 Problem:    A few messages are not translated. (Ernest Adrogue)
11218 Solution:   Mark the messages to be translated.
11219 Files:      src/ex_cmds.c
11221 Patch 6.2.199 (after 6.2.194)
11222 Problem:    Vim doesn't work perfectly well with NetBeans.
11223 Solution:   When NetBeans saves the file, reset the timestamp to avoid "file
11224             changed" warnings.  Close a buffer in a proper way.  Don't try
11225             giving a debug message with an invalid pointer.  Send a
11226             newDotAndMark message when needed.  Report a change by the "r"
11227             command to NetBeans.  (Gordon Prieur)
11228 Files:      src/netbeans.c, src/normal.c
11230 Patch 6.2.200
11231 Problem:    When recovering a file, 'fileformat' is always the default, thus
11232             writing the file may result in differences. (Penelope Fudd)
11233 Solution:   Before recovering the file try reading the original file to obtain
11234             the values of 'fileformat', 'fileencoding', etc.
11235 Files:      src/memline.c
11237 Patch 6.2.201
11238 Problem:    When 'autowriteall' is set ":qall" still refuses to exit if there
11239             is a modified buffer. (Antoine Mechelynck)
11240 Solution:   Attempt writing modified buffers as intended.
11241 Files:      src/ex_cmds2.c
11243 Patch 6.2.202
11244 Problem:    Filetype names of CHILL and ch script are confusing.
11245 Solution:   Rename "ch" to "chill" and "chscript" to "ch".
11246 Files:      runtime/filetype.vim, runtime/makemenu.vim, runtime/synmenu.vim
11247             runtime/syntax/ch.vim, runtime/syntax/chill.vim
11249 Patch 6.2.203
11250 Problem:    With characterwise text that has more than one line, "3P" works
11251             wrong.  "3p" has the same problem.  There also is a display
11252             problem. (Daniel Goujot)
11253 Solution:   Perform characterwise puts with a count in the right position.
11254 Files:      src/ops.c
11256 Patch 6.2.204 (after 6.2.086)
11257 Problem:    "]]" in a file with closed folds moves to the end of the file.
11258             (Nam SungHyun)
11259 Solution:   Find one position in each closed fold, then move to after the fold.
11260 Files:      src/search.c
11262 Patch 6.2.205 (extra)
11263 Problem:    MS-Windows: When the taskbar is at the left or top of the screen,
11264             the Vim window placement is wrong.
11265 Solution:   Compute the size and position of the window correctly. (Taro
11266             Muraoka)
11267 Files:      src/gui_w32.c, src/gui_w48.c
11269 Patch 6.2.206
11270 Problem:    Multi-byte characters cannot be used as hotkeys in a console
11271             dialog.  (Mattias Erkisson)
11272 Solution:   Handle multi-byte characters properly.  Also put () or [] around
11273             default hotkeys.
11274 Files:      src/message.c, src/macros.h
11276 Patch 6.2.207
11277 Problem:    When 'encoding' is a multi-byte encoding, expanding an
11278             abbreviation that starts where insertion started results in
11279             characters before the insertion to be deleted.  (Xiangjiang Ma)
11280 Solution:   Stop searching leftwards for the start of the word at the position
11281             where insertion started.
11282 Files:      src/getchar.c
11284 Patch 6.2.208
11285 Problem:    When using fold markers, three lines in a row have the start
11286             marker and deleting the first one with "dd", a nested fold is not
11287             deleted.  (Kamil Burzynski)
11288             Using marker folding, a level 1 fold doesn't stop when it is
11289             followed by "{{{2", starting a level 2 fold.
11290 Solution:   Don't stop updating folds at the end of a change when the nesting
11291             level of folds is larger than the fold level.
11292             Correctly compute the number of folds that start at "{{{2".
11293             Also avoid a crash for a NULL pointer.
11294 Files:      src/fold.c
11296 Patch 6.2.209
11297 Problem:    A bogus fold is created when using "P" while the cursor is in the
11298             middle of a closed fold. (Kamil Burzynski)
11299 Solution:   Correct the line number where marks are modified for closed folds.
11300 Files:      src/ops.c
11302 Patch 6.2.210 (extra)
11303 Problem:    Mac OSX: antialiased fonts are not supported.
11304 Solution:   Add the 'antialias' option to switch on antialiasing on Mac OSX
11305             10.2 and later. (Peter Cucka)
11306 Files:      runtime/doc/options.txt, src/gui_mac.c, src/option.h, src/option.c
11308 Patch 6.2.211 (extra)
11309 Problem:    Code for handling file dropped on Vim is duplicated.
11310 Solution:   Move the common code to gui_handle_drop().
11311             Add code to drop the files in the window under the cursor.
11312             Support drag&drop on the Macintosh.  (Taro Muraoka)
11313             When dropping a directory name edit that directory (using the
11314             explorer plugin)
11315             Fix that changing directory with Shift pressed didn't work for
11316             relative path names.
11317 Files:      src/fileio.c, src/gui.c, src/gui_gtk_x11.c, src/gui_mac.c,
11318             src/gui_w48.c, src/proto/fileio.pro, src/proto/gui.pro
11320 Patch 6.2.212 (after 6.2.199)
11321 Problem:    NetBeans: Replacing with a count is not handled correctly.
11322 Solution:   Move reporting the change outside of the loop for the count.
11323             (Gordon Prieur)
11324 Files:      src/normal.c
11326 Patch 6.2.213 (after 6.2.208)
11327 Problem:    Using marker folding, "{{{1" doesn't start a new fold when already
11328             at fold level 1. (Servatius Brandt)
11329 Solution:   Correctly compute the number of folds that start at "{{{1".
11330 Files:      src/fold.c
11332 Patch 6.2.214 (after 6.2.211) (extra)
11333 Problem:    Warning for an unused variable.
11334 Solution:   Delete the declaration. (Bill McCarthy)
11335 Files:      src/gui_w48.c
11337 Patch 6.2.215
11338 Problem:    NetBeans: problems saving an unmodified file.
11339 Solution:   Add isNetbeansModified() function.  Disable netbeans_unmodified().
11340             (Gordon Prieur)
11341 Files:      src/fileio.c, src/netbeans.c, src/proto/netbeans.pro,
11342             runtime/doc/netbeans.txt, runtime/doc/tags
11344 Patch 6.2.216 (after 6.2.206)
11345 Problem:    Multi-byte characters still cannot be used as hotkeys in a console
11346             dialog.  (Mattias Erkisson)
11347 Solution:   Make get_keystroke() handle multi-byte characters.
11348 Files:      src/misc1.c
11350 Patch 6.2.217
11351 Problem:    GTK: setting the title doesn't always work correctly.
11352 Solution:   Invoke gui_mch_settitle(). (Tomas Stehlik)
11353 Files:      src/os_unix.c
11355 Patch 6.2.218
11356 Problem:    Warning for function without prototype.
11357 Solution:   Add argument types to the msgCB field of the BalloonEval struct.
11358 Files:      src/gui_beval.h
11360 Patch 6.2.219
11361 Problem:    Syntax highlighting hangs on an empty match of an item with a
11362             nextgroup.  (Charles Campbell)
11363 Solution:   Remember that the item has already matched and don't match it
11364             again at the same position.
11365 Files:      src/syntax.c
11367 Patch 6.2.220
11368 Problem:    When a Vim server runs in a console a remote command isn't handled
11369             before a key is typed.  (Joshua Neuheisel)
11370 Solution:   Don't try reading more input when a client-server command has been
11371             received.
11372 Files:      src/os_unix.c
11374 Patch 6.2.221
11375 Problem:    No file name completion for ":cscope add".
11376 Solution:   Add the XFILE flag to ":cscope". (Gary Johnson)
11377 Files:      src/ex_cmds.h
11379 Patch 6.2.222
11380 Problem:    Using "--remote" several times on a row only opens some of the
11381             files. (Dany St-Amant)
11382 Solution:   Don't delete all typeahead when the server receives a command from
11383             a client, only delete typed characters.
11384 Files:      src/main.c
11386 Patch 6.2.223
11387 Problem:    Cscope: Avoid a hang when cscope waits for a response while Vim
11388             waits for a prompt.
11389             Error messages from Cscope mess up the display.
11390 Solution:   Detect the hit-enter message and respond by sending a return
11391             character to cscope. (Gary Johnson)
11392             Use EMSG() and strerror() when possible.  Replace perror() with
11393             PERROR() everywhere, add emsg3().
11394 Files:      src/diff.c, src/if_cscope.c, src/integration.c, src/message.c,
11395             src/proto/message.pro, src/misc2.c, src/netbeans.c, src/vim.h
11397 Patch 6.2.224
11398 Problem:    Mac: Can't compile with small features. (Axel Kielhorn)
11399 Solution:   Also include vim_chdirfile() when compiling for the Mac.
11400 Files:      src/misc2.c
11402 Patch 6.2.225
11403 Problem:    NetBeans: Reported modified state isn't exactly right.
11404 Solution:   Report a file being modified in the NetBeans way.
11405 Files:      src/netbeans.c
11407 Patch 6.2.226 (after 6.2.107) (extra)
11408 Problem:    The "ws2-32.lib" file isn't always available.
11409 Solution:   Use "WSock32.lib" instead. (Taro Muraoka, Dan Sharp)
11410 Files:      src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak
11412 Patch 6.2.227 (extra)
11413 Problem:    The "PC" symbol is defined but not used anywhere.
11414 Solution:   Remove "-DPC" from the makefiles.
11415 Files:      src/Make_bc3.mak, src/Make_bc5.mak, src/Make_cyg.mak,
11416             src/Make_ming.mak
11418 Patch 6.2.228
11419 Problem:    Receiving CTRL-\ CTRL-N after typing "f" or "m" doesn't switch Vim
11420             back to Normal mode.  Same for CTRL-\ CTRL-G.
11421 Solution:   Check if the character typed after a command is CTRL-\ and obtain
11422             another character to check for CTRL-N or CTRL-G, waiting up to
11423             'ttimeoutlen' msec.
11424 Files:      src/normal.c
11426 Patch 6.2.229
11427 Problem:    ":function" with a name that uses magic curlies does not work
11428             inside a function.  (Servatius Brandt)
11429 Solution:   Skip over the function name properly.
11430 Files:      src/eval.c
11432 Patch 6.2.230 (extra)
11433 Problem:    Win32: a complex pattern may cause a crash.
11434 Solution:   Use __try and __except to catch the exception and handle it
11435             gracefully, when possible.  Add myresetstkoflw() to reset the
11436             stack overflow. (Benjamin Peterson)
11437 Files:      src/Make_bc5.mak, src/os_mswin.c src/os_win32.c, src/os_win32.h,
11438             src/proto/os_win32.pro, src/regexp.c
11440 Patch 6.2.231 (after 6.2.046)
11441 Problem:    Various problems when an error exception is raised from within a
11442             builtin function.  When it is invoked while evaluating arguments
11443             to a function following arguments are still evaluated.  When
11444             invoked with a line range it will be called for remaining lines.
11445 Solution:   Update "force_abort" also after calling a builtin function, so
11446             that aborting() always returns the correct value. (Servatius
11447             Brandt)
11448 Files:      src/eval.c, src/ex_eval.c, src/proto/ex_eval.pro,
11449             src/testdir/test49.ok, src/testdir/test49.vim
11451 Patch 6.2.232
11452 Problem:    ":python vim.command('python print 2*2')" crashes Vim.  (Eugene
11453             Minkovskii)
11454 Solution:   Disallow executing a Python command recursively and give an error
11455             message.
11456 Files:      src/if_python.c
11458 Patch 6.2.233
11459 Problem:    On Mac OSX adding -pthread for Python only generates a warning.
11460             The test for Perl threads rejects Perl while it's OK.
11461             Tcl doesn't work at all.
11462             The test for Ruby fails if ruby exists but there are no header
11463             files.  The Ruby library isn't detected properly
11464 Solution:   Avoid adding -pthread on Mac OSX.  Accept Perl threads when it's
11465             not the 5.5 threads.
11466             Use the Tcl framework for header files.  For Ruby rename cWindow
11467             to cVimWindow to avoid a name clash. (Ken Scott)
11468             Only enable Ruby when the header files can be found.  Use "-lruby"
11469             instead of "libruby.a" when it can't be found.
11470 Files:      src/auto/configure, src/configure.in, src/if_ruby.c
11472 Patch 6.2.234
11473 Problem:    GTK 2 GUI: ":sp" and the ":q" leaves the cursor on the command
11474             line.
11475 Solution:   Flush output before removing scrollbars.  Also do this in other
11476             places where gui_mch_*() functions are invoked.
11477 Files:      src/ex_cmds.c, src/option.c, src/window.c
11479 Patch 6.2.235 (extra)
11480 Problem:    Win32: Cursor isn't removed with a 25x80 window and doing:
11481             "1830ia<Esc>400a-<Esc>0w0". (Yasuhiro Matsumoto)
11482 Solution:   Remove the call to gui_undraw_cursor() from gui_mch_insert_lines().
11483 Files:      src/gui_w48.c
11485 Patch 6.2.236
11486 Problem:    Using gvim with Agide gives "connection lost" error messages.
11487 Solution:   Only give the "connection lost" message when the buffer was once
11488             owned by NetBeans.
11489 Files:      src/netbeans.c, src/structs.h
11491 Patch 6.2.237
11492 Problem:    GTK 2: Thai text is drawn wrong.  It changes when moving the
11493             cursor over it.
11494 Solution:   Disable the shaping engine, it moves combining characters to a
11495             wrong position and combines characters, while drawing the cursor
11496             doesn't combine characters.
11497 Files:      src/gui_gtk_x11.c
11499 Patch 6.2.238 (after 6.2.231)
11500 Problem:    ":function" does not work inside a while loop. (Servatius Brandt)
11501 Solution:   Add get_while_line() and pass it to do_one_cmd() when in a while
11502             loop, so that all lines are stored and can be used again when
11503             repeating the loop.
11504             Adjust test 49 so that it checks for the fixed problems.
11505             (Servatius Brandt)
11506 Files:      src/digraph.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
11507             src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro,
11508             src/testdir/test49.in, src/testdir/test49.ok,
11509             src/testdir/test49.vim
11511 Patch 6.2.239
11512 Problem:    GTK 2: With closed folds the arrow buttons of a vertical scrollbar
11513             often doesn't scroll. (Moshe Kaminsky)
11514 Solution:   Hackish solution: Detect that the button was pressed from the
11515             mouse pointer position.
11516 Files:      src/gui_gtk.c, src/gui.c
11518 Patch 6.2.240
11519 Problem:    GTK 2: Searching for bitmaps for the toolbar doesn't work as with
11520             other systems.  Need to explicitly use "icon=name".  (Ned Konz,
11521             Christian J.  Robinson)
11522 Solution:   Search for icons like done for Motif.
11523 Files:      src/gui_gtk.c
11525 Patch 6.2.241
11526 Problem:    GTK 2: Search and Search/Replace dialogs are synced, that makes no
11527             sense.  Buttons are sometimes greyed-out. (Jeremy Messenger)
11528 Solution:   Remove the code to sync the two dialogs.  Adjust the code to react
11529             to an empty search string to also work for GTK2. (David Necas)
11530 Files:      src/gui_gtk.c
11532 Patch 6.2.242
11533 Problem:    Gnome: "vim --help" only shows the Gnome arguments, not the Vim
11534             arguments.
11535 Solution:   Don't let the Gnome code remove the "--help" argument and don't
11536             exit at the end of usage().
11537 Files:      src/gui_gtk_x11.c, src/main.c
11539 Patch 6.2.243 (extra)
11540 Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt.
11541 Solution:   Move the dropped files to the global argument list, instead of the
11542             usual drop handling. (Eckehard Berns)
11543 Files:      src/main.c, src/gui_mac.c
11545 Patch 6.2.244
11546 Problem:    ':echo "\xf7"' displays the illegal byte as if it was a character
11547             and leaves "cho" after it.
11548 Solution:   When checking the length of a UTF-8 byte sequence and it's shorter
11549             than the number of bytes available, assume it's an illegal byte.
11550 Files:      src/mbyte.c
11552 Patch 6.2.245
11553 Problem:    Completion doesn't work for ":keepmarks" and ":lockmarks".
11554 Solution:   Add the command modifiers to the table of commands. (Madoka
11555             Machitani)
11556 Files:      src/ex_cmds.h, src/ex_docmd.c
11558 Patch 6.2.246
11559 Problem:    Mac: Starting Vim from Finder doesn't show error messages.
11560 Solution:   Recognize that output is being displayed by stderr being
11561             "/dev/console".  (Eckehard Berns)
11562 Files:      src/main.c, src/message.c
11564 Patch 6.2.247 (after 6.2.193)
11565 Problem:    When using a search pattern from the viminfo file the last
11566             character is replaced with a '/'.
11567 Solution:   Store the separator character in the right place. (Kelvin Lee)
11568 Files:      src/ex_getln.c
11570 Patch 6.2.248
11571 Problem:    GTK: When XIM is enabled normal "2" and keypad "2" cannot be
11572             distinguished.
11573 Solution:   Detect that XIM changes the keypad key to the expected ASCII
11574             character and fall back to the non-XIM code. (Neil Bird)
11575 Files:      src/gui_gtk_x11.c, src/mbyte.c, src/proto/mbyte.pro
11577 Patch 6.2.249
11578 Problem:    ":cnext" moves to the error in the next file, but there is no
11579             method to go back.
11580 Solution:   Add ":cpfile" and ":cNfile".
11581 Files:      src/ex_cmds.h, src/quickfix.c, src/vim.h, runtime/doc/quickfix.txt
11583 Patch 6.2.250
11584 Problem:    Memory leaks when using signs. (Xavier de Gaye)
11585 Solution:   Delete the list of signs when unloading a buffer.
11586 Files:      src/buffer.c
11588 Patch 6.2.251
11589 Problem:    GTK: The 'v' flag in 'guioptions' doesn't work. (Steve Hall)
11590             Order of buttons is reversed for GTK 2.2.4.  Don't always get
11591             focus back after handling a dialog.
11592 Solution:   Make buttons appear vertically when desired.  Reverse the order in
11593             which buttons are added to a dialog.  Move mouse pointer around
11594             when the dialog is done and we don't have focus.
11595 Files:      src/gui_gtk.c
11597 Patch 6.2.252 (extra, after 6.2.243)
11598 Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt for
11599             Mac OS classic.
11600 Solution:   Remove the #ifdef from the code that fixes it for Mac OSX.
11601 Files:      src/gui_mac.c
11603 Patch 6.2.253
11604 Problem:    When 'tagstack' is not set a ":tag id" command does not work after
11605             a ":tjump" command.
11606 Solution:   Set "new_tag" when 'tagstack' isn't set. (G. Narendran)
11607 Files:      src/tag.c
11609 Patch 6.2.254
11610 Problem:    May run out of space for error messages.
11611 Solution:   Keep room for two more bytes.
11612 Files:      src/quickfix.c
11614 Patch 6.2.255
11615 Problem:    GTK: A new item in the popup menu is put just after instead of
11616             just before the right item. (Gabriel Zachmann)
11617 Solution:   Don't increment the menu item index.
11618 Files:      src/gui_gtk.c
11620 Patch 6.2.256
11621 Problem:    Mac: "macroman" encoding isn't recognized, need to use
11622             "8bit-macroman.
11623 Solution:   Recognize "macroman" with an alias "mac". (Eckehard Berns)
11624 Files:      src/mbyte.c
11626 Patch 6.2.257 (after 6.2.250)
11627 Problem:    Signs are deleted for ":bdel", but they could still be useful.
11628 Solution:   Delete signs only for ":bwipe".
11629 Files:      src/buffer.c
11631 Patch 6.2.258
11632 Problem:    GUI: can't disable (grey-out) a popup menu item.  (Ajit Thakkar)
11633 Solution:   Loop over the popup menus for all modes.
11634 Files:      src/menu.c
11636 Patch 6.2.259
11637 Problem:    If there are messages when exiting, on the console there is a
11638             hit-enter prompt while the message can be read; in the GUI the
11639             message may not be visible.
11640 Solution:   Use the hit-enter prompt when there is an error message from
11641             writing the viminfo file or autocommands, or when there is any
11642             output in the GUI and 'verbose' is set.  Don't use a hit-enter
11643             prompt for the non-GUI version unless there is an error message.
11644 Files:      src/main.c
11646 Patch 6.2.260
11647 Problem:    GTK 2: Can't quit a dialog with <Esc>.
11648             GTK 1 and 2: <Enter> always gives a result, even when the default
11649             button has been disabled.
11650 Solution:   Handle these keys explicitly.  When no default button is specified
11651             use the first one (works mostly like it was before).
11652 Files:      src/gui_gtk.c
11654 Patch 6.2.261
11655 Problem:    When 'autoindent' and 'cindent' are set and a line is recognized
11656             as a comment, starting a new line won't do 'cindent' formatting.
11657 Solution:   Also use 'cindent' formatting for lines that are used as a
11658             comment. (Servatius Brandt)
11659 Files:      src/misc1.c
11661 Patch 6.2.262
11662 Problem:    1 CTRL-W w beeps, even though going to the first window is
11663             possible. (Charles Campbell)
11664 Solution:   Don't beep.
11665 Files:      src/window.c
11667 Patch 6.2.263
11668 Problem:    Lint warnings: Duplicate function prototypes, duplicate macros,
11669             use of a zero character instead of a zero pointer, unused
11670             variable.  Clearing allocated memory in a complicated way.
11671 Solution:   Remove the function prototypes from farsi.h.  Remove the
11672             duplicated lines in keymap.h.  Change getvcol() argument from NUL
11673             to NULL.  Remove the "col" variable in regmatch().  Use
11674             lalloc_clear() instead of lalloc(). (Walter Briscoe)
11675 Files:      src/farsi.h, src/keymap.h, src/ops.c, src/regexp.c, src/search.c
11677 Patch 6.2.264 (after 6.2.247)
11678 Problem:    Writing past allocated memory when using a command line from the
11679             viminfo file.
11680 Solution:   Store the NUL in the right place.
11681 Files:      src/ex_getln.c
11683 Patch 6.2.265
11684 Problem:    Although ":set" is not allowed in the sandbox, ":let &opt = val"
11685             works.
11686 Solution:   Do allow changing options in the sandbox, but not the ones that
11687             can't be changed from a modeline.
11688 Files:      src/ex_cmds.h, src/options.c
11690 Patch 6.2.266
11691 Problem:    When redirecting output and using ":silent", line breaks are
11692             missing from output of ":map" and ":tselect".  Alignment of
11693             columns is wrong.
11694 Solution:   Insert a line break where "msg_didout" was tested.  Update msg_col
11695             when redirecting and using ":silent".
11696 Files:      src/getchar.c, src/message.c
11698 Patch 6.2.267 (extra)
11699 Problem:    Win32: "&&" in a tearoff menu is not shown. (Luc Hermitte)
11700 Solution:   Use the "name" item from the menu instead of the "dname" item.
11701 Files:      src/gui_w32.c, src/menu.c
11703 Patch 6.2.268
11704 Problem:    GUI: When changing 'guioptions' part of the window may be off
11705             screen. (Randall Morris)
11706 Solution:   Adjust the size of the window when changing 'guioptions', but only
11707             when adding something.
11708 Files:      src/gui.c
11710 Patch 6.2.269
11711 Problem:    Diff mode does not highlight a change in a combining character.
11712             (Raphael Finkel)
11713 Solution:   Make diff_find_change() multi-byte aware: find the start byte of
11714             a character that contains a change.
11715 Files:      src/diff.c
11717 Patch 6.2.270
11718 Problem:    Completion in Insert mode, then repeating with ".", doesn't handle
11719             composing characters in the completed text. (Raphael Finkel)
11720 Solution:   Don't skip over composing chars when adding completed text to the
11721             redo buffer.
11722 Files:      src/getchar.c
11724 Patch 6.2.271
11725 Problem:    NetBeans: Can't do "tail -f" on the log.  Passing socket info with
11726             an argument or environment variable is not secure.
11727 Solution:   Wait after initializing the log.  Allow passing the socket info
11728             through a file. (Gordon Prieur)
11729 Files:      runtime/doc/netbeans.txt, src/main.c, src/netbeans.c
11731 Patch 6.2.272
11732 Problem:    When the "po" directory exists, but "po/Makefile" doesn't,
11733             building fails.  Make loops when the "po" directory has been
11734             deleted after running configure.
11735 Solution:   Check for the "po/Makefile" instead of just the "po" directory.
11736             Check this again before trying to run make with that Makefile.
11737 Files:      src/auto/configure, src/configure.in, src/Makefile
11739 Patch 6.2.273
11740 Problem:    Changing the sort order in an explorer window for an empty
11741             directory produces error messages. (Doug Kearns)
11742 Solution:   When an invalid range is used for a function that is not going to
11743             be executed, skip over the arguments anyway.
11744 Files:      src/eval.c
11746 Patch 6.2.274
11747 Problem:    ":print" skips empty lines when 'list' is set and there is no
11748             "eol" in 'listchars'. (Yakov Lerner)
11749 Solution:   Skip outputting a space for an empty line only when 'list' is set
11750             and the end-of-line character is not empty.
11751 Files:      src/message.c
11753 Patch 6.2.275 (extra, after 6.2.267)
11754 Problem:    Warning for uninitialized variable when using gcc.
11755 Solution:   Initialize "acLen" to zero. (Bill McCarthy)
11756 Files:      src/gui_w32.c
11758 Patch 6.2.276
11759 Problem:    ":echo X()" does not put a line break between the message that X()
11760             displays and the text that X() returns. (Yakov Lerner)
11761 Solution:   Invoke msg_start() after evaluating the argument.
11762 Files:      src/eval.c
11764 Patch 6.2.277
11765 Problem:    Vim crashes when a ":runtime ftplugin/ada.vim" causes a recursive
11766             loop. (Robert Nowotniak)
11767 Solution:   Restore "msg_list" before returning from do_cmdline().
11768 Files:      src/ex_docmd.c
11770 Patch 6.2.278
11771 Problem:    Using "much" instead of "many".
11772 Solution:   Correct the error message.
11773 Files:      src/eval.c
11775 Patch 6.2.279
11776 Problem:    There is no default choice for a confirm() dialog, now that it is
11777             possible not to have a default choice.
11778 Solution:   Make the first choice the default choice.
11779 Files:      runtime/doc/eval.txt, src/eval.c
11781 Patch 6.2.280
11782 Problem:    "do" and ":diffget" don't work in the first line and the last line
11783             of a buffer. (Aron Griffis)
11784 Solution:   Find a difference above the first line and below the last line.
11785             Also fix a few display updating bugs.
11786 Files:      src/diff.c, src/fold.c, src/move.c
11788 Patch 6.2.281
11789 Problem:    PostScript printing doesn't work on Mac OS X 10.3.2.
11790 Solution:   Adjust the header file. (Mike Williams)
11791 Files:      runtime/print/prolog.ps
11793 Patch 6.2.282
11794 Problem:    When using CTRL-O to go back to a help file, it becomes listed.
11795             (Andrew Nesbit)
11796             Using ":tag" or ":tjump" in a help file doesn't keep the help file
11797             settings (e.g. for 'iskeyword').
11798 Solution:   Don't mark a buffer as listed when its help flag is set.  Put all
11799             the option settings for a help buffer together in do_ecmd().
11800 Files:      src/ex_cmds.c
11802 Patch 6.2.283
11803 Problem:    The "local additions" in help.txt are used without conversion,
11804             causing latin1 characters showing up wrong when 'enc' is utf-8.
11805             (Antoine J. Mechelynck)
11806 Solution:   Convert the text to 'encoding'.
11807 Files:      src/ex_cmds.c
11809 Patch 6.2.284
11810 Problem:    Listing a function puts "endfunction" in the message history.
11811             Typing "q" at the more prompt isn't handled correctly when listing
11812             variables and functions.  (Hara Krishna Dara)
11813 Solution:   Don't use msg() for "endfunction".  Check "got_int" regularly.
11814 Files:      src/eval.c
11816 Patch 6.2.285
11817 Problem:    GUI: In a single wrapped line that fills the window, "gj" in the
11818             last screen line leaves the cursor behind. (Ivan Tarasov)
11819 Solution:   Undraw the cursor before scrolling the text up.
11820 Files:      src/gui.c
11822 Patch 6.2.286
11823 Problem:    When trying to rename a file and it doesn't exist, the destination
11824             file is deleted anyway. (Luc Deux)
11825 Solution:   Don't delete the destination when the source doesn't exist. (Taro
11826             Muraoka)
11827 Files:      src/fileio.c
11829 Patch 6.2.287 (after 6.2.264)
11830 Problem:    Duplicate lines are added to the viminfo file.
11831 Solution:   Compare with existing entries without an offset.  Also fixes
11832             reading very long history lines from viminfo.
11833 Files:      src/ex_getln.c
11835 Patch 6.2.288 (extra)
11836 Problem:    Mac: An external program can't be interrupted.
11837 Solution:   Don't use the 'c' key for backspace. (Eckehard Berns)
11838 Files:      src/gui_mac.c
11840 Patch 6.2.289
11841 Problem:    Compiling the Tcl interface with thread support causes ":make" to
11842             fail.  (Juergen Salk)
11843 Solution:   Use $TCL_DEFS from the Tcl config script to obtain the required
11844             compile flags for using the thread library.
11845 Files:      src/auto/configure, src/configure.in
11847 Patch 6.2.290 (extra)
11848 Problem:    Mac: The mousewheel doesn't work.
11849 Solution:   Add mousewheel support.  Also fix updating the thumb after a drag
11850             and then using another way to scroll.  (Eckehard Berns)
11851 Files:      src/gui_mac.c
11853 Patch 6.2.291 (extra)
11854 Problem:    Mac: the plus button and close button don't do anything.
11855 Solution:   Make the plus button maximize the window and the close button
11856             close Vim. (Eckehard Berns)
11857 Files:      src/gui.c, src/gui_mac.c
11859 Patch 6.2.292
11860 Problem:    Motif: When removing GUI arguments from argv[] a "ps -ef" shows
11861             the last argument repeated.
11862 Solution:   Set argv[argc] to NULL. (Michael Jarvis)
11863 Files:      src/gui_x11.c
11865 Patch 6.2.293 (after 6.2.255)
11866 Problem:    GTK: A new item in a menu is put before the tearoff item.
11867 Solution:   Do increment the menu item index for non-popup menu items.
11868 Files:      src/gui_gtk.c
11870 Patch 6.2.294 (extra)
11871 Problem:    Mac: Cannot use modifiers with Space, Tab, Enter and Escape.
11872 Solution:   Handle all modifiers for these keys.  (Eckehard Berns)
11873 Files:      src/gui_mac.c
11875 Patch 6.2.295
11876 Problem:    When in debug mode, receiving a message from a remote client
11877             causes a crash.  Evaluating an expression causes Vim to wait for
11878             "cont" to be typed, without a prompt.  (Hari Krishna Dara)
11879 Solution:   Disable debugging when evaluating an expression for a client.
11880             (Michael Geddes)  Don't try reading into the typeahead buffer when
11881             it may have been filled in another way.
11882 Files:      src/ex_getln.c, src/getchar.c, src/if_xcmdsrv.c, src/main.c,
11883             src/misc1.c, src/proto/getchar.pro, src/proto/main.pro,
11884             src/proto/os_unix.pro, src/proto/ui.pro, src/structs.h,
11885             src/os_unix.c, src/ui.c
11887 Patch 6.2.296 (extra)
11888 Problem:    Same as 6.2.295.
11889 Solution:   Extra files for patch 6.2.295.
11890 Files:      src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_win32.c,
11891             src/proto/os_amiga.pro, src/proto/os_msdos.pro,
11892             src/proto/os_riscos.pro, src/proto/os_win32.pro
11894 Patch 6.2.297 (after 6.2.232)
11895 Problem:    Cannot invoke Python commands recursively.
11896 Solution:   With Python 2.3 and later use the available mechanisms to invoke
11897             Python recursively. (Matthew Mueller)
11898 Files:      src/if_python.c
11900 Patch 6.2.298
11901 Problem:    A change always sets the '. mark and an insert always sets the '^
11902             mark, even when this is not wanted.
11903             Cannot go back to the position of older changes without undoing
11904             those changes.
11905 Solution:   Add the ":keepjumps" command modifier.
11906             Add the "g," and "g;" commands.
11907 Files:      runtime/doc/motion.txt, src/ex_cmds.h, src/ex_docmd.c, src/edit.c,
11908             src/mark.c, src/misc1.c, src/normal.c, src/proto/mark.pro,
11909             src/structs.h, src/undo.c
11911 Patch 6.2.299
11912 Problem:    Can only use one language for help files.
11913 Solution:   Add the 'helplang' option to select the preferred language(s).
11914             Make ":helptags" generate tags files for all languages.
11915 Files:      runtime/doc/options.txt, runtime/doc/various.txt, src/Makefile,
11916             src/ex_cmds.c, src/ex_cmds2.c, src/ex_cmds.h, src/ex_getln.c,
11917             src/normal.c, src/option.c, src/option.h, src/proto/ex_cmds.pro,
11918             src/proto/ex_cmds2.pro, src/proto/option.pro, src/structs.h,
11919             src/tag.c, src/vim.h
11921 Patch 6.2.300 (after 6.2.297)
11922 Problem:    Cannot build Python interface with Python 2.2 or earlier.
11923 Solution:   Add a semicolon.
11924 Files:      src/if_python.c
11926 Patch 6.2.301
11927 Problem:    The "select all" item from the popup menu doesn't work for Select
11928             mode.
11929 Solution:   Use the same commands as for the "Edit.select all" menu.
11930             (Benji Fisher)
11931 Files:      runtime/menu.vim
11933 Patch 6.2.302
11934 Problem:    Using "CTRL-O ." in Insert mode doesn't work properly. (Benji
11935             Fisher)
11936 Solution:   Restore "restart_edit" after an insert command that was not typed.
11937             Avoid waiting with displaying the mode when there is no text to be
11938             overwritten.
11939             Fix that "CTRL-O ." sometimes doesn't put the cursor back after
11940             the end-of-line.  Only reset the flag that CTRL-O was used past
11941             the end of the line when restarting editing.  Update "o_lnum"
11942             number when inserting text and "o_eol" is set.
11943 Files:      src/edit.c, src/normal.c
11945 Patch 6.2.303
11946 Problem:    Cannot use Unicode digraphs while 'encoding' is not Unicode.
11947 Solution:   Convert the character from Unicode to 'encoding' when needed.
11948             Use the Unicode digraphs for the Macintosh. (Eckehard Berns)
11949 Files:      src/digraph.c
11951 Patch 6.2.304 (extra, after 6.2.256)
11952 Problem:    Mac: No proper support for 'encoding'.  Conversion without iconv()
11953             is not possible.
11954 Solution:   Convert input from 'termencoding' to 'encoding'.  Add
11955             mac_string_convert().  Convert text for the clipboard when needed.
11956             (Eckehard Berns)
11957 Files:      src/gui_mac.c, src/mbyte.c, src/structs.h, src/vim.h
11959 Patch 6.2.305 (after 6.2.300)
11960 Problem:    Win32: Cannot build Python interface with Python 2.3. (Ajit
11961             Thakkar)
11962 Solution:   Add two functions to the dynamic loading feature.
11963 Files:      src/if_python.c
11965 Patch 6.2.306 (extra)
11966 Problem:    Win32: Building console version with BCC 5.5 gives a warning for
11967             get_cmd_args() prototype missing.  (Ajit Thakkar)
11968 Solution:   Don't build os_w32exe.c for the console version.
11969 Files:      src/Make_bc5.mak
11971 Patch 6.2.307 (after 6.2.299)
11972 Problem:    Installing help files fails.
11973 Solution:   Expand wildcards for translated help files separately.
11974 Files:      src/Makefile
11976 Patch 6.2.308
11977 Problem:    Not all systems have "whoami", resulting in an empty user name.
11978 Solution:   Use "logname" when possible, "whoami" otherwise.  (David Boyce)
11979 Files:      src/Makefile
11981 Patch 6.2.309
11982 Problem:    "3grx" waits for two ESC to be typed.  (Jens Paulus)
11983 Solution:   Append the ESC to the stuff buffer when redoing the "gr" insert.
11984 Files:      src/edit.c
11986 Patch 6.2.310
11987 Problem:    When setting 'undolevels' to -1, making a change and setting
11988             'undolevels' to a positive value an "undo list corrupt" error
11989             occurs. (Madoka Machitani)
11990 Solution:   Sync undo before changing 'undolevels'.
11991 Files:      src/option.c
11993 Patch 6.2.311 (after 6.2.298)
11994 Problem:    When making several changes in one line the changelist grows
11995             quickly.  There is no error message for reaching the end of the
11996             changelist.  Reading changelist marks from viminfo doesn't work
11997             properly.
11998 Solution:   Only make a new entry in the changelist when making a change in
11999             another line or 'textwidth' columns away.  Add E662, E663 and E664
12000             error messages.  Put a changelist mark from viminfo one position
12001             before the end.
12002 Files:      runtime/doc/motion.txt, src/mark.c, src/misc1.c, src/normal.c
12004 Patch 6.2.312 (after 6.2.299)
12005 Problem:    "make install" clears the screen when installing the docs.
12006 Solution:   Execute ":helptags" in silent mode.
12007 Files:      runtime/doc/Makefile
12009 Patch 6.2.313
12010 Problem:    When opening folds in a diff window, other diff windows no longer
12011             show the same text.
12012 Solution:   Sync the folds in diff windows.
12013 Files:      src/diff.c, src/fold.c, src/move.c, src/proto/diff.pro,
12014             src/proto/move.pro
12016 Patch 6.2.314
12017 Problem:    When 'virtualedit' is set "rx" may cause a crash with a blockwise
12018             selection and using "$". (Moritz Orbach)
12019 Solution:   Don't try replacing chars in a line that has no characters in the
12020             block.
12021 Files:      src/ops.c
12023 Patch 6.2.315
12024 Problem:    Using CTRL-C in a Visual mode mapping while 'insertmode' is set
12025             stops Vim from returning to Insert mode.
12026 Solution:   Don't reset "restart_edit" when a CTRL-C is found and 'insertmode'
12027             is set.
12028 Files:      src/normal.c
12030 Patch 6.2.316 (after 6.2.312)
12031 Problem:    "make install" tries connecting to the X server when installing
12032             the docs. (Stephen Thomas)
12033 Solution:   Add the "-X" argument.
12034 Files:      runtime/doc/Makefile
12036 Patch 6.2.317 (after 6.2.313)
12037 Problem:    When using "zi" in a diff window, other diff windows are not
12038             adjusted. (Richard Curnow)
12039 Solution:   Distribute a change in 'foldenable' to other diff windows.
12040 Files:      src/normal.c
12042 Patch 6.2.318
12043 Problem:    When compiling with _THREAD_SAFE external commands don't echo
12044             typed characters.
12045 Solution:   Don't set the terminal mode to TMODE_SLEEP when it's already at
12046             TMODE_COOK.
12047 Files:      src/os_unix.c
12049 Patch 6.2.319 (extra)
12050 Problem:    Building gvimext.dll with Mingw doesn't work properly.
12051 Solution:   Use gcc instead of dllwrap.  Use long option names. (Alejandro
12052             Lopez-Valencia)
12053 Files:      src/GvimExt/Make_ming.mak
12055 Patch 6.2.320
12056 Problem:    Win32: Adding and removing the menubar resizes the Vim window.
12057             (Jonathon Merz)
12058 Solution:   Don't let a resize event change 'lines' unexpectedly.
12059 Files:      src/gui.c
12061 Patch 6.2.321
12062 Problem:    When using modeless selection, wrapping lines are not recognized,
12063             a line break is always inserted.
12064 Solution:   Add LineWraps[] to remember whether a line wrapped or not.
12065 Files:      src/globals.h, src/screen.c, src/ui.c
12067 Patch 6.2.322
12068 Problem:    With 'showcmd' set, after typing "dd" the next "d" may not be
12069             displayed. (Jens Paulus)
12070 Solution:   Redraw the command line after updating the screen, scrolling may
12071             have set "clear_cmdline".
12072 Files:      src/screen.c
12074 Patch 6.2.323
12075 Problem:    Win32: expanding "~/file" in an autocommand pattern results in
12076             backslashes, while this pattern should only have forward slashes.
12077 Solution:   Make expanding environment variables respect 'shellslash' and set
12078             p_ssl when expanding the autocommand pattern.
12079 Files:      src/fileio.c, src/misc1.c, src/proto/fileio.pro
12081 Patch 6.2.324 (extra)
12082 Problem:    Win32: when "vimrun.exe" has a path with white space, such as
12083             "Program Files", executing external commands may fail.
12084 Solution:   Put double quotes around the path to "vimrun".
12085 Files:      src/os_win32.c
12087 Patch 6.2.325
12088 Problem:    When $HOME includes a space, doing ":set tags=~/tags" doesn't
12089             work, the space is used to separate file names.  (Brett Stahlman)
12090 Solution:   Escape the space with a backslash.
12091 Files:      src/option.c
12093 Patch 6.2.326
12094 Problem:    ":windo set syntax=foo" doesn't work.  (Tim Chase)
12095 Solution:   Don't change 'eventignore' for ":windo".
12096 Files:      src/ex_cmds2.c
12098 Patch 6.2.327
12099 Problem:    When formatting text all marks in the formatted lines are lost.
12100             A word is not joined to a previous line when this would be
12101             possible.  (Mikolaj Machowski)
12102 Solution:   Try to keep marks in the same position as much as possible.
12103             Also keep mark positions when joining lines.
12104             Start auto-formatting in the previous line when appropriate.
12105             Add the "gw" operator: Like "gq" but keep the cursor where it is.
12106 Files:      runtime/doc/change.txt, src/edit.c, src/globals.h, src/mark.c,
12107             src/misc1.c, src/normal.c, src/ops.c, src/proto/edit.pro,
12108             src/proto/mark.pro, src/proto/ops.pro, src/structs.h, src/vim.h
12110 Patch 6.2.328
12111 Problem:    XIM with GTK: It is hard to understand what XIM is doing.
12112 Solution:   Add xim_log() to log XIM events and help with debugging.
12113 Files:      src/mbyte.c
12115 Patch 6.2.329
12116 Problem:    ":=" does not work Vi compatible. (Antony Scriven)
12117 Solution:   Print the last line number instead of the current line.  Don't
12118             print "line".
12119 Files:      src/ex_cmds.h, src/ex_docmd.c
12121 Patch 6.2.330 (extra, after 6.2.267)
12122 Problem:    Win32: Crash when tearing off a menu.
12123 Solution:   Terminate a string with a NUL. (Yasuhiro Matsumoto)
12124 Files:      src/gui_w32.c
12126 Patch 6.2.331 (after 6.2.327)
12127 Problem:    "gwap" leaves cursor in the wrong line.
12128 Solution:   Remember the cursor position before finding the ends of the
12129             paragraph.
12130 Files:      src/normal.c, src/ops.c, src/structs.h
12132 Patch 6.2.332 (extra)
12133 Problem:    Amiga: Compile error for string array. Compiling the Amiga GUI
12134             doesn't work.
12135 Solution:   Use a char pointer instead.  Move including "gui_amiga.h" to after
12136             including "vim.h".  Add a semicolon. (Ali Akcaagac)
12137 Files:      src/gui_amiga.c, src/os_amiga.c
12139 Patch 6.2.333 (extra)
12140 Problem:    Win32: printing doesn't work with specified font charset.
12141 Solution:   Use the specified font charset. (Mike Williams)
12142 Files:      src/os_mswin.c
12144 Patch 6.2.334 (extra, after 6.2.296)
12145 Problem:    Win32: evaluating client expression in debug mode requires typing
12146             "cont".
12147 Solution:   Use eval_client_expr_to_string().
12148 Files:      src/os_mswin.c
12150 Patch 6.2.335
12151 Problem:    The ":sign" command cannot be followed by another command.
12152 Solution:   Add TRLBAR to the command flags.
12153 Files:      src/ex_cmds.h
12155 Patch 6.2.336 (after 6.2.327)
12156 Problem:    Mixup of items in an expression.
12157 Solution:   Move "== NUL" to the right spot.
12158 Files:      src/edit.c
12160 Patch 6.2.337 (extra, after 6.2.319)
12161 Problem:    Building gvimext.dll with Mingw doesn't work properly.
12162 Solution:   Fix white space and other details. (Alejandro Lopez-Valencia)
12163 Files:      src/GvimExt/Make_ming.mak
12165 Patch 6.2.338 (after 6.2.331)
12166 Problem:    When undoing "gwap" the cursor is always put at the start of the
12167             paragraph.  When undoing auto-formatting the cursor may be above
12168             the change.
12169 Solution:   Try to move the cursor back to where it was or to the first line
12170             that actually changed.
12171 Files:      src/normal.c, src/ops.c, src/undo.c
12173 Patch 6.2.339
12174 Problem:    Crash when using many different highlight groups and a User
12175             highlight group.  (Juergen Kraemer)
12176 Solution:   Do not use the sg_name_u pointer when it is NULL.  Also simplify
12177             use of the highlight group table.
12178 Files:      src/syntax.c
12180 Patch 6.2.340
12181 Problem:    ":reg" doesn't show the actual contents of the clipboard if it was
12182             filled outside of Vim. (Stuart MacDonald)
12183 Solution:   Obtain the clipboard contents before displaying it.
12184 Files:      src/ops.c
12186 Patch 6.2.341 (extra)
12187 Problem:    Win32: When the path to diff.exe contains a space and using the
12188             vimrc generated by the install program, diff mode does not work.
12189 Solution:   Put the first double quote just before the space instead of before
12190             the path.
12191 Files:      src/dosinst.c
12193 Patch 6.2.342 (extra)
12194 Problem:    Win32: macros are not always used as expected.
12195 Solution:   Define WINVER to 0x0400 instead of 0x400. (Alejandro
12196             Lopez-Valencia)
12197 Files:      src/Make_bc5.mak, src/Make_cyg.mak, src/Make_mvc.mak
12199 Patch 6.2.343
12200 Problem:    Title doesn't work with some window managers.  X11: Setting the
12201             text property for the window title is hard coded.
12202 Solution:   Use STRING format when possible.  Use the UTF-8 function when
12203             it's available and 'encoding' is utf-8. Use
12204             XStringListToTextProperty().  Do the same for the icon name.
12205             (David Harrison)
12206 Files:      src/os_unix.c
12208 Patch 6.2.344 (extra, after 6.2.337)
12209 Problem:    Cannot build gvimext.dll with MingW on Linux.
12210 Solution:   Add support for cross compiling. (Ronald Hoellwarth)
12211 Files:      src/GvimExt/Make_ming.mak
12213 Patch 6.2.345 (extra)
12214 Problem:    Win32: Copy/paste between two Vims fails if 'encoding' is not set
12215             properly or there are illegal bytes.
12216 Solution:   Use a raw byte format.  Always set it when copying.  When pasting
12217             use the raw format if 'encoding' is the same.
12218 Files:      src/os_mswin.c, src/os_win16.c, src/os_win32.c, src/vim.h
12220 Patch 6.2.346
12221 Problem:    Win32 console: After using "chcp" Vim does not detect the
12222             different codepage.
12223 Solution:   Use GetConsoleCP() and when it is different from GetACP() set
12224             'termencoding'.
12225 Files:      src/option.c
12227 Patch 6.2.347 (extra)
12228 Problem:    Win32: XP theme support is missing.
12229 Solution:   Add a manifest and refer to it from the resource file.  (Michael
12230             Wookey)
12231 Files:      Makefile, src/gvim.exe.mnf, src/vim.rc
12233 Patch 6.2.348
12234 Problem:    Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
12235             default value doesn't contain parenthesis.
12236 Solution:   Temporarily add '(' and ')' to 'isfname' when expanding file name
12237             arguments.
12238 Files:      src/main.c
12240 Patch 6.2.349
12241 Problem:    Finding a match using 'matchpairs' may cause a crash.
12242             'matchpairs' is not used for 'showmatch'.
12243 Solution:   Don't look past the NUL in 'matchpairs'.  Use 'matchpairs' for
12244             'showmatch'. (Dave Olszewkski)
12245 Files:      src/misc1.c, src/normal.c, src/proto/search.pro, src/search.c
12247 Patch 6.2.350
12248 Problem:    Not enough info about startup timing.
12249 Solution:   Add a few more TIME_MSG() calls.
12250 Files:      src/main.c
12252 Patch 6.2.351
12253 Problem:    Win32: $HOME may be set to %USERPROFILE%.
12254 Solution:   Expand %VAR% at the start of $HOME.
12255 Files:      src/misc1.c
12257 Patch 6.2.352 (after 6.2.335)
12258 Problem:    ":sign texthl=||" does not work.
12259 Solution:   Remove the check for a following command.  Give an error for extra
12260             arguments after "buff=1".
12261 Files:      src/ex_cmds.c, src/ex_cmds.h
12263 Patch 6.2.353 (extra)
12264 Problem:    Win32: Supported server name length is limited. (Paul Bossi)
12265 Solution:   Use MAX_PATH instead of 25.
12266 Files:      src/os_mswin.c
12268 Patch 6.2.354 (extra)
12269 Problem:    Win32: When the mouse pointer is on a tear-off menu it is hidden
12270             when typing but is not redisplayed when moved. (Markx Hackmann)
12271 Solution:   Handle the pointer move event for the tear-off menu window.
12272 Files:      src/gui_w32.c
12274 Patch 6.2.355 (after 6.2.303)
12275 Problem:    When 'encoding' is a double-byte encoding different from the
12276             current locale, the width of characters is not correct.
12277             Possible failure and memory leak when using iconv, Unicode
12278             digraphs and 'encoding' is not "utf-8".
12279 Solution:   Use iconv() to discover the actual width of characters.
12280             Add the "vc_fail" field to vimconv_T.
12281             When converting a digraph, init the conversion type to NONE and
12282             cleanup afterwards.
12283 Files:      src/digraph.c, src/mbyte.c, src/structs.h
12285 Patch 6.2.356
12286 Problem:    When using a double-byte 'encoding' and 'selection' is
12287             "exclusive", "vy" only yanks the first byte of a double-byte
12288             character.  (Xiangjiang Ma)
12289 Solution:   Correct the column in unadjust_for_sel() to position on the first
12290             byte, always include the trailing byte of the selected text.
12291 Files:      src/normal.c
12293 Patch 6.2.357 (after 6.2.321)
12294 Problem:    Memory leak when resizing the Vim window.
12295 Solution:   Free the LineWraps array.
12296 Files:      src/screen.c
12298 Patch 6.2.358 (after 6.2.299)
12299 Problem:    Memory leak when using ":help" and the language doesn't match.
12300 Solution:   Free the array with matching tags.
12301 Files:      src/ex_cmds.c
12303 Patch 6.2.359 (after 6.2.352)
12304 Problem:    Compiler warning for long to int type cast.
12305 Solution:   Add explicit type cast.
12306 Files:      src/ex_cmds.c
12308 Patch 6.2.360
12309 Problem:    "100|" in an empty line results in a ruler "1,0-100". (Pavol
12310             Juhas)
12311 Solution:   Recompute w_virtcol if the target column was not reached.
12312 Files:      src/misc2.c
12314 Patch 6.2.361 (extra)
12315 Problem:    Win32: Run gvim, ":set go-=m", use Alt-Tab, keep Alt pressed while
12316             pressing Esc, then release Alt: Cursor disappears and typing a key
12317             causes a beep. (Hari Krishna Dara)
12318 Solution:   Don't ignore the WM_SYSKEYUP event when the menu is disabled.
12319 Files:      src/gui_w32.c
12321 Patch 6.2.362 (extra, after 6.2.347)
12322 Problem:    Win32: The manifest causes Gvim not to work. (Dave Roberts)
12323 Solution:   Change "x86" to "X86". (Serge Pirotte)
12324 Files:      src/gvim.exe.mnf
12326 Patch 6.2.363
12327 Problem:    In an empty file with 'showmode' off, "i" doesn't change the ruler
12328             from "0-1" to "1".  Typing "x<BS>" does show "1", but then <Esc>
12329             doesn't make it "0-1" again.  Same problem for ruler in
12330             statusline.  (Andrew Pimlott)
12331 Solution:   Remember the "empty line" flag with Insert mode and'ed to it.
12332 Files:      src/screen.c
12334 Patch 6.2.364
12335 Problem:    HTML version of the documentation doesn't mention the encoding,
12336             which is a problem for mbyte.txt.
12337 Solution:   Adjust the awk script. (Ilya Sher)
12338 Files:      runtime/doc/makehtml.awk
12340 Patch 6.2.365
12341 Problem:    The configure checks for Perl and Python may add compile and link
12342             arguments that break building Vim.
12343 Solution:   Do a sanity check: try building with the arguments.
12344 Files:      src/auto/configure, src/configure.in
12346 Patch 6.2.366
12347 Problem:    When the GUI can't start because no valid font is found, there is
12348             no error message. (Ugen)
12349 Solution:   Add an error message.
12350 Files:      src/gui.c
12352 Patch 6.2.367
12353 Problem:    Building the help tags file while installing may fail if there is
12354             another Vim in $PATH.
12355 Solution:   Specify the just installed Vim executable. (Gordon Prieur)
12356 Files:      src/Makefile
12358 Patch 6.2.368
12359 Problem:    When 'autochdir' is set, closing a window doesn't change to the
12360             directory of the new current window. (Salman Halim)
12361 Solution:   Handle 'autochdir' always when a window becomes the current one.
12362 Files:      src/window.c
12364 Patch 6.2.369
12365 Problem:    Various memory leaks: when using globpath(), when searching for
12366             help tags files, when defining a function inside a function, when
12367             giving an error message through an exception, for the final "."
12368             line in ":append", in expression "cond ? a : b" that fails and for
12369             missing ")" in an expression.  Using NULL pointer when adding
12370             first user command and for pointer computations with regexp.
12371             (tests by Dominique Pelle)
12372 Solution:   Fix the leaks by freeing the allocated memory.  Don't use the
12373             array of user commands when there are no entries.  Use a macro
12374             instead of a function call for saving and restoring regexp states.
12375 Files:      src/eval.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
12376             src/misc2.c, src/regexp.c, src/screen.c, src/tag.c
12378 Patch 6.2.370 (extra, after6.2.341)
12379 Problem:    Win32: When the path to diff.exe contains a space and using the
12380             vimrc generated by the install program, diff mode may not work.
12381             (Alejandro Lopez-Valencia)
12382 Solution:   Do not use double quotes for arguments that do not have a space.
12383 Files:      src/dosinst.c
12385 Patch 6.2.371
12386 Problem:    When 'virtualedit' is set and there is a Tab before the next "x",
12387             "dtx" does not delete the whole Tab. (Ken Hashishi)
12388 Solution:   Move the cursor to the last position of the Tab.  Also for
12389             "df<Tab>".
12390 Files:      src/normal.c
12392 Patch 6.2.372
12393 Problem:    When using balloon evaluation, no value is displayed for members
12394             of structures and items of an array.
12395 Solution:   Include "->", "." and "[*]" in the expression.
12396 Files:      src/gui_beval.c, src/normal.c, src/vim.h
12398 Patch 6.2.373
12399 Problem:    When 'winminheight' is zero and a window is reduced to zero
12400             height, the ruler always says "Top" instead of the cursor
12401             position. (Antoine J. Mechelynck)
12402 Solution:   Don't recompute w_topline for a zero-height window.
12403 Files:      src/window.c
12405 Patch 6.2.374
12406 Problem:    ":echo "hello" | silent normal n" removes the "hello" message.
12407             (Servatius Brandt)
12408 Solution:   Don't echo the search string when ":silent" was used.  Also don't
12409             show the mode.  In general: don't clear to the end of the screen.
12410 Files:      src/gui.c, src/message.c, src/os_unix.c, src/proto/message.pro,
12411             src/screen.c, src/search.c, src/window.c
12413 Patch 6.2.375
12414 Problem:    When changing 'guioptions' the hit-enter prompt may be below the
12415             end of the Vim window.
12416 Solution:   Call screen_alloc() before showing the prompt.
12417 Files:      src/message.c
12419 Patch 6.2.376
12420 Problem:    Win32: Ruby interface cannot be dynamically linked with Ruby 1.6.
12421 Solution:   Add #ifdefs around use of rb_w32_snprintf().  (Benoît Cerrina)
12422 Files:      src/if_ruby.c
12424 Patch 6.2.377 (after 6.2.372)
12425 Problem:    Compiler warnings for signed/unsigned compare. (Michael Wookey)
12426 Solution:   Add type cast.
12427 Files:      src/normal.c
12429 Patch 6.2.378 (extra, after 6.2.118)
12430 Problem:    Mac: cannot build with Project Builder.
12431 Solution:   Add remove_tail_with_ext() to locate and remove the "build"
12432             directory from the runtime path.  Include os_unix.c when needed.
12433             (Dany St Amant)
12434 Files:      src/misc1.c, src/os_macosx.c, src/vim.h
12436 Patch 6.2.379
12437 Problem:    Using ":mkvimrc" in the ":options" window sets 'bufhidden' to
12438             "delete". (Michael Naumann)
12439 Solution:   Do not add buffer-specific option values to a global vimrc file.
12440 Files:      src/option.c
12442 Patch 6.2.380 (extra)
12443 Problem:    DOS: "make test" fails when running it again.  Can't "make test"
12444             with Borland C.
12445 Solution:   Make sure ".out" files are deleted when they get in the way.  Add
12446             a "test" target to the Borland C Makefile.
12447 Files:      src/Make_bc5.mak, src/testdir/Make_dos.mak
12449 Patch 6.2.381
12450 Problem:    Setting 'fileencoding' to a comma separated list (confusing it
12451             with 'fileencodings') does not result in an error message.
12452             Setting 'fileencoding' in an empty file marks it as modified.
12453             There is no "+" in the title after setting 'fileencoding'.
12454 Solution:   Check for a comma in 'fileencoding'.  Only consider a non-empty
12455             file modified by changing 'fileencoding'.  Update the title after
12456             changing 'fileencoding'.
12457 Files:      src/option.c
12459 Patch 6.2.382
12460 Problem:    Running "make test" puts marks from test files in viminfo.
12461 Solution:   Specify a different viminfo file to use.
12462 Files:      src/testdir/test15.in, src/testdir/test49.in
12464 Patch 6.2.383
12465 Problem:    ":hi foo term='bla" crashes Vim. (Antony Scriven)
12466 Solution:   Check that the closing ' is there.
12467 Files:      src/syntax.c
12469 Patch 6.2.384
12470 Problem:    ":menu a.&b" ":unmenu a.b" only works if "&b" isn't translated.
12471 Solution:   Also compare the names without '&' characters.
12472 Files:      src/menu.c
12474 Patch 6.2.385  (extra)
12475 Problem:    Win32: forward_slash() and trash_input_buf() are undefined when
12476             compiling with small features. (Ajit Thakkar)
12477 Solution:   Change the #ifdefs for forward_slash().  Don't call
12478             trash_input_buf() if the input buffer isn't used.
12479 Files:      src/fileio.c, src/os_win32.c
12481 Patch 6.2.386
12482 Problem:    Wasting time trying to read marks from the viminfo file for a
12483             buffer without a name.
12484 Solution:   Skip reading marks when the buffer has no name.
12485 Files:      src/fileio.c
12487 Patch 6.2.387
12488 Problem:    There is no highlighting of translated items in help files.
12489 Solution:   Search for a "help_ab.vim" syntax file when the help file is
12490             called "*.abx".  Also improve the help highlighting a bit.
12491 Files:      runtime/syntax/help.vim
12493 Patch 6.2.388
12494 Problem:    GTK: When displaying some double-width characters they are drawn
12495             as single-width, because of conversion to UTF-8.
12496 Solution:   Check the width that GTK uses and add a space if it's one instead
12497             of two.
12498 Files:      src/gui_gtk_x11.c
12500 Patch 6.2.389
12501 Problem:    When working over a slow connection, it's very annoying that the
12502             last line is partly drawn and then cleared for every change.
12503 Solution:   Don't redraw the bottom line if no rows were inserted or deleted.
12504             Don't draw the line if we know "@" lines will be used.
12505 Files:      src/screen.c
12507 Patch 6.2.390
12508 Problem:    Using "r*" in Visual mode on multi-byte characters only replaces
12509             every other character. (Tyson Roberts)
12510 Solution:   Correct the cursor position after replacing each character.
12511 Files:      src/ops.c
12513 Patch 6.2.391 (extra)
12514 Problem:    The ":highlight" command is not tested.
12515 Solution:   Add a test script for ":highlight".
12516 Files:      src/testdir/Makefile, src/testdir/Make_amiga.mak,
12517             src/testdir/Make_dos.mak, src/testdir/Make_os2.mak,
12518             src/testdir/Make_vms.mms, src/testdir/test51.in,
12519             src/testdir/test51.ok
12521 Patch 6.2.392 (after 6.2.384)
12522 Problem:    Unused variable.
12523 Solution:   Remove "dlen".
12524 Files:      src/menu.c
12526 Patch 6.2.393
12527 Problem:    When using very long lines the viminfo file can become very big.
12528 Solution:   Add the "s" flag to 'viminfo': skip registers with more than the
12529             specified Kbyte of text.
12530 Files:      runtime/doc/options.txt, src/ops.c, src/option.c
12532 Patch 6.2.394  (after 6.2.391)
12533 Problem:    Test 51 fails on a terminal with 8 colors. (Tony Leneis)
12534 Solution:   Use "DarkBlue" instead of "Blue" to avoid the "bold" attribute.
12535 Files:      src/testdir/test51.in
12537 Patch 6.2.395
12538 Problem:    When using ":tag" or ":pop" the previous matching tag is used.
12539             But since the current file is different, the ordering of the tags
12540             may change.
12541 Solution:   Remember what the current buffer was for when re-using cur_match.
12542 Files:      src/edit.c, src/ex_cmds.c, src/proto/tag.pro, src/structs.h,
12543             src/tag.c
12545 Patch 6.2.396
12546 Problem:    When CTRL-T jumps to another file and an autocommand moves the
12547             cursor to the '" mark, don't end up on the right line.  (Michal
12548             Malecki)
12549 Solution:   Set the line number after loading the file.
12550 Files:      src/tag.c
12552 Patch 6.2.397
12553 Problem:    When using a double-byte 'encoding' mapping <M-x> doesn't work.
12554             (Yasuhiro Matsumoto)
12555 Solution:   Do not set the 8th bit of the character but use a modifier.
12556 Files:      src/gui_gtk_x11.c, src/gui_x11.c, src/misc2.c
12558 Patch 6.2.398 (extra)
12559 Problem:    Win32 console: no extra key modifiers are supported.
12560 Solution:   Encode the modifiers into the input stream.  Also fix that special
12561             keys are converted and stop working when 'tenc' is set.  Also fix
12562             that when 'tenc' is initialized the input and output conversion is
12563             not setup properly until 'enc' or 'tenc' is set.
12564 Files:      src/getchar.c, src/option.c, src/os_win32.c
12566 Patch 6.2.399
12567 Problem:    A ":set" command that fails still writes a message when it is
12568             inside a try/catch block.
12569 Solution:   Include all the text of the message in the error message.
12570 Files:      src/charset.c, src/option.c
12572 Patch 6.2.400
12573 Problem:    Can't compile if_xcmdsrv.c on HP-UX 11.0.
12574 Solution:   Include header file poll.h. (Malte Neumann)
12575 Files:      src/if_xcmdsrv.c
12577 Patch 6.2.401
12578 Problem:    When opening a buffer that was previously opened, Vim does not
12579             restore the cursor position if the first line starts with white
12580             space.  (Gregory Margo)
12581 Solution:   Don't skip restoring the cursor position if it is past the blanks
12582             in the first line.
12583 Files:      src/buffer.c
12585 Patch 6.2.402
12586 Problem:    Mac: "make install" doesn't generate help tags. (Benji Fisher)
12587 Solution:   Generate help tags before copying the runtime files.
12588 Files:      src/Makefile
12590 Patch 6.2.403
12591 Problem:    ":@y" checks stdin if there are more commands to execute.  This
12592             fails if stdin is not connected, e.g., when starting the GUI from
12593             KDE. (Ned Konz)
12594 Solution:   Only check for a next command if there still is typeahead.
12595 Files:      src/ex_docmd.c
12597 Patch 6.2.404
12598 Problem:    Our own function to determine width of Unicode characters may get
12599             outdated. (Markus Kuhn)
12600 Solution:   Use wcwidth() when it is available.  Also use iswprint().
12601 Files:      src/auto/configure, src/configure.in, src/config.h.in, src/mbyte.c
12603 Patch 6.2.405
12604 Problem:    Cannot map zero without breaking the count before a command.
12605             (Benji Fisher)
12606 Solution:   Disable mapping zero when entering a count.
12607 Files:      src/getchar.c, src/globals.h, src/normal.c
12609 Patch 6.2.406
12610 Problem:    ":help \zs", ":help \@=" and similar don't find useful help.
12611 Solution:   Prepend "/\" to the arguments to find the desired help tag.
12612 Files:      src/ex_cmds.c
12614 Patch 6.2.407 (after 6.2.299)
12615 Problem:    ":help \@<=" doesn't find help.
12616 Solution:   Avoid that ":help \@<=" searches for the "<=" language.
12617 Files:      src/tag.c
12619 Patch 6.2.408
12620 Problem:    ":compiler" is not consistent: Sets local options and a global
12621             variable. (Douglas Potts)  There is no error message when a
12622             compiler is not supported.
12623 Solution:   Use ":compiler!" to set a compiler globally, otherwise it's local
12624             to the buffer and "b:current_compiler" is used.  Give an error
12625             when no compiler script could be found.
12626             Note: updated compiler plugins can be found at
12627             ftp://ftp.vim.org/pub/vim/runtime/compiler/
12628 Files:      runtime/compiler/msvc.vim, runtime/doc/quickfix.txt, src/eval.c,
12629             src/ex_cmds2.c
12631 Patch 6.2.409
12632 Problem:    The cursor ends up in the last column instead of after the line
12633             when doing "i//<Esc>o" with 'indentexpr' set to "cindent(v:lnum)".
12634             (Toby Allsopp)
12635 Solution:   Adjust the cursor as if in Insert mode.
12636 Files:      src/misc1.c
12638 Patch 6.2.410 (after 6.2.389)
12639 Problem:    In diff mode, when there are more filler lines than fit in the
12640             window, they are not drawn.
12641 Solution:   Check for filler lines when skipping to draw a line that doesn't
12642             fit.
12643 Files:      src/screen.c
12645 Patch 6.2.411
12646 Problem:    A "\n" inside a string is not seen as a line break by the regular
12647             expression matching. (Hari Krishna Dara)
12648 Solution:   Add the vim_regexec_nl() function for strings where "\n" is to be
12649             matched with a line break.
12650 Files:      src/eval.c, src/ex_eval.c, src/proto/regexp.c, src/regexp.c
12652 Patch 6.2.412
12653 Problem:    Ruby: "ruby << EOF" inside a function doesn't always work.  Also
12654             for ":python", ":tcl" and ":perl".
12655 Solution:   Check for "<< marker" and skip until "marker" before checking for
12656             "endfunction".
12657 Files:      src/eval.c
12659 Patch 6.2.413 (after 6.2.411)
12660 Problem:    Missing prototype for vim_regexec_nl(). (Marcel Svitalsky)
12661 Solution:   Now really include the prototype.
12662 Files:      src/proto/regexp.pro
12664 Patch 6.2.414
12665 Problem:    The function used for custom completion of user commands cannot
12666             have <SID> to make it local. (Hari Krishna Dara)
12667 Solution:   Pass the SID of the script where the user command was defined on
12668             to the completion.  Also clean up #ifdefs.
12669 Files:      src/ex_docmd.c, src/eval.c, src/ex_getln.c, src/structs.h
12671 Patch 6.2.415
12672 Problem:    Vim may crash after a sequence of events that change the window
12673             size.  The window layout assumes a larger window than is actually
12674             available. (Servatius Brandt)
12675 Solution:   Invoke win_new_shellsize() from screenalloc() instead of from
12676             set_shellsize().
12677 Files:      src/screen.c, src/term.c
12679 Patch 6.2.416
12680 Problem:    Compiler warning for incompatible pointer.
12681 Solution:   Remove the "&" in the call to poll(). (Xavier de Gaye)
12682 Files:      src/os_unix.c
12684 Patch 6.2.417 (after 6.2.393)
12685 Problem:    Many people forget that the '"' item in 'viminfo' needs to be
12686             preceded with a backslash,
12687 Solution:   Add '<' as an alias for the '"' item.
12688 Files:      runtime/doc/options.txt, src/ops.c, src/option.c
12690 Patch 6.2.418
12691 Problem:    Using ":nnoremap <F12> :echo "cheese" and ":cabbr cheese xxx":
12692             when pressing <F12> still uses the abbreviation. (Hari Krishna)
12693 Solution:   Also apply "noremap" to abbreviations.
12694 Files:      src/getchar.c
12696 Patch 6.2.419 (extra)
12697 Problem:    Win32: Cannot open the Vim window inside another application.
12698 Solution:   Add the "-P" argument to specify the window title of the
12699             application to run inside. (Zibo Zhao)
12700 Files:      runtime/doc/starting.txt, src/main.c, src/gui_w32.c,
12701             src/gui_w48.c, src/if_ole.cpp, src/os_mswin.c,
12702             src/proto/gui_w32.pro
12704 Patch 6.2.420
12705 Problem:    Cannot specify a file to be edited in binary mode without setting
12706             the global value of the 'binary' option.
12707 Solution:   Support ":edit ++bin file".
12708 Files:      runtime/doc/editing.txt, src/buffer.c, src/eval.c, src/ex_cmds.h,
12709             src/ex_docmd.c, src/fileio.c, src/misc2.c
12711 Patch 6.2.421
12712 Problem:    Cannot set the '[ and '] mark, which may be necessary when an
12713             autocommand simulates reading a file.
12714 Solution:   Allow using "m[" and "m]".
12715 Files:      runtime/doc/motion.txt, src/mark.c
12717 Patch 6.2.422
12718 Problem:    In CTRL-X completion messages the "/" makes them less readable.
12719 Solution:   Remove the slashes. (Antony Scriven)
12720 Files:      src/edit.c
12722 Patch 6.2.423
12723 Problem:    ":vertical wincmd ]" does not split vertically.
12724 Solution:   Add "postponed_split_flags".
12725 Files:      src/ex_docmd.c, src/globals.h, src/if_cscope.c, src/tag.c
12727 Patch 6.2.424
12728 Problem:    A BufEnter autocommand that sets an option stops 'mousefocus' from
12729             working in Insert mode (Normal mode is OK). (Gregory Seidman)
12730 Solution:   In the Insert mode loop invoke gui_mouse_correct() when needed.
12731 Files:      src/edit.c
12733 Patch 6.2.425
12734 Problem:    Vertical split and command line window: can only drag status line
12735             above the cmdline window on the righthand side, not lefthand side.
12736 Solution:   Check the status line row instead of the window pointer.
12737 Files:      src/ui.c
12739 Patch 6.2.426
12740 Problem:    A syntax region end match with a matchgroup that includes a line
12741             break only highlights the last line with matchgroup. (Gary
12742             Holloway)
12743 Solution:   Also use the line number of the position where the region
12744             highlighting ends.
12745 Files:      src/syntax.c
12747 Patch 6.2.427 (extra)
12748 Problem:    When pasting a lot of text in a multi-byte encoding, conversion
12749             from 'termencoding' to 'encoding' may fail for some characters.
12750             (Kuang-che Wu)
12751 Solution:   When there is an incomplete byte sequence at the end of the read
12752             text keep it for the next time.
12753 Files:      src/mbyte.c, src/os_amiga.c, src/os_mswin.c, src/proto/mbyte.pro,
12754             src/proto/os_mswin.pro, src/ui.c
12756 Patch 6.2.428
12757 Problem:    The X11 clipboard supports the Vim selection for char/line/block
12758             mode, but since the encoding is not included  can't copy/paste
12759             between two Vims with a different 'encoding'.
12760 Solution:   Add a new selection format that includes the 'encoding'.  Perform
12761             conversion when necessary.
12762 Files:      src/gui_gtk_x11.c, src/ui.c, src/vim.h
12764 Patch 6.2.429
12765 Problem:    Unix: glob() doesn't work for a directory with a single quote in
12766             the name. (Nazri Ramliy)
12767 Solution:   When using the shell to expand, only put double quotes around
12768             spaces and single quotes, not the whole thing.
12769 Files:      src/os_unix.c
12771 Patch 6.2.430
12772 Problem:    BOM at start of a vim script file is not recognized and causes an
12773             error message.
12774 Solution:   Detect the BOM and skip over it.  Also fix that after using
12775             ":scriptencoding" the iconv() file descriptor was not closed
12776             (memory leak).
12777 Files:      src/ex_cmds2.c
12779 Patch 6.2.431
12780 Problem:    When using the horizontal scrollbar, the scrolling is limited to
12781             the length of the cursor line.
12782 Solution:   Make the scroll limit depend on the longest visible line.  The
12783             cursor is moved when necessary.  Including the 'h' flag in
12784             'guioptions' disables this.
12785 Files:      runtime/doc/gui.txt, runtime/doc/options.txt, src/gui.c,
12786             src/misc2.c, src/option.h
12788 Patch 6.2.432 (after 6.2.430 and 6.2.431)
12789 Problem:    Lint warnings.
12790 Solution:   Add type casts.
12791 Files:      src/ex_cmds2.c, src/gui.c
12793 Patch 6.2.433
12794 Problem:    Translating "VISUAL" and "BLOCK" separately doesn't give a good
12795             result. (Alejandro Lopez Valencia)
12796 Solution:   Use a string for each combination.
12797 Files:      src/screen.c
12799 Patch 6.2.434 (after 6.2.431)
12800 Problem:    Compiler warning. (Salman Halim)
12801 Solution:   Add type casts.
12802 Files:      src/gui.c
12804 Patch 6.2.435
12805 Problem:    When there are vertically split windows the minimal Vim window
12806             height is computed wrong.
12807 Solution:   Use frame_minheight() to correctly compute the minimal height.
12808 Files:      src/window.c
12810 Patch 6.2.436
12811 Problem:    Running the tests changes the user's viminfo file.
12812 Solution:   In test 49 tell the extra Vim to use the test viminfo file.
12813 Files:      src/testdir/test49.vim
12815 Patch 6.2.437
12816 Problem:    ":mksession" always puts "set nocompatible" in the session file.
12817             This changes option settings. (Ron Aaron)
12818 Solution:   Add an "if" to only change 'compatible' when needed.
12819 Files:      src/ex_docmd.c
12821 Patch 6.2.438
12822 Problem:    When the 'v' flag is present in 'cpoptions', backspacing and then
12823             typing text again: one character too much is overtyped before
12824             inserting is done again.
12825 Solution:   Set "dollar_vcol" to the right column.
12826 Files:      src/edit.c
12828 Patch 6.2.439
12829 Problem:    GTK 2: Changing 'lines' may cause a mismatch between the window
12830             layout and the size of the window.
12831 Solution:   Disable the hack with force_shell_resize_idle().
12832 Files:      src/gui_gtk_x11.c
12834 Patch 6.2.440
12835 Problem:    When 'lazyredraw' is set the window title is still updated.
12836             The size of the Visual area and the ruler are displayed too often.
12837 Solution:   Postpone redrawing the window title.  Only show the Visual area
12838             size when waiting for a character.  Don't draw the ruler
12839             unnecessary.
12840 Files:      src/buffer.c, src/normal.c, src/screen.c
12842 Patch 6.2.441
12843 Problem:    ":unabbreviate foo " doesn't work, because of the trailing space,
12844             while an abbreviation with a trailing space is not possible. (Paul
12845             Jolly)
12846 Solution:   Accept a match with the lhs of an abbreviation without the
12847             trailing space.
12848 Files:      src/getchar.c
12850 Patch 6.2.442
12851 Problem:    Cannot manipulate the command line from a function.
12852 Solution:   Add getcmdline(), getcmdpos() and setcmdpos() functions and the
12853             CTRL-\ e command.
12854 Files:      runtime/doc/cmdline.txt, runtime/doc/eval.txt, src/eval.c
12855             src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
12856             src/proto/ops.pro
12858 Patch 6.2.443
12859 Problem:    With ":silent! echoerr something" you don't get the position of
12860             the error.  emsg() only writes the message itself and returns.
12861 Solution:   Also redirect the position of the error.
12862 Files:      src/message.c
12864 Patch 6.2.444
12865 Problem:    When adding the 'c' flag to a ":substitute" command it may replace
12866             more times than without the 'c' flag.  Happens for a  match that
12867             starts with "\ze" (Marcel Svitalsk) and when using "\@<=" (Klaus
12868             Bosau).
12869 Solution:   Correct "prev_matchcol" when replacing the line.  Don't replace
12870             the line when the pattern uses look-behind matching.
12871 Files:      src/ex_cmds.c, src/proto/regexp.pro, src/regexp.c
12873 Patch 6.2.445
12874 Problem:    Copying vimtutor to /tmp/something is not secure, a symlink may
12875             cause trouble.
12876 Solution:   Create a directory and create the file in it.  Use "umask" to
12877             create the directory with mode 700.  (Stefan Nordhausen)
12878 Files:      src/vimtutor
12880 Patch 6.2.446 (after 6.2.404)
12881 Problem:    Using library functions wcwidth() and iswprint() results in
12882             display problems for Hebrew characters. (Ron Aaron)
12883 Solution:   Disable the code to use the library functions, use our own.
12884 Files:      src/mbyte.c
12886 Patch 6.2.447 (after 6.2.440)
12887 Problem:    Now that the title is only updated when redrawing, it is no longer
12888             possible to show it while executing a function. (Madoka Machitani)
12889 Solution:   Make ":redraw" also update the title.
12890 Files:      src/ex_docmd.c
12892 Patch 6.2.448 (after 6.2.427)
12893 Problem:    Mac: conversion done when 'termencoding' differs from 'encoding'
12894             fails when pasting a longer text.
12895 Solution:   Check for an incomplete sequence at the end of the chunk to be
12896             converted. (Eckehard Berns)
12897 Files:      src/mbyte.c
12899 Patch 6.2.449 (after 6.2.431)
12900 Problem:    Get error messages when switching files.
12901 Solution:   Check for a valid line number when calculating the width of the
12902             horizontal scrollbar. (Helmut Stiegler)
12903 Files:      src/gui.c
12905 Patch 6.2.450
12906 Problem:    "  #include" and "  #define" are not recognized with the default
12907             option values for 'include' and 'defined'. (RG Kiran)
12908 Solution:   Adjust the default values to allow white space before the #.
12909 Files:      runtime/doc/options.txt, src/option.c
12911 Patch 6.2.451
12912 Problem:    GTK: when using XIM there are various problems, including setting
12913             'modified' and breaking undo at the wrong moment.
12914 Solution:   Add "xim_changed_while_preediting", "preedit_end_col" and
12915             im_is_preediting(). (Yasuhiro Matsumoto)
12916 Files:      src/ex_getln.c, src/globals.h, src/gui_gtk.c, src/gui_gtk_x11.c,
12917             src/mbyte.c, src/misc1.c, src/proto/mbyte.pro, src/screen.c,
12918             src/undo.c
12920 Patch 6.2.452
12921 Problem:    In diff mode, when DiffAdd and DiffText highlight settings are
12922             equal, an added line is highlighted with DiffChange. (Tom Schumm)
12923 Solution:   Remember the diff highlight type instead of the attributes.
12924 Files:      src/screen.c
12926 Patch 6.2.453
12927 Problem:    ":s/foo\|\nbar/x/g" does not replace two times in "foo\nbar".
12928             (Pavel Papushev)
12929 Solution:   When the pattern can match a line break also try matching at the
12930             NUL at the end of a line.
12931 Files:      src/ex_cmds.c, src/regexp.c
12933 Patch 6.2.454
12934 Problem:    ":let b:changedtick" doesn't work. (Alan Schmitt)  ":let
12935             b:changedtick = 99" does not give an error message.
12936 Solution:   Add code to recognize ":let b:changedtick".
12937 Files:      src/eval.c
12939 Patch 6.2.455 (after 6.2.297)
12940 Problem:    In Python commands the current locale changes how certain Python
12941             functions work. (Eugene M. Minkovskii)
12942 Solution:   Set the LC_NUMERIC locale to "C" while executing a Python command.
12943 Files:      src/if_python.c
12945 Patch 6.2.456 (extra)
12946 Problem:    Win32: Editing a file by its Unicode name (dropping it on Vim or
12947             using the file selection dialog) doesn't work. (Yakov Lerner, Alex
12948             Jakushev)
12949 Solution:   Use wide character functions when file names are involved and
12950             convert from/to 'encoding' where needed.
12951 Files:      src/gui_w48.c, src/macros.h, src/memfile.c, src/memline.c,
12952             src/os_mswin.c, src/os_win32.c
12954 Patch 6.2.457 (after 6.2.244)
12955 Problem:    When 'encoding' is "utf-8" and writing text with chars above 0x80
12956             in latin1, conversion is wrong every 8200 bytes. (Oyvind Holm)
12957 Solution:   Correct the utf_ptr2len_check_len() function and fix the problem
12958             of displaying 0xf7 in utfc_ptr2len_check_len().
12959 Files:      src/mbyte.c
12961 Patch 6.2.458
12962 Problem:    When 'virtualedit' is set "$" doesn't move to the end of an
12963             unprintable character, causing "y$" not to include that character.
12964             (Fred Ma)
12965 Solution:   Set "coladd" to move the cursor to the end of the character.
12966 Files:      src/misc2.c
12968 Patch 6.2.459 (after 6.2.454)
12969 Problem:    Variable "b" cannot be written. (Salman Halim)
12970 Solution:   Compare strings properly.
12971 Files:      src/eval.c
12973 Patch 6.2.460 (extra, after 6.2.456)
12974 Problem:    Compiler warnings for missing prototypes.
12975 Solution:   Include the missing prototypes.
12976 Files:      src/proto/os_win32.pro
12978 Patch 6.2.461
12979 Problem:    After using a search command "x" starts putting single characters
12980             in the numbered registers.
12981 Solution:   Reset "use_reg_one" at the right moment.
12982 Files:      src/normal.c
12984 Patch 6.2.462
12985 Problem:    Finding a matching parenthesis does not correctly handle a
12986             backslash in a trailing byte.
12987 Solution:   Handle multi-byte characters correctly. (Taro Muraoka)
12988 Files:      src/search.c
12990 Patch 6.2.463 (extra)
12991 Problem:    Win32: An NTFS file system may contain files with extra info
12992             streams.  The current method to copy them creates one and then
12993             deletes it again.  (Peter Toennies)  Also, only three streams with
12994             hard coded names are copied.
12995 Solution:   Use BackupRead() to check which info streams the original file
12996             contains and only copy these streams.
12997 Files:      src/os_win32.c
12999 Patch 6.2.464 (extra, after 6.2.427)
13000 Problem:    Amiga: Compilation error with gcc. (Ali Akcaagac)
13001 Solution:   Move the #ifdef outside of Read().
13002 Files:      src/os_amiga.c
13004 Patch 6.2.465
13005 Problem:    When resizing the GUI window the window manager sometimes moves it
13006             left of or above the screen. (Michael McCarty)
13007 Solution:   Check the window position after resizing it and move it onto the
13008             screen when it isn't.
13009 Files:      src/gui.c
13011 Patch 6.2.466 (extra, after 6.2.456)
13012 Problem:    Win32: Compiling with Borland C fails, and an un/signed warning.
13013 Solution:   Redefine wcsicmp() to wcscmpi() and add type casts. (Yasuhiro
13014             Matsumoto)
13015 Files:      src/os_win32.c
13017 Patch 6.2.467 (extra, after 6.2.463)
13018 Problem:    Win32: can't compile without multi-byte feature. (Ajit Thakkar)
13019 Solution:   Add #ifdefs around the info stream code.
13020 Files:      src/os_win32.c
13022 Patch 6.2.468
13023 Problem:    Compiler warnings for shadowed variables. (Matthias Mohr)
13024 Solution:   Delete superfluous variables and rename others.
13025 Files:      src/eval.c, src/ex_docmd.c, src/ex_eval.c, src/if_cscope.c,
13026             src/fold.c, src/option.c, src/os_unix.c, src/quickfix.c,
13027             src/regexp.c
13029 Patch 6.2.469 (extra, after 6.2.456)
13030 Problem:    Win32: Can't create swap file when 'encoding' differs from the
13031             active code page. (Kriton Kyrimis)
13032 Solution:   In enc_to_ucs2() terminate the converted string with a NUL
13033 Files:      src/os_mswin.c
13035 Patch 6.2.470
13036 Problem:    The name returned by tempname() may be equal to the file used for
13037             shell output when ignoring case.
13038 Solution:   Skip 'O' and 'I' in tempname().
13039 Files:      src/eval.c
13041 Patch 6.2.471
13042 Problem:    "-L/usr/lib" is used in the link command, even though it's
13043             supposed to be filtered out. "-lw" and "-ldl" are not
13044             automatically added when needed for "-lXmu". (Antonio Colombo)
13045 Solution:   Check for a space after the argument instead of before.  Also
13046             remove "-R/usr/lib" if it's there.  Check for "-lw" and "-ldl"
13047             before trying "-lXmu".
13048 Files:      src/auto/configure, src/configure.in, src/link.sh
13050 Patch 6.2.472
13051 Problem:    When using a FileChangedShell autocommand that changes the current
13052             buffer, a buffer exists that can't be wiped out.
13053             Also, Vim sometimes crashes when executing an external command
13054             that changes the buffer and a FileChangedShell autocommand is
13055             used.  (Hari Krishna Dara)
13056             Users are confused by the warning for a file being changed outside
13057             of Vim.
13058 Solution:   Avoid that the window counter for a buffer is incremented twice.
13059             Avoid that buf_check_timestamp() is used recursively.
13060             Add a hint to look in the help for more info.
13061 Files:      src/ex_cmds.c, src/fileio.c
13063 Patch 6.2.473
13064 Problem:    Using CTRL-] in a help buffer without a name causes a crash.
13065 Solution:   Check for name to be present before using it. (Taro Muraoka)
13066 Files:      src/tag.c
13068 Patch 6.2.474 (extra, after 6.2.456)
13069 Problem:    When Vim is starting up conversion is done unnecessarily.  Failure
13070             to find the runtime files on Windows 98. (Randall W. Morris)
13071 Solution:   Init enc_codepage negative, only use it when not negative.
13072             Don't use GetFileAttributesW() on Windows 98 or earlier.
13073 Files:      src/globals.h, src/gui_w32.c, src/gui_w48.c, src/os_mswin.c,
13074             src/os_win32.c
13076 Patch 6.2.475
13077 Problem:    Commands after "perl <<EOF" are parsed as Vim commands when they
13078             are not executed.
13079 Solution:   Properly skip over the perl commands.
13080 Files:      src/ex_docmd.c, src/ex_getln.c, src/if_perl.xs, src/if_python.c,
13081             src/if_ruby.c, src/if_tcl.c, src/misc2.c
13083 Patch 6.2.476
13084 Problem:    When reloading a hidden buffer changed outside of Vim and the
13085             current buffer is read-only, the reloaded buffer becomes
13086             read-only.  (Hari Krishna Dara)
13087 Solution:   Save the 'readonly' flag of the reloaded buffer instead of the
13088             current buffer.
13089 Files:      src/fileio.c
13091 Patch 6.2.477
13092 Problem:    Using remote_send(v:servername, "\<C-V>") causes Vim to hang.
13093             (Yakov Lerner)
13094 Solution:   When the resulting string is empty don't set received_from_client.
13095 Files:      src/main.c
13097 Patch 6.2.478
13098 Problem:    Win32: "--remote file" fails changing directory if the current
13099             directory name starts with a single quote.  (Iestyn Walters)
13100 Solution:   Add a backslash where it will be removed later.
13101 Files:      src/main.c, src/misc2.c, src/proto/misc2.pro
13103 Patch 6.2.479
13104 Problem:    The error message for errors during recovery goes unnoticed.
13105 Solution:   Avoid that the hit-enter prompt overwrites the message.  Add a few
13106             lines to make the error stand out.
13107 Files:      src/main.c, src/message.c, src/memline.c
13109 Patch 6.2.480
13110 Problem:    NetBeans: Using negative index in array.  backslash at end of
13111             message may cause Vim to crash. (Xavier de Gaye)
13112 Solution:   Initialize buf_list_used to zero. Check for trailing backslash.
13113 Files:      src/netbeans.c
13115 Patch 6.2.481
13116 Problem:    When writing a file it is not possible to specify that hard and/or
13117             symlinks are to be broken instead of preserved.
13118 Solution:   Add the "breaksymlink" and "breakhardlink" values to 'backupcopy'.
13119             (Simon Ekstrand)
13120 Files:      runtime/doc/options.txt, src/fileio.c, src/option.c, src/option.h
13122 Patch 6.2.482
13123 Problem:    Repeating insert of CTRL-K 1 S doesn't work.  The superscript 1 is
13124             considered to be a digit. (Juergen Kraemer)
13125 Solution:   In vim_isdigit() only accept '0' to '9'.  Use VIM_ISDIGIT() for
13126             speed where possible.  Also add vim_isxdigit().
13127 Files:      src/buffer.c, src/charset.c, src/diff.c, src/digraph.c,
13128             src/edit.c, src/eval.c,, src/ex_cmds.c, src/ex_cmds2.c,
13129             src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c,
13130             src/if_xcmdsrv.c, src/farsi.c, src/fileio.c, src/fold.c,
13131             src/getchar.c, src/gui.c, src/if_cscope.c, src/macros.h,
13132             src/main.c, src/mark.c, src/mbyte.c, src/menu.c, src/misc1.c,
13133             src/misc2.c, src/normal.c, src/ops.c, src/option.c,
13134             src/proto/charset.pro, src/regexp.c, src/screen.c, src/search.c,
13135             src/syntax.c, src/tag.c, src/term.c, src/termlib.c
13137 Patch 6.2.483 (extra, after 6.2.482)
13138 Problem:    See 6.2.482.
13139 Solution:   Extra part of patch 6.2.482.
13140 Files:      src/gui_photon.c, src/gui_w48.c, src/os_msdos.c, src/os_mswin.c
13142 Patch 6.2.484
13143 Problem:    MS-Windows: With the included diff.exe, differences after a CTRL-Z
13144             are not recognized.  (Peter Keresztes)
13145 Solution:   Write the files with unix fileformat and invoke diff with --binary
13146             if possible.
13147 Files:      src/diff.c
13149 Patch 6.2.485
13150 Problem:    A BufWriteCmd autocommand cannot know if "!" was used or not.
13151             (Hari Krishna Dara)
13152 Solution:   Add the v:cmdbang variable.
13153 Files:      runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
13154             src/fileio.c, src/vim.h
13156 Patch 6.2.486 (6.2.482)
13157 Problem:    Diff for eval.c is missing.
13158 Solution:   Addition to patch 6.2.482.
13159 Files:      src/eval.c
13161 Patch 6.2.487 (extra, after 6.2.456)
13162 Problem:    Compiler warnings for wrong prototype. (Alejandro Lopez Valencia)
13163 Solution:   Delete the prototype for Handle_WM_Notify().
13164 Files:      src/proto/gui_w32.pro
13166 Patch 6.2.488
13167 Problem:    Missing ")" in *.ch filetype detection.
13168 Solution:   Add the ")".  (Ciaran McCreesh)
13169 Files:      runtime/filetype.vim
13171 Patch 6.2.489
13172 Problem:    When accidentally opening a session in Vim which has already been
13173             opened in another Vim there is a long row of ATTENTION prompts.
13174             Need to quit each of them to get out. (Robert Webb)
13175 Solution:   Add the "Abort" alternative to the dialog.
13176 Files:      src/memline.c
13178 Patch 6.2.490
13179 Problem:    With 'paragraph' it is not possible to use a single dot as a
13180             paragraph boundary.  (Dorai Sitaram)
13181 Solution:   Allow using "  " (two spaces) in 'paragraph' to match ".$" or
13182             ". $"
13183 Files:      src/search.c
13185 Patch 6.2.491
13186 Problem:    Decrementing a position doesn't take care of multi-byte chars.
13187 Solution:   Adjust the column for multi-byte characters.  Remove mb_dec().
13188             (Yasuhiro Matsumoto)
13189 Files:      src/mbyte.c, src/misc2.c, src/proto/mbyte.pro
13191 Patch 6.2.492
13192 Problem:    When using ":redraw" while there is a message, the next ":echo"
13193             still causes text to scroll. (Yasuhiro Matsumoto)
13194 Solution:   Reset msg_didout and msg_col, so that after ":redraw" the next
13195             message overwrites an existing one.
13196 Files:      src/ex_docmd.c
13198 Patch 6.2.493
13199 Problem:    "@x" doesn't work when 'insertmode' is set. (Benji Fisher)
13200 Solution:   Put "restart_edit" in the typeahead buffer, so that it's used
13201             after executing the register contents.
13202 Files:      src/ops.c
13204 Patch 6.2.494
13205 Problem:    Using diff mode with two windows, when moving horizontally in
13206             inserted lines, a fold in the other window may open.
13207 Solution:   Compute the line number in the other window correctly.
13208 Files:      src/diff.c
13210 Patch 6.2.495 (extra, after 6.2.456)
13211 Problem:    Win32: The file dialog doesn't work on Windows 95.
13212 Solution:   Put the wide code of gui_mch_browse() in gui_mch_browseW() and use
13213             it only on Windows NT/2000/XP.
13214 Files:      src/gui_w32.c, src/gui_w48.c
13216 Patch 6.2.496
13217 Problem:    FreeBSD 4.x: When compiled with the pthread library (Python) a
13218             complicated pattern may cause Vim to crash.  Catching the signal
13219             doesn't work.
13220 Solution:   When compiled with threads, instead of using the normal stacksize
13221             limit, use the size of the initial stack.
13222 Files:      src/auto/configure, src/config.h.in, src/configure.in,
13223             src/os_unix.c
13225 Patch 6.2.497 (extra)
13226 Problem:    Russian messages are only available in one encoding.
13227 Solution:   Convert the messages to MS-Windows codepages. (Vassily Ragosin)
13228 Files:      src/po/Makefile
13230 Patch 6.2.498
13231 Problem:    Non-latin1 help files are not properly supported.
13232 Solution:   Support utf-8 help files and convert them to 'encoding' when
13233             needed.
13234 Files:      src/fileio.c
13236 Patch 6.2.499
13237 Problem:    When writing a file and halting the system, the file might be lost
13238             when using a journaling file system.
13239 Solution:   Use fsync() to flush the file data to disk after writing a file.
13240             (Radim Kolar)
13241 Files:      src/fileio.c
13243 Patch 6.2.500 (extra)
13244 Problem:    The DOS/MS-Windows the installer doesn't use the --binary flag for
13245             diff.
13246 Solution:   Add --binary to the diff argument in MyDiff(). (Alejandro Lopez-
13247             Valencia)
13248 Files:      src/dosinst.c
13250 Patch 6.2.501
13251 Problem:    Vim does not compile with MorphOS.
13252 Solution:   Add a Makefile and a few changes to make Vim work with MorphOS.
13253             (Ali Akcaagac)
13254 Files:      runtime/doc/os_amiga.txt, src/INSTALLami.txt,
13255             src/Make_morphos.mak, src/memfile.c, src/term.c
13257 Patch 6.2.502
13258 Problem:    Building fails for generating message files.
13259 Solution:   Add dummy message files.
13260 Files:      src/po/ca.po, src/po/ru.po, src/po/sv.po
13262 Patch 6.2.503
13263 Problem:    Mac: Can't compile MacRoman conversions without the GUI.
13264 Solution:   Also link with the Carbon framework for the terminal version, for
13265             the MacRoman conversion functions. (Eckehard Berns)
13266             Remove -ltermcap from the GUI link command, it is not needed.
13267 Files:      src/auto/configure, src/Makefile, src/configure.in
13269 Patch 6.2.504
13270 Problem:    Various problems with 'cindent', among which that a
13271             list of variable declarations is not indented properly.
13272 Solution:   Fix the wrong indenting.  Improve indenting of C++ methods.
13273             Add the 'i', 'b' and 'W' options to 'cinoptions'. (mostly by
13274             Helmut Stiegler)
13275             Improve indenting of preprocessor-continuation lines.
13276 Files:      runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
13277             src/testdir/test3.ok
13279 Patch 6.2.505
13280 Problem:    Help for -P argument is missing. (Ronald Hoellwarth)
13281 Solution:   Add the patch that was missing in 6.2.419.
13282 Files:      runtime/doc/starting.txt
13284 Patch 6.2.506 (extra)
13285 Problem:    Win32: When 'encoding' is a codepage then reading a utf-8 file
13286             only works when iconv is available.  Writing a file in another
13287             codepage uses the wrong kind of conversion.
13288 Solution:   Use internal conversion functions.  Enable reading and writing
13289             files with 'fileencoding' different from 'encoding' for all valid
13290             codepages and utf-8 without the need for iconv.
13291 Files:      src/fileio.c, src/testdir/Make_dos.mak, src/testdir/test52.in,
13292             src/testdir/test52.ok
13294 Patch 6.2.507
13295 Problem:    The ownership of the file with the password for the NetBeans
13296             connection is not checked.  "-nb={file}" doesn't work for GTK.
13297 Solution:   Only accept the file when owned by the user and not accessible by
13298             others.  Detect "-nb=" for GTK.
13299 Files:      src/netbeans.c, src/gui_gtk_x11.c
13301 Patch 6.2.508
13302 Problem:    Win32: "v:lang" does not show the current language for messages if
13303             it differs from the other locale settings.
13304 Solution:   Use the value of the $LC_MESSAGES environment variable.
13305 Files:      src/ex_cmds2.c
13307 Patch 6.2.509 (after 6.2.508)
13308 Problem:    Crash when $LANG is not set.
13309 Solution:   Add check for NULL pointer. (Ron Aaron)
13310 Files:      src/ex_cmds2.c
13312 Patch 6.2.510 (after 6.2.507)
13313 Problem:    Warning for pointer conversion.
13314 Solution:   Add a type cast.
13315 Files:      src/gui_gtk_x11.c
13317 Patch 6.2.511
13318 Problem:    Tags in Russian help files are in utf-8 encoding, which may be
13319             different from 'encoding'.
13320 Solution:   Use the "TAG_FILE_ENCODING" field in the tags file to specify the
13321             encoding of the tags.  Convert help tags from 'encoding' to the
13322             tag file encoding when searching for matches, do the reverse when
13323             listing help tags.
13324 Files:      runtime/doc/tagsrch.txt, src/ex_cmds.c, src/tag.c
13326 Patch 6.2.512
13327 Problem:    Translating "\"\n" is useless. (Gerfried Fuchs)
13328 Solution:   Remove the _() around it.
13329 Files:      src/main.c, src/memline.c
13331 Patch 6.2.513 (after 6.2.507)
13332 Problem:    NetBeans: the check for owning the connection info file can be
13333             simplified. (Nikolay Molchanov)
13334 Solution:   Only check if the access mode is right.
13335 Files:      src/netbeans.c
13337 Patch 6.2.514
13338 Problem:    When a highlight/syntax group name contains invalid characters
13339             there is no warning.
13340 Solution:   Add an error for unprintable characters and a warning for other
13341             invalid characters.
13342 Files:      src/syntax.c
13344 Patch 6.2.515
13345 Problem:    When using the options window 'swapfile' is reset.
13346 Solution:   Use ":setlocal" instead of ":set".
13347 Files:      runtime/optwin.vim
13349 Patch 6.2.516
13350 Problem:    The sign column cannot be seen, looks like there are two spaces
13351             before the text. (Rob Retter)
13352 Solution:   Add the SignColumn highlight group.
13353 Files:      runtime/doc/options.txt, runtime/doc/sign.txt, src/option.c,
13354             src/screen.c, src/syntax.c, src/vim.h
13356 Patch 6.2.517
13357 Problem:    Using "r*" in Visual mode on multi-byte characters replaces
13358             too many characters.  In Visual Block mode replacing with a
13359             multi-byte character doesn't work.
13360 Solution:   Adjust the operator end for the difference in byte length of the
13361             original and the replaced character.  Insert all bytes of a
13362             multi-byte character, take care of double-wide characters.
13363 Files:      src/ops.c
13365 Patch 6.2.518
13366 Problem:    Last line of a window is not updated after using "J" and then "D".
13367             (Adri Verhoef)
13368 Solution:   When no line is found below a change that doesn't need updating,
13369             update all lines below the change.
13370 Files:      src/screen.c
13372 Patch 6.2.519
13373 Problem:    Mac: cannot read/write files in MacRoman format.
13374 Solution:   Do internal conversion from/to MacRoman to/from utf-8 and latin1.
13375             (Eckehard Berns)
13376 Files:      src/fileio.c
13378 Patch 6.2.520 (extra)
13379 Problem:    The NSIS installer is outdated.
13380 Solution:   Make it work with NSIS 2.0.  Also include console executables for
13381             Win 95/98/ME and Win NT/2000/XP.  Use LZWA compression.  Use
13382             "/oname" to avoid having to rename files before running NSIS.
13383 Files:      Makefile, nsis/gvim.nsi
13385 Patch 6.2.521
13386 Problem:    When using silent Ex mode the "changing a readonly file" warning
13387             is omitted but the one second wait isn't. (Yakov Lerner)
13388 Solution:   Skip the delay when "silent_mode" is set.
13389 Files:      src/misc1.c
13391 Patch 6.2.522
13392 Problem:    GUI: when changing 'cmdheight' in the gvimrc file the window
13393             layout is messed up. (Keith Dart)
13394 Solution:   Skip updating the window layout when changing 'cmdheight' while
13395             still starting up.
13396 Files:      src/option.c
13398 Patch 6.2.523
13399 Problem:    When loading a session and aborting when a swap file already
13400             exists, the user is left with useless windows. (Robert Webb)
13401 Solution:   Load one file before creating the windows.
13402 Files:      src/ex_docmd.c
13404 Patch 6.2.524 (extra, after 6.2.520)
13405 Problem:    Win32: (un)installing gvimext.dll may fail if it was used.
13406             The desktop and start menu links are created for the current user
13407             instead of all users.
13408             Using the home directory as working directory for the links is a
13409             bad idea for multi-user systems.
13410             Cannot use Vim from the "Open With..." menu.
13411 Solution:   Force a reboot if necessary. (Alejandro Lopez-Valencia)  Also use
13412             macros for the directory of the source and runtime files.  Use
13413             "CSIDL_COMMON_*" instead of "CSIDL_*" when possible.
13414             Do not specify a working directory in the links.
13415             Add Vim to the "Open With..." menu. (Giuseppe Bilotta)
13416 Files:      nsis/gvim.nsi, src/dosinst.c, src/dosinst.h, src/uninstal.c
13418 Patch 6.2.525
13419 Problem:    When the history contains a very long line ":history" causes a
13420             crash. (Volker Kiefel)
13421 Solution:   Shorten the history entry to fit it in one line.
13422 Files:      src/ex_getln.c
13424 Patch 6.2.526
13425 Problem:    When s:lang is "ja" the Japanese menus are not used.
13426 Solution:   Add 'encoding' to the language when there is no charset.
13427 Files:      runtime/menu.vim
13429 Patch 6.2.527
13430 Problem:    The 2html script uses ":wincmd p", which breaks when using some
13431             autocommands.
13432 Solution:   Remember the window numbers and jump to them with ":wincmd w".
13433             Also add XHTML support. (Panagiotis Issaris)
13434 Files:      runtime/syntax/2html.vim
13436 Patch 6.2.528
13437 Problem:    NetBeans: Changes of the "~" command are not reported.
13438 Solution:   Call netbeans_inserted() after performing "~". (Gordon Prieur)
13439             Also change NetBeans debugging to append to the log file.
13440             Also fix that "~" in Visual block mode changes too much if there
13441             are multi-byte characters.
13442 Files:      src/nbdebug.c, src/normal.c, src/ops.c
13444 Patch 6.2.529 (extra)
13445 Problem:    VisVim only works for Admin.  Doing it for one user doesn't work.
13446             (Alexandre Gouraud)
13447 Solution:   When registering the module fails, simply continue.
13448 Files:      src/VisVim/VisVim.cpp
13450 Patch 6.2.530
13451 Problem:    Warning for missing prototype on the Amiga.
13452 Solution:   Include time.h
13453 Files:      src/version.c
13455 Patch 6.2.531
13456 Problem:    In silent ex mode no messages are given, which makes debugging
13457             very difficult.
13458 Solution:   Do output messages when 'verbose' is set.
13459 Files:      src/message.c, src/ui.c
13461 Patch 6.2.532 (extra)
13462 Problem:    Compiling for Win32s with VC 4.1 doesn't work.
13463 Solution:   Don't use CP_UTF8 if it's not defined.  Don't use CSIDL_COMMON*
13464             when not defined.
13465 Files:      src/dosinst.h, src/fileio.c
13467 Win32 console: After patch 6.2.398 Ex mode did not work. (Yasuhiro Matsumoto)
13469 Patch 6.3a.001
13470 Problem:    Win32: if testing for the "--binary" option fails, diff isn't used
13471             at all.
13472 Solution:   Handle the "ok" flag properly. (Yasuhiro Matsumoto)
13473 Files:      src/diff.c
13475 Patch 6.3a.002
13476 Problem:    NetBeans: An insert command from NetBeans beyond the end of a
13477             buffer crashes Vim. (Xavier de Gaye)
13478 Solution:   Use a local pos_T structure for the position.
13479 Files:      src/netbeans.c
13481 Patch 6.3a.003
13482 Problem:    E315 error with auto-formatting comments. (Henry Van Roessel)
13483 Solution:   Pass the line number to same_leader().
13484 Files:      src/ops.c
13486 Patch 6.3a.004
13487 Problem:    Test32 fails on Windows XP for the DJGPP version.  Renaming
13488             test11.out fails.
13489 Solution:   Don't try renaming, create new files to use for the test.
13490 Files:      src/testdir/test32.in, src/testdir/test32.ok
13492 Patch 6.3a.005
13493 Problem:    ":checkpath!" does not use 'includeexpr'.
13494 Solution:   Use a file name that was found directly.  When a file was not
13495             found and the located name is empty, use the rest of the line.
13496 Files:      src/search.c
13498 Patch 6.3a.006
13499 Problem:    "yip" moves the cursor to the first yanked line, but not to the
13500             first column.  Looks like not all text was yanked. (Jens Paulus)
13501 Solution:   Move the cursor to the first column.
13502 Files:      src/search.c
13504 Patch 6.3a.007
13505 Problem:    'cindent' recognizes "enum" but not "typedef enum".
13506 Solution:   Skip over "typedef" before checking for "enum". (Helmut Stiegler)
13507             Also avoid that searching for this item goes too far back.
13508 Files:      src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
13510 Patch 6.3a.008 (extra)
13511 Problem:    Windows 98: Some of the wide functions are not implemented,
13512             resulting in file I/O to fail.  This depends on what Unicode
13513             support is installed.
13514 Solution:   Handle the failure and fall back to non-wide functions.
13515 Files:      src/os_win32.c
13517 Patch 6.3a.009
13518 Problem:    Win32: Completion of filenames does not work properly when
13519             'encoding' differs from the active code page.
13520 Solution:   Use wide functions for expanding wildcards when appropriate.
13521 Files:      src/misc1.c
13523 Patch 6.3a.010 (extra)
13524 Problem:    Win32: Characters in the window title that do not appear in the
13525             active codepage are replaced by a question mark.
13526 Solution:   Use DefWindowProcW() instead of DefWindowProc() when possible.
13527 Files:      src/glbl_ime.cpp, src/globals.h, src/proto/gui_w16.pro,
13528             src/proto/gui_w32.pro, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
13530 Patch 6.3a.011
13531 Problem:    Using the explorer plugin changes a local directory to the global
13532             directory.
13533 Solution:   Don't use ":chdir" to restore the current directory.  Make
13534             "expand('%:p')" remove "/../" and "/./" items from the path.
13535 Files:      runtime/plugin/explorer.vim, src/eval.c, src/os_unix.c
13537 Patch 6.3a.012 (extra)
13538 Problem:    On Windows 98 the installer doesn't work, don't even get the "I
13539             agree" button.  The check for the path ending in "vim" makes the
13540             browse dialog hard to use.  The default path when no previous Vim
13541             is installed is "c:\vim" instead of "c:\Program Files\Vim".
13542 Solution:   Remove the background gradient command.  Change the
13543             .onVerifyInstDir function to a leave function for the directory
13544             page.  Don't let the install program default to c:\vim when no
13545             path could be found.
13546 Files:      nsis/gvim.nsi, src/dosinst.c
13548 Patch 6.3a.013 (extra)
13549 Problem:    Win32: Characters in the menu that are not in the active codepage
13550             are garbled.
13551 Solution:   Convert menu strings from 'encoding' to the active codepage.
13552 Files:      src/gui_w32.c, src/gui_w48.c
13554 Patch 6.3a.014
13555 Problem:    Using multi-byte text and highlighting in a statusline causes gaps
13556             to appear. (Helmut Stiegler)
13557 Solution:   Advance the column by text width instead of number of bytes.  Add
13558             the vim_strnsize() function.
13559 Files:      src/charset.c, src/proto/charset.pro, src/screen.c
13561 Patch 6.3a.015
13562 Problem:    Using the "select all" menu item when 'insertmode' is set and
13563             clicking the mouse button doesn't return to Insert mode.  The
13564             Buffers/Delete menu doesn't offer a choice to abandon a changed
13565             buffer.  (Jens Paulus)
13566 Solution:   Don't use CTRL-\ CTRL-N.  Add ":confirm" for the Buffers menu
13567             items.
13568 Files:      runtime/menu.vim
13570 Patch 6.3a.016
13571 Problem:    After cancelling the ":confirm" dialog the error message and
13572             hit-enter prompt may not be displayed properly.
13573 Solution:   Flush output after showing the dialog.
13574 Files:      src/message.c
13576 Patch 6.3a.017
13577 Problem:    servername() doesn't work when Vim was started with the "-X"
13578             argument or when the "exclude" in 'clipboard' matches the terminal
13579             name.  (Robert Nowotniak)
13580 Solution:   Force connecting to the X server when using client-server
13581             commands.
13582 Files:      src/eval.c, src/globals.h, src/os_unix.c
13584 Patch 6.3a.018 (after 6.3a.017)
13585 Problem:    Compiler warning for return value of make_connection().
13586 Solution:   Use void return type.
13587 Files:      src/eval.c
13589 Patch 6.3a.019 (extra)
13590 Problem:    Win32: typing non-latin1 characters doesn't work.
13591 Solution:   Invoke _OnChar() directly to avoid that the argument is truncated
13592             to a byte.  Convert the UTF-16 character to bytes according to
13593             'encoding' and ignore 'termencoding'.  Same for _OnSysChar().
13594 Files:      src/gui_w32.c, src/gui_w48.c
13596 Patch 6.3a.020 (extra)
13597 Problem:    Missing support for AROS (AmigaOS reimplementation).  Amiga GUI
13598             doesn't work.
13599 Solution:   Add AROS support.  (Adam Chodorowski)
13600             Fix Amiga GUI problems. (Georg Steger, Ali Akcaagac)
13601 Files:      Makefile, src/Make_aros.mak, src/gui_amiga.c, src/gui_amiga.h,
13602             src/memfile.c, src/os_amiga.c, src/term.c
13604 Patch 6.3a.021 (after 6.3a.017)
13605 Problem:    Can't compile with X11 but without GUI.
13606 Solution:   Put use of "gui.in_use" inside an #ifdef.
13607 Files:      src/eval.c
13609 Patch 6.3a.022
13610 Problem:    When typing Tabs when 'softtabstop' is used and 'list' is set a
13611             tab is counted for two spaces.
13612 Solution:   Use the "L" flag in 'cpoptions' to tell whether a tab is counted
13613             as two spaces or as 'tabstop'. (Antony Scriven)
13614 Files:      runtime/doc/options.txt, src/edit.c
13616 Patch 6.3a.023
13617 Problem:    Completion on the command line doesn't handle backslashes
13618             properly.  Only the tail of matches is shown, even when not
13619             completing filenames.
13620 Solution:   When turning the string into a pattern double backslashes.  Don't
13621             omit the path when not expanding files or directories.
13622 Files:      src/ex_getln.c
13624 Patch 6.3a.024
13625 Problem:    The "save all" toolbar item fails for buffers that don't have a
13626             name.  When using ":wa" or closing the Vim window and there are
13627             nameless buffers, browsing for a name may cause the name being
13628             given to the wrong buffer or not stored properly.  ":browse" only
13629             worked for one file.
13630 Solution:   Use ":confirm browse" for "save all".
13631             Pass buffer argument to setfname().  Restore "browse" flag and
13632             "forceit" after doing the work for one file.
13633 Files:      runtime/menu.vim, src/buffer.c, src/ex_cmds.c, src/ex_cmds2.c,
13634             src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/memline.c,
13635             src/message.c, src/window.c, src/proto/buffer.pro,
13636             src/proto/ex_cmds2.pro, src/proto/memline.pro
13638 Patch 6.3a.025
13639 Problem:    Setting 'virtualedit' moves the cursor. (Benji Fisher)
13640 Solution:   Update the virtual column before using it.
13641 Files:      src/option.c
13643 Patch 6.3a.026 (extra, after 6.3a.008)
13644 Problem:    Editing files on Windows 98 doesn't work when 'encoding' is
13645             "utf-8" (Antoine Mechelynck)
13646             Warning for missing function prototype.
13647 Solution:   For all wide functions check if it failed because it is not
13648             implemented.  Use ANSI function declaration for char_to_string().
13649 Files:      src/gui_w48.c, src/os_mswin.c, src/os_win32.c
13651 Patch 6.3a.027 (extra, after 6.3a.026)
13652 Problem:    Compiler warning for function argument.
13653 Solution:   Declare both char and WCHAR arrays.
13654 Files:      src/gui_w48.c
13656 Patch 6.3a.028
13657 Problem:    ":normal ." doesn't work inside a function, because redo is saved
13658             and restored. (Benji Fisher)
13659 Solution:   Make a copy of the redo buffer when executing a function.
13660 Files:      src/getchar.c
13662 Patch 6.3b.001 (extra)
13663 Problem:    Bcc 5: The generated auto/pathdef can't be compiled.
13664 Solution:   Fix the way quotes and backslashes are escaped.
13665 Files:      src/Make_bc5.mak
13667 Patch 6.3b.002
13668 Problem:    Win32: conversion during file write fails when a double-byte
13669             character is split over two writes.
13670 Solution:   Fix the conversion retry without a trailing byte. (Taro Muraoka)
13671 Files:      src/fileio.c
13673 Patch 6.3b.003 (extra)
13674 Problem:    Win32: When compiling with Borland C 5.5 and 'encoding' is "utf-8"
13675             then Vim can't open files under MS-Windows 98. (Antoine J.
13676             Mechelynck)
13677 Solution:   Don't use _wstat(), _wopen() and _wfopen() in this situation.
13678 Files:      src/os_mswin.c, src/os_win32.c
13680 Patch 6.3b.004
13681 Problem:    ":helpgrep" includes a trailing CR in the text line.
13682 Solution:   Remove the CR.
13683 Files:      src/quickfix.c
13685 Patch 6.3b.005
13686 Problem:    ":echo &g:ai" results in the local option value. (Salman Halim)
13687 Solution:   Pass the flags from find_option_end() to get_option_value().
13688 Files:      src/eval.c
13690 Patch 6.3b.006
13691 Problem:    When using "mswin.vim", CTRL-V in Insert mode leaves cursor before
13692             last pasted character.  (Mathew Davis)
13693 Solution:   Use the same Paste() function as in menu.vim.
13694 Files:      runtime/mswin.vim
13696 Patch 6.3b.007
13697 Problem:    Session file doesn't restore view on windows properly. (Robert
13698             Webb)
13699 Solution:   Restore window sizes both before and after restoring the view, so
13700             that the view, cursor position and size are restored properly.
13701 Files:      src/ex_docmd.c
13703 Patch 6.3b.008
13704 Problem:    Using ":finally" in a user command doesn't always work. (Hari
13705             Krishna Dara)
13706 Solution:   Don't assume that using getexline() means the command was typed.
13707 Files:      src/ex_docmd.c
13709 Patch 6.3b.009 (extra)
13710 Problem:    Win32: When the -P argument is not found in a window title, there
13711             is no error message.
13712 Solution:   When the window can't be found give an error message and exit.
13713             Also use try/except to catch failing to open the MDI window.
13714             (Michael Wookey)
13715 Files:      src/gui_w32.c
13717 Patch 6.3b.010
13718 Problem:    Win32: Using the "-D" argument and expanding arguments may cause a
13719             hang, because the terminal isn't initialized yet. (Vince Negri)
13720 Solution:   Don't go into debug mode before the terminal is initialized.
13721 Files:      src/main.c
13723 Patch 6.3b.011
13724 Problem:    Using CTRL-\ e while obtaining an expression aborts the command
13725             line. (Hari Krishna Dara)
13726 Solution:   Insert the CTRL-\ e as typed.
13727 Files:      src/ex_getln.c
13729 Patch 6.3b.012 (after 6.3b.010)
13730 Problem:    Can't compile with tiny features. (Norbert Tretkowski)
13731 Solution:   Add #ifdefs.
13732 Files:      src/main.c
13734 Patch 6.3b.013
13735 Problem:    Loading a session file results in editing the wrong file in the
13736             first window when this is not the file at the current position in
13737             the argument list. (Robert Webb)
13738 Solution:   Check w_arg_idx_invalid to decide whether to edit a file.
13739 Files:      src/ex_docmd.c
13741 Patch 6.3b.014
13742 Problem:    ":runtime! foo*.vim" may using freed memory when a sourced script
13743             changes the value of 'runtimepath'.
13744 Solution:   Make a copy of 'runtimepath' when looping over the matches.
13745 Files:      src/ex_cmds2.c
13747 Patch 6.3b.015
13748 Problem:    Get lalloc(0) error when using "p" in Visual mode while
13749             'clipboard' contains "autoselect,unnamed". (Mark Wagonner)
13750 Solution:   Avoid allocating zero bytes.  Obtain the clipboard when necessary.
13751 Files:      src/ops.c
13753 Patch 6.3b.016
13754 Problem:    When 'virtualedit' is used "x" doesn't delete the last character
13755             of a line that has as many characters as 'columns'. (Yakov Lerner)
13756 Solution:   When the cursor isn't moved let oneright() return FAIL.
13757 Files:      src/edit.c
13759 Patch 6.3b.017
13760 Problem:    Win32: "vim --remote-wait" doesn't exit when the server finished
13761             editing the file. (David Fishburn)
13762 Solution:   In the rrhelper plugin change backslashes to forward slashes and
13763             escape special characters.
13764 Files:      runtime/plugin/rrhelper.vim
13766 Patch 6.3b.018
13767 Problem:    The list of help files in the "local additions" table doesn't
13768             recognize utf-8 encoding. (Yasuhiro Matsumoto)
13769 Solution:   Recognize utf-8 characters.
13770 Files:      src/ex_cmds.c
13772 Patch 6.3b.019
13773 Problem:    When $VIMRUNTIME is not a full path name the "local additions"
13774             table lists all the help files.
13775 Solution:   Use fullpathcmp() instead of fnamecmp() to compare the directory
13776             names.
13777 Files:      src/ex_cmds.c
13779 Patch 6.3b.020
13780 Problem:    When using CTRL-^ when entering a search string, the item in the
13781             statusline that indicates the keymap is not updated. (Ilya
13782             Dogolazky)
13783 Solution:   Mark the statuslines for updating.
13784 Files:      src/ex_getln.c
13786 Patch 6.3b.021
13787 Problem:    The swapfile is not readable for others, the ATTENTION prompt does
13788             not show all info when someone else is editing the same file.
13789             (Marcel Svitalsky)
13790 Solution:   Use the protection of original file for the swapfile and set it
13791             after creating the swapfile.
13792 Files:      src/fileio.c
13794 Patch 6.3b.022
13795 Problem:    Using "4v" to select four times the old Visual area may put the
13796             cursor beyond the end of the line. (Jens Paulus)
13797 Solution:   Correct the cursor column.
13798 Files:      src/normal.c
13800 Patch 6.3b.023
13801 Problem:    When "3dip" starts in an empty line, white lines after the
13802             non-white lines are not deleted. (Jens Paulus)
13803 Solution:   Include the white lines.
13804 Files:      src/search.c
13806 Patch 6.3b.024
13807 Problem:    "2daw" does not delete leading white space like "daw" does.  (Jens
13808             Paulus)
13809 Solution:   Include the white space when a count is used.
13810 Files:      src/search.c
13812 Patch 6.3b.025
13813 Problem:    Percentage in ruler isn't updated when a line is deleted. (Jens
13814             Paulus)
13815 Solution:   Check for a change in line count when deciding to update the ruler.
13816 Files:      src/screen.c, src/structs.h
13818 Patch 6.3b.026
13819 Problem:    When selecting "abort" at the ATTENTION prompt for a file that is
13820             already being edited Vim crashes.
13821 Solution:   Don't abort creating a new buffer when we really need it.
13822 Files:      src/buffer.c, src/vim.h
13824 Patch 6.3b.027
13825 Problem:    Win32: When enabling the menu in a maximized window, Vim uses more
13826             lines than what is room for. (Shizhu Pan)
13827 Solution:   When deciding to call shell_resized(), also compare the text area
13828             size with Rows and Columns, not just with screen_Rows and
13829             screen_Columns.
13830 Files:      src/gui.c
13832 Patch 6.3b.028
13833 Problem:    When in diff mode, setting 'rightleft' causes a crash. (Eddine)
13834 Solution:   Check for last column differently when 'rightleft' is set.
13835 Files:      src/screen.c
13837 Patch 6.3b.029
13838 Problem:    Win32: warning for uninitialized variable.
13839 Solution:   Initialize to zero.
13840 Files:      src/misc1.c
13842 Patch 6.3b.030
13843 Problem:    After Visually selecting four characters, changing it to other
13844             text, Visually selecting and yanking two characters: "." changes
13845             four characters, another "." changes two characters. (Robert Webb)
13846 Solution:   Don't store the size of the Visual area when redo is active.
13847 Files:      src/normal.c
13849 ==============================================================================
13850 VERSION 6.4                                             *version-6.4*
13852 This section is about improvements made between version 6.3 and 6.4.
13854 This is a bug-fix release.  There are also a few new features.  The major
13855 number of new items is in the runtime files and translations.
13857 The big MS-Windows version now uses:
13858         Ruby version 1.8.3
13859         Perl version 5.8.7
13860         Python version 2.4.2
13863 Changed                                                 *changed-6.4*
13864 -------
13866 Removed runtime/tools/tcltags, Exuberant ctags does it better.
13869 Added                                                   *added-6.4*
13870 -----
13872 Alsaconf syntax file (Nikolai Weibull)
13873 Eruby syntax, indent, compiler and ftplugin file (Doug Kearns)
13874 Esterel syntax file (Maurizio Tranchero)
13875 Mathematica indent file (Steve Layland)
13876 Netrc syntax file (Nikolai Weibull)
13877 PHP compiler file (Doug Kearns)
13878 Pascal indent file (Neil Carter)
13879 Prescribe syntax file (Klaus Muth)
13880 Rubyunit compiler file (Doug Kearns)
13881 SMTPrc syntax file (Kornel Kielczewski)
13882 Sudoers syntax file (Nikolai Weibull)
13883 TPP syntax file (Gerfried Fuchs)
13884 VHDL ftplugin file (R. Shankar)
13885 Verilog-AMS syntax file (S. Myles Prather)
13887 Bulgarian keymap (Alberto Mardegan)
13888 Canadian keymap (Eric Joanis)
13890 Hungarian menu translations in UTF-8 (Kantra Gergely)
13891 Ukrainian menu translations (Bohdan Vlasyuk)
13893 Irish message translations (Kevin Patrick Scannell)
13895 Configure also checks for tclsh8.4.
13898 Fixed                                                   *fixed-6.4*
13899 -----
13901 "dFxd;" deleted the character under the cursor, "d;" didn't remember the
13902 exclusiveness of the motion.
13904 When using "set laststatus=2 cmdheight=2" in the .gvimrc you may only get one
13905 line for the cmdline. (Christian Robinson)  Invoke command_height() after the
13906 GUI has started up.
13908 Gcc would warn "dereferencing type-punned pointer will break strict -aliasing
13909 rules".  Avoid using typecasts for variable pointers.
13911 Gcc 3.x interprets the -MM argument differently.  Change "-I /path" to
13912 "-isystem /path" for "make depend".
13915 Patch 6.3.001
13916 Problem:    ":browse split" gives the file selection dialog twice. (Gordon
13917             Bazeley)  Same problem for ":browse diffpatch".
13918 Solution:   Reset cmdmod.browse before calling do_ecmd().
13919 Files:      src/diff.c, src/ex_docmd.c
13921 Patch 6.3.002
13922 Problem:    When using translated help files with non-ASCII latin1 characters
13923             in the first line the utf-8 detection is wrong.
13924 Solution:   Properly detect utf-8 characters.  When a mix of encodings is
13925             detected continue with the next language and avoid a "no matches"
13926             error because of "got_int" being set.  Add the directory name to
13927             the error message for a duplicate tag.
13928 Files:      src/ex_cmds.c
13930 Patch 6.3.003
13931 Problem:    Crash when using a console dialog and the first choice does not
13932             have a default button. (Darin Ohashi)
13933 Solution:   Allocate two more characters for the [] around the character for
13934             the default choice.
13935 Files:      src/message.c
13937 Patch 6.3.004
13938 Problem:    When searching for a long string (140 chars in a 80 column
13939             terminal) get three hit-enter prompts. (Robert Webb)
13940 Solution:   Avoid the hit-enter prompt when giving the message for wrapping
13941             around the end of the buffer.  Don't give that message again when
13942             the string was not found.
13943 Files:      src/message.c, src/search.c
13945 Patch 6.3.005
13946 Problem:    Crash when searching for a pattern with a character offset and
13947             starting in a closed fold. (Frank Butler)
13948 Solution:   Check for the column to be past the end of the line.  Also fix
13949             that a pattern with a character offset relative to the end isn't
13950             read back from the viminfo properly.
13951 Files:      src/search.c
13953 Patch 6.3.006
13954 Problem:    ":breakadd file *foo" prepends the current directory to the file
13955             pattern. (Hari Krishna Dara)
13956 Solution:   Keep the pattern as-is.
13957 Files:      src/ex_cmds2.c
13959 Patch 6.3.007
13960 Problem:    When there is a buffer with 'buftype' set to "nofile" and using a
13961             ":cd" command, the swap file is not deleted when exiting.
13962 Solution:   Use the full path of the swap file also for "nofile" buffers.
13963 Files:      src/fileio.c
13965 Patch 6.3.008
13966 Problem:    Compiling fails under OS/2.
13967 Solution:   Include "e_screenmode" also for OS/2. (David Sanders)
13968 Files:      src/globals.h
13970 Patch 6.3.009 (after 6.3.006)
13971 Problem:    ":breakadd file /path/foo.vim" does not match when a symbolic link
13972             is involved.  (Servatius Brandt)
13973 Solution:   Do expand the pattern when it does not start with "*".
13974 Files:      runtime/doc/repeat.txt, src/ex_cmds2.c
13976 Patch 6.3.010
13977 Problem:    When writing to a named pipe there is an error for fsync()
13978             failing.
13979 Solution:   Ignore the fsync() error for devices.
13980 Files:      src/fileio.c
13982 Patch 6.3.011
13983 Problem:    Crash when the completion function of a user-command uses a
13984             "normal :cmd" command.  (Hari Krishna Dara)
13985 Solution:   Save the command line when invoking the completion function.
13986 Files:      src/ex_getln.c
13988 Patch 6.3.012
13989 Problem:    Internal lalloc(0) error when using a complicated multi-line
13990             pattern in a substitute command. (Luc Hermitte)
13991 Solution:   Avoid going past the end of a line.
13992 Files:      src/ex_cmds.c
13994 Patch 6.3.013
13995 Problem:    Crash when editing a command line and typing CTRL-R = to evaluate
13996             a function that uses "normal :cmd". (Hari Krishna Dara)
13997 Solution:   Save and restore the command line when evaluating an expression
13998             for CTRL-R =.
13999 Files:      src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
14000             src/proto/ops.pro
14002 Patch 6.3.014
14003 Problem:    When using Chinese or Taiwanese the default for 'helplang' is
14004             wrong. (Simon Liang)
14005 Solution:   Use the part of the locale name after "zh_".
14006 Files:      src/option.c
14008 Patch 6.3.015
14009 Problem:    The string that winrestcmd() returns may end in garbage.
14010 Solution:   NUL-terminate the string. (Walter Briscoe)
14011 Files:      src/eval.c
14013 Patch 6.3.016
14014 Problem:    The default value for 'define' has "\s" before '#'.
14015 Solution:   Add a star after "\s". (Herculano de Lima Einloft Neto)
14016 Files:      src/option.c
14018 Patch 6.3.017
14019 Problem:    "8zz" may leave the cursor beyond the end of the line. (Niko
14020             Maatjes)
14021 Solution:   Correct the cursor column after moving to another line.
14022 Files:      src/normal.c
14024 Patch 6.3.018
14025 Problem:    ":0argadd zero" added the argument after the first one, instead of
14026             before it. (Adri Verhoef)
14027 Solution:   Accept a zero range for ":argadd".
14028 Files:      src/ex_cmds.h
14030 Patch 6.3.019
14031 Problem:    Crash in startup for debug version. (David Rennals)
14032 Solution:   Move the call to nbdebug_wait() to after allocating NameBuff.
14033 Files:      src/main.c
14035 Patch 6.3.020
14036 Problem:    When 'encoding' is "utf-8" and 'delcombine' is set, "dw" does not
14037             delete a word but only a combining character of the first
14038             character, if there is one. (Raphael Finkel)
14039 Solution:   Correctly check that one character is being deleted.
14040 Files:      src/misc1.c
14042 Patch 6.3.021
14043 Problem:    When the last character of a file name is a multi-byte character
14044             and the last byte is a path separator, the file cannot be edited.
14045 Solution:   Check for the last byte to be part of a multi-byte character.
14046             (Taro Muraoka)
14047 Files:      src/fileio.c
14049 Patch 6.3.022 (extra)
14050 Problem:    Win32: When the last character of a file name is a multi-byte
14051             character and the last byte is a path separator, the file cannot
14052             be written.  A trail byte that is a space makes that a file cannot
14053             be opened from the command line.
14054 Solution:   Recognize double-byte characters when parsing the command line.
14055             In mch_stat() check for the last byte to be part of a multi-byte
14056             character.  (Taro Muraoka)
14057 Files:      src/gui_w48.c, src/os_mswin.c
14059 Patch 6.3.023
14060 Problem:    When the "to" part of a mapping starts with its "from" part,
14061             abbreviations for the same characters is not possible.  For
14062             example, when <Space> is mapped to something that starts with a
14063             space, typing <Space> does not expand abbreviations.
14064 Solution:   Only disable expanding abbreviations when a mapping is not
14065             remapped, don't disable it when the RHS of a mapping starts with
14066             the LHS.
14067 Files:      src/getchar.c, src/vim.h
14069 Patch 6.3.024
14070 Problem:    In a few places a string in allocated memory is not terminated
14071             with a NUL.
14072 Solution:   Add ga_append(NUL) in script_get(), gui_do_findrepl() and
14073             serverGetVimNames().
14074 Files:      src/ex_getln.c, src/gui.c, src/if_xcmdsrv.c, src/os_mswin.c
14076 Patch 6.3.025 (extra)
14077 Problem:    Missing NUL for list of server names.
14078 Solution:   Add ga_append(NUL) in serverGetVimNames().
14079 Files:      src/os_mswin.c
14081 Patch 6.3.026
14082 Problem:    When ~/.vim/after/syntax/syncolor.vim contains a command that
14083             reloads the colors an endless loop and/or a crash may occur.
14084 Solution:   Only free the old value of an option when it was originally
14085             allocated.  Limit recursiveness of init_highlight() to 5 levels.
14086 Files:      src/option.c, src/syntax.c
14088 Patch 6.3.027
14089 Problem:    VMS: Writing a file may insert extra CR characters.  Not all
14090             terminals are recognized correctly.  Vt320 doesn't support colors.
14091             Environment variables are not expanded correctly.
14092 Solution:   Use another method to write files.  Add vt320 termcap codes for
14093             colors.  (Zoltan Arpadffy)
14094 Files:      src/fileio.c, src/misc1.c, src/os_unix.c, src/structs.h,
14095             src/term.c
14097 Patch 6.3.028
14098 Problem:    When appending to a file the BOM marker may be written.  (Alex
14099             Jakushev)
14100 Solution:   Do not write the BOM marker when appending.
14101 Files:      src/fileio.c
14103 Patch 6.3.029
14104 Problem:    Crash when inserting a line break. (Walter Briscoe)
14105 Solution:   In the syntax highlighting code, don't use an old state after a
14106             change was made, current_col may be past the end of the line.
14107 Files:      src/syntax.c
14109 Patch 6.3.030
14110 Problem:    GTK 2: Crash when sourcing a script that deletes the menus, sets
14111             'encoding' to "utf-8" and loads the menus again.  GTK error
14112             message when tooltip text is in a wrong encoding.
14113 Solution:   Don't copy characters from the old screen to the new screen when
14114             switching 'encoding' to utf-8, they may be invalid.  Only set the
14115             tooltip when it is valid utf-8.
14116 Files:      src/gui_gtk.c, src/mbyte.c, src/proto/mbyte.pro, src/screen.c
14118 Patch 6.3.031
14119 Problem:    When entering a mapping and pressing Tab halfway the command line
14120             isn't redrawn properly. (Adri Verhoef)
14121 Solution:   Reposition the cursor after drawing over the "..." of the
14122             completion attempt.
14123 Files:      src/ex_getln.c
14125 Patch 6.3.032
14126 Problem:    Using Python 2.3 with threads doesn't work properly.
14127 Solution:   Release the lock after initialization.
14128 Files:      src/if_python.c
14130 Patch 6.3.033
14131 Problem:    When a mapping ends in a Normal mode command of more than one
14132             character Vim doesn't return to Insert mode.
14133 Solution:   Check that the mapping has ended after obtaining all characters of
14134             the Normal mode command.
14135 Files:      src/normal.c
14137 Patch 6.3.034
14138 Problem:    VMS: crash when using ":help".
14139 Solution:   Avoid using "tags-??", some Open VMS systems can't handle the "?"
14140             wildcard.  (Zoltan Arpadffy)
14141 Files:      src/tag.c
14143 Patch 6.3.035 (extra)
14144 Problem:    RISC OS: Compile errors.
14145 Solution:   Change e_screnmode to e_screenmode.  Change the way
14146             __riscosify_control is set.  Improve the makefile.  (Andy Wingate)
14147 Files:      src/os_riscos.c, src/search.c, src/Make_ro.mak
14149 Patch 6.3.036
14150 Problem:    ml_get errors when the whole file is a fold, switching
14151             'foldmethod' and doing "zj". (Christian J. Robinson) Was not
14152             deleting the fold but creating a fold with zero lines.
14153 Solution:   Delete the fold properly.
14154 Files:      src/fold.c
14156 Patch 6.3.037 (after 6.3.032)
14157 Problem:    Warning for unused variable.
14158 Solution:   Change the #ifdefs for the saved thread stuff.
14159 Files:      src/if_python.c
14161 Patch 6.3.038 (extra)
14162 Problem:    Win32: When the "file changed" dialog pops up after a click that
14163             gives gvim focus and not moving the mouse after that, the effect
14164             of the click may occur when moving the mouse later. (Ken Clark)
14165             Happened because the release event was missed.
14166 Solution:   Clear the s_button_pending variable when any input is received.
14167 Files:      src/gui_w48.c
14169 Patch 6.3.039
14170 Problem:    When 'number' is set and inserting lines just above the first
14171             displayed line (in another window on the same buffer), the line
14172             numbers are not updated.  (Hitier Sylvain)
14173 Solution:   When 'number' is set and lines are inserted/deleted redraw all
14174             lines below the change.
14175 Files:      src/screen.c
14177 Patch 6.3.040
14178 Problem:    Error handling does not always work properly and may cause a
14179             buffer to be marked as if it's viewed in a window while it isn't.
14180             Also when selecting "Abort" at the attention prompt.
14181 Solution:   Add enter_cleanup() and leave_cleanup() functions to move
14182             saving/restoring things for error handling to one place.
14183             Clear a buffer read error when it's unloaded.
14184 Files:      src/buffer.c, src/ex_docmd.c, src/ex_eval.c,
14185             src/proto/ex_eval.pro, src/structs.h, src/vim.h
14187 Patch 6.3.041 (extra)
14188 Problem:    Win32: When the path to a file has Russian characters, ":cd %:p:h"
14189             doesn't work. (Valery Kondakoff)
14190 Solution:   Use a wide function to change directory.
14191 Files:      src/os_mswin.c
14193 Patch 6.3.042
14194 Problem:    When there is a closed fold at the top of the window, CTRL-X
14195             CTRL-E in Insert mode reduces the size of the fold instead of
14196             scrolling the text up. (Gautam)
14197 Solution:   Scroll over the closed fold.
14198 Files:      src/move.c
14200 Patch 6.3.043
14201 Problem:    'hlsearch' highlighting sometimes disappears when inserting text
14202             in PHP code with syntax highlighting. (Marcel Svitalsky)
14203 Solution:   Don't use pointers to remember where a match was found, use an
14204             index.  The pointers may become invalid when searching in other
14205             lines.
14206 Files:      src/screen.c
14208 Patch 6.3.044 (extra)
14209 Problem:    Mac: When 'linespace' is non-zero the Insert mode cursor leaves
14210             pixels behind. (Richard Sandilands)
14211 Solution:   Erase the character cell before drawing the text when needed.
14212 Files:      src/gui_mac.c
14215 Patch 6.3.045
14216 Problem:    Unusual characters in an option value may cause unexpected
14217             behavior, especially for a modeline. (Ciaran McCreesh)
14218 Solution:   Don't allow setting termcap options or 'printdevice' in a
14219             modeline.  Don't list options for "termcap" and "all" in a
14220             modeline.  Don't allow unusual characters in 'filetype', 'syntax',
14221             'backupext', 'keymap', 'patchmode' and 'langmenu'.
14222 Files:      src/option.c, runtime/doc/options.txt
14224 Patch 6.3.046
14225 Problem:    ":registers" doesn't show multi-byte characters properly.
14226             (Valery Kondakoff)
14227 Solution:   Get the length of each character before displaying it.
14228 Files:      src/ops.c
14230 Patch 6.3.047 (extra)
14231 Problem:    Win32 with Borland C 5.5 on Windows XP: A new file is created with
14232             read-only attributes. (Tony Mechelynck)
14233 Solution:   Don't use the _wopen() function for Borland.
14234 Files:      src/os_win32.c
14236 Patch 6.3.048 (extra)
14237 Problem:    Build problems with VMS on IA64.
14238 Solution:   Add dependencies to the build file. (Zoltan Arpadffy)
14239 Files:      src/Make_vms.mms
14241 Patch 6.3.049 (after 6.3.045)
14242 Problem:    Compiler warning for "char" vs "char_u" mixup. (Zoltan Arpadffy)
14243 Solution:   Add a typecast.
14244 Files:      src/option.c
14246 Patch 6.3.050
14247 Problem:    When SIGHUP is received while busy exiting, non-reentrant
14248             functions such as free() may cause a crash.
14249 Solution:   Ignore SIGHUP when exiting because of an error. (Scott Anderson)
14250 Files:      src/misc1.c, src/main.c
14252 Patch 6.3.051
14253 Problem:    When 'wildmenu' is set and completed file names contain multi-byte
14254             characters Vim may crash.
14255 Solution:   Reserve room for multi-byte characters. (Yasuhiro Matsumoto)
14256 Files:      src/screen.c
14258 Patch 6.3.052 (extra)
14259 Problem:    Windows 98: typed keys that are not ASCII may not work properly.
14260             For example with a Russian input method. (Jiri Jezdinsky)
14261 Solution:   Assume that the characters arrive in the current codepage instead
14262             of UCS-2.  Perform conversion based on that.
14263 Files:      src/gui_w48.c
14265 Patch 6.3.053
14266 Problem:    Win32: ":loadview" cannot find a file with non-ASCII characters.
14267             (Valerie Kondakoff)
14268 Solution:   Use mch_open() instead of open() to open the file.
14269 Files:      src/ex_cmds2.c
14271 Patch 6.3.054
14272 Problem:    When 'insertmode' is set <C-L>4ixxx<C-L> hangs Vim. (Jens Paulus)
14273             Vim is actually still working but redraw is disabled.
14274 Solution:   When stopping Insert mode with CTRL-L don't put an Esc in the redo
14275             buffer but a CTRL-L.
14276 Files:      src/edit.c
14278 Patch 6.3.055 (after 6.3.013)
14279 Problem:    Can't use getcmdline(), getcmdpos() or setcmdpos() with <C-R>=
14280             when editing a command line.  Using <C-\>e may crash Vim. (Peter
14281             Winters)
14282 Solution:   When moving ccline out of the way for recursive use, make it
14283             available to the functions that need it.  Also save and restore
14284             ccline when calling get_expr_line().  Make ccline.cmdbuf NULL at
14285             the end of getcmdline().
14286 Files:      src/ex_getln.c
14288 Patch 6.3.056
14289 Problem:    The last characters of a multi-byte file name may not be displayed
14290             in the window title.
14291 Solution:   Avoid to remove a multi-byte character where the last byte looks
14292             like a path separator character. (Yasuhiro Matsumoto)
14293 Files:      src/buffer.c, src/ex_getln.c
14295 Patch 6.3.057
14296 Problem:    When filtering lines folds are not updated. (Carl Osterwisch)
14297 Solution:   Update folds for filtered lines.
14298 Files:      src/ex_cmds.c
14300 Patch 6.3.058
14301 Problem:    When 'foldcolumn' is equal to the window width and 'wrap' is on
14302             Vim may crash.  Disabling the vertical split feature breaks
14303             compiling.  (Peter Winters)
14304 Solution:   Check for zero room for wrapped text.  Make compiling without
14305             vertical splits possible.
14306 Files:      src/move.c, src/quickfix.c, src/screen.c, src/netbeans.c
14308 Patch 6.3.059
14309 Problem:    Crash when expanding an ":edit" command containing several spaces
14310             with the shell. (Brian Hirt)
14311 Solution:   Allocate enough space for the quotes.
14312 Files:      src/os_unix.c
14314 Patch 6.3.060
14315 Problem:    Using CTRL-R CTRL-O in Insert mode with an invalid register name
14316             still causes something to be inserted.
14317 Solution:   Check the register name for being valid.
14318 Files:      src/edit.c
14320 Patch 6.3.061
14321 Problem:    When editing a utf-8 file in an utf-8 xterm and there is a
14322             multi-byte character in the last column, displaying is messed up.
14323             (Joël Rio)
14324 Solution:   Check for a multi-byte character, not a multi-column character.
14325 Files:      src/screen.c
14327 Patch 6.3.062
14328 Problem:    ":normal! gQ" hangs.
14329 Solution:   Quit getcmdline() and do_exmode() when out of typeahead.
14330 Files:      src/ex_getln.c, src/ex_docmd.c
14332 Patch 6.3.063
14333 Problem:    When a CursorHold autocommand changes to another window
14334             (temporarily) 'mousefocus' stops working.
14335 Solution:   Call gui_mouse_correct() after triggering CursorHold.
14336 Files:      src/gui.c
14338 Patch 6.3.064
14339 Problem:    line2byte(line("$") + 1) sometimes returns the wrong number.
14340             (Charles Campbell)
14341 Solution:   Flush the cached line before counting the bytes.
14342 Files:      src/memline.c
14344 Patch 6.3.065
14345 Problem:    The euro digraph doesn't always work.
14346 Solution:   Add an "e=" digraph for Unicode euro character and adjust the
14347             help files.
14348 Files:      src/digraph.c, runtime/doc/digraph.txt
14350 Patch 6.3.066
14351 Problem:    Backup file may get wrong permissions.
14352 Solution:   Use permissions of original file for backup file in more places.
14353 Files:      src/fileio.c
14355 Patch 6.3.067 (after 6.3.066)
14356 Problem:    Newly created file gets execute permission.
14357 Solution:   Check for "perm" to be negative before using it.
14358 Files:      src/fileio.c
14360 Patch 6.3.068
14361 Problem:    When editing a compressed file xxx.gz which is a symbolic link to
14362             the actual file a ":write" renames the link.
14363 Solution:   Resolve the link, so that the actual file is renamed and
14364             compressed.
14365 Files:      runtime/plugin/gzip.vim
14367 Patch 6.3.069
14368 Problem:    When converting text with illegal characters Vim may crash.
14369 Solution:   Avoid that too much is subtracted from the length. (Da Woon Jung)
14370 Files:      src/mbyte.c
14372 Patch 6.3.070
14373 Problem:    After ":set number linebreak wrap" and a vertical split, moving
14374             the vertical separator far left will crash Vim. (Georg Dahn)
14375 Solution:   Avoid dividing by zero.
14376 Files:      src/charset.c
14378 Patch 6.3.071
14379 Problem:    The message for CTRL-X mode is still displayed after an error for
14380             'thesaurus' or 'dictionary' being empty.
14381 Solution:   Clear "edit_submode".
14382 Files:      src/edit.c
14384 Patch 6.3.072
14385 Problem:    Crash in giving substitute message when language is Chinese and
14386             encoding is utf-8. (Yongwei)
14387 Solution:   Make the msg_buf size larger when using multi-byte.
14388 Files:      src/vim.h
14390 Patch 6.3.073
14391 Problem:    Win32 GUI: When the Vim window is partly above or below the
14392             screen, scrolling causes display errors when the taskbar is not on
14393             that side.
14394 Solution:   Use the SW_INVALIDATE flag when the Vim window is partly below or
14395             above the screen.
14396 Files:      src/gui_w48.c
14398 Patch 6.3.074
14399 Problem:    When mswin.vim is used and 'insertmode' is set, typing text in
14400             Select mode and then using CTRL-V results in <SNR>99_Pastegi.
14401             (Georg Dahn)
14402 Solution:   When restart_edit is set use "d" instead of "c" to remove the
14403             selected text to avoid calling edit() twice.
14404 Files:      src/normal.c
14406 Patch 6.3.075
14407 Problem:    After unloading another buffer, syntax highlighting in the current
14408             buffer may be wrong when it uses "containedin". (Eric Arnold)
14409 Solution:   Use "buf" instead of "curbuf" in syntax_clear().
14410 Files:      src/syntax.c
14412 Patch 6.3.076
14413 Problem:    Crash when using cscope and there is a parse error (e.g., line too
14414             long). (Alexey I. Froloff)
14415 Solution:   Pass the actual number of matches to cs_manage_matches() and
14416             correctly handle the error situation.
14417 Files:      src/if_cscope.c
14419 Patch 6.3.077 (extra)
14420 Problem:    VMS: First character input after ESC was not recognized.
14421 Solution:   Added TRM$M_TM_TIMED in vms_read().  (Zoltan Arpadffy)
14422 Files:      src/os_vms.c
14424 Patch 6.3.078 (extra, after 6.3.077)
14425 Problem:    VMS: Performance issue after patch 6.3.077
14426 Solution:   Add a timeout in the itemlist.  (Zoltan Arpadffy)
14427 Files:      src/os_vms.c
14429 Patch 6.3.079
14430 Problem:    Crash when executing a command in the command line window while
14431             syntax highlighting is enabled. (Pero Brbora)
14432 Solution:   Don't use a pointer to a buffer that has been deleted.
14433 Files:      src/syntax.c
14435 Patch 6.3.080 (extra)
14436 Problem:    Win32: With 'encoding' set to utf-8 while the current codepage is
14437             Chinese editing a file with some specific characters in the name
14438             fails.
14439 Solution:   Use _wfullpath() instead of _fullpath() when necessary.
14440 Files:      src/os_mswin.c
14442 Patch 6.3.081
14443 Problem:    Unix: glob() may execute a shell command when it's not wanted.
14444             (Georgi Guninski)
14445 Solution:   Verify the sandbox flag is not set.
14446 Files:      src/os_unix.c
14448 Patch 6.3.082 (after 6.3.081)
14449 Problem:    Unix: expand() may execute a shell command when it's not wanted.
14450             (Georgi Guninski)
14451 Solution:   A more generic solution than 6.3.081.
14452 Files:      src/os_unix.c
14454 Patch 6.3.083
14455 Problem:    VMS: The vt320 termcap entry is incomplete.
14456 Solution:   Add missing function keys.  (Zoltan Arpadffy)
14457 Files:      src/term.c
14459 Patch 6.3.084 (extra)
14460 Problem:    Cygwin: compiling with DEBUG doesn't work.  Perl path was ignored.
14461             Failure when $(OUTDIR) already exists.  "po" makefile is missing.
14462 Solution:   Use changes tested in Vim 7. (Tony Mechelynck)
14463 Files:      src/Make_cyg.mak, src/po/Make_cyg.mak
14465 Patch 6.3.085
14466 Problem:    Crash in syntax highlighting code. (Marc Espie)
14467 Solution:   Prevent current_col going past the end of the line.
14468 Files:      src/syntax.c
14470 Patch 6.3.086 (extra)
14471 Problem:    Can't produce message translation file with msgfmt that checks
14472             printf strings.
14473 Solution:   Fix the Russian translation.
14474 Files:      src/po/ru.po, src/po/ru.cp1251.po
14476 Patch 6.3.087
14477 Problem:    MS-DOS: Crash. (Jason Hood)
14478 Solution:   Don't call fname_case() with a NULL pointer.
14479 Files:      src/ex_cmds.c
14481 Patch 6.3.088
14482 Problem:    Editing ".in" causes error E218. (Stefan Karlsson)
14483 Solution:   Require some characters before ".in".  Same for ".orig" and others.
14484 Files:      runtime/filetype.vim
14486 Patch 6.3.089
14487 Problem:    A session file doesn't work when created while the current
14488             directory contains a space or the directory of the session files
14489             contains a space. (Paolo Giarrusso)
14490 Solution:   Escape spaces with a backslash.
14491 Files:      src/ex_docmd.c
14493 Patch 6.3.090
14494 Problem:    A very big value for 'columns' or 'lines' may cause a crash.
14495 Solution:   Limit the values to 10000 and 1000.
14496 Files:      src/option.c
14498 Patch 6.4a.001
14499 Problem:    The Unix Makefile contained too many dependencies and a few
14500             uncommented lines.
14501 Solution:   Run "make depend" with manual changes to avoid a gcc
14502             incompatibility.  Comment a few lines.
14503 Files:      src/Makefile
14505 Patch 6.4b.001
14506 Problem:    Vim reports "Vim 6.4a" in the ":version" output.
14507 Solution:   Change "a" to "b". (Tony Mechelynck)
14508 Files:      src/version.h
14510 Patch 6.4b.002
14511 Problem:    In Insert mode, pasting a multi-byte character after the end of
14512             the line leaves the cursor just before that character.
14513 Solution:   Make sure "gP" leaves the cursor in the right place when
14514             'virtualedit' is set.
14515 Files:      src/ops.c
14517 Patch 6.4b.003 (after 6.4b.002)
14518 Problem:    The problem still exists when 'encoding' is set to "cp936".
14519 Solution:   Fix the problem in getvvcol(), compute the coladd field correctly.
14520 Files:      src/charset.c, src/ops.c
14522 Patch 6.4b.004
14523 Problem:    Selecting a {} block with "viB" includes the '}' when there is an
14524             empty line before it.
14525 Solution:   Don't advance the cursor to include a line break when it's already
14526             at the line break.
14527 Files:      src/search.c
14530  vim:tw=78:ts=8:ft=help:norl: