1*version6.txt*  For Vim version 7.3.  Last change: 2008 Aug 06
2
3
4		  VIM REFERENCE MANUAL    by Bram Moolenaar
5
6
7Welcome to Vim Version 6.0!  A large number of features has been added.  This
8file mentions all the new items that have been added, changes to existing
9features and bug fixes compared to Vim 5.x.
10
11See |vi_diff.txt| for an overview of differences between Vi and Vim 6.0.
12See |version4.txt| for differences between Vim 3.0 and Vim 4.0.
13See |version5.txt| for differences between Vim 4.0 and Vim 5.0.
14
15INCOMPATIBLE CHANGES			|incompatible-6|
16
17Cursor position in Visual mode		|curpos-visual|
18substitute command Vi compatible	|substitute-CR|
19global option values introduced		|new-global-values|
20'fileencoding' changed			|fileencoding-changed|
21Digraphs changed			|digraphs-changed|
22Filetype detection changed		|filetypedetect-changed|
23Unlisted buffers introduced		|new-unlisted-buffers|
24CTRL-U in Command-line mode changed	|CTRL-U-changed|
25Ctags gone				|ctags-gone|
26Documentation reorganized		|documentation-6|
27Modeless selection and clipboard	|modeless-and-clipboard|
28Small incompatibilities			|incomp-small-6|
29
30NEW FEATURES				|new-6|
31
32Folding					|new-folding|
33Vertically split windows		|new-vertsplit|
34Diff mode				|new-diff-mode|
35Easy Vim: click-and-type		|new-evim|
36User manual				|new-user-manual|
37Flexible indenting			|new-indent-flex|
38Extended search patterns		|new-searchpat|
39UTF-8 support				|new-utf-8|
40Multi-language support			|new-multi-lang|
41Plugin support				|new-plugins|
42Filetype plugins			|new-filetype-plugins|
43File browser				|new-file-browser|
44Editing files over a network		|new-network-files|
45Window for command-line editing		|new-cmdwin|
46Debugging mode				|new-debug-mode|
47Cursor in virtual position		|new-virtedit|
48Debugger interface			|new-debug-itf|
49Communication between Vims		|new-vim-server|
50Buffer type options			|new-buftype|
51Printing				|new-printing|
52Ports					|ports-6|
53Quickfix extended			|quickfix-6|
54Operator modifiers			|new-operator-mod|
55Search Path				|new-search-path|
56Writing files improved			|new-file-writing|
57Argument list				|new-argument-list|
58Restore a View				|new-View|
59Color schemes				|new-color-schemes|
60Various new items			|new-items-6|
61
62IMPROVEMENTS				|improvements-6|
63
64COMPILE TIME CHANGES			|compile-changes-6|
65
66BUG FIXES				|bug-fixes-6|
67
68VERSION 6.1			|version-6.1|
69Changed					|changed-6.1|
70Added					|added-6.1|
71Fixed					|fixed-6.1|
72
73VERSION 6.2			|version-6.2|
74Changed					|changed-6.2|
75Added					|added-6.2|
76Fixed					|fixed-6.2|
77
78VERSION 6.3			|version-6.3|
79Changed					|changed-6.3|
80Added					|added-6.3|
81Fixed					|fixed-6.3|
82
83VERSION 6.4			|version-6.4|
84Changed					|changed-6.4|
85Added					|added-6.4|
86Fixed					|fixed-6.4|
87
88==============================================================================
89INCOMPATIBLE CHANGES				*incompatible-6*
90
91These changes are incompatible with previous releases.  Check this list if you
92run into a problem when upgrading from Vim 5.x to 6.0
93
94
95Cursor position in Visual mode			*curpos-visual*
96------------------------------
97
98When going from one window to another window on the same buffer while in
99Visual mode, the cursor position of the other window is adjusted to keep the
100same Visual area.  This can be used to set the start of the Visual area in one
101window and the end in another.  In vim 5.x the cursor position of the other
102window would be used, which could be anywhere and was not very useful.
103
104
105Substitute command Vi compatible		*substitute-CR*
106--------------------------------
107
108The substitute string (the "to" part of the substitute command) has been made
109Vi compatible.  Previously a CTRL-V had a special meaning and could be used to
110prevent a <CR> to insert a line break.  This made it impossible to insert a
111CTRL-V before a line break.  Now a backslash is used to prevent a <CR> to
112cause a line break.  Since the number of backslashes is halved, it is still
113possible to insert a line break at the end of the line.  This now works just
114like Vi, but it's not compatible with Vim versions before 6.0.
115
116When a ":s" command doesn't make any substitutions, it no longer sets the '[
117and '] marks.  This is not related to Vi, since it doesn't have these marks.
118
119
120Global option values introduced			*new-global-values*
121-------------------------------
122
123There are now global values for options which are local to a buffer or window.
124Previously the local options were copied from one buffer to another.  When
125editing another file this could cause option values from a modeline to be used
126for the wrong file.  Now the global values are used when entering a buffer
127that has not been used before.  Also, when editing another buffer in a window,
128the local window options are reset to their global values.  The ":set" command
129sets both the local and global values, this is still compatible.  But a
130modeline only sets the local value, this is not backwards compatible.
131
132":let &opt = val" now sets the local and global values, like ":set".  New
133commands 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"
137
138
139'fileencoding' changed				*fileencoding-changed*
140----------------------
141
142'fileencoding' was used in Vim 5.x to set the encoding used inside all of Vim.
143This was a bit strange, because it was local to a buffer and worked for all
144buffers.  It could never be different between buffers, because it changed the
145way text in all buffers was interpreted.
146It is now used for the encoding of the file related to the buffer.  If you
147still set 'fileencoding' it is likely to be overwritten by the detected
148encoding from 'fileencodings', thus it is "mostly harmless".
149The old FileEncoding autocommand now does the same as the new EncodingChanged
150event.
151
152
153Digraphs changed				*digraphs-changed*
154----------------
155
156The default digraphs now correspond to RFC1345.  This is very different from
157what was used in Vim 5.x. |digraphs|
158
159
160Filetype detection changed			*filetypedetect-changed*
161--------------------------
162
163The filetype detection previously was using the "filetype" autocommand group.
164This caused confusion with the FileType event name (case is ignored).  The
165group is now called "filetypedetect".  It still works, but if the "filetype"
166group 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
169compatibility.
170
171The connection between the FileType event and setting the 'syntax' option was
172previously in the "syntax" autocommand group.  That caused confusion with the
173Syntax event name.  The group is now called "syntaxset".
174
175The distributed syntax files no longer contain "syntax clear".  That makes it
176possible to include one in the other without tricks.  The syntax is now
177cleared when the 'syntax' option is set (by an autocommand added from
178synload.vim).  This makes the syntax cleared when the value of 'syntax' does
179not correspond to a syntax file.  Previously the existing highlighting was
180kept.
181
182
183Unlisted buffers introduced			*new-unlisted-buffers*
184---------------------------
185
186There is now a difference between buffers which don't appear in the buffer
187list 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
189buffer list. |unlisted-buffer|
190The 'buflisted' option can be used to make a buffer appear in the buffer list
191or not.
192
193Several commands that previously added a buffer to the buffer list now create
194an unlisted buffer.  This means that a ":bnext" and ":ball" will not find these
195files until they have actually been edited.  For example, buffers used for the
196alternative file by ":write file" and ":read file".
197   Other commands previously completely deleted a buffer and now only remove
198the buffer from the buffer list.  Commands relying on a buffer not to be
199present might fail.  For example, a ":bdelete" command in an autocommand that
200relied on something following to fail (was used in the automatic tests).
201|:bwipeout| can be used for the old meaning of ":bdelete".
202
203The BufDelete autocommand event is now triggered when a buffer is removed from
204the buffer list.  The BufCreate event is only triggered when a buffer is
205created that is added to the buffer list, or when an existing buffer is added
206to the buffer list.  BufAdd is a new name for BufCreate.
207The new BufNew event is for creating any buffer and BufWipeout for really
208deleting a buffer.
209
210When doing Insert mode completion, only buffers in the buffer list are
211scanned.  Added the 'U' flag to 'complete' to do completion from unlisted
212buffers.
213
214Unlisted buffers are not stored in a viminfo file.
215
216
217CTRL-U in Command-line mode changed		*CTRL-U-changed*
218-----------------------------------
219
220Using CTRL-U when editing the command line cleared the whole line.  Most
221shells only delete the characters before the cursor.  Made it work like that.
222(Steve Wall)
223
224You can get the old behavior with CTRL-E CTRL-U: >
225	:cnoremap <C-U> <C-E><C-U>
226
227
228Ctags gone					*ctags-gone*
229----------
230
231Ctags is no longer part of the Vim distribution.  It's now a grown-up program
232by itself, it deserves to be distributed separately.
233Ctags can be found here: http://ctags.sf.net/.
234
235
236Documentation reorganized			*documentation-6*
237-------------------------
238
239The documentation has been reorganized, an item may not be where you found it
240in 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).
244
245The examples in the documentation were previously marked with a ">" in the
246first column.  This made it difficult to copy/paste them.  There is now a
247single ">" before the example and it ends at a "<" or a non-blank in the first
248column.  This also looks better without highlighting.
249
250'helpfile' is no longer used to find the help tags file.  This allows a user
251to add its own help files (e.g., for plugins).
252
253
254Modeless selection and clipboard		*modeless-and-clipboard*
255--------------------------------
256
257The modeless selection is used to select text when Visual mode can't be used,
258for example when editing the command line or at the more prompt.
259In Vim 5.x the modeless selection was always used.  On MS-Windows this caused
260the clipboard to be overwritten, with no way to avoid that.  The modeless
261selection now obeys the 'a' and 'A' flags in 'guioptions' and "autoselect" and
262"autoselectml" in 'clipboard'.  By default there is no automatic copy on
263MS-Windows.  Use the |c_CTRL-Y| command to manually copy the selection.
264
265To get the old behavior back, do this: >
266
267	:set clipboard^=autoselectml guioptions+=A
268
269
270Small incompatibilities				*incomp-small-6*
271-----------------------
272
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
276security.
277
278Removed '_' from the 'breakat' default: It's commonly used in keywords.
279
280The default for 'mousehide' is on, because this works well for most people.
281
282The Amiga binary is now always compiled with "big" features.  The "big" binary
283archive no longer exists.
284
285The items "[RO]", "[+]", "[help]", "[Preview]" and "[filetype]" in
286'statusline' no longer have a leading space.
287
288Non-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.
290
291The 'lisp', 'smartindent' and 'cindent' options are not switched off when
292'paste' is set.  The auto-indenting is disabled when 'paste' is set, but
293manual indenting with "=" still works.
294
295When formatting with "=" uses 'cindent' or 'indentexpr' indenting, and there
296is no change in indent, this is not counted as a change ('modified' isn't set
297and there is nothing to undo).
298
299Report 'modified' as changed when 'fileencoding' or 'fileformat' was set.
300Thus it reflects the possibility to abandon the buffer without losing changes.
301
302The "Save As" menu entry now edits the saved file.  Most people expect it to
303work like this.
304
305A buffer for a directory is no longer added to the Buffers menu.
306
307Renamed <Return> to <Enter>, since that's what it's called on most keyboards.
308Thus it's now the hit-enter prompt instead of the hit-return prompt.
309Can map <Enter> just like <CR> or <Return>.
310
311The default for the 'viminfo' option is now '20,"50,h when 'compatible' isn't
312set.  Most people will want to use it, including beginners, but it required
313setting the option, which isn't that easy.
314
315After using ":colder" the newer error lists are overwritten.  This makes it
316possible to use ":grep" to browse in a tree-like way.  Must use ":cnewer 99"
317to get the old behavior.
318
319The patterns in 'errorformat' would sometimes ignore case (MS-Windows) and
320sometimes not (Unix).  Now case is always ignored.  Add "\C" to the pattern to
321match case.
322
323The 16 bit MS-DOS version is now compiled without the +listcmds feature
324(buffer list manipulation commands).  They are not often needed and this
325executable needs to be smaller.
326
327'sessionoptions' now includes "curdir" by default.  This means that restoring
328a session will result in the current directory being restored, instead of
329going to the directory where the session file is located.
330
331A session deleted all buffers, deleting all marks.  Now keep the buffer list,
332it shouldn't hurt for some existing buffers to remain present.
333When the argument list is empty ":argdel *" caused an error message.
334
335No longer put the search pattern from a tag jump in the history.
336
337Use "SpecialKey" highlighting for unprintable characters instead of "NonText".
338The idea is that unprintable text or any text that's displayed differently
339from the characters in the file is using "SpecialKey", and "NonText" is used
340for text that doesn't really exist in the file.
341
342Motif now uses the system default colors for the menu and scrollbar.  Used to
343be grey.  It's still possible to set the colors with ":highlight" commands and
344resources.
345
346Formatting text with "gq" breaks a paragraph at a non-empty blank line.
347Previously the line would be removed, which wasn't very useful.
348
349":normal" does no longer hang when the argument ends in half a command.
350Previously Vim would wait for more characters to be typed, without updating
351the screen.  Now it pretends an <Esc> was typed.
352
353Bitmaps for the toolbar are no longer searched for in "$VIM/bitmaps" but in
354the "bitmaps" directories in 'runtimepath'.
355
356Now use the Cmdline-mode menus for the hit-enter prompt instead of the Normal
357mode menus.  This generally works better and allows using the "Copy" menu to
358produce CTRL-Y to copy the modeless selection.
359
360Moved the font selection from the Window to the Edit menu, together with the
361other settings.
362
363The default values for 'isfname' include more characters to make "gf" work
364better.
365
366Changed the license for the documentation to the Open Publication License.
367This seemed fair, considering the inclusion of parts of the Vim book, which is
368also published under the OPL.  The downside is that we can't force someone who
369would sell copies of the manual to contribute to Uganda.
370
371After  "ayy  don't let  ""yy  or  :let @" = val  overwrite the "a register.
372Use the unnamed register instead.
373
374MSDOS: A pattern "*.*" previously also matched a file name without a dot.
375This was inconsistent with other versions.
376
377In Insert mode, CTRL-O CTRL-\ CTRL-N {cmd} remains in Normal mode.  Previously
378it would go back to Insert mode, thus confusing the meaning of CTRL-\ CTRL-N,
379which is supposed to take us to Normal mode (especially in ":amenu").
380
381Allow using ":" commands after an operator.  Could be used to implement a new
382movement command.  Thus it no longer aborts a pending operator.
383
384For the Amiga the "-d {device}" argument was possible.  When compiled with the
385diff feature, this no longer works.  Use "-dev {device}" instead. |-dev|
386
387Made the default mappings for <S-Insert> in Insert mode insert the text
388literally, avoids that special characters like BS cause side effects.
389
390Using ":confirm" applied to the rest of the line.  Now it applies only to the
391command right after it.  Thus ":confirm if x | edit | endif" no longer works,
392use ":if x | confirm edit | endif".  This was the original intention, that it
393worked differently was a bug.
394
395==============================================================================
396NEW FEATURES						*new-6*
397
398Folding							*new-folding*
399-------
400
401Vim can now display a buffer with text folded.  This allows overviewing the
402structure of a file quickly.  It is also possible to yank, delete and put
403folded text, for example to move a function to another position.
404
405There is a whole bunch of new commands and options related to folding.
406See |folding|.
407
408
409Vertically split windows				*new-vertsplit*
410------------------------
411
412Windows can also be split vertically.  This makes it possible to have windows
413side 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
415scrolling.
416
417A 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|
421The last one is a modifier, which has a meaning for any command that splits a
422window.  For example: >
423	:vertical stag main
424Will vertically split the window and jump to the tag "main" in the new window.
425
426Moving 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
428to jump to the window above or below the cursor position.
429
430The vertical and horizontal splits can be mixed as you like.  Resizing windows
431is easy when using the mouse, just position the pointer on a status line or
432vertical separator and drag it.  In the GUI a special mouse pointer shape
433indicates where you can drag a status or separator line.
434
435To resize vertically split windows use the |CTRL-W_<| and |CTRL-W_>| commands.
436To make a window the maximum width use the CTRL-W | command |CTRL-W_bar|.
437
438To force a new window to use the full width or height of the Vim window,
439these 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.
444This can be combined with ":vertical" to force a vertical split: >
445	:vert bot dsplit DEBUG
446This will open a window at the far right, occupying the full height of the Vim
447window, with the cursor on the first definition of "DEBUG".
448The help window is opened at the top, like ":topleft" was used, if the current
449window is fewer than 80 characters wide.
450
451A few options can be used to set the preferences for vertically split windows.
452They work similar to their existing horizontal equivalents:
453	horizontal	vertical ~
454	'splitbelow'	'splitright'
455	'winheight'	'winwidth'
456	'winminheight'	'winminwidth'
457It's possible to set 'winminwidth' to zero, so that temporarily unused windows
458hardly take up space without closing them.
459
460The 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
464This can be used to avoid changing window sizes when you want to keep them.
465
466Since windows can become quite narrow with vertical splits, text lines will
467often not fit.  The 'sidescrolloff' has been added to keep some context left
468and 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
470screen. (Utz-Uwe Haus)
471
472"-O" command line argument: Like "-o" but split windows vertically. (Scott
473Urban)
474
475Added 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
477window uses the full width/height of the screen.
478
479When there is not enough room in the status line for both the file name and
480the ruler, use up to half the width for the ruler.  Useful for narrow windows.
481
482
483Diff mode						*new-diff-mode*
484---------
485
486In diff mode Vim shows the differences between two, three or four files.
487Folding is used to hide the parts of the file that are equal.
488Highlighting is used to show deleted and changed lines.
489See |diff-mode|.
490
491An easy way to start in diff mode is to start Vim as "vimdiff file1 file2".
492Added the vimdiff manpage.
493
494In a running Vim the |:diffsplit| command starts diff mode for the current
495file and another file.  The |:diffpatch| command starts diff mode using the
496current file and a patch file.  The |:diffthis| command starts diff mode for
497the current window.
498
499Differences can be removed with the |:diffget| and |:diffput| commands.
500
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.
514
515
516Easy Vim: click-and-type				*new-evim*
517------------------------
518
519eVim stands for "Easy Vim".  This is a separate program, but can also be
520started as "vim -y".
521
522This 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
524to do most things like Notepad.  This is only for people who can't stand two
525modes.
526
527eView does the same but in readonly mode.
528
529In the GUI a CTRL-C now only interrupts when busy with something, not when
530waiting for a character.  Allows using CTRL-C to copy text to the clipboard.
531
532
533User manual						*new-user-manual*
534-----------
535
536The user manual has been added.  It is organised around editing tasks.  It
537reads like a book, from start to end.  It should allow beginners to start
538learning Vim.  It helps everybody to learn using the most useful Vim features.
539It is much easier to read than the reference manual, but omits details.  See
540|user-manual|.
541
542The user manual includes parts of the Vim book by Steve Oualline |frombook|.
543It is published under the OPL |manual-copyright|.
544
545When syntax highlighting is not enabled, the characters in the help file which
546mark examples ('>' and '<') and header lines ('~') are replaced with a space.
547
548When closing the help window, the window layout is restored from before
549opening it, if the window layout didn't change since then.
550When opening the help window, put it at the top of the Vim window if the
551current window is fewer than 80 characters and not full width.
552
553
554Flexible indenting					*new-indent-flex*
555------------------
556
557Automatic indenting is now possible for any language.  It works with a Vim
558script, which makes it very flexible to compute the indent.
559
560The ":filetype indent on" command enables using the provided indent scripts.
561This is explained in the user manual: |30.3|.
562
563The 'indentexpr' option is evaluated to get the indent for a line.  The
564'indentkeys' option tells when to trigger re-indenting.  Normally these
565options are set from an indent script.  Like Syntax files, indent scripts will
566be created and maintained by many people.
567
568
569Extended search patterns				*new-searchpat*
570------------------------
571
572Added the possibility to match more than one line with a pattern. (partly by
573Loic Grenie)
574New 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
581
582Various 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"
589
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
597
598\&		match only when branch before and after it match
599
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.
608
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
614
615
616For 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)
620
621\zs		use position as start of match
622\ze		use position as end of match
623
624Removed limit of matching only up to 32767 times with *, \+, etc.
625
626Added support to match multi-byte characters. (partly by Muraoka Taro)
627Made "\<" and "\>" work for UTF-8. (Muraoka Taro)
628
629
630UTF-8 support						*new-utf-8*
631-------------
632
633Vim can now edit files in UTF-8 encoding.  Up to 31 bit characters can be
634used, but only 16 bit characters are displayed.  Up to two combining
635characters are supported, they overprint the preceding character.
636Double-wide characters are also supported.  See |UTF-8|.
637
638UCS-2, UCS-4 and UTF-16 encodings are supported too, they are converted to
639UTF-8 internally.  There is also support for editing Unicode files in a Latin1
640environment.  Other encodings are converted with iconv() or an external
641converter specified with 'charconvert'.
642
643Many 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)
688
689Allow defining digraphs for multi-byte characters.
690Added RFC1345 digraphs for Unicode.
691Most 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
693Vi compatible.
694
695Added 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.
728
729Other 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.
732
733
734Multi-language support					*new-multi-lang*
735----------------------
736
737The messages used in Vim can be translated.  Several translations are
738available.  This uses the gettext mechanism.  It allows adding a translation
739without recompiling Vim.  |multi-lang| (partly by Marcin Dalecki)
740
741The translation files are in the src/po directory.  The src/po/README.txt file
742explains a few things about doing a translation.
743
744Menu translations are available as well.  This uses the new |:menutranslate|
745command.  The translations are found in the runtime directory "lang".  This
746allows a user to add a translation.
747
748Added |:language| command to set the language (locale) for messages, time and
749character type.  This allows switching languages in Vim without changing the
750locale outside of Vim.
751
752Made it possible to have vimtutor use different languages.  (Eduardo Fernandez)
753Spanish (Eduardo Fernandez), Italian (Antonio Colombo), Japanese (Yasuhiro
754Matsumoto) and French (Adrien Beau) translations are included.
755Added "vimtutor.bat": script to start Vim on a copy of the tutor file for
756MS-Windows. (Dan Sharp)
757
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)
782
783
784Plugin support					*new-plugins*
785--------------
786
787To make it really easy to load a Vim script when starting Vim, the "plugin"
788runtime directory can be used.  All "*.vim" files in it will be automatically
789loaded.  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|
792
793The |:runtime| command has been added to load one or more files in
794'runtimepath'.
795
796Standard plugins:
797netrw.vim - Edit files over a network |new-network-files|
798gzip.vim - Edit compressed files
799explorer.vim - Browse directories |new-file-browser|
800
801Added support for local help files. |add-local-help|.
802When searching for help tags, all "doc/tags" files in 'runtimepath' are used.
803Added the ":helptags" command: Generate a tags file for a help directory.
804The first line of each help file is automagically added to the "LOCAL
805ADDITIONS" section in doc/help.txt.
806
807Added the <unique> argument to ":map": only add a mapping when it wasn't
808defined before.
809
810When displaying an option value with 'verbose' set will give a message about
811where the option was last set.  Very useful to find out which script did set
812the value.
813
814The new |:scriptnames| command displays a list of all scripts that have been
815sourced.
816
817GUI: For Athena, Motif and GTK look for a toolbar bitmap in the "bitmaps"
818directories in 'runtimepath'.  Allows adding your own bitmaps.
819
820
821Filetype plugins				*new-filetype-plugins*
822-----------------
823
824A new group of files has been added to do settings for specific file types.
825These can be options and mappings which are specifically used for one value of
826'filetype'.
827
828The files are located in "$VIMRUNTIME/ftplugin".  The 'runtimepath' option
829makes it possible to use several sets of plugins: Your own, system-wide,
830included in the Vim distribution, etc.
831
832To 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".
858
859The new ":setfiletype" command is used in the filetype detection autocommands,
860to avoid that 'filetype' is set twice.
861
862
863File browser						*new-file-browser*
864------------
865
866When editing a directory, the explorer plugin will list the files in the
867directory.  Pressing <Enter> on a file name edits that file.  Pressing <Enter>
868on a directory moves the browser to that directory.
869
870There are several other possibilities, such as opening a file in the preview
871window, renaming files and deleting files.
872
873
874Editing files over a network				*new-network-files*
875----------------------------
876
877Files starting with scp://, rcp://, ftp:// and http:// are recognized as
878remote files.  An attempt is made to access these files with the indicated
879method.  For http:// only reading is possible, for the others writing is also
880supported.  Uses the netrw.vim script as a standard "plugin". |netrw|
881
882Made "gf" work on a URL.  It no longer assumes the file is local on the
883computer (mostly didn't work anyway, because the full path was required).
884Adjusted test2 for this.
885
886Allow using a URL in 'path'.  Makes ":find index.html" work.
887
888GTK: Allow dropping a http:// and ftp:// URL on Vim.  The netrw plugin takes
889care of downloading the file. (MiKael Berthe)
890
891
892Window for command-line editing				*new-cmdwin*
893-------------------------------
894
895The Command-line window can be used to edit a command-line with Normal and
896Insert mode commands.  When it is opened it contains the history.  This allows
897copying parts of previous command lines. |cmdwin|
898
899The command-line window can be opened from the command-line with the key
900specified by the 'cedit' option (like Nvi).  It can also be opened directly
901from Normal mode with "q:", "q/" and "q?".
902
903The 'cmdwinheight' is used to specify the initial height of the window.
904
905In Insert mode CTRL-X CTRL-V can be used to complete an Ex command line, like
906it's done on the command-line.  This is also useful for writing Vim scripts!
907
908Additionally, 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)
911
912
913Debugging mode						*new-debug-mode*
914--------------
915
916In debugging mode sourced scripts and user functions can be executed line by
917line.  There are commands to step over a command or step into it. |debug-mode|
918
919Breakpoints can be set to run until a certain line in a script or user
920function is executed. |:breakadd|
921
922Debugging can be started with ":debug {cmd}" to debug what happens when a
923command executes.  The |-D| argument can be used to debug while starting up.
924
925
926Cursor in virtual position				*new-virtedit*
927--------------------------
928
929Added the 'virtualedit' option: Allow positioning the cursor where there is no
930actual character in Insert mode, Visual mode or always. (Matthias Kramm)
931This is especially useful in Visual-block mode.  It allows positioning a
932corner of the area where there is no text character.  (Many improvements by
933Chase Tingley)
934
935
936Debugger interface					*new-debug-itf*
937------------------
938
939This was originally made to work with Sun Visual Workshop. (Gordon Prieur)
940See |debugger.txt|, |sign.txt| and |workshop.txt|.
941
942Added the ":sign" command to define and place signs.  They can be displayed
943with two ASCII characters or an icon.  The line after it can be highlighted.
944Useful to display breakpoints and the current PC position.
945
946Added the |:wsverb| command to execute debugger commands.
947
948Added balloon stuff: 'balloondelay' and 'ballooneval' options.
949
950Added "icon=" argument for ":menu".  Allows defining a specific icon for a
951ToolBar item.
952
953
954Communication between Vims				*new-vim-server*
955--------------------------
956
957Added communication between two Vims.  Makes it possible to send commands from
958one Vim to another.  Works for X-Windows and MS-Windows |clientserver|.
959
960Use "--remote" to have files be edited in an already running Vim.
961Use "--remote-wait" to do the same and wait for the editing to finish.
962Use "--remote-send" to send commands from one Vim to another.
963Use "--remote-expr" to have an expression evaluated in another Vim.
964Use "--serverlist" to list the currently available Vim servers.  (X only)
965There are also functions to communicate between the server and the client.
966|remote_send()| |remote_expr()|
967
968(X-windows version implemented by Flemming Madsen, MS-Windows version by Paul
969Moore)
970
971Added the command server name to the window title, so you can see which server
972name belongs to which Vim.
973
974Removed the OleVim directory and SendToVim.exe and EditWithVim.exe from the
975distribution.  Can now use "gvim --remote" and "gvim --remote-send", which is
976portable.
977
978GTK+: Support running Vim inside another window.  Uses the --socketid argument
979(Neil Bird)
980
981
982Buffer type options					*new-buftype*
983-------------------
984
985The 'buftype' and 'bufhidden' options have been added.  They can be set to
986have 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.
990
991'bufhidden' can be used to overrule the 'hidden' option for one buffer.
992
993In combination with 'buflisted' and 'swapfile' this offers the possibility to
994use various kinds of special buffers.  See |special-buffers|.
995
996
997Printing						*new-printing*
998--------
999
1000Included first implementation of the ":hardcopy" command for printing
1001to paper.  For MS-Windows any installed printer can be used.  For other
1002systems 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
1005Mike Williams)
1006
1007Made ":hardcopy" work with multi-byte characters. (Muraoka Taro, Yasuhiro
1008Matsumoto)
1009
1010Added 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!".
1016
1017
1018Ports							*ports-6*
1019-----
1020
1021Port to OS/390 Unix (Ralf Schandl)
1022- A lot of changes to handle EBCDIC encoding.
1023- Changed Ctrl('x') to Ctrl_x define.
1024
1025Included jsbmouse support. (Darren Garth)
1026Support for dec mouse in Unix. (Steve Wall)
1027
1028Port to 16-bit MS Windows (Windows 3.1x) (Vince Negri)
1029
1030Port to QNX.  Supports the Photon GUI, mouse, etc. (Julian Kinraid)
1031
1032Allow cross-compiling the Win32 version with Make_ming.mak. (Ron Aaron)
1033Added Python support for compiling with Mingw. (Ron Aaron)
1034
1035Dos 32 bit: Added support the Windows clipboard. (David Kotchan)
1036
1037Win32: Dynamically load Perl and Python.  Allows compiling Vim with these
1038interfaces and will try to find the DLLs at runtime. (Muraoka Taro)
1039
1040Compiling the Win32 GUI with Cygwin.  Also compile vimrun, dosinst and
1041uninstall.  (Gerfried)
1042
1043Mac: Make Vim compile with the free MPW compiler supplied by Apple.  And
1044updates for CodeWarrior. (Axel Kielhorn)
1045
1046Added typecasts and ifdefs as a start to make Vim work on Win64 (George
1047Reilly)
1048
1049
1050Quickfix extended					*quickfix-6*
1051-----------------
1052
1053Added the "error window".  It contains all the errors of the current error
1054list.  Pressing <Enter> in a line makes Vim jump to that line (in another
1055window).  This makes it easy to navigate through the error list.
1056|quickfix-window|.
1057
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)
1062
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:".
1069
1070
1071Operator modifiers					*new-operator-mod*
1072------------------
1073
1074Insert "v", "V" or CTRL-V between an operator and a motion command to force
1075the operator to work characterwise, linewise or blockwise. |o_v|
1076
1077
1078Search Path						*new-search-path*
1079-----------
1080
1081Vim can search in a directory tree not only in downwards but also upwards.
1082Works for the 'path', 'cdpath' and 'tags' options. (Ralf Schandl)
1083
1084Also use "**" for 'tags' option. (Ralf Schandl)
1085
1086Added 'includeexpr', can be used to modify file name found by 'include'
1087option.
1088Also use 'includeexpr' for "gf" and "<cfile>" when the file can't be found
1089without modification.  Useful for doing "gf" on the name after an include or
1090import statement.
1091
1092Added the 'cdpath' option: Locations to find a ":cd" argument. (Raf)
1093
1094Added the 'suffixesadd' option: Suffixes to be added to a file name when
1095searching for a file for the "gf", "[I", etc. commands.
1096
1097
1098Writing files improved					*new-file-writing*
1099----------------------
1100
1101Added the 'backupcopy' option: Select whether a file is to be copied or
1102renamed to make a backup file.  Useful on Unix to speed up writing an ordinary
1103file.  Useful on other systems to preserve file attributes and when editing a
1104file on a Unix filesystem.
1105
1106Added the 'autowriteall' option.  Works like 'autowrite' but for more
1107commands.
1108
1109Added the 'backupskip' option: A list of file patterns to skip making a backup
1110file when it matches.  The default for Unix includes "/tmp/*", this makes
1111"crontab -e" work.
1112
1113Added support for Access Control Lists (ACL) for FreeBSD and Win32.  The ACL
1114is copied from the original file to the new file (or the backup if it's
1115copied).
1116ACL is also supported for AIX, Solaris and generic POSIX. (Tomas Ogren)
1117And on SGI.
1118
1119
1120Argument list						*new-argument-list*
1121-------------
1122
1123The support for the argument list has been extended.  It can now be
1124manipulated to contain the files you want it to contain.
1125
1126The 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
1128global argument list.
1129
1130The |:argdo| command executes a command on all files in the argument list.
1131
1132File names can be added to the argument list with |:argadd|.  File names can
1133be removed with |:argdelete|.
1134
1135"##" can be used like "#", it is replaced by all the names in the argument
1136list concatenated.  Useful for ":grep foo ##".
1137
1138The |:argedit| adds a file to the argument list and edits it.  Like ":argadd"
1139and then ":edit".
1140
1141
1142Restore a View						*new-View*
1143--------------
1144
1145The ":mkview" command writes a Vim script with the settings and mappings for
1146one window.  When the created file is sourced, the view of the window is
1147restored.  It's like ":mksession" for one window.
1148The View also contains the local argument list and manually created, opened
1149and closed folds.
1150
1151Added the ":loadview" command and the 'viewdir' option: Allows for saving and
1152restoring views of a file with simple commands.  ":mkview 1" saves view 1 for
1153the current file, ":loadview 1" loads it again.  Also allows quickly switching
1154between two views on one file.  And saving and restoring manual folds and the
1155folding state.
1156
1157Added 'viewoptions' to specify how ":mkview" works.
1158
1159":mksession" now also works fine with vertical splits.  It has been further
1160improved and restores the view of each window.  It also works properly with
1161preview and quickfix windows.
1162
1163'sessionoptions' is used for ":mkview" as well.
1164Added "curdir" and "sesdir" to 'sessionoptions'.  Allows selection of what
1165the current directory will be restored to.
1166
1167The session file now also contains the argument list(s).
1168
1169
1170Color schemes						*new-color-schemes*
1171-------------
1172
1173Support for loading a color scheme.  Added the ":colorscheme" command.
1174Automatically add menu entries for available schemes.
1175Should 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.
1178For ":set bg&" guess the value.  This allows a color scheme to switch back to
1179the default colors.
1180When syntax highlighting is switched on and a color scheme was defined, reload
1181the color scheme to define the colors.
1182
1183
1184Various new items					*new-items-6*
1185-----------------
1186
1187Normal mode commands: ~
1188
1189"gi"		Jump to the ^ mark and start Insert mode.  Also works when the
1190		mark is just after the line. |gi|
1191
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.
1196
1197[', [`, ]' and ]`
1198		move the cursor to the next/previous lowercase mark.
1199
1200g_		Go to last non-blank in line. (Steve Wall)
1201
1202
1203Options: ~
1204
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'.
1209
1210'debug'		When set to "msg" it will print error messages that would
1211		otherwise be omitted.  Useful for debugging 'indentexpr' and
1212		'foldexpr'.
1213
1214'lispwords'	List of words used for lisp indenting.  It was previously hard
1215		coded.  Added a number of Lisp names to the default.
1216
1217'fold...'	Many new options for folding.
1218
1219'modifiable'	When off, it is impossible to make changes to a buffer.
1220		The %m and %M items in 'statusline' show a '-'.
1221
1222'previewwindow' Set in the preview window.  Used in a session file to mark a
1223		window as the preview window.
1224
1225'printfont'
1226'printexpr'
1227'printheader'
1228'printdevice'
1229'printoptions'	for ":hardcopy".
1230
1231'buflisted'	Makes a buffer appear in the buffer list or not.
1232
1233Use "vim{version}:" for modelines, only to be executed when the version is
1234>= {version}.  Also "vim>{version}", "vim<{version}" and "vim={version}".
1235
1236
1237Ex commands: ~
1238
1239:sav[eas][!] {file}
1240		Works like ":w file" and ":e #", but without loading the file
1241		again and avoiding other side effects. |:saveas|
1242
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.
1251
1252:checktime	Check for changed buffers.
1253
1254:verbose {cmd}  Set 'verbose' for one command.
1255
1256:echomsg {expr}
1257:echoerr {expr} Like ":echo" but store the message in the history. (Mark
1258		Waggoner)
1259
1260:grepadd	Works just like ":grep" but adds to the current error list
1261		instead of defining a new list. |:grepadd|
1262
1263:finish		Finish sourcing a file.  Can be used to skip the rest of a Vim
1264		script. |:finish|
1265
1266:leftabove
1267:aboveleft	Split left/above current window.
1268
1269:rightbelow
1270:belowright	Split right/below current window.
1271
1272:first, :bfirst, :ptfirst, etc.
1273		Alias for ":rewind".  It's more logical compared to ":last".
1274
1275:enew		Edit a new, unnamed buffer.  This is needed, because ":edit"
1276		re-edits the same file. (Wall)
1277
1278:quitall	Same as ":qall".
1279
1280:match		Define match highlighting local to a window.  Allows
1281		highlighting an item in the current window without interfering
1282		with syntax highlighting.
1283
1284:menu enable
1285:menu disable	Commands to enable/disable menu entries without removing them.
1286		(Monish Shah)
1287
1288:windo		Execute a command in all windows.
1289:bufdo		Execute a command in all buffers.
1290
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.
1294
1295:lcd and :lchdir
1296		Set local directory for a window. (Benjie Chen)
1297
1298:hide {command}
1299		Execute {command} with 'hidden' set.
1300
1301:emenu		in Visual mode to execute a ":vmenu" entry.
1302
1303:popup		Pop up a popup menu.
1304
1305:redraw		Redraw the screen even when busy with a script or function.
1306
1307:hardcopy	Print to paper.
1308
1309:compiler	Load a Vim script to do settings for a specific compiler.
1310
1311:z#		List numbered lines. (Bohdan Vlasyuk)
1312
1313
1314New marks: ~
1315
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.
1320
1321Store the ^ and . marks in the viminfo file.  Makes it possible to jump to the
1322last insert position or changed text.
1323
1324
1325New functions: ~
1326argidx()	Current index in argument list.
1327buflisted()	Checks if the buffer exists and has 'buflisted' set.
1328cindent()	Get indent according to 'cindent'.
1329eventhandler()	Returns 1 when inside an event handler and interactive
1330		commands can't be used.
1331executable()	Checks if a program or batch script can be executed.
1332filewritable()	Checks if a file can be written. (Ron Aaron)
1333foldclosed()	Find out if there is a closed fold. (Johannes Zellner).
1334foldcloseend()	Find the end of a closed fold.
1335foldlevel()	Find out the foldlevel. (Johannes Zellner)
1336foreground()	Move the GUI window to the foreground.
1337getchar()	Get one character from the user.  Can be used to define a
1338		mapping that takes an argument.
1339getcharmod()	Get last used key modifier.
1340getbufvar()	gets the value of an option or local variable in a buffer (Ron
1341		Aaron)
1342getfsize()	Return the size of a file.
1343getwinvar()	gets the value of an option or local variable in a window (Ron
1344		Aaron)
1345globpath()	Find matching files in a list of directories.
1346hasmapto()	Detect if a mapping to a string is already present.
1347iconv()		Convert a string from one encoding to another.
1348indent()	gets the indent of a line (Ron Aaron)
1349inputdialog()	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)
1355inputsecret()	Ask the user to type a string without showing the typed keys.
1356		(Charles Campbell)
1357libcall()	for Unix (Neil Bird, Johannes Zellner, Stephen Wall)
1358libcallnr()	for Win32 and Unix
1359lispindent()	Get indent according to 'lisp'.
1360mode()		Return a string that indicates the current mode.
1361nextnonblank()	Skip blank lines forwards.
1362prevnonblank()	Skip blank lines backwards.  Useful to for indent scripts.
1363resolve()	MS-Windows: resolve a shortcut to the file it points to.
1364		Unix: resolve a symbolic link.
1365search()	Search for a pattern.
1366searchpair()	Search for matching pair.  Can be used in indent files to find
1367		the "if" matching an endif.
1368setbufvar()	sets an option or variable local to a buffer (Ron Aaron)
1369setwinvar()	sets an option or variable local to a window (Ron Aaron)
1370stridx()	Search for first occurrence of one string in another.
1371strridx()	Search for last occurrence of one string in another.
1372tolower()	Convert string to all-lowercase.
1373toupper()	Convert string to all-uppercase.
1374type()		Check the type of an expression.
1375wincol()	window column of the cursor
1376winwidth()	Width of a window. (Johannes Zellner)
1377winline()	window line of the cursor
1378
1379
1380Added expansion of curly braces in variable and function names.  This can be
1381used for variable names that include the value of an option.  Or a primitive
1382form of arrays. (Vince Negri)
1383
1384
1385New autocommand events: ~
1386BufWinEnter	Triggered when a buffer is displayed in a window, after using
1387		the modelines.  Can be used to load a view.
1388BufWinLeave	Triggered when a buffer is no longer in a window.  Also
1389		triggered when exiting Vim.  Can be used to save views.
1390FileChangedRO	Triggered before making the first change to a read-only file.
1391		Can be used to check-out the file. (Scott Graham)
1392TermResponse	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)
1395FileReadCmd	Triggered before reading a file.
1396BufReadCmd	Triggered before reading a file into a buffer.
1397FileWriteCmd	Triggered before writing a file.
1398BufWriteCmd	Triggered before writing a buffer into a file.
1399FileAppendCmd	Triggered before appending to a file.
1400FuncUndefined	Triggered when a user function is not defined. (Ron Aaron)
1401
1402The autocommands for the *Cmd events read or write the file instead of normal
1403file read/write.  Use this in netrw.vim to be able to edit files on a remote
1404system. (Charles Campbell)
1405
1406
1407New Syntax files: ~
1408
1409bdf		BDF font definition (Nikolai Weibull)
1410catalog		SGML catalog (Johannes Zellner)
1411debchangelog	Debian Changelog (Wichert Akkerman)
1412debcontrol	Debian Control (Wichert Akkerman)
1413dot		dot (Markus Mottl)
1414dsl		DSSSL syntax (Johannes Zellner)
1415eterm		Eterm configuration (Nikolai Weibull)
1416indent		Indent profile (Nikolai Weibull)
1417lftp		LFTP (Nikolai Weibull)
1418lynx		Lynx config (Doug Kearns)
1419mush		mush sourcecode (Bek Oberin)
1420natural		Natural (Marko Leipert)
1421pilrc		Pal resource compiler (Brian Schau)
1422plm		PL/M (Philippe Coulonges)
1423povini		Povray configuration (David Necas)
1424ratpoison	Ratpoison config/command (Doug Kearns)
1425readline	readline config (Nikolai Weibull)
1426screen		Screen RC (Nikolai Weibull)
1427specman		Specman (Or Freund)
1428sqlforms	SQL*Forms (Austin Ziegler)
1429terminfo	terminfo (Nikolai Weibull)
1430tidy		Tidy configuration (Doug Kearns)
1431wget		Wget configuration (Doug Kearns)
1432
1433
1434Updated many syntax files to work both with Vim 5.7 and 6.0.
1435
1436Interface to Ruby. (Shugo Maeda)
1437Support dynamic loading of the Ruby interface on MS-Windows. (Muraoka Taro)
1438Support this for Mingw too. (Benoit Cerrina)
1439
1440Win32: Added possibility to load TCL dynamically. (Muraoka Taro)
1441Also for Borland 5.5. (Dan Sharp)
1442
1443Win32: When editing a file that is a shortcut (*.lnk file), edit the file it
1444links to.  Unless 'binary' is set, then edit the shortcut file itself.
1445(Yasuhiro Matsumoto)
1446
1447The ":command" command now accepts a "-bar" argument.  This allows the user
1448command to be followed by "| command".
1449
1450The 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.
1454Added the CTRL-W P command: go to preview window.
1455
1456MS-DOS and MS-Windows also read the system-wide vimrc file $VIM/vimrc.  Mostly
1457for NT systems with multiple users.
1458
1459A double-click of the mouse on a character that has a "%" match selects from
1460that character to the match.  Similar to "v%".
1461
1462"-S session.vim" argument: Source a script file when starting up.  Convenient
1463way to start Vim with a session file.
1464
1465Added "--cmd {command}" Vim argument to execute a command before a vimrc file
1466is loaded. (Vince Negri)
1467
1468Added the "-M" Vim argument: reset 'modifiable' and 'write', thus disallow
1469making changes and writing files.
1470
1471Added runtime/delmenu.vim.  Source this to remove all menus and prepare for
1472loading new menus.  Useful when changing 'langmenu'.
1473
1474Perl script to filter Perl error messages to quickfix usable format. (Joerg
1475Ziefle)
1476
1477Added runtime/macros/less.vim: Vim script to simulate less, but with syntax
1478highlighting.
1479
1480MS-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.
1487
1488Improved the MS-Windows uninstal program.  It now also deletes the entries in
1489the Start menu, icons from the desktop and the created batch files. (Jon Merz)
1490Also made it possible to delete only some of these.  Also unregister gvim for
1491OLE.
1492
1493Generate a self-installing Vim package for MS-Windows.  This uses NSIS. (Jon
1494Merz et al.)
1495
1496Added ":filetype detect".  Try detecting the filetype again.  Helps when
1497writing a new shell script, after adding "#!/bin/csh".
1498
1499Added ":augroup! name" to delete an autocommand group.  Needed for the
1500client-server "--remote-wait".
1501
1502Add the Vim version number to the viminfo file, useful for debugging.
1503
1504==============================================================================
1505IMPROVEMENTS						*improvements-6*
1506
1507Added the 'n' flag in 'cpoptions': When omitted text of wrapped lines is not
1508put between line numbers from 'number' option.  Makes it a lot easier to read
1509wrapped lines.
1510
1511When there is a format error in a tags file, the byte position is reported so
1512that the error can be located.
1513
1514"gf" works in Visual mode: Use the selected text as the file name. (Chase
1515Tingley)
1516
1517Allow ambiguous mappings.  Thus "aa" and "aaa" can both be mapped, the longest
1518matching one is used.  Especially useful for ":lmap" and 'keymap'.
1519
1520Encryption: Ask the key to be typed twice when crypting the first time.
1521Otherwise a typo might cause the text to be lost forever. (Chase Tingley)
1522
1523The window title now has "VIM" on the end.  The file name comes first, useful
1524in the taskbar.  A "+" is added when the file is modified.  "=" is added for
1525a read-only file.  "-" is added for a file with 'modifiable' off.
1526
1527In Visual mode, mention the size of the selected area in the 'showcmd'
1528position.
1529
1530Added the "b:changedtick" variable.  Incremented at each change, also for
1531undo.  Can be used to take action only if the buffer has been changed.
1532
1533In the replacement string of a ":s" command "\=" can be used to replace with
1534the result of an expression.  From this expression the submatch() function can
1535be used to access submatches.
1536
1537When doing ":qall" and there is a change in a buffer that is being edited in
1538another window, jump to that window, instead of editing that buffer in the
1539current window.
1540
1541Added the "++enc=" and "++ff=" arguments to file read/write commands to force
1542using the given 'encoding' or 'fileformat'.  And added the "v:cmdarg"
1543variable, to be used for FileReadCmd autocommands that read/write the file
1544themselves.
1545
1546When reading stdin, first read the text in binary mode and then re-read it
1547with automatic selection of 'fileformat' and 'fileencoding'.  This avoids
1548problems with not being able to rewind the file (e.g., when a line near the
1549end of the file ends in LF instead of CR-LF).
1550When reading text from stdin and the buffer is empty, don't mark it changed.
1551Allows exiting without trouble.
1552
1553Added an ID to many error messages.  This will make it easier to find help for
1554a message.
1555
1556Insert 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'.
1568
1569Performance:
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.
1599
1600Robustness:
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.
1606
1607Security:
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)
1625
1626Syntax 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).
1652
1653Modeless 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.
1668
1669Reduced the amount of stack space used by regmatch() to allow it to handle
1670complicated patterns on a longer text.
1671
1672'isfname' now includes '%' and '#'.  Makes "vim dir\#file" work for MS-DOS.
1673
1674Added keypad special keys <kEnter>, <k0> - <k9>.  When not mapped they behave
1675like the ASCII equivalent. (Ivan Wellesz and Vince Negri)
1676Recognize a few more xterm keys: <C-Right>, <C-Left>, <C-End>, <C-Home>
1677
1678Also trigger the BufUnload event when Vim is going to exit.  Perhaps a script
1679needs to do some cleaning up.
1680
1681Expand expression in backticks: `={expr}`.  Can be used where backtick
1682expansion is done. (Vince Negri)
1683
1684GUI:
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)
1728
1729X11:
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.
1740
1741GTK 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.
1761
1762Motif: (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.
1772
1773Command 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 (.
1778
1779For MS-DOS, MS-Windows and OS/2: Expand %VAR% environment variables like $VAR.
1780(Walter Briscoe)
1781
1782Redirect messages to the clipboard ":redir @*" and to the unnamed register
1783":redir @"". (Wall)
1784
1785":let @/ = ''" clears the search pattern, instead of setting it to an empty
1786string.
1787
1788Expression 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.
1801
1802Cscope:
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)
1808
1809VMS:
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)
1814
1815Macintosh: (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.
1823
1824Options:
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.
1838
1839Internal 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().
1862
1863Highlighting:
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.
1877
1878When 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.
1880
1881The OPT_TCAP_QUERY in xterm patch level 141 and later is used to obtain the
1882actual key codes used and the number of colors for t_Co.  Only when |t_RV| is
1883also used.
1884
1885":browse set" now also works in the console mode.  ":browse edit" will give an
1886error message.
1887
1888":bdelete" and ":bunload" only report the number of deleted/unloaded buffers
1889when more than 'report'.  The message was annoying when deleting a buffer in a
1890script.
1891
1892Jump 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.
1897
1898Also set the '[ and '] marks for the "~" and "r" commands.  These marks are
1899now always set when making a change with a Normal mode command.
1900
1901Python interface: Allow setting the width of a vertically split window. (John
1902Cook)
1903
1904Added "=word" and "=~word" to 'cinkeys' (also used in 'indentkeys').
1905
1906Added "j1" argument in 'cinoptions': indent {} inside () for Java. (Johannes
1907Zellner)
1908Added the "l" flag in 'cinoptions'. (Anduin Withers)
1909Added 'C', 'U', 'w' and 'm' flags to 'cinoptions'. (Servatius Brandt)
1910
1911When doing ":wall" or ":wqall" and a modified buffer doesn't have a name,
1912mention its buffer number in the error message.
1913
1914":function Name" lists the function with line numbers.  Makes it easier to
1915find out where an error happened.
1916
1917In non-blockwise Visual mode, "r" replaces all selected characters with the
1918typed one, like in blockwise Visual mode.
1919
1920When editing the last file in the argument list in any way, allow exiting.
1921Previously this was only possible when getting to that file with ":next" or
1922":last".
1923
1924Added the '1' flag to 'formatoptions'. (Vit Stradal)
1925Added 'n' flag in 'formatoptions': format a numbered list.
1926
1927Swap 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.
1940
1941The g CTRL-G command also works in Visual mode and counts the number of words.
1942(Chase Tingley)
1943
1944Give an error message when using 'shell' and it's empty.
1945
1946Added the possibility to include "%s" in 'shellpipe'.
1947
1948Added "uhex" value for 'display': show non-printable characters as <xx>.
1949Show unprintable characters with NonText highlighting, also in the command
1950line.
1951
1952When asked to display the value of a hidden option, tell it's not supported.
1953
1954Win32:
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)
1962
1963Win32 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.
1971
1972Errorformat:
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)
1977
1978The "p" command can now be used in Visual mode.  It overwrites the selected
1979text with the contents of a register.
1980
1981Highlight the <> items in the intro message to make clear they are special.
1982
1983When using the "c" flag for ":substitute", allow typing "l" for replacing this
1984item and then stop: "last".
1985
1986When printing a verbose message about sourcing another file, print the line
1987number.
1988
1989When resizing the Vim window, don't use 'equalalways'.  Avoids that making the
1990Vim window smaller makes split windows bigger.  And it's what the docs say.
1991
1992When typing CTRL-D in Insert mode, just after an autoindent, then hitting CR
1993kept the remaining white space.  Now made it work like BS: delete the
1994autoindent to avoid a blank non-empty line results.
1995
1996Added a GetHwnd() call to the OLE interface.  (Vince Negri)
1997
1998Made ":normal" work in an event handler.  Useful when dropping a file on Vim
1999and for CursorHold autocommands.
2000
2001For the MS-Windows version, don't change to the directory of the file when a
2002slash is used instead of a backslash.  Explorer should always use a backslash,
2003the user can use a slash when typing the command.
2004
2005Timestamps:
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.
2026
2027Mapping <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
2029hard to find problems.  Disallow mapping part of a multi-byte character.
2030
2031For ":python" and ":tcl" accept an in-line script. (Johannes Zellner)
2032Also for ":ruby" and ":perl". (Benoit Cerrina)
2033
2034Made ":syn include" use 'runtimepath' when the file name is not a full path.
2035
2036When 'switchbuf' contains "split" and the current window is empty, don't split
2037the window.
2038
2039Unix: Catch SIGPWR to preserve files when the power is about to go down.
2040
2041Sniff 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
2045
2046Support the notation <A-x> as an alias for <M-x>.  This logical, since the Alt
2047key is used.
2048
2049":find" accepts a count, which means that the count'th match in 'path' is
2050used.
2051
2052":ls" and ":buffers" output shows modified/readonly/modifiable flag.  When a
2053buffer is active show "a" instead of nothing.  When a buffer isn't loaded
2054show nothing instead of "-".
2055
2056Unix 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.
2061
2062Added has("win95"), to be able to distinguish between MS-Windows 95/98/ME and
2063NT/2000/XP in a Vim script.
2064
2065When a ":cd" command was typed, echo the new current directory. (Dan Sharp)
2066
2067When using ":winpos" before the GUI window has been opened, remember the
2068values until it is opened.
2069
2070In the ":version" output, add "/dyn" for features that are dynamically loaded.
2071This indicates the feature may not always work.
2072
2073On Windows NT it is possible that a directory is read-only, but a file can be
2074deleted.  When making a backup by renaming the file and 'backupdir' doesn't
2075use the current directory, this causes the original file to be deleted,
2076without the possibility to create a new file.  Give an extra error message
2077then to warn to user about this.
2078
2079Made CTRL-R CTRL-O at the command line work like CTRL-R CTRL-R, so that it's
2080consistent with Insert mode.
2081
2082==============================================================================
2083COMPILE TIME CHANGES					*compile-changes-6*
2084
2085All generated files have been moved out of the "src" directory.  This makes it
2086easy to see which files are not edited by hand.  The files generated by
2087configure are now in the "src/auto" directory.  For Unix, compiled object
2088files go in the objects directory.
2089
2090The source archive was over the 1.4M floppy limit.  The archives are now split
2091up into two runtime and two source archives.  Also provide a bzip2 compressed
2092archive that contains all the sources and runtime files.
2093
2094Added "reconfig" as a target for make.  Useful when changing some of the
2095arguments that require flushing the cache, such as switching from GTK to
2096Motif.  Adjusted the meaning of GUI_INC_LOC and GUI_LIB_LOC to be consistent
2097over different GUIs.
2098
2099Added src/README.txt to give an overview of the main parts of the source code.
2100
2101The Unix Makefile now fully supports using $(DESTDIR) to install to a specific
2102location.  Replaces the manual setting of *ENDLOC variables.
2103
2104Added the possibility for a maintainer of a binary version to include his
2105e-mail address with the --with-compiledby configure argument.
2106
2107Included features are now grouped in "tiny", "small", "normal", "big" and
2108"huge".  This replaces "min-features" and "max-features".  Using "tiny"
2109disables multiple windows for a really small Vim.
2110
2111For the tiny version or when FEAT_WINDOWS is not defined: Firstwin and lastwin
2112are equal to curwin and don't use w_next and w_prev.
2113
2114Added the +listcmds feature.  Can be used to compile without the Vim commands
2115that manipulate the buffer list and argument list (the buffer list itself is
2116still there, can't do without it).
2117
2118Added the +vreplace feature.  It is disabled in the "small" version to avoid
2119that the 16 bit DOS version runs out of memory.
2120
2121Removed GTK+ support for versions older than 1.1.16.
2122
2123The configure checks for using PTYs have been improved.  Code taken from a
2124recent version of screen.
2125
2126Added configure options to install Vim, Ex and View under another name (e.g.,
2127vim6, ex6 and view6).
2128
2129Added "--with-global-runtime" configure argument.  Allows specifying the
2130global directory used in the 'runtimepath' default.
2131
2132Made enabling the SNiFF+ interface possible with a configure argument.
2133
2134Configure now always checks /usr/local/lib for libraries and
2135/usr/local/include for include files.  Helps finding the stuff for iconv() and
2136gettext().
2137
2138Moved the command line history stuff into the +cmdline_hist feature, to
2139exclude the command line history from the tiny version.
2140
2141MS-Windows: Moved common functions from Win16 and Win32 to os_mswin.c.  Avoids
2142having to change two files for one problem.  (Vince Negri)
2143
2144Moved common code from gui_w16.c and gui_w32.c to gui_w48.c (Vince Negri)
2145
2146The jumplist is now a separate feature.  It is disabled for the "small"
2147version (16 bit MS-DOS).
2148
2149Renamed all types ending in _t to end in _T.  Avoids potential problems with
2150system types.
2151
2152Added a configure check for X11 header files that implicitly define the return
2153type to int. (Steve Wall)
2154
2155"make doslang" in the top directory makes an archive with the menu and .mo
2156files for Windows.  This uses the files generated on Unix, these should work
2157on MS-Windows as well.
2158
2159Merged a large part of os_vms.c with os_unix.c.  The code was duplicated in
2160the past which made maintenance more work.  (Zoltan Arpadffy)
2161
2162Updated 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.
2168
2169Win32: Merged Make_gvc.mak and Make_ovc.mak into one file: Make_ivc.mak.  It's
2170much smaller, many unnecessary text has been removed. (Walter Briscoe)
2171Added Make_dvc.mak to be able to debug exe generated with Make_mvc.mak in
2172MS-Devstudio. (Walter Briscoe)
2173
2174MS-Windows: The big gvim.exe, which includes OLE, now also includes
2175dynamically loaded Tcl, Perl and Python.  This uses ActivePerl 5.6.1,
2176ActivePython 2.1.1 and ActiveTCL 8.3.3
2177
2178Added AC_EXEEXT to configure.in, to check if the executable needs ".exe" for
2179Cygwin or MingW.  Renamed SUFFIX to EXEEXT in Makefile.
2180
2181Win32: Load comdlg32.dll delayed for faster startup.  Only when using VC 6.
2182(Vipin Aravind)
2183
2184Win32: When compiling with Borland, allow using IME. (Yasuhiro Matsumoto)
2185
2186Win32: Added Makefile for Borland 5 to compile gvimext.dll. (Yasuhiro
2187Matsumoto)
2188
2189==============================================================================
2190BUG FIXES						*bug-fixes-6*
2191
2192When checking the command name for "gvim", "ex", etc. ignore case.  Required
2193for systems where case is ignored in command names.
2194
2195Search pattern "[a-c-e]" also matched a 'd' and didn't match a '-'.
2196
2197When double-clicking in another window, wasn't recognized as double click,
2198because topline is different.  Added set_mouse_topline().
2199
2200The BROKEN_LOCALE check was broken.  (Marcin Dalecki)
2201
2202When "t_Co" is set, the default colors remain the same, thus wrong.  Reset the
2203colors after changing "t_Co". (Steve Wall)
2204
2205When exiting with ":wqall" the messages about writing files could overwrite
2206each other and be lost forever.
2207
2208When starting Vim with an extremely long file name (around 1024 characters) it
2209would crash.  Added a few checks to avoid buffer overflows.
2210
2211CTRL-E could get stuck in a file with very long lines.
2212
2213":au syntax<Tab>" expanded event names while it should expand groups starting
2214with "syntax".
2215
2216When expanding a file name caused an error (e.g., for <amatch>) it was
2217produced even when inside an "if 0".
2218
2219'cindent' formatted C comments differently from what the 'comments' option
2220specified. (Steve Wall)
2221
2222Default for 'grepprg' didn't include the file name when only grepping in one
2223file.  Now /dev/null has been added for Unix.
2224
2225Opening the option window twice caused trouble.  Now the cursor goes to the
2226existing option window.
2227
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.
2230
2231GTK GUI: When 'guioptions' excluded 'g', the more prompt caused the toolbar
2232and menubar to disappear and resize the window (which clears the text).
2233Now always grey-out the toplevel menus to avoid that the menubar changes size
2234or disappears.
2235
2236When re-using the current buffer for a new buffer, buffer-local variables were
2237not deleted.
2238
2239GUI: when 'scrolloff' is 0 dragging the mouse above the window didn't cause a
2240down scroll.  Now pass on a mouse event with mouse_row set to -1.
2241
2242Win32: Console version didn't work on telnet, because of switching between two
2243console screens.  Now use one console screen and save/restore the contents
2244when needed.  (Craig Barkhouse)
2245
2246When reading a file the magic number for encryption was included in the file
2247length. (Antonio Colombo)
2248
2249The quickfix window contained leading whitespace and NULs for multi-line
2250messages. (David Harrison)
2251
2252When using cscope, redundant tags were removed.  This caused a numbering
2253problem, because they were all listed.  Don't remove redundant cscope tags.
2254(David Bustos).
2255
2256Cscope: Test for which matches are in the current buffer sometimes failed,
2257causing a jump to another match than selected. (David Bustos)
2258
2259Win32: Buffer overflow when adding a charset name in a font.
2260
2261'titlestring' and 'iconstring' were evaluating an expression in the current
2262context, which could be a user function, which is a problem for local
2263variables vs global variables.
2264
2265Win32 GUI: Mapping <M-F> didn't work.  Now handle SHIFT and CTRL in
2266_OnSysChar().
2267
2268Win32 GUI: (on no file), :vs<CR>:q<CR> left a trail of pixels down the middle.
2269Could also happen for the ruler.  screen_puts() didn't clear the right char in
2270ScreenLines[] for the bold trick.
2271
2272Win32: ":%!sort|uniq" didn't work, because the input file name touches the
2273"|".  Insert a space before the "|".
2274
2275OS/2: Expanding wildcards included non-existing files.  Caused ":runtime" to
2276fail, which caused syntax highlighting to fail.
2277
2278Pasting a register containing CTRL-R on the command line could cause an
2279endless loop that can't be interrupted.  Now it can be stopped with CTRL-C.
2280
2281When 'verbose' is set, a message for file read/write could overwrite the
2282previous message.
2283When 'verbose' is set, the header from ":select" was put after the last
2284message.  Now start a new line.
2285
2286The hit-enter prompt reacted to the response of the t_RV string, causing
2287messages at startup to disappear.
2288
2289When t_Co was set to 1, colors were still used.  Now only use color when t_Co
2290> 1.
2291
2292Listing functions with ":function" didn't quit when 'q' or ':' was typed at
2293the more prompt.
2294
2295Use mkstemp() instead of mktemp() when it's available, avoids a warning for
2296linking on FreeBSD.
2297
2298When doing Insert mode completion it's possible that b_sfname is NULL.  Don't
2299give it to printf() for the "Scanning" message.
2300
2301":set runtimepath-=$VIMRUNTIME" didn't work, because expansion of wildcards
2302was done after trying to remove the string.  Now for ":set opt+=val" and ":set
2303opt-=val" the expansion of wildcards is done before adding or removing "val".
2304
2305Using CTRL-V with the "r" command with a blockwise Visual selection inserted a
2306CTRL-V instead of getting a special character.
2307
2308Unix: Changed the order of libraries: Put -lXdmcp after -lX11 and -lSM -lICE
2309after -lXdmcp.  Should fix link problem on HP-UX 10.20.
2310
2311Don't remove the last "-lm" from the link line.  Vim may link but fail later
2312when the GUI starts.
2313
2314When the shell returns with an error when trying to expand wildcards, do
2315include the pattern when the "EW_NOTFOUND" flag was set.
2316When expanding wildcards with the shell fails, give a clear error message
2317instead of just "1 returned".
2318
2319Selecting a Visual block, with the start partly on a Tab, deleting it leaves
2320the cursor too far to the left.  Causes "s" to work in the wrong position.
2321
2322Pound sign in normal.c caused trouble on some compilers.  Use 0xA3 instead.
2323
2324Warning for changing a read-only file wasn't given when 'insertmode' was set.
2325
2326Win32: When 'shellxquote' is set to a double quote (e.g., using csh), ":!start
2327notepad file" doesn't work.  Remove the double quotes added by 'shellxquote'
2328when using ":!start". (Pavol Juhas)
2329
2330The "<f-args>" argument of ":command" didn't accept Tabs for white space.
2331Also, don't add an empty argument when there are trailing blanks.
2332
2333":e test\\je" edited "test\je", but ":next test\\je" edited "testje".
2334Backslashes were removed one time too many for ":next".
2335
2336VMS: "gf" didn't work properly.  Use vms_fixfilename() to translate the file
2337name. (Zoltan Arpadffy)
2338
2339After ":hi Normal ctermbg=black ctermfg=white" and suspending Vim not all
2340characters are redrawn with the right background.
2341
2342When doing "make test" without +eval or +windows feature, many tests failed.
2343Now have test1 generate a script to copy the correct output, so that a test
2344that doesn't work is skipped.
2345
2346On 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
2348be used.  Removed "-lc" from Perl, it should not be needed.
2349Also: Add "-pthread" to $LIBS, so that the checks for functions is done with
2350libc_r.  Sigaltstack() appears to be missing from libc_r.
2351
2352The Syntax sub-menus were getting too long, reorganized them and added another
2353level for some languages.
2354
2355Visual block "r"eplace didn't work well when a Tab is partly included.
2356(Matthias Kramm)
2357
2358When yanking a Visual block, where some lines end halfway the block, putting
2359the text somewhere else doesn't insert a block.  Padd with spaces for missing
2360characters.  Added "y_width" to struct yankreg. (Matthias Kramm)
2361
2362If a substitute string has a multibyte character after a backslash only the
2363first byte of it was skipped. (Muraoka Taro)
2364
2365Win32: Numeric keypad keys were missing from the builtin termcap entry.
2366
2367When a file was read-only ":wa!" didn't force it to be written. (Vince Negri)
2368
2369Amiga: A file name starting with a colon was considered absolute but it isn't.
2370Amiga: ":pwd" added a slash when in the root of a drive.
2371
2372Don't let 'ttymouse' default to "dec" when compiled with dec mouse support.
2373It breaks the gpm mouse (Linux console).
2374
2375The prototypes for the Perl interface didn't work for threaded Perl.  Added a
2376sed command to remove the prototypes from proto/if_perl.pro and added them
2377manually to if_perl.xs.
2378
2379When ":w!" resets the 'readonly' option the title and status lines were not
2380updated.
2381
2382":args" showed the current file when the argument list was empty.  Made this
2383work like Vi: display nothing.
2384
2385"99:<C-U>echo v:count" echoed "99" in Normal mode, but 0 in Visual mode.
2386Don't set v:count when executing a stuffed command.
2387
2388Amiga: Got a requester for "home:" because it's in the default runtime path.
2389Don't bring up a requester when searching for a file in 'path', sourcing the
2390.vimrc file or using ":runtime".
2391
2392Win16 and Win32: Considered a file "\path\file" absolute.  Can cause the same
2393file to appear as two different buffers.
2394
2395Win32: Renaming a file to an empty string crashed Vim.  Happened when using
2396explorer.vim and hitting ESC at the rename prompt.
2397
2398Win32: strftime() crashed when called with a "-1" value for the time.
2399
2400Win32 with Borland compiler: mch_FullName() didn't work, caused tag file not
2401to be found.
2402
2403Cscope sometimes jumped to the wrong tag. (David Bustos)
2404
2405OS/2: Could not find the tags file.  mch_expand_wildcards() added another
2406slash to a directory name.
2407
2408When using ">>" the `] mark was not in the last column.
2409
2410When Vim was compiled without menu support, filetype.vim was still trying to
2411source the menu.vim script. (Rafael Garcia-Suarez)
2412
2413":ptag" added an item to the tag stack.
2414
2415Win32 IME: "gr" didn't use IME mode.
2416
2417In the "vim --help" message the term "options" was used for arguments.  That's
2418confusing, call them "arguments".
2419
2420When there are two windows, and a BufUnload autocommand for closing window #1
2421closed window #2, Vim would crash.
2422
2423When there is a preview window and only one other window, ":q" wouldn't exit.
2424
2425In Insert mode, when cancelling a digraph with ESC, the '?' wasn't removed.
2426
2427On Unix glob(".*") returned "." and "..", on Windows it didn't.  On Windows
2428glob("*") also returned files starting with a dot.  Made this work like Unix
2429on all systems.
2430
2431Win32: Removed old code to open a console.  Vimrun is now used and works fine.
2432
2433Compute the room needed by the intro message accurately, so that it also fits
2434on a 25 line console. (Craig Barkhouse)
2435
2436":ptnext" was broken.  Now remember the last tag used in the preview window
2437separately from the tagstack.
2438
2439Didn't check for "-display" being the last argument. (Wichert Akkerman)
2440
2441GTK GUI: When starting "gvim" under some conditions there would be an X error.
2442Don't replace the error handler when creating the xterm clipboard. (Wichert
2443Akkerman)
2444
2445Adding a space after a help tag caused the tag not to be found.  E.g., ":he
2446autoindent ".
2447
2448Was trying to expand a URL into a full path name.  On Windows this resulted in
2449the current directory to be prepended to the URL.  Added vim_isAbsName() and
2450vim_FullName() to avoid that various machine specific functions do it
2451differently.
2452
2453":n *.c" ":cd .." ":n" didn't use the original directory of the file.  Vi only
2454does it for the current file (looks like a bug).  Now remember the buffer used
2455for the entry in the argument list and use it's name (adjusted when doing
2456":cd"), unless it's deleted.
2457
2458When inserting a special key as its name ("<F8>" as four characters) after
2459moving around in Insert mode, undo didn't work properly.
2460
2461Motif GUI: When using the right mouse button, for some people gvim froze for
2462a couple of seconds (Motif 1.2?).  This doesn't happen when there is no Popup
2463menu.  Solved by only creating a popup menu when 'mousemodel' is "popup" or
2464"popup_setpos". (David Harrison)
2465
2466Motif: When adding many menu items, the "Help" menu disappeared but the
2467menubar didn't wrap.  Now manually set the menubar height.
2468
2469When using <BS> in Insert mode to remove a line break, or using "J" to join
2470lines, the cursor could end up halfway a multi-byte character. (Muraoka Taro)
2471
2472Removed defining SVR4 in configure.  It causes problems for some X header
2473files and doesn't appear to be used anywhere.
2474
2475When 'wildignore' is used, 'ignorecase' for a tag match was not working.
2476
2477When 'wildignore' contains "*~" it was impossible to edit a file ending in a
2478"~".  Now don't recognize a file ending in "~" as containing wildcards.
2479
2480Disabled the mouse code for OS/2.  It was not really used.
2481
2482":mksession" always used the full path name for a buffer, also when the short
2483name could be used.
2484":mkvimrc" and ":mksession" didn't save 'wildchar' and 'pastetoggle' in such a
2485way that they would be restored.  Now use the key name if possible, this is
2486portable.
2487
2488After recovering a file and abandoning it, an ":edit" command didn't give the
2489ATTENTION prompt again.  Would be useful to be able to delete the file in an
2490easy way.  Reset the BF_RECOVERED flag when unloading the buffer.
2491
2492histdel() could match or ignore case, depending on what happened before it.
2493Now always match case.
2494
2495When a window size was specified when splitting a window, it would still get
2496the size from 'winheight' or 'winwidth' if it's larger.
2497
2498When using "append" or "insert" inside a function definition, a line starting
2499with "function" or "endfunction" caused confusion.  Now recognize the commands
2500and skip lines until a ".".
2501
2502At the end of any function or sourced file need_wait_return could be reset,
2503causing messages to disappear when redrawing.
2504
2505When in a while loop the line number for error messages stayed fixed.  Now the
2506line number is remembered in the while loop.
2507
2508"cd c:/" didn't work on MS-DOS.  mch_isdir() removed a trailing slash.
2509
2510MS-Windows: getftime() didn't work when a directory had a trailing slash or
2511backslash.  Didn't show the time in the explorer because of this.
2512
2513When doing wildcard completion, a directory "a/" sorted after "a-b".  Now
2514recognize path separators when sorting files.
2515
2516Non-Unix systems: When editing "c:/dir/../file" and "c:/file" they were
2517created as different buffers, although it's the same file.  Expand to a full
2518file name also when an absolute name contains "..".
2519
2520"g&" didn't repeat the last substitute properly.
2521
2522When 'clipboard' was set to "unnamed", a "Y" command would not write to "0.
2523Now make a copy of register 0 to the clipboard register.
2524
2525When the search pattern matches in many ways, it could not always be
2526interrupted with a CTRL-C.  And CTRL-C would have to be hit once for every
2527line when 'hlsearch' is on.
2528When 'incsearch' is on and interrupting the search for a match, don't abandon
2529the command line.
2530
2531When turning a directory name into a full path, e.g., with fnamemodify(),
2532sometimes a slash was added.  Make this consistent: Don't add a slash.
2533
2534When a file name contains a "!", using it in a shell command will cause
2535trouble: ":!cat %".  Escape the "!" to avoid that.  Escape it another time
2536when 'shell' contains "sh".
2537
2538Completing a file name that has a tail that starts with a "~" didn't work:
2539":e view/~<Tab>".
2540
2541Using a ":command" argument that contains < and > but not for a special
2542argument was not skipped properly.
2543
2544The 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.
2546Rename the vim.exe in the current dir to avoid this. (Walter Briscoe)
2547
2548In the MS-DOS/Windows install program, use %VIM% instead of an absolute path,
2549so that moving Vim requires only one change in the batch file.
2550
2551Mac: mch_FullName() changed the "fname" argument and didn't always initialize
2552the buffer.
2553
2554MS-DOS: mch_FullName() didn't fix forward/backward slashes in an absolute file
2555name.
2556
2557"echo expand("%:p:h")" with an empty file name removed one directory name on
2558MS-DOS.  For Unix, when the file name is a directory, the directory name was
2559removed.  Now make it consistent: "%:p" adds a path separator for all systems,
2560but no path separator is added in other situations.
2561
2562Unix: When checking for a CTRL-C (could happen any time) and there is an X
2563event (e.g., clipboard updated) and there is typeahead, Vim would hang until a
2564character was typed.
2565
2566MS-DOS, MS-Windows and Amiga: expanding "$ENV/foo" when $ENV ends in a colon,
2567had the slash removed.
2568
2569":he \^=" gave an error for using \_.  ":he ^=" didn't find tag :set^=.  Even
2570"he :set^=" didn't find it.
2571
2572A tags file name "D:/tags" was used as file "tags" in "D:".  That doesn't work
2573when the current path for D: isn't the root of the drive.
2574
2575Removed calls to XtInitializeWidgetClass(), they shouldn't be necessary.
2576
2577When using a dtterm or various other color terminals, and the Normal group has
2578been set to use a different background color, the background wouldn't always
2579be displayed with that color.  Added check for "ut" termcap entry: If it's
2580missing, clearing the screen won't give us the current background color.  Need
2581to draw each character instead.  Vim now also works when the "cl" (clear
2582screen) termcap entry is missing.
2583
2584When repeating a "/" search command with a line offset, the "n" did use the
2585offset but didn't make the motion linewise.  Made "d/pat/+2" and "dn" do the
2586same.
2587
2588Win32: Trying to use ":tearoff" for a menu that doesn't exist caused a crash.
2589
2590OpenPTY() didn't work on Sequent.  Add a configure check for getpseudotty().
2591
2592C-indenting: Indented a line starting with ")" with the matching "(", but not
2593a line starting with "x)" looks strange.  Also compute the indent for aligning
2594with items inside the () and use the lowest indent.
2595
2596MS-DOS and Windows: ":n *.vim" also matched files ending in "~".
2597Moved mch_expandpath() from os_win16.c and os_msdos.c to misc1.c, they are
2598equal.
2599
2600Macintosh: (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)
2604
2605Multibyte GDK XIM: While composing a multibyte-word, if user presses a
2606mouse button, then the word is removed.  It should remain and composing end.
2607(Sung-Hyun Nam)
2608
2609MS-DOS, MS-Windows and OS/2: When reading from stdin, automatic CR-LF
2610conversion by the C library got in the way of detecting a "dos" 'fileformat'.
2611
2612When 'smartcase' is set, patterns with "\S" would also make 'ignorecase'
2613reset.
2614
2615When clicking the mouse in a column larger than 222, it moved to the first
2616column.  Can't encode a larger number in a character.  Now limit the number to
2617222, don't jump back to the first column.
2618
2619GUI: In some versions CSI would cause trouble, either when typed directly or
2620when part of a multi-byte sequence.
2621
2622When using multibyte characters in a ":normal" command, a trailing byte that
2623is CSI or K_SPECIAL caused problems.
2624
2625Wildmenu didn't handle multi-byte characters.
2626
2627":sleep 10" could not be interrupted on Windows, while "gs" could.  Made them
2628both work the same.
2629
2630Unix: When waiting for a character is interrupted by an X-windows event (e.g.,
2631to obtain the contents of the selection), the wait time would not be honored.
2632A message could be overwritten quickly.  Now compute the remaining waiting
2633time.
2634
2635Windows: Completing "\\share\c$\S" inserted a backslash before the $ and then
2636the name is invalid.  Don't insert the backslash.
2637
2638When doing an auto-write before ":make", IObuff was overwritten and the wrong
2639text displayed later.
2640
2641On the Mac the directories "c:/tmp" and "c:/temp" were used in the defaults
2642for 'backupdir' and 'directory', they don't exist.
2643
2644The check for a new file not to be on an MS-DOS filesystem created the file
2645temporarily, which can be slow.  Don't do this if there is another check for
2646the swap file being on an MS-DOS filesystem.
2647
2648Don't give the "Changing a readonly file" warning when reading from stdin.
2649
2650When using the "Save As" menu entry and not entering a file name, would get an
2651error message for the trailing ":edit #".  Now only do that when the
2652alternate file name was changed.
2653
2654When Vim owns the X11 selection and is being suspended, an application that
2655tries to use the selection hangs.  When Vim continues it could no longer
2656obtain the selection.  Now give up the selection when suspending.
2657
2658option.h and globals.h were included in some files, while they were already
2659included in vim.h.  Moved the definition of EXTERN to vim.h to avoid doing it
2660twice.
2661
2662When repeating an operator that used a search pattern and the search pattern
2663contained characters that have a special meaning on the cmdline (e.g., CTRL-U)
2664it didn't work.
2665
2666Fixed various problems with using K_SPECIAL (0x80) and CSI (0x9b) as a byte in
2667a (multibyte) character.  For example, the "r" command could not be repeated.
2668
2669The DOS/Windows install program didn't always work from a directory with a
2670long filename, because $VIM and the executable name would not have the same
2671path.
2672
2673Multi-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.
2707
2708Win32 with Make_mvc.mak: Didn't compile for debugging. (Craig Barkhouse)
2709
2710Win32 GUI: When "vimrun.exe" is used to execute an external command, don't
2711give a message box with the return value, it was already printed by vimrun.
2712Also avoid printing the return value of the shell when ":silent!" is used.
2713
2714Win32: selecting a lot of text and using the "find/replace" dialog caused a
2715crash.
2716
2717X11 GUI: When typing a character with the 8th bit set and the Meta/Alt
2718modifier, the modifier was removed without changing the character.
2719
2720Truncating a message to make it fit on the command line, using "..." for the
2721middle, didn't always compute the space correctly.
2722
2723Could not imap <C-@>.  Now it works like <Nul>.
2724
2725VMS:
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.
2731
2732The gzip plugin used a ":normal" command, this doesn't work when dropping a
2733compressed file on Vim.
2734
2735In very rare situations a binary search for a tag would fail, because an
2736uninitialized value happens to be half the size of the tag file. (Narendran)
2737
2738When using BufEnter and BufLeave autocommands to enable/disable a menu, it
2739wasn't updated right away.
2740
2741When doing a replace with the "c"onfirm flag, the cursor was positioned after
2742the ruler, instead of after the question.  With a long replacement string the
2743screen could scroll up and cause a "more" prompt.  Now the message is
2744truncated to make it fit.
2745
2746Motif: The autoconf check for the Xp library didn't work.
2747
2748When 'verbose' is set to list lines of a sourced file, defining a function
2749would reset the counter used for the "more" prompt.
2750
2751In the Win32 find/replace dialog, a '/' character caused problems.  Escape it
2752with a backslash.
2753
2754Starting a shell with ":sh" was different from starting a shell for CTRL-Z
2755when suspending doesn't work.  They now work the same way.
2756
2757Jumping to a file mark while in a changed buffer gave a "mark not set" error.
2758
2759":execute histget("cmd")" causes an endless loop and crashed Vim.  Now catch
2760all commands that cause too much recursiveness.
2761
2762Removed "Failed to open input method" error message, too many people got this
2763when they didn't want to use a XIM.
2764
2765GUI: When compiled without the +windows feature, the scrollbar would start
2766below line one.
2767
2768Removed the trick with redefining character class functions from regexp.c.
2769
2770Win32 GUI: Find dialog gives focus back to main window, when typing a
2771character mouse pointer is blanked, it didn't reappear when moving it in the
2772dialog window. (Vince Negri)
2773
2774When recording and typing a CTRL-C, no character was recorded.  When in Insert
2775mode or cancelling half a command, playing back the recorded sequence wouldn't
2776work.  Now record the CTRL-C.
2777
2778When the GUI was started, mouse codes for DEC and netterm were still checked
2779for.
2780
2781GUI: When scrolling and 'writedelay' is non-zero, the character under the
2782cursor was displayed in the wrong position (one line above/below with
2783CTRL-E/CTRL-Y).
2784
2785A ":normal" command would reset the 'scrollbind' info.  Causes problems when
2786using a ":normal" command in an autocommand for opening a file.
2787
2788Windows GUI: a point size with a dot, like "7.5", wasn't recognized. (Muraoka
2789Taro)
2790
2791When 'scrollbind' wasn't set would still remember the current position,
2792wasting time.
2793
2794GTK: Crash when 'shell' doesn't exist and doing":!ls".  Use _exit() instead of
2795exit() when the child couldn't execute the shell.
2796
2797Multi-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)
2806
2807GUI: The cursor was sometimes not removed when scrolling.  Changed the policy
2808from redrawing the cursor after each call to gui_write() to only update it at
2809the end of update_screen() or when setting the cursor position.  Also only
2810update the scrollbars at the end of update_screen(), that's the only place
2811where the window text may have been scrolled.
2812
2813Formatting "/*<Tab>long text", produced "* <Tab>" in the next line.  Now
2814remove the space before the Tab.
2815Formatting "/*<Tab>  long text", produced "* <Tab> long text" in the next
2816line.  Now keep the space after the Tab.
2817
2818In some places non-ASCII alphabetical characters were accepted, which could
2819cause problems.  For example, ":X" (X being such a character).
2820
2821When a pattern matches the end of the line, the last character in the line was
2822highlighted for 'hlsearch'.  That looks wrong for "/\%3c".  Now highlight the
2823character just after the line.
2824
2825Motif: If a dialog was closed by clicking on the "X" of the window frame Vim
2826would no longer respond.
2827
2828When using CTRL-X or CTRL-A on a number with many leading zeros, Vim would
2829crash. (Matsumoto)
2830
2831When 'insertmode' is set, the mapping in mswin.vim for CTRL-V didn't work in
2832Select mode.  Insert mode wasn't restarted after overwriting the text.
2833Now allow nesting Insert mode with insert and change commands.  CTRL-O
2834cwfoo<Esc> now also works.
2835
2836Clicking with the right mouse button in another window started Visual mode,
2837but used the start position of the current window.  Caused ml_get errors when
2838the line number was invalid.  Now stay in the same window.
2839
2840When 'selection' is "exclusive", "gv" sometimes selected one character fewer.
2841
2842When 'comments' contains more than one start/middle/end triplet, the optional
2843flags could be mixed up.  Also didn't align the end with the middle part.
2844
2845Double-right-click in Visual mode didn't update the shown mode.
2846
2847When the Normal group has a font name, it was never used when starting up.
2848Now use it when 'guifont' and 'guifontset' are empty.
2849Setting a font name to a highlight group before the GUI was started didn't
2850work.
2851
2852"make test" didn't use the name of the generated Vim executable.
2853
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)
2866
2867When 'list' is set, 'hlsearch' didn't highlight a match at the end of the
2868line.  Now highlight the '$'.
2869
2870The Paste menu item in the menu bar, the popup menu and the toolbar were all
2871different.  Now made them all equal to how it was done in mswin.vim.
2872
2873st_dev can be smaller than "unsigned".  The compiler may give an overflow
2874warning.  Added a configure check for dev_t.
2875
2876Athena: closing a confirm() dialog killed Vim.
2877
2878Various typos in the documentation. (Matt Dunford)
2879
2880Python interface: The definition of _DEBUG could cause trouble, undefine it.
2881The error message for not being able to load the shared library wasn't
2882translated.  (Muraoka Taro)
2883
2884Mac: (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.
2891
2892Unix: When catching a deadly signal and we keep getting one use _exit() to
2893exit in a quick and dirty way.
2894
2895Athena menu ordering didn't work correctly. (David Harrison)
2896
2897A ":make" or ":grep" command with a long argument could cause a crash.
2898
2899Doing ":new file" and using "Quit" for the ATTENTION dialog still opened a new
2900window.
2901
2902GTK: When starting the GUI and there is an error in the .vimrc file, don't
2903present the wait-return prompt, since the message was given in the terminal.
2904
2905When there was an error in a .vimrc file the terminal where gvim was started
2906could be cleared.  Set msg_row in main.c before writing any messages.
2907
2908GTK and X11 GUI: When trying to read characters from the user (e.g. with
2909input()) before the Vim window was opened caused Vim to hang when it was
2910started from the desktop.
2911
2912OS/390 uses 31 bit pointers.  That broke some computations with MAX_COL.
2913Reduce MAX_COL by one bit for OS/390. (Ralf Schandl)
2914
2915When defining a function and it already exists, Vim didn't say it existed
2916until after typing it.  Now do this right away when typing it.
2917
2918The message remembered for displaying later (keep_msg) was sometimes pointing
2919into a generic buffer, which might be changed by the time the message is
2920displayed.  Now make a copy of the message.
2921
2922When using multi-byte characters in a menu and a trailing byte is a backslash,
2923the menu would not be created correctly.  (Muraoka Taro)
2924Using a multibyte character in the substitute string where a trail byte is a
2925backslash didn't work.  (Muraoka Taro)
2926
2927When setting "t_Co" in a vimrc file, then setting it automatically from an
2928xterm termresponse and then setting it again manually caused a crash.
2929
2930When getting the value of a string option that is not supported, the number
2931zero was returned.  This breaks a check like "&enc == "asdf".  Now an empty
2932string is returned for string options.
2933
2934Crashed 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
2936to the X server accidentally.
2937
2938Had to hit return after selecting an entry for ":ts".
2939
2940The message from ":cn" message was sometimes cleared.  Now display it after
2941redrawing if it doesn't cause a scroll (truncated when necessary).
2942
2943hangulin.c didn't compile when the GUI was disabled.  Disable it when it won't
2944work.
2945
2946When setting a termcap option like "t_CO", the value could be displayed as
2947being for a normal key with a modifier, like "<M-=>".
2948
2949When expanding the argument list, entries which are a directory name did not
2950get included.  This stopped "vim c:/" from opening the file explorer.
2951
2952":syn match sd "^" nextgroup=asdf" skipped the first column and matched the
2953nextgroup in the second column.
2954
2955GUI: When 'lazyredraw' is set, 'showmatch' didn't work.  Required flushing
2956the output.
2957
2958Don't define the <NetMouse> termcode in an xterm, reduces the problem when
2959someone types <Esc> } in Insert mode.
2960
2961Made slash_adjust() work correctly for multi-byte characters. (Yasuhiro
2962Matsumoto)
2963Using a filename in Big5 encoding for autocommands didn't work (backslash in
2964trailbyte).  (Yasuhiro Matsumoto)
2965
2966DOS and Windows: Expanding *.vim also matched file.vimfoo.  Expand path like
2967Unix to avoid problems with Windows dir functions.  Merged the DOS and Win32
2968functions.
2969
2970Win32: Gvimext could not edit more than a few files at once, the length of the
2971argument was fixed.
2972
2973"ls -1 * | xargs vim" worked, but the input was in cooked mode.  Now switch to
2974raw mode when needed.  Use dup() to copy the stderr file descriptor to stdin
2975to make shell commands work.  No longer requires an external program to do
2976this.
2977
2978When using ":filetype off", ftplugin and indent usage would be switched off at
2979the same time.  Don't do this, setting 'filetype' manually can still use them.
2980
2981GUI: When writing a double-byte character, it could be split up in two calls
2982to gui_write(), which doesn't work.  Now flush before the output buffer
2983becomes full.
2984
2985When 'laststatus' is set and 'cmdheight' is two or bigger, the intro message
2986would be written over the status line.
2987The ":intro" command didn't work when there wasn't enough room.
2988
2989Configuring for Ruby failed with a recent version of Ruby. (Akinori Musha)
2990
2991Athena: When deleting the directory in which Vim was started, using the file
2992browser made Vim exit.  Removed the use of XtAppError().
2993
2994When using autoconf 2.50, UNIX was not defined.  Moved the comment for "#undef
2995UNIX" to a separate line.
2996
2997Win32: Disabled _OnWindowPosChanging() to make maximize work better.
2998
2999Win32: Compiling with VC 4.0 didn't work. (Walter Briscoe)
3000
3001Athena:
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.
3005
3006The file explorer didn't work in compatible mode, because of line
3007continuation.
3008
3009Didn't give an error message for ":digraph a".
3010
3011When using Ex mode in the GUI and typing a special key, <BS> didn't delete it
3012correctly.  Now display '?' for a special key.
3013
3014When an operator is pending, clicking in another window made it apply to that
3015window, even though the line numbers could be beyond the end of the buffer.
3016
3017When a function call doesn't have a terminating ")" Vim could crash.
3018
3019Perl interface: could crash on exit with perl 5.6.1. (Anduin Withers)
3020
3021Using %P in 'errorformat' wasn't handled correctly. (Tomas Zellerin)
3022
3023Using a syntax cluster that includes itself made Vim crash.
3024
3025GUI: With 'ls' set to 2, dragging the status line all the way up, then making
3026the Vim window smaller: Could not the drag status line anymore.
3027
3028"vim -c startinsert! file" placed cursor on last char of a line, instead of
3029after it.  A ":set" command in the buffer menu set w_set_curswant.  Now don't
3030do this when w_curswant is MAXCOL.
3031
3032Win32: When the gvim window was maximized and selecting another font, the
3033window would no longer fill the screen.
3034
3035The line with 'pastetoggle' in ":options" didn't show the right value when it
3036is a special key.  Hitting <CR> didn't work either.
3037
3038Formatting text, resulting in a % landing in the first line, repeated the % in
3039the following lines, like it's the start of a comment.
3040
3041GTK: When adding a toolbar item while gvim is already running, it wasn't
3042possible to use the tooltip.  Now it works by adding the tooltip first.
3043
3044The output of "g CTRL-G" mentioned "Char" but it's actually bytes.
3045
3046Searching for the end of a oneline region didn't work correctly when there is
3047an offset for the highlighting.
3048
3049Syntax highlighting: When synchronizing on C-comments, //*/ was seen as the
3050start of a comment.
3051
3052Win32: Without scrollbars present, the MS mouse scroll wheel didn't work.
3053Also handle the scrollbars when they are not visible.
3054
3055Motif: When there is no right scrollbar, the bottom scrollbar would still
3056leave room for it.  (Marcin Dalecki)
3057
3058When changing 'guicursor' and the value is invalid, some of the effects would
3059still take place.  Now first check for errors and only make the new value
3060effective when it's OK.
3061
3062Using "A" In Visual block mode, appending to lines that don't extend into the
3063block, padding was wrong.
3064
3065When pasting a block of text, a character that occupies more than one screen
3066column could be deleted and spaces inserted instead.  Now only do that with a
3067tab.
3068
3069Fixed conversion of documentation to HTML using Perl. (Dan Sharp)
3070
3071Give an error message when a menu name starts with a dot.
3072
3073Avoid a hang when executing a shell from the GUI on HP-UX by pushing "ptem"
3074even when sys/ptem.h isn't present.
3075
3076When creating the temp directory, make sure umask is 077, otherwise the
3077directory is not accessible when it was set to 0177.
3078
3079Unix: When resizing the window and a redraw is a bit slow, could get a window
3080resize event while redrawing, resulting in a messed up window.  Any input
3081(e.g., a mouse click) would redraw.
3082
3083The "%B" item in the status line became zero in Insert mode (that's normal)
3084for another than the current window.
3085
3086The menu entries to convert to xxd and back didn't work in Insert mode.
3087
3088When ":vglobal" didn't find a line where the pattern doesn't match, the error
3089message would be the wrong way around.
3090
3091When ignoring a multi-line error message with "%-A", the continuation lines
3092would be used anyway. (Servatius Brandt)
3093
3094"grx" on a double-wide character inserted "x", instead of replacing the
3095character with "x ".  "gR" on <xx> ('display' set the "uhex") didn't replace
3096at all.  When doing "gRxx" on a control character the first "x" would be
3097inserted, breaking the alignment.
3098
3099Added "0)" to 'cinkeys', so that when typing a ) it is put in the same place
3100as where "==" would put it.
3101
3102Win32: When maximized, adding/removing toolbar didn't resize the text area.
3103
3104When using <C-RightMouse> a count was discarded.
3105
3106When typing CTRL-V and <RightMouse> in the command line, would insert
3107<LeftMouse>.
3108
3109Using "vis" or "vas" when 'selection' is exclusive didn't include the last
3110character.
3111
3112When adding to an option like 'grepprg', leading space would be lost.  Don't
3113expand environment variables when there is no comma separating the items.
3114
3115GUI: When using a bold-italic font, would still use the bold trick and
3116underlining.
3117
3118Motif: The default button didn't work in dialogs, the first one was always
3119used.  Had to give input focus to the default button.
3120
3121When using CTRL-T to jump within the same file, the '' mark wasn't set.
3122
3123Undo wasn't Vi compatible when using the 'c' flag for ":s".  Now it undoes the
3124whole ":s" command instead of each confirmed replacement.
3125
3126The Buffers menu, when torn-off, disappeared when being refreshed.  Add a
3127dummy item to avoid this.
3128
3129Removed calling msg_start() in main(), it should not be needed.
3130
3131vim_strpbrk() did not support multibyte characters. (Muraoka Taro)
3132
3133The Amiga version didn't compile, the code was too big for relative jumps.
3134Moved a few files from ex_docmd.c to ex_cmds2.c
3135
3136When evaluating the "= register resulted in the "= register being changed, Vim
3137would crash.
3138
3139When doing ":view file" and it fails, the current buffer was made read-only.
3140
3141Motif: For some people the separators in the toolbar disappeared when resizing
3142the Vim window. (Marcin Dalecki)
3143
3144Win32 GUI: when setting 'lines' to a huge number, would not compute the
3145available space correctly.  Was counting the menu height twice.
3146
3147Conversion of the docs to HTML didn't handle the line with the +quickfix tag
3148correctly. (Antonio Colombo)
3149
3150Win32: fname_case() didn't handle multi-byte characters correctly. (Yasuhiro
3151Matsumoto)
3152
3153The Cygwin version had trouble with fchdir().  Don't use that function for
3154Cygwin.
3155
3156The generic check in scripts.vim for "conf" syntax was done before some checks
3157in filetype.vim, resulting in "conf" syntax too often.
3158
3159Dos32: Typing lagged behind.  Would wait for one biostick when checking if a
3160character is available.
3161
3162GTK: When setting 'columns' while starting up "gvim", would set the width of
3163the terminal it was started in.
3164
3165When using ESC in Insert mode, an autoindent that wraps to the next line
3166caused the cursor to move to the end of the line temporarily.  When the
3167character before the cursor was a double-wide multi-byte character the cursor
3168would be on the right halve, which causes problems with some terminals.
3169
3170Didn't handle multi-byte characters correctly when expanding a file name.
3171(Yasuhiro Matsumoto)
3172
3173Win32 GUI: Errors generated before the GUI is decided to start were not
3174reported.
3175
3176globpath() didn't reserve enough room for concatenated results. (Anduin
3177Withers)
3178
3179When expanding an option that is very long already, don't do the expansion, it
3180would be truncated to MAXPATHL. (Anduin Withers)
3181
3182When 'selection' is "exclusive", using "Fx" in Visual mode only moved until
3183just after the character.
3184
3185When using IME on the console to enter a file name, the screen may scroll up.
3186Redraw the screen then. (Yasuhiro Matsumoto)
3187
3188Motif: In the find/replace dialog the "Replace" button didn't work first time,
3189second time it replaced all matches.  Removed the use of ":s///c".
3190GTK: Similar problems with the find/replace dialog, moved the code to a common
3191function.
3192
3193X11: Use shared GC's for text. (Marcin Dalecki)
3194
3195"]i" found the match under the cursor, instead of the first one below it.
3196Same for "]I", "] CTRL-I", "]d", "]D" and "] CTRL-D".
3197
3198Win16: When maximized and the font is changed, don't change the window size.
3199(Vince Negri)
3200
3201When 'lbr' is set, deleting a block of text could leave the cursor in the
3202wrong position.
3203
3204Win32: When opening a file with the "Edit with Vim" popup menu entry,
3205wildcards would cause trouble.  Added the "--literal" argument to avoid
3206expanding file names.
3207
3208When using "gv", it didn't restore that "$" was used in Visual block mode.
3209
3210Win32 GUI: While waiting for a shell command to finish, the window wasn't
3211redrawn at all. (Yasuhiro Matsumoto)
3212
3213Syntax highlighting: A match that continues on a next line because of a
3214contained region didn't end when that region ended.
3215
3216The ":s" command didn't allow flags like 'e' and 'i' right after it.
3217
3218When using ":s" to split a line, marks were moved to the next line.  Vi keeps
3219them in the first line.
3220
3221When using ":n" ":rew", the previous context mark was at the top of the file,
3222while Vi puts it in the same place as the cursor.  Made it Vi compatible.
3223
3224Fixed 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
3226commands: % ( ) `<character> / ? N n { }
3227
3228Win32 GUI: The tooltip for tear-off items remained when the tear-off item was
3229no longer selected.
3230
3231GUI: When typing ":" at the more prompt, would return to Normal mode and not
3232redraw the screen.
3233
3234When starting Vim with an argument "-c g/at/p" the printed lines would
3235overwrite each other.
3236
3237BeOS: Didn't compile.  Configure didn't add the os_beos files, the QNX check
3238removed them.  Various changes to os_beos.cc. (Joshua Haberman)
3239Removed the check for the hardware platform, the BeBox has not been produced
3240for a long time now.
3241
3242Win32 GUI: don't use a message box when the shell returns an error code,
3243display the message in the Vim window.
3244
3245Make_mvc.mak always included "/debug" for linking.  "GUI=no" argument didn't
3246work.  Use "DEBUG=yes" instead of "DEBUG=1" to make it consistent. (Dan Sharp)
3247
3248When a line in the tags file ended in ;" (no TAB following) the command would
3249not be recognized as a search command.
3250
3251X11: The inputMethod resource never worked.  Don't use the "none" input method
3252for SGI, it apparently makes the first character in Input method dropped.
3253
3254Fixed incorrect tests in os_mac.h. (Axel Kielhorn)
3255
3256Win32 console: When the console where Vim runs in is closed, Vim could hang in
3257trying to restore the window icon. (Yasuhiro Matsumoto)
3258
3259When using ":3call func()" or ":3,3call func() the line number was ignored.
3260
3261When 'showbreak' and 'linebreak' were both set, Visual highlighting sometimes
3262continued until the end of the line.
3263
3264GTK GUI: Tearoff items were added even when 'guioptions' didn't contain 't'
3265when starting up.
3266
3267MS-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.
3269Added mch_has_exp_wildcard() functions.
3270
3271When reducing the Vim window height while starting up, would get an
3272out-of-memory error message.
3273
3274When editing a very long search pattern, 'incsearch' caused the redraw of the
3275command line to fail.
3276
3277Motif GUI: On some systems the "Help" menu would not be on the far right, as
3278it should be.  On some other systems (esp. IRIX) the command line would not
3279completely show.  Solution is to only resize the menubar for Lesstif.
3280
3281Using "%" in a line that contains "\\" twice didn't take care of the quotes
3282properly.  Now make a difference between \" and \\".
3283
3284For non-Unix systems a dummy file is created when finding a swap name to
3285detect a 8.3 filesystem.  When there is an existing swap file, would get a
3286warning for the file being created outside of Vim.  Also, when closing the Vim
3287window the file would remain.
3288
3289Motif: The menu height was always computed, using a "-menuheight" argument
3290was setting the room for the command line.  Now make clear the argument is not
3291supported.
3292
3293For some (EBCDIC) systems, POUND was equal to '#'.  Added an #if for that to
3294avoid a duplicate case in a switch.
3295
3296The GUI may have problems when forking.  Always call _exit() instead of exit()
3297in the parent, the child will call exit().
3298
3299Win32 GUI: Accented characters were often wrong in dialogs and tearoff menus.
3300Now use CP_ACP instead of CP_OEMCP. (Vince Negri)
3301
3302When displaying text with syntax highlighting causes an error (e.g., running
3303out of stack) the syntax highlighting is disabled to avoid further messages.
3304
3305When a command in a .vimrc or .gvimrc causes an ATTENTION prompt, and Vim was
3306started from the desktop (no place to display messages) it would hang.  Now
3307open the GUI window early to be able to display the messages and pop up the
3308dialog.
3309
3310"r<CR>" on a multi-byte character deleted only the first byte of the
3311character.  "3r<CR>" deleted three bytes instead of three characters.
3312
3313When 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
3315do ":q").
3316
3317When using an item in 'guicursor' that starts with a colon, Vim would get
3318stuck or crash.
3319
3320When putting a file mark in a help file and later jumping back to it, the
3321options would not be set.  Extended the modeline in all help files to make
3322this work better.
3323
3324When a modeline contained "::" the local option values would be printed.  Now
3325ignore it.
3326
3327Some help files did not use a 8.3 names, which causes problems when using
3328MS-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".
3331
3332When Visual mode is blockwise, using "iw" or "aw" made it characterwise.  That
3333doesn't seem right, only do this when in linewise mode.  But then do it
3334always, not only when start and end of Visual mode are equal.
3335
3336When using "viw" on a single-letter word and 'selection' is exclusive, would
3337not include the word.
3338
3339When formatting text from Insert mode, using CTRL-O, could mess up undo
3340information.
3341
3342While writing a file (also for the backup file) there was no check for an
3343interrupt (hitting CTRL-C).  Vim could hang when writing a large file over a
3344slow network, and moving the mouse didn't make it appear (when 'mousehide' is
3345set) and the screen wasn't updated in the GUI.  Also allow interrupting when
3346syncing the swap file, it can take a long time.
3347
3348When using ":mksession" while there is help window, it would later be restored
3349to the right file but not marked as a help buffer.  ":help" would then open
3350another window.  Now use the value "help" for 'buftype' to mark a help buffer.
3351
3352The session file contained absolute path names in option values, that doesn't
3353work when the home directory depends on the situation.  Replace the home
3354directory with ~/ when possible.
3355
3356When using 'showbreak' a TAB just after the shown break would not be counted
3357correctly, the cursor would be positioned wrong.
3358
3359With 'showbreak' set to "--->" or "------->" and 'sts' set to 4, inserting
3360tabs did not work right.  Could cause a crash.  Backspacing was also wrong,
3361could get stuck at a line break.
3362
3363Win32: crashed when tearing off a menu with over 300 items.
3364
3365GUI: A menu or toolbar item would appear when only a tooltip was defined for
3366it.
3367
3368When 'scrolloff' is non-zero and "$" is in 'cpoptions', using "s" while the
3369last line of the file is the first line on screen, the text wasn't displayed.
3370
3371When running "autoconf", delete the configure cache to force starting cleanly
3372when configure is run again.
3373
3374When changing the Normal colors for cterm, the value of 'background' was
3375changed even when the GUI was used.
3376
3377The warning for a missing vimrun.exe was always given on startup, but some
3378people just editing a file don't need to be bothered by it.  Only show it when
3379vimrun would be used.
3380
3381When using "%" in a multibyte text it could get confused by trailbytes that
3382match. (Muraoka Taro)
3383
3384Termcap entry for RiscOS was wrong, using 7 and 8 in octal codes.
3385
3386Athena: The title of a dialog window and the file selector window were not
3387set. (David Harrison)
3388
3389The "htmlLink" highlight group specified colors, which gives problems when
3390using a color scheme.  Added the "Underlined" highlight group for this.
3391
3392After using ":insert" or ":change" the '[ mark would be one line too low.
3393
3394When looking for the file name after a match with 'include' one character was
3395skipped.  Same for 'define'.
3396
3397Win32 and DJGPP: When editing a file with a short name in a directory, and
3398editing the same file but using the long name, would end up with two buffers
3399on the same file.
3400
3401"gf" on a filename that starts with "../" only worked when the file being
3402edited is in the current directory.  An include file search didn't work
3403properly for files starting with "../" or ".".  Now search both relative to
3404the file and to the current directory.
3405
3406When 'printheader', 'titlestring', 'iconstring', 'rulerformat' or 'statusline'
3407contained "%{" but no following "}" memory was corrupted and a crash could
3408happen.
3409
3410":0append" and then inserting two lines did not redraw the blank lines that
3411were scrolled back down.
3412
3413When using insert mode completion in a narrow window, the message caused a
3414scroll up.  Now shorten the message if it doesn't fit and avoid writing the
3415ruler over the message.
3416
3417XIM still didn't work correctly on some systems, especially SGI/IRIX.  Added
3418the 'imdisable' option, which is set by default for that system.
3419
3420Patch 6.0aw.008
3421Problem:    When the first character of a file name is over 127, the Buffers
3422	    menu entry would get a negative priority and cause problems.
3423Solution:   Reduce the multiplier for the first character when computing
3424	    the hash value for a Buffers menu entry.
3425Files:	    runtime/menu.vim
3426
3427Patch 6.0aw.010
3428Problem:    Win32: ":browse edit dir/dir" didn't work. (Vikas)
3429Solution:   Change slashes to backslashes in the directory passed to the file
3430	    browser.
3431Files:	    src/gui_w48.c
3432
3433Athena file browser: On some systems wcstombs() can't be used to get the
3434length of a multi-byte string.  Use the maximum length then. (Yasuhiro
3435Matsumoto)
3436
3437Patch 6.0ax.001
3438Problem:    When 'patchmode' is set, appending to a file gives an empty
3439	    original file. (Ed Ralston)
3440Solution:   Also make a backup copy when appending and 'patchmode' is set.
3441Files:	    src/fileio.c
3442
3443Patch 6.0ax.002
3444Problem:    When 'patchmode' is set, appending to a compressed file gives an
3445	    uncompressed original file. (Ed Ralston)
3446Solution:   Create the original file before decompressing.
3447Files:	    runtime/plugin/gzip.vim
3448
3449Patch 6.0ax.005
3450Problem:    Athena file selector keeps the title of the first invocation.
3451Solution:   Set the title each time the file selector is opened. (David
3452	    Harrison)
3453Files:	    src/gui_at_fs.c
3454
3455Patch 6.0ax.007
3456Problem:    When using GPM (mouse driver in a Linux console) a double click is
3457	    interpreted as a scroll wheel click.
3458Solution:   Check if GPM is being used when deciding if a mouse event is for
3459	    the scroll wheel.
3460Files:	    src/term.c
3461
3462Patch 6.0ax.010
3463Problem:    The Edit.Save menu and the Save toolbar button didn't work when
3464	    the buffer has no file name.
3465Solution:   Use a file browser to ask for a file name.  Also fix the toolbar
3466	    Find item in Visual mode.
3467Files:	    runtime/menu.vim
3468
3469Patch 6.0ax.012
3470Problem:    When 'cpoptions' contains "$", breaking a line for 'textwidth'
3471	    doesn't redraw properly. (Stefan Schulze)
3472Solution:   Remove the dollar before breaking the line.
3473Files:	    src/edit.c
3474
3475Patch 6.0ax.014
3476Problem:    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".
3479Solution:   Also use vimrun.exe when redirecting the output of a command.
3480Files:	    src/os_win32.c
3481
3482Patch 6.0ax.016
3483Problem:    The version number was reported wrong in the intro screen.
3484Solution:   Check for a version number with two additional letters.
3485Files:	    src/version.c
3486
3487Patch 6.0ax.019
3488Problem:    When scrolling a window with folds upwards, switching to another
3489	    vertically split window and back may not update the scrollbar.
3490Solution:   Limit w_botline to the number of lines in the buffer plus one.
3491Files:	    src/move.c
3492
3493
3494==============================================================================
3495VERSION 6.1						*version-6.1*
3496
3497This section is about improvements made between version 6.0 and 6.1.
3498
3499This is a bug-fix release, there are not really any new features.
3500
3501
3502Changed							*changed-6.1*
3503-------
3504
3505'iminsert' and 'imsearch' are no longer set as a side effect of defining a
3506language-mapping using ":lmap".
3507
3508
3509Added							*added-6.1*
3510-----
3511
3512Syntax files:
3513ampl		AMPL (David Krief)
3514ant		Ant (Johannes Zellner)
3515baan		Baan (Her van de Vliert)
3516cs		C# (Johannes Zellner)
3517lifelines	Lifelines (Patrick Texier)
3518lscript		LotusScript (Taryn East)
3519moo		MOO (Timo Frenay)
3520nsis		NSIS (Alex Jakushev)
3521ppd		Postscript Printer Description (Bjoern Jacke)
3522rpl		RPL/2 (Joel Bertrand)
3523scilab		Scilab (Benoit Hamelin)
3524splint		Splint (Ralf Wildenhues)
3525sqlj		SQLJ (Andreas Fischbach)
3526wvdial		WvDial (Prahlad Vaidyanathan)
3527xf86conf	XFree86 config (Nikolai Weibull)
3528xmodmap		Xmodmap (Nikolai Weibull)
3529xslt		Xslt (Johannes Zellner)
3530monk		Monk (Mike Litherland)
3531xsd		Xsd (Johannes Zellner)
3532cdl		CDL (Raul Segura Acevedo)
3533sendpr		Send-pr (Hendrik Scholz)
3534
3535Added indent file for Scheme. (Dorai Sitaram)
3536Added indent file for Prolog. (Kontra Gergely)
3537Added indent file for Povray (David Necas)
3538Added indent file for IDL (Aleksandar Jelenak)
3539Added C# indent and ftplugin scripts.
3540
3541Added Ukrainian menu translations. (Bohdan Vlasyuk)
3542Added ASCII version of the Czech menus. (Jiri Brezina)
3543
3544Added Simplified Chinese translation of the tutor. (Mendel L Chan)
3545
3546Added Russian keymap for yawerty keyboard.
3547
3548Added an explanation of using the vimrc file in the tutor.
3549Changed tutor.vim to get the right encoding for the Taiwainese tutor.
3550
3551Added Russian tutor. (Andrey Kiselev)
3552Added Polish tutor. (Mikolaj Machowski)
3553
3554Added darkblue color scheme. (Bohdan Vlasyuk)
3555
3556When packing the dos language archive automatically generate the .mo files
3557that are required.
3558
3559Improved NSIS script to support NSIS 180.  Added icons for the
3560enabled/disabled status. (Mirek Pruchnik)
3561
3562cp1250 version of the Slovak message translations.
3563
3564Compiler plugins for IRIX compilers. (David Harrison)
3565
3566
3567Fixed							*fixed-6.1*
3568-----
3569
3570The license text was updated to make the meaning clearer and make it
3571compatible with the GNU GPL.  Otherwise distributors have a problem when
3572linking Vim with a GPL'ed library.
3573
3574When installing the "less.sh" script it was not made executable. (Chuck Berg)
3575
3576Win32: The "9" key on the numpad wasn't working. (Julian Kinraid)
3577
3578The NSIS install script didn't work with NSIS 1.80 or later.  Also add
3579Vim-specific icons. (Pruchnik)
3580
3581The script for conversion to HTML contained an "if" in the wrong place.
3582(Michael Geddes)
3583
3584Allow using ":ascii" in the sandbox, it's harmless.
3585
3586Removed creat() from osdef2.h.in, it wasn't used and may cause a problem when
3587it's redefined to creat64().
3588
3589The text files in the VisVim directory were in "dos" format.  This caused
3590problems when applying a patch.  Now keep them in "unix" format and convert
3591them to "dos" format only for the PC archives.
3592
3593Add ruby files to the dos source archive, they can be used by Make_mvc.mak.
3594(Mirek Pruchnik)
3595
3596"cp -f" doesn't work on all systems.  Change "cp -f" in the Makefile to "rm
3597-f" and "cp".
3598
3599Didn't compile on a Compaq Tandem Himalaya OSS. (Michael A. Benzinger)
3600
3601The GTK file selection dialog didn't include the "Create Dir", "Delete File"
3602and "Rename File" buttons.
3603
3604When doing ":browse source" the dialog has the title "Run Macro".  Better
3605would be "Source Vim script". (Yegappan Lakshmanan)
3606
3607Win32: Don't use the printer font as default for the font dialog.
3608
3609"make doslang" didn't work when configure didn't run (yet).  Set $MAKEMO to
3610"yes". (Mirek Pruchnik)
3611
3612The ToolBar TagJump item used "g]", which prompts for a selection even when
3613there is only one matching tag.  Use "g<C-]>" instead.
3614
3615The ming makefile for message translations didn't have the right list of
3616files.
3617
3618The MS-Windows 3.1 version complains about LIBINTL.DLL not found.  Compile
3619this version without message translations.
3620
3621The Borland 5 makefile contained a check for Ruby which is no longer needed.
3622The URLs for the TCL library was outdated. (Dan Sharp)
3623
3624The eviso.ps file was missing from the DOS runtime archive, it's needed for
3625printing PostScript in the 32bit DOS version.
3626
3627In menu files ":scriptencoding" was used in a wrong way after patch 6.1a.032
3628Now use ":scriptencoding" in the file where the translations are given.  Do
3629the same for all menus in latin1 encoding.
3630
3631Included a lot of fixes for the Macintosh, mostly to make it work with Carbon.
3632(Dany StAmant, Axel Kielhorn, Benji Fisher)
3633
3634Improved the vimtutor shell script to use $TMPDIR when it exists, and delete
3635the copied file when exiting in an abnormal way. (Max Ischenko)
3636
3637When "iconv.dll" can't be found, try using "libiconv.dll".
3638
3639When encryption is used, filtering with a shell command wasn't possible.
3640
3641DJGPP: ":cd c:" always failed, can't get permissions for "c:".
3642Win32: ":cd c:/" failed if the previous current directory on c: had become
3643invalid.
3644
3645DJGPP: Shift-Del and Del both produce \316\123.  Default mapping for Del is
3646wrong.  Disabled it.
3647
3648Dependencies on header files in MingW makefile was wrong.
3649
3650Win32: Don't use ACL stuff for MSVC 4.2, it's not supported. (Walter Briscoe)
3651
3652Win32 with Borland: bcc.cfg was caching the value for $(BOR), but providing a
3653different argument to make didn't regenerate it.
3654
3655Win32 with MSVC: Make_ivc.mak generates a new if_ole.h in a different
3656directory, the if_ole.h in the src directory may be used instead.  Delete the
3657distributed file.
3658
3659When a window is vertically split and then ":ball" is used, the window layout
3660is messed up, can cause a crash. (Muraoka Taro)
3661
3662When 'insertmode' is set, using File/New menu and then double clicking, "i" is
3663soon inserted. (Merlin Hansen)
3664
3665When Select mode is active and using the Buffers menu to switch to another
3666buffer, an old selection comes back.  Reset VIsual_reselect for a ":buffer"
3667command.
3668
3669When Select mode is active and 'insertmode' is set, using the Buffers menu to
3670switch to another buffer, did not return to Insert mode.  Make sure
3671"restart_edit" is set.
3672
3673When double clicking on the first character of a word while 'selection' is
3674"exclusive" didn't select that word.
3675
3676
3677Patch 6.0.001
3678Problem:    Loading the sh.vim syntax file causes error messages . (Corinna
3679	    Vinschen)
3680Solution:   Add an "if". (Charles Campbell)
3681Files:	    runtime/syntax/sh.vim
3682
3683Patch 6.0.002
3684Problem:    Using a '@' item in 'viminfo' doesn't work. (Marko Leipert)
3685Solution:   Add '@' to the list of accepted items.
3686Files:	    src/option.c
3687
3688Patch 6.0.003
3689Problem:    The configure check for ACLs on AIX doesn't work.
3690Solution:   Fix the test program so that it compiles. (Tomas Ogren)
3691Files:	    src/configure.in, src/auto/configure
3692
3693Patch 6.0.004
3694Problem:    The find/replace dialog doesn't reuse a previous argument
3695	    properly.
3696Solution:   After removing a "\V" terminate the string. (Zwane Mwaikambo)
3697Files:	    src/gui.c
3698
3699Patch 6.0.005
3700Problem:    In Insert mode, "CTRL-O :ls" has a delay before redrawing.
3701Solution:   Don't delay just after wait_return() was called.  Added the
3702	    did_wait_return flag.
3703Files:	    src/globals.h, src/message.c, src/normal.c, src/screen.c
3704
3705Patch 6.0.006
3706Problem:    With a vertical split, 'number' set and 'scrolloff' non-zero,
3707	    making the window width very small causes a crash. (Niklas
3708	    Lindstrom)
3709Solution:   Check for a zero width.
3710Files:	    src/move.c
3711
3712Patch 6.0.007
3713Problem:    When setting 'filetype' while there is no FileType autocommand, a
3714	    following ":setfiletype" would set 'filetype' again. (Kobus
3715	    Retief)
3716Solution:   Set did_filetype always when 'filetype' has been set.
3717Files:	    src/option.c
3718
3719Patch 6.0.008
3720Problem:    'imdisable' is missing from the options window. (Michael Naumann)
3721Solution:   Add an entry for it.
3722Files:	    runtime/optwin.vim
3723
3724Patch 6.0.009
3725Problem:    Nextstep doesn't have S_ISBLK. (John Beppu)
3726Solution:   Define S_ISBLK using S_IFBLK.
3727Files:	    src/os_unix.h
3728
3729Patch 6.0.010
3730Problem:    Using "gf" on a file name starting with "./" or "../" in a buffer
3731	    without a name causes a crash. (Roy Lewis)
3732Solution:   Check for a NULL file name.
3733Files:	    src/misc2.c
3734
3735Patch 6.0.011
3736Problem:    Python: After replacing or deleting lines get an ml_get error.
3737	    (Leo Lipelis)
3738Solution:   Adjust the cursor position for deleted or added lines.
3739Files:	    src/if_python.c
3740
3741Patch 6.0.012
3742Problem:    Polish translations contain printf format errors, this can result
3743	    in a crash when using one of them.
3744Solution:   Fix for translated messages. (Michal Politowski)
3745Files:	    src/po/pl.po
3746
3747Patch 6.0.013
3748Problem:    Using ":silent! cmd" still gives some error messages, like for an
3749	    invalid range. (Salman Halim)
3750Solution:   Reset emsg_silent after calling emsg() in do_one_cmd().
3751Files:	    src/ex_docmd.c
3752
3753Patch 6.0.014
3754Problem:    When 'modifiable' is off and 'virtualedit' is "all", "rx" on a TAB
3755	    still changes the buffer. (Muraoka Taro)
3756Solution:   Check if saving the line for undo fails.
3757Files:	    src/normal.c
3758
3759Patch 6.0.015
3760Problem:    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)
3763Solution:   Only delete the variable when it exists.
3764Files:	    runtime/ftplugin.vim
3765
3766Patch 6.0.016
3767Problem:    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().
3770Solution:   Also find unlisted buffers.
3771Files:	    src/eval.c
3772
3773Patch 6.0.017
3774Problem:    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)
3777Solution:   Only set t_Co when it wasn't set yet.
3778Files:	    src/term.c
3779
3780Patch 6.0.018
3781Problem:    Initializing 'encoding' may cause a crash when setlocale() is not
3782	    used. (Dany St-Amant)
3783Solution:   Check for a NULL pointer.
3784Files:	    src/mbyte.c
3785
3786Patch 6.0.019
3787Problem:    Converting a string with multi-byte characters to a printable
3788	    string, e.g., with strtrans(), may cause a crash. (Tomas Zellerin)
3789Solution:   Correctly compute the length of the result in transstr().
3790Files:	    src/charset.c
3791
3792Patch 6.0.020
3793Problem:    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.
3796Solution:   Prepend "g:" to the variable name. (Aric Blumer)
3797Files:	    src/syntax.c, src/term.c
3798
3799Patch 6.0.021
3800Problem:    The 'cscopepathcomp' option didn't work.
3801Solution:   Change USE_CSCOPE to FEAT_CSCOPE. (Mark Feng)
3802Files:	    src/option.c
3803
3804Patch 6.0.022
3805Problem:    When using the 'langmap' option, the second character of a command
3806	    starting with "g" isn't adjusted.
3807Solution:   Apply 'langmap' to the second character. (Alex Kapranoff)
3808Files:	    src/normal.c
3809
3810Patch 6.0.023
3811Problem:    Loading the lhaskell syntax doesn't work. (Thore B. Karlsen)
3812Solution:   Use ":runtime" instead of "source" to load haskell.vim.
3813Files:	    runtime/syntax/lhaskell.vim
3814
3815Patch 6.0.024
3816Problem:    Using "CTRL-V u 9900" in Insert mode may cause a crash. (Noah
3817	    Levitt)
3818Solution:   Don't insert a NUL byte in the text, use a newline.
3819Files:	    src/misc1.c
3820
3821Patch 6.0.025
3822Problem:    The pattern "\vx(.|$)" doesn't match "x" at the end of a line.
3823	    (Preben Peppe Guldberg)
3824Solution:   Always see a "$" as end-of-line after "\v".  Do the same for "^".
3825Files:	    src/regexp.c
3826
3827Patch 6.0.026
3828Problem:    GTK: When using arrow keys to navigate through the menus, the
3829	    separators are selected.
3830Solution:   Set the separators "insensitive". (Pavel Kankovsky)
3831Files:	    src/gui_gtk.c, src/gui_gtk_x11.c
3832
3833Patch 6.0.027
3834Problem:    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.
3838Solution:   Adjust the 'printexpr' option default.  Fix the other problems and
3839	    update the documentation.  (Zoltan Arpadffy)
3840Files:	    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
3842
3843Patch 6.0.028
3844Problem:    Can't compile without +virtualedit and with +visualextra. (Geza
3845	    Lakner)
3846Solution:   Add an #ifdef for +virtualedit.
3847Files:	    src/ops.c
3848
3849Patch 6.0.029
3850Problem:    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)
3853Solution:   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.
3857Files:	    src/structs.h, src/undo.c
3858
3859Patch 6.0.030
3860Problem:    Using ":source! file" doesn't work inside a loop or after
3861	    ":argdo". (Pavol Juhas)
3862Solution:   Execute the commands in the file right away, do not let the main
3863	    loop do it.
3864Files:	    src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c, src/globals.h,
3865	    src/proto/ex_docmd.pro, src/proto/getchar.pro
3866
3867Patch 6.0.031
3868Problem:    Nextstep doesn't have setenv() or putenv().  (John Beppu)
3869Solution:   Move putenv() from pty.c to misc2.c
3870Files:	    src/misc2.c, src/pty.c
3871
3872Patch 6.0.032
3873Problem:    When changing a setting that affects all folds, they are not
3874	    displayed immediately.
3875Solution:   Set the redraw flag in foldUpdateAll().
3876Files:	    src/fold.c
3877
3878Patch 6.0.033
3879Problem:    Using 'wildmenu' on MS-Windows, file names that include a space
3880	    are only displayed starting with that space. (Xie Yuheng)
3881Solution:   Don't recognize a backslash before a space as a path separator.
3882Files:	    src/screen.c
3883
3884Patch 6.0.034
3885Problem:    Calling searchpair() with three arguments could result in a crash
3886	    or strange error message. (Kalle Bjorklid)
3887Solution:   Don't use the fifth argument when there is no fourth argument.
3888Files:	    src/eval.c
3889
3890Patch 6.0.035
3891Problem:    The menu item Edit/Global_Settings/Toggle_Toolbar doesn't work
3892	    when 'ignorecase' is set. (Allen Castaban)
3893Solution:   Always match case when checking if a flag is already present in
3894	    'guioptions'.
3895Files:	    runtime/menu.vim
3896
3897Patch 6.0.036
3898Problem:    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)
3900Solution:   Only use the drive, not the whole path to the current directory.
3901	    Also make it work for "c:dir/file".
3902Files:	    src/misc2.c
3903
3904Patch 6.0.037
3905Problem:    When the user has set "did_install_syntax_menu" to avoid the
3906	    default Syntax menu it still appears. (Virgilio)
3907Solution:   Don't add the three default items when "did_install_syntax_menu"
3908	    is set.
3909Files:	    runtime/menu.vim
3910
3911Patch 6.0.038
3912Problem:    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.
3914Solution:   Correct the cursor position.
3915Files:	    src/ops.c
3916
3917Patch 6.0.039
3918Problem:    "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.
3921Solution:   For "gP" reset the "coladd" field for the '] mark.  For "c" leave
3922	    the cursor on the last inserted character.
3923Files:	    src/ops.c
3924
3925Patch 6.0.040
3926Problem:    When 'fileencoding' is invalid and writing fails because of
3927	    this, the original file is gone. (Eric Carlier)
3928Solution:   Restore the original file from the backup.
3929Files:	    src/fileio.c
3930
3931Patch 6.0.041
3932Problem:    Using ":language messages en" when LC_MESSAGES is undefined
3933	    results in setting LC_CTYPE. (Eric Carlier)
3934Solution:   Set $LC_MESSAGES instead.
3935Files:	    src/ex_cmds2.c
3936
3937Patch 6.0.042
3938Problem:    ":mksession" can't handle file names with a space.
3939Solution:   Escape special characters in file names with a backslash.
3940Files:	    src/ex_docmd.c
3941
3942Patch 6.0.043
3943Problem:    Patch 6.0.041 was wrong.
3944Solution:   Use mch_getenv() instead of vim_getenv().
3945Files:	    src/ex_cmds2.c
3946
3947Patch 6.0.044
3948Problem:    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)
3951Solution:   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.
3954Files:	    src/structs.h, src/syntax.c
3955
3956Patch 6.0.045
3957Problem:    After creating a fold with a Visual selection, another window
3958	    with the same buffer still has inverted text. (Sami Salonen)
3959Solution:   Redraw the inverted text.
3960Files:	    src/normal.c
3961
3962Patch 6.0.046
3963Problem:    When getrlimit() returns an 8 byte number the check for running
3964	    out of stack may fail. (Anthony Meijer)
3965Solution:   Skip the stack check if the limit doesn't fit in a long.
3966Files:	    src/auto/configure, src/config.h.in, src/configure.in,
3967	    src/os_unix.c
3968
3969Patch 6.0.047
3970Problem:    Using a regexp with "\(\)" inside a "\%[]" item causes a crash.
3971	    (Samuel Lacas)
3972Solution:   Don't allow nested atoms inside "\%[]".
3973Files:	    src/regexp.c
3974
3975Patch 6.0.048
3976Problem:    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.
3979Solution:   Use a different function to obtain the number of mouse buttons.
3980	    Avoid recognizing a button press from undefined bits. (Vince Negri)
3981Files:	    src/os_win32.c
3982
3983Patch 6.0.049
3984Problem:    When using evim the intro screen is misleading. (Adrian Nagle)
3985Solution:   Mention whether 'insertmode' is set and the menus to be used.
3986Files:	    runtime/menu.vim, src/version.c
3987
3988Patch 6.0.050
3989Problem:    UTF-8: "viw" doesn't include non-ASCII characters before the
3990	    cursor. (Bertilo Wennergren)
3991Solution:   Use dec_cursor() instead of decrementing the column number.
3992Files:	    src/search.c
3993
3994Patch 6.0.051
3995Problem:    UTF-8: Using CTRL-R on the command line doesn't insert composing
3996	    characters. (Ron Aaron)
3997Solution:   Also include the composing characters and fix redrawing them.
3998Files:	    src/ex_getln.c, src/ops.c
3999
4000Patch 6.0.052
4001Problem:    The check for rlim_t in patch 6.0.046 does not work on some
4002	    systems. (Zdenek Sekera)
4003Solution:   Also look in sys/resource.h for rlim_t.
4004Files:	    src/auto/configure, src/configure.in
4005
4006Patch 6.0.053 (extra)
4007Problem:    Various problems with QNX.
4008Solution:   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)
4011Files:	    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
4014
4015Patch 6.0.054
4016Problem:    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.
4019Solution:   Make CTRL-V work as it should.  Do the same for the Paste menu
4020	    entries.
4021Files:	    runtime/menu.vim, runtime/mswin.vim
4022
4023Patch 6.0.055
4024Problem:    GTK: The selection isn't copied the first time.
4025Solution:   Own the selection at the right moment.
4026Files:	    src/gui_gtk_x11.c
4027
4028Patch 6.0.056
4029Problem:    Using "CTRL-O cw" in Insert mode results in a nested Insert mode.
4030	    <Esc> doesn't leave Insert mode then.
4031Solution:   Only use nested Insert mode when 'insertmode' is set or when a
4032	    mapping is used.
4033Files:	    src/normal.c
4034
4035Patch 6.0.057
4036Problem:    Using ":wincmd g}" in a function doesn't work.  (Gary Holloway)
4037Solution:   Execute the command directly, instead of putting it in the
4038	    typeahead buffer.
4039Files:	    src/normal.c, src/proto/normal.pro, src/window.c
4040
4041Patch 6.0.058
4042Problem:    When a Cursorhold autocommand moved the cursor, the ruler wasn't
4043	    updated. (Bohdan Vlasyuk)
4044Solution:   Update the ruler after executing the autocommands.
4045Files:	    src/gui.c
4046
4047Patch 6.0.059
4048Problem:    Highlighting for 'hlsearch' isn't visible in lines that are
4049	    highlighted for diff highlighting.  (Gary Holloway)
4050Solution:   Let 'hlsearch' highlighting overrule diff highlighting.
4051Files:	    src/screen.c
4052
4053Patch 6.0.060
4054Problem:    Motif: When the tooltip is to be popped up, Vim crashes.
4055	    (Gary Holloway)
4056Solution:   Check for a NULL return value from gui_motif_fontset2fontlist().
4057Files:	    src/gui_beval.c
4058
4059Patch 6.0.061
4060Problem:    The toolbar buttons to load and save a session do not correctly
4061	    use v:this_session.
4062Solution:   Check for v:this_session to be empty instead of existing.
4063Files:	    runtime/menu.vim
4064
4065Patch 6.0.062
4066Problem:    Crash when 'verbose' is > 3 and using ":shell". (Yegappan
4067	    Lakshmanan)
4068Solution:   Avoid giving a NULL pointer to printf().  Also output a newline
4069	    and switch the cursor on.
4070Files:	    src/misc2.c
4071
4072Patch 6.0.063
4073Problem:    When 'cpoptions' includes "$", using "cw" to type a ')' on top of
4074	    the "$" doesn't update syntax highlighting after it.
4075Solution:   Stop displaying the "$" when typing a ')' in its position.
4076Files:	    src/search.c
4077
4078Patch 6.0.064 (extra)
4079Problem:    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.
4082Solution:   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.
4088Files:	    nsis/gvim.nsi, nsis/README.txt, src/dosinst.c
4089
4090Patch 6.0.065
4091Problem:    When using ":normal" in 'indentexpr' it may use redo characters
4092	    before its argument.  (Neil Bird)
4093Solution:   Save and restore the stuff buffer in ex_normal().
4094Files:	    src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h
4095
4096Patch 6.0.066
4097Problem:    Sometimes undo for one command is split into two undo actions.
4098	    (Halim Salman)
4099Solution:   Don't set the undo-synced flag when reusing a line that was
4100	    already saved for undo.
4101Files:	    src/undo.c
4102
4103Patch 6.0.067
4104Problem:    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)
4106Solution:   Include sys/select.h in if_xcmdsrv.c for systems that have it.
4107Files:	    src/if_xcmdsrv.c
4108
4109Patch 6.0.068
4110Problem:    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)
4113Solution:   Correct the area to be redrawn for inserted/deleted lines.
4114Files:	    src/ops.c
4115
4116Patch 6.0.069
4117Problem:    Using "K" on a word that includes a "!" causes a "No previous
4118	    command" error, because the "!" is expanded. (Craig Jeffries)
4119Solution:   Put a backslash before the "!".
4120Files:	    src/normal.c
4121
4122Patch 6.0.070
4123Problem:    Win32: The error message for a failed dynamic linking of a Perl,
4124	    Ruby, Tcl and Python library is unclear about what went wrong.
4125Solution:   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.
4127Files:	    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
4131
4132Patch 6.0.071
4133Problem:    The "iris-ansi" builtin termcap isn't very good.
4134Solution:   Fix the wrong entries. (David Harrison)
4135Files:	    src/term.c
4136
4137Patch 6.0.072
4138Problem:    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)
4141Solution:   Redraw both the old and the new Visual area when necessary.
4142Files:	    src/normal.c, src/screen.c
4143
4144Patch 6.0.073 (extra)
4145Problem:    DJGPP: When using CTRL-Z to start a shell, the prompt is halfway
4146	    the text. (Volker Kiefel)
4147Solution:   Position the system cursor before starting the shell.
4148Files:	    src/os_msdos.c
4149
4150Patch 6.0.074
4151Problem:    When using "&" in a substitute string a multi-byte character with
4152	    a trailbyte 0x5c is not handled correctly.
4153Solution:   Recognize multi-byte characters inside the "&" part. (Muraoka Taro)
4154Files:	    src/regexp.c
4155
4156Patch 6.0.075
4157Problem:    When closing a horizontally split window while 'eadirection' is
4158	    "hor" another horizontally split window is still resized. (Aron
4159	    Griffis)
4160Solution:   Only resize windows in the same top frame as the window that is
4161	    split or closed.
4162Files:	    src/main.c, src/proto/window.pro, src/window.c
4163
4164Patch 6.0.076
4165Problem:    Warning for wrong pointer type when compiling.
4166Solution:   Use char instead of char_u pointer.
4167Files:	    src/version.c
4168
4169Patch 6.0.077
4170Problem:    Patch 6.0.075 was incomplete.
4171Solution:   Fix another call to win_equal().
4172Files:	    src/option.c
4173
4174Patch 6.0.078
4175Problem:    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)
4178Solution:   Include the white space before the word.
4179Files:	    src/search.c
4180
4181Patch 6.0.079
4182Problem:    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)
4185Solution:   Add a check for a read-only file before renaming the file to
4186	    become the backup.
4187Files:	    src/fileio.c
4188
4189Patch 6.0.080
4190Problem:    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)
4193Solution:   Don't scroll this message when 'shortmess' contains 'O'.
4194Files:	    src/ex_cmds.c
4195
4196Patch 6.0.081
4197Problem:    After using ":saveas" the new buffer name is added to the Buffers
4198	    menu with a wrong number. (Chauk-Mean Proum)
4199Solution:   Trigger BufFilePre and BufFilePost events for the renamed buffer
4200	    and BufAdd for the old name (which is with a new buffer).
4201Files:	    src/ex_cmds.c
4202
4203Patch 6.0.082
4204Problem:    When swapping screens in an xterm and there is an (error) message
4205	    from the vimrc script, the shell prompt is after the message.
4206Solution:   Output a newline when there was output on the alternate screen.
4207	    Also when starting the GUI.
4208Files:	    src/main.c
4209
4210Patch 6.0.083
4211Problem:    GTK: When compiled without menu support the buttons in a dialog
4212	    don't have any text. (Erik Edelmann)
4213Solution:   Add the text also when GTK_USE_ACCEL isn't defined.  And define
4214	    GTK_USE_ACCEL also when not using menus.
4215Files:	    src/gui_gtk.c
4216
4217Patch 6.0.084
4218Problem:    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)
4221Solution:   Add the composing characters to the redo buffer.
4222Files:	    src/normal.c
4223
4224Patch 6.0.085
4225Problem:    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)
4228Solution:   Reset finish_op before calling edit().
4229Files:	    src/normal.c
4230
4231Patch 6.0.086
4232Problem:    When using "gu" the message says "~ed".
4233Solution:   Make the message say "changed".
4234Files:	    src/ops.c
4235
4236Patch 6.0.087 (lang)
4237Problem:    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.
4241Solution:   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.
4245Files:	    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
4250
4251Patch 6.0.088
4252Problem:    "." doesn't work after using "rx" in Visual mode.  (Charles
4253	    Campbell)
4254Solution:   Also store the replacement character in the redo buffer.
4255Files:	    src/normal.c
4256
4257Patch 6.0.089
4258Problem:    In a C file, using "==" to align a line starting with "*  " after
4259	    a line with "* -" indents one space too few.  (Piet Delport)
4260Solution:   Align with the previous line if the comment-start-string matches
4261	    there.
4262Files:	    src/misc1.c
4263
4264Patch 6.0.090
4265Problem:    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)
4268Solution:   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.
4270Files:	    src/move.c
4271
4272Patch 6.0.091
4273Problem:    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)
4276Solution:   Keep the cursor in the same position.
4277Files:	    src/edit.c
4278
4279Patch 6.0.092
4280Problem:    The explorer plugin doesn't ignore case of 'suffixes' on
4281	    MS-Windows. (Mike Williams)
4282Solution:   Match or ignore case as appropriate for the OS.
4283Files:	    runtime/plugin/explorer.vim
4284
4285Patch 6.0.093
4286Problem:    When the Tcl library couldn't be loaded dynamically, get an error
4287	    message when closing a buffer or window. (Muraoka Taro)
4288Solution:   Only free structures if already using the Tcl interpreter.
4289Files:	    src/if_tcl.c
4290
4291Patch 6.0.094
4292Problem:    Athena: When clicking in the horizontal scrollbar Vim crashes.
4293	    (Paul Ackersviller)
4294Solution:   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.
4297Files:	    src/gui_athena.c
4298
4299Patch 6.0.095
4300Problem:    Perl: Deleting lines may leave the cursor beyond the end of the
4301	    file.
4302Solution:   Check the cursor position after deleting a line. (Serguei)
4303Files:	    src/if_perl.xs
4304
4305Patch 6.0.096
4306Problem:    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)
4309Solution:   Don't change the file name if the file already exists.
4310Files:	    src/ex_cmds.c
4311
4312Patch 6.0.097
4313Problem:    Re-indenting in Insert mode with CTRL-F may cause a crash with a
4314	    multi-byte encoding.
4315Solution:   Avoid using a character before the start of a line. (Sergey
4316	    Vlasov)
4317Files:	    src/edit.c
4318
4319Patch 6.0.098
4320Problem:    GTK: When using Gnome the "Search" and "Search and Replace" dialog
4321	    boxes are not translated.
4322Solution:   Define ENABLE_NLS before including gnome.h. (Eduardo Fernandez)
4323Files:	    src/gui_gtk.c, src/gui_gtk_x11.c
4324
4325Patch 6.0.099
4326Problem:    Cygwin: When running Vi compatible MS-DOS line endings cause
4327	    trouble.
4328Solution:   Make the default for 'fileformats' "unix,dos" in Vi compatible
4329	    mode.  (Michael Schaap)
4330Files:	    src/option.h
4331
4332Patch 6.0.100
4333Problem:    ":badd +0 test%file" causes a crash.
4334Solution:   Take into account that the "+0" is NUL terminated when allocating
4335	    room for replacing the "%".
4336Files:	    src/ex_docmd.c
4337
4338Patch 6.0.101
4339Problem:    ":mksession" doesn't restore editing a file that has a '#' or '%'
4340	    in its name.  (Wolfgang Blankenburg)
4341Solution:   Put a backslash before the '#' and '%'.
4342Files:	    src/ex_docmd.c
4343
4344Patch 6.0.102
4345Problem:    When changing folds the cursor may appear halfway a closed fold.
4346	    (Nam SungHyun)
4347Solution:   Set w_cline_folded correctly. (Yasuhiro Matsumoto)
4348Files:	    src/move.c
4349
4350Patch 6.0.103
4351Problem:    When using 'scrollbind' a large value of 'scrolloff' will make the
4352	    scroll binding stop near the end of the file. (Coen Engelbarts)
4353Solution:   Don't use 'scrolloff' when limiting the topline for scroll
4354	    binding. (Dany StAmant)
4355Files:	    src/normal.c
4356
4357Patch 6.0.104
4358Problem:    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.
4361Solution:   Clear the right half of the old character. (Yasuhiro Matsumoto)
4362Files:	    src/edit.c, src/screen.c
4363
4364Patch 6.0.105
4365Problem:    Multi-byte: In a window of one column wide, with syntax
4366	    highlighting enabled a crash might happen.
4367Solution:   Skip getting the syntax attribute when the character doesn't fit
4368	    anyway.  (Yasuhiro Matsumoto)
4369Files:	    src/screen.c
4370
4371Patch 6.0.106 (extra)
4372Problem:    Win32: When the printer font is wrong, there is no error message.
4373Solution:   Give an appropriate error message. (Yasuhiro Matsumoto)
4374Files:	    src/os_mswin.c
4375
4376Patch 6.0.107 (extra)
4377Problem:    VisVim: When editing another file, a modified file may be written
4378	    unexpectedly and without warning.
4379Solution:   Split the window if a file was modified.
4380Files:	    VisVim/Commands.cpp
4381
4382Patch 6.0.108
4383Problem:    When using folding could try displaying line zero, resulting in an
4384	    error for a NULL pointer.
4385Solution:   Stop decrementing w_topline when the first line of a window is in
4386	    a closed fold.
4387Files:	    src/window.c
4388
4389Patch 6.0.109
4390Problem:    XIM: When the input method is enabled, repeating an insertion with
4391	    "." disables it. (Marcel Svitalsky)
4392Solution:   Don't store the input method status when a command comes from the
4393	    stuff buffer.
4394Files:	    src/ui.c
4395
4396Patch 6.0.110
4397Problem:    Using undo after executing "OxjAxkdd" from a register in
4398	    an empty buffer gives an error message.  (Gerhard Hochholzer)
4399Solution:   Don't adjust the bottom line number of an undo block when it's
4400	    zero.  Add a test for this problem.
4401Files:	    src/undo.c, src/testdir/test20.in, src/testdir/test20.ok
4402
4403Patch 6.0.111
4404Problem:    The virtcol() function doesn't take care of 'virtualedit'.
4405Solution:   Add the column offset when needed. (Yegappan Lakshmanan)
4406Files:	    src/eval.c
4407
4408Patch 6.0.112
4409Problem:    The explorer plugin doesn't sort directories with a space or
4410	    special character after a directory with a shorter name.
4411Solution:   Ignore the trailing slash when comparing directory names.  (Mike
4412	    Williams)
4413Files:	    runtime/plugin/explorer.vim
4414
4415Patch 6.0.113
4416Problem:    ":edit ~/fname" doesn't work if $HOME includes a space.  Also,
4417	    expanding wildcards with the shell may fail. (John Daniel)
4418Solution:   Escape spaces with a backslash when needed.
4419Files:	    src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/os_unix.c
4420
4421Patch 6.0.114
4422Problem:    Using ":p" with fnamemodify() didn't expand "~/" or "~user/" to a
4423	    full path.  For Win32 the current directory was prepended.
4424	    (Michael Geddes)
4425Solution:   Expand the home directory.
4426Files:	    src/eval.c
4427
4428Patch 6.0.115 (extra)
4429Problem:    Win32: When using a dialog with a textfield it cannot scroll the
4430	    text.
4431Solution:   Add ES_AUTOHSCROLL to the textfield style. (Pedro Gomes)
4432Files:	    src/gui_w32.c
4433
4434Patch 6.0.116 (extra)
4435Problem:    MS-Windows NT/2000/XP: filewritable() doesn't work correctly for
4436	    filesystems that use ACLs.
4437Solution:   Use ACL functions to check if a file is writable. (Mike Williams)
4438Files:	    src/eval.c, src/macros.h, src/os_win32.c, src/proto/os_win32.pro
4439
4440Patch 6.0.117 (extra)
4441Problem:    Win32: when disabling the menu, "set lines=999" doesn't use all
4442	    the available screen space.
4443Solution:   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().
4446Files:	    src/gui_w32.c, src/gui_w48.c
4447
4448Patch 6.0.118
4449Problem:    When $TMPDIR is a relative path, the temp directory is missing a
4450	    trailing slash and isn't deleted when Vim exits. (Peter Holm)
4451Solution:   Add the slash after expanding the directory to an absolute path.
4452Files:	    src/fileio.c
4453
4454Patch 6.0.119 (depends on patch 6.0.116)
4455Problem:    VMS: filewritable() doesn't work properly.
4456Solution:   Use the same method as for Unix. (Zoltan Arpadffy)
4457Files:	    src/eval.c
4458
4459Patch 6.0.120
4460Problem:    The conversion to html isn't compatible with XHTML.
4461Solution:   Quote the values. (Jess Thrysoee)
4462Files:	    runtime/syntax/2html.vim
4463
4464Patch 6.0.121 (extra) (depends on patch 6.0.116)
4465Problem:    Win32: After patch 6.0.116 Vim doesn't compile with mingw32.
4466Solution:   Add an #ifdef HAVE_ACL.
4467Files:	    src/os_win32.c
4468
4469Patch 6.0.122 (extra)
4470Problem:    Win16: Same resize problems as patch 6.0.117 fixed for Win32.  And
4471	    dialog textfield problem from patch 6.0.115.
4472Solution:   Set old_menu_height only when used.  Add ES_AUTOHSCROLL flag.
4473	    (Vince Negri)
4474Files:	    src/gui_w16.c
4475
4476Patch 6.0.123 (depends on patch 6.0.119)
4477Problem:    Win16: Compilation problems.
4478Solution:   Move "&&" to other lines. (Vince Negri)
4479Files:	    src/eval.c
4480
4481Patch 6.0.124
4482Problem:    When using a ":substitute" command that starts with "\="
4483	    (evaluated as an expression), "~" was still replaced with the
4484	    previous substitute string.
4485Solution:   Skip the replacement when the substitute string starts with "\=".
4486	    Also adjust the documentation about doubling backslashes.
4487Files:	    src/ex_cmds.c, runtime/doc/change.txt
4488
4489Patch 6.0.125 (extra)
4490Problem:    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)
4493Solution:   Ignore pressing the shift, control and alt keys.
4494Files:	    src/os_win32.c
4495
4496Patch 6.0.126
4497Problem:    The python library was always statically linked.
4498Solution:   Link the python library dynamically. (Matthias Klose)
4499Files:	    src/auto/configure, src/configure.in
4500
4501Patch 6.0.127
4502Problem:    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)
4505Solution:   Don't call screen_stop_highlight() in stoptermcap().
4506Files:	    src/term.c
4507
4508Patch 6.0.128
4509Problem:    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.
4512Solution:   Adjust the scrollbars and the mouse pointer.
4513Files:	    src/window.c
4514
4515Patch 6.0.129
4516Problem:    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)
4519Solution:   Terminate a string before getting its length in buflist_list().
4520Files:	    src/buffer.c
4521
4522Patch 6.0.130
4523Problem:    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)
4526Solution:   When redrawing the topline don't scroll twice.
4527Files:	    src/screen.c
4528
4529Patch 6.0.131
4530Problem:    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)
4533Solution:   When there is a match with a listed buffer, don't check for
4534	    unlisted buffers.
4535Files:	    src/buffer.c
4536
4537Patch 6.0.132
4538Problem:    When setting 'iminsert' in the vimrc and using an xterm with two
4539	    screens the ruler is drawn in the wrong screen. (Igor Goldenberg)
4540Solution:   Only draw the ruler when using the right screen.
4541Files:	    src/option.c
4542
4543Patch 6.0.133
4544Problem:    When opening another buffer while 'keymap' is set and 'iminsert'
4545	    is zero, 'iminsert' is set to one unexpectedly. (Igor Goldenberg)
4546Solution:   Don't set 'iminsert' as a side effect of defining a ":lmap"
4547	    mapping.  Only do that when 'keymap' is set.
4548Files:	    src/getchar.c, src/option.c
4549
4550Patch 6.0.134
4551Problem:    When completing ":set tags=" a path with an embedded space causes
4552	    the completion to stop. (Sektor van Skijlen)
4553Solution:   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').
4556Files:	    src/ex_docmd.c, src/ex_getln.c, src/option.c, src/structs.h
4557
4558Patch 6.0.135
4559Problem:    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".
4564Solution:   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.
4568Files:	    runtime/makemenu.vim, runtime/menu.vim, src/menu.c
4569
4570Patch 6.0.136
4571Problem:    When completing in Insert mode, a mapping could be unexpectedly
4572	    applied.
4573Solution:   Don't use mappings when checking for a typed character.
4574Files:	    src/edit.c
4575
4576Patch 6.0.137
4577Problem:    GUI: When using the find or find/replace dialog from Insert mode,
4578	    the input mode is stopped.
4579Solution:   Don't use the input method status when the main window doesn't
4580	    have focus.
4581Files:	    src/ui.c
4582
4583Patch 6.0.138
4584Problem:    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.
4589Solution:   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".
4593Files:	    src/gui.c
4594
4595Patch 6.0.139
4596Problem:    When stopping 'wildmenu' completion, the statusline of the
4597	    bottom-left vertically split window isn't redrawn. (Yegappan
4598	    Lakshmanan)
4599Solution:   Redraw all the bottom statuslines.
4600Files:	    src/ex_getln.c, src/proto/screen.pro, src/screen.c
4601
4602Patch 6.0.140
4603Problem:    Memory allocated for local mappings and abbreviations is leaked
4604	    when the buffer is wiped out.
4605Solution:   Clear the local mappings when deleting a buffer.
4606Files:	    src/buffer.c, src/getchar.c, src/proto/getchar.pro, src/vim.h
4607
4608Patch 6.0.141
4609Problem:    When using ":enew" in an empty buffer, some buffer-local things
4610	    are not cleared.  b:keymap_name is not set.
4611Solution:   Clear user commands and mappings local to the buffer when re-using
4612	    the current buffer.  Reload the keymap.
4613Files:	    src/buffer.c
4614
4615Patch 6.0.142
4616Problem:    When Python is linked statically, loading dynamic extensions might
4617	    fail.
4618Solution:   Add an extra linking flag when needed. (Andrew Rodionoff)
4619Files:	    src/configure.in, src/auto/configure
4620
4621Patch 6.0.143
4622Problem:    When a syntax item includes a line break in a pattern, the syntax
4623	    may not be updated properly when making a change.
4624Solution:   Add the "linebreaks" argument to ":syn sync".
4625Files:	    runtime/doc/syntax.txt, src/screen.c, src/structs.h, src/syntax.c
4626
4627Patch 6.0.144
4628Problem:    After patch 6.0.088 redoing "veU" doesn't work.
4629Solution:   Don't add the "U" to the redo buffer, it will be used as an undo
4630	    command.
4631Files:	    src/normal.c
4632
4633Patch 6.0.145
4634Problem:    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)
4637Solution:   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.
4640Files:	    src/ui.c
4641
4642Patch 6.0.146
4643Problem:    When 'statusline' contains "%{'-'}" this results in a zero.
4644	    (Milan Vancura)
4645Solution:   Don't handle numbers with a minus as a number, they were not
4646	    displayed anyway.
4647Files:	    src/buffer.c
4648
4649Patch 6.0.147
4650Problem:    It's not easy to mark a Vim version as being modified.  The new
4651	    license requires this.
4652Solution:   Add the --modified-by argument to configure and the MODIFIED_BY
4653	    define.  It's used in the intro screen and the ":version" output.
4654Files:	    src/auto/configure, src/configure.in, src/config.h.in,
4655	    src/feature.h, src/version.c
4656
4657Patch 6.0.148
4658Problem:    After "p" in an empty line, `[ goes to the second character.
4659	    (Kontra Gergely)
4660Solution:   Don't increment the column number in an empty line.
4661Files:	    src/ops.c
4662
4663Patch 6.0.149
4664Problem:    The pattern "\(.\{-}\)*" causes a hang.  When using a search
4665	    pattern that causes a stack overflow to be detected Vim could
4666	    still hang.
4667Solution:   Correctly report "operand could be empty" when using "\{-}".
4668	    Check for "out_of_stack" inside loops to avoid a hang.
4669Files:	    src/regexp.c
4670
4671Patch 6.0.150
4672Problem:    When using a multi-byte encoding, patch 6.0.148 causes "p" to work
4673	    like "P". (Sung-Hyun Nam)
4674Solution:   Compute the byte length of a multi-byte character.
4675Files:	    src/ops.c
4676
4677Patch 6.0.151
4678Problem:    Redrawing the status line and ruler can be wrong when it contains
4679	    multi-byte characters.
4680Solution:   Use character width and byte length correctly. (Yasuhiro Matsumoto)
4681Files:	    src/screen.c
4682
4683Patch 6.0.152
4684Problem:    strtrans() could hang on an illegal UTF-8 byte sequence.
4685Solution:   Skip over illegal bytes. (Yasuhiro Matsumoto)
4686Files:	    src/charset.c
4687
4688Patch 6.0.153
4689Problem:    When using (illegal) double-byte characters and Vim syntax
4690	    highlighting Vim can crash. (Yasuhiro Matsumoto)
4691Solution:   Increase a pointer over a character instead of a byte.
4692Files:	    src/regexp.c
4693
4694Patch 6.0.154
4695Problem:    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.
4699Solution:   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.
4702Files:	    runtime/menu.vim
4703
4704Patch 6.0.155
4705Problem:    Mac: compilation problems in ui.c after patch 6.0.145. (Axel
4706	    Kielhorn)
4707Solution:   Don't call mch_inchar() when NO_CONSOLE is defined.
4708Files:	    src/ui.c
4709
4710Patch 6.0.156
4711Problem:    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)
4713Solution:   Set the global value for 'binary'.
4714Files:	    src/option.c
4715
4716Patch 6.0.157
4717Problem:    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)
4720Solution:   Use the expansion flags defined with the user command.
4721	    Handle expanding mappings specifically.
4722Files:	    src/ex_docmd.c
4723
4724Patch 6.0.158
4725Problem:    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)
4728Solution:   Keep 'readonly' set when reloading a file and the permissions
4729	    didn't change.
4730Files:	    src/fileio.c
4731
4732Patch 6.0.159
4733Problem:    Wildcard expansion for ":emenu" also shows separators.
4734Solution:   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.
4737Files:	    src/menu.c
4738
4739Patch 6.0.160
4740Problem:    When compiling with GCC 3.0.2 and using the "-O2" argument, the
4741	    optimizer causes a problem that makes Vim crash.
4742Solution:   Add a configure check to avoid "-O2" for this version of gcc.
4743Files:	    src/configure.in, src/auto/configure
4744
4745Patch 6.0.161 (extra)
4746Problem:    Win32: Bitmaps don't work with signs.
4747Solution:   Make it possible to use bitmaps with signs. (Muraoka Taro)
4748Files:	    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
4750
4751Patch 6.0.162
4752Problem:    Client-server: An error message for a wrong expression appears in
4753	    the server instead of the client.
4754Solution:   Pass the error message from the server to the client.  Also
4755	    adjust the example code. (Flemming Madsen)
4756Files:	    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
4759
4760Patch 6.0.163
4761Problem:    When using a GUI dialog, a file name is sometimes used like it was
4762	    a directory.
4763Solution:   Separate path and file name properly.
4764	    For GTK, Motif and Athena concatenate directory and file name for
4765	    the default selection.
4766Files:	    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
4768
4769Patch 6.0.164
4770Problem:    After patch 6.0.135 the menu entries for pasting don't work in
4771	    Insert and Visual mode. (Muraoka Taro)
4772Solution:   Add <script> to allow script-local mappings.
4773Files:	    runtime/menu.vim
4774
4775Patch 6.0.165
4776Problem:    Using --remote and executing locally gives unavoidable error
4777	    messages.
4778Solution:   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.
4781Files:	    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
4783
4784Patch 6.0.166
4785Problem:    GUI: There is no way to avoid dialogs to pop up.
4786Solution:   Add the 'c' flag to 'guioptions': Use console dialogs.  (Yegappan
4787	    Lakshmanan)
4788Files:	    runtime/doc/options.txt, src/option.h, src/message.c
4789
4790Patch 6.0.167
4791Problem:    When 'fileencodings' is "latin2" some characters in the help files
4792	    are displayed wrong.
4793Solution:   Force the 'fileencoding' for the help files to be "latin1".
4794Files:	    src/fileio.c
4795
4796Patch 6.0.168
4797Problem:    ":%s/\n/#/" doesn't replace at an empty line. (Bruce DeVisser)
4798Solution:   Don't skip matches after joining two lines.
4799Files:	    src/ex_cmds.c
4800
4801Patch 6.0.169
4802Problem:    When run as evim and the GUI can't be started we get stuck in a
4803	    terminal without menus in Insert mode.
4804Solution:   Exit when using "evim" and "gvim -y" when the GUI can't be
4805	    started.
4806Files:	    src/main.c
4807
4808Patch 6.0.170
4809Problem:    When printing double-width characters the size of tabs after them
4810	    is wrong.  (Muraoka Taro)
4811Solution:   Correctly compute the column after a double-width character.
4812Files:	    src/ex_cmds2.c
4813
4814Patch 6.0.171
4815Problem:    With 'keymodel' including "startsel", in Insert mode after the end
4816	    of a line, shift-Left does not move the cursor. (Steve Hall)
4817Solution:   CTRL-O doesn't move the cursor left, need to do that explicitly.
4818Files:	    src/edit.c
4819
4820Patch 6.0.172
4821Problem:    CTRL-Q doesn't replace CTRL-V after CTRL-X in Insert mode while it
4822	    does in most other situations.
4823Solution:   Make CTRL-X CTRL-Q work like CTRL-X CTRL-V in Insert mode.
4824Files:	    src/edit.c
4825
4826Patch 6.0.173
4827Problem:    When using "P" to insert a line break the cursor remains past the
4828	    end of the line.
4829Solution:   Check for the cursor being beyond the end of the line.
4830Files:	    src/ops.c
4831
4832Patch 6.0.174
4833Problem:    After using "gd" or "gD" the search direction for "n" may still be
4834	    backwards. (Servatius Brandt)
4835Solution:   Reset the search direction to forward.
4836Files:	    src/normal.c, src/search.c, src/proto/search.pro
4837
4838Patch 6.0.175
4839Problem:    ":help /\z(\)" doesn't work. (Thomas Koehler)
4840Solution:   Double the backslashes.
4841Files:	    src/ex_cmds.c
4842
4843Patch 6.0.176
4844Problem:    When killed by a signal autocommands are still triggered as if
4845	    nothing happened.
4846Solution:   Add the v:dying variable to allow autocommands to work differently
4847	    when a deadly signal has been trapped.
4848Files:	    src/eval.c, src/os_unix.c, src/vim.h
4849
4850Patch 6.0.177
4851Problem:    When 'commentstring' is empty and 'foldmethod' is "marker", "zf"
4852	    doesn't work. (Thomas S. Urban)
4853Solution:   Add the marker even when 'commentstring' is empty.
4854Files:	    src/fold.c, src/normal.c
4855
4856Patch 6.0.178
4857Problem:    Uninitialized memory read from xp_backslash field.
4858Solution:   Initialize xp_backslash field properly.
4859Files:	    src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/tag.c
4860
4861Patch 6.0.179
4862Problem:    Win32: When displaying UTF-8 characters may read uninitialized
4863	    memory.
4864Solution:   Add utfc_ptr2len_check_len() to avoid reading past the end of a
4865	    string.
4866Files:	    src/mbyte.c, src/proto/mbyte.pro, src/gui_w32.c
4867
4868Patch 6.0.180
4869Problem:    Expanding environment variables in a string that ends in a
4870	    backslash could go past the end of the string.
4871Solution:   Detect the trailing backslash.
4872Files:	    src/misc1.c
4873
4874Patch 6.0.181
4875Problem:    When using ":cd dir" memory was leaked.
4876Solution:   Free the allocated memory.  Also avoid an uninitialized memory
4877	    read.
4878Files:	    src/misc2.c
4879
4880Patch 6.0.182
4881Problem:    When using a regexp on multi-byte characters, could try to read a
4882	    character before the start of the line.
4883Solution:   Don't decrement a pointer to before the start of the line.
4884Files:	    src/regexp.c
4885
4886Patch 6.0.183
4887Problem:    Leaking memory when ":func!" redefines a function.
4888Solution:   Free the function name when it's not used.
4889Files:	    src/eval.c
4890
4891Patch 6.0.184
4892Problem:    Leaking memory when expanding option values.
4893Solution:   Don't always copy the expanded option into allocated memory.
4894Files:	    src/option.c
4895
4896Patch 6.0.185
4897Problem:    Crash in Vim when pasting a selection in another application, on a
4898	    64 bit machine.
4899Solution:   Fix the format for an Atom to 32 bits. (Peter Derr)
4900Files:	    src/ui.c
4901
4902Patch 6.0.186
4903Problem:    X11: Three warnings when compiling the client-server code.
4904Solution:   Add a typecast to unsigned char.
4905Files:	    src/if_xcmdsrv.c
4906
4907Patch 6.0.187
4908Problem:    "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.
4912Solution:   Only save those lines for undo that are changed.
4913	    Don't change the indent after inserting in Visual linewise mode.
4914Files:	    src/ops.c
4915
4916Patch 6.0.188
4917Problem:    Win32: After patch 6.0.161 signs defined in the vimrc file don't
4918	    work.
4919Solution:   Initialize the sign icons after initializing the GUI. (Vince
4920	    Negri)
4921Files:	    src/gui.c, src/gui_x11.c
4922
4923Patch 6.0.189
4924Problem:    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)
4927Solution:   Redisplay the size of the selection after showing the mode.
4928Files:	    src/screen.c
4929
4930Patch 6.0.190
4931Problem:    GUI: when 'mouse' is empty a click with the middle button still
4932	    moves the cursor.
4933Solution:   Paste at the cursor position instead of the mouse position.
4934Files:	    src/normal.c
4935
4936Patch 6.0.191
4937Problem:    When no servers are available serverlist() gives an error instead
4938	    of returning an empty string. (Hari Krishna)
4939Solution:   Don't give an error message.
4940Files:	    src/eval.c
4941
4942Patch 6.0.192
4943Problem:    When 'virtualedit' is set, "ylj" goes to the wrong column. (Andrew
4944	    Nikitin)
4945Solution:   Reset the flag that w_virtcol is valid when moving the cursor back
4946	    to the start of the operated area.
4947Files:	    src/normal.c
4948
4949Patch 6.0.193
4950Problem:    When 'virtualedit' is set, col(".") after the end of the line
4951	    should return one extra.
4952Solution:   Add one to the column.
4953Files:	    src/eval.c
4954
4955Patch 6.0.194
4956Problem:    "--remote-silent" tries to send a reply to the client, like it was
4957	    "--remote-wait".
4958Solution:   Properly check for the argument.
4959Files:	    src/main.c
4960
4961Patch 6.0.195
4962Problem:    When 'virtualedit' is set and a search starts in virtual space
4963	    ":call search('x')" goes to the wrong position. (Eric Long)
4964Solution:   Reset coladd when finding a match.
4965Files:	    src/search.c
4966
4967Patch 6.0.196
4968Problem:    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.
4972Solution:   Take coladd into account when adjusting for 'selection' being
4973	    "exclusive".  Also expand a tab into spaces when deleting more
4974	    than one line.
4975Files:	    src/normal.c, src/ops.c
4976
4977Patch 6.0.197
4978Problem:    When 'virtualedit' is set and 'selection' is "exclusive", "v$x"
4979	    doesn't delete the last character in the line. (Eric Long)
4980Solution:   Don't reset the inclusive flag. (Helmut Stiegler)
4981Files:	    src/normal.c
4982
4983Patch 6.0.198
4984Problem:    When 'virtualedit' is set and 'showbreak' is not empty, moving the
4985	    cursor over the line break doesn't work properly. (Eric Long)
4986Solution:   Make getviscol() and getviscol2() use getvvcol() to obtain the
4987	    virtual cursor position.  Adjust coladvance() and oneleft() to
4988	    skip over the 'showbreak' characters.
4989Files:	    src/edit.c, src/misc2.c
4990
4991Patch 6.0.199
4992Problem:    Multi-byte: could use iconv() after calling iconv_end().
4993	    (Yasuhiro Matsumoto)
4994Solution:   Stop converting input and output stream after calling iconv_end().
4995Files:	    src/mbyte.c
4996
4997Patch 6.0.200
4998Problem:    A script that starts with "#!perl" isn't recognized as a Perl
4999	    filetype.
5000Solution:   Ignore a missing path in a script header.  Also, speed up
5001	    recognizing scripts by simplifying the patterns used.
5002Files:	    runtime/scripts.vim
5003
5004Patch 6.0.201
5005Problem:    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)
5008Solution:   When setting w_topline reset the flag that indicates w_botline is
5009	    valid.
5010Files:	    src/diff.c
5011
5012Patch 6.0.202
5013Problem:    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.
5016Solution:   Search the icon file using the specified path.  Expand environment
5017	    variables in the file name.
5018Files:	    src/gui_gtk.c, src/gui_x11.c
5019
5020Patch 6.0.203
5021Problem:    Can change 'fileformat' even though 'modifiable' is off.
5022	    (Servatius Brandt)
5023Solution:   Correct check for kind of set command.
5024Files:	    src/option.c
5025
5026Patch 6.0.204
5027Problem:    ":unlet" doesn't work for variables with curly braces. (Thomas
5028	    Scott Urban)
5029Solution:   Handle variable names with curly braces properly. (Vince Negri)
5030Files:	    src/eval.c
5031
5032Patch 6.0.205 (extra)
5033Problem:    "gvim -f" still forks when using the batch script to start Vim.
5034Solution:   Add an argument to "start" to use a foreground session (Michael
5035	    Geddes)
5036Files:	    src/dosinst.c
5037
5038Patch 6.0.206
5039Problem:    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]".
5043Solution:   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'.
5046Files:	    src/misc1.c, src/os_unix.c
5047
5048Patch 6.0.207 (extra)
5049Problem:    Win32: The shortcuts and start menu entries let Vim startup in the
5050	    desktop directory, which is not very useful.
5051Solution:   Let shortcuts start Vim in $HOME or $HOMEDIR$HOMEPATH.
5052Files:	    src/dosinst.c
5053
5054Patch 6.0.208
5055Problem:    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)
5058Solution:   Force a redraw of the cursor after CTRL-^.
5059Files:	    src/edit.c
5060
5061Patch 6.0.209
5062Problem:    GUI GTK: After selecting a 'guifont' with the font dialog there
5063	    are redraw problems for multi-byte characters.
5064Solution:   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.
5068Files:	    src/gui.c, src/gui_gtk_x11.c, src/option.c, src/proto/gui.pro,
5069	    src/proto/gui_gtk_x11.pro
5070
5071Patch 6.0.210
5072Problem:    After patch 6.0.167 it's no longer possible to edit a help file in
5073	    another encoding than latin1.
5074Solution:   Let the "++enc=" argument overrule the encoding.
5075Files:	    src/fileio.c
5076
5077Patch 6.0.211
5078Problem:    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)
5081Solution:   Set the 'readonly' option for the buffer.
5082Files:	    src/fileio.c
5083
5084Patch 6.0.212
5085Problem:    GUI GTK: confirm("foo", "") causes a crash.
5086Solution:   Don't make a non-existing button the default.  Add a default "OK"
5087	    button if none is specified.
5088Files:	    src/eval.c, src/gui_gtk.c
5089
5090Patch 6.0.213
5091Problem:    When a file name contains unprintable characters, CTRL-G and other
5092	    commands don't work well.
5093Solution:   Turn unprintable into printable characters. (Yasuhiro Matsumoto)
5094Files:	    src/buffer.c, src/charset.c
5095
5096Patch 6.0.214
5097Problem:    When there is a buffer without a name, empty entries appear in the
5098	    jumplist saved in the viminfo file.
5099Solution:   Don't write jumplist entries without a file name.
5100Files:	    src/mark.c
5101
5102Patch 6.0.215
5103Problem:    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.
5106Solution:   Use the command line mode menus and use the mouse like in the
5107	    command line.
5108Files:	    src/gui.c, src/menu.c, src/ui.c
5109
5110Patch 6.0.216
5111Problem:    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.
5116Solution:   Restore the topline of the window.
5117Files:	    src/fileio.c
5118
5119Patch 6.0.217
5120Problem:    When getting help from a help file that was used before, an empty
5121	    unlisted buffer remains in the buffer list. (Eric Long)
5122Solution:   Wipe out the buffer used to do the tag jump from.
5123Files:	    src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
5124
5125Patch 6.0.218
5126Problem:    With explorer plugin: "vim -o filename dirname" doesn't load the
5127	    explorer window until entering the window.
5128Solution:   Call s:EditDir() for each window after starting up.
5129Files:	    runtime/plugin/explorer.vim
5130
5131Patch 6.0.219
5132Problem:    ":setlocal" and ":setglobal", without arguments, display terminal
5133	    options. (Zdenek Sekera)
5134Solution:   Skip terminal options for these two commands.
5135Files:	    src/option.c
5136
5137Patch 6.0.220
5138Problem:    After patch 6.0.218 get a beep on startup. (Muraoka Taro)
5139Solution:   Don't try going to another window when there isn't one.
5140Files:	    runtime/plugin/explorer.vim
5141
5142Patch 6.0.221
5143Problem:    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)
5146Solution:   Prefer an unloaded buffer from the jumplist.
5147Files:	    src/buffer.c
5148
5149Patch 6.0.222
5150Problem:    When 'virtualedit' is set and using autoindent, pressing Esc after
5151	    starting a new line leaves behind part of the autoindent. (Helmut
5152	    Stiegler)
5153Solution:   After deleting the last char in the line adjust the cursor
5154	    position in del_bytes().
5155Files:	    src/misc1.c, src/ops.c
5156
5157Patch 6.0.223
5158Problem:    When splitting a window that contains the explorer, hitting CR on
5159	    a file name gives error messages.
5160Solution:   Set the window variables after splitting the window.
5161Files:	    runtime/plugin/explorer.vim
5162
5163Patch 6.0.224
5164Problem:    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)
5167Solution:   When there is not enough room, compute the left column for the
5168	    window to put the cursor in the middle.
5169Files:	    src/move.c
5170
5171Patch 6.0.225
5172Problem:    In Visual mode "gk" gets stuck in a closed fold. (Srinath
5173	    Avadhanula)
5174Solution:   Behave differently in a closed fold.
5175Files:	    src/normal.c
5176
5177Patch 6.0.226
5178Problem:    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)
5181Solution:   Set the recoverymode flag before setting the file name.
5182	    Correct the amount of used memory for the size of block zero.
5183Files:	    src/ex_docmd.c
5184
5185Patch 6.0.227 (extra)
5186Problem:    The RISC OS port has several problems.
5187Solution:   Update the makefile and fix some of the problems. (Andy Wingate)
5188Files:	    src/Make_ro.mak, src/os_riscos.c, src/os_riscos.h,
5189	    src/proto/os_riscos.pro, src/search.c
5190
5191Patch 6.0.228
5192Problem:    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.
5196Solution:   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.
5201Files:	    src/ex_docmd.c, src/globals.h, src/normal.c, src/ops.c,
5202	    src/structs.h, src/vim.h
5203
5204Patch 6.0.229
5205Problem:    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.
5210Solution:   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'.
5215Files:	    src/edit.c, src/ops.c, src/option.h
5216
5217Patch 6.0.230
5218Problem:    The ":" used as a motion after an operator is exclusive, but
5219	    sometimes it should be inclusive.
5220Solution:   Make the "v" in between an operator and motion toggle
5221	    inclusive/exclusive. (Servatius Brandt)
5222Files:	    runtime/doc/motion.txt, src/normal.c
5223
5224Patch 6.0.231
5225Problem:    "gd" and "gD" don't work when the variable matches in a comment
5226	    just above the match to be found. (Servatius Brandt)
5227Solution:   Continue searching in the first column below the comment.
5228Files:	    src/normal.c
5229
5230Patch 6.0.232
5231Problem:    "vim --version" prints on stderr while "vim --help" prints on
5232	    stdout.
5233Solution:   Make "vim --version" use stdout.
5234Files:	    runtime/doc/starting.txt, src/globals.h, src/main.c, src/message.c
5235
5236Patch 6.0.233
5237Problem:    "\1\{,8}" in a regexp is not allowed, but it should work, because
5238	    there is an upper limit.  (Jim Battle)
5239Solution:   Allow using "\{min,max}" after an atom that can be empty if there
5240	    is an upper limit.
5241Files:	    src/regexp.c
5242
5243Patch 6.0.234
5244Problem:    It's not easy to set the cursor position without modifying marks.
5245Solution:   Add the cursor() function. (Yegappan Lakshmanan)
5246Files:	    runtime/doc/eval.txt, src/eval.c
5247
5248Patch 6.0.235
5249Problem:    When writing a file and renaming the original file to make the
5250	    backup, permissions could change when setting the owner.
5251Solution:   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.
5255Files:	    src/fileio.c
5256
5257Patch 6.0.236
5258Problem:    ":edit" without argument should move cursor to line 1 in Vi
5259	    compatible mode.
5260Solution:   Add 'g' flag to 'cpoptions'.
5261Files:	    runtime/doc/options.txt, src/ex_docmd.c, src/option.h
5262
5263Patch 6.0.237
5264Problem:    In a C file, using the filetype plugin, re-indenting a comment
5265	    with two spaces after the middle "*" doesn't align properly.
5266Solution:   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.
5269Files:	    src/misc1.c
5270
5271Patch 6.0.238
5272Problem:    Using a ":substitute" command with a substitute() call in the
5273	    substitution expression causes errors. (Srinath Avadhanula)
5274Solution:   Save and restore pointers when doing substitution recursively.
5275Files:	    src/regexp.c
5276
5277Patch 6.0.239
5278Problem:    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)
5281Solution:   Don't advance the cursor to the next line.
5282Files:	    src/ops.c
5283
5284Patch 6.0.240
5285Problem:    Win32: building with Python 2.2 doesn't work.
5286Solution:   Add support for Python 2.2 with dynamic linking. (Paul Moore)
5287Files:	    src/if_python.c
5288
5289Patch 6.0.241
5290Problem:    Win32: Expanding the old value of an option that is a path that
5291	    starts with a backslash, an extra backslash is inserted.
5292Solution:   Only insert backslashes where needed.
5293	    Also handle multi-byte characters properly when removing
5294	    backslashes.
5295Files:	    src/option.c
5296
5297Patch 6.0.242
5298Problem:    GUI: On a system with an Exceed X server sometimes get a "Bad
5299	    Window" error. (Tommi Maekitalo)
5300Solution:   When forking, use a pipe to wait in the parent for the child to
5301	    have done the setsid() call.
5302Files:	    src/gui.c
5303
5304Patch 6.0.243
5305Problem:    Unix: "vim --version" outputs a NL before the last line instead of
5306	    after it. (Charles Campbell)
5307Solution:   Send the NL to the same output stream as the text.
5308Files:	    src/message.c, src/os_unix.c, src/proto/message.pro
5309
5310Patch 6.0.244
5311Problem:    Multi-byte: Problems with (illegal) UTF-8 characters in menu and
5312	    file name (e.g., icon text, status line).
5313Solution:   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().
5318Files:	    src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c,
5319	    src/message.c, src/screen.c, src/vim.h
5320
5321Patch 6.0.245
5322Problem:    After using a color scheme, setting the 'background' option might
5323	    not work. (Peter Horst)
5324Solution:   Disable the color scheme if it switches 'background' back to the
5325	    wrong value.
5326Files:	    src/option.c
5327
5328Patch 6.0.246
5329Problem:    ":echomsg" didn't use the highlighting set by ":echohl". (Gary
5330	    Holloway)
5331Solution:   Use the specified attributes for the message. (Yegappan
5332	    Lakshmanan)
5333Files:	    src/eval.c
5334
5335Patch 6.0.247
5336Problem:    GTK GUI: Can't use gvim in a kpart widget.
5337Solution:   Add the "--echo-wid" argument to let Vim echo the window ID on
5338	    stdout. (Philippe Fremy)
5339Files:	    runtime/doc/starting.txt, src/globals.h, src/gui_gtk_x11.c,
5340	    src/main.c
5341
5342Patch 6.0.248
5343Problem:    When using compressed help files and 'encoding' isn't "latin1",
5344	    Vim converts the help file before decompressing. (David Reviejo)
5345Solution:   Don't convert a help file when 'binary' is set.
5346Files:	    src/fileio.c
5347
5348Patch 6.0.249
5349Problem:    "vim -t edit -c 'sta ex_help'" doesn't move cursor to edit().
5350Solution:   Don't set the cursor on the first line for "-c" arguments when
5351	    there also is a "-t" argument.
5352Files:	    src/main.c
5353
5354Patch 6.0.250 (extra)
5355Problem:    Macintosh: Various problems when compiling.
5356Solution:   Various fixes, mostly #ifdefs. (Dany St. Amant)
5357Files:	    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
5359
5360Patch 6.0.251 (extra)
5361Problem:    Macintosh: menu shortcuts are not very clear.
5362Solution:   Show the shortcut with the Mac clover symbol. (raindog)
5363Files:	    src/gui_mac.c
5364
5365Patch 6.0.252
5366Problem:    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)
5369Solution:   Don't reset did_emsg when the function is to be aborted.
5370Files:	    src/ex_docmd.c
5371
5372Patch 6.0.253
5373Problem:    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.
5375Solution:   Reset need_start_insertmode once in edit().
5376Files:	    src/edit.c
5377
5378Patch 6.0.254 (extra)
5379Problem:    Borland C++ 5.5: Checking for stack overflow doesn't work
5380	    correctly.  Matters when using a complicated regexp.
5381Solution:   Remove -N- from Make_bc5.mak. (Yasuhiro Matsumoto)
5382Files:	    src/Make_bc5.mak
5383
5384Patch 6.0.255 (extra) (depends on patch 6.0.116 and 6.0.121)
5385Problem:    Win32: ACL support doesn't work well on Samba drives.
5386Solution:   Add a check for working ACL support. (Mike Williams)
5387Files:	    src/os_win32.c
5388
5389Patch 6.0.256 (extra)
5390Problem:    Win32: ":highlight Comment guifg=asdf" does not give an error
5391	    message. (Randall W.  Morris)  Also for other systems.
5392Solution:   Add gui_get_color() to give one error message for all systems.
5393Files:	    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
5396
5397Patch 6.0.257
5398Problem:    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)
5401Solution:   Reset need_mouse_correct after checking timestamps.
5402Files:	    src/fileio.c
5403
5404Patch 6.0.258
5405Problem:    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)
5408Solution:   When putting the cursor halfway the window start counting lines at
5409	    the end of a fold.
5410Files:	    src/move.c
5411
5412Patch 6.0.259
5413Problem:    MS-DOS: after editing the command line the cursor shape may remain
5414	    like in Insert mode. (Volker Kiefel)
5415Solution:   Reset the cursor shape after editing the command line.
5416Files:	    src/ex_getln.c
5417
5418Patch 6.0.260
5419Problem:    GUI: May crash while starting up when giving an error message for
5420	    missing color. (Servatius Brandt)
5421Solution:   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.
5424Files:	    src/fileio.c, src/gui.c, src/misc1.c, src/ui.c
5425
5426Patch 6.0.261
5427Problem:    nr2char() and char2nr() don't work with multi-byte characters.
5428Solution:   Use 'encoding' for these functions. (Yasuhiro Matsumoto)
5429Files:	    runtime/doc/eval.txt, src/eval.c
5430
5431Patch 6.0.262 (extra)
5432Problem:    Win32: IME doesn't work properly.  OnImeComposition() isn't used
5433	    at all.
5434Solution:   Adjust various things for IME.
5435Files:	    src/globals.h, src/gui_w32.c, src/mbyte.c, src/proto/ui.pro,
5436	    src/structs.h, src/ui.c
5437
5438Patch 6.0.263
5439Problem:    GTK: When a dialog is closed by the window manager, Vim hangs.
5440	    (Christian J. Robinson)
5441Solution:   Use GTK_WIDGET_DRAWABLE() instead of GTK_WIDGET_VISIBLE().
5442Files:	    src/gui_gtk.c, src/gui_gtk_x11.c
5443
5444Patch 6.0.264
5445Problem:    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.
5448Solution:   Get the amount of physical memory with sysctl(), sysconf() or
5449	    sysinfo() when possible.
5450Files:	    src/auto/configure, src/configure.in, src/config.h.in,
5451	    src/os_unix.c, src/os_unix.h
5452
5453Patch 6.0.265
5454Problem:    Win32: Using backspace while 'fkmap' is set causes a crash.
5455	    (Jamshid Oasjmoha)
5456Solution:   Don't try mapping special keys.
5457Files:	    src/farsi.c
5458
5459Patch 6.0.266
5460Problem:    The rename() function deletes the file if the old and the new name
5461	    are the same. (Volker Kiefel)
5462Solution:   Don't do anything if the names are equal.
5463Files:	    src/fileio.c
5464
5465Patch 6.0.267
5466Problem:    UTF-8: Although 'isprint' says a character is printable,
5467	    utf_char2cells() still considers it unprintable.
5468Solution:   Use vim_isprintc() for characters upto 0x100. (Yasuhiro Matsumoto)
5469Files:	    src/mbyte.c
5470
5471Patch 6.0.268 (extra) (depends on patch 6.0.255)
5472Problem:    Win32: ACL check crashes when using forward slash in file name.
5473Solution:   Improve the check for the path in the file name.
5474Files:	    src/os_win32.c
5475
5476Patch 6.0.269
5477Problem:    Unprintable characters in a file name may cause problems when
5478	    using the 'statusline' option or when 'buftype' is "nofile".
5479Solution:   call trans_characters() for the resulting statusline. (Yasuhiro
5480	    Matsumoto)
5481Files:	    src/buffer.c, src/screen.c, src/charset.c
5482
5483Patch 6.0.270 (depends on patch 6.0.267)
5484Problem:    A tab causes UTF-8 text to be displayed in the wrong position.
5485	    (Ron Aaron)
5486Solution:   Correct utf_char2cells() again.
5487Files:	    src/mbyte.c
5488
5489Patch 6.1a.001 (extra)
5490Problem:    32bit DOS: copying text to the clipboard may cause a crash.
5491	    (Jonathan D Johnston)
5492Solution:   Don't copy one byte too much in SetClipboardData().
5493Files:	    src/os_msdos.c
5494
5495Patch 6.1a.002
5496Problem:    GTK: On some configurations, when closing a dialog from the window
5497	    manager, Vim hangs.
5498Solution:   Catch the "destroy" signal. (Aric Blumer)
5499Files:	    src/gui_gtk.c
5500
5501Patch 6.1a.003
5502Problem:    Multi-byte: With UTF-8 double-wide char and 'virtualedit' set:
5503	    yanking in Visual mode doesn't include the last byte. (Eric Long)
5504Solution:   Don't add a space for a double-wide character.
5505Files:	    src/ops.c
5506
5507Patch 6.1a.004 (extra)
5508Problem:    MINGW: undefined type. (Ron Aaron)
5509Solution:   Make GetCompositionString_inUCS2() static.
5510Files:	    src/gui_w32.c, src/gui_w48.c, src/proto/gui_w32.pro
5511
5512Patch 6.1a.005 (extra)
5513Problem:    Win32: ":hardcopy" doesn't work after ":hardcopy!". (Jonathan
5514	    Johnston)
5515Solution:   Don't keep the driver context when using ":hardcopy!". (Vince
5516	    Negri)
5517Files:	    src/os_mswin.c
5518
5519Patch 6.1a.006
5520Problem:    multi-byte: after setting 'encoding' the window title might be
5521	    wrong.
5522Solution:   Force resetting the title. (Yasuhiro Matsumoto)
5523Files:	    src/option.c
5524
5525Patch 6.1a.007
5526Problem:    Filetype detection for "*.inc" doesn't work.
5527Solution:   Use a ":let" command. (David Schweikert)
5528Files:	    runtime/filetype.vim
5529
5530Patch 6.1a.008 (extra)
5531Problem:    Win32: ACL detection for network shares doesn't work.
5532Solution:   Include the trailing (back)slash in the root path. (Mike Williams)
5533Files:	    src/os_win32.c
5534
5535Patch 6.1a.009
5536Problem:    When using "\@<=" or "\@<!" in a pattern, a "\1" may refer to a ()
5537	    part that follows, but it generates an error message.
5538Solution:   Allow a forward reference when there is a following "\@<=" or
5539	    "\@<!".
5540Files:	    runtime/doc/pattern.txt, src/regexp.c
5541
5542Patch 6.1a.010
5543Problem:    When using ":help" and opening a new window, the alternate file
5544	    isn't set.
5545Solution:   Set the alternate file to the previously edited file.
5546Files:	    src/ex_cmds.c
5547
5548Patch 6.1a.011
5549Problem:    GTK: ":set co=77", change width with the mouse, ":set co=77"
5550	    doesn't resize the window. (Darren Hiebert)
5551Solution:   Set the form size after handling a resize event.
5552Files:	    src/gui_gtk_x11.c
5553
5554Patch 6.1a.012
5555Problem:    GTK: The file browser always returns a full path. (Lohner)
5556Solution:   Shorten the file name if possible.
5557Files:	    src/gui_gtk.c
5558
5559Patch 6.1a.013
5560Problem:    When using "=~word" in 'cinkeys' or 'indentkeys', the case of the
5561	    last character of the word isn't ignored. (Raul Segura Acevedo)
5562Solution:   Ignore case when checking the last typed character.
5563Files:	    src/edit.c
5564
5565Patch 6.1a.014
5566Problem:    After patch 6.1a.006 can't compile without the title feature.
5567Solution:   Add an #ifdef.
5568Files:	    src/option.c
5569
5570Patch 6.1a.015
5571Problem:    MS-Windows: When expanding a file name that contains a '[' or '{'
5572	    an extra backslash is inserted. (Raul Segura Acevedo)
5573Solution:   Avoid adding the backslash.
5574Files:	    src/ex_getln.c
5575
5576Patch 6.1a.016
5577Problem:    Completion after ":language" doesn't include "time". (Raul Segura
5578	    Acevedo)
5579Solution:   Add the alternative to the completions.
5580Files:	    src/ex_cmds2.c
5581
5582Patch 6.1a.017
5583Problem:    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.
5585Solution:   Add the skipcol also for the top row of a window.
5586Files:	    src/ui.c
5587
5588Patch 6.1a.018
5589Problem:    When 'scrolloff' is one and the window height is one, "gj" can put
5590	    the cursor above the window. (Raul Segura Acevedo)
5591Solution:   Don't let skipcol become bigger than the cursor column.
5592Files:	    src/move.c
5593
5594Patch 6.1a.019
5595Problem:    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)
5598Solution:   Don't move the cursor by displaying characters when there are
5599	    composing characters.
5600Files:	    src/screen.c
5601
5602Patch 6.1a.020
5603Problem:    GTK: after patch 6.1a.011 resizing with the mouse doesn't always
5604	    work well for small sizes. (Adrien Beau)
5605Solution:   Use another way to avoid the problem with ":set co=77".
5606Files:	    src/gui_gtk_x11.c
5607
5608Patch 6.1a.021
5609Problem:    Several Syntax menu entries are wrong or confusing.
5610Solution:   Rephrase and correct the menu entries. (Adrien Beau)
5611Files:	    runtime/makemenu.vim, runtime/menu.vim
5612
5613Patch 6.1a.022
5614Problem:    A tags file might be used twice on case insensitive systems.
5615	    (Rick Swanton)
5616Solution:   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.
5619Files:	    src/misc2.c, src/option.c
5620
5621Patch 6.1a.023
5622Problem:    When starting the GUI get "C" characters echoed in the terminal.
5623Solution:   Don't try sending a clear-screen command while the GUI is starting
5624	    up.
5625Files:	    src/screen.c
5626
5627Patch 6.1a.024
5628Problem:    In other editors CTRL-F is often used for a find dialog.
5629Solution:   In evim use CTRL-F for the find dialog.
5630Files:	    runtime/evim.vim
5631
5632Patch 6.1a.025
5633Problem:    The choices for the fileformat dialog can't be translated.
5634Solution:   Add g:menutrans_fileformat_choices. (Adrien Beau)
5635Files:	    runtime/menu.vim
5636
5637Patch 6.1a.026
5638Problem:    Indenting Java files is wrong with "throws", "extends" and
5639	    "implements" clauses.
5640Solution:   Update the Java indent script.
5641Files:	    runtime/indent/java.vim
5642
5643Patch 6.1a.027
5644Problem:    A few Syntax menu entries missing or incorrect.
5645Solution:   Add and correct the menu entries. (Adrien Beau)
5646	    Shorten a few menus to avoid they become too long.
5647Files:	    runtime/makemenu.vim, runtime/menu.vim
5648
5649Patch 6.1a.028
5650Problem:    XIM: problems with feedback and some input methods.
5651Solution:   Use iconv for calculating the cells.  Remove the queue for
5652	    key_press_event only when text was changed. (Yasuhiro Matsumoto)
5653Files:	    src/globals.h, src/mbyte.c, src/screen.c
5654
5655Patch 6.1a.029
5656Problem:    After patch 6.1a.028 can't compile GTK version with XIM but
5657	    without multi-byte chars.
5658Solution:   Add an #ifdef. (Aschwin Marsman)
5659Files:	    src/mbyte.c
5660
5661Patch 6.1a.030
5662Problem:    With double-byte encodings toupper() and tolower() may have wrong
5663	    results.
5664Solution:   Skip double-byte characters. (Eric Long)
5665Files:	    src/eval.c
5666
5667Patch 6.1a.031
5668Problem:    Accessing the 'balloondelay' variable may cause a crash.
5669Solution:   Make the variable for 'balloondelay' a long. (Olaf Seibert)
5670Files:	    src/option.h
5671
5672Patch 6.1a.032 (extra)
5673Problem:    Some menu files used a wrong encoding name for "scriptencoding".
5674Solution:   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.
5678Files:	    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
5692
5693Patch 6.1a.033
5694Problem:    XIM: doesn't reset input context.
5695Solution:   call xim_reset() with im_set_active(FALSE). (Takuhiro Nishioka)
5696Files:	    src/mbyte.c
5697
5698Patch 6.1a.034 (extra)
5699Problem:    Win32: The ACL checks for a readonly file still don't work well.
5700Solution:   Remove the ACL checks, go back to how it worked in Vim 6.0.
5701Files:	    src/os_win32.c
5702
5703Patch 6.1a.035
5704Problem:    multi-byte: When using ":sh" in the GUI, typed and displayed
5705	    multi-byte characters are not handled correctly.
5706Solution:   Deal with multi-byte characters to and from the shell. (Yasuhiro
5707	    Matsumoto)  Also handle UTF-8 composing characters.
5708Files:	    src/os_unix.c
5709
5710Patch 6.1a.036
5711Problem:    GTK: the save-yourself event was not handled.
5712Solution:   Catch the save-yourself event and preserve swap files. (Neil Bird)
5713Files:	    src/gui_gtk_x11.c
5714
5715Patch 6.1a.037
5716Problem:    The MS-Windows key mapping doesn't include CTRL-S for saving.
5717	    (Vlad Sandrini)
5718Solution:   Map CTRL-S to ":update".
5719Files:	    runtime/mswin.vim
5720
5721Patch 6.1a.038
5722Problem:    Solaris: Including both sys/sysctl.h and sys/sysinfo.h doesn't
5723	    work. (Antonio Colombo)
5724Solution:   Don't include sys/sysinfo.h when not calling sysinfo().
5725Files:	    src/os_unix.c
5726
5727Patch 6.1a.039
5728Problem:    Not all visual basic files are recognized.
5729Solution:   Add checks to catch *.ctl files. (Raul Segura Acevedo)
5730Files:	    runtime/filetype.vim
5731
5732Patch 6.1a.040
5733Problem:    A *.pl file is recognized as Perl, but it could be a prolog file.
5734Solution:   Check the first non-empty line. (Kontra Gergely)
5735Files:	    runtime/filetype.vim
5736
5737Patch 6.1a.041
5738Problem:    When pressing the left mouse button in the command line and them
5739	    moving the mouse upwards, nearly all the text is selected.
5740Solution:   Don't try extending a modeless selection when there isn't one.
5741Files:	    src/ui.c
5742
5743Patch 6.1a.042
5744Problem:    When merging files, ":diffput" and ":diffget" are used a lot, but
5745	    they require a lot of typing.
5746Solution:   Add "dp" for ":diffput" and "do" for ":diffget".
5747Files:	    runtime/doc/diff.txt, src/diff.c, src/normal.c, src/proto/diff.pro
5748
5749
5750Patch 6.1b.001 (extra)
5751Problem:    Checking for wildcards in a path does not handle multi-byte
5752	    characters with a trail byte which is a wildcard.
5753Solution:   Handle multi-byte characters correctly. (Muraoka Taro)
5754Files:	    src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c,
5755	    src/os_unix.c
5756
5757Patch 6.1b.002
5758Problem:    A regexp that ends in "\{" is not flagged as an error.  May cause
5759	    a stack overflow when 'incsearch' is set. (Gerhard Hochholzer)
5760Solution:   Handle a missing "}" as an error.
5761Files:	    src/regexp.c
5762
5763Patch 6.1b.003 (extra)
5764Problem:    The RISC OS GUI doesn't compile.
5765Solution:   Include changes since Vim 5.7. (Andy Wingate)
5766Files:	    src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c,
5767	    src/os_riscos.h, src/proto/gui_riscos.pro
5768
5769Patch 6.1b.004
5770Problem:    col("'>") returns a negative number for linewise selection. (Neil
5771	    Bird)
5772Solution:   Don't add one to MAXCOL.
5773Files:	    src/eval.c
5774
5775Patch 6.1b.005
5776Problem:    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.
5780Solution:   Stop 'hlsearch' highlighting when the regexp causes an error.
5781	    Stop searching for 'incsearch' when a character is typed.
5782Files:	    src/globals.h, src/message.c, src/screen.c, src/search.c,
5783	    src/vim.h
5784
5785Patch 6.1b.006
5786Problem:    When entering a composing character on the command line with
5787	    CTRL-V, the text isn't redrawn correctly.
5788Solution:   Redraw the text under and after the cursor.
5789Files:	    src/ex_getln.c
5790
5791Patch 6.1b.007
5792Problem:    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.
5795Solution:   Backup the cursor one character in these situations.
5796Files:	    src/search.c
5797
5798Patch 6.1b.008
5799Problem:    *.xsl files are not recognized as xslt but xml.
5800	    Monk files are not recognized.
5801Solution:   Delete the duplicate line for *.xsl. (Johannes Zellner)
5802	    Recognize monk files.
5803Files:	    runtime/filetype.vim
5804
5805Patch 6.1b.009
5806Problem:    Can't always compile small features and then adding eval feature,
5807	    "sandbox" is undefined. (Axel Kielhorn)
5808Solution:   Always define "sandbox" when the eval feature is used.
5809Files:	    src/globals.h
5810
5811Patch 6.1b.010 (extra)
5812Problem:    When compiling gvimext.cpp with MSVC 4.2 get a number of warnings.
5813Solution:   Change "true" to "TRUE". (Walter Briscoe)
5814Files:	    GvimExt/gvimext.cpp
5815
5816Patch 6.1b.011
5817Problem:    When using a very long string for confirm(), can't quit the
5818	    displaying at the more prompt. (Hari Krishna Dara)
5819Solution:   Jump to the end of the message to show the choices.
5820Files:	    src/message.c
5821
5822Patch 6.1b.012
5823Problem:    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)
5827Solution:   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.
5830Files:	    src/charset.c, src/edit.c
5831
5832Patch 6.1b.013
5833Problem:    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.
5836Solution:   Find the full global match even after a partly local match.
5837Files:	    src/ex_docmd.c
5838
5839Patch 6.1b.014
5840Problem:    EBCDIC: switching mouse events off causes garbage on screen.
5841	    Positioning the cursor in the GUI causes garbage.
5842Solution:   Insert an ESC in the terminal code. (Ralf Schandl)
5843	    Use "\b" instead of "\010" for KS_LE.
5844Files:	    src/os_unix.c, src/term.c
5845
5846Patch 6.1b.015
5847Problem:    Vimtutor has a typo.  Get a warning for "tempfile" if it
5848	    doesn't exist.
5849Solution:   Move a quote to the end of a line. (Max Ischenko)
5850	    Use "mktemp" first, more systems have it.
5851Files:	    src/vimtutor
5852
5853Patch 6.1b.016
5854Problem:    GTK: loading a fontset that works partly, Vim might hang or crash.
5855Solution:   Avoid that char_width becomes zero. (Yasuhiro Matsumoto)
5856Files:	    src/gui_gtk_x11.c
5857
5858Patch 6.1b.017
5859Problem:    GUI: When using ":shell" and there is a beep, nothing happens.
5860Solution:   Call vim_beep() to produce the beep from the shell. (Yasuhiro
5861	    Matsumoto)
5862Files:	    src/message.c
5863
5864Patch 6.1b.018 (depends on 6.1b.006)
5865Problem:    When entering the encryption key, special keys may still reveal
5866	    the typed characters.
5867Solution:   Make sure stars are used or nothing is shown in all cases.
5868Files:	    src/digraph.c, src/getchar.c, src/ex_getln.c
5869
5870Patch 6.1b.019 (depends on 6.1b.005)
5871Problem:    A search pattern that takes a long time slows down typing when
5872	    'incsearch' is set.
5873Solution:   Pass SEARCH_PEEK to dosearch().
5874Files:	    src/ex_getln.c
5875
5876Patch 6.1b.020
5877Problem:    When using the matchit plugin, "%" finds a match on the "end" of a
5878	    ":syntax region" command in Vim scripts.
5879Solution:   Skip over ":syntax region" commands by setting b:match_skip.
5880Files:	    runtime/ftplugin/vim.vim
5881
5882Patch 6.1b.021
5883Problem:    when 'mousefocus' is set, CTRL-W CTRL-] sometimes doesn't warp the
5884	    pointer to the new window. (Robert Webb)
5885Solution:   Don't reset need_mouse_correct when checking the timestamp of a
5886	    file.
5887Files:	    src/fileio.c
5888
5889Patch 6.1b.022
5890Problem:    With lots of folds "j" does not obey 'scrolloff' properly.
5891	    (Srinath Avadhanula)
5892Solution:   Go to end of the fold before counting context lines.
5893Files:	    src/move.c
5894
5895Patch 6.1b.023
5896Problem:    On MS-Windows system() may cause checking timestamps, because Vim
5897	    loses and gains input focus, while this doesn't happen on Unix.
5898Solution:   Don't check timestamps while system() is busy.
5899Files:	    src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c
5900
5901Patch 6.1b.024 (extra)
5902Problem:    Gettext 0.11 complains that "sjis" is not a standard name.
5903Solution:   Use "cp932" instead.
5904Files:	    src/po/sjiscorr.c
5905
5906Patch 6.1b.025 (extra)
5907Problem:    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.
5909Solution:   Put the dialog in the middle of the screen.
5910Files:	    src/gui_w48.c
5911
5912Patch 6.1b.026
5913Problem:    When 'diffopt' contains 'iwhite' but not 'icase': differences in
5914	    case are not highlighted properly. (Gerhard Hochholzer)
5915Solution:   Don't ignore case when ignoring white space differences.
5916Files:	    src/diff.c
5917
5918Patch 6.1b.027
5919Problem:    "vim --remote +" may cause a crash.
5920Solution:   Check for missing file name argument. (Martin Kahlert)
5921Files:	    src/main.c
5922
5923Patch 6.1b.028 (extra)
5924Problem:    Win16: Can't compile after patch 6.1b.025.
5925Solution:   Add code specifically for Win16. (Vince Negri)
5926Files:	    src/gui_w48.c
5927
5928Patch 6.1b.029
5929Problem:    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)
5933Solution:   Use the Unix code to check for a writable directory.  If not, then
5934	    make a backup copy and overwrite the file.
5935Files:	    src/fileio.c
5936
5937Patch 6.1b.030 (extra)
5938Problem:    Mac: small mistake in the build script and prototypes.
5939Solution:   Fix the build script and add the prototypes. (Axel Kielhorn)
5940Files:	    src/os_mac.build, src/gui_mac.c
5941
5942Patch 6.1b.031 (extra)
5943Problem:    Win32 GUI: ":set guifont=*" doesn't set 'guifont' to the resulting
5944	    font name. (Vlad Sandrini)
5945Solution:   Put the code back in gui_mch_init_font() to form the font name out
5946	    of the logfont.
5947Files:	    src/gui_w48.c
5948
5949Patch 6.1b.032
5950Problem:    Athena: Setting a color scheme before the GUI has started causes a
5951	    crash. (Todd Blumer)
5952Solution:   Don't try using color names that haven't been set yet.
5953Files:	    src/gui_athena.c
5954
5955Patch 6.1b.033
5956Problem:    When using a count after a ":s" command may get ml_get errors.
5957	    (Dietmar Lang)
5958Solution:   Check that the resulting range does not go past the end of the
5959	    buffer.
5960Files:	    src/ex_cmds.c
5961
5962Patch 6.1b.034
5963Problem:    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)
5966Solution:   Adjust the start of the Visual area when deleting the auto-indent.
5967Files:	    src/edit.c
5968
5969Patch 6.1b.035
5970Problem:    When using evim, dropping a file on Vim and then double clicking
5971	    on a word, it is changed to "i". (Merlin Hansen)
5972Solution:   Reset need_start_insertmode after editing the file.
5973Files:	    src/ex_docmd.c
5974
5975
5976==============================================================================
5977VERSION 6.2						*version-6.2*
5978
5979This section is about improvements made between version 6.1 and 6.2.
5980
5981This is mainly a bug-fix release.  There are also a few new features.
5982
5983Main 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)
5990
5991
5992Changed							*changed-6.2*
5993-------
5994
5995Removed the scheme indent file, the internal Lisp indenting works well now.
5996
5997Moved the GvimEXt, OleVim and VisVim directories into the "src" directory.
5998This is more consistent with how xxd is handled.
5999
6000The VisVim.dll file is installed in the top directory, next to gvimext.dll,
6001instead of in a subdirectory "VisVim".  Fixes that NSIS was uninstalling it
6002from the wrong directory.
6003
6004Removed the art indent file, it didn't do anything.
6005
6006submatch() returned line breaks with CR instead of LF.
6007
6008Changed the Win32 Makefiles to become more uniform and compile gvimext.dll.
6009(Dan Sharp)
6010
6011'cindent': Align a "//" comment with a "//" comment in a previous line.
6012(Helmut Stiegler)
6013
6014Previously only for xterm-like terminals parent widgets were followed to find
6015the title and icon label.  Now do this for all terminal emulators.
6016
6017Made it possible to recognize backslashes for "%" matching.  The 'M' flag in
6018'cpoptions' disables it. (Haakon Riiser)
6019
6020Removed the Make_tcc.mak makefile for Turbo C.  It didn't work and we probably
6021can't make it work (the compiler runs out of memory).
6022
6023Even though the documentation refers to keywords, "[ CTRL-D" was using
6024'isident' to find matches.  Changed it to use 'iskeyword'.  Also applies to
6025other commands that search for defined words in included files such as
6026":dsearch", "[D" and "[d".
6027
6028Made 'keywordprg' global-local. (Christian Robinson)
6029
6030Enabled the Netbeans interface by default.  Reversed the configure argument
6031from "--enable-netbeans" to "--disable-netbeans".
6032
6033
6034Added							*added-6.2*
6035-----
6036
6037New 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'
6051
6052New keymaps:
6053	Serbian (Aleksandar Veselinovic)
6054	Chinese Pinyin (Fredrik Roubert)
6055	Esperanto (Antoine J. Mechelynck)
6056
6057New 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)
6093
6094New 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)
6101
6102New tutor translations:
6103	Slovak (Lubos Celko)
6104	Greek (Christos Kontas)
6105	German (Joachim Hofmann)
6106	Norwegian (�yvind Holm)
6107
6108New 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)
6114
6115New 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)
6122
6123New 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)
6129
6130New message translation for Norwegian. (�yvind Holm)
6131
6132New color scheme:
6133	desert (Hans Fugal)
6134
6135Arabic specific features.  'arabicshape', 'termbidi', 'arabic' and
6136'rightleftcmd' options.  (Nadim Shaikli & Isam Bayazidi)
6137
6138Support for neXtaw GUI toolkit, mostly like Athena. (Alexey Froloff)
6139
6140Win32: cscope support. (Khorev Sergey)
6141
6142VMS: various improvements to documentation and makefiles.  (Zoltan Arpadffy)
6143
6144Added "x" key to the explorer plugin: execute the default action. (Yasuhiro
6145Matsumoto)
6146
6147Compile gvimext.dll with MingW. (Rene de Zwart)
6148
6149Add the "tohtml.vim" plugin.  It defines the ":TOhtml" user command, an easy
6150way to convert text to HTML.
6151
6152Added ":try" / ":catch" / ":finally" / ":endtry" commands.  Add E999 numbers
6153to all error messages, so that they can be caught by the number.
6154(Servatius Brandt)
6155Moved part of ex_docmd.c to the new ex_eval.c source file.
6156
6157Include support for GTK+ 2.2.x (Daniel Elstner)
6158Adds the "~" register: drag & drop text.
6159Adds the 'toolbariconsize' option.
6160Add -Dalloca when running lint to work around a problem with alloca()
6161prototype.
6162
6163When selecting an item in the error window to jump to, take some effort to
6164find an ordinary window to show the file in (not a preview window).
6165
6166Support for PostScript printing of various 8-bit encodings. (Mike Williams)
6167
6168inputdialog() accepts a third argument that is used when the dialog is
6169cancelled.  Makes it possible to see a difference between cancelling and
6170entering nothing.
6171
6172Included Aap recipes.  Can be used to update Vim to the latest version,
6173building and installing.
6174
6175"/" option in 'cinoptions': extra indent for comment lines. (Helmut Stiegler)
6176
6177Vim variable "v:register" and functions setreg(), getreg() and getregtype().
6178(Michael Geddes)
6179
6180"v" flag in 'cpoptions': Leave text on screen with backspace in Insert mode.
6181(Phillip Vandry)
6182
6183Dosinst.exe also finds gvimext.dll in the "GvimExt" directory.  Useful when
6184running install in the "src" directory for testing.
6185
6186Support tag files that were sorted with case ignored. (Flemming Madsen)
6187
6188When completing a wildcard in a leading path element, as in "../*/Makefile",
6189only the last part ("Makefile") was listed.  Support custom defined
6190command line completion.  (Flemming Madsen)
6191
6192Also recognize "rxvt" as an xterm-like terminal. (Tomas Styblo)
6193
6194Proper X11 session management.  Fixes that the WM_SAVE_YOURSELF event was not
6195used by popular desktops.  (Neil Bird)
6196Not used for Gnome 2, it has its own handling.
6197
6198Support BOR, DEBUG and SPAWNO arguments for the Borland 3 Makefile. (Walter
6199Briscoe)
6200
6201Support page breaks for printing.  Adds the "formfeed" field in
6202'printoptions'.  (Mike Williams)
6203
6204Mac OSX: multi-language support: iconv and gettext. (Muraoka Taro, Axel
6205Kielhorn)
6206
6207"\Z" flag in patterns: ignore differences in combining characters. (Ron Aaron)
6208
6209Added 'preserveindent' and 'copyindent' options.  They use existing white
6210space characters instead of using Tabs as much as possible. (Chris Leishman)
6211
6212Updated Unicode tables to Unicode 4.0. (Raphael Finkel)
6213
6214Support for the mouse wheel in rxvt. (AIDA Shinra)
6215
6216Win32: Added ":8" file modifier to get short filename.  Test50 tests the ":8"
6217expansion on Win32 systems. (Michael Geddes)
6218
6219'cscopequickfix' option: Open quickfix window for Cscope commands.  Also
6220cleanup the code for giving messages.  (Khorev Sergey)
6221
6222GUI: Support more than 222 columns for mouse positions.
6223
6224":stopinsert" command: Don't return to Insert mode.
6225
6226"interrupt" command for debug mode.  Useful for simulating CTRL-C. (Servatius
6227Brandt)
6228
6229
6230Fixed							*fixed-6.2*
6231-----
6232
6233Removed a few unused #defines from config.h.in, os_os2_cfg.h and os_vms_conf.h.
6234
6235The Vim icons in PNG format didn't have a transparent background. (Greg
6236Roelofs)
6237
6238Fixed a large number of spelling mistakes in the docs. (Adri Verhoef)
6239
6240The #defines for prototype generation were causing trouble.  Changed them to
6241typedefs.
6242
6243A new version of libintl.h uses __asm__, which confuses cproto.  Define a
6244dummy __asm__ macro.
6245
6246When 'virtualedit' is set can't move to halfway an unprintable character.
6247Cripples CTRL-V selection. (Taro Muraoka)
6248Allow moving to halfway an unprintable character.  Don't let getvvcol() change
6249the pos->coladd argument.
6250
6251When a tab wraps to the next line, 'listchars' is set and 'foldcolumn' is
6252non-zero, only one character of the foldcolumn is highlighted. (Muraoka Taro)
6253
6254When using ":catch" without an argument Vim crashes. (Yasuhiro Matsumoto)
6255When no argument given use the ".*" pattern.
6256
6257Win32: When gvim.exe is started from a shortcut with the window style property
6258set to maximize Vim doesn't start with a maximized window. (Yasuhiro
6259Matsumoto)  Open the window with the default size and don't call ShowWindow()
6260again when it's already visible. (Helmut Stiegler)
6261
6262gui_gtk.c used MAX, but it's undefined to avoid a conflict with system header
6263files.
6264
6265Win32: When closing a window from a mapping some pixels remain on the
6266statusline. (Yasuhiro Matsumoto)
6267
6268A column number in an errorformat that goes beyond the end of the line may
6269cause a crash.
6270
6271":throw 'test'" crashes Vim. (Yasuhiro Matsumoto)
6272
6273The file selector's scrollbar colors are not set after doing a ":hi Scrollbar
6274guifg=color".  And the file selector's colors are not changed by the
6275colorscheme command.  (David Harrison)
6276
6277Motif: When compiling with FEAT_FOOTER defined, the text area gets a few
6278pixels extra space on the right.  Remove the special case in
6279gui_get_base_width(). (David Harrison)
6280
6281Using CTRL-R CTRL-P in Insert mode puts the '] mark in the wrong position.
6282(Helmut Stiegler)
6283
6284When 'formatoptions' includes "awct" a non-comment wasn't auto-formatted.
6285
6286Using a "--cmd" argument more than 10 times caused a crash.
6287
6288DEC style mouse support didn't work if the page field is not empty.
6289(Uribarri)
6290
6291"vim -l one two" did only set 'lisp' in the first file.  Vi does it for every
6292file.
6293
6294":set tw<" didn't work.  Was checking for '^' instead of '<'.
6295
6296In ":hardcopy > %.ps" the "%" was not expanded to the current filename.
6297
6298Made ":redraw" also update the Visual area.
6299
6300When a not implemented command, such as ":perl", has wrong arguments the less
6301important error was reported, giving the user the idea the command could work.
6302
6303On non-Unix systems autocommands for writing did not attempt a match with the
6304short file name, causing a pattern like "a/b" to fail.
6305
6306VMS: e_screenmode was not defined and a few other fixes for VMS. (Zoltan
6307Arpadffy)
6308
6309redraw_msg() depended on FEAT_ARABIC instead of FEAT_RIGHTLEFT. (Walter
6310Briscoe)
6311
6312Various changes for the PC Makefiles. (Walter Briscoe)
6313
6314Use _truename() instead of our own code to expand a file name into a full
6315path. (Walter Briscoe)
6316
6317Error in filetype check for /etc/modutils. (Lubomir Host)
6318
6319Cscope interface: allocated a buffer too small.
6320
6321Win16: remove a trailing backslash from a path when obtaining the permission
6322flags. (Vince Negri)
6323
6324When searching for tags with case ignored Vim could hang.
6325
6326When searching directories with a stopdir could get a crash.  Did not
6327re-allocate enough memory. (Vince Negri)
6328
6329A user command may cause a crash.  Don't use the command index when it's
6330negative. (Vince Negri)
6331
6332putenv() didn't work for MingW and Cygwin. (Dan Sharp)
6333
6334Many functions were common between os_msdos.c and os_win16.c.  Use os_msdos.c
6335for compiling the Win16 version and remove the functions from os_win16.c.
6336(Vince Negri)
6337
6338For terminals that behave like an xterm but didn't have a name that is
6339recognized, the window title would not always be set.
6340
6341When syntax highlighting is off ":hardcopy" could still attempt printing
6342colors.
6343
6344Crash when using ":catch" without an argument.  (Servatius Brandt)
6345
6346Win32: ":n #" doubled the backslashes.
6347
6348Fixed Arabic shaping for the command line. (Nadim Shaikli)
6349
6350Avoid splitting up a string displayed on the command line into individual
6351characters, it breaks Arabic shaping.
6352
6353Updated Cygwin and MingW makefiles to use more dependencies. (Dan Sharp)
6354
63552html.vim didn't work with 'nomagic' set.
6356
6357When a local argument list is used and doing ":only" Vim could crash later.
6358(Muraoka Taro)
6359
6360When using "%P" in 'statusline' and the fillchar is "-", a percentage of 3%
6361could result in "-3%".  Also avoid changing a space inside a filename to the
6362fill character.
6363
6364MSwin: Handling of backslashes and double quotes for command line arguments
6365was not like what other applications do.  (Walter Briscoe)
6366
6367Test32 sometimes didn't work, because test11.out was written as TEST11.OUT.
6368
6369Avoid pointer conversions warnings for Borland C 5.5 in dosinst.c and
6370uninstal.c.
6371
6372More improvements for Make_bc3.mak file. (Walter Briscoe)
6373
6374When ":syn sync linebreaks=1" is used, editing the first line caused a redraw
6375of the whole screen.
6376
6377Making translated messages didn't work, if_perl.xs wasn't found. (Vlad
6378Sandrini)
6379
6380Motif and Athena: moving Vim to the foreground didn't uniconify it.  Use
6381XMapRaised() instead of XRaiseWindow(). (Srikanth Sankaran)
6382
6383When using ":ptag" in a window where 'scrollbind' is set the preview window
6384would also have 'scrollbind' set.  Also reset 'foldcolumn' and 'diff'.
6385
6386Various commands that split a window took over 'scrollbind', which is hardly
6387ever desired.  Esp. for "q:" and ":copen".  Mostly reset 'scrollbind' when
6388splitting a window.
6389
6390When 'shellslash' is set in the vimrc file the first entry of ":scriptnames"
6391would still have backslashes.  Entries in the quickfix list could also have
6392wrong (back)slashes.
6393
6394Win32: printer dialog texts were not translated. (Yasuhiro Matsumoto)
6395
6396When using a multi-byte character with a K_SPECIAL byte or a special key code
6397with "--remote-send" the received byte sequence was mangled.  Put it in the
6398typeahead buffer instead of the input buffer.
6399
6400Win32: The cursor position was incorrect after changing cursor shape.
6401(Yasuhiro Matsumoto).
6402
6403Win32: When 'encoding' is not the current codepage the title could not be set
6404to non-ascii characters.
6405
6406"vim -d scp://machine/file1 scp://machine/file2" did not work, there was only
6407one window.  Fixed the netrw plugin not to wipe out the buffer if it is
6408displayed in other windows.
6409
6410"/$" caused "e" in last column of screen to disappear, a highlighted blank was
6411displayed instead.
6412
6413":s/ *\ze\n//e" removed the line break and introduced arbitrary text.  Was
6414using the line count including what matched after the "\ze".
6415
6416Using the "c" flag with ":s" changed the behavior when a line break is
6417replaced and "\@<=" is used.  Without "c" a following match was not found.
6418
6419":%s/\vA@<=\nB@=//gce" got stuck on "A\nB" when entering "n".
6420
6421VMS: add HAVE_STRFTIME in the config file. (Zoltan Arpadffy)
6422
6423When a delete prompts if a delete should continue when yanking is not
6424possible, restore msg_silent afterwards.
6425
6426":sign" did not complain about a missing argument.
6427
6428When adding or deleting a sign 'hlsearch' highlighting could disappear.
6429Use the generic functions for updating signs.
6430
6431On MS-Windows NT, 2K and XP don't use command.com but cmd.exe for testing.
6432Makes the tests work on more systems.
6433
6434In the DOS tests don't create "/tmp" to avoid an error.
6435
6436Mac classic: Problems with reading files with CR vs CR/LF.  Rely on the
6437library version of fgets() to work correctly for Metrowerks 2.2. (Axel
6438Kielhorn)
6439
6440When typing a password a "*" was shown for each byte instead of for each
6441character.  Added multi-byte handling to displaying the stars. (Yasuhiro
6442Matsumoto)
6443
6444When using Perl 5.6 accessing $curbuf doesn't work.  Add an #ifdef to use
6445different code for 5.6 and 5.8.  (Dan Sharp)
6446
6447MingW and Cygwin: Don't strip the debug executable. (Dan Sharp)
6448
6449An assignment to a variable with curlies that includes "==" doesn't work.
6450Skip over the curlies before searching for an "=". (Vince Negri)
6451
6452When cancelling the selection of alternate matching tags the tag stack index
6453could be advanced too far, resulting in an error message when using CTRL-T.
6454
6455
6456Patch 6.1.001
6457Problem:    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.
6461Solution:   Check for a composing character on a space.
6462Files:	    src/edit.c, src/misc1.c, src/screen.c
6463
6464Patch 6.1.002 (extra)
6465Problem:    Win32: after a ":popup" command the mouse pointer stays hidden.
6466Solution:   Unhide the mouse pointer before showing the menu.
6467Files:	    src/gui_w48.c
6468
6469Patch 6.1.003
6470Problem:    When 'laststatus' is zero and there is a vertical split, the
6471	    vertical separator is drawn in the command line. (Srikant
6472	    Sankaran)
6473Solution:   Don't draw the vertical separator where there is no statusline.
6474Files:	    src/screen.c
6475
6476Patch 6.1.004
6477Problem:    Unicode 3.2 changes width and composing of a few characters.
6478	    (Markus Kuhn)
6479Solution:   Adjust the Unicode functions for the character width and composing
6480	    characters.
6481Files:	    src/mbyte.c
6482
6483Patch 6.1.005
6484Problem:    When using more than 50 items in 'statusline' Vim might crash.
6485	    (Steve Hall)
6486Solution:   Increment itemcnt in check_stl_option(). (Flemming Madsen)
6487Files:	    src/option.c
6488
6489Patch 6.1.006
6490Problem:    When using "P" in Visual mode to put linewise selected text, the
6491	    wrong text is deleted. (Jakub Turski)
6492Solution:   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.
6496Files:	    src/normal.c, src/ops.c
6497
6498Patch 6.1.007
6499Problem:    Using ":filetype plugin off" when filetype plugins were never
6500	    enabled causes an error message. (Yiu Wing)
6501Solution:   Use ":silent!" to avoid the error message.
6502Files:	    runtime/ftplugof.vim
6503
6504Patch 6.1.008
6505Problem:    The "%" command doesn't ignore \" inside a string, it's seen as
6506	    the end of the string. (Ken Clark)
6507Solution:   Skip a double quote preceded by an odd number of backslashes.
6508Files:	    src/search.c
6509
6510Patch 6.1.009
6511Problem:    Vim crashes when using a huge number for the maxwid value in a
6512	    statusline. (Robert M. Nowotniak)
6513Solution:   Check for an overflow that makes maxwid negative.
6514Files:	    src/buffer.c
6515
6516Patch 6.1.010
6517Problem:    Searching backwards for a question mark with "?\?" doesn't work.
6518	    (Alan Isaac)  Same problem in ":s?\??" and ":g?\??".
6519Solution:   Change the "\?" in a pattern to "?" when using "?" as delimiter.
6520Files:	    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
6522
6523Patch 6.1.011
6524Problem:    XIM: doesn't work correctly when 'number' is set.  Also, a focus
6525	    problem when selecting candidates.
6526Solution:   Fix the XIM problems. (Yasuhiro Matsumoto)
6527Files:	    src/mbyte.c, src/screen.c
6528
6529Patch 6.1.012
6530Problem:    A system() call might fail if fread() does CR-LF to LF
6531	    translation.
6532Solution:   Open the output file in binary mode. (Pavol Huhas)
6533Files:	    src/misc1.c
6534
6535Patch 6.1.013
6536Problem:    Win32: The default for 'printexpr' doesn't work when there are
6537	    special characters in 'printdevice'.
6538Solution:   Add double quotes around the device name. (Mike Williams)
6539Files:	    runtime/doc/option.txt, src/option.c
6540
6541Patch 6.1.014
6542Problem:    An operator like "r" used in Visual block mode doesn't use
6543	    'virtualedit' when it's set to "block".
6544Solution:   Check for 'virtualedit' being active in Visual block mode when the
6545	    operator was started.
6546Files:	    src/ex_docmd.c, src/globals.h, src/misc2.c, src/normal.c,
6547	    src/ops.c, src/undo.c
6548
6549Patch 6.1.015
6550Problem:    After patch 6.1.014 can't compile with tiny features. (Christian
6551	    J. Robinson)
6552Solution:   Add the missing define of virtual_op.
6553Files:	    src/vim.h
6554
6555Patch 6.1.016 (extra)
6556Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
6557	    reversing.
6558Solution:   Replace the RevOut() function with ETO_IGNORELANGUAGE. (Ron Aaron)
6559Files:	    src/gui_w32.c
6560
6561Patch 6.1.017
6562Problem:    Cygwin: After patch 6.1.012 Still doesn't do binary file I/O.
6563	    (Pavol Juhas)
6564Solution:   Define BINARY_FILE_IO for Cygwin.
6565Files:	    src/os_unix.h
6566
6567Patch 6.1.018
6568Problem:    Error message when using cterm highlighting. (Leonardo Di Lella)
6569Solution:   Remove a backslash before a question mark.
6570Files:	    runtime/syntax/cterm.vim
6571
6572Patch 6.1.019 (extra)
6573Problem:    Win32: File name is messed up when editing just a drive name.
6574	    (Walter Briscoe)
6575Solution:   Append a NUL after the drive name. (Vince Negri)
6576Files:	    src/os_win32.c
6577
6578Patch 6.1.020
6579Problem:    col("'>") returns a huge number after using Visual line mode.
6580Solution:   Return the length of the line instead.
6581Files:	    src/eval.c
6582
6583Patch 6.1.021 (depends on patch 6.1.009)
6584Problem:    Vim crashes when using a huge number for the minwid value in a
6585	    statusline. (Robert M. Nowotniak)
6586Solution:   Check for an overflow that makes minwid negative.
6587Files:	    src/buffer.c
6588
6589Patch 6.1.022
6590Problem:    Grabbing the status line above the command-line window works like
6591	    the bottom status line was grabbed. (Jim Battle)
6592Solution:   Make it possible to grab the status line above the command-line
6593	    window, so that it can be resized.
6594Files:	    src/ui.c
6595
6596Patch 6.1.023 (extra)
6597Problem:    VMS: running tests doesn't work properly.
6598Solution:   Adjust the makefile. (Zoltan Arpadffy)
6599Files:	    src/testdir/Make_vms.mms
6600
6601Patch 6.1.024
6602Problem:    When header files use a new syntax for declaring functions, Vim
6603	    can't figure out missing prototypes properly.
6604Solution:   Accept braces around a function name. (M. Warner Losh)
6605Files:	    src/osdef.sh
6606
6607Patch 6.1.025
6608Problem:    Five messages for "vim --help" don't start with a capital. (Vlad
6609	    Sandrini)
6610Solution:   Make the messages consistent.
6611Files:	    src/main.c
6612
6613Patch 6.1.026
6614Problem:    *.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.
6617Solution:   Add *.patch for diff filetypes.  Ignore "VAR=val".  Recognize PHP
6618	    scripts. (Roman Neuhauser)
6619Files:	    runtime/filetype.vim, runtime/scripts.vim
6620
6621Patch 6.1.027
6622Problem:    When 'foldcolumn' is non-zero, a special character that wraps to
6623	    the next line disturbs the foldcolumn highlighting.  (Yasuhiro
6624	    Matsumoto)
6625Solution:   Only use the special highlighting when drawing text characters.
6626Files:	    src/screen.c
6627
6628Patch 6.1.028
6629Problem:    Client-server: When a --remote-expr fails, Vim still exits with
6630	    status zero.
6631Solution:   Exit Vim with a non-zero status to indicate the --remote-expr
6632	    failed. (Thomas Scott Urban)
6633Files:	    src/main.c
6634
6635Patch 6.1.029
6636Problem:    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)
6639Solution:   Don't use Unicode to latin1 conversion for 8-bit encodings other
6640	    than "latin1".
6641Files:	    src/fileio.c
6642
6643Patch 6.1.030
6644Problem:    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)
6647Solution:   Don't map CTRL-N after CTRL-X CTRL-N.  Same for CTRL-P.
6648Files:	    src/getchar.c
6649
6650Patch 6.1.031
6651Problem:    Cygwin: Xxd could read a file in text mode instead of binary mode.
6652Solution:   Use "rb" or "rt" when needed. (Pavol Juhas)
6653Files:	    src/xxd/xxd.c
6654
6655Patch 6.1.032
6656Problem:    Can't specify a quickfix file without jumping to the first error.
6657Solution:   Add the ":cgetfile" command. (Yegappan Lakshmanan)
6658Files:	    runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmds.h,
6659	    src/quickfix.c
6660
6661Patch 6.1.033
6662Problem:    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)
6665Solution:   Update the cursor position after redrawing the selection.
6666Files:	    src/ui.c
6667
6668Patch 6.1.034
6669Problem:    A CVS diff file isn't recognized as diff filetype.
6670Solution:   Skip lines starting with "? " before checking for an "Index:" line.
6671Files:	    runtime/scripts.vim
6672
6673Patch 6.1.035 (extra, depends on 6.1.016)
6674Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
6675	    reversing on MS-Windows 95/98/ME.
6676Solution:   Restore the RevOut() function and use it in specific situations
6677	    only. (Ron Aaron)
6678Files:	    src/gui_w32.c
6679
6680Patch 6.1.036
6681Problem:    This command may cause a crash: ":v/./,//-j". (Ralf Arens)
6682Solution:   Compute the right length of the regexp when it's empty.
6683Files:	    src/search.c
6684
6685Patch 6.1.037
6686Problem:    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)
6689Solution:   Overrule 'lazyredraw' when do_redraw is set.
6690Files:	    src/main.c, src/screen.c
6691
6692Patch 6.1.038
6693Problem:    Multi-byte: When a ":s" command contains a multi-byte character
6694	    where the trail byte is '~' the text is messed up.
6695Solution:   Properly skip multi-byte characters in regtilde() (Muraoka Taro)
6696Files:	    src/regexp.c
6697
6698Patch 6.1.039
6699Problem:    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)
6702Solution:   Recompute the folds after reloading the file.
6703Files:	    src/fileio.c
6704
6705Patch 6.1.040
6706Problem:    When changing directory for expanding a file name fails there is
6707	    no error message.
6708Solution:   Give an error message for this situation.  Don't change directory
6709	    if we can't return to the original directory.
6710Files:	    src/diff.c, src/ex_docmd.c, src/globals.h, src/misc1.c,
6711	    src/os_unix.c
6712
6713Patch 6.1.041
6714Problem:    ":mkvimrc" doesn't handle a mapping that has a leading space in
6715	    the rhs. (Davyd Ondrejko)
6716Solution:   Insert a CTRL-V before the leading space.  Also display leading
6717	    and trailing white space in <> form.
6718Files:	    src/getchar.c, src/message.c
6719
6720Patch 6.1.042
6721Problem:    "vim -r" doesn't show all matches when 'wildignore' removes swap
6722	    files. (Steve Talley)
6723Solution:   Keep all matching swap file names.
6724Files:	    src/memline.c
6725
6726Patch 6.1.043
6727Problem:    After patch 6.1.040 a few warnings are produced.
6728Solution:   Add a type cast to "char *" for mch_chdir(). (Axel Kielhorn)
6729Files:	    src/diff.c, src/ex_docmd.c.c, src/misc1.c, src/os_unix.c
6730
6731Patch 6.1.044 (extra)
6732Problem:    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.
6735Solution:   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.
6739Files:	    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
6741
6742Patch 6.1.045
6743Problem:    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)
6746Solution:   Take into account that the cursor may be on the last line of a
6747	    closed fold.
6748Files:	    src/move.c
6749
6750Patch 6.1.046
6751Problem:    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)
6754Solution:   Correctly compute the height of the horizontal cursor.
6755Files:	    src/gui_gtk_x11.c, src/gui_x11.c
6756
6757Patch 6.1.047
6758Problem:    When skipping commands after an error was encountered, expressions
6759	    for ":if", ";elseif" and ":while" are still evaluated.
6760Solution:   Skip the expression after an error. (Servatius Brandt)
6761Files:	    src/ex_docmd.c
6762
6763Patch 6.1.048
6764Problem:    Unicode 3.2 changes were missing a few Hangul Jamo characters.
6765Solution:   Recognize more characters as composing characters. (Jungshik Shin)
6766Files:	    src/mbyte.c
6767
6768Patch 6.1.049 (extra)
6769Problem:    On a 32 bit display a valid color may cause an error message,
6770	    because its pixel value is negative. (Chris Paulson-Ellis)
6771Solution:   Check for -11111 instead of the color being negative.
6772	    Don't add one to the pixel value, -1 may be used for white.
6773Files:	    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
6778
6779Patch 6.1.050 (depends on 6.1.049)
6780Problem:    After patch 6.1.049 the non-GUI version doesn't compile.
6781Solution:   Add an #ifdef FEAT_GUI.  (Robert Stanton)
6782Files:	    src/syntax.c
6783
6784Patch 6.1.051 (depends on 6.1.044)
6785Problem:    Doesn't compile with GUI and small features.
6786Solution:   Adjust the #if for ga_append().
6787Files:	    src/misc2.c
6788
6789Patch 6.1.052
6790Problem:    Unix: The executable() function doesn't work when the "which"
6791	    command isn't available.
6792Solution:   Go through $PATH manually.  Also makes it work for VMS.
6793Files:	    src/os_unix.c
6794
6795Patch 6.1.053
6796Problem:    When 'sessionoptions' contains "globals", or "localoptions" and an
6797	    option value contains a line break, the resulting script is wrong.
6798Solution:   Use "\n" and "\r" for a line break. (Srinath Avadhanula)
6799Files:	    src/eval.c
6800
6801Patch 6.1.054
6802Problem:    GUI: A mouse click is not recognized at the more prompt, even when
6803	    'mouse' includes 'r'.
6804Solution:   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'.
6807Files:	    src/gui.c, src/message.c, src/misc1.c, src/misc2.c, src/option.c,
6808	    src/structs.h
6809
6810Patch 6.1.055
6811Problem:    When editing a compressed file, Vim will inspect the contents to
6812	    guess the filetype.
6813Solution:   Don't source scripts.vim for .Z, .gz, .bz2, .zip and .tgz files.
6814Files:	    runtime/filetype.vim, runtime/plugin/gzip.vim
6815
6816Patch 6.1.056
6817Problem:    Loading the Syntax menu can take quite a bit of time.
6818Solution:   Add the "skip_syntax_sel_menu" variable.  When it's defined the
6819	    available syntax files are not in the Syntax menu.
6820Files:	    runtime/doc/gui.txt, runtime/menu.vim
6821
6822Patch 6.1.057
6823Problem:    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)
6826Solution:   Make it work as documented.
6827Files:	    src/normal.c
6828
6829Patch 6.1.058
6830Problem:    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)
6833Solution:   Correct the topline by putting it at the start of the fold.
6834Files:	    src/move.c
6835
6836Patch 6.1.059
6837Problem:    ":redir > ~/file" doesn't work. (Stephen Rasku)
6838Solution:   Expand environment variables in the ":redir >" argument.
6839Files:	    src/ex_docmd.c
6840
6841Patch 6.1.060
6842Problem:    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)
6845Solution:   Don't replace the tab by spaces when it's not needed.  Correctly
6846	    save the line before it's changed.
6847Files:	    src/ops.c
6848
6849Patch 6.1.061
6850Problem:    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)
6853Solution:   Use a different way to exclude the character under the cursor.
6854Files:	    src/screen.c
6855
6856Patch 6.1.062
6857Problem:    The "man" filetype plugin doesn't work properly on Solaris 5.
6858Solution:   Use a different way to detect that "man -s" should be used. (Hugh
6859	    Sasse)
6860Files:	    runtime/ftplugin/man.vim
6861
6862Patch 6.1.063
6863Problem:    Java indenting doesn't work properly.
6864Solution:   Ignore comments when checking if the indent doesn't increase after
6865	    a "}".
6866Files:	    runtime/indent/java.vim
6867
6868Patch 6.1.064
6869Problem:    The URLs that the netrw plugin recognized for ftp and rcp did not
6870	    conform to the standard method://[user@]host[:port]/path.
6871Solution:   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)
6874Files:	    runtime/plugin/netrw.vim
6875
6876Patch 6.1.065
6877Problem:    VMS: The colorscheme, keymap and compiler menus are not filled in.
6878Solution:   Ignore case when looking for ".vim" files. (Coen Engelbarts)
6879Files:	    runtime/menu.vim
6880
6881Patch 6.1.066 (extra)
6882Problem:    When calling system() in a plugin reading stdin hangs.
6883Solution:   Don't set the terminal to RAW mode when it wasn't in RAW mode
6884	    before the system() call.
6885Files:	    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
6887
6888Patch 6.1.067
6889Problem:    ":set viminfo+=f0" is not working. (Benji Fisher)
6890Solution:   Check the "f" flag instead of "'" in 'viminfo'.
6891Files:	    src/mark.c
6892
6893Patch 6.1.068
6894Problem:    When a file is reloaded after it was changed outside of Vim, diff
6895	    mode isn't updated. (Michael Naumann)
6896Solution:   Invalidate the diff info so that it's updated when needed.
6897Files:	    src/fileio.c
6898
6899Patch 6.1.069
6900Problem:    When 'showmatch' is set and "$" is in 'cpoptions', using
6901	    "C}<Esc>" may forget to remove the "$". (Preben Guldberg)
6902Solution:   Restore dollar_vcol after displaying the matching cursor position.
6903Files:	    src/search.c
6904
6905Patch 6.1.070 (depends on 6.1.060)
6906Problem:    Compiler warning for signed/unsigned mismatch. (Mike Williams)
6907Solution:   Add a typecast to int.
6908Files:	    src/ops.c
6909
6910Patch 6.1.071
6911Problem:    When 'selection' is exclusive, g CTRL-G in Visual mode counts one
6912	    character too much. (David Necas)
6913Solution:   Subtract one from the end position.
6914Files:	    src/ops.c
6915
6916Patch 6.1.072
6917Problem:    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.
6920Solution:   Check if there is a matching BufReadCmd autocommand and try to
6921	    open the file.
6922Files:	    src/fileio.c, src/proto/fileio.pro, src/tag.c
6923
6924Patch 6.1.073 (extra)
6925Problem:    BC5: Can't easily specify a tiny, small, normal, big or huge
6926	    version.
6927Solution:   Allow selecting the version with the FEATURES variable. (Ajit
6928	    Thakkar)
6929Files:	    src/Make_bc5.mak
6930
6931Patch 6.1.074
6932Problem:    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)
6936Solution:   Use a separate list for the already searched directories.
6937Files:	    src/misc2.c
6938
6939Patch 6.1.075 (depends on 6.1.072)
6940Problem:    Can't compile fileio.c on MS-Windows.
6941Solution:   Add a declaration for the "p" pointer. (Madoka Machitani)
6942Files:	    src/fileio.c
6943
6944Patch 6.1.076 (extra)
6945Problem:    Macintosh: explorer plugin doesn't work on Mac Classic.
6946	    IME doesn't work.  Dialog boxes don't work on Mac OS X
6947Solution:   Fix explorer plugin and key modifiers. (Axel Kielhorn)
6948	    Fix IME support. (Muraoka Taro)
6949	    Disable dialog boxes. (Benji Fisher)
6950Files:	    src/edit.c, src/feature.h, src/gui_mac.c, src/os_mac.c
6951
6952Patch 6.1.077
6953Problem:    On a Debian system with ACL linking fails. (Lubomir Host)
6954Solution:   When the "acl" library is used, check if the "attr" library is
6955	    present and use it.
6956Files:	    src/auto/configure, src/configure.in, src/link.sh
6957
6958Patch 6.1.078
6959Problem:    When using 'foldmethod' "marker" and the end marker appears before
6960	    the start marker in the file, no fold is found. (Nazri Ramliy)
6961Solution:   Don't let the fold depth go negative.
6962Files:	    src/fold.c
6963
6964Patch 6.1.079
6965Problem:    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)
6968Solution:   Insert the right text and extend short lines.
6969Files:	    src/ops.c
6970
6971Patch 6.1.080
6972Problem:    When using gcc with /usr/local already in the search path, adding
6973	    it again causes problems.
6974Solution:   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)
6977Files:	    src/auto/configure, src/configure.in
6978
6979Patch 6.1.081
6980Problem:    ":help CTRL-\_CTRL-N" doesn't work.  (Christian J. Robinson)
6981Solution:   Double the backslash to avoid the special meaning of "\_".
6982Files:	    src/ex_cmds.c
6983
6984Patch 6.1.082
6985Problem:    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.
6988Solution:   Remove the mapping of "p" from vimrc_example.vim, it's obsolete.
6989	    (Vlad Sandrini)
6990Files:	    runtime/vimrc_example.vim
6991
6992Patch 6.1.083
6993Problem:    When $LANG is "sk" or "sk_sk", the Slovak menu file isn't found.
6994	    (Martin Lacko)
6995Solution:   Guess the right menu file based on the system.
6996Files:	    runtime/lang/menu_sk_sk.vim
6997
6998Patch 6.1.084 (depends on 6.1.080)
6999Problem:    "include" and "lib" are mixed up when checking the directories gcc
7000	    already searches.
7001Solution:   Swap the variable names. (SunHo Kim)
7002Files:	    src/auto/configure, src/configure.in
7003
7004Patch 6.1.085
7005Problem:    When using CTRL-O CTRL-\ CTRL-N from Insert mode, the displayed
7006	    mode "(insert)" isn't removed. (Benji Fisher)
7007Solution:   Clear the command line.
7008Files:	    src/normal.c
7009
7010Patch 6.1.086 (depends on 6.1.049)
7011Problem:    The guifg color for CursorIM doesn't take effect.
7012Solution:   Use the foreground color when it's defined. (Muraoka Taro)
7013Files:	    src/gui.c
7014
7015Patch 6.1.087
7016Problem:    A thesaurus with Japanese characters has problems with characters
7017	    in different word classes.
7018Solution:   Only separate words with single-byte non-word characters.
7019	    (Muraoka Taro)
7020Files:	    src/edit.c
7021
7022Patch 6.1.088 (extra)
7023Problem:    Win32: no debugging info is generated.  Tags file excludes .cpp
7024	    files.
7025Solution:   Add "/map" to compiler flags.  Add "*.cpp" to ctags command.
7026	    (Muraoka Taro)
7027Files:	    src/Make_mvc.mak
7028
7029Patch 6.1.089
7030Problem:    On BSDI systems there is no ss_sp field in stack_t. (Robert Jan)
7031Solution:   Use ss_base instead.
7032Files:	    src/auto/configure, src/configure.in, src/config.h.in,
7033	    src/os_unix.c
7034
7035Patch 6.1.090
7036Problem:    CTRL-F gets stuck when 'scrolloff' is non-zero and there is a mix
7037	    of long wrapping lines and a non-wrapping line.
7038Solution:   Check that CTRL-F scrolls at least one line.
7039Files:	    src/move.c
7040
7041Patch 6.1.091
7042Problem:    GTK: Can't change preeditstate without setting 'imactivatekey'.
7043Solution:   Add some code to change preeditstate for OnTheSpot. (Yasuhiro
7044	    Matsumoto)
7045Files:	    src/mbyte.c
7046
7047Patch 6.1.092
7048Problem:    ":mapclear <buffer>" doesn't work. (Srikanth Adayapalam)
7049Solution:   Allow an argument for ":mapclear".
7050Files:	    src/ex_cmds.h
7051
7052Patch 6.1.093 (extra)
7053Problem:    Mac and MS-Windows GUI: when scrolling while ":s" is working the
7054	    results can be messed up, because the cursor is moved.
7055Solution:   Disallow direct scrolling when not waiting for a character.
7056Files:	    src/gui_mac.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7057
7058Patch 6.1.094
7059Problem:    Cygwin: Passing a file name that has backslashes isn't handled
7060	    very well.
7061Solution:   Convert file name arguments to Posix.  (Chris Metcalf)
7062Files:	    src/main.c
7063
7064Patch 6.1.095
7065Problem:    When using signs can free an item on the stack.
7066	    Overruling sign colors doesn't work. (Srikanth Sankaran)
7067Solution:   Don't free the item on the stack.  Use NULL instead of "none" for
7068	    the value of the color.
7069Files:	    src/gui_x11.c
7070
7071Patch 6.1.096
7072Problem:    When erasing the right halve of a double-byte character, it may
7073	    cause further characters to be erased. (Yasuhiro Matsumoto)
7074Solution:   Make sure only one character is erased.
7075Files:	    src/screen.c
7076
7077Patch 6.1.097 (depends on 6.1.090)
7078Problem:    When 'scrolloff' is set to a huge value, CTRL-F at the end of the
7079	    file scrolls one line. (Lubomir Host)
7080Solution:   Don't scroll when CTRL-F detects the end-of-file.
7081Files:	    src/move.c
7082
7083Patch 6.1.098
7084Problem:    MS-Windows: When the xxd program is under "c:\program files" the
7085	    "Convert to Hex" menu doesn't work. (Brian Mathis)
7086Solution:   Put the path to xxd in double quotes.
7087Files:	    runtime/menu.vim
7088
7089Patch 6.1.099
7090Problem:    Memory corrupted when closing a fold with more than 99999 lines.
7091Solution:   Allocate more space for the fold text. (Walter Briscoe)
7092Files:	    src/eval.c
7093
7094Patch 6.1.100 (extra, depends on 6.1.088)
7095Problem:    Win32: VC5 and earlier don't support the /mapinfo option.
7096Solution:   Add "/mapinfo" only when "MAP=lines" is specified. (Muraoka Taro)
7097Files:	    src/Make_mvc.mak
7098
7099Patch 6.1.101
7100Problem:    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.
7103Solution:   Use ":setlocal" instead of ":set".  Change "aw" to "awa".
7104	    Don't map space in Insert mode.
7105Files:	    runtime/optwin.vim
7106
7107Patch 6.1.102
7108Problem:    Unprintable and multi-byte characters in a statusline item are not
7109	    truncated correctly. (Yasuhiro Matsumoto)
7110Solution:   Count the width of characters instead of the number of bytes.
7111Files:	    src/buffer.c
7112
7113Patch 6.1.103
7114Problem:    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.
7118Solution:   Move the verbose message about returning from a function to
7119	    call_func(). (Servatius Brandt)
7120Files:	    src/eval.c
7121
7122Patch 6.1.104
7123Problem:    GCC 3.1 appears to have an optimizer problem that makes test 3
7124	    crash.
7125Solution:   For GCC 3.1 add -fno-strength-reduce to avoid the optimizer bug.
7126	    Filter out extra info from "gcc --version".
7127Files:	    src/auto/configure, src/configure.in
7128
7129Patch 6.1.105
7130Problem:    Win32: The default for 'shellpipe' doesn't redirect stderr. (Dion
7131	    Nicolaas)
7132Solution:   Redirect stderr, depending on the shell (like for 'shellredir').
7133Files:	    src/option.c
7134
7135Patch 6.1.106
7136Problem:    The maze program crashes.
7137Solution:   Change "11" to "27" and it works. (Greg Roelofs)
7138Files:	    runtime/macros/maze/mazeansi.c
7139
7140Patch 6.1.107
7141Problem:    When 'list' is set the current line in the error window may be
7142	    displayed wrong. (Muraoka Taro)
7143Solution:   Don't continue the line after the $ has been displayed and the
7144	    rightmost column is reached.
7145Files:	    src/screen.c
7146
7147Patch 6.1.108
7148Problem:    When interrupting a filter command such as "!!sleep 20" the file
7149	    becomes read-only. (Mark Brader)
7150Solution:   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.
7153Files:	    src/ex_cmds.c, src/fileio.c
7154
7155Patch 6.1.109
7156Problem:    When 'eadirection' is "hor", using CTRL-W = doesn't equalize the
7157	    window heights. (Roman Neuhauser)
7158Solution:   Ignore 'eadirection' for CTRL-W =
7159Files:	    src/window.c
7160
7161Patch 6.1.110
7162Problem:    When using ":badd file" when "file" is already present but not
7163	    listed, it stays unlisted. (David Frey)
7164Solution:   Set 'buflisted'.
7165Files:	    src/buffer.c
7166
7167Patch 6.1.111
7168Problem:    It's not possible to detect using the Unix sources on Win32 or Mac.
7169Solution:   Add has("macunix") and has("win32unix").
7170Files:	    runtime/doc/eval.txt, src/eval.c
7171
7172Patch 6.1.112
7173Problem:    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.
7176Solution:   Only remember the cursor position from before the ":argdo",
7177	    ":bufdo" and ":windo".
7178Files:	    src/ex_cmds2.c, src/mark.c
7179
7180Patch 6.1.113
7181Problem:    ":bufdo bwipe" only wipes out half the buffers.  (Roman Neuhauser)
7182Solution:   Decide what buffer to go to next before executing the command.
7183Files:	    src/ex_cmds2.c
7184
7185Patch 6.1.114
7186Problem:    ":python import vim", ":python vim.current.buffer[0:0] = []" gives
7187	    a lalloc(0) error. (Chris Southern)
7188Solution:   Don't allocate an array when it's size is zero.
7189Files:	    src/if_python.c
7190
7191Patch 6.1.115
7192Problem:    "das" on the white space at the end of a paragraph does not delete
7193	    the "." the sentence ends with.
7194Solution:   Don't exclude the last character when it is not white space.
7195Files:	    src/search.c
7196
7197Patch 6.1.116
7198Problem:    When 'endofline' is changed while 'binary' is set a file should be
7199	    considered modified. (Olaf Buddenhagen)
7200Solution:   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.
7204Files:	    src/option.c, src/structs.h
7205
7206Patch 6.1.117
7207Problem:    Small problem with editing a file over ftp: and with Cygwin.
7208Solution:   Remove a dot from a ":normal" command.  Use "cygdrive" where
7209	    appropriate.  (Charles Campbell)
7210Files:	    runtime/plugin/netrw.vim
7211
7212Patch 6.1.118
7213Problem:    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)
7216Solution:   After reloading a file in diff mode mark all windows in diff mode
7217	    for redraw.
7218Files:	    src/diff.c
7219
7220Patch 6.1.119 (extra)
7221Problem:    With the Sniff interface, using Sniff 4.0.X on HP-UX, there may be
7222	    a crash when connecting to Sniff.
7223Solution:   Initialize sniff_rq_sep such that its value can be changed.
7224	    (Martin Egloff)
7225Files:	    src/if_sniff.c
7226
7227Patch 6.1.120 (depends on 6.1.097)
7228Problem:    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)
7230Solution:   Adjust the first line to the start of a fold.
7231Files:	    src/move.c
7232
7233Patch 6.1.121 (depends on 6.1.098)
7234Problem:    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)
7237Solution:   Set the cursor for Insert mode one character to the right.
7238Files:	    runtime/menu.vim
7239
7240Patch 6.1.122
7241Problem:    ":file name" creates a new buffer to hold the old buffer name,
7242	    which becomes the alternate file.  This buffer is unexpectedly
7243	    listed.
7244Solution:   Create the buffer for the alternate name unlisted.
7245Files:	    src/ex_cmds.c
7246
7247Patch 6.1.123
7248Problem:    A ":match" command with more than one argument doesn't report an
7249	    error.
7250Solution:   Check for extra characters. (Servatius Brandt)
7251Files:	    src/ex_docmd.c
7252
7253Patch 6.1.124
7254Problem:    When trying to exit and there is a hidden buffer that had 'eol'
7255	    off and 'bin' set exiting isn't possible. (John McGowan)
7256Solution:   Set b_start_eol when clearing the buffer.
7257Files:	    src/buffer.c
7258
7259Patch 6.1.125
7260Problem:    Explorer plugin asks for saving a modified buffer even when it's
7261	    open in another window as well.
7262Solution:   Count the number of windows using the buffer.
7263Files:	    runtime/plugin/explorer.vim
7264
7265Patch 6.1.126
7266Problem:    Adding the choices in the syntax menu is consuming much of the
7267	    startup time of the GUI while it's not often used.
7268Solution:   Only add the choices when the user wants to use them.
7269Files:	    Makefile, runtime/makemenu.vim, runtime/menu.vim,
7270	    runtime/synmenu.vim, src/Makefile
7271
7272Patch 6.1.127
7273Problem:    When using "--remote file" and the server has 'insertmode' set,
7274	    commands are inserted instead of being executed. (Niklas Volbers)
7275Solution:   Go to Normal mode again after the ":drop" command.
7276Files:	    src/main.c
7277
7278Patch 6.1.128
7279Problem:    The expression "input('very long prompt')" puts the cursor in the
7280	    wrong line (column is OK).
7281Solution:   Add the wrapped lines to the indent. (Yasuhiro Matsumoto)
7282Files:	    src/ex_getln.c
7283
7284Patch 6.1.129
7285Problem:    On Solaris editing "file/" and then "file" results in using the
7286	    same buffer.  (Jim Battle)
7287Solution:   Before using stat(), check that there is no illegal trailing
7288	    slash.
7289Files:	    src/auto/configure, src/config.h.in, src/configure.in,
7290	    src/macros.h src/misc2.c, src/proto/misc2.pro
7291
7292Patch 6.1.130
7293Problem:    The documentation for some of the 'errorformat' items is unclear.
7294Solution:   Add more examples and explain hard to understand items. (Stefan
7295	    Roemer)
7296Files:	    runtime/doc/quickfix.txt
7297
7298Patch 6.1.131
7299Problem:    X11 GUI: when expanding a CSI byte in the input stream to K_CSI,
7300	    the CSI byte itself isn't copied.
7301Solution:   Copy the CSI byte.
7302Files:	    src/gui_x11.c
7303
7304Patch 6.1.132
7305Problem:    Executing a register in Ex mode may cause commands to be skipped.
7306	    (John McGowan)
7307Solution:   In Ex mode use an extra check if the register contents was
7308	    consumed, to avoid input goes into the typeahead buffer.
7309Files:	    src/ex_docmd.c
7310
7311Patch 6.1.133
7312Problem:    When drawing double-wide characters in the statusline, may clear
7313	    half of a character. (Yasuhiro Matsumoto)
7314Solution:   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.
7317Files:	    src/screen.c
7318
7319Patch 6.1.134
7320Problem:    An error for a trailing argument of ":match" should not be given
7321	    after ":if 0". (Servatius Brandt)
7322Solution:   Only do the check when executing commands.
7323Files:	    src/ex_docmd.c
7324
7325Patch 6.1.135
7326Problem:    Passing a command to the shell that includes a newline always has
7327	    a backslash before the newline.
7328Solution:   Remove one backslash before the newline.  (Servatius Brandt)
7329Files:	    src/ex_docmd.c
7330
7331Patch 6.1.136
7332Problem:    When $TERM is "linux" the default for 'background' is "dark", even
7333	    though the GUI uses a light background. (Hugh Allen)
7334Solution:   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.
7337Files:	    src/option.c
7338
7339Patch 6.1.137
7340Problem:    Converting to HTML has a clumsy way of dealing with tabs which may
7341	    change the highlighting.
7342Solution:   Replace tabs with spaces after converting a line to HTML. (Preben
7343	    Guldberg)
7344Files:	    runtime/syntax/2html.vim
7345
7346Patch 6.1.138 (depends on 6.1.126)
7347Problem:    Adding extra items to the Syntax menu can't be done when the "Show
7348	    individual choices" menu is used.
7349Solution:   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.
7352Files:	    runtime/menu.vim
7353
7354Patch 6.1.139
7355Problem:    Cygwin: PATH_MAX is not defined.
7356Solution:   Include limits.h. (Dan Sharp)
7357Files:	    src/main.c
7358
7359Patch 6.1.140
7360Problem:    Cygwin: ":args `ls *.c`" does not work if the shell command
7361	    produces CR NL line separators.
7362Solution:   Remove the CR characters ourselves. (Pavol Juhas)
7363Files:	    src/os_unix.c
7364
7365Patch 6.1.141
7366Problem:    ":wincmd gx" may cause problems when mixed with other commands.
7367	    ":wincmd c" doesn't close the window immediately. (Benji Fisher)
7368Solution:   Pass the extra command character directly instead of using the
7369	    stuff buffer and call ex_close() directly.
7370Files:	    src/ex_docmd.c, src/normal.c, src/proto/normal.pro,
7371	    src/proto/window.pro, src/window.c
7372
7373Patch 6.1.142
7374Problem:    Defining paragraphs without a separating blank line isn't
7375	    possible.  Paragraphs can't be formatted automatically.
7376Solution:   Allow defining paragraphs with lines that end in white space.
7377	    Added the 'w' and 'a' flags in 'formatoptions'.
7378Files:	    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
7381
7382Patch 6.1.143 (depends on 6.1.142)
7383Problem:    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.
7386Solution:   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.
7389Files:	    src/edit.c, src/ops.c, src/normal.c
7390
7391Patch 6.1.144
7392Problem:    Obtaining the size of a line in screen characters can be wrong.
7393	    A pointer may wrap around zero.
7394Solution:   In win_linetabsize() check for a MAXCOL length argument. (Jim
7395	    Dunleavy)
7396Files:	    src/charset.c
7397
7398Patch 6.1.145
7399Problem:    GTK: Drag&drop with more than 3 files may cause a crash. (Mickael
7400	    Marchand)
7401Solution:   Rewrite the code that parses the received list of files to be more
7402	    robust.
7403Files:	    src/charset.c, src/gui_gtk_x11.c
7404
7405Patch 6.1.146
7406Problem:    MS-Windows: When $HOME is constructed from $HOMEDRIVE and
7407	    $HOMEPATH, it is not used for storing the _viminfo file.  (Normal
7408	    Diamond)
7409Solution:   Set $HOME with the value obtained from $HOMEDRIVE and $HOMEPATH.
7410Files:	    src/misc1.c
7411
7412Patch 6.1.147 (extra)
7413Problem:    MS-Windows: When a dialog has no default button, pressing Enter
7414	    ends it anyway and all buttons are selected.
7415Solution:   Don't end a dialog when there is no default button.  Don't select
7416	    all button when there is no default. (Vince Negri)
7417Files:	    src/gui_w32.c
7418
7419Patch 6.1.148 (extra)
7420Problem:    MS-Windows: ACL is not properly supported.
7421Solution:   Add an access() replacement that also works for ACL. (Mike
7422	    Williams)
7423Files:	    runtime/doc/editing.txt, src/os_win32.c
7424
7425Patch 6.1.149 (extra)
7426Problem:    MS-Windows: Can't use diff mode from the file explorer.
7427Solution:   Add a "diff with Vim" context menu entry. (Dan Sharp)
7428Files:	    GvimExt/gvimext.cpp, GvimExt/gvimext.h
7429
7430Patch 6.1.150
7431Problem:    OS/2, MS-Windows and MS-DOS: When 'shellslash' is set getcwd()
7432	    still uses backslash. (Yegappan Lakshmanan)
7433Solution:   Adjust slashes in getcwd().
7434Files:	    src/eval.c
7435
7436Patch 6.1.151 (extra)
7437Problem:    Win32: The NTFS substream isn't copied.
7438Solution:   Copy the substream when making a backup copy. (Muraoka Taro)
7439Files:	    src/fileio.c, src/os_win32.c, src/proto/os_win32.pro
7440
7441Patch 6.1.152
7442Problem:    When $LANG is iso8859-1 translated menus are not used.
7443Solution:   Change iso8859 to iso_8859.
7444Files:	    runtime/menu.vim
7445
7446Patch 6.1.153
7447Problem:    Searching in included files may search recursively when the path
7448	    starts with "../".  (Sven Berkvens-Matthijsse)
7449Solution:   Compare full file names, use inode/device when possible.
7450Files:	    src/search.c
7451
7452Patch 6.1.154 (extra)
7453Problem:    DJGPP: "vim -h" leaves the cursor in a wrong position.
7454Solution:   Don't position the cursor using uninitialized variables. (Jim
7455	    Dunleavy)
7456Files:	    src/os_msdos.c
7457
7458Patch 6.1.155
7459Problem:    Win32: Cursor may sometimes disappear in Insert mode.
7460Solution:   Change "hor10" in 'guicursor' to "hor15". (Walter Briscoe)
7461Files:	    src/option.c
7462
7463Patch 6.1.156
7464Problem:    Conversion between DBCS and UCS-2 isn't implemented cleanly.
7465Solution:   Clean up a few things.
7466Files:	    src/mbyte.c, src/structs.h
7467
7468Patch 6.1.157
7469Problem:    'hlsearch' highlights only the second comma in ",,,,," with
7470	    "/,\@<=[^,]*". (Preben Guldberg)
7471Solution:   Also check for an empty match to start just after a previous
7472	    match.
7473Files:	    src/screen.c
7474
7475Patch 6.1.158
7476Problem:    "zs" and "ze" don't work correctly with ":set nowrap siso=1".
7477	    (Preben Guldberg)
7478Solution:   Take 'siso' into account when computing the horizontal scroll
7479	    position for "zs" and "ze".
7480Files:	    src/normal.c
7481
7482Patch 6.1.159
7483Problem:    When expanding an abbreviation that includes a multi-byte
7484	    character too many characters are deleted. (Andrey Urazov)
7485Solution:   Delete the abbreviation counting characters instead of bytes.
7486Files:	    src/getchar.c
7487
7488Patch 6.1.160
7489Problem:    ":$read file.gz" doesn't work. (Preben Guldberg)
7490Solution:   Don't use the '[ mark after it has become invalid.
7491Files:	    runtime/plugin/gzip.vim
7492
7493Patch 6.1.161 (depends on 6.1.158)
7494Problem:    Warning for signed/unsigned compare.  Can set 'siso' to a negative
7495	    value. (Mike Williams)
7496Solution:   Add a typecast.  Add a check for 'siso' being negative.
7497Files:	    src/normal.c, src/option.c
7498
7499Patch 6.1.162
7500Problem:    Python interface: Didn't initialize threads properly.
7501Solution:   Call PyEval_InitThreads() when starting up.
7502Files:	    src/if_python.c
7503
7504Patch 6.1.163
7505Problem:    Win32: Can't compile with Python after 6.1.162.
7506Solution:   Dynamically load  PyEval_InitThreads(). (Dan Sharp)
7507Files:	    src/if_python.c
7508
7509Patch 6.1.164
7510Problem:    If 'modifiable' is off, converting to xxd fails and 'filetype' is
7511	    changed to "xxd" anyway.
7512Solution:   Don't change 'filetype' when conversion failed.
7513Files:	    runtime/menu.vim
7514
7515Patch 6.1.165
7516Problem:    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)
7519Solution:   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.
7522Files:	    src/undo.c
7523
7524Patch 6.1.166
7525Problem:    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)
7528Solution:   First insert an "x" and delete it again, so that the auto-indent
7529	    remains.
7530Files:	    runtime/mswin.vim
7531
7532Patch 6.1.167
7533Problem:    When giving a negative argument to ":retab" strange things start
7534	    happening. (Hans Ginzel)
7535Solution:   Check for a negative value.
7536Files:	    src/ex_cmds.c
7537
7538Patch 6.1.168
7539Problem:    Pressing CTRL-C at the hit-enter prompt doesn't end the prompt.
7540Solution:   Make CTRL-C stop the hit-enter prompt.
7541Files:	    src/message.c
7542
7543Patch 6.1.169
7544Problem:    bufexists() finds a buffer by using the name of a symbolic link to
7545	    it, but bufnr() doesn't. (Yegappan Lakshmanan)
7546Solution:   When bufnr() can't find a buffer, try using the same method as
7547	    bufexists().
7548Files:	    src/eval.c
7549
7550Patch 6.1.170
7551Problem:    Using ":mksession" uses the default session file name, but "vim
7552	    -S" doesn't. (Hans Ginzel)
7553Solution:   Use the default session file name if "-S" is the last command
7554	    line argument or another option follows.
7555Files:	    runtime/doc/starting.txt, src/main.c
7556
7557Patch 6.1.171
7558Problem:    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)
7561Solution:   Update the flag that indicates the cursor is in a closed fold.
7562Files:	    src/misc1.c
7563
7564Patch 6.1.172
7565Problem:    Command line completion of ":tag /pat" does not show the same
7566	    results as the tags the command actually finds. (Gilles Roy)
7567Solution:   Don't modify the pattern to make it a regexp.
7568Files:	    src/ex_getln.c, src/tag.c
7569
7570Patch 6.1.173
7571Problem:    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.
7574Solution:   Don't split the window, keep editing the same buffer.
7575	    Use the ":drop" command in VisVim to avoid the problem there.
7576Files:	    src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
7577	    VisVim/Commands.cpp
7578
7579Patch 6.1.174
7580Problem:    It is difficult to know in a script whether an option not only
7581	    exists but really works.
7582Solution:   Add "exists('+option')".
7583Files:	    runtime/doc/eval.txt, src/eval.c
7584
7585Patch 6.1.175
7586Problem:    When reading commands from a pipe and a CTRL-C is pressed, Vim
7587	    will hang. (Piet Delport)
7588Solution:   Don't keep reading characters to clear typeahead when an interrupt
7589	    was detected, stop when a single CTRL-C is read.
7590Files:	    src/getchar.c, src/ui.c
7591
7592Patch 6.1.176
7593Problem:    When the stack limit is very big a false out-of-stack error may
7594	    be detected.
7595Solution:   Add a check for overflow of the stack limit computation. (Jim
7596	    Dunleavy)
7597Files:	    src/os_unix.c
7598
7599Patch 6.1.177 (depends on 6.1.141)
7600Problem:    ":wincmd" does not allow a following command. (Gary Johnson)
7601Solution:   Check for a following " | cmd".  Also give an error for trailing
7602	    characters.
7603Files:	    src/ex_docmd.c
7604
7605Patch 6.1.178
7606Problem:    When 'expandtab' is set "r<C-V><Tab>" still expands the Tab.
7607	    (Bruce deVisser)
7608Solution:   Replace with a literal Tab.
7609Files:	    src/normal.c
7610
7611Patch 6.1.179 (depends on 6.1.091)
7612Problem:    When using X11R5 XIMPreserveState is undefined. (Albert Chin)
7613Solution:   Include the missing definitions.
7614Files:	    src/mbyte.c
7615
7616Patch 6.1.180
7617Problem:    Use of the GUI code for forking is inconsistent.
7618Solution:   Define MAY_FORK and use it for later #ifdefs. (Ben Fowlwer)
7619Files:	    src/gui.c
7620
7621Patch 6.1.181
7622Problem:    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)
7624Solution:   Don't output a space to mark the wrap, but the same character
7625	    again.
7626Files:	    src/screen.c
7627
7628Patch 6.1.182 (depends on 6.1.142)
7629Problem:    It is not possible to auto-format comments only. (Moshe Kaminsky)
7630Solution:   When the 'a' and 'c' flags are in 'formatoptions' only auto-format
7631	    comments.
7632Files:	    runtime/doc/change.txt, src/edit.c
7633
7634Patch 6.1.183
7635Problem:    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.
7639Solution:   For this specific error use "ILLEGAL BYTE" and don't set
7640	    'readonly'.
7641Files:	    src/fileio.c
7642
7643Patch 6.1.184 (extra)
7644Problem:    The extra mouse buttons found on some mice don't work.
7645Solution:   Support two extra buttons for MS-Windows. (Michael Geddes)
7646Files:	    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
7649
7650Patch 6.1.185 (depends on 6.1.182)
7651Problem:    Can't compile without +comments feature.
7652Solution:   Add #ifdef FEAT_COMMENTS. (Christian J. Robinson)
7653Files:	    src/edit.c
7654
7655Patch 6.1.186 (depends on 6.1.177)
7656Problem:    ":wincmd" does not allow a following comment. (Aric Blumer)
7657Solution:   Check for a following double quote.
7658Files:	    src/ex_docmd.c
7659
7660Patch 6.1.187
7661Problem:    Using ":doarg" with 'hidden' set and the current file is the only
7662	    argument and was modified gives an error message. (Preben
7663	    Guldberg)
7664Solution:   Don't try re-editing the same file.
7665Files:	    src/ex_cmds2.c
7666
7667Patch 6.1.188 (depends on 6.1.173)
7668Problem:    Unused variable in the small version.
7669Solution:   Move the declaration for "p" inside #ifdef FEAT_LISTCMDS.
7670Files:	    src/ex_cmds2.c
7671
7672Patch 6.1.189
7673Problem:    inputdialog() doesn't work when 'c' is in 'guioptions'. (Aric
7674	    Blumer)
7675Solution:   Fall back to the input() function in this situation.
7676Files:	    src/eval.c
7677
7678Patch 6.1.190 (extra)
7679Problem:    VMS: doesn't build with GTK GUI.  Various other problems.
7680Solution:   Fix building for GTK.  Improved Perl, Python and TCL support.
7681	    Improved VMS documentation. (Zoltan Arpadffy)
7682	    Added Vimtutor for VMS (T. R. Wyant)
7683Files:	    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
7687
7688Patch 6.1.191
7689Problem:    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.
7692Solution:   Don't delay when reading commands from a script.
7693Files:	    src/main.c
7694
7695Patch 6.1.192
7696Problem:    ":diffsplit" doesn't add "hor" to 'scrollopt'. (Gary Johnson)
7697Solution:   Add "hor" to 'scrollopt' each time ":diffsplit" is used.
7698Files:	    src/diff.c, src/main.c
7699
7700Patch 6.1.193
7701Problem:    Crash in in_id_list() for an item with a "containedin" list. (Dave
7702	    Fishburn)
7703Solution:   Check for a negative syntax id, used for keywords.
7704Files:	    src/syntax.c
7705
7706Patch 6.1.194
7707Problem:    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.
7710Solution:   Scroll the text up in the Vim page before swapping to the terminal
7711	    page. (Michael Schroeder)
7712Files:	    src/os_unix.c
7713
7714Patch 6.1.195
7715Problem:    The quickfix and preview windows always keep their height, while
7716	    other windows can't fix their height.
7717Solution:   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.
7720Files:	    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
7723
7724Patch 6.1.196  (depends on 6.1.084)
7725Problem:    On Mac OS X 10.2 generating osdef.h fails.
7726Solution:   Add -no-cpp-precomp to avoid using precompiled header files, which
7727	    disables printing the search path. (Ben Fowler)
7728Files:	    src/auto/configure, src/configure.in
7729
7730Patch 6.1.197
7731Problem:    ":help <C-V><C-\><C-V><C-N>" (resulting in <1c><0e>) gives an
7732	    error message. (Servatius Brandt)
7733Solution:   Double the backslash in "CTRL-\".
7734Files:	    src/ex_cmds.c
7735
7736Patch 6.1.198 (extra) (depends on 6.1.076)
7737Problem:    Mac OS X: Dialogues don't work.
7738Solution:   Fix a crashing problem for some GUI dialogues.  Fix a problem when
7739	    saving to a new file from the GUI. (Peter Cucka)
7740Files:	    src/feature.h, src/gui_mac.c
7741
7742Patch 6.1.199
7743Problem:    'guifontwide' doesn't work on Win32.
7744Solution:   Output each wide character separately. (Michael Geddes)
7745Files:	    src/gui.c
7746
7747Patch 6.1.200
7748Problem:    ":syn sync fromstart" is not skipped after ":if 0".  This can make
7749	    syntax highlighting very slow.
7750Solution:   Check "eap->skip" appropriately. (Rob West)
7751Files:	    src/syntax.c
7752
7753Patch 6.1.201 (depends on 6.1.192)
7754Problem:    Warning for illegal pointer combination. (Zoltan Arpadffy)
7755Solution:   Add a typecast.
7756Files:	    src/diff.c
7757
7758Patch 6.1.202  (extra)(depends on 6.1.148)
7759Problem:    Win32: filewritable() doesn't work properly on directories.
7760Solution:   fix filewritable(). (Mike Williams)
7761Files:	    src/os_win32.c
7762
7763Patch 6.1.203
7764Problem:    ":%s/~//" causes a crash after ":%s/x//". (Gary Holloway)
7765Solution:   Avoid reading past the end of a line when "~" is empty.
7766Files:	    src/regexp.c
7767
7768Patch 6.1.204 (depends on 6.1.129)
7769Problem:    Warning for an illegal pointer on Solaris.
7770Solution:   Add a typecast. (Derek Wyatt)
7771Files:	    src/misc2.c
7772
7773Patch 6.1.205
7774Problem:    The gzip plugin changes the alternate file when editing a
7775	    compressed file. (Oliver Fuchs)
7776Solution:   Temporarily remove the 'a' and 'A' flags from 'cpo'.
7777Files:	    runtime/plugin/gzip.vim
7778
7779Patch 6.1.206
7780Problem:    The script generated with ":mksession" doesn't work properly when
7781	    some commands are mapped.
7782Solution:   Use ":normal!" instead of ":normal".  And use ":wincmd" where
7783	    possible. (Muraoka Taro)
7784Files:	    src/ex_docmd.c, src/fold.c
7785
7786Patch 6.1.207
7787Problem:    Indenting a Java file hangs below a line with a comment after a
7788	    command.
7789Solution:   Break out of a loop. (Andre Pang)
7790	    Also line up } with matching {.
7791Files:	    runtime/indent/java.vim
7792
7793Patch 6.1.208
7794Problem:    Can't use the buffer number from the Python interface.
7795Solution:   Add buffer.number. (Michal Vitecek)
7796Files:	    src/if_python.c
7797
7798Patch 6.1.209
7799Problem:    Printing doesn't work on Mac OS classic.
7800Solution:   Use a ":" for path separator when opening the resource file. (Axel
7801	    Kielhorn)
7802Files:	    src/ex_cmds2.c
7803
7804Patch 6.1.210
7805Problem:    When there is an iconv() conversion error when reading a file
7806	    there can be an error the next time iconv() is used.
7807Solution:   Reset the state of the iconv() descriptor. (Yasuhiro Matsumoto)
7808Files:	    src/fileio.c
7809
7810Patch 6.1.211
7811Problem:    The message "use ! to override" is confusing.
7812Solution:   Make it "add ! to override".
7813Files:	    src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
7814	    src/globals.h
7815
7816Patch 6.1.212
7817Problem:    When Vim was started with "-R" ":new" creates a buffer
7818	    'noreadonly' while ":enew" has 'readonly' set. (Preben Guldberg)
7819Solution:   Don't set 'readonly in a new empty buffer for ":enew".
7820Files:	    src/ex_docmd.c
7821
7822Patch 6.1.213
7823Problem:    Using CTRL-W H may cause a big gap to appear below the last
7824	    window. (Aric Blumer)
7825Solution:   Don't set the window height when there is a vertical split.
7826	    (Yasuhiro Matsumoto)
7827Files:	    src/window.c
7828
7829Patch 6.1.214
7830Problem:    When installing Vim and the runtime files were checked out from
7831	    CVS the CVS directories will also be installed.
7832Solution:   Avoid installing the CVS dirs and their contents.
7833Files:	    src/Makefile
7834
7835Patch 6.1.215
7836Problem:    Win32: ":pwd" uses backslashes even when 'shellslash' is set.
7837	    (Xiangjiang Ma)
7838Solution:   Adjust backslashes before printing the message.
7839Files:	    src/ex_docmd.c
7840
7841Patch 6.1.216
7842Problem:    When dynamically loading the iconv library, the error codes may be
7843	    confused.
7844Solution:   Use specific error codes for iconv and redefine them for dynamic
7845	    loading. (Yasuhiro Matsumoto)
7846Files:	    src/fileio.c, src/mbyte.c, src/vim.h
7847
7848Patch 6.1.217
7849Problem:    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)
7852Solution:   Turn the script name into a full path before using it.  On Unix
7853	    compare inode/device numbers.
7854Files:	    src/ex_cmds2.c
7855
7856Patch 6.1.218
7857Problem:    No error message for using the function argument "5+".  (Servatius
7858	    Brandt)
7859Solution:   Give an error message if a function or variable is expected but is
7860	    not found.
7861Files:	    src/eval.c
7862
7863Patch 6.1.219
7864Problem:    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)
7867Solution:   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".
7870Files:	    src/edit.c, src/ex_getln.c, src/normal.c
7871
7872Patch 6.1.220
7873Problem:    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)
7876Solution:   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.
7879Files:	    src/buffer.c, src/ex_cmds.c, src/fileio.c, src/globals.h,
7880	    src/proto/buffer.pro
7881
7882Patch 6.1.221
7883Problem:    Changing case may not work properly, depending on the current
7884	    locale.
7885Solution:   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.
7889Files:	    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
7898
7899Patch 6.1.222 (depends on 6.1.219)
7900Problem:    Patch 6.1.219 was incomplete.
7901Solution:   Add the changes for ":amenu".
7902Files:	    src/menu.c
7903
7904Patch 6.1.223 (extra)
7905Problem:    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)
7909Solution:   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.
7913Files:	    src/edit.c, src/ex_getln.c, src/gui_w32.c, src/normal.c
7914
7915Patch 6.1.224
7916Problem:    "expand('$VAR')" returns an empty string when the expanded $VAR
7917	    is not an existing file. (Aric Blumer)
7918Solution:   Included non-existing files, as documented.
7919Files:	    src/eval.c
7920
7921Patch 6.1.225
7922Problem:    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.
7926Solution:   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).
7929Files:	    src/buffer.c
7930
7931Patch 6.1.226
7932Problem:    Using ":debug" with a ":normal" command may cause a hang.  (Colin
7933	    Keith)
7934Solution:   Save the typeahead buffer when obtaining a debug command.
7935Files:	    src/ex_cmds2.c, src/getchar.c, src/proto/getchar.pro
7936
7937Patch 6.1.227
7938Problem:    It is possible to use a variable name "asdf:asdf" and ":let j:asdf
7939	    = 5" does not give an error message. (Mikolaj Machowski)
7940Solution:   Check for a ":" inside the variable name.
7941Files:	    src/eval.c
7942
7943Patch 6.1.228 (extra)
7944Problem:    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.
7948Solution:   Remove HanExtTextOut().  Delete the dead code around
7949	    bInComposition and ImeGetTempComposition().
7950Files:	    src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7951
7952Patch 6.1.229
7953Problem:    Win32: Conversion to/from often used codepages requires the iconv
7954	    library, which is not always available.
7955Solution:   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.
7958Files:	    src/fileio.c
7959
7960Patch 6.1.230 (extra)
7961Problem:    Win16: building doesn't work.
7962Solution:   Exclude the XBUTTON handling. (Vince Negri)
7963Files:	    src/gui_w48.c
7964
7965Patch 6.1.231
7966Problem:    Double clicking with the mouse to select a word does not work for
7967	    multi-byte characters.
7968Solution:   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.
7972Files:	    src/normal.c
7973
7974Patch 6.1.232 (depends on 6.1.226)
7975Problem:    Using ex_normal_busy while it might not be available. (Axel
7976	    Kielhorn)
7977Solution:   Only use ex_normal_busy when FEAT_EX_EXTRA is defined.
7978Files:	    src/ex_cmds2.c
7979
7980Patch 6.1.233
7981Problem:    ":help expr-||" does not work.
7982Solution:   Don't use the '|' as a command separator
7983Files:	    src/ex_cmds.c
7984
7985Patch 6.1.234 (depends on 6.1.217)
7986Problem:    Get a warning for using a negative value for st_dev.
7987Solution:   Don't assign a negative value to st_dev.
7988Files:	    src/ex_cmds2.c
7989
7990Patch 6.1.235 (depends on 6.1.223)
7991Problem:    'iminsert' is changed from 1 to 2 when leaving Insert mode. (Peter
7992	    Valach)
7993Solution:   Check "State" before resetting it to NORMAL.
7994Files:	    src/edit.c
7995
7996Patch 6.1.236
7997Problem:    Memory leaks when appending lines for ":diffget" or ":diffput" and
7998	    when reloading a changed buffer.
7999Solution:   Free a line after calling ml_append().
8000Files:	    src/diff.c, src/fileio.c
8001
8002Patch 6.1.237
8003Problem:    Putting in Visual block mode does not work correctly when "$" was
8004	    used or when the first line is short.  (Christian Michon)
8005Solution:   First delete the selected text and then put the new text.  Save
8006	    and restore registers as necessary.
8007Files:	    src/globals.h, src/normal.c, src/ops.c, src/proto/ops.pro,
8008	    src/vim.h
8009
8010Patch 6.1.238 (extra)
8011Problem:    Win32: The "icon=" argument for the ":menu" command does not
8012	    search for the bitmap file.
8013Solution:   Expand environment variables and search for the bitmap file.
8014	    (Vince Negri)
8015	    Make it consistent, use the same mechanism for X11 and GTK.
8016Files:	    src/gui.c src/gui_gtk.c, src/gui_w32.c, src/gui_x11.c,
8017	    src/proto/gui.pro
8018
8019Patch 6.1.239
8020Problem:    Giving an error for missing :endif or :endwhile when being
8021	    interrupted.
8022Solution:   Don't give these messages when interrupted.
8023Files:	    src/ex_docmd.c, src/os_unix.c
8024
8025Patch 6.1.240 (extra)
8026Problem:    Win32 with BCC 5: CPU may be defined in the environment, which
8027	    causes a wrong argument for the compiler. (Walter Briscoe)
8028Solution:   Use CPUNR instead of CPU.
8029Files:	    src/Make_bc5.mak
8030
8031Patch 6.1.241
8032Problem:    Something goes wrong when drawing or undrawing the cursor.
8033Solution:   Remember when the cursor invalid in a better way.
8034Files:	    src/gui.c
8035
8036Patch 6.1.242
8037Problem:    When pasting a large number of lines on the command line it is not
8038	    possible to interrupt. (Jean Jordaan)
8039Solution:   Check for an interrupt after each pasted line.
8040Files:	    src/ops.c
8041
8042Patch 6.1.243 (extra)
8043Problem:    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).
8046Solution:   Check if registering is possible before asking whether it should
8047	    be done. (Walter Briscoe)
8048	    Also avoid restarting Vim after registering.
8049Files:	    src/if_ole.cpp
8050
8051Patch 6.1.244
8052Problem:    Patch 6.1.237 was missing the diff for vim.h. (Igor Goldenberg)
8053Solution:   Include it here.
8054Files:	    src/vim.h
8055
8056Patch 6.1.245
8057Problem:    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)
8060Solution:   Handle ignore-case compare for Unicode differently.
8061Files:	    src/mbyte.c
8062
8063Patch 6.1.246
8064Problem:    ":blast" goes to the first buffer if the last one is unlisted.
8065	    (Andrew Stryker)
8066Solution:   From the last buffer search backwards for the first listed buffer
8067	    instead of forwards.
8068Files:	    src/ex_docmd.c
8069
8070Patch 6.1.247
8071Problem:    ACL support doesn't always work properly.
8072Solution:   Add a configure argument to disable ACL "--disable-acl". (Thierry
8073	    Vignaud)
8074Files:	    src/auto/configure, src/configure.in
8075
8076Patch 6.1.248
8077Problem:    Typing 'q' at the more-prompt for ":let" does not quit the
8078	    listing. (Hari Krishna Dara)
8079Solution:   Quit the listing when got_int is set.
8080Files:	    src/eval.c
8081
8082Patch 6.1.249
8083Problem:    Can't expand a path on the command line if it includes a "|" as a
8084	    trail byte of a multi-byte character.
8085Solution:   Check for multi-byte characters. (Yasuhiro Matsumoto)
8086Files:	    src/ex_docmd.c
8087
8088Patch 6.1.250
8089Problem:    When changing the value of 'lines' inside the expression set with
8090	    'diffexpr' Vim might crash. (Dave Fishburn)
8091Solution:   Don't allow changing the screen size while updating the screen.
8092Files:	    src/globals.h, src/option.c, src/screen.c
8093
8094Patch 6.1.251
8095Problem:    Can't use completion for ":lcd" and ":lchdir" like ":cd".
8096Solution:   Expand directory names for these commands. (Servatius Brandt)
8097Files:	    src/ex_docmd.c
8098
8099Patch 6.1.252
8100Problem:    "vi}" does not include a line break when the "}" is at the start
8101	    of a following line. (Kamil Burzynski)
8102Solution:   Include the line break.
8103Files:	    src/search.c
8104
8105Patch 6.1.253 (extra)
8106Problem:    Win32 with Cygwin: Changes the path of arguments in a wrong way.
8107	    (Xiangjiang Ma)
8108Solution:   Don't use cygwin_conv_to_posix_path() for the Win32 version.
8109	    Update the Cygwin makefile to support more features.  (Dan Sharp)
8110Files:	    src/Make_cyg.mak, src/if_ole.cpp, src/main.c
8111
8112Patch 6.1.254
8113Problem:    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.
8117Solution:   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.
8124Files:	    src/eval.c, src/ex_cmds.h, src/ex_docmd.c
8125
8126Patch 6.1.255 (depends on 6.1.254)
8127Problem:    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.
8132Solution:   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.
8135Files:	    src/eval.c
8136
8137Patch 6.1.256 (depends on 6.1.255)
8138Problem:    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".
8141Solution:   Check the "skip" flag.  Free the memory. (Servatius Brandt)
8142Files:	    src/eval.c
8143
8144Patch 6.1.257
8145Problem:    ":cwindow" always sets the previous window to the last but one
8146	    window.  (Benji Fisher)
8147Solution:   Set the previous window properly.
8148Files:	    src/globals.c, src/quickfix.c, src/window.c
8149
8150Patch 6.1.258
8151Problem:    Buffers menu doesn't work properly for multibyte buffer names.
8152Solution:   Use a pattern to get the left and right part of the name.
8153	    (Yasuhiro Matsumoto)
8154Files:	    runtime/menu.vim
8155
8156Patch 6.1.259 (extra)
8157Problem:    Mac: with 'patchmode' is used filenames are truncated.
8158Solution:   Increase the BASENAMELEN for Mac OS X. (Ed Ralston)
8159Files:	    src/os_mac.h
8160
8161Patch 6.1.260 (depends on 6.1.104)
8162Problem:    GCC 3.2 still seems to have an optimizer problem. (Zvi Har'El)
8163Solution:   Use the same configure check as used for GCC 3.1.
8164Files:	    src/auto/configure, src/configure.in
8165
8166Patch 6.1.261
8167Problem:    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)
8170Solution:   Don't adjust the cursor position when changing another buffer.
8171Files:	    src/if_perl.xs
8172
8173Patch 6.1.262
8174Problem:    When jumping over folds with "z[", "zj" and "zk" the previous
8175	    position is not remembered. (Hari Krishna Dara)
8176Solution:   Set the previous context mark before jumping.
8177Files:	    src/fold.c
8178
8179Patch 6.1.263
8180Problem:    When typing a multi-byte character that triggers an abbreviation
8181	    it is not inserted properly.
8182Solution:   Handle adding the typed multi-byte character. (Yasuhiro Matsumoto)
8183Files:	    src/getchar.c
8184
8185Patch 6.1.264 (depends on patch 6.1.254)
8186Problem:    exists() does not work for built-in functions. (Steve Wall)
8187Solution:   Don't check for the function name to start with a capital.
8188Files:	    src/eval.c
8189
8190Patch 6.1.265
8191Problem:    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)
8194Solution:   Don't allow using libcall(), rename(), delete(), remote_send() and
8195	    similar functions in the sandbox.
8196Files:	    src/eval.c
8197
8198Patch 6.1.266 (depends on 6.1.265)
8199Problem:    Win32: compile error in eval.c. (Bill McCarthy)
8200Solution:   Move a variable declaration.
8201Files:	    src/eval.c
8202
8203Patch 6.1.267
8204Problem:    Using "p" to paste into a Visual selected area may cause a crash.
8205Solution:   Allocate enough memory for saving the register contents. (Muraoka
8206	    Taro)
8207Files:	    src/ops.c
8208
8209Patch 6.1.268
8210Problem:    When triggering an abbreviation with a multi-byte character, this
8211	    character is not correctly inserted after expanding the
8212	    abbreviation. (Taro Muraoka)
8213Solution:   Add ABBR_OFF to all characters above 0xff.
8214Files:	    src/edit.c, src/ex_getln.c, src/getchar.c
8215
8216Patch 6.1.269
8217Problem:    After using input() text written with ":redir" gets extra indent.
8218	    (David Fishburn)
8219Solution:   Restore msg_col after using input().
8220Files:	    src/ex_getln.c
8221
8222Patch 6.1.270 (depends on 6.1.260)
8223Problem:    GCC 3.2.1 still seems to have an optimizer problem.
8224Solution:   Use the same configure check as used for GCC 3.1.
8225Files:	    src/auto/configure, src/configure.in
8226
8227Patch 6.1.271
8228Problem:    When compiling without the +syntax feature there are errors.
8229Solution:   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.
8232Files:	    src/ex_cmds2.c, src/regexp.c, src/testdir/test45.in
8233
8234Patch 6.1.272
8235Problem:    After using ":set define<" a crash may happen. (Christian Robinson)
8236Solution:   Make a copy of the option value in allocated memory.
8237Files:	    src/option.c
8238
8239Patch 6.1.273
8240Problem:    When the cursor doesn't blink, redrawing an exposed area may hide
8241	    the cursor.
8242Solution:   Always draw the cursor, also when it didn't move. (Muraoka Taro)
8243Files:	    src/gui.c
8244
8245Patch 6.1.274 (depends on 6.1.210)
8246Problem:    Resetting the iconv() state after each error is wrong for an
8247	    incomplete sequence.
8248Solution:   Don't reset the iconv() state.
8249Files:	    src/fileio.c
8250
8251Patch 6.1.275
8252Problem:    When using "v" in a startup script, get warning message that
8253	    terminal cannot highlight. (Charles Campbell)
8254Solution:   Only give the message after the terminal has been initialized.
8255Files:	    src/normal.c
8256
8257Patch 6.1.276
8258Problem:    "gvim --remote file" doesn't prompt for an encryption key.
8259Solution:   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".
8263Files:	    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
8266
8267Patch 6.1.277 (depends on 6.1.276)
8268Problem:    Compilation error when building with small features.
8269Solution:   Define trash_input_buf() when needed. (Kelvin Lee)
8270Files:	    src/ui.c
8271
8272Patch 6.1.278
8273Problem:    When using signs the line number of a closed fold doesn't line up
8274	    with the other line numbers. (Kamil Burzynski)
8275Solution:   Insert two spaces for the sign column.
8276Files:	    src/screen.c
8277
8278Patch 6.1.279
8279Problem:    The prototype for smsg() and smsg_attr() do not match the function
8280	    definition.  This may cause trouble for some compilers. (Nix)
8281Solution:   Use va_list for systems that have stdarg.h.  Use "int" instead of
8282	    "void" for the return type.
8283Files:	    src/auto/configure, src/config.h.in, src/configure.in,
8284	    src/proto.h, src/message.c
8285
8286Patch 6.1.280
8287Problem:    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)
8290Solution:   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.
8293Files:	    src/eval.c
8294
8295Patch 6.1.281
8296Problem:    In Insert mode CTRL-X CTRL-G leaves the cursor after the ruler.
8297Solution:   Set the cursor position before waiting for the argument of CTRL-G.
8298	    (Yasuhiro Matsumoto)
8299Files:	    src/edit.c
8300
8301Patch 6.1.282
8302Problem:    Elvis uses "se" in a modeline, Vim doesn't recognize this.
8303Solution:   Also accept "se " where "set " is accepted in a modeline.
8304	    (Yasuhiro Matsumoto)
8305Files:	    src/buffer.c
8306
8307Patch 6.1.283
8308Problem:    For ":sign" the icon file name cannot contain a space.
8309Solution:   Handle backslashes in the file name.  (Yasuhiro Matsumoto)
8310Files:	    src/ex_cmds.c
8311
8312Patch 6.1.284
8313Problem:    On Solaris there is a warning for "struct utimbuf".
8314Solution:   Move including "utime.h" to outside the function. (Derek Wyatt)
8315Files:	    src/fileio.c
8316
8317Patch 6.1.285
8318Problem:    Can't wipe out a buffer with 'bufhide' option.
8319Solution:   Add "wipe" value to 'bufhide'. (Yegappan Lakshmanan)
8320Files:	    runtime/doc/options.txt, src/buffer.c, src/option.c,
8321	    src/quickfix.c
8322
8323Patch 6.1.286
8324Problem:    'showbreak' cannot contain multi-byte characters.
8325Solution:   Allow using all printable characters for 'showbreak'.
8326Files:	    src/charset.c, src/move.c, src/option.c
8327
8328Patch 6.1.287 (depends on 6.1.285)
8329Problem:    Effect of "delete" and "wipe" in 'bufhide' were mixed up.
8330Solution:   Wipe out when wiping out is asked for.
8331Files:	    src/buffer.c
8332
8333Patch 6.1.288
8334Problem:    ":silent function F" hangs. (Hari Krishna Dara)
8335Solution:   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".
8338Files:	    src/eval.c
8339
8340Patch 6.1.289 (depends on 6.1.278)
8341Problem:    Compiler warning for pointer. (Axel Kielhorn)
8342Solution:   Add a typecast for "  ".
8343Files:	    src/screen.c
8344
8345Patch 6.1.290 (extra)
8346Problem:    Truncating long text for message box may break multi-byte
8347	    character.
8348Solution:   Adjust to start of multi-byte character. (Yasuhiro Matsumoto)
8349Files:	    src/os_mswin.c
8350
8351Patch 6.1.291 (extra)
8352Problem:    Win32: CTRL-@ doesn't work.  Don't even get a message for it.
8353Solution:   Recognize the keycode for CTRL-@. (Yasuhiro Matsumoto)
8354Files:	    src/gui_w48.c
8355
8356Patch 6.1.292 (extra, depends on 6.1.253)
8357Problem:    Win32: Can't compile with new MingW compiler.
8358	    Borland 5 makefile doesn't generate pathdef.c.
8359Solution:   Remove -wwide-multiply argument. (Rene de Zwart)
8360	    Various fixes for other problems in Win32 makefiles. (Dan Sharp)
8361Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
8362	    src/Make_mvc.mak
8363
8364Patch 6.1.293
8365Problem:    byte2line() returns a wrong result for some values.
8366Solution:   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.
8368Files:	    src/memline.c
8369
8370Patch 6.1.294
8371Problem:    Can't include a multi-byte character in a string by its hex value.
8372	    (Benji Fisher)
8373Solution:   Add "\u....": a character specified with up to four hex numbers
8374	    and stored according to the value of 'encoding'.
8375Files:	    src/eval.c
8376
8377Patch 6.1.295 (extra)
8378Problem:    Processing the cs.po file generates an error. (Rahul Agrawal)
8379Solution:   Fix the printf format characters in the translation.
8380Files:	    src/po/cs.po
8381
8382Patch 6.1.296
8383Problem:    Win32: When cancelling the font dialog 'guifont' remains set to
8384	    "*".
8385Solution:   Restore the old value of 'guifont' (Yasuhiro Matsumoto)
8386Files:	    src/option.c
8387
8388Patch 6.1.297
8389Problem:    "make test" fails in test6 in an UTF-8 environment. (Benji Fisher)
8390Solution:   Before executing the BufReadPost autocommands save the current
8391	    fileencoding, so that the file isn't marked changed.
8392Files:	    src/fileio.c
8393
8394Patch 6.1.298
8395Problem:    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)
8397Solution:   Don't redraw a sign inside a closed fold.
8398Files:	    src/screen.c
8399
8400Patch 6.1.299
8401Problem:    ":edit +set\ ro file" doesn't work.
8402Solution:   Halve the number of backslashes in the "+cmd" argument.
8403Files:	    src/ex_docmd.c
8404
8405Patch 6.1.300 (extra)
8406Problem:    Handling of ETO_IGNORELANGUAGE is confusing.
8407Solution:   Clean up the handling of ETO_IGNORELANGUAGE. (Glenn Maynard)
8408Files:	    src/gui_w32.c
8409
8410Patch 6.1.301 (extra)
8411Problem:    French translation of file-save dialog doesn't show file name.
8412Solution:   Insert a star in the printf string. (Francois Terrot)
8413Files:	    src/po/fr.po
8414
8415Patch 6.1.302
8416Problem:    Counting lines of the Visual area is incorrect for closed folds.
8417	    (Mikolaj Machowski)
8418Solution:   Correct the start and end for the closed fold.
8419Files:	    src/normal.c
8420
8421Patch 6.1.303 (extra)
8422Problem:    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.
8425Solution:   Use ETO_PDY to specify the width of each character. (Yasuhiro
8426	    Matsumoto)
8427Files:	    src/gui_w32.c
8428
8429Patch 6.1.304 (extra, depends on 6.1.292)
8430Problem:    Win32: Postscript is always enabled in the MingW Makefile.
8431	    Pathdef.c isn't generated properly with Make_bc5.mak. (Yasuhiro
8432	    Matsumoto)
8433Solution:   Change an ifdef to an ifeq. (Madoka Machitani)
8434	    Use the Borland make redirection to generate pathdef.c. (Maurice
8435	    Barnum)
8436Files:	    src/Make_bc5.mak, src/Make_ming.mak
8437
8438Patch 6.1.305
8439Problem:    When 'verbose' is 14 or higher, a function call may cause reading
8440	    uninitialized data. (Walter Briscoe)
8441Solution:   Check for end-of-string in trunc_string().
8442Files:	    src/message.c
8443
8444Patch 6.1.306
8445Problem:    The AIX VisualAge cc compiler doesn't define __STDC__.
8446Solution:   Use __EXTENDED__ like __STDC__. (Jess Thrysoee)
8447Files:	    src/os_unix.h
8448
8449Patch 6.1.307
8450Problem:    When a double-byte character has an illegal tail byte the display
8451	    is messed up. (Yasuhiro Matsumoto)
8452Solution:   Draw "XX" instead of the wrong character.
8453Files:	    src/screen.c
8454
8455Patch 6.1.308
8456Problem:    Can't reset the Visual mode returned by visualmode().
8457Solution:   Use an optional argument to visualmode(). (Charles Campbell)
8458Files:	    runtime/doc/eval.txt, src/eval.c, src/normal.c,
8459	    src/structs.h
8460
8461Patch 6.1.309
8462Problem:    The tutor doesn't select German if the locale name is
8463	    "German_Germany.1252". (Joachim Hofmann)
8464Solution:   Check for "German" in the locale name.  Also check for
8465	    ".ge".  And include the German and Greek tutors.
8466Files:	    runtime/tutor/tutor.de, runtime/tutor/tutor.vim,
8467	    runtime/tutor/tutor.gr, runtime/tutor/tutor.gr.cp737
8468
8469Patch 6.1.310 (depends on 6.1.307)
8470Problem:    All double-byte characters are displayed as "XX".
8471Solution:   Use ">= 32" instead of "< 32".  (Yasuhiro Matsumoto)
8472Files:	    src/screen.c
8473
8474Patch 6.1.311 (extra)
8475Problem:    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.
8479Solution:   Fix the problems.  Remove unnecessary file name translations.
8480	    (Zoltan Arpadffy)
8481Files:	    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
8483
8484Patch 6.1.312
8485Problem:    When using ":silent" debugging is also done silently.
8486Solution:   Disable silence while at the debug prompt.
8487Files:	    src/ex_cmds2.c
8488
8489Patch 6.1.313
8490Problem:    When a ":drop fname" command is used and "fname" is open in
8491	    another window, it is also opened in the current window.
8492Solution:   Change to the window with "fname" instead.
8493	    Don't redefine the argument list when dropping only one file.
8494Files:	    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
8496
8497Patch 6.1.314 (depends on 6.1.126)
8498Problem:    Missing backslash in "Generic Config file" syntax menu.
8499Solution:   Insert the backslash. (Zak Beck)
8500Files:	    runtime/makemenu.vim, runtime/synmenu.vim
8501
8502Patch 6.1.315 (extra)
8503Problem:    A very long hostname may lead to an unterminated string.  Failing
8504	    to obtain a hostname may result in garbage.  (Walter Briscoe)
8505Solution:   Add a NUL at the end of the hostname buffer.
8506Files:	    src/os_mac.c, src/os_msdos.c, src/os_unix.c, src/os_win16.c,
8507	    src/os_win32.c
8508
8509Patch 6.1.316
8510Problem:    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)
8513Solution:   Do update the buffer timestamps when exiting.
8514Files:	    src/fileio.c
8515
8516Patch 6.1.317
8517Problem:    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)
8520Solution:   Update the frame sizes before updating the window positions.
8521Files:	    src/window.c
8522
8523Patch 6.1.318
8524Problem:    auto/pathdef.c can include wrong quotes when a compiler flag
8525	    includes quotes.
8526Solution:   Put a backslash before the quotes in compiler flags. (Shinra Aida)
8527Files:	    src/Makefile
8528
8529Patch 6.1.319 (depends on 6.1.276)
8530Problem:    Using "--remote +cmd file" does not execute "cmd".
8531Solution:   Call inputrestore() in the same command line as inputsave(),
8532	    otherwise it will never get executed.
8533Files:	    src/main.c
8534
8535Patch 6.1.320 (depends on 6.1.313)
8536Problem:    When a ":drop one\ file" command is used the file "one\ file" is
8537	    opened, the backslash is not removed. (Taro Muraoka)
8538Solution:   Handle backslashes correctly.  Always set the argument list to
8539	    keep it simple.
8540Files:	    runtime/doc/windows.txt, src/ex_cmds.c
8541
8542Patch 6.1.321
8543Problem:    When 'mouse' includes 'n' but not 'v', don't allow starting Visual
8544	    mode with the mouse.
8545Solution:   Don't use MOUSE_MAY_VIS when there is no 'v' in 'mouse'. (Flemming
8546	    Madsen)
8547Files:	    src/normal.c
8548
8549Patch 6.1.322 (extra, depends on 6.1.315)
8550Problem:    Win32: The host name is always "PC " plus the real host name.
8551Solution:   Don't insert "PC " before the host name.
8552Files:	    src/os_win32.c
8553
8554Patch 6.1.323
8555Problem:    ":registers" doesn't stop listing for a "q" at the more prompt.
8556	    (Hari Krishna Dara)
8557Solution:   Check for interrupt and got_int.
8558Files:	    src/ops.c, src/proto/ops.pro
8559
8560Patch 6.1.324
8561Problem:    Crash when dragging a vertical separator when <LeftMouse> is
8562	    remapped to jump to another window.
8563Solution:   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.
8566Files:	    src/normal.c, src/proto/window.pro, src/ui.c, src/vim.h,
8567	    src/window.c
8568
8569Patch 6.1.325
8570Problem:    Shift-Tab is not automatically recognized in an xterm.
8571Solution:   Add <Esc>[Z as the termcap code. (Andrew Pimlott)
8572Files:	    src/term.c
8573
8574Patch 6.1.326
8575Problem:    Using a search pattern may read from uninitialized data (Yasuhiro
8576	    Matsumoto)
8577Solution:   Initialize pointers to NULL.
8578Files:	    src/regexp.c
8579
8580Patch 6.1.327
8581Problem:    When opening the "mbyte.txt" help file the utf-8 characters are
8582	    unreadable, because the fileencoding is forced to be latin1.
8583Solution:   Check for utf-8 encoding first in help files. (Daniel Elstner)
8584Files:	    runtime/doc/mbyte.txt, src/fileio.c
8585
8586Patch 6.1.328
8587Problem:    Prototype for enc_canon_search() is missing.
8588Solution:   Add the prototype. (Walter Briscoe)
8589Files:	    src/mbyte.c
8590
8591Patch 6.1.329
8592Problem:    When editing a file "a b c" replacing "%" in ":Cmd %" or ":next %"
8593	    does not work properly.  (Hari Krishna Dara)
8594Solution:   Always escape spaces when expanding "%".  Don't split argument for
8595	    <f-args> in a user command when only one argument is used.
8596Files:	    src/ex_docmd.c
8597
8598Patch 6.1.330
8599Problem:    GTK, Motif and Athena: Keypad keys produce the same code as
8600	    non-keypad keys, making it impossible to map them separately.
8601Solution:   Use different termcap codes for the keypad keys. (Neil Bird)
8602Files:	    src/gui_gtk_x11.c, src/gui_x11.c
8603
8604Patch 6.1.331
8605Problem:    When translating the help files, "LOCAL ADDITIONS" no longer marks
8606	    the spot where help files from plugins are to be listed.
8607Solution:   Add a "local-additions" tag and use that to find the right spot.
8608Files:	    runtime/doc/help.txt, src/ex_cmds.c
8609
8610Patch 6.1.332 (extra)
8611Problem:    Win32: Loading Perl dynamically doesn't work with Perl 5.8.
8612	    Perl 5.8 also does not work with Cygwin and Ming.
8613Solution:   Adjust the function calls. (Taro Muraoka)
8614	    Adjust the cyg and ming makefiles. (Dan Sharp)
8615Files:	    src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
8616	    src/if_perl.xs
8617
8618Patch 6.1.333 (extra)
8619Problem:    Win32: Can't handle Unicode text on the clipboard.
8620	    Can't pass NUL byte, it becomes a line break.  (Bruce DeVisser)
8621Solution:   Support Unicode for the clipboard (Ron Aaron and Glenn Maynard)
8622	    Also support copy/paste of NUL bytes.
8623Files:	    src/os_mswin.c, src/os_win16.c src/os_win32.c
8624
8625Patch 6.1.334 (extra, depends on 6.1.303)
8626Problem:    Problem with drawing Hebrew characters.
8627Solution:   Only use ETO_PDY for Windows NT and the like. (Yasuhiro Matsumoto)
8628Files:	    src/gui_w32.c
8629
8630Patch 6.1.335 (extra)
8631Problem:    Failure of obtaining the cursor position and window size is
8632	    ignored.
8633Solution:   Remove a semicolon after an "if". (Walter Briscoe)
8634Files:	    src/gui_w32.c
8635
8636Patch 6.1.336 (extra)
8637Problem:    Warning for use of function prototypes of smsg().
8638Solution:   Define HAVE_STDARG_H. (Walter Briscoe)
8639Files:	    src/os_win32.h
8640
8641Patch 6.1.337
8642Problem:    When using "finish" in debug mode in function B() for ":call
8643	    A(B())" does not stop after B() is finished.
8644Solution:   Increase debug_level while evaluating a function.
8645Files:	    src/ex_docmd.c
8646
8647Patch 6.1.338
8648Problem:    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)
8651Solution:   Add a check for need_check_timestamps in the Insert mode loop.
8652Files:	    src/edit.c
8653
8654Patch 6.1.339
8655Problem:    Completion doesn't allow "g:" in ":let g:did_<Tab>". (Benji
8656	    Fisher)
8657Solution:   Return "g:var" for global variables when that is what is being
8658	    expanded. (Flemming Madsen)
8659Files:	    src/eval.c
8660
8661Patch 6.1.340 (extra, depends on 6.1.332)
8662Problem:    Win32: Can't compile the Perl interface with nmake.
8663Solution:   Don't compare the version number as a string but as a number.
8664	    (Juergen Kraemer)
8665Files:	    src/Make_mvc.mak
8666
8667Patch 6.1.341
8668Problem:    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.
8671Solution:   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.
8675Files:	    src/edit.c, src/gui.c, src/mbyte.c
8676
8677Patch 6.1.342 (depends on 6.1.341)
8678Problem:    With 'rightleft' set typing "c" on a double-wide character causes
8679	    the cursor to be displayed one cell to the left.
8680Solution:   Draw the cursor in the next character cell.  (Yasuhiro Matsumoto)
8681Files:	    src/gui.c
8682
8683Patch 6.1.343 (depends on 6.1.342)
8684Problem:    Cannot compile with the +multi_byte feature but without +rightleft.
8685	    Cannot compile without the GUI.
8686Solution:   Fix the #ifdefs.  (partly by Nam SungHyun)
8687Files:	    src/gui.c, src/mbyte.c, src/ui.c
8688
8689Patch 6.1.344
8690Problem:    When using ":silent filetype" the output is still put in the
8691	    message history. (Hari Krishna Dara)
8692Solution:   Don't add messages in the history when ":silent" is used.
8693Files:	    src/message.c
8694
8695Patch 6.1.345 (extra)
8696Problem:    Win32: 'imdisable' doesn't work.
8697Solution:   Make 'imdisable' work. (Yasuhiro Matsumoto)
8698Files:	    src/gui_w32.c
8699
8700Patch 6.1.346
8701Problem:    The scroll wheel can only scroll the current window.
8702Solution:   Make the scroll wheel scroll the window that the mouse points to.
8703	    (Daniel Elstner)
8704Files:	    src/edit.c, src/gui.c, src/normal.c, src/term.c
8705
8706Patch 6.1.347
8707Problem:    When using cscope to list matching tags, the listed number is
8708	    sometimes not equal to what cscope uses. (Vihren Milev)
8709Solution:   For cscope tags use only one table, don't give tags in the current
8710	    file a higher priority.
8711Files:	    src/tag.c
8712
8713Patch 6.1.348
8714Problem:    Wildmode with wildmenu: ":set wildmode=list,full", ":colorscheme
8715	    <tab>" results in "zellner" instead of the first entry. (Anand
8716	    Hariharan)
8717Solution:   Don't call ExpandOne() from globpath(). (Flemming Madsen)
8718Files:	    src/ex_getln.c
8719
8720Patch 6.1.349
8721Problem:    "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)
8725Solution:   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)
8728Files:	    src/if_xcmdsrv.c, src/main.c
8729
8730Patch 6.1.350
8731Problem:    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)
8734Solution:   Don't use the last known cursor position of the current Vim
8735	    invocation if an autocommand changed the position.
8736Files:	    src/buffer.c
8737
8738Patch 6.1.351 (depends on 6.1.349)
8739Problem:    Crash when starting Vim the first time in an X server. (John
8740	    McGowan)
8741Solution:   Don't call xFree() with a fixed string.
8742Files:	    src/if_xcmdsrv.c
8743
8744Patch 6.1.352 (extra, depends on 6.1.345)
8745Problem:    Win32: Crash when setting "imdisable" in _vimrc.
8746Solution:   Don't call IME functions when imm32.dll was not loaded (yet).
8747	    Also add typecasts to avoid Compiler warnings for
8748	    ImmAssociateContext() argument.
8749Files:	    src/gui_w32.c
8750
8751Patch 6.1.353 (extra, depends on 6.1.334)
8752Problem:    Problem with drawing Arabic characters.
8753Solution:   Don't use ETO_PDY, do use padding.
8754Files:	    src/gui_w32.c
8755
8756Patch 6.1.354 (extra, depends on 6.1.333)
8757Problem:    MS-Windows 98: Notepad can't paste text copied from Vim when
8758	    'encoding' is "utf-8".
8759Solution:   Also make CF_TEXT available on the clipboard. (Ron Aaron)
8760Files:	    src/os_mswin.c
8761
8762Patch 6.1.355
8763Problem:    In a regexp '\n' will never match anything in a string.
8764Solution:   Make '\n' match a newline character.
8765Files:	    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
8769
8770Patch 6.1.356 (extra, depends on, well, eh, several others)
8771Problem:    Compiler warnings for using convert_setup() and a few other
8772	    things.
8773Solution:   Add typecasts.
8774Files:	    src/mbyte.c, src/os_mswin.c, src/proto/os_win32.pro, src/os_win32.c
8775
8776Patch 6.1.357
8777Problem:    CR in the quickfix window jumps to the error under the cursor, but
8778	    this doesn't work in Insert mode. (Srikanth Sankaran)
8779Solution:   Handle CR in Insert mode in the quickfix window.
8780Files:	    src/edit.c
8781
8782Patch 6.1.358
8783Problem:    The tutor doesn't select another locale version properly.
8784Solution:   Insert the "let" command. (Yasuhiro Matsumoto)
8785Files:	    runtime/tutor/tutor.vim
8786
8787Patch 6.1.359 (extra)
8788Problem:    Mac Carbon: Vim doesn't get focus when started from the command
8789	    line.  Crash when using horizontal scroll bar.
8790Solution:   Set Vim as the frontprocess.  Fix scrolling.  (Peter Cucka)
8791Files:	    src/gui_mac.c
8792
8793Patch 6.1.360 (depends on 6.1.341)
8794Problem:    In Insert mode CTRL-K ESC messes up a multi-byte character.
8795	    (Anders Helmersson)
8796Solution:   Save all bytes of a character when displaying a character
8797	    temporarily.
8798Files:	    src/edit.c, src/proto/screen.pro, src/screen.c
8799
8800Patch 6.1.361
8801Problem:    Cannot jump to a file mark with ":'M".
8802Solution:   Allow jumping to another file for a mark in an Ex address when it
8803	    is the only thing in the command line.
8804Files:	    src/ex_docmd.c
8805
8806Patch 6.1.362
8807Problem:    tgetent() may return zero for success. tgetflag() may return -1
8808	    for an error.
8809Solution:   Check tgetflag() for returning a positive value.  Add an autoconf
8810	    check for the value that tgetent() returns.
8811Files:	    src/auto/configure, src/config.h.in, src/configure.in, src/term.c
8812
8813Patch 6.1.363
8814Problem:    byte2line() can return one more than the number of lines.
8815Solution:   Return -1 if the offset is one byte past the end.
8816Files:	    src/memline.c
8817
8818Patch 6.1.364
8819Problem:    That the FileChangedShell autocommand event never nests makes it
8820	    difficult to reload a file in a normal way.
8821Solution:   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.
8824Files:	    src/ex_getln.c, src/fileio.c, src/window.c
8825
8826Patch 6.1.365 (depends on 6.1.217)
8827Problem:    Setting a breakpoint in a sourced file with a relative path name
8828	    doesn't work. (Servatius Brandt)
8829Solution:   Expand the file name to a full path.
8830Files:	    src/ex_cmds2.c
8831
8832Patch 6.1.366
8833Problem:    Can't use Vim with Netbeans.
8834Solution:   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.
8843Files:	    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
8857
8858Patch 6.1.367 (depends on 6.1.365)
8859Problem:    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)
8862Solution:   Expand the file name in the same way as do_source() does.  Don't
8863	    prepend the path to a function name.
8864Files:	    src/ex_cmds2.c
8865
8866Patch 6.1.368
8867Problem:    Completion for ":map" does not include <silent> and <script>.
8868	    ":mkexrc" do not save the <silent> attribute of mappings.
8869Solution:   Add "<silent>" to the generated map commands when appropriate.
8870	    (David Elstner)
8871	    Add <silent> and <script> to command line completion.
8872Files:	    src/getchar.c
8873
8874Patch 6.1.369 (extra)
8875Problem:    VMS: Vim hangs when attempting to edit a read-only file in the
8876	    terminal.  Problem with VMS filenames for quickfix.
8877Solution:   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)
8880Files:	    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
8882
8883Patch 6.1.370
8884Problem:    #ifdef nesting is unclear.
8885Solution:   Insert spaces to indicate the nesting.
8886Files:	    src/os_unix.c
8887
8888Patch 6.1.371
8889Problem:    "%V" in 'statusline' doesn't show "0-1" in an empty line.
8890Solution:   Add one to the column when comparing with virtual column (Andrew
8891	    Pimlott)
8892Files:	    src/buffer.c
8893
8894Patch 6.1.372
8895Problem:    With 16 bit ints there are compiler warnings. (Walter Briscoe)
8896Solution:   Change int into long.
8897Files:	    src/structs.h, src/syntax.c
8898
8899Patch 6.1.373
8900Problem:    The default page header for printing is not translated.
8901Solution:   Add _() around the two places where "Page" is used. (Mike
8902	    Williams)  Translate the default value of the 'titleold' and
8903	    'printheader' options.
8904Files:	    src/ex_cmds2.c, src/option.c
8905
8906Patch 6.1.374 (extra)
8907Problem:    MS-Windows: Cannot build GvimExt with MingW or Cygwin.
8908Solution:   Add makefile and modified resource files. (Rene de Zwart)
8909	    Also support Cygwin. (Alejandro Lopez_Valencia)
8910Files:	    GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile,
8911	    GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc
8912
8913Patch 6.1.375
8914Problem:    MS-Windows: ':!dir "%"' does not work for a file name with spaces.
8915	    (Xiangjiang Ma)
8916Solution:   Don't insert backslashes for spaces in a shell command.
8917Files:	    src/ex_docmd.c
8918
8919Patch 6.1.376
8920Problem:    "vim --version" and "vim --help" have a non-zero exit code.
8921	    That is unusual. (Petesea)
8922Solution:   Use a zero exit code.
8923Files:	    src/main.c
8924
8925Patch 6.1.377
8926Problem:    Can't add words to 'lispwords' option.
8927Solution:   Add P_COMMA and P_NODUP flags. (Haakon Riiser)
8928Files:	    src/option.c
8929
8930Patch 6.1.378
8931Problem:    When two buffer-local user commands are ambiguous, a full match
8932	    with a global user command isn't found. (Hari Krishna Dara)
8933Solution:   Detect this situation and accept the global command.
8934Files:	    src/ex_docmd.c
8935
8936Patch 6.1.379
8937Problem:    Linux with kernel 2.2 can't use the alternate stack in combination
8938	    with threading, causes an infinite loop.
8939Solution:   Don't use the alternate stack in this situation.
8940Files:	    src/os_unix.c
8941
8942Patch 6.1.380
8943Problem:    When 'winminheight' is zero and the quickfix window is zero lines,
8944	    entering the window doesn't make it higher. (Christian J.
8945	    Robinson)
8946Solution:   Make sure the current window is at least one line high.
8947Files:	    src/window.c
8948
8949Patch 6.1.381
8950Problem:    When a BufWriteCmd is used and it leaves the buffer modified, the
8951	    window may still be closed. (Hari Krishna Dara)
8952Solution:   Return FAIL from buf_write() when the buffer is still modified
8953	    after a BufWriteCmd autocommand was used.
8954Files:	    src/fileio.c
8955
8956Patch 6.1.382 (extra)
8957Problem:    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)
8960Solution:   Handle a double monitor situation. (Helmut Stiegler)
8961Files:	    src/gui_w32.c
8962
8963Patch 6.1.383
8964Problem:    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.
8967Solution:   Properly distinguish characters and bytes.  Properly check for
8968	    running out of buffer space.
8969Files:	    src/buffer.c, src/ex_cmds2.c, src/proto/buffer.pro, src/screen.c
8970
8971Patch 6.1.384
8972Problem:    It is not possible to find if a certain patch has been included.
8973	    (Lubomir Host)
8974Solution:   Support using has() to check if a patch was included.
8975Files:	    runtime/doc/eval.txt, src/eval.c, src/proto/version.pro,
8976	    src/version.c
8977
8978Patch 6.1.385 (depends on 6.1.383)
8979Problem:    Can't compile without the multi-byte feature.
8980Solution:   Move an #ifdef.  (Christian J. Robinson)
8981Files:	    src/buffer.c
8982
8983Patch 6.1.386
8984Problem:    Get duplicate tags when running ":helptags".
8985Solution:   Do the other halve of moving a section to another help file.
8986Files:	    runtime/tagsrch.txt
8987
8988Patch 6.1.387 (depends on 6.1.373)
8989Problem:    Compiler warning for pointer cast.
8990Solution:   Add (char_u *).
8991Files:	    src/option.c
8992
8993Patch 6.1.388 (depends on 6.1.384)
8994Problem:    Compiler warning for pointer cast.
8995Solution:   Add (char *).  Only include has_patch() when used.
8996Files:	    src/eval.c, src/version.c
8997
8998Patch 6.1.389 (depends on 6.1.366)
8999Problem:    Balloon evaluation doesn't work for GTK.
9000	    has("balloon_eval") doesn't work.
9001Solution:   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.
9005Files:	    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
9010
9011Patch 6.1.390 (depends on 6.1.389)
9012Problem:    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.
9016Solution:   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)
9020Files:	    runtime/doc/netbeans.txt, runtime/doc/sign.txt, src/ex_cmds.c,
9021	    src/netbeans.c, src/screen.c
9022
9023Patch 6.1.391
9024Problem:    ml_get() error when using virtualedit. (Charles Campbell)
9025Solution:   Get a line from a specific window, not the current one.
9026Files:	    src/charset.c
9027
9028Patch 6.1.392 (depends on 6.1.383)
9029Problem:    Highlighting in the 'statusline' is in the wrong position when an
9030	    item is truncated. (Zak Beck)
9031Solution:   Correct the start of 'statusline' items properly for a truncated
9032	    item.
9033Files:	    src/buffer.c
9034
9035Patch 6.1.393
9036Problem:    When compiled with Python and threads, detaching the terminal may
9037	    cause Vim to loop forever.
9038Solution:   Add -pthread to $CFLAGS when using Python and gcc. (Daniel
9039	    Elstner)
9040Files:	    src/auto/configure,, src/configure.in
9041
9042Patch 6.1.394 (depends on 6.1.390)
9043Problem:    The netbeans interface doesn't recognize multibyte glyph names.
9044Solution:   Check the number of cells rather than bytes to decide
9045	    whether a glyph name is not a filename. (Daniel Elstner)
9046Files:	    src/netbeans.c
9047
9048Patch 6.1.395 (extra, depends on 6.1.369)
9049Problem:    VMS: OLD_VMS is never defined.  Missing function prototype.
9050Solution:   Define OLD_VMS in Make_vms.mms.  Add vms_sys_status() to
9051	    os_vms.pro. (Zoltan Arpadffy)
9052Files:	    src/Make_vms.mms, src/proto/os_vms.pro
9053
9054Patch 6.1.396 (depends on 6.1.330)
9055Problem:    Compiler warnings for using enum.
9056Solution:   Add typecast to char_u.
9057Files:	    src/gui_gtk_x11.c, src/gui_x11.c
9058
9059Patch 6.1.397 (extra)
9060Problem:    The install program may use a wrong path for the diff command if
9061	    there is a space in the install directory path.
9062Solution:   Use double quotes around the path if necessary. (Alejandro
9063	    Lopez-Valencia)  Also use double quotes around the file name
9064	    arguments.
9065Files:	    src/dosinst.c
9066
9067Patch 6.1.398
9068Problem:    Saving the typeahead for debug mode causes trouble for a test
9069	    script. (Servatius Brandt)
9070Solution:   Add the ":debuggreedy" command to avoid saving the typeahead.
9071Files:	    runtime/doc/repeat.txt, src/ex_cmds.h, src/ex_cmds2.c,
9072	    src/ex_docmd.c, src/proto/ex_cmds2.pro
9073
9074Patch 6.1.399
9075Problem:    Warning for unused variable.
9076Solution:   Remove the variable two_or_more.
9077Files:	    src/ex_cmds.c
9078
9079Patch 6.1.400 (depends on 6.1.381)
9080Problem:    When a BufWriteCmd wipes out the buffer it may still be accessed.
9081Solution:   Don't try accessing a buffer that has been wiped out.
9082Files:	    src/fileio.c
9083
9084Patch 6.1.401 (extra)
9085Problem:    Building the Win16 version with Borland 5.01 doesn't work.
9086	    "make test" doesn't work with Make_dos.mak. (Walter Briscoe)
9087Solution:   Various fixes to the w16 makefile. (Walter Briscoe)
9088	    Don't use deltree.  Use "mkdir \tmp" instead of "mkdir /tmp".
9089Files:	    src/Make_w16.mak, src/testdir/Make_dos.mak
9090
9091Patch 6.1.402
9092Problem:    When evaluating a function name with curly braces, an error
9093	    is not handled consistently.
9094Solution:   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)
9097Files:	    src/eval.c
9098
9099Patch 6.1.403 (extra)
9100Problem:    MS-Windows 16 bit: compiler warnings.
9101Solution:   Add typecasts. (Walter Briscoe)
9102Files:	    src/ex_cmds2.c, src/gui_w48.c, src/os_mswin.c, src/os_win16.c,
9103	    src/syntax.c
9104
9105Patch 6.1.404 (extra)
9106Problem:    Various small problems.
9107Solution:   Fix comments.  Various small additions, changes in indent, removal
9108	    of unused items and fixes.
9109Files:	    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
9122
9123Patch 6.1.405
9124Problem:    A few files are missing from the toplevel Makefile.
9125Solution:   Add the missing files.
9126Files:	    Makefile
9127
9128Patch 6.1.406 (depends on 6.1.392)
9129Problem:    When a statusline item doesn't fit arbitrary text appears.
9130	    (Christian J. Robinson)
9131Solution:   When there is just enough room but not for the "<" truncate the
9132	    statusline item like there is no room.
9133Files:	    src/buffer.c
9134
9135Patch 6.1.407
9136Problem:    ":set scrollbind | help" scrollbinds the help window. (Andrew
9137	    Pimlott)
9138Solution:   Reset 'scrollbind' when opening a help window.
9139Files:	    src/ex_cmds.c
9140
9141Patch 6.1.408
9142Problem:    When 'rightleft' is set unprintable character 0x0c is displayed as
9143	    ">c0<".
9144Solution:   Reverse the text of the hex character.
9145Files:	    src/screen.c
9146
9147Patch 6.1.409
9148Problem:    Generating tags for the help doesn't work for some locales.
9149Solution:   Set LANG=C LC_ALL=C in the environment for "sort". (Daniel
9150	    Elstner)
9151Files:	    runtime/doc/Makefile
9152
9153Patch 6.1.410 (depends on 6.1.390)
9154Problem:    Linking error when compiling with Netbeans but without sign icons.
9155	    (Malte Neumann)
9156Solution:   Don't define buf_signcount() when sign icons are unavailable.
9157Files:	    src/buffer.c
9158
9159Patch 6.1.411
9160Problem:    When 'virtualedit' is set, highlighting a Visual block beyond the
9161	    end of a line may be wrong.
9162Solution:   Correct the virtual column when the end of the line is before the
9163	    displayed part of the line. (Muraoka Taro)
9164Files:	    src/screen.c
9165
9166Patch 6.1.412
9167Problem:    When swapping terminal screens and using ":gui" to start the GUI,
9168	    the shell prompt may be after a hit-enter prompt.
9169Solution:   Output a newline in the terminal when starting the GUI and there
9170	    was a hit-enter prompt..
9171Files:	    src/gui.c
9172
9173Patch 6.1.413
9174Problem:    When 'clipboard' contains "unnamed", "p" in Visual mode doesn't
9175	    work correctly.
9176Solution:   Save the register before overwriting it and put the resulting text
9177	    on the clipboard afterwards.  (Muraoka Taro)
9178Files:	    src/normal.c, src/ops.c
9179
9180Patch 6.1.414 (extra, depends on 6.1.369)
9181Problem:    VMS: Vim busy waits when waiting for input.
9182Solution:   Delay for a short while before getting another character.  (Zoltan
9183	    Arpadffy)
9184Files:	    src/os_vms.c
9185
9186Patch 6.1.415
9187Problem:    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.
9190Solution:   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)
9194Files:	    src/window.c
9195
9196Patch 6.1.416 (depends on 6.1.366)
9197Problem:    When using the Netbeans interface, a line with a sign cannot be
9198	    changed.
9199Solution:   Respect the GUARDEDOFFSET for sign IDs when checking for a guarded
9200	    area.
9201Files:	    src/netbeans.c
9202
9203Patch 6.1.417
9204Problem:    Unprintable multi-byte characters are not handled correctly.
9205	    Multi-byte characters above 0xffff are displayed as another
9206	    character.
9207Solution:   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)
9210Files:	    src/charset.c, src/mbyte.c, src/screen.c
9211
9212Patch 6.1.418
9213Problem:    The result of strftime() is in the current locals.  Need to
9214	    convert it to 'encoding'.
9215Solution:   Obtain the current locale and convert the argument for strftime()
9216	    to it and the result back to 'encoding'.  (Daniel Elstner)
9217Files:	    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
9219
9220Patch 6.1.419
9221Problem:    Vim doesn't compile on AIX 5.1.
9222Solution:   Don't define _NO_PROTO on this system. (Uribarri)
9223Files:	    src/auto/configure, src/configure.in
9224
9225Patch 6.1.420 (extra)
9226Problem:    convert_input() has an unnecessary STRLEN().
9227	    Conversion from UCS-2 to a codepage uses word count instead of
9228	    byte count.
9229Solution:   Remove the STRLEN() call. (Daniel Elstner)
9230	    Always use byte count for string_convert().
9231Files:	    src/gui_w32.c, src/mbyte.c
9232
9233Patch 6.1.421 (extra, depends on 6.1.354)
9234Problem:    MS-Windows 9x: When putting text on the clipboard it can be in
9235	    the wrong encoding.
9236Solution:   Convert text to the active codepage for CF_TEXT. (Glenn Maynard)
9237Files:	    src/os_mswin.c
9238
9239Patch 6.1.422
9240Problem:    Error in .vimrc doesn't cause hit-enter prompt when swapping
9241	    screens. (Neil Bird)
9242Solution:   Set msg_didany also when sending a message to the terminal
9243	    directly.
9244Files:	    src/message.c
9245
9246Patch 6.1.423
9247Problem:    Can't find arbitrary text in help files.
9248Solution:   Added the ":helpgrep" command.
9249Files:	    runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
9250	    src/proto/quickfix.pro, src/quickfix.c
9251
9252Patch 6.1.424 (extra)
9253Problem:    Win32: Gvim compiled with VC++ 7.0 run on Windows 95 does not show
9254	    menu items.
9255Solution:   Define $WINVER to avoid an extra item is added to MENUITEMINFO.
9256	    (Muraoka Taro)
9257Files:	    src/Make_mvc.mak
9258
9259Patch 6.1.425
9260Problem:    ":helptags $VIMRUNTIME/doc" does not add the "help-tags" tag.
9261Solution:   Do add the "help-tags" tag for that specific directory.
9262Files:	    src/ex_cmds.c
9263
9264Patch 6.1.426
9265Problem:    "--remote-wait +cmd file" waits forever. (Valery Kondakoff)
9266Solution:   Don't wait for the "+cmd" argument to have been edited.
9267Files:	    src/main.c
9268
9269Patch 6.1.427
9270Problem:    Several error messages for regexp patterns are not translated.
9271Solution:   Use _() properly. (Muraoka Taro)
9272Files:	    src/regexp.c
9273
9274Patch 6.1.428
9275Problem:    FreeBSD: wait() may hang when compiled with Python support and
9276	    doing a system() call in a startup script.
9277Solution:   Use waitpid() instead of wait() and poll every 10 msec, just like
9278	    what is done in the GUI.
9279Files:	    src/os_unix.c
9280
9281Patch 6.1.429 (depends on 6.1.390)
9282Problem:    Crash when using showmarks.vim plugin. (Charles Campbell)
9283Solution:   Check for sign_get_text() returning a NULL pointer.
9284Files:	    src/screen.c
9285
9286Patch 6.1.430
9287Problem:    In Lisp code backslashed parens should be ignored for "%". (Dorai)
9288Solution:   Skip over backslashed parens.
9289Files:	    src/search.c
9290
9291Patch 6.1.431
9292Problem:    Debug commands end up in redirected text.
9293Solution:   Disable redirection while handling debug commands.
9294Files:	    src/ex_cmds2.c
9295
9296Patch 6.1.432 (depends on 6.1.375)
9297Problem:    MS-Windows: ":make %:p" inserts extra backslashes. (David Rennalls)
9298Solution:   Don't add backslashes, handle it like ":!cmd".
9299Files:	    src/ex_docmd.c
9300
9301Patch 6.1.433
9302Problem:    ":popup" only works for Win32.
9303Solution:   Add ":popup" support for GTK.  (Daniel Elstner)
9304Files:	    runtime/doc/gui.txt, src/ex_docmd.c, src/gui_gtk.c, src/menu.c,
9305	    src/proto/gui_gtk.pro
9306
9307Patch 6.1.434 (extra)
9308Problem:    Win32: When there are more than 32767 lines, the scrollbar has a
9309	    roundoff error.
9310Solution:   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)
9313Files:	    src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
9314
9315Patch 6.1.435
9316Problem:    ":winsize x" resizes the Vim window to the minimal size. (Andrew
9317	    Pimlott)
9318Solution:   Give an error message for wrong arguments of ":winsize" and
9319	    ":winpos".
9320Files:	    src/ex_docmd.c
9321
9322Patch 6.1.436
9323Problem:    When a long UTF-8 file contains an illegal byte it's hard to find
9324	    out where it is. (Ron Aaron)
9325Solution:   Add the line number to the error message.
9326Files:	    src/fileio.c
9327
9328Patch 6.1.437 (extra, depends on 6.1.421)
9329Problem:    Using multi-byte functions when they are not available.
9330Solution:   Put the clipboard conversion inside an #ifdef. (Vince Negri)
9331	    Also fix a pointer type mistake. (Walter Briscoe)
9332Files:	    src/os_mswin.c
9333
9334Patch 6.1.438
9335Problem:    When Perl has thread support Vim cannot use the Perl interface.
9336Solution:   Add a configure check and disable Perl when it will not work.
9337	    (Aron Griffis)
9338Files:	    src/auto/configure, src/configure.in
9339
9340Patch 6.1.439
9341Problem:    Netbeans: A "create" function doesn't actually create a buffer,
9342	    following functions may fail.
9343Solution:   Create a Vim buffer without a name when "create" is called.
9344	    (Gordon Prieur)
9345Files:	    runtime/doc/netbeans.txt, src/netbeans.c
9346
9347Patch 6.1.440
9348Problem:    The "@*" command doesn't obtain the actual contents of the
9349	    clipboard. (Hari Krishna Dara)
9350Solution:   Obtain the clipboard text before executing the command.
9351Files:	    src/ops.c
9352
9353Patch 6.1.441
9354Problem:    "zj" and "zk" cannot be used as a motion command after an
9355	    operator. (Ralf Hetzel)
9356Solution:   Accept these commands as motion commands.
9357Files:	    src/normal.c
9358
9359Patch 6.1.442
9360Problem:    Unicode 3.2 defines more space and punctuation characters.
9361Solution:   Add the new characters to the Unicode tables. (Raphael Finkel)
9362Files:	    src/mbyte.c
9363
9364Patch 6.1.443 (extra)
9365Problem:    Win32: The gvimext.dll build with Borland 5.5 requires another
9366	    DLL.
9367Solution:   Build a statically linked version by default. (Dan Sharp)
9368Files:	    GvimExt/Make_bc5.mak
9369
9370Patch 6.1.444 (extra)
9371Problem:    Win32: Enabling a build with gettext support is not consistent.
9372Solution:   Use "GETTEXT" for Borland and msvc makefiles. (Dan Sharp)
9373Files:	    src/Make_bc5.mak, src/Make_mvc.mak
9374
9375Patch 6.1.445 (extra)
9376Problem:    DJGPP: get warning for argument of putenv()
9377Solution:   Define HAVE_PUTENV to use DJGPP's putenv(). (Walter Briscoe)
9378Files:	    src/os_msdos.h
9379
9380Patch 6.1.446 (extra)
9381Problem:    Win32: The MingW makefile uses a different style of arguments than
9382	    other makefiles.
9383	    Dynamic IME is not supported for Cygwin.
9384Solution:   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)
9388Files:	    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
9390
9391Patch 6.1.447
9392Problem:    "make install" uses "make" directly for generating help tags.
9393Solution:   Use $(MAKE) instead of "make". (Tim Mooney)
9394Files:	    src/Makefile
9395
9396Patch 6.1.448
9397Problem:    'titlestring' has a default maximum width of 50 chars per item.
9398Solution:   Remove the default maximum (also for 'statusline').
9399Files:	    src/buffer.c
9400
9401Patch 6.1.449
9402Problem:    When "1" and "a" are in 'formatoptions', auto-formatting always
9403	    moves a newly added character to the next line. (Servatius Brandt)
9404Solution:   Don't move a single character to the next line when it was just
9405	    typed.
9406Files:	    src/edit.c
9407
9408Patch 6.1.450
9409Problem:    Termcap entry "kB" for back-tab is not recognized.
9410Solution:   Use back-tab as the shift-tab code.
9411Files:	    src/keymap.h, src/misc2.c, src/term.c
9412
9413Patch 6.1.451
9414Problem:    GUI: When text in the find dialog contains a slash, a backslash is
9415	    inserted the next time it is opened. (Mezz)
9416Solution:   Remove escaped backslashes and question marks. (Daniel Elstner)
9417Files:	    src/gui.c
9418
9419Patch 6.1.452 (extra, after 6.1.446)
9420Problem:    Win32: IME support doesn't work for MSVC.
9421Solution:   Use _MSC_VER instead of __MSVC. (Alejandro Lopez-Valencia)
9422Files:	    src/gui_w32.c
9423
9424Patch 6.1.453 (after 6.1.429)
9425Problem:    When compiled without sign icons but with sign support, adding a
9426	    sign may cause a crash.
9427Solution:   Check for the text sign to exist before using it. (Kamil
9428	    Burzynski)
9429Files:	    src/screen.c
9430
9431Patch 6.1.454 (extra)
9432Problem:    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.
9436Solution:   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.
9440Files:	    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
9442
9443Patch 6.1.455
9444Problem:    Some Unicode characters can be one or two character cells wide.
9445Solution:   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.
9449Files:	    runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h
9450
9451Patch 6.1.456 (extra, after 6.1.454)
9452Problem:    Win32: IME doesn't work.
9453Solution:   ImmGetCompositionStringW() returns the size in bytes, not words.
9454	    (Yasuhiro Matsumoto)  Also fix typecast problem.
9455Files:	    src/gui_w32.c, src/os_mswin.c
9456
9457Patch 6.1.457
9458Problem:    An empty register in viminfo causes conversion to fail.
9459Solution:   Don't convert an empty string. (Yasuhiro Matsumoto)
9460Files:	    src/ex_cmds.c, src/mbyte.c
9461
9462Patch 6.1.458
9463Problem:    Compiler warning for pointer.
9464Solution:   Add a typecast.
9465Files:	    src/ex_cmds.c
9466
9467Patch 6.1.459 (extra)
9468Problem:    Win32: libcall() may return an invalid pointer and cause Vim to
9469	    crash.
9470Solution:   Add a strict check for the returned pointer. (Bruce Mellows)
9471Files:	    src/os_mswin.c
9472
9473Patch 6.1.460
9474Problem:    GTK: after scrolling the text one line with a key, clicking the
9475	    arrow of the scrollbar does not always work. (Nam SungHyun)
9476Solution:   Always update the scrollbar thumb when the value changed, even
9477	    when it would not move, like for RISCOS.  (Daniel Elstner)
9478Files:	    src/gui.c, src/gui.h
9479
9480Patch 6.1.461
9481Problem:    When a keymap is active, typing a character in Select mode does
9482	    not use it. (Benji Fisher)
9483Solution:   Apply Insert mode mapping to the character typed in Select mode.
9484Files:	    src/normal.c
9485
9486Patch 6.1.462
9487Problem:    When autocommands wipe out a buffer, a crash may happen. (Hari
9488	    Krishna Dara)
9489Solution:   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.
9492Files:	    src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
9493
9494Patch 6.1.463
9495Problem:    When writing a compressed file, the file name that gzip stores in
9496	    the file is the weird temporary file name. (David Rennalls)
9497Solution:   Use the real file name when possible.
9498Files:	    runtime/plugin/gzip.vim
9499
9500Patch 6.1.464
9501Problem:    Crash when using C++ syntax highlighting. (Gerhard Hochholzer)
9502Solution:   Check for a negative index.
9503Files:	    src/syntax.c
9504
9505Patch 6.1.465 (after 6.1.454)
9506Problem:    Compile error when using cygwin.
9507Solution:   Change #ifdef WIN32 to #ifdef WIN3264. (Alejandro Lopez-Valencia)
9508	    Undefine WIN32 after including windows.h
9509Files:	    src/mbyte.c
9510
9511Patch 6.1.466
9512Problem:    The "-f" argument is a bit obscure.
9513Solution:   Add the "--nofork" argument.  Improve the help text a bit.
9514Files:	    runtime/doc/starting.txt, src/main.c
9515
9516Patch 6.1.467
9517Problem:    Setting the window title doesn't work for Chinese.
9518Solution:   Use an X11 function to convert text to a text property. (Kentaro
9519	    Nakazawa)
9520Files:	    src/os_unix.c
9521
9522Patch 6.1.468
9523Problem:    ":mksession" also stores folds for buffers which will not be
9524	    restored.
9525Solution:   Only store folds for a buffer with 'buftype' empty and help files.
9526Files:	    src/ex_docmd.c
9527
9528Patch 6.1.469
9529Problem:    'listchars' cannot contain multi-byte characters.
9530Solution:   Handle multi-byte UTF-8 list characters. (Matthew Samsonoff)
9531Files:	    src/message.c, src/option.c, src/screen.c
9532
9533Patch 6.1.470 (lang)
9534Problem:    Polish messages don't show up correctly on MS-Windows.
9535Solution:   Convert messages to cp1250. (Mikolaj Machowski)
9536	    Also add English message translations, because it got in the way
9537	    of the patch.
9538Files:	    Makefile, src/po/Makefile, src/po/en_gb.po, src/po/pl.po
9539
9540Patch 6.1.471
9541Problem:    ":jumps" output continues after pressing "q" at the more-prompt.
9542	    (Hari Krishna Dara)
9543Solution:   Check for "got_int" being set.
9544Files:	    src/mark.c
9545
9546Patch 6.1.472
9547Problem:    When there is an authentication error when connecting to the X
9548	    server Vim exits.
9549Solution:   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.
9552Files:	    src/globals.h, src/main.c, src/os_unix.c
9553
9554Patch 6.1.473
9555Problem:    Referring to $curwin or $curbuf in Perl 5.6 causes a crash.
9556Solution:   Add "pTHX_" to cur_val(). (Yasuhiro Matsumoto)
9557Files:	    src/if_perl.xs
9558
9559Patch 6.1.474
9560Problem:    When opening the command-line window in Ex mode it's impossible to
9561	    go back. (Pavol Juhas)
9562Solution:   Reset "exmode_active" and restore it when the command-line window
9563	    is closed.
9564Files:	    src/ex_getln.c
9565
9566
9567Patch 6.2f.001
9568Problem:    The configure check for Ruby didn't work properly for Ruby 1.8.0.
9569Solution:   Change the way the Ruby check is done. (Aron Griffis)
9570Files:	    src/auto/configure, src/configure.in
9571
9572Patch 6.2f.002
9573Problem:    The output of ":ls" doesn't show whether a buffer had read errors.
9574Solution:   Add the "x" flag in the ":ls" output.
9575Files:	    runtime/doc/windows.txt, src/buffer.c
9576
9577Patch 6.2f.003
9578Problem:    Test49 doesn't properly test the behavior of ":catch" without an
9579	    argument.
9580Solution:   Update test49. (Servatius Brandt)
9581Files:	    src/testdir/test49.ok, src/testdir/test49.vim
9582
9583Patch 6.2f.004
9584Problem:    "vim --version" always uses CR/LF in the output.
9585Solution:   Omit the CR.
9586Files:	    src/message.c, src/os_unix.c
9587
9588Patch 6.2f.005
9589Problem:    Two error messages without a colon after the number.
9590Solution:   Add the colon. (Taro Muraoka)
9591Files:	    src/if_cscope.c
9592
9593Patch 6.2f.006
9594Problem:    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)
9597Solution:   Add the "b_saving" flag to avoid checking the timestamp while the
9598	    buffer is being saved. (Michael Schaap)
9599Files:	    src/fileio.c, src/structs.h
9600
9601Patch 6.2f.007
9602Problem:    Irix compiler complains about multiple defined symbols.
9603	    vsnprintf() is not available.  (Charles Campbell)
9604Solution:   Insert EXTERN for variables in globals.h.  Change the configure
9605	    check for vsnprintf() from compiling to linking.
9606Files:	    src/auto/configure, src/configure.in, src/globals.h
9607
9608Patch 6.2f.008
9609Problem:    The Aap recipe doesn't work with Aap 0.149.
9610Solution:   Change targetarg to TARGETARG.  Update the mysign file.
9611Files:	    src/main.aap, src/mysign
9612
9613Patch 6.2f.009 (extra)
9614Problem:    Small problem when building with Borland 5.01.
9615Solution:   Use mkdir() instead of _mkdir(). (Walter Briscoe)
9616Files:	    src/dosinst.h
9617
9618Patch 6.2f.010
9619Problem:    Warning for missing prototypes.
9620Solution:   Add missing prototypes. (Walter Briscoe)
9621Files:	    src/if_cscope.c
9622
9623Patch 6.2f.011
9624Problem:    The configure script doesn't work with autoconf 2.5x.
9625Solution:   Add square brackets around a header check. (Aron Griffis)
9626	    Note: touch src/auto/configure after applying this patch.
9627Files:	    src/configure.in
9628
9629Patch 6.2f.012
9630Problem:    ":echoerr" doesn't work correctly inside try/endtry.
9631Solution:   Don't reset did_emsg inside a try/endtry. (Servatius Brandt)
9632Files:	    src/eval.c
9633
9634Patch 6.2f.013 (extra)
9635Problem:    Macintosh: Compiler warning for a trigraph.
9636Solution:   Insert a backslash before each question mark. (Peter Cucka)
9637Files:	    src/os_mac.h
9638
9639Patch 6.2f.014 (extra)
9640Problem:    Macintosh: ex_eval is not included in the project file.
9641Solution:   Add ex_eval. (Dany St-Amant)
9642Files:	    src/os_mac.pbproj/project.pbxproj
9643
9644Patch 6.2f.015 (extra)
9645Problem:    Win32: When changing header files not all source files involved
9646	    are recompiled.
9647Solution:   Improve the dependency rules. (Dan Sharp)
9648Files:	    src/Make_cyg.mak, src/Make_ming.mak
9649
9650Patch 6.2f.016
9651Problem:    "vim --version > ff" on non-Unix systems results in a file with a
9652	    missing line break at the end. (Bill McCArthy)
9653Solution:   Add a line break.
9654Files:	    src/main.c
9655
9656Patch 6.2f.017
9657Problem:    Unix: starting Vim in the background and then bringing it to the
9658	    foreground may cause the terminal settings to be wrong.
9659Solution:   Check for tcsetattr() to return an error, retry when it does.
9660	    (Paul Tapper)
9661Files:	    src/os_unix.c
9662
9663Patch 6.2f.018
9664Problem:    Mac OS X 10.2: OK is defined to zero in cursus.h while Vim uses
9665	    one.  Redefining it causes a warning message.
9666Solution:   Undefine OK before defining it to one. (Taro Muraoka)
9667Files:	    src/vim.h
9668
9669Patch 6.2f.019
9670Problem:    Mac OS X 10.2: COLOR_BLACK and COLOR_WHITE are defined in
9671	    curses.h.
9672Solution:   Rename them to PRCOLOR_BLACK and PRCOLOR_WHITE.
9673Files:	    src/ex_cmds2.c
9674
9675Patch 6.2f.020
9676Problem:    Win32: test50 produces beeps and fails with some versions of diff.
9677Solution:   Remove empty lines and convert the output to dos fileformat.
9678Files:	    src/testdir/test50.in
9679
9680Patch 6.2f.021
9681Problem:    Running configure with "--enable-netbeans" disables Netbeans.
9682	    (Gordon Prieur)
9683Solution:   Fix the tests in configure.in where the default is to enable a
9684	    feature.  Fix that "--enable-acl" reported "yes" confusingly.
9685Files:	    src/auto/configure, src/configure.in, src/mysign
9686
9687Patch 6.2f.022
9688Problem:    A bogus value for 'foldmarker' is not rejected, possibly causing a
9689	    hang. (Derek Wyatt)
9690Solution:   Check for a non-empty string before and after the comma.
9691Files:	    src/option.c
9692
9693Patch 6.2f.023
9694Problem:    When the help files are not in $VIMRUNTIME but 'helpfile' is
9695	    correct Vim still can't find the help files.
9696Solution:   Also look for a tags file in the directory of 'helpfile'.
9697Files:	    src/tag.c
9698
9699Patch 6.2f.024
9700Problem:    When 'delcombine' is set and a character has more than two
9701	    composing characters "x" deletes them all.
9702Solution:   Always delete only the last composing character.
9703Files:	    src/misc1.c
9704
9705Patch 6.2f.025
9706Problem:    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)
9709Solution:   Don't add the missing line break when re-reading the text from the
9710	    buffer.
9711Files:	    src/fileio.c
9712
9713Patch 6.2f.026
9714Problem:    When typing new text at the command line, old composing characters
9715	    may be displayed.
9716Solution:   Don't read composing characters from after the end of the
9717	    text to be displayed.
9718Files:	    src/ex_getln.c, src/mbyte.c, src/message.c, src/proto/mbyte.pro,
9719	    src/screen.c
9720
9721Patch 6.2f.027
9722Problem:    Compiler warnings for unsigned char pointers. (Tony Leneis)
9723Solution:   Add typecasts to char pointer.
9724Files:	    src/quickfix.c
9725
9726Patch 6.2f.028
9727Problem:    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".
9731Solution:   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)
9735Files:	    src/mbyte.c
9736
9737Patch 6.2f.029
9738Problem:    Mixing use of int and enum.
9739Solution:   Adjust argument type of cs_usage_msg().  Fix wrong typedef.
9740Files:	    src/if_cscope.c, src/if_cscope.h
9741
9742Patch 6.2f.030 (after 6.2f.028)
9743Problem:    Cursor moves up when using XIM.
9744Solution:   Reset im_preedit_cursor.  (Yasuhiro Matsumoto)
9745Files:	    src/mbyte.c
9746
9747Patch 6.2f.031
9748Problem:    Crash when listing a function argument in the debugger. (Ron Aaron)
9749Solution:   Init the name field of an argument to NULL.
9750Files:	    src/eval.c
9751
9752Patch 6.2f.032
9753Problem:    When a write fails for a ":silent!" while inside try/endtry the
9754	    BufWritePost autocommands are not triggered.
9755Solution:   Check the emsg_silent flag in should_abort(). (Servatius Brandt)
9756Files:	    src/ex_eval.c, src/testdir/test49.ok, src/testdir/test49.vim
9757
9758Patch 6.2f.033
9759Problem:    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.
9762Solution:   Don't set postponed_split too early.  Remember first empty
9763	    database entry. (Sergey Khorev)
9764Files:	    src/if_cscope.c
9765
9766Patch 6.2f.034
9767Problem:    The netbeans interface cannot be used on systems without
9768	    vsnprintf(). (Tony Leneis)
9769Solution:   Use EMSG(), EMSGN() and EMSG2() instead.
9770Files:	    src/auto/configure, src/configure.in, src/netbeans.c
9771
9772Patch 6.2f.035
9773Problem:    The configure check for the netbeans interface doesn't work if the
9774	    socket and nsl libraries are required.
9775Solution:   Check for the socket and nsl libraries before the netbeans check.
9776Files:	    src/auto/configure, src/configure.in
9777
9778Patch 6.2f.036
9779Problem:    Moving leftwards over text with an illegal UTF-8 byte moves one
9780	    byte instead of one character.
9781Solution:   Ignore an illegal byte after the cursor position.
9782Files:	    src/mbyte.c
9783
9784Patch 6.2f.037
9785Problem:    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.
9787Solution:   Quit the prompt like a CTRL-C was typed.
9788Files:	    src/netbeans.c
9789
9790Patch 6.2f.038
9791Problem:    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.
9794Solution:   Only run autoconf with "make autoconf".
9795Files:	    src/Makefile
9796
9797Patch 6.2f.039
9798Problem:    CTRL-W K makes the new top window very high.
9799Solution:   When 'equalalways' is set equalize the window heights.
9800Files:	    src/window.c
9801
9802
9803==============================================================================
9804VERSION 6.3						*version-6.3*
9805
9806This section is about improvements made between version 6.2 and 6.3.
9807
9808This is mainly a bug-fix release.  There are also a few new features.
9809The major number of new items is in the runtime files and translations.
9810
9811
9812Changed							*changed-6.3*
9813-------
9814
9815The intro message also displays a note about sponsoring Vim, mixed randomly
9816with the message about helping children in Uganda.
9817
9818Included the translated menus, keymaps and tutors with the normal runtime
9819files.  The separate "lang" archive now only contains translated messages.
9820
9821Made the translated menu file names a bit more consistent.  Use "latin1" for
9822"iso_8859-1" and "iso_8859-15".
9823
9824Removed the "file_select.vim" script from the distribution.  It's not more
9825useful than other scripts that can be downloaded from www.vim.org.
9826
9827The "runtime/doc/tags" file is now always in unix fileformat.  On MS-Windows
9828it used to be dos fileformat, but ":helptags" generates a unix format file.
9829
9830
9831Added							*added-6.3*
9832-----
9833
9834New 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)
9842
9843New options:
9844	'antialias'	Mac OS X: use smooth, antialiased fonts
9845	'helplang'	preferred help languages
9846
9847Syntax 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)
9872
9873Compiler 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)
9887
9888Filetype plugins:
9889	Aap (Bram Moolenaar)
9890	Ch (Wayne Cheng)
9891	Css (Nikolai Weibull)
9892	Pyrex (Marco Barisione)
9893	Rst (Nikolai Weibull)
9894
9895Indent 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)
9906
9907Keymaps:
9908	Greek for cp1253 (Panagiotis Louridas)
9909	Hungarian (Magyar) (Laszlo Zavaleta)
9910	Persian-Iranian (Behnam Esfahbod)
9911
9912Message translations:
9913	Catalan (Ernest Adrogue)
9914	Russian (Vassily Ragosin)
9915	Swedish (Johan Svedberg)
9916
9917Menu translations:
9918	Catalan (Ernest Adrogue)
9919	Russian (Tim Alexeevsky)
9920	Swedish (Johan Svedberg)
9921
9922Tutor 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.
9930
9931Included "russian.txt" help file. (Vassily Ragosin)
9932
9933Include Encapsulated PostScript and PDF versions of the Vim logo in the extra
9934archive.
9935
9936The help highlighting finds the highlight groups and shows them in the color
9937that is actually being used. (idea from Yakov Lerner)
9938
9939The big Win32 version is now compiled with Ruby interface, version 1.8.  For
9940Python version 2.3 is used.  For Perl version 5.8 is used.
9941
9942The "ftdetect" directory is mentioned in the documentation.  The DOS install
9943program creates it.
9944
9945
9946Fixed							*fixed-6.3*
9947-----
9948
9949Test 42 failed on MS-Windows.  Set and reset 'fileformat' and 'binary' options
9950here and there.  (Walter Briscoe)
9951
9952The explorer plugin didn't work for double-byte 'encoding's.
9953
9954Use "copy /y" in Make_bc5.mak to avoid a prompt for overwriting.
9955
9956Patch 6.2.001
9957Problem:    The ":stopinsert" command doesn't have a help tag.
9958Solution:   Add the tag. (Antoine J.  Mechelynck)
9959Files:	    runtime/doc/insert.txt, runtime/doc/tags
9960
9961Patch 6.2.002
9962Problem:    When compiled with the +multi_byte feature but without +eval,
9963	    displaying UTF-8 characters may cause a crash. (Karsten Hopp)
9964Solution:   Also set the default for 'ambiwidth' when compiled without the
9965	    +eval feature.
9966Files:	    src/option.c
9967
9968Patch 6.2.003
9969Problem:    GTK 2: double-wide characters below 256 are not displayed
9970	    correctly.
9971Solution:   Check the cell width for characters above 127. (Yasuhiro
9972	    Matsumoto)
9973Files:	    src/gui_gtk_x11.c
9974
9975Patch 6.2.004
9976Problem:    With a line-Visual selection at the end of the file a "p" command
9977	    puts the text one line upwards.
9978Solution:   Detect that the last line was deleted and put forward. (Taro
9979	    Muraoka)
9980Files:	    src/normal.c
9981
9982Patch 6.2.005
9983Problem:    GTK: the "Find" and "Find and Replace" tools don't work. (Aschwin
9984	    Marsman)
9985Solution:   Show the dialog after creating it.  (David Necas)
9986Files:	    src/gui_gtk.c
9987
9988Patch 6.2.006
9989Problem:    The Netbeans code contains an obsolete function that uses "vim61"
9990	    and sets the fall-back value for $VIMRUNTIME.
9991Solution:   Delete the obsolete function.
9992Files:	    src/main.c, src/netbeans.c, src/proto/netbeans.pro
9993
9994Patch 6.2.007
9995Problem:    Listing tags for Cscope doesn't always work.
9996Solution:   Avoid using smgs_attr(). (Sergey Khorev)
9997Files:	    src/if_cscope.c
9998
9999Patch 6.2.008
10000Problem:    XIM with GTK 2: After backspacing preedit characters are wrong.
10001Solution:   Reset the cursor position. (Yasuhiro Matsumoto)
10002Files:	    src/mbyte.c
10003
10004Patch 6.2.009
10005Problem:    Win32: The self-installing executable "Full" selection only
10006	    selects some of the items to install. (Salman Mohsin)
10007Solution:   Change commas to spaces in between section numbers.
10008Files:	    nsis/gvim.nsi
10009
10010Patch 6.2.010
10011Problem:    When 'virtualedit' is effective and a line starts with a
10012	    multi-byte character, moving the cursor right doesn't work.
10013Solution:   Obtain the right character to compute the column offset. (Taro
10014	    Muraoka)
10015Files:	    src/charset.c
10016
10017Patch 6.2.011
10018Problem:    Alpha OSF1: stat() is a macro and doesn't allow an #ifdef halfway.
10019	    (Moshe Kaminsky)
10020Solution:   Move the #ifdef outside of stat().
10021Files:	    src/os_unix.c
10022
10023Patch 6.2.012
10024Problem:    May hang when polling for a character.
10025Solution:   Break the wait loop when not waiting for a character.
10026Files:	    src/os_unix.c
10027
10028Patch 6.2.013 (extra)
10029Problem:    Win32: The registry key for uninstalling GvimExt still uses "6.1".
10030Solution:   Change the version number to "6.2". (Ajit Thakkar)
10031Files:	    src/GvimExt/GvimExt.reg
10032
10033Patch 6.2.014 (after 6.2.012)
10034Problem:    XSMP doesn't work when using poll().
10035Solution:   Use xsmp_idx instead of gpm_idx. (Neil Bird)
10036Files:	    src/os_unix.c
10037
10038Patch 6.2.015
10039Problem:    The +xsmp feature is never enabled.
10040Solution:   Move the #define for USE_XSMP to below where WANT_X11 is defined.
10041	    (Alexey Froloff)
10042Files:	    src/feature.h
10043
10044Patch 6.2.016
10045Problem:    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.
10050Solution:   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)
10053Files:	    src/ex_cmds2.c, src/if_cscope.c
10054
10055Patch 6.2.017
10056Problem:    Test11 sometimes prompts the user, because a file would have been
10057	    changed outside of Vim. (Antonio Colombo)
10058Solution:   Add a FileChangedShell autocommand to avoid the prompt.
10059Files:	    src/testdir/test11.in
10060
10061Patch 6.2.018
10062Problem:    When using the XSMP protocol and reading from stdin Vim may wait
10063	    for a key to be pressed.
10064Solution:   Avoid that RealWaitForChar() is used recursively.
10065Files:	    src/os_unix.c
10066
10067Patch 6.2.019 (lang)
10068Problem:    Loading the Portuguese menu causes an error message.
10069Solution:   Join two lines.  (Jose Pedro Oliveira, Jos� de Paula)
10070Files:	    runtime/lang/menu_pt_br.vim
10071
10072Patch 6.2.020
10073Problem:    The "Syntax/Set syntax only" menu item causes an error message.
10074	    (Oyvind Holm)
10075Solution:   Set the script-local variable in a function. (Benji Fisher)
10076Files:	    runtime/synmenu.vim
10077
10078Patch 6.2.021
10079Problem:    The user manual section on exceptions contains small mistakes.
10080Solution:   Give a good example of an error that could be missed and other
10081	    improvements. (Servatius Brandt)
10082Files:	    runtime/doc/usr_41.txt
10083
10084Patch 6.2.022 (extra)
10085Problem:    Win32: After deleting a menu item it still appears in a tear-off
10086	    window.
10087Solution:   Set the mode to zero for the deleted item. (Yasuhiro Matsumoto)
10088Files:	    src/gui_w32.c
10089
10090Patch 6.2.023 (extra)
10091Problem:    Win32: Make_ivc.mak does not clean everything.
10092Solution:   Delete more files in the clean rule. (Walter Briscoe)
10093Files:	    src/Make_ivc.mak
10094
10095Patch 6.2.024 (extra)
10096Problem:    Win32: Compiler warnings for typecasts.
10097Solution:   Use DWORD instead of WORD. (Walter Briscoe)
10098Files:	    src/gui_w32.c
10099
10100Patch 6.2.025
10101Problem:    Missing prototype for sigaltstack().
10102Solution:   Add the prototype when it is not found in a header file.
10103Files:	    src/os_unix.c
10104
10105Patch 6.2.026
10106Problem:    Warning for utimes() argument.
10107Solution:   Add a typecast.
10108Files:	    src/fileio.c
10109
10110Patch 6.2.027
10111Problem:    Warning for uninitialized variable.
10112Solution:   Set mb_l to one when not using multi-byte characters.
10113Files:	    src/message.c
10114
10115Patch 6.2.028
10116Problem:    Cscope connection may kill Vim process and others.
10117Solution:   Check for pid being larger than one. (Khorev Sergey)
10118Files:	    src/if_cscope.c
10119
10120Patch 6.2.029
10121Problem:    When using the remote server functionality Vim may leak memory.
10122	    (Srikanth Sankaran)
10123Solution:   Free the result of XListProperties().
10124Files:	    src/if_xcmdsrv.c
10125
10126Patch 6.2.030
10127Problem:    Mac: Warning for not being able to use precompiled header files.
10128Solution:   Don't redefine select.  Use -no-cpp-precomp for compiling, so that
10129	    function prototypes are still found.
10130Files:	    src/os_unix.c, src/osdef.sh
10131
10132Patch 6.2.031
10133Problem:    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)
10137Solution:   Change "lmenu" to "langmenu".  Only display the 'tbis' option for
10138	    GTK 2.
10139Files:	    runtime/optwin.vim
10140
10141Patch 6.2.032
10142Problem:    The lpc filetype is never recognized. (Shizhu Pan)
10143Solution:   Check for g:lpc_syntax_for_c instead of the local variable
10144	    lpc_syntax_for_c. (Benji Fisher)
10145Files:	    runtime/filetype.vim
10146
10147Patch 6.2.033 (extra)
10148Problem:    Mac: Various compiler warnings.
10149Solution:   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.
10154Files:	    src/gui_mac.c, src/term.c
10155
10156Patch 6.2.034
10157Problem:    Mac: Compiler warning for redefining DEFAULT_TERM.
10158Solution:   Fix double definition of DEFAULT_TERM.
10159Files:	    src/term.c
10160
10161Patch 6.2.035
10162Problem:    Mac: Compiler warnings in Python interface.
10163Solution:   Make a difference between pure Mac and Unix-Mac. (Peter Cucka)
10164Files:	    src/if_python.c
10165
10166Patch 6.2.036 (extra)
10167Problem:    Mac Unix version: If foo is a directory, then ":e f<Tab>" should
10168	    expand to ":e foo/" instead of ":e foo" .  (Vadim Zeitlin)
10169Solution:   Define DONT_ADD_PATHSEP_TO_DIR only for pure Mac. (Benji Fisher)
10170Files:	    src/os_mac.h
10171
10172Patch 6.2.037
10173Problem:    Win32: converting an encoding name to a codepage could result in
10174	    an arbitrary number.
10175Solution:   make encname2codepage() return zero if the encoding name doesn't
10176	    contain a codepage number.
10177Files:	    src/mbyte.c
10178
10179Patch 6.2.038 (extra)
10180Problem:    Warning messages when using the MingW compiler. (Bill McCarthy)
10181	    Can't compile console version without +mouse feature.
10182Solution:   Initialize variables, add parenthesis.
10183	    Add an #ifdef around g_nMouseClick. (Ajit Thakkar)
10184Files:	    src/eval.c, src/os_win32.c, src/gui_w32.c, src/dosinst.c
10185
10186Patch 6.2.039 (extra)
10187Problem:    More warning messages when using the MingW compiler.
10188Solution:   Initialize variables. (Bill McCarthy)
10189Files:	    src/os_mswin.c
10190
10191Patch 6.2.040
10192Problem:    FreeBSD: Crash while starting up when compiled with +xsmp feature.
10193Solution:   Pass a non-NULL argument to IceAddConnectionWatch().
10194Files:	    src/os_unix.c
10195
10196Patch 6.2.041 (extra, after 6.2.033)
10197Problem:    Mac: Compiler warnings for conversion types, missing prototype,
10198	    missing return type.
10199Solution:   Change sscanf "%hd" to "%d", the argument is an int now.  Add
10200	    gui_mch_init_check() prototype.  Add "int" to termlib functions.
10201Files:	    src/gui_mac.c, src/proto/gui_mac.pro, src/termlib.c.
10202
10203Patch 6.2.042 (extra)
10204Problem:    Cygwin: gcc 3.2 has an optimizer problem, sometimes causing a
10205	    crash.
10206Solution:   Add -fno-strength-reduce to the compiler arguments. (Dan Sharp)
10207Files:	    src/Make_cyg.mak
10208
10209Patch 6.2.043
10210Problem:    Compiling with both netbeans and workshop doesn't work.
10211Solution:   Move the shellRectangle() function to gui_x11.c. (Gordon Prieur)
10212Files:	    src/gui_x11.c, src/integration.c, src/netbeans.c,
10213	    src/proto/netbeans.pro
10214
10215Patch 6.2.044
10216Problem:    ":au filetypedetect" gives an error for a non-existing event name,
10217	    but it's actually a non-existing group name. (Antoine Mechelynck)
10218Solution:   Make the error message clearer.
10219Files:	    src/fileio.c
10220
10221Patch 6.2.045
10222Problem:    Obtaining the '( mark changes the '' mark. (Gary Holloway)
10223Solution:   Don't set the '' mark when searching for the start/end of the
10224	    current sentence/paragraph.
10225Files:	    src/mark.c
10226
10227Patch 6.2.046
10228Problem:    When evaluating an argument of a function throws an exception the
10229	    function is still called. (Hari Krishna Dara)
10230Solution:   Don't call the function when an exception was thrown.
10231Files:	    src/eval.c
10232
10233Patch 6.2.047 (extra)
10234Problem:    Compiler warnings when using MingW. (Bill McCarthy)
10235Solution:   Give the s_dwLastClickTime variable a type.  Initialize dwEndTime.
10236Files:	    src/os_win32.c
10237
10238Patch 6.2.048
10239Problem:    The Python interface doesn't compile with Python 2.3 when
10240	    dynamically loaded.
10241Solution:   Use dll_PyObject_Malloc and dll_PyObject_Free. (Paul Moore)
10242Files:	    src/if_python.c
10243
10244Patch 6.2.049
10245Problem:    Using a "-range=" argument with ":command" doesn't work and
10246	    doesn't generate an error message.
10247Solution:   Generate an error message.
10248Files:	    src/ex_docmd.c
10249
10250Patch 6.2.050
10251Problem:    Test 32 didn't work on MS-Windows.
10252Solution:   Write the temp file in Unix fileformat. (Walter Briscoe)
10253Files:	    src/testdir/test32.in
10254
10255Patch 6.2.051
10256Problem:    When using "\=submatch(0)" in a ":s" command, line breaks become
10257	    NUL characters.
10258Solution:   Change NL to CR characters, so that they become line breaks.
10259Files:	    src/regexp.c
10260
10261Patch 6.2.052
10262Problem:    A few messages are not translated.
10263Solution:   Add _() to the messages. (Muraoka Taro)
10264Files:	    src/ex_cmds.c
10265
10266Patch 6.2.053
10267Problem:    Prototype for bzero() doesn't match most systems.
10268Solution:   Use "void *" instead of "char *" and "size_t" instead of "int".
10269Files:	    src/osdef1.h.in
10270
10271Patch 6.2.054
10272Problem:    A double-byte character with a second byte that is a backslash
10273	    causes problems inside a string.
10274Solution:   Skip over multi-byte characters in a string properly. (Yasuhiro
10275	    Matsumoto)
10276Files:	    src/eval.c
10277
10278Patch 6.2.055
10279Problem:    Using col('.') from CTRL-O in Insert mode does not return the
10280	    correct value for multi-byte characters.
10281Solution:   Correct the cursor position when it is necessary, move to the
10282	    first byte of a multi-byte character. (Yasuhiro Matsumoto)
10283Files:	    src/edit.c
10284
10285Patch 6.2.056 (extra)
10286Problem:    Building with Sniff++ doesn't work.
10287Solution:   Use the multi-threaded libc when needed. (Holger Ditting)
10288Files:	    src/Make_mvc.mak
10289
10290Patch 6.2.057 (extra)
10291Problem:    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
10294Solution:   Define HAVE_PUTENV.  Undefine OK after including curses.h.
10295	    Remove declarations for unused variables.
10296Files:	    src/os_mac.c, src/os_mac.h, src/vim.h
10297
10298Patch 6.2.058
10299Problem:    When 'autochdir' is set ":bnext" to a buffer without a name causes
10300	    a crash.
10301Solution:   Don't call vim_chdirfile() when the file name is NULL. (Taro
10302	    Muraoka)
10303Files:	    src/buffer.c
10304
10305Patch 6.2.059
10306Problem:    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)
10310Solution:   Don't skip redrawing part of the window when it was scrolled.
10311Files:	    src/screen.c
10312
10313Patch 6.2.060 (extra)
10314Problem:    Win32: When 'encoding' is set to "iso-8859-7" copy/paste to/from
10315	    the clipboard gives a lalloc(0) error. (Kriton Kyrimis)
10316Solution:   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.
10319Files:	    src/os_mswin.c
10320
10321Patch 6.2.061
10322Problem:    GUI: Using the left mouse button with the shift key should work
10323	    like "*" but it scrolls instead. (Martin Beller)
10324Solution:   Don't recognize an rxvt scroll wheel event when using the GUI.
10325Files:	    src/term.c
10326
10327Patch 6.2.062
10328Problem:    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)
10331Solution:   Use "syn_buf" instead of "curbuf" to get the b_syn_containedin
10332	    flag.
10333Files:	    src/syntax.c
10334
10335Patch 6.2.063
10336Problem:    When using custom completion end up with no matches.
10337Solution:   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().
10340Files:	    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
10342
10343Patch 6.2.064
10344Problem:    resolve() only handles one symbolic link, need to repeat it to
10345	    resolve all of them.  Then need to simplify the file name.
10346Solution:   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)
10349Files:	    runtime/doc/eval.txt, src/eval.c, src/tag.c,
10350	    src/testdir/test49.vim
10351
10352Patch 6.2.065
10353Problem:    ":windo 123" only updates other windows when entering them.
10354	    (Walter Briscoe)
10355Solution:   Update the topline before going to the next window.
10356Files:	    src/ex_cmds2.c
10357
10358Patch 6.2.066 (extra)
10359Problem:    Ruby interface doesn't work with Ruby 1.8.0.
10360Solution:   Change "defout" to "stdout". (Aron Griffis)
10361	    Change dynamic loading. (Taro Muraoka)
10362Files:	    src/if_ruby.c, src/Make_mvc.mak
10363
10364Patch 6.2.067
10365Problem:    When searching for a string that starts with a composing character
10366	    the command line isn't drawn properly.
10367Solution:   Don't count the space to draw the composing character on and
10368	    adjust the cursor column after drawing the string.
10369Files:	    src/message.c
10370
10371Patch 6.2.068
10372Problem:    Events for the netbeans interface that include a file name with
10373	    special characters don't work properly.
10374Solution:   Use nb_quote() on the file name. (Sergey Khorev)
10375Files:	    src/netbeans.c
10376
10377Patch 6.2.069 (after 6.2.064)
10378Problem:    Unused variables "limit" and "new_st" and unused label "fail" in
10379	    some situation. (Bill McCarthy)
10380Solution:   Put the declarations inside an #ifdef. (Servatius Brandt)
10381Files:	    src/eval.c, src/tag.c
10382
10383Patch 6.2.070 (after 6.2.069)
10384Problem:    Still unused variable "new_st". (Bill McCarthy)
10385Solution:   Move the declaration to the right block this time.
10386Files:	    src/tag.c
10387
10388Patch 6.2.071
10389Problem:    'statusline' can only contain 50 % items. (Antony Scriven)
10390Solution:   Allow 80 items and mention it in the docs.
10391Files:	    runtime/doc/option.txt, src/vim.h
10392
10393Patch 6.2.072
10394Problem:    When using expression folding, foldexpr() mostly returns -1 for
10395	    the previous line, which makes it difficult to write a fold
10396	    expression.
10397Solution:   Make the level of the previous line available while still looking
10398	    for the end of a fold.
10399Files:	    src/fold.c
10400
10401Patch 6.2.073
10402Problem:    When adding detection of a specific filetype for a plugin you need
10403	    to edit "filetype.vim".
10404Solution:   Source files from the "ftdetect" directory, so that a filetype
10405	    detection plugin only needs to be dropped in a directory.
10406Files:	    runtime/doc/filetype.txt, runtime/doc/usr_05.txt,
10407	    runtime/doc/usr_41.txt, runtime/filetype.vim
10408
10409Patch 6.2.074
10410Problem:    Warnings when compiling the Python interface. (Ajit Thakkar)
10411Solution:   Use ANSI function declarations.
10412Files:	    src/if_python.c
10413
10414Patch 6.2.075
10415Problem:    When the temp file for writing viminfo can't be used "NULL"
10416	    appears in the error message. (Ben Lavender)
10417Solution:   Print the original file name when there is no temp file name.
10418Files:	    src/ex_cmds.c
10419
10420Patch 6.2.076
10421Problem:    The tags listed for cscope are in the wrong order. (Johannes
10422	    Stezenbach)
10423Solution:   Remove the reordering of tags for the current file. (Sergey
10424	    Khorev)
10425Files:	    src/if_cscope.c
10426
10427Patch 6.2.077
10428Problem:    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)
10431Solution:   Don't convert an empty string to a zero.
10432Files:	    src/eval.c
10433
10434Patch 6.2.078
10435Problem:    "make test" doesn't work if Vim wasn't compiled yet. (Ed Avis)
10436Solution:   Build Vim before running the tests.
10437Files:	    src/Makefile
10438
10439Patch 6.2.079
10440Problem:    ":w ++enc=utf-8 !cmd" doesn't work.
10441Solution:   Check for the "++" argument before the "!".
10442Files:	    src/ex_docmd.c
10443
10444Patch 6.2.080
10445Problem:    When 't_ti' is not empty but doesn't swap screens, using "ZZ" in
10446	    an unmodified file doesn't clear the last line.
10447Solution:   Call msg_clr_eos() when needed. (Michael Schroeder)
10448Files:	    src/os_unix.c
10449
10450Patch 6.2.081
10451Problem:    Problem when using a long multibyte string for the statusline.
10452Solution:   Use the right pointer to get the cell size. (Taro Muraoka)
10453Files:	    src/buffer.c
10454
10455Patch 6.2.082
10456Problem:    Can't compile with Perl 5.8.1.
10457Solution:   Rename "e_number" to "e_number_exp". (Sascha Blank)
10458Files:	    src/digraph.c, src/globals.h
10459
10460Patch 6.2.083
10461Problem:    When a compiler uses ^^^^ to mark a word the information is not
10462	    visible in the quickfix window. (Srikanth Sankaran)
10463Solution:   Don't remove the indent for a line that is not recognized as an
10464	    error message.
10465Files:	    src/quickfix.c
10466
10467Patch 6.2.084
10468Problem:    "g_" in Visual mode always goes to the character after the line.
10469	    (Jean-Rene David)
10470Solution:   Ignore the NUL at the end of the line.
10471Files:	    src/normal.c
10472
10473Patch 6.2.085
10474Problem:    ":verbose set ts" doesn't say an option was set with a "-c" or
10475	    "--cmd" argument.
10476Solution:   Remember the option was set from a Vim argument.
10477Files:	    src/main.c, src/ex_cmds2.c, src/vim.h
10478
10479Patch 6.2.086
10480Problem:    "{" and "}" stop inside a closed fold.
10481Solution:   Only stop once inside a closed fold. (Stephen Riehm)
10482Files:	    src/search.c
10483
10484Patch 6.2.087
10485Problem:    CTRL-^ doesn't use the 'confirm' option.  Same problem with
10486	    ":bnext". (Yakov Lerner)
10487Solution:   Put up a dialog for a changed file when 'confirm' is set in more
10488	    situations.
10489Files:	    src/buffer.c, src/ex_cmds.c
10490
10491Patch 6.2.088
10492Problem:    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)
10495Solution:   Set 'sidescrolloff' to zero while displaying the match.
10496Files:	    src/search.c
10497
10498Patch 6.2.089
10499Problem:    ":set isk+=" adds a comma. (Mark Waggoner)
10500Solution:   Don't add a comma when the added value is empty.
10501Files:	    src/option.c
10502
10503Patch 6.2.090 (extra)
10504Problem:    Win32: MingW compiler complains about #pragmas. (Bill McCarthy)
10505Solution:   Put an #ifdef around the #pragmas.
10506Files:	    src/os_win32.c
10507
10508Patch 6.2.091
10509Problem:    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)
10512Solution:   Save and restore msg_scroll in handle_drop().
10513Files:	    src/ex_docmd.c
10514
10515Patch 6.2.092
10516Problem:    Invalid items appear in the help file tags. (Antonio Colombo)
10517Solution:   Only accept tags with white space before the first "*".
10518Files:	    runtime/doc/doctags.c, src/ex_cmds.c
10519
10520Patch 6.2.093
10521Problem:    ":nnoremenu" also defines menu for Visual mode. (Klaus Bosau)
10522Solution:   Check the second command character for an "o", not the third.
10523Files:	    src/menu.c
10524
10525Patch 6.2.094
10526Problem:    Can't compile with GTK and tiny features.
10527Solution:   Include handle_drop() and vim_chdirfile() when FEAT_DND is defined.
10528	    Do not try to split the window.
10529Files:	    src/ex_docmd.c, src/misc2.c
10530
10531Patch 6.2.095
10532Problem:    The message "Cannot go to buffer x" is confusing for ":buf 6".
10533	    (Frans Englich)
10534Solution:   Make it "Buffer x does not exist".
10535Files:	    src/buffer.c
10536
10537Patch 6.2.096
10538Problem:    Win32: ":let @* = ''" put a newline on the clipboard. (Klaus
10539	    Bosau)
10540Solution:   Put zero bytes on the clipboard for an empty string.
10541Files:	    src/ops.c
10542
10543Patch 6.2.097
10544Problem:    Setting or resetting 'insertmode' in a BufEnter autocommand
10545	    doesn't always have immediate effect. (Nagger)
10546Solution:   When 'insertmode' is set, set need_start_insertmode, when it's
10547	    reset set stop_insert_mode.
10548Files:	    src/option.c
10549
10550Patch 6.2.098 (after 6.2.097)
10551Problem:    Can't build Vim with tiny features. (Christian J. Robinson)
10552Solution:   Declare stop_insert_mode always.
10553Files:	    src/edit.c, src/globals.h
10554
10555Patch 6.2.099 (extra)
10556Problem:    Test 49 fails. (Mikolaj Machowski)
10557Solution:   The Polish translation must not change "E116" to "R116".
10558Files:	    src/po/pl.po
10559
10560Patch 6.2.100
10561Problem:    "make proto" fails when compiled with the Perl interface.
10562Solution:   Remove "-fno.*" from PERL_CFLAGS, cproto sees it as its option.
10563Files:	    src/auto/configure, src/configure.in
10564
10565Patch 6.2.101
10566Problem:    When using syntax folding, opening a file slows down a lot when
10567	    it's size increases by only 20%. (Gary Johnson)
10568Solution:   The array with cached syntax states is leaking entries.  After
10569	    cleaning up the list obtain the current entry again.
10570Files:	    src/syntax.c
10571
10572Patch 6.2.102
10573Problem:    The macros equal() and CR conflict with a Carbon header file.
10574Solution:   Rename equal() to equalpos().  Rename CR to CAR.
10575	    Do this in the non-extra files only.
10576Files:	    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
10582
10583Patch 6.2.103 (extra)
10584Problem:    The macros equal() and CR conflict with a Carbon header file.
10585Solution:   Rename equal() to equalpos().  Rename CR to CAR.
10586	    Do this in the extra files only.
10587Files:	    src/gui_photon.c, src/gui_w48.c
10588
10589Patch 6.2.104
10590Problem:    Unmatched braces in the table with options.
10591Solution:   Move the "}," outside of the #ifdef. (Yakov Lerner)
10592Files:	    src/option.c
10593
10594Patch 6.2.105
10595Problem:    When the cursor is past the end of the line when calling
10596	    get_c_indent() a crash might occur.
10597Solution:   Don't look past the end of the line. (NJ Verenini)
10598Files:	    src/misc1.c
10599
10600Patch 6.2.106
10601Problem:    Tag searching gets stuck on a very long line in the tags file.
10602Solution:   When skipping back to search the first matching tag remember the
10603	    offset where searching started looking for a line break.
10604Files:	    src/tag.c
10605
10606Patch 6.2.107 (extra)
10607Problem:    The NetBeans interface cannot be used on Win32.
10608Solution:   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.
10613Files:	    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
10621
10622Patch 6.2.108
10623Problem:    Crash when giving a message about ignoring case in a tag. (Manfred
10624	    Kuehn)
10625Solution:   Use a longer buffer for the message.
10626Files:	    src/tag.c
10627
10628Patch 6.2.109
10629Problem:    Compiler warnings with various Amiga compilers.
10630Solution:   Add typecast, prototypes, et al. that are also useful for other
10631	    systems.  (Flavio Stanchina)
10632Files:	    src/eval.c, src/ops.c
10633
10634Patch 6.2.110
10635Problem:    When $LANG includes the encoding, a menu without an encoding name
10636	    is not found.
10637Solution:   Also look for a menu file without any encoding.
10638Files:	    runtime/menu.vim
10639
10640Patch 6.2.111
10641Problem:    Encoding "cp1251" is not recognized.
10642Solution:   Add "cp1251" to the table of encodings. (Alexey Froloff)
10643Files:	    src/mbyte.c
10644
10645Patch 6.2.112
10646Problem:    After applying patches test32 fails. (Antonio Colombo)
10647Solution:   Have "make clean" in the testdir delete *.rej and *.orig files.
10648	    Use this when doing "make clean" in the src directory.
10649Files:	    src/Makefile, src/testdir/Makefile
10650
10651Patch 6.2.113
10652Problem:    Using ":startinsert" after "$" works like "a" instead of "i".
10653	    (Ajit Thakkar)
10654Solution:   Reset "w_curswant" for ":startinsert" and reset o_eol in edit().
10655Files:	    src/edit.c, src/ex_docmd.c
10656
10657Patch 6.2.114
10658Problem:    When stdout is piped through "tee", the size of the screen may not
10659	    be correct.
10660Solution:   Use stdin instead of stdout for ioctl() when stdin is a tty and
10661	    stdout isn't.
10662Files:	    src/os_unix.c
10663
10664Patch 6.2.115 (extra)
10665Problem:    Compiler warnings with various Amiga compilers.
10666Solution:   Add typecast, prototypes, et al.  Those changes that are
10667	    Amiga-specific. (Flavio Stanchina)
10668Files:	    src/fileio.c, src/memfile.c, src/os_amiga.c, src/os_amiga.h,
10669	    src/vim.h
10670
10671Patch 6.2.116 (extra)
10672Problem:    German keyboard with Numlock set different from system startup
10673	    causes problems.
10674Solution:   Ignore keys with code 0xff. (Helmut Stiegler)
10675Files:	    src/gui_w48.c
10676
10677Patch 6.2.117
10678Problem:    Breakpoints in loops of sourced files and functions are not
10679	    detected. (Hari Krishna Dara)
10680Solution:   Check for breakpoints when using lines that were previously read.
10681	    (Servatius Brandt)
10682Files:	    src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/proto/eval.pro,
10683	    src/proto/ex_cmds2.pro
10684
10685Patch 6.2.118 (extra)
10686Problem:    Mac: Compiling is done in a non-standard way.
10687Solution:   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.
10690Files:	    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
10694
10695Patch 6.2.119 (after 6.2.107)
10696Problem:    When packing the MS-Windows archives a few files are missing.
10697	    (Guopeng Wen)
10698Solution:   Add gui_beval.* to the list of generic source files.
10699Files:	    Makefile
10700
10701Patch 6.2.120
10702Problem:    Win32 GUI: The console dialogs are not supported on MS-Windows,
10703	    disabling the 'c' flag of 'guioptions'. (Servatius Brandt)
10704Solution:   Define FEAT_CON_DIALOG also for GUI-only builds.
10705Files:	    src/feature.h
10706
10707Patch 6.2.121 (after 6.2.118)
10708Problem:    Not all make programs support "+=". (Charles Campbell)
10709Solution:   Use a normal assignment.
10710Files:	    src/Makefile
10711
10712Patch 6.2.122 (after 6.2.119)
10713Problem:    Not all shells can expand [^~].  File missing.  (Guopeng Wen)
10714Solution:   Use a simpler pattern.  Add the Aap recipe for the maze program
10715	    and a clean version of the source code.
10716Files:	    Makefile, runtime/macros/maze/Makefile,
10717	    runtime/macros/maze/README.txt, runtime/macros/maze/main.aap,
10718	    runtime/macros/maze/mazeclean.c
10719
10720Patch 6.2.123 (after 6.2.118)
10721Problem:    Running configure fails. (Tony Leneis)
10722Solution:   Change "==" to "=" for a test.
10723Files:	    src/auto/configure, src/configure.in
10724
10725Patch 6.2.124 (after 6.2.121)(extra)
10726Problem:    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)
10730Solution:   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 ).
10734Files:	    src/INSTALLmac.txt, src/Makefile, src/misc1.c
10735
10736Patch 6.2.125 (after 6.2.107)
10737Problem:    The "winsock2.h" file isn't always available.
10738Solution:   Don't include this header file.
10739Files:	    src/netbeans.c
10740
10741Patch 6.2.126
10742Problem:    Typing CTRL-C at a confirm() prompt doesn't throw an exception.
10743Solution:   Reset "mapped_ctrl_c" in get_keystroke(), so that "got_int" is set
10744	    in _OnChar().
10745Files:	    src/misc1.c
10746
10747Patch 6.2.127 (extra)
10748Problem:    Win32 console: Typing CTRL-C doesn't throw an exception.
10749Solution:   Set got_int immediately when CTRL-C is typed, don't wait for
10750	    mch_breakcheck() being called.
10751Files:	    src/os_win32.c
10752
10753Patch 6.2.128 (after 6.2.118)
10754Problem:    src/auto/configure is not consistent with src/configure.in.
10755Solution:   Use the newly generated configure script.
10756Files:	    src/auto/configure
10757
10758Patch 6.2.129
10759Problem:    When 'number' is set 'wrapmargin' does not work Vi-compatible.
10760	    (Yasuhiro Matsumoto)
10761Solution:   Reduce the textwidth when 'number' is set.  Also for 'foldcolumn'
10762	    and similar things.
10763Files:	    src/edit.c
10764
10765Patch 6.2.130 (extra)
10766Problem:    Win32 console: When 'restorescreen' is not set exiting Vim causes
10767	    the screen to be cleared. (Michael A. Mangino)
10768Solution:   Don't clear the screen when exiting and 'restorescreen' isn't set.
10769Files:	    src/os_win32.c
10770
10771Patch 6.2.131 (extra)
10772Problem:    Win32: Font handles are leaked.
10773Solution:   Free italic, bold and bold-italic handles before overwriting them.
10774	    (Michael Wookey)
10775Files:	    src/gui_w48.c
10776
10777Patch 6.2.132 (extra)
10778Problem:    Win32: console version doesn't work on latest Windows Server 2003.
10779Solution:   Copy 12000 instead of 15000 cells at a time to avoid running out
10780	    of memory.
10781Files:	    src/os_win32.c
10782
10783Patch 6.2.133
10784Problem:    When starting the GUI a bogus error message about 'imactivatekey'
10785	    may be given.
10786Solution:   Only check the value of 'imactivatekey' when the GUI is running.
10787Files:	    src/gui.c, src/option.c
10788
10789Patch 6.2.134 (extra)
10790Problem:    Win32: When scrolling parts of the window are redrawn when this
10791	    isn't necessary.
10792Solution:   Only invalidate parts of the window when they are obscured by
10793	    other windows. (Michael Wookey)
10794Files:	    src/gui_w48.c
10795
10796Patch 6.2.135
10797Problem:    An item <> in the ":command" argument is interpreted as <args>.
10798Solution:   Avoid that <> is recognized as <args>.
10799Files:	    src/ex_docmd.c
10800
10801Patch 6.2.136
10802Problem:    ":e ++enc=latin1 newfile" doesn't set 'fenc' when the file doesn't
10803	    exist.  (Miroslaw Dobrzanski-Neumann)
10804Solution:   Set 'fileencoding' to the specified encoding when editing a file
10805	    that does not exist.
10806Files:	    src/fileio.c
10807
10808Patch 6.2.137
10809Problem:    "d:cmd<CR>" cannot be repeated with ".".  Breaks repeating "d%"
10810	    when using the matchit plugin.
10811Solution:   Store the command to be repeated.  This is restricted to
10812	    single-line commands.
10813Files:	    src/ex_docmd.c, src/globals.h, src/normal.c, src/vim.h
10814
10815Patch 6.2.138 (extra)
10816Problem:    Compilation problem on VMS with dynamic buffer on the stack.
10817Solution:   Read one byte less than the size of the buffer, so that we can
10818	    check for the string length without an extra buffer.
10819Files:	    src/os_vms.c
10820
10821Patch 6.2.139
10822Problem:    Code is repeated in the two Perl files.
10823Solution:   Move common code from if_perl.xs and if_perlsfio.c to vim.h.
10824	    Also fix a problem with generating prototypes.
10825Files:	    src/if_perl.xs, src/if_perlsfio.c, src/vim.h
10826
10827Patch 6.2.140 (after 6.2.121)
10828Problem:    Mac: Compiling with Python and Perl doesn't work.
10829Solution:   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".
10833Files:	    src/auto/configure, src/configure.in, src/config.mk.in
10834
10835Patch 6.2.141 (extra)
10836Problem:    Mac: The b_FSSpec field is sometimes unused.
10837Solution:   Change the #ifdef to FEAT_CW_EDITOR and defined it in feature.h
10838Files:	    src/fileio.c, src/gui_mac.c, src/structs.h, src/feature.h
10839
10840Patch 6.2.142 (after 6.2.124)
10841Problem:    Mac: building without GUI through configure doesn't work.
10842	    When the system is slow, unpacking the resource file takes too
10843	    long.
10844Solution:   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)
10849Files:	    Makefile, src/Makefile, src/auto/configure, src/configure.in,
10850	    src/dehqx.py, src/vim.h
10851
10852Patch 6.2.143
10853Problem:    Using "K" on Visually selected text doesn't work if it ends in
10854	    a multi-byte character.
10855Solution:   Include all the bytes of the last character. (Taro Muraoka)
10856Files:	    src/normal.c
10857
10858Patch 6.2.144
10859Problem:    When "g:html_use_css" is set the HTML header generated by the
10860	    2html script is wrong.
10861Solution:   Add the header after adding HREF for links.
10862	    Also use ":normal!" instead of ":normal" to avoid mappings
10863	    getting in the way.
10864Files:	    runtime/syntax/2html.vim
10865
10866Patch 6.2.145 (after 6.2.139)
10867Problem:    Undefining "bool" doesn't work for older systems. (Wojtek Pilorz)
10868Solution:   Only undefine "bool" on Mac OS.
10869Files:	    src/vim.h
10870
10871Patch 6.2.146
10872Problem:    On some systems the prototype for iconv() is wrong, causing a
10873	    warning message.
10874Solution:   Use a cast (void *) to avoid the warning. (Charles Campbell)
10875Files:	    src/fileio.c, src/mbyte.c
10876
10877Patch 6.2.147
10878Problem:    ":s/pat/\=col('.')" always replaces with "1".
10879Solution:   Set the cursor to the start of the match before substituting.
10880	    (Helmut Stiegler)
10881Files:	    src/ex_cmds.c
10882
10883Patch 6.2.148
10884Problem:    Can't break an Insert into several undoable parts.
10885Solution:   Add the CTRL-G u command.
10886Files:	    runtime/doc/insert.txt, src/edit.c
10887
10888Patch 6.2.149
10889Problem:    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)
10893Solution:   Divide by 100 instead of multiplying.  Avoid overflow when
10894	    computing the line number for "100%".
10895Files:	    src/buffer.c, src/ex_cmds2.c, src/normal.c
10896
10897Patch 6.2.150
10898Problem:    When doing "vim - < file" lines are broken at NUL chars.
10899	    (Daniel Goujot)
10900Solution:   Change NL characters back to NUL when reading from the temp
10901	    buffer.
10902Files:	    src/fileio.c
10903
10904Patch 6.2.151
10905Problem:    When doing "vim --remote +startinsert file" some commands are
10906	    inserted as text. (Klaus Bosau)
10907Solution:   Put all the init commands in one Ex line, not using a <CR>, so
10908	    that Insert mode isn't started too early.
10909Files:	    src/main.c
10910
10911Patch 6.2.152
10912Problem:    The cursor() function doesn't reset the column offset for
10913	    'virtualedit'.
10914Solution:   Reset the offset to zero. (Helmut Stiegler)
10915Files:	    src/eval.c
10916
10917Patch 6.2.153
10918Problem:    Win32: ":lang german" doesn't use German messages.
10919Solution:   Add a table to translate the Win32 language names to two-letter
10920	    language codes.
10921Files:	    src/ex_cmds2.c
10922
10923Patch 6.2.154
10924Problem:    Python bails out when giving a warning message. (Eugene
10925	    Minkovskii)
10926Solution:   Set sys.argv[] to an empty string.
10927Files:	    src/if_python.c
10928
10929Patch 6.2.155
10930Problem:    Win32: Using ":tjump www" in a help file gives two results.
10931	    (Dave Roberts)
10932Solution:   Ignore differences between slashes and backslashes when checking
10933	    for identical tag matches.
10934Files:	    src/tag.c
10935
10936Patch 6.2.156 (after 6.2.125)
10937Problem:    Win32: Netbeans fails to build, EINTR is not defined.
10938Solution:   Redefine EINTR to WSAEINTR. (Mike Williams)
10939Files:	    src/netbeans.c
10940
10941Patch 6.2.157
10942Problem:    Using "%p" in 'errorformat' gives a column number that is too
10943	    high.
10944Solution:   Set the flag to use the number as a virtual column.  (Lefteris
10945	    Koutsoloukas)
10946Files:	    src/quickfix.c
10947
10948Patch 6.2.158
10949Problem:    The sed command on Solaris and HPUX doesn't work for a line that
10950	    doesn't end in a newline.
10951Solution:   Add a newline when feeding text to sed. (Mark Waggoner)
10952Files:	    src/configure.in, src/auto/configure
10953
10954Patch 6.2.159
10955Problem:    When using expression folding and 'foldopen' is "undo" an undo
10956	    command doesn't always open the fold.
10957Solution:   Save and restore the KeyTyped variable when evaluating 'foldexpr'.
10958	    (Taro Muraoka)
10959Files:	    src/fold.c
10960
10961Patch 6.2.160
10962Problem:    When 'virtualedit' is "all" and 'selection is "exclusive",
10963	    selecting a double-width character below a single-width character
10964	    may cause a crash.
10965Solution:   Avoid overflow on unsigned integer decrement. (Taro Muraoka)
10966Files:	    src/normal.c
10967
10968Patch 6.2.161 (extra)
10969Problem:    VMS: Missing header file.  Reading input busy loops.
10970Solution:   Include termdef.h.  Avoid the use of a wait function in
10971	    vms_read().  (Frank Ries)
10972Files:	    src/os_unix.h, src/os_vms.c
10973
10974Patch 6.2.162
10975Problem:    ":redraw" doesn't always display the text that includes the cursor
10976	    position, e.g. after ":call cursor(1, 0)". (Eugene Minkovskii)
10977Solution:   Call update_topline() before redrawing.
10978Files:	    src/ex_docmd.c
10979
10980Patch 6.2.163
10981Problem:    "make install" may also copy AAPDIR directories.
10982Solution:   Delete AAPDIR directories, just like CVS directories.
10983Files:	    src/Makefile
10984
10985Patch 6.2.164 (after 6.2.144)
10986Problem:    When "g:html_use_css" is set the HTML header generated by the
10987	    2html script is still wrong.
10988Solution:   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)
10991Files:	    runtime/syntax/2html.vim
10992
10993Patch 6.2.165
10994Problem:    The configure checks hang when using autoconf 2.57.
10995Solution:   Invoke AC_PROGRAM_EGREP to set $EGREP. (Aron Griffis)
10996Files:	    src/auto/configure, src/configure.in
10997
10998Patch 6.2.166
10999Problem:    When $GZIP contains "-N" editing compressed files doesn't work
11000	    properly.
11001Solution:   Add "-n" to "gzip -d" to avoid restoring the file name. (Oyvind
11002	    Holm)
11003Files:	    runtime/plugin/gzip.vim
11004
11005Patch 6.2.167
11006Problem:    The Python interface leaks memory when assigning lines to a
11007	    buffer. (Sergey Khorev)
11008Solution:   Do not copy the line when calling ml_replace().
11009Files:	    src/if_python.c
11010
11011Patch 6.2.168
11012Problem:    Python interface: There is no way to get the indices from a range
11013	    object.
11014Solution:   Add the "start" and "end" attributes. (Maurice S. Barnum)
11015Files:	    src/if_python.c, runtime/doc/if_pyth.txt
11016
11017Patch 6.2.169
11018Problem:    The prototype for _Xmblen() appears in a recent XFree86 header
11019	    file, causing a warning for our prototype. (Hisashi T Fujinaka)
11020Solution:   Move the prototype to an osdef file, so that it's filtered out.
11021Files:	    src/mbyte.c, src/osdef2.h.in
11022
11023Patch 6.2.170
11024Problem:    When using Sun WorkShop the current directory isn't changed to
11025	    where the file is.
11026Solution:   Set the 'autochdir' option when using WorkShop.  And avoid using
11027	    the basename when 'autochdir' is not set.
11028Files:	    src/gui_x11.c, src/ex_cmds.c
11029
11030Patch 6.2.171 (after 6.2.163)
11031Problem:    The "-or" argument of "find" doesn't work for SysV systems.
11032Solution:   Use "-o" instead. (Gordon Prieur)
11033Files:	    src/Makefile
11034
11035Patch 6.2.172 (after 6.2.169)
11036Problem:    The prototype for _Xmblen() still causes trouble.
11037Solution:   Include the X11 header file that defines the prototype.
11038Files:	    src/osdef2.h.in, src/osdef.sh
11039
11040Patch 6.2.173 (extra)
11041Problem:    Win32: Ruby interface doesn't work with Ruby 1.8.0 for other
11042	    compilers than MSVC.
11043Solution:   Fix the BC5, Cygwin and Mingw makefiles. (Dan Sharp)
11044Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak
11045
11046Patch 6.2.174
11047Problem:    After the ":intro" message only a mouse click in the last line
11048	    gets past the hit-return prompt.
11049Solution:   Accept a click at or below the hit-return prompt.
11050Files:	    src/gui.c, src/message.c
11051
11052Patch 6.2.175
11053Problem:    Changing 'backupext' in a *WritePre autocommand doesn't work.
11054	    (William Natter)
11055Solution:   Move the use of p_bex to after executing the *WritePre
11056	    autocommands.  Also avoids reading allocated memory after freeing.
11057Files:	    src/fileio.c
11058
11059Patch 6.2.176
11060Problem:    Accented characters in translated help files are not handled
11061	    correctly. (Fabien Vayssiere)
11062Solution:   Include "192-255" in 'iskeyword' for the help window.
11063Files:	    src/ex_cmds.c
11064
11065Patch 6.2.177 (extra)
11066Problem:    VisVim: Opening a file with a space in the name doesn't work. (Rob
11067	    Retter)  Arbitrary commands are being executed. (Neil Bird)
11068Solution:   Put a backslash in front of every space in the file name.
11069	    (Gerard Blais)  Terminate the CTRL-\ CTRL-N command with a NUL.
11070Files:	    src/VisVim/Commands.cpp, src/VisVim/VisVim.rc
11071
11072Patch 6.2.178
11073Problem:    People who don't know how to exit Vim try pressing CTRL-C.
11074Solution:   Give a message how to exit Vim when CTRL-C is pressed and it
11075	    doesn't cancel anything.
11076Files:	    src/normal.c
11077
11078Patch 6.2.179 (extra)
11079Problem:    The en_gb messages file isn't found on case sensitive systems.
11080Solution:   Rename en_gb to en_GB. (Mike Williams)
11081Files:	    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
11083
11084Patch 6.2.180
11085Problem:    Compiling with GTK2 on Win32 doesn't work.
11086Solution:   Include gdkwin32.h instead of gdkx.h. (Srinath Avadhanula)
11087Files:	    src/gui_gtk.c, src/gui_gtk_f.c, src/gui_gtk_x11.c, src/mbyte.c
11088
11089Patch 6.2.181 (after 6.2.171)
11090Problem:    The "-o" argument of "find" has lower priority than the implied
11091	    "and" with "-print".
11092Solution:   Add parenthesis around the "-o" expression. (Gordon Prieur)
11093Files:	    src/Makefile
11094
11095Patch 6.2.182 (after 6.2.094)
11096Problem:    Compilation with tiny features fails because of missing
11097	    get_past_head() function.
11098Solution:   Adjust the #ifdef for get_past_head().
11099Files:	    src/misc1.c
11100
11101Patch 6.2.183 (after 6.2.178)
11102Problem:    Warning for char/unsigned char mixup.
11103Solution:   Use MSG() instead of msg(). (Tony Leneis)
11104Files:	    src/normal.c
11105
11106Patch 6.2.184
11107Problem:    With 'formatoptions' set to "1aw" inserting text may cause the
11108	    paragraph to be ended. (Alan Schmitt)
11109Solution:   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.
11112Files:	    src/edit.c, src/normal.c, src/proto/edit.pro
11113
11114Patch 6.2.185
11115Problem:    Restoring a session with zero-height windows does not work
11116	    properly. (Charles Campbell)
11117Solution:   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.
11122Files:	    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
11124
11125Patch 6.2.186 (after 6.2.185)
11126Problem:    Documentation file eval.txt contains examples without indent.
11127Solution:   Insert the indent.  Also fix other mistakes.
11128Files:	    runtime/doc/eval.txt
11129
11130Patch 6.2.187
11131Problem:    Using Insure++ reveals a number of bugs.  (Dominique Pelle)
11132Solution:   Initialize variables where needed.  Free allocated memory to avoid
11133	    leaks.  Fix comparing tags to avoid reading past allocated memory.
11134Files:	    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
11136
11137Patch 6.2.188 (extra)
11138Problem:    MS-Windows: Multi-byte characters in a filename cause trouble for
11139	    the window title.
11140Solution:   Return when the wide function for setting the title did its work.
11141Files:	    src/gui_w48.c
11142
11143Patch 6.2.189
11144Problem:    When setting 'viminfo' after editing a new buffer its marks are
11145	    not stored. (Keith Roberts)
11146Solution:   Set the "b_marks_read" flag when skipping to read marks from the
11147	    viminfo file.
11148Files:	    src/fileio.c
11149
11150Patch 6.2.190
11151Problem:    When editing a compressed files, marks are lost.
11152Solution:   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.
11161Files:	    runtime/doc/motion.txt, runtime/plugin/gzip.vim, src/ex_cmds.c,
11162	    src/ex_docmd.c, src/mark.c, src/structs.h
11163
11164Patch 6.2.191
11165Problem:    The intro message is outdated.  Information about sponsoring and
11166	    registering is missing.
11167Solution:   Show info about sponsoring and registering Vim in the intro
11168	    message now and then.  Add help file about sponsoring.
11169Files:	    runtime/doc/help.txt, runtime/doc/sponsor.txt, runtime/doc/tags,
11170	    runtime/menu.vim, src/version.c
11171
11172Patch 6.2.192
11173Problem:    Using CTRL-T and CTRL-D with "gR" messes up the text.  (Jonathan
11174	    Hankins)
11175Solution:   Avoid calling change_indent() recursively.
11176Files:	    src/edit.c
11177
11178Patch 6.2.193
11179Problem:    When recalling a search pattern from the history from a ":s,a/c,"
11180	    command the '/' ends the search string. (JC van Winkel)
11181Solution:   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.
11185Files:	    src/eval.c, src/ex_getln.c, src/normal.c, src/proto/ex_getln.pro,
11186	    src/search.c, src/tag.c
11187
11188Patch 6.2.194 (after 6.2.068)
11189Problem:    For NetBeans, instead of writing the file and sending an event
11190	    about it, tell NetBeans to write the file.
11191Solution:   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().
11196Files:	    runtime/doc/netbeans.txt, src/fileio.c, src/netbeans.c,
11197	    src/normal.c, src/proto/netbeans.pro, src/structs.h
11198
11199Patch 6.2.195 (after 6.2.190)
11200Problem:    Compiling fails for missing CPO_REMMARK symbol.
11201Solution:   Add the patch I forgot to include...
11202Files:	    src/option.h
11203
11204Patch 6.2.196 (after 6.2.191)
11205Problem:    Rebuilding the documentation doesn't use the sponsor.txt file.
11206Solution:   Add sponsor.txt to the Makefile. (Christian J. Robinson)
11207Files:	    runtime/doc/Makefile
11208
11209Patch 6.2.197
11210Problem:    It is not possible to force a redraw of status lines. (Gary
11211	    Johnson)
11212Solution:   Add the ":redrawstatus" command.
11213Files:	    runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
11214	    src/screen.c
11215
11216Patch 6.2.198
11217Problem:    A few messages are not translated. (Ernest Adrogue)
11218Solution:   Mark the messages to be translated.
11219Files:	    src/ex_cmds.c
11220
11221Patch 6.2.199 (after 6.2.194)
11222Problem:    Vim doesn't work perfectly well with NetBeans.
11223Solution:   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)
11228Files:	    src/netbeans.c, src/normal.c
11229
11230Patch 6.2.200
11231Problem:    When recovering a file, 'fileformat' is always the default, thus
11232	    writing the file may result in differences. (Penelope Fudd)
11233Solution:   Before recovering the file try reading the original file to obtain
11234	    the values of 'fileformat', 'fileencoding', etc.
11235Files:	    src/memline.c
11236
11237Patch 6.2.201
11238Problem:    When 'autowriteall' is set ":qall" still refuses to exit if there
11239	    is a modified buffer. (Antoine Mechelynck)
11240Solution:   Attempt writing modified buffers as intended.
11241Files:	    src/ex_cmds2.c
11242
11243Patch 6.2.202
11244Problem:    Filetype names of CHILL and ch script are confusing.
11245Solution:   Rename "ch" to "chill" and "chscript" to "ch".
11246Files:	    runtime/filetype.vim, runtime/makemenu.vim, runtime/synmenu.vim
11247	    runtime/syntax/ch.vim, runtime/syntax/chill.vim
11248
11249Patch 6.2.203
11250Problem:    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)
11253Solution:   Perform characterwise puts with a count in the right position.
11254Files:	    src/ops.c
11255
11256Patch 6.2.204 (after 6.2.086)
11257Problem:    "]]" in a file with closed folds moves to the end of the file.
11258	    (Nam SungHyun)
11259Solution:   Find one position in each closed fold, then move to after the fold.
11260Files:	    src/search.c
11261
11262Patch 6.2.205 (extra)
11263Problem:    MS-Windows: When the taskbar is at the left or top of the screen,
11264	    the Vim window placement is wrong.
11265Solution:   Compute the size and position of the window correctly. (Taro
11266	    Muraoka)
11267Files:	    src/gui_w32.c, src/gui_w48.c
11268
11269Patch 6.2.206
11270Problem:    Multi-byte characters cannot be used as hotkeys in a console
11271	    dialog.  (Mattias Erkisson)
11272Solution:   Handle multi-byte characters properly.  Also put () or [] around
11273	    default hotkeys.
11274Files:	    src/message.c, src/macros.h
11275
11276Patch 6.2.207
11277Problem:    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)
11280Solution:   Stop searching leftwards for the start of the word at the position
11281	    where insertion started.
11282Files:	    src/getchar.c
11283
11284Patch 6.2.208
11285Problem:    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.
11290Solution:   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.
11294Files:	    src/fold.c
11295
11296Patch 6.2.209
11297Problem:    A bogus fold is created when using "P" while the cursor is in the
11298	    middle of a closed fold. (Kamil Burzynski)
11299Solution:   Correct the line number where marks are modified for closed folds.
11300Files:	    src/ops.c
11301
11302Patch 6.2.210 (extra)
11303Problem:    Mac OSX: antialiased fonts are not supported.
11304Solution:   Add the 'antialias' option to switch on antialiasing on Mac OSX
11305	    10.2 and later. (Peter Cucka)
11306Files:	    runtime/doc/options.txt, src/gui_mac.c, src/option.h, src/option.c
11307
11308Patch 6.2.211 (extra)
11309Problem:    Code for handling file dropped on Vim is duplicated.
11310Solution:   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.
11317Files:	    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
11319
11320Patch 6.2.212 (after 6.2.199)
11321Problem:    NetBeans: Replacing with a count is not handled correctly.
11322Solution:   Move reporting the change outside of the loop for the count.
11323	    (Gordon Prieur)
11324Files:	    src/normal.c
11325
11326Patch 6.2.213 (after 6.2.208)
11327Problem:    Using marker folding, "{{{1" doesn't start a new fold when already
11328	    at fold level 1. (Servatius Brandt)
11329Solution:   Correctly compute the number of folds that start at "{{{1".
11330Files:	    src/fold.c
11331
11332Patch 6.2.214 (after 6.2.211) (extra)
11333Problem:    Warning for an unused variable.
11334Solution:   Delete the declaration. (Bill McCarthy)
11335Files:	    src/gui_w48.c
11336
11337Patch 6.2.215
11338Problem:    NetBeans: problems saving an unmodified file.
11339Solution:   Add isNetbeansModified() function.  Disable netbeans_unmodified().
11340	    (Gordon Prieur)
11341Files:	    src/fileio.c, src/netbeans.c, src/proto/netbeans.pro,
11342	    runtime/doc/netbeans.txt, runtime/doc/tags
11343
11344Patch 6.2.216 (after 6.2.206)
11345Problem:    Multi-byte characters still cannot be used as hotkeys in a console
11346	    dialog.  (Mattias Erkisson)
11347Solution:   Make get_keystroke() handle multi-byte characters.
11348Files:	    src/misc1.c
11349
11350Patch 6.2.217
11351Problem:    GTK: setting the title doesn't always work correctly.
11352Solution:   Invoke gui_mch_settitle(). (Tomas Stehlik)
11353Files:	    src/os_unix.c
11354
11355Patch 6.2.218
11356Problem:    Warning for function without prototype.
11357Solution:   Add argument types to the msgCB field of the BalloonEval struct.
11358Files:	    src/gui_beval.h
11359
11360Patch 6.2.219
11361Problem:    Syntax highlighting hangs on an empty match of an item with a
11362	    nextgroup.  (Charles Campbell)
11363Solution:   Remember that the item has already matched and don't match it
11364	    again at the same position.
11365Files:	    src/syntax.c
11366
11367Patch 6.2.220
11368Problem:    When a Vim server runs in a console a remote command isn't handled
11369	    before a key is typed.  (Joshua Neuheisel)
11370Solution:   Don't try reading more input when a client-server command has been
11371	    received.
11372Files:	    src/os_unix.c
11373
11374Patch 6.2.221
11375Problem:    No file name completion for ":cscope add".
11376Solution:   Add the XFILE flag to ":cscope". (Gary Johnson)
11377Files:	    src/ex_cmds.h
11378
11379Patch 6.2.222
11380Problem:    Using "--remote" several times on a row only opens some of the
11381	    files. (Dany St-Amant)
11382Solution:   Don't delete all typeahead when the server receives a command from
11383	    a client, only delete typed characters.
11384Files:	    src/main.c
11385
11386Patch 6.2.223
11387Problem:    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.
11390Solution:   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().
11394Files:	    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
11396
11397Patch 6.2.224
11398Problem:    Mac: Can't compile with small features. (Axel Kielhorn)
11399Solution:   Also include vim_chdirfile() when compiling for the Mac.
11400Files:	    src/misc2.c
11401
11402Patch 6.2.225
11403Problem:    NetBeans: Reported modified state isn't exactly right.
11404Solution:   Report a file being modified in the NetBeans way.
11405Files:	    src/netbeans.c
11406
11407Patch 6.2.226 (after 6.2.107) (extra)
11408Problem:    The "ws2-32.lib" file isn't always available.
11409Solution:   Use "WSock32.lib" instead. (Taro Muraoka, Dan Sharp)
11410Files:	    src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak
11411
11412Patch 6.2.227 (extra)
11413Problem:    The "PC" symbol is defined but not used anywhere.
11414Solution:   Remove "-DPC" from the makefiles.
11415Files:	    src/Make_bc3.mak, src/Make_bc5.mak, src/Make_cyg.mak,
11416	    src/Make_ming.mak
11417
11418Patch 6.2.228
11419Problem:    Receiving CTRL-\ CTRL-N after typing "f" or "m" doesn't switch Vim
11420	    back to Normal mode.  Same for CTRL-\ CTRL-G.
11421Solution:   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.
11424Files:	    src/normal.c
11425
11426Patch 6.2.229
11427Problem:    ":function" with a name that uses magic curlies does not work
11428	    inside a function.  (Servatius Brandt)
11429Solution:   Skip over the function name properly.
11430Files:	    src/eval.c
11431
11432Patch 6.2.230 (extra)
11433Problem:    Win32: a complex pattern may cause a crash.
11434Solution:   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)
11437Files:	    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
11439
11440Patch 6.2.231 (after 6.2.046)
11441Problem:    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.
11445Solution:   Update "force_abort" also after calling a builtin function, so
11446	    that aborting() always returns the correct value. (Servatius
11447	    Brandt)
11448Files:	    src/eval.c, src/ex_eval.c, src/proto/ex_eval.pro,
11449	    src/testdir/test49.ok, src/testdir/test49.vim
11450
11451Patch 6.2.232
11452Problem:    ":python vim.command('python print 2*2')" crashes Vim.  (Eugene
11453	    Minkovskii)
11454Solution:   Disallow executing a Python command recursively and give an error
11455	    message.
11456Files:	    src/if_python.c
11457
11458Patch 6.2.233
11459Problem:    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
11464Solution:   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.
11470Files:	    src/auto/configure, src/configure.in, src/if_ruby.c
11471
11472Patch 6.2.234
11473Problem:    GTK 2 GUI: ":sp" and the ":q" leaves the cursor on the command
11474	    line.
11475Solution:   Flush output before removing scrollbars.  Also do this in other
11476	    places where gui_mch_*() functions are invoked.
11477Files:	    src/ex_cmds.c, src/option.c, src/window.c
11478
11479Patch 6.2.235 (extra)
11480Problem:    Win32: Cursor isn't removed with a 25x80 window and doing:
11481	    "1830ia<Esc>400a-<Esc>0w0". (Yasuhiro Matsumoto)
11482Solution:   Remove the call to gui_undraw_cursor() from gui_mch_insert_lines().
11483Files:	    src/gui_w48.c
11484
11485Patch 6.2.236
11486Problem:    Using gvim with Agide gives "connection lost" error messages.
11487Solution:   Only give the "connection lost" message when the buffer was once
11488	    owned by NetBeans.
11489Files:	    src/netbeans.c, src/structs.h
11490
11491Patch 6.2.237
11492Problem:    GTK 2: Thai text is drawn wrong.  It changes when moving the
11493	    cursor over it.
11494Solution:   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.
11497Files:	    src/gui_gtk_x11.c
11498
11499Patch 6.2.238 (after 6.2.231)
11500Problem:    ":function" does not work inside a while loop. (Servatius Brandt)
11501Solution:   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)
11506Files:	    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
11510
11511Patch 6.2.239
11512Problem:    GTK 2: With closed folds the arrow buttons of a vertical scrollbar
11513	    often doesn't scroll. (Moshe Kaminsky)
11514Solution:   Hackish solution: Detect that the button was pressed from the
11515	    mouse pointer position.
11516Files:	    src/gui_gtk.c, src/gui.c
11517
11518Patch 6.2.240
11519Problem:    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)
11522Solution:   Search for icons like done for Motif.
11523Files:	    src/gui_gtk.c
11524
11525Patch 6.2.241
11526Problem:    GTK 2: Search and Search/Replace dialogs are synced, that makes no
11527	    sense.  Buttons are sometimes greyed-out. (Jeremy Messenger)
11528Solution:   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)
11530Files:	    src/gui_gtk.c
11531
11532Patch 6.2.242
11533Problem:    Gnome: "vim --help" only shows the Gnome arguments, not the Vim
11534	    arguments.
11535Solution:   Don't let the Gnome code remove the "--help" argument and don't
11536	    exit at the end of usage().
11537Files:	    src/gui_gtk_x11.c, src/main.c
11538
11539Patch 6.2.243 (extra)
11540Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt.
11541Solution:   Move the dropped files to the global argument list, instead of the
11542	    usual drop handling. (Eckehard Berns)
11543Files:	    src/main.c, src/gui_mac.c
11544
11545Patch 6.2.244
11546Problem:    ':echo "\xf7"' displays the illegal byte as if it was a character
11547	    and leaves "cho" after it.
11548Solution:   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.
11550Files:	    src/mbyte.c
11551
11552Patch 6.2.245
11553Problem:    Completion doesn't work for ":keepmarks" and ":lockmarks".
11554Solution:   Add the command modifiers to the table of commands. (Madoka
11555	    Machitani)
11556Files:	    src/ex_cmds.h, src/ex_docmd.c
11557
11558Patch 6.2.246
11559Problem:    Mac: Starting Vim from Finder doesn't show error messages.
11560Solution:   Recognize that output is being displayed by stderr being
11561	    "/dev/console".  (Eckehard Berns)
11562Files:	    src/main.c, src/message.c
11563
11564Patch 6.2.247 (after 6.2.193)
11565Problem:    When using a search pattern from the viminfo file the last
11566	    character is replaced with a '/'.
11567Solution:   Store the separator character in the right place. (Kelvin Lee)
11568Files:	    src/ex_getln.c
11569
11570Patch 6.2.248
11571Problem:    GTK: When XIM is enabled normal "2" and keypad "2" cannot be
11572	    distinguished.
11573Solution:   Detect that XIM changes the keypad key to the expected ASCII
11574	    character and fall back to the non-XIM code. (Neil Bird)
11575Files:	    src/gui_gtk_x11.c, src/mbyte.c, src/proto/mbyte.pro
11576
11577Patch 6.2.249
11578Problem:    ":cnext" moves to the error in the next file, but there is no
11579	    method to go back.
11580Solution:   Add ":cpfile" and ":cNfile".
11581Files:	    src/ex_cmds.h, src/quickfix.c, src/vim.h, runtime/doc/quickfix.txt
11582
11583Patch 6.2.250
11584Problem:    Memory leaks when using signs. (Xavier de Gaye)
11585Solution:   Delete the list of signs when unloading a buffer.
11586Files:	    src/buffer.c
11587
11588Patch 6.2.251
11589Problem:    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.
11592Solution:   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.
11595Files:	    src/gui_gtk.c
11596
11597Patch 6.2.252 (extra, after 6.2.243)
11598Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt for
11599	    Mac OS classic.
11600Solution:   Remove the #ifdef from the code that fixes it for Mac OSX.
11601Files:	    src/gui_mac.c
11602
11603Patch 6.2.253
11604Problem:    When 'tagstack' is not set a ":tag id" command does not work after
11605	    a ":tjump" command.
11606Solution:   Set "new_tag" when 'tagstack' isn't set. (G. Narendran)
11607Files:	    src/tag.c
11608
11609Patch 6.2.254
11610Problem:    May run out of space for error messages.
11611Solution:   Keep room for two more bytes.
11612Files:	    src/quickfix.c
11613
11614Patch 6.2.255
11615Problem:    GTK: A new item in the popup menu is put just after instead of
11616	    just before the right item. (Gabriel Zachmann)
11617Solution:   Don't increment the menu item index.
11618Files:	    src/gui_gtk.c
11619
11620Patch 6.2.256
11621Problem:    Mac: "macroman" encoding isn't recognized, need to use
11622	    "8bit-macroman.
11623Solution:   Recognize "macroman" with an alias "mac". (Eckehard Berns)
11624Files:	    src/mbyte.c
11625
11626Patch 6.2.257 (after 6.2.250)
11627Problem:    Signs are deleted for ":bdel", but they could still be useful.
11628Solution:   Delete signs only for ":bwipe".
11629Files:	    src/buffer.c
11630
11631Patch 6.2.258
11632Problem:    GUI: can't disable (grey-out) a popup menu item.  (Ajit Thakkar)
11633Solution:   Loop over the popup menus for all modes.
11634Files:	    src/menu.c
11635
11636Patch 6.2.259
11637Problem:    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.
11640Solution:   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.
11644Files:	    src/main.c
11645
11646Patch 6.2.260
11647Problem:    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.
11650Solution:   Handle these keys explicitly.  When no default button is specified
11651	    use the first one (works mostly like it was before).
11652Files:	    src/gui_gtk.c
11653
11654Patch 6.2.261
11655Problem:    When 'autoindent' and 'cindent' are set and a line is recognized
11656	    as a comment, starting a new line won't do 'cindent' formatting.
11657Solution:   Also use 'cindent' formatting for lines that are used as a
11658	    comment. (Servatius Brandt)
11659Files:	    src/misc1.c
11660
11661Patch 6.2.262
11662Problem:    1 CTRL-W w beeps, even though going to the first window is
11663	    possible. (Charles Campbell)
11664Solution:   Don't beep.
11665Files:	    src/window.c
11666
11667Patch 6.2.263
11668Problem:    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.
11671Solution:   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)
11675Files:	    src/farsi.h, src/keymap.h, src/ops.c, src/regexp.c, src/search.c
11676
11677Patch 6.2.264 (after 6.2.247)
11678Problem:    Writing past allocated memory when using a command line from the
11679	    viminfo file.
11680Solution:   Store the NUL in the right place.
11681Files:	    src/ex_getln.c
11682
11683Patch 6.2.265
11684Problem:    Although ":set" is not allowed in the sandbox, ":let &opt = val"
11685	    works.
11686Solution:   Do allow changing options in the sandbox, but not the ones that
11687	    can't be changed from a modeline.
11688Files:	    src/ex_cmds.h, src/options.c
11689
11690Patch 6.2.266
11691Problem:    When redirecting output and using ":silent", line breaks are
11692	    missing from output of ":map" and ":tselect".  Alignment of
11693	    columns is wrong.
11694Solution:   Insert a line break where "msg_didout" was tested.  Update msg_col
11695	    when redirecting and using ":silent".
11696Files:	    src/getchar.c, src/message.c
11697
11698Patch 6.2.267 (extra)
11699Problem:    Win32: "&&" in a tearoff menu is not shown. (Luc Hermitte)
11700Solution:   Use the "name" item from the menu instead of the "dname" item.
11701Files:	    src/gui_w32.c, src/menu.c
11702
11703Patch 6.2.268
11704Problem:    GUI: When changing 'guioptions' part of the window may be off
11705	    screen. (Randall Morris)
11706Solution:   Adjust the size of the window when changing 'guioptions', but only
11707	    when adding something.
11708Files:	    src/gui.c
11709
11710Patch 6.2.269
11711Problem:    Diff mode does not highlight a change in a combining character.
11712	    (Raphael Finkel)
11713Solution:   Make diff_find_change() multi-byte aware: find the start byte of
11714	    a character that contains a change.
11715Files:	    src/diff.c
11716
11717Patch 6.2.270
11718Problem:    Completion in Insert mode, then repeating with ".", doesn't handle
11719	    composing characters in the completed text. (Raphael Finkel)
11720Solution:   Don't skip over composing chars when adding completed text to the
11721	    redo buffer.
11722Files:	    src/getchar.c
11723
11724Patch 6.2.271
11725Problem:    NetBeans: Can't do "tail -f" on the log.  Passing socket info with
11726	    an argument or environment variable is not secure.
11727Solution:   Wait after initializing the log.  Allow passing the socket info
11728	    through a file. (Gordon Prieur)
11729Files:	    runtime/doc/netbeans.txt, src/main.c, src/netbeans.c
11730
11731Patch 6.2.272
11732Problem:    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.
11735Solution:   Check for the "po/Makefile" instead of just the "po" directory.
11736	    Check this again before trying to run make with that Makefile.
11737Files:	    src/auto/configure, src/configure.in, src/Makefile
11738
11739Patch 6.2.273
11740Problem:    Changing the sort order in an explorer window for an empty
11741	    directory produces error messages. (Doug Kearns)
11742Solution:   When an invalid range is used for a function that is not going to
11743	    be executed, skip over the arguments anyway.
11744Files:	    src/eval.c
11745
11746Patch 6.2.274
11747Problem:    ":print" skips empty lines when 'list' is set and there is no
11748	    "eol" in 'listchars'. (Yakov Lerner)
11749Solution:   Skip outputting a space for an empty line only when 'list' is set
11750	    and the end-of-line character is not empty.
11751Files:	    src/message.c
11752
11753Patch 6.2.275 (extra, after 6.2.267)
11754Problem:    Warning for uninitialized variable when using gcc.
11755Solution:   Initialize "acLen" to zero. (Bill McCarthy)
11756Files:	    src/gui_w32.c
11757
11758Patch 6.2.276
11759Problem:    ":echo X()" does not put a line break between the message that X()
11760	    displays and the text that X() returns. (Yakov Lerner)
11761Solution:   Invoke msg_start() after evaluating the argument.
11762Files:	    src/eval.c
11763
11764Patch 6.2.277
11765Problem:    Vim crashes when a ":runtime ftplugin/ada.vim" causes a recursive
11766	    loop. (Robert Nowotniak)
11767Solution:   Restore "msg_list" before returning from do_cmdline().
11768Files:	    src/ex_docmd.c
11769
11770Patch 6.2.278
11771Problem:    Using "much" instead of "many".
11772Solution:   Correct the error message.
11773Files:	    src/eval.c
11774
11775Patch 6.2.279
11776Problem:    There is no default choice for a confirm() dialog, now that it is
11777	    possible not to have a default choice.
11778Solution:   Make the first choice the default choice.
11779Files:	    runtime/doc/eval.txt, src/eval.c
11780
11781Patch 6.2.280
11782Problem:    "do" and ":diffget" don't work in the first line and the last line
11783	    of a buffer. (Aron Griffis)
11784Solution:   Find a difference above the first line and below the last line.
11785	    Also fix a few display updating bugs.
11786Files:	    src/diff.c, src/fold.c, src/move.c
11787
11788Patch 6.2.281
11789Problem:    PostScript printing doesn't work on Mac OS X 10.3.2.
11790Solution:   Adjust the header file. (Mike Williams)
11791Files:	    runtime/print/prolog.ps
11792
11793Patch 6.2.282
11794Problem:    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').
11798Solution:   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().
11800Files:	    src/ex_cmds.c
11801
11802Patch 6.2.283
11803Problem:    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)
11806Solution:   Convert the text to 'encoding'.
11807Files:	    src/ex_cmds.c
11808
11809Patch 6.2.284
11810Problem:    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)
11813Solution:   Don't use msg() for "endfunction".  Check "got_int" regularly.
11814Files:	    src/eval.c
11815
11816Patch 6.2.285
11817Problem:    GUI: In a single wrapped line that fills the window, "gj" in the
11818	    last screen line leaves the cursor behind. (Ivan Tarasov)
11819Solution:   Undraw the cursor before scrolling the text up.
11820Files:	    src/gui.c
11821
11822Patch 6.2.286
11823Problem:    When trying to rename a file and it doesn't exist, the destination
11824	    file is deleted anyway. (Luc Deux)
11825Solution:   Don't delete the destination when the source doesn't exist. (Taro
11826	    Muraoka)
11827Files:	    src/fileio.c
11828
11829Patch 6.2.287 (after 6.2.264)
11830Problem:    Duplicate lines are added to the viminfo file.
11831Solution:   Compare with existing entries without an offset.  Also fixes
11832	    reading very long history lines from viminfo.
11833Files:	    src/ex_getln.c
11834
11835Patch 6.2.288 (extra)
11836Problem:    Mac: An external program can't be interrupted.
11837Solution:   Don't use the 'c' key for backspace. (Eckehard Berns)
11838Files:	    src/gui_mac.c
11839
11840Patch 6.2.289
11841Problem:    Compiling the Tcl interface with thread support causes ":make" to
11842	    fail.  (Juergen Salk)
11843Solution:   Use $TCL_DEFS from the Tcl config script to obtain the required
11844	    compile flags for using the thread library.
11845Files:	    src/auto/configure, src/configure.in
11846
11847Patch 6.2.290 (extra)
11848Problem:    Mac: The mousewheel doesn't work.
11849Solution:   Add mousewheel support.  Also fix updating the thumb after a drag
11850	    and then using another way to scroll.  (Eckehard Berns)
11851Files:	    src/gui_mac.c
11852
11853Patch 6.2.291 (extra)
11854Problem:    Mac: the plus button and close button don't do anything.
11855Solution:   Make the plus button maximize the window and the close button
11856	    close Vim. (Eckehard Berns)
11857Files:	    src/gui.c, src/gui_mac.c
11858
11859Patch 6.2.292
11860Problem:    Motif: When removing GUI arguments from argv[] a "ps -ef" shows
11861	    the last argument repeated.
11862Solution:   Set argv[argc] to NULL. (Michael Jarvis)
11863Files:	    src/gui_x11.c
11864
11865Patch 6.2.293 (after 6.2.255)
11866Problem:    GTK: A new item in a menu is put before the tearoff item.
11867Solution:   Do increment the menu item index for non-popup menu items.
11868Files:	    src/gui_gtk.c
11869
11870Patch 6.2.294 (extra)
11871Problem:    Mac: Cannot use modifiers with Space, Tab, Enter and Escape.
11872Solution:   Handle all modifiers for these keys.  (Eckehard Berns)
11873Files:	    src/gui_mac.c
11874
11875Patch 6.2.295
11876Problem:    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)
11879Solution:   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.
11882Files:	    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
11886
11887Patch 6.2.296 (extra)
11888Problem:    Same as 6.2.295.
11889Solution:   Extra files for patch 6.2.295.
11890Files:	    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
11893
11894Patch 6.2.297 (after 6.2.232)
11895Problem:    Cannot invoke Python commands recursively.
11896Solution:   With Python 2.3 and later use the available mechanisms to invoke
11897	    Python recursively. (Matthew Mueller)
11898Files:	    src/if_python.c
11899
11900Patch 6.2.298
11901Problem:    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.
11905Solution:   Add the ":keepjumps" command modifier.
11906	    Add the "g," and "g;" commands.
11907Files:	    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
11910
11911Patch 6.2.299
11912Problem:    Can only use one language for help files.
11913Solution:   Add the 'helplang' option to select the preferred language(s).
11914	    Make ":helptags" generate tags files for all languages.
11915Files:	    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
11920
11921Patch 6.2.300 (after 6.2.297)
11922Problem:    Cannot build Python interface with Python 2.2 or earlier.
11923Solution:   Add a semicolon.
11924Files:	    src/if_python.c
11925
11926Patch 6.2.301
11927Problem:    The "select all" item from the popup menu doesn't work for Select
11928	    mode.
11929Solution:   Use the same commands as for the "Edit.select all" menu.
11930	    (Benji Fisher)
11931Files:	    runtime/menu.vim
11932
11933Patch 6.2.302
11934Problem:    Using "CTRL-O ." in Insert mode doesn't work properly. (Benji
11935	    Fisher)
11936Solution:   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.
11943Files:	    src/edit.c, src/normal.c
11944
11945Patch 6.2.303
11946Problem:    Cannot use Unicode digraphs while 'encoding' is not Unicode.
11947Solution:   Convert the character from Unicode to 'encoding' when needed.
11948	    Use the Unicode digraphs for the Macintosh. (Eckehard Berns)
11949Files:	    src/digraph.c
11950
11951Patch 6.2.304 (extra, after 6.2.256)
11952Problem:    Mac: No proper support for 'encoding'.  Conversion without iconv()
11953	    is not possible.
11954Solution:   Convert input from 'termencoding' to 'encoding'.  Add
11955	    mac_string_convert().  Convert text for the clipboard when needed.
11956	    (Eckehard Berns)
11957Files:	    src/gui_mac.c, src/mbyte.c, src/structs.h, src/vim.h
11958
11959Patch 6.2.305 (after 6.2.300)
11960Problem:    Win32: Cannot build Python interface with Python 2.3. (Ajit
11961	    Thakkar)
11962Solution:   Add two functions to the dynamic loading feature.
11963Files:	    src/if_python.c
11964
11965Patch 6.2.306 (extra)
11966Problem:    Win32: Building console version with BCC 5.5 gives a warning for
11967	    get_cmd_args() prototype missing.  (Ajit Thakkar)
11968Solution:   Don't build os_w32exe.c for the console version.
11969Files:	    src/Make_bc5.mak
11970
11971Patch 6.2.307 (after 6.2.299)
11972Problem:    Installing help files fails.
11973Solution:   Expand wildcards for translated help files separately.
11974Files:	    src/Makefile
11975
11976Patch 6.2.308
11977Problem:    Not all systems have "whoami", resulting in an empty user name.
11978Solution:   Use "logname" when possible, "whoami" otherwise.  (David Boyce)
11979Files:	    src/Makefile
11980
11981Patch 6.2.309
11982Problem:    "3grx" waits for two ESC to be typed.  (Jens Paulus)
11983Solution:   Append the ESC to the stuff buffer when redoing the "gr" insert.
11984Files:	    src/edit.c
11985
11986Patch 6.2.310
11987Problem:    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)
11990Solution:   Sync undo before changing 'undolevels'.
11991Files:	    src/option.c
11992
11993Patch 6.2.311 (after 6.2.298)
11994Problem:    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.
11998Solution:   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.
12002Files:	    runtime/doc/motion.txt, src/mark.c, src/misc1.c, src/normal.c
12003
12004Patch 6.2.312 (after 6.2.299)
12005Problem:    "make install" clears the screen when installing the docs.
12006Solution:   Execute ":helptags" in silent mode.
12007Files:	    runtime/doc/Makefile
12008
12009Patch 6.2.313
12010Problem:    When opening folds in a diff window, other diff windows no longer
12011	    show the same text.
12012Solution:   Sync the folds in diff windows.
12013Files:	    src/diff.c, src/fold.c, src/move.c, src/proto/diff.pro,
12014	    src/proto/move.pro
12015
12016Patch 6.2.314
12017Problem:    When 'virtualedit' is set "rx" may cause a crash with a blockwise
12018	    selection and using "$". (Moritz Orbach)
12019Solution:   Don't try replacing chars in a line that has no characters in the
12020	    block.
12021Files:	    src/ops.c
12022
12023Patch 6.2.315
12024Problem:    Using CTRL-C in a Visual mode mapping while 'insertmode' is set
12025	    stops Vim from returning to Insert mode.
12026Solution:   Don't reset "restart_edit" when a CTRL-C is found and 'insertmode'
12027	    is set.
12028Files:	    src/normal.c
12029
12030Patch 6.2.316 (after 6.2.312)
12031Problem:    "make install" tries connecting to the X server when installing
12032	    the docs. (Stephen Thomas)
12033Solution:   Add the "-X" argument.
12034Files:	    runtime/doc/Makefile
12035
12036Patch 6.2.317 (after 6.2.313)
12037Problem:    When using "zi" in a diff window, other diff windows are not
12038	    adjusted. (Richard Curnow)
12039Solution:   Distribute a change in 'foldenable' to other diff windows.
12040Files:	    src/normal.c
12041
12042Patch 6.2.318
12043Problem:    When compiling with _THREAD_SAFE external commands don't echo
12044	    typed characters.
12045Solution:   Don't set the terminal mode to TMODE_SLEEP when it's already at
12046	    TMODE_COOK.
12047Files:	    src/os_unix.c
12048
12049Patch 6.2.319 (extra)
12050Problem:    Building gvimext.dll with Mingw doesn't work properly.
12051Solution:   Use gcc instead of dllwrap.  Use long option names. (Alejandro
12052	    Lopez-Valencia)
12053Files:	    src/GvimExt/Make_ming.mak
12054
12055Patch 6.2.320
12056Problem:    Win32: Adding and removing the menubar resizes the Vim window.
12057	    (Jonathon Merz)
12058Solution:   Don't let a resize event change 'lines' unexpectedly.
12059Files:	    src/gui.c
12060
12061Patch 6.2.321
12062Problem:    When using modeless selection, wrapping lines are not recognized,
12063	    a line break is always inserted.
12064Solution:   Add LineWraps[] to remember whether a line wrapped or not.
12065Files:	    src/globals.h, src/screen.c, src/ui.c
12066
12067Patch 6.2.322
12068Problem:    With 'showcmd' set, after typing "dd" the next "d" may not be
12069	    displayed. (Jens Paulus)
12070Solution:   Redraw the command line after updating the screen, scrolling may
12071	    have set "clear_cmdline".
12072Files:	    src/screen.c
12073
12074Patch 6.2.323
12075Problem:    Win32: expanding "~/file" in an autocommand pattern results in
12076	    backslashes, while this pattern should only have forward slashes.
12077Solution:   Make expanding environment variables respect 'shellslash' and set
12078	    p_ssl when expanding the autocommand pattern.
12079Files:	    src/fileio.c, src/misc1.c, src/proto/fileio.pro
12080
12081Patch 6.2.324 (extra)
12082Problem:    Win32: when "vimrun.exe" has a path with white space, such as
12083	    "Program Files", executing external commands may fail.
12084Solution:   Put double quotes around the path to "vimrun".
12085Files:	    src/os_win32.c
12086
12087Patch 6.2.325
12088Problem:    When $HOME includes a space, doing ":set tags=~/tags" doesn't
12089	    work, the space is used to separate file names.  (Brett Stahlman)
12090Solution:   Escape the space with a backslash.
12091Files:	    src/option.c
12092
12093Patch 6.2.326
12094Problem:    ":windo set syntax=foo" doesn't work.  (Tim Chase)
12095Solution:   Don't change 'eventignore' for ":windo".
12096Files:	    src/ex_cmds2.c
12097
12098Patch 6.2.327
12099Problem:    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)
12102Solution:   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.
12106Files:	    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
12109
12110Patch 6.2.328
12111Problem:    XIM with GTK: It is hard to understand what XIM is doing.
12112Solution:   Add xim_log() to log XIM events and help with debugging.
12113Files:	    src/mbyte.c
12114
12115Patch 6.2.329
12116Problem:    ":=" does not work Vi compatible. (Antony Scriven)
12117Solution:   Print the last line number instead of the current line.  Don't
12118	    print "line".
12119Files:	    src/ex_cmds.h, src/ex_docmd.c
12120
12121Patch 6.2.330 (extra, after 6.2.267)
12122Problem:    Win32: Crash when tearing off a menu.
12123Solution:   Terminate a string with a NUL. (Yasuhiro Matsumoto)
12124Files:	    src/gui_w32.c
12125
12126Patch 6.2.331 (after 6.2.327)
12127Problem:    "gwap" leaves cursor in the wrong line.
12128Solution:   Remember the cursor position before finding the ends of the
12129	    paragraph.
12130Files:	    src/normal.c, src/ops.c, src/structs.h
12131
12132Patch 6.2.332 (extra)
12133Problem:    Amiga: Compile error for string array. Compiling the Amiga GUI
12134	    doesn't work.
12135Solution:   Use a char pointer instead.  Move including "gui_amiga.h" to after
12136	    including "vim.h".  Add a semicolon. (Ali Akcaagac)
12137Files:	    src/gui_amiga.c, src/os_amiga.c
12138
12139Patch 6.2.333 (extra)
12140Problem:    Win32: printing doesn't work with specified font charset.
12141Solution:   Use the specified font charset. (Mike Williams)
12142Files:	    src/os_mswin.c
12143
12144Patch 6.2.334 (extra, after 6.2.296)
12145Problem:    Win32: evaluating client expression in debug mode requires typing
12146	    "cont".
12147Solution:   Use eval_client_expr_to_string().
12148Files:	    src/os_mswin.c
12149
12150Patch 6.2.335
12151Problem:    The ":sign" command cannot be followed by another command.
12152Solution:   Add TRLBAR to the command flags.
12153Files:	    src/ex_cmds.h
12154
12155Patch 6.2.336 (after 6.2.327)
12156Problem:    Mixup of items in an expression.
12157Solution:   Move "== NUL" to the right spot.
12158Files:	    src/edit.c
12159
12160Patch 6.2.337 (extra, after 6.2.319)
12161Problem:    Building gvimext.dll with Mingw doesn't work properly.
12162Solution:   Fix white space and other details. (Alejandro Lopez-Valencia)
12163Files:	    src/GvimExt/Make_ming.mak
12164
12165Patch 6.2.338 (after 6.2.331)
12166Problem:    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.
12169Solution:   Try to move the cursor back to where it was or to the first line
12170	    that actually changed.
12171Files:	    src/normal.c, src/ops.c, src/undo.c
12172
12173Patch 6.2.339
12174Problem:    Crash when using many different highlight groups and a User
12175	    highlight group.  (Juergen Kraemer)
12176Solution:   Do not use the sg_name_u pointer when it is NULL.  Also simplify
12177	    use of the highlight group table.
12178Files:	    src/syntax.c
12179
12180Patch 6.2.340
12181Problem:    ":reg" doesn't show the actual contents of the clipboard if it was
12182	    filled outside of Vim. (Stuart MacDonald)
12183Solution:   Obtain the clipboard contents before displaying it.
12184Files:	    src/ops.c
12185
12186Patch 6.2.341 (extra)
12187Problem:    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.
12189Solution:   Put the first double quote just before the space instead of before
12190	    the path.
12191Files:	    src/dosinst.c
12192
12193Patch 6.2.342 (extra)
12194Problem:    Win32: macros are not always used as expected.
12195Solution:   Define WINVER to 0x0400 instead of 0x400. (Alejandro
12196	    Lopez-Valencia)
12197Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_mvc.mak
12198
12199Patch 6.2.343
12200Problem:    Title doesn't work with some window managers.  X11: Setting the
12201	    text property for the window title is hard coded.
12202Solution:   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)
12206Files:	    src/os_unix.c
12207
12208Patch 6.2.344 (extra, after 6.2.337)
12209Problem:    Cannot build gvimext.dll with MingW on Linux.
12210Solution:   Add support for cross compiling. (Ronald Hoellwarth)
12211Files:	    src/GvimExt/Make_ming.mak
12212
12213Patch 6.2.345 (extra)
12214Problem:    Win32: Copy/paste between two Vims fails if 'encoding' is not set
12215	    properly or there are illegal bytes.
12216Solution:   Use a raw byte format.  Always set it when copying.  When pasting
12217	    use the raw format if 'encoding' is the same.
12218Files:	    src/os_mswin.c, src/os_win16.c, src/os_win32.c, src/vim.h
12219
12220Patch 6.2.346
12221Problem:    Win32 console: After using "chcp" Vim does not detect the
12222	    different codepage.
12223Solution:   Use GetConsoleCP() and when it is different from GetACP() set
12224	    'termencoding'.
12225Files:	    src/option.c
12226
12227Patch 6.2.347 (extra)
12228Problem:    Win32: XP theme support is missing.
12229Solution:   Add a manifest and refer to it from the resource file.  (Michael
12230	    Wookey)
12231Files:	    Makefile, src/gvim.exe.mnf, src/vim.rc
12232
12233Patch 6.2.348
12234Problem:    Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
12235	    default value doesn't contain parenthesis.
12236Solution:   Temporarily add '(' and ')' to 'isfname' when expanding file name
12237	    arguments.
12238Files:	    src/main.c
12239
12240Patch 6.2.349
12241Problem:    Finding a match using 'matchpairs' may cause a crash.
12242	    'matchpairs' is not used for 'showmatch'.
12243Solution:   Don't look past the NUL in 'matchpairs'.  Use 'matchpairs' for
12244	    'showmatch'. (Dave Olszewkski)
12245Files:	    src/misc1.c, src/normal.c, src/proto/search.pro, src/search.c
12246
12247Patch 6.2.350
12248Problem:    Not enough info about startup timing.
12249Solution:   Add a few more TIME_MSG() calls.
12250Files:	    src/main.c
12251
12252Patch 6.2.351
12253Problem:    Win32: $HOME may be set to %USERPROFILE%.
12254Solution:   Expand %VAR% at the start of $HOME.
12255Files:	    src/misc1.c
12256
12257Patch 6.2.352 (after 6.2.335)
12258Problem:    ":sign texthl=||" does not work.
12259Solution:   Remove the check for a following command.  Give an error for extra
12260	    arguments after "buff=1".
12261Files:	    src/ex_cmds.c, src/ex_cmds.h
12262
12263Patch 6.2.353 (extra)
12264Problem:    Win32: Supported server name length is limited. (Paul Bossi)
12265Solution:   Use MAX_PATH instead of 25.
12266Files:	    src/os_mswin.c
12267
12268Patch 6.2.354 (extra)
12269Problem:    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)
12271Solution:   Handle the pointer move event for the tear-off menu window.
12272Files:	    src/gui_w32.c
12273
12274Patch 6.2.355 (after 6.2.303)
12275Problem:    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".
12279Solution:   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.
12283Files:	    src/digraph.c, src/mbyte.c, src/structs.h
12284
12285Patch 6.2.356
12286Problem:    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)
12289Solution:   Correct the column in unadjust_for_sel() to position on the first
12290	    byte, always include the trailing byte of the selected text.
12291Files:	    src/normal.c
12292
12293Patch 6.2.357 (after 6.2.321)
12294Problem:    Memory leak when resizing the Vim window.
12295Solution:   Free the LineWraps array.
12296Files:	    src/screen.c
12297
12298Patch 6.2.358 (after 6.2.299)
12299Problem:    Memory leak when using ":help" and the language doesn't match.
12300Solution:   Free the array with matching tags.
12301Files:	    src/ex_cmds.c
12302
12303Patch 6.2.359 (after 6.2.352)
12304Problem:    Compiler warning for long to int type cast.
12305Solution:   Add explicit type cast.
12306Files:	    src/ex_cmds.c
12307
12308Patch 6.2.360
12309Problem:    "100|" in an empty line results in a ruler "1,0-100". (Pavol
12310	    Juhas)
12311Solution:   Recompute w_virtcol if the target column was not reached.
12312Files:	    src/misc2.c
12313
12314Patch 6.2.361 (extra)
12315Problem:    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)
12318Solution:   Don't ignore the WM_SYSKEYUP event when the menu is disabled.
12319Files:	    src/gui_w32.c
12320
12321Patch 6.2.362 (extra, after 6.2.347)
12322Problem:    Win32: The manifest causes Gvim not to work. (Dave Roberts)
12323Solution:   Change "x86" to "X86". (Serge Pirotte)
12324Files:	    src/gvim.exe.mnf
12325
12326Patch 6.2.363
12327Problem:    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)
12331Solution:   Remember the "empty line" flag with Insert mode and'ed to it.
12332Files:	    src/screen.c
12333
12334Patch 6.2.364
12335Problem:    HTML version of the documentation doesn't mention the encoding,
12336	    which is a problem for mbyte.txt.
12337Solution:   Adjust the awk script. (Ilya Sher)
12338Files:	    runtime/doc/makehtml.awk
12339
12340Patch 6.2.365
12341Problem:    The configure checks for Perl and Python may add compile and link
12342	    arguments that break building Vim.
12343Solution:   Do a sanity check: try building with the arguments.
12344Files:	    src/auto/configure, src/configure.in
12345
12346Patch 6.2.366
12347Problem:    When the GUI can't start because no valid font is found, there is
12348	    no error message. (Ugen)
12349Solution:   Add an error message.
12350Files:	    src/gui.c
12351
12352Patch 6.2.367
12353Problem:    Building the help tags file while installing may fail if there is
12354	    another Vim in $PATH.
12355Solution:   Specify the just installed Vim executable. (Gordon Prieur)
12356Files:	    src/Makefile
12357
12358Patch 6.2.368
12359Problem:    When 'autochdir' is set, closing a window doesn't change to the
12360	    directory of the new current window. (Salman Halim)
12361Solution:   Handle 'autochdir' always when a window becomes the current one.
12362Files:	    src/window.c
12363
12364Patch 6.2.369
12365Problem:    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)
12372Solution:   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.
12375Files:	    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
12377
12378Patch 6.2.370 (extra, after6.2.341)
12379Problem:    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)
12382Solution:   Do not use double quotes for arguments that do not have a space.
12383Files:	    src/dosinst.c
12384
12385Patch 6.2.371
12386Problem:    When 'virtualedit' is set and there is a Tab before the next "x",
12387	    "dtx" does not delete the whole Tab. (Ken Hashishi)
12388Solution:   Move the cursor to the last position of the Tab.  Also for
12389	    "df<Tab>".
12390Files:	    src/normal.c
12391
12392Patch 6.2.372
12393Problem:    When using balloon evaluation, no value is displayed for members
12394	    of structures and items of an array.
12395Solution:   Include "->", "." and "[*]" in the expression.
12396Files:	    src/gui_beval.c, src/normal.c, src/vim.h
12397
12398Patch 6.2.373
12399Problem:    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)
12402Solution:   Don't recompute w_topline for a zero-height window.
12403Files:	    src/window.c
12404
12405Patch 6.2.374
12406Problem:    ":echo "hello" | silent normal n" removes the "hello" message.
12407	    (Servatius Brandt)
12408Solution:   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.
12410Files:	    src/gui.c, src/message.c, src/os_unix.c, src/proto/message.pro,
12411	    src/screen.c, src/search.c, src/window.c
12412
12413Patch 6.2.375
12414Problem:    When changing 'guioptions' the hit-enter prompt may be below the
12415	    end of the Vim window.
12416Solution:   Call screen_alloc() before showing the prompt.
12417Files:	    src/message.c
12418
12419Patch 6.2.376
12420Problem:    Win32: Ruby interface cannot be dynamically linked with Ruby 1.6.
12421Solution:   Add #ifdefs around use of rb_w32_snprintf().  (Beno�t Cerrina)
12422Files:	    src/if_ruby.c
12423
12424Patch 6.2.377 (after 6.2.372)
12425Problem:    Compiler warnings for signed/unsigned compare. (Michael Wookey)
12426Solution:   Add type cast.
12427Files:	    src/normal.c
12428
12429Patch 6.2.378 (extra, after 6.2.118)
12430Problem:    Mac: cannot build with Project Builder.
12431Solution:   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)
12434Files:	    src/misc1.c, src/os_macosx.c, src/vim.h
12435
12436Patch 6.2.379
12437Problem:    Using ":mkvimrc" in the ":options" window sets 'bufhidden' to
12438	    "delete". (Michael Naumann)
12439Solution:   Do not add buffer-specific option values to a global vimrc file.
12440Files:	    src/option.c
12441
12442Patch 6.2.380 (extra)
12443Problem:    DOS: "make test" fails when running it again.  Can't "make test"
12444	    with Borland C.
12445Solution:   Make sure ".out" files are deleted when they get in the way.  Add
12446	    a "test" target to the Borland C Makefile.
12447Files:	    src/Make_bc5.mak, src/testdir/Make_dos.mak
12448
12449Patch 6.2.381
12450Problem:    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'.
12454Solution:   Check for a comma in 'fileencoding'.  Only consider a non-empty
12455	    file modified by changing 'fileencoding'.  Update the title after
12456	    changing 'fileencoding'.
12457Files:	    src/option.c
12458
12459Patch 6.2.382
12460Problem:    Running "make test" puts marks from test files in viminfo.
12461Solution:   Specify a different viminfo file to use.
12462Files:	    src/testdir/test15.in, src/testdir/test49.in
12463
12464Patch 6.2.383
12465Problem:    ":hi foo term='bla" crashes Vim. (Antony Scriven)
12466Solution:   Check that the closing ' is there.
12467Files:	    src/syntax.c
12468
12469Patch 6.2.384
12470Problem:    ":menu a.&b" ":unmenu a.b" only works if "&b" isn't translated.
12471Solution:   Also compare the names without '&' characters.
12472Files:	    src/menu.c
12473
12474Patch 6.2.385  (extra)
12475Problem:    Win32: forward_slash() and trash_input_buf() are undefined when
12476	    compiling with small features. (Ajit Thakkar)
12477Solution:   Change the #ifdefs for forward_slash().  Don't call
12478	    trash_input_buf() if the input buffer isn't used.
12479Files:	    src/fileio.c, src/os_win32.c
12480
12481Patch 6.2.386
12482Problem:    Wasting time trying to read marks from the viminfo file for a
12483	    buffer without a name.
12484Solution:   Skip reading marks when the buffer has no name.
12485Files:	    src/fileio.c
12486
12487Patch 6.2.387
12488Problem:    There is no highlighting of translated items in help files.
12489Solution:   Search for a "help_ab.vim" syntax file when the help file is
12490	    called "*.abx".  Also improve the help highlighting a bit.
12491Files:	    runtime/syntax/help.vim
12492
12493Patch 6.2.388
12494Problem:    GTK: When displaying some double-width characters they are drawn
12495	    as single-width, because of conversion to UTF-8.
12496Solution:   Check the width that GTK uses and add a space if it's one instead
12497	    of two.
12498Files:	    src/gui_gtk_x11.c
12499
12500Patch 6.2.389
12501Problem:    When working over a slow connection, it's very annoying that the
12502	    last line is partly drawn and then cleared for every change.
12503Solution:   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.
12505Files:	    src/screen.c
12506
12507Patch 6.2.390
12508Problem:    Using "r*" in Visual mode on multi-byte characters only replaces
12509	    every other character. (Tyson Roberts)
12510Solution:   Correct the cursor position after replacing each character.
12511Files:	    src/ops.c
12512
12513Patch 6.2.391 (extra)
12514Problem:    The ":highlight" command is not tested.
12515Solution:   Add a test script for ":highlight".
12516Files:	    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
12520
12521Patch 6.2.392 (after 6.2.384)
12522Problem:    Unused variable.
12523Solution:   Remove "dlen".
12524Files:	    src/menu.c
12525
12526Patch 6.2.393
12527Problem:    When using very long lines the viminfo file can become very big.
12528Solution:   Add the "s" flag to 'viminfo': skip registers with more than the
12529	    specified Kbyte of text.
12530Files:	    runtime/doc/options.txt, src/ops.c, src/option.c
12531
12532Patch 6.2.394  (after 6.2.391)
12533Problem:    Test 51 fails on a terminal with 8 colors. (Tony Leneis)
12534Solution:   Use "DarkBlue" instead of "Blue" to avoid the "bold" attribute.
12535Files:	    src/testdir/test51.in
12536
12537Patch 6.2.395
12538Problem:    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.
12541Solution:   Remember what the current buffer was for when re-using cur_match.
12542Files:	    src/edit.c, src/ex_cmds.c, src/proto/tag.pro, src/structs.h,
12543	    src/tag.c
12544
12545Patch 6.2.396
12546Problem:    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)
12549Solution:   Set the line number after loading the file.
12550Files:	    src/tag.c
12551
12552Patch 6.2.397
12553Problem:    When using a double-byte 'encoding' mapping <M-x> doesn't work.
12554	    (Yasuhiro Matsumoto)
12555Solution:   Do not set the 8th bit of the character but use a modifier.
12556Files:	    src/gui_gtk_x11.c, src/gui_x11.c, src/misc2.c
12557
12558Patch 6.2.398 (extra)
12559Problem:    Win32 console: no extra key modifiers are supported.
12560Solution:   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.
12564Files:	    src/getchar.c, src/option.c, src/os_win32.c
12565
12566Patch 6.2.399
12567Problem:    A ":set" command that fails still writes a message when it is
12568	    inside a try/catch block.
12569Solution:   Include all the text of the message in the error message.
12570Files:	    src/charset.c, src/option.c
12571
12572Patch 6.2.400
12573Problem:    Can't compile if_xcmdsrv.c on HP-UX 11.0.
12574Solution:   Include header file poll.h. (Malte Neumann)
12575Files:	    src/if_xcmdsrv.c
12576
12577Patch 6.2.401
12578Problem:    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)
12581Solution:   Don't skip restoring the cursor position if it is past the blanks
12582	    in the first line.
12583Files:	    src/buffer.c
12584
12585Patch 6.2.402
12586Problem:    Mac: "make install" doesn't generate help tags. (Benji Fisher)
12587Solution:   Generate help tags before copying the runtime files.
12588Files:	    src/Makefile
12589
12590Patch 6.2.403
12591Problem:    ":@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)
12594Solution:   Only check for a next command if there still is typeahead.
12595Files:	    src/ex_docmd.c
12596
12597Patch 6.2.404
12598Problem:    Our own function to determine width of Unicode characters may get
12599	    outdated. (Markus Kuhn)
12600Solution:   Use wcwidth() when it is available.  Also use iswprint().
12601Files:	    src/auto/configure, src/configure.in, src/config.h.in, src/mbyte.c
12602
12603Patch 6.2.405
12604Problem:    Cannot map zero without breaking the count before a command.
12605	    (Benji Fisher)
12606Solution:   Disable mapping zero when entering a count.
12607Files:	    src/getchar.c, src/globals.h, src/normal.c
12608
12609Patch 6.2.406
12610Problem:    ":help \zs", ":help \@=" and similar don't find useful help.
12611Solution:   Prepend "/\" to the arguments to find the desired help tag.
12612Files:	    src/ex_cmds.c
12613
12614Patch 6.2.407 (after 6.2.299)
12615Problem:    ":help \@<=" doesn't find help.
12616Solution:   Avoid that ":help \@<=" searches for the "<=" language.
12617Files:	    src/tag.c
12618
12619Patch 6.2.408
12620Problem:    ":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.
12623Solution:   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/
12628Files:	    runtime/compiler/msvc.vim, runtime/doc/quickfix.txt, src/eval.c,
12629	    src/ex_cmds2.c
12630
12631Patch 6.2.409
12632Problem:    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)
12635Solution:   Adjust the cursor as if in Insert mode.
12636Files:	    src/misc1.c
12637
12638Patch 6.2.410 (after 6.2.389)
12639Problem:    In diff mode, when there are more filler lines than fit in the
12640	    window, they are not drawn.
12641Solution:   Check for filler lines when skipping to draw a line that doesn't
12642	    fit.
12643Files:	    src/screen.c
12644
12645Patch 6.2.411
12646Problem:    A "\n" inside a string is not seen as a line break by the regular
12647	    expression matching. (Hari Krishna Dara)
12648Solution:   Add the vim_regexec_nl() function for strings where "\n" is to be
12649	    matched with a line break.
12650Files:	    src/eval.c, src/ex_eval.c, src/proto/regexp.c, src/regexp.c
12651
12652Patch 6.2.412
12653Problem:    Ruby: "ruby << EOF" inside a function doesn't always work.  Also
12654	    for ":python", ":tcl" and ":perl".
12655Solution:   Check for "<< marker" and skip until "marker" before checking for
12656	    "endfunction".
12657Files:	    src/eval.c
12658
12659Patch 6.2.413 (after 6.2.411)
12660Problem:    Missing prototype for vim_regexec_nl(). (Marcel Svitalsky)
12661Solution:   Now really include the prototype.
12662Files:	    src/proto/regexp.pro
12663
12664Patch 6.2.414
12665Problem:    The function used for custom completion of user commands cannot
12666	    have <SID> to make it local. (Hari Krishna Dara)
12667Solution:   Pass the SID of the script where the user command was defined on
12668	    to the completion.  Also clean up #ifdefs.
12669Files:	    src/ex_docmd.c, src/eval.c, src/ex_getln.c, src/structs.h
12670
12671Patch 6.2.415
12672Problem:    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)
12675Solution:   Invoke win_new_shellsize() from screenalloc() instead of from
12676	    set_shellsize().
12677Files:	    src/screen.c, src/term.c
12678
12679Patch 6.2.416
12680Problem:    Compiler warning for incompatible pointer.
12681Solution:   Remove the "&" in the call to poll(). (Xavier de Gaye)
12682Files:	    src/os_unix.c
12683
12684Patch 6.2.417 (after 6.2.393)
12685Problem:    Many people forget that the '"' item in 'viminfo' needs to be
12686	    preceded with a backslash,
12687Solution:   Add '<' as an alias for the '"' item.
12688Files:	    runtime/doc/options.txt, src/ops.c, src/option.c
12689
12690Patch 6.2.418
12691Problem:    Using ":nnoremap <F12> :echo "cheese" and ":cabbr cheese xxx":
12692	    when pressing <F12> still uses the abbreviation. (Hari Krishna)
12693Solution:   Also apply "noremap" to abbreviations.
12694Files:	    src/getchar.c
12695
12696Patch 6.2.419 (extra)
12697Problem:    Win32: Cannot open the Vim window inside another application.
12698Solution:   Add the "-P" argument to specify the window title of the
12699	    application to run inside. (Zibo Zhao)
12700Files:	    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
12703
12704Patch 6.2.420
12705Problem:    Cannot specify a file to be edited in binary mode without setting
12706	    the global value of the 'binary' option.
12707Solution:   Support ":edit ++bin file".
12708Files:	    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
12710
12711Patch 6.2.421
12712Problem:    Cannot set the '[ and '] mark, which may be necessary when an
12713	    autocommand simulates reading a file.
12714Solution:   Allow using "m[" and "m]".
12715Files:	    runtime/doc/motion.txt, src/mark.c
12716
12717Patch 6.2.422
12718Problem:    In CTRL-X completion messages the "/" makes them less readable.
12719Solution:   Remove the slashes. (Antony Scriven)
12720Files:	    src/edit.c
12721
12722Patch 6.2.423
12723Problem:    ":vertical wincmd ]" does not split vertically.
12724Solution:   Add "postponed_split_flags".
12725Files:	    src/ex_docmd.c, src/globals.h, src/if_cscope.c, src/tag.c
12726
12727Patch 6.2.424
12728Problem:    A BufEnter autocommand that sets an option stops 'mousefocus' from
12729	    working in Insert mode (Normal mode is OK). (Gregory Seidman)
12730Solution:   In the Insert mode loop invoke gui_mouse_correct() when needed.
12731Files:	    src/edit.c
12732
12733Patch 6.2.425
12734Problem:    Vertical split and command line window: can only drag status line
12735	    above the cmdline window on the righthand side, not lefthand side.
12736Solution:   Check the status line row instead of the window pointer.
12737Files:	    src/ui.c
12738
12739Patch 6.2.426
12740Problem:    A syntax region end match with a matchgroup that includes a line
12741	    break only highlights the last line with matchgroup. (Gary
12742	    Holloway)
12743Solution:   Also use the line number of the position where the region
12744	    highlighting ends.
12745Files:	    src/syntax.c
12746
12747Patch 6.2.427 (extra)
12748Problem:    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)
12751Solution:   When there is an incomplete byte sequence at the end of the read
12752	    text keep it for the next time.
12753Files:	    src/mbyte.c, src/os_amiga.c, src/os_mswin.c, src/proto/mbyte.pro,
12754	    src/proto/os_mswin.pro, src/ui.c
12755
12756Patch 6.2.428
12757Problem:    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'.
12760Solution:   Add a new selection format that includes the 'encoding'.  Perform
12761	    conversion when necessary.
12762Files:	    src/gui_gtk_x11.c, src/ui.c, src/vim.h
12763
12764Patch 6.2.429
12765Problem:    Unix: glob() doesn't work for a directory with a single quote in
12766	    the name. (Nazri Ramliy)
12767Solution:   When using the shell to expand, only put double quotes around
12768	    spaces and single quotes, not the whole thing.
12769Files:	    src/os_unix.c
12770
12771Patch 6.2.430
12772Problem:    BOM at start of a vim script file is not recognized and causes an
12773	    error message.
12774Solution:   Detect the BOM and skip over it.  Also fix that after using
12775	    ":scriptencoding" the iconv() file descriptor was not closed
12776	    (memory leak).
12777Files:	    src/ex_cmds2.c
12778
12779Patch 6.2.431
12780Problem:    When using the horizontal scrollbar, the scrolling is limited to
12781	    the length of the cursor line.
12782Solution:   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.
12785Files:	    runtime/doc/gui.txt, runtime/doc/options.txt, src/gui.c,
12786	    src/misc2.c, src/option.h
12787
12788Patch 6.2.432 (after 6.2.430 and 6.2.431)
12789Problem:    Lint warnings.
12790Solution:   Add type casts.
12791Files:	    src/ex_cmds2.c, src/gui.c
12792
12793Patch 6.2.433
12794Problem:    Translating "VISUAL" and "BLOCK" separately doesn't give a good
12795	    result. (Alejandro Lopez Valencia)
12796Solution:   Use a string for each combination.
12797Files:	    src/screen.c
12798
12799Patch 6.2.434 (after 6.2.431)
12800Problem:    Compiler warning. (Salman Halim)
12801Solution:   Add type casts.
12802Files:	    src/gui.c
12803
12804Patch 6.2.435
12805Problem:    When there are vertically split windows the minimal Vim window
12806	    height is computed wrong.
12807Solution:   Use frame_minheight() to correctly compute the minimal height.
12808Files:	    src/window.c
12809
12810Patch 6.2.436
12811Problem:    Running the tests changes the user's viminfo file.
12812Solution:   In test 49 tell the extra Vim to use the test viminfo file.
12813Files:	    src/testdir/test49.vim
12814
12815Patch 6.2.437
12816Problem:    ":mksession" always puts "set nocompatible" in the session file.
12817	    This changes option settings. (Ron Aaron)
12818Solution:   Add an "if" to only change 'compatible' when needed.
12819Files:	    src/ex_docmd.c
12820
12821Patch 6.2.438
12822Problem:    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.
12825Solution:   Set "dollar_vcol" to the right column.
12826Files:	    src/edit.c
12827
12828Patch 6.2.439
12829Problem:    GTK 2: Changing 'lines' may cause a mismatch between the window
12830	    layout and the size of the window.
12831Solution:   Disable the hack with force_shell_resize_idle().
12832Files:	    src/gui_gtk_x11.c
12833
12834Patch 6.2.440
12835Problem:    When 'lazyredraw' is set the window title is still updated.
12836	    The size of the Visual area and the ruler are displayed too often.
12837Solution:   Postpone redrawing the window title.  Only show the Visual area
12838	    size when waiting for a character.  Don't draw the ruler
12839	    unnecessary.
12840Files:	    src/buffer.c, src/normal.c, src/screen.c
12841
12842Patch 6.2.441
12843Problem:    ":unabbreviate foo " doesn't work, because of the trailing space,
12844	    while an abbreviation with a trailing space is not possible. (Paul
12845	    Jolly)
12846Solution:   Accept a match with the lhs of an abbreviation without the
12847	    trailing space.
12848Files:	    src/getchar.c
12849
12850Patch 6.2.442
12851Problem:    Cannot manipulate the command line from a function.
12852Solution:   Add getcmdline(), getcmdpos() and setcmdpos() functions and the
12853	    CTRL-\ e command.
12854Files:	    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
12857
12858Patch 6.2.443
12859Problem:    With ":silent! echoerr something" you don't get the position of
12860	    the error.  emsg() only writes the message itself and returns.
12861Solution:   Also redirect the position of the error.
12862Files:	    src/message.c
12863
12864Patch 6.2.444
12865Problem:    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).
12869Solution:   Correct "prev_matchcol" when replacing the line.  Don't replace
12870	    the line when the pattern uses look-behind matching.
12871Files:	    src/ex_cmds.c, src/proto/regexp.pro, src/regexp.c
12872
12873Patch 6.2.445
12874Problem:    Copying vimtutor to /tmp/something is not secure, a symlink may
12875	    cause trouble.
12876Solution:   Create a directory and create the file in it.  Use "umask" to
12877	    create the directory with mode 700.  (Stefan Nordhausen)
12878Files:	    src/vimtutor
12879
12880Patch 6.2.446 (after 6.2.404)
12881Problem:    Using library functions wcwidth() and iswprint() results in
12882	    display problems for Hebrew characters. (Ron Aaron)
12883Solution:   Disable the code to use the library functions, use our own.
12884Files:	    src/mbyte.c
12885
12886Patch 6.2.447 (after 6.2.440)
12887Problem:    Now that the title is only updated when redrawing, it is no longer
12888	    possible to show it while executing a function. (Madoka Machitani)
12889Solution:   Make ":redraw" also update the title.
12890Files:	    src/ex_docmd.c
12891
12892Patch 6.2.448 (after 6.2.427)
12893Problem:    Mac: conversion done when 'termencoding' differs from 'encoding'
12894	    fails when pasting a longer text.
12895Solution:   Check for an incomplete sequence at the end of the chunk to be
12896	    converted. (Eckehard Berns)
12897Files:	    src/mbyte.c
12898
12899Patch 6.2.449 (after 6.2.431)
12900Problem:    Get error messages when switching files.
12901Solution:   Check for a valid line number when calculating the width of the
12902	    horizontal scrollbar. (Helmut Stiegler)
12903Files:	    src/gui.c
12904
12905Patch 6.2.450
12906Problem:    "  #include" and "  #define" are not recognized with the default
12907	    option values for 'include' and 'defined'. (RG Kiran)
12908Solution:   Adjust the default values to allow white space before the #.
12909Files:	    runtime/doc/options.txt, src/option.c
12910
12911Patch 6.2.451
12912Problem:    GTK: when using XIM there are various problems, including setting
12913	    'modified' and breaking undo at the wrong moment.
12914Solution:   Add "xim_changed_while_preediting", "preedit_end_col" and
12915	    im_is_preediting(). (Yasuhiro Matsumoto)
12916Files:	    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
12919
12920Patch 6.2.452
12921Problem:    In diff mode, when DiffAdd and DiffText highlight settings are
12922	    equal, an added line is highlighted with DiffChange. (Tom Schumm)
12923Solution:   Remember the diff highlight type instead of the attributes.
12924Files:	    src/screen.c
12925
12926Patch 6.2.453
12927Problem:    ":s/foo\|\nbar/x/g" does not replace two times in "foo\nbar".
12928	    (Pavel Papushev)
12929Solution:   When the pattern can match a line break also try matching at the
12930	    NUL at the end of a line.
12931Files:	    src/ex_cmds.c, src/regexp.c
12932
12933Patch 6.2.454
12934Problem:    ":let b:changedtick" doesn't work. (Alan Schmitt)  ":let
12935	    b:changedtick = 99" does not give an error message.
12936Solution:   Add code to recognize ":let b:changedtick".
12937Files:	    src/eval.c
12938
12939Patch 6.2.455 (after 6.2.297)
12940Problem:    In Python commands the current locale changes how certain Python
12941	    functions work. (Eugene M. Minkovskii)
12942Solution:   Set the LC_NUMERIC locale to "C" while executing a Python command.
12943Files:	    src/if_python.c
12944
12945Patch 6.2.456 (extra)
12946Problem:    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)
12949Solution:   Use wide character functions when file names are involved and
12950	    convert from/to 'encoding' where needed.
12951Files:	    src/gui_w48.c, src/macros.h, src/memfile.c, src/memline.c,
12952	    src/os_mswin.c, src/os_win32.c
12953
12954Patch 6.2.457 (after 6.2.244)
12955Problem:    When 'encoding' is "utf-8" and writing text with chars above 0x80
12956	    in latin1, conversion is wrong every 8200 bytes. (Oyvind Holm)
12957Solution:   Correct the utf_ptr2len_check_len() function and fix the problem
12958	    of displaying 0xf7 in utfc_ptr2len_check_len().
12959Files:	    src/mbyte.c
12960
12961Patch 6.2.458
12962Problem:    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)
12965Solution:   Set "coladd" to move the cursor to the end of the character.
12966Files:	    src/misc2.c
12967
12968Patch 6.2.459 (after 6.2.454)
12969Problem:    Variable "b" cannot be written. (Salman Halim)
12970Solution:   Compare strings properly.
12971Files:	    src/eval.c
12972
12973Patch 6.2.460 (extra, after 6.2.456)
12974Problem:    Compiler warnings for missing prototypes.
12975Solution:   Include the missing prototypes.
12976Files:	    src/proto/os_win32.pro
12977
12978Patch 6.2.461
12979Problem:    After using a search command "x" starts putting single characters
12980	    in the numbered registers.
12981Solution:   Reset "use_reg_one" at the right moment.
12982Files:	    src/normal.c
12983
12984Patch 6.2.462
12985Problem:    Finding a matching parenthesis does not correctly handle a
12986	    backslash in a trailing byte.
12987Solution:   Handle multi-byte characters correctly. (Taro Muraoka)
12988Files:	    src/search.c
12989
12990Patch 6.2.463 (extra)
12991Problem:    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.
12995Solution:   Use BackupRead() to check which info streams the original file
12996	    contains and only copy these streams.
12997Files:	    src/os_win32.c
12998
12999Patch 6.2.464 (extra, after 6.2.427)
13000Problem:    Amiga: Compilation error with gcc. (Ali Akcaagac)
13001Solution:   Move the #ifdef outside of Read().
13002Files:	    src/os_amiga.c
13003
13004Patch 6.2.465
13005Problem:    When resizing the GUI window the window manager sometimes moves it
13006	    left of or above the screen. (Michael McCarty)
13007Solution:   Check the window position after resizing it and move it onto the
13008	    screen when it isn't.
13009Files:	    src/gui.c
13010
13011Patch 6.2.466 (extra, after 6.2.456)
13012Problem:    Win32: Compiling with Borland C fails, and an un/signed warning.
13013Solution:   Redefine wcsicmp() to wcscmpi() and add type casts. (Yasuhiro
13014	    Matsumoto)
13015Files:	    src/os_win32.c
13016
13017Patch 6.2.467 (extra, after 6.2.463)
13018Problem:    Win32: can't compile without multi-byte feature. (Ajit Thakkar)
13019Solution:   Add #ifdefs around the info stream code.
13020Files:	    src/os_win32.c
13021
13022Patch 6.2.468
13023Problem:    Compiler warnings for shadowed variables. (Matthias Mohr)
13024Solution:   Delete superfluous variables and rename others.
13025Files:	    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
13028
13029Patch 6.2.469 (extra, after 6.2.456)
13030Problem:    Win32: Can't create swap file when 'encoding' differs from the
13031	    active code page. (Kriton Kyrimis)
13032Solution:   In enc_to_ucs2() terminate the converted string with a NUL
13033Files:	    src/os_mswin.c
13034
13035Patch 6.2.470
13036Problem:    The name returned by tempname() may be equal to the file used for
13037	    shell output when ignoring case.
13038Solution:   Skip 'O' and 'I' in tempname().
13039Files:	    src/eval.c
13040
13041Patch 6.2.471
13042Problem:    "-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)
13045Solution:   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".
13048Files:	    src/auto/configure, src/configure.in, src/link.sh
13049
13050Patch 6.2.472
13051Problem:    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.
13058Solution:   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.
13061Files:	    src/ex_cmds.c, src/fileio.c
13062
13063Patch 6.2.473
13064Problem:    Using CTRL-] in a help buffer without a name causes a crash.
13065Solution:   Check for name to be present before using it. (Taro Muraoka)
13066Files:	    src/tag.c
13067
13068Patch 6.2.474 (extra, after 6.2.456)
13069Problem:    When Vim is starting up conversion is done unnecessarily.  Failure
13070	    to find the runtime files on Windows 98. (Randall W. Morris)
13071Solution:   Init enc_codepage negative, only use it when not negative.
13072	    Don't use GetFileAttributesW() on Windows 98 or earlier.
13073Files:	    src/globals.h, src/gui_w32.c, src/gui_w48.c, src/os_mswin.c,
13074	    src/os_win32.c
13075
13076Patch 6.2.475
13077Problem:    Commands after "perl <<EOF" are parsed as Vim commands when they
13078	    are not executed.
13079Solution:   Properly skip over the perl commands.
13080Files:	    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
13082
13083Patch 6.2.476
13084Problem:    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)
13087Solution:   Save the 'readonly' flag of the reloaded buffer instead of the
13088	    current buffer.
13089Files:	    src/fileio.c
13090
13091Patch 6.2.477
13092Problem:    Using remote_send(v:servername, "\<C-V>") causes Vim to hang.
13093	    (Yakov Lerner)
13094Solution:   When the resulting string is empty don't set received_from_client.
13095Files:	    src/main.c
13096
13097Patch 6.2.478
13098Problem:    Win32: "--remote file" fails changing directory if the current
13099	    directory name starts with a single quote.  (Iestyn Walters)
13100Solution:   Add a backslash where it will be removed later.
13101Files:	    src/main.c, src/misc2.c, src/proto/misc2.pro
13102
13103Patch 6.2.479
13104Problem:    The error message for errors during recovery goes unnoticed.
13105Solution:   Avoid that the hit-enter prompt overwrites the message.  Add a few
13106	    lines to make the error stand out.
13107Files:	    src/main.c, src/message.c, src/memline.c
13108
13109Patch 6.2.480
13110Problem:    NetBeans: Using negative index in array.  backslash at end of
13111	    message may cause Vim to crash. (Xavier de Gaye)
13112Solution:   Initialize buf_list_used to zero. Check for trailing backslash.
13113Files:	    src/netbeans.c
13114
13115Patch 6.2.481
13116Problem:    When writing a file it is not possible to specify that hard and/or
13117	    symlinks are to be broken instead of preserved.
13118Solution:   Add the "breaksymlink" and "breakhardlink" values to 'backupcopy'.
13119	    (Simon Ekstrand)
13120Files:	    runtime/doc/options.txt, src/fileio.c, src/option.c, src/option.h
13121
13122Patch 6.2.482
13123Problem:    Repeating insert of CTRL-K 1 S doesn't work.  The superscript 1 is
13124	    considered to be a digit. (Juergen Kraemer)
13125Solution:   In vim_isdigit() only accept '0' to '9'.  Use VIM_ISDIGIT() for
13126	    speed where possible.  Also add vim_isxdigit().
13127Files:	    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
13136
13137Patch 6.2.483 (extra, after 6.2.482)
13138Problem:    See 6.2.482.
13139Solution:   Extra part of patch 6.2.482.
13140Files:	    src/gui_photon.c, src/gui_w48.c, src/os_msdos.c, src/os_mswin.c
13141
13142Patch 6.2.484
13143Problem:    MS-Windows: With the included diff.exe, differences after a CTRL-Z
13144	    are not recognized.  (Peter Keresztes)
13145Solution:   Write the files with unix fileformat and invoke diff with --binary
13146	    if possible.
13147Files:	    src/diff.c
13148
13149Patch 6.2.485
13150Problem:    A BufWriteCmd autocommand cannot know if "!" was used or not.
13151	    (Hari Krishna Dara)
13152Solution:   Add the v:cmdbang variable.
13153Files:	    runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
13154	    src/fileio.c, src/vim.h
13155
13156Patch 6.2.486 (6.2.482)
13157Problem:    Diff for eval.c is missing.
13158Solution:   Addition to patch 6.2.482.
13159Files:	    src/eval.c
13160
13161Patch 6.2.487 (extra, after 6.2.456)
13162Problem:    Compiler warnings for wrong prototype. (Alejandro Lopez Valencia)
13163Solution:   Delete the prototype for Handle_WM_Notify().
13164Files:	    src/proto/gui_w32.pro
13165
13166Patch 6.2.488
13167Problem:    Missing ")" in *.ch filetype detection.
13168Solution:   Add the ")".  (Ciaran McCreesh)
13169Files:	    runtime/filetype.vim
13170
13171Patch 6.2.489
13172Problem:    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)
13175Solution:   Add the "Abort" alternative to the dialog.
13176Files:	    src/memline.c
13177
13178Patch 6.2.490
13179Problem:    With 'paragraph' it is not possible to use a single dot as a
13180	    paragraph boundary.  (Dorai Sitaram)
13181Solution:   Allow using "  " (two spaces) in 'paragraph' to match ".$" or
13182	    ". $"
13183Files:	    src/search.c
13184
13185Patch 6.2.491
13186Problem:    Decrementing a position doesn't take care of multi-byte chars.
13187Solution:   Adjust the column for multi-byte characters.  Remove mb_dec().
13188	    (Yasuhiro Matsumoto)
13189Files:	    src/mbyte.c, src/misc2.c, src/proto/mbyte.pro
13190
13191Patch 6.2.492
13192Problem:    When using ":redraw" while there is a message, the next ":echo"
13193	    still causes text to scroll. (Yasuhiro Matsumoto)
13194Solution:   Reset msg_didout and msg_col, so that after ":redraw" the next
13195	    message overwrites an existing one.
13196Files:	    src/ex_docmd.c
13197
13198Patch 6.2.493
13199Problem:    "@x" doesn't work when 'insertmode' is set. (Benji Fisher)
13200Solution:   Put "restart_edit" in the typeahead buffer, so that it's used
13201	    after executing the register contents.
13202Files:	    src/ops.c
13203
13204Patch 6.2.494
13205Problem:    Using diff mode with two windows, when moving horizontally in
13206	    inserted lines, a fold in the other window may open.
13207Solution:   Compute the line number in the other window correctly.
13208Files:	    src/diff.c
13209
13210Patch 6.2.495 (extra, after 6.2.456)
13211Problem:    Win32: The file dialog doesn't work on Windows 95.
13212Solution:   Put the wide code of gui_mch_browse() in gui_mch_browseW() and use
13213	    it only on Windows NT/2000/XP.
13214Files:	    src/gui_w32.c, src/gui_w48.c
13215
13216Patch 6.2.496
13217Problem:    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.
13220Solution:   When compiled with threads, instead of using the normal stacksize
13221	    limit, use the size of the initial stack.
13222Files:	    src/auto/configure, src/config.h.in, src/configure.in,
13223	    src/os_unix.c
13224
13225Patch 6.2.497 (extra)
13226Problem:    Russian messages are only available in one encoding.
13227Solution:   Convert the messages to MS-Windows codepages. (Vassily Ragosin)
13228Files:	    src/po/Makefile
13229
13230Patch 6.2.498
13231Problem:    Non-latin1 help files are not properly supported.
13232Solution:   Support utf-8 help files and convert them to 'encoding' when
13233	    needed.
13234Files:	    src/fileio.c
13235
13236Patch 6.2.499
13237Problem:    When writing a file and halting the system, the file might be lost
13238	    when using a journaling file system.
13239Solution:   Use fsync() to flush the file data to disk after writing a file.
13240	    (Radim Kolar)
13241Files:	    src/fileio.c
13242
13243Patch 6.2.500 (extra)
13244Problem:    The DOS/MS-Windows the installer doesn't use the --binary flag for
13245	    diff.
13246Solution:   Add --binary to the diff argument in MyDiff(). (Alejandro Lopez-
13247	    Valencia)
13248Files:	    src/dosinst.c
13249
13250Patch 6.2.501
13251Problem:    Vim does not compile with MorphOS.
13252Solution:   Add a Makefile and a few changes to make Vim work with MorphOS.
13253	    (Ali Akcaagac)
13254Files:	    runtime/doc/os_amiga.txt, src/INSTALLami.txt,
13255	    src/Make_morphos.mak, src/memfile.c, src/term.c
13256
13257Patch 6.2.502
13258Problem:    Building fails for generating message files.
13259Solution:   Add dummy message files.
13260Files:	    src/po/ca.po, src/po/ru.po, src/po/sv.po
13261
13262Patch 6.2.503
13263Problem:    Mac: Can't compile MacRoman conversions without the GUI.
13264Solution:   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.
13267Files:	    src/auto/configure, src/Makefile, src/configure.in
13268
13269Patch 6.2.504
13270Problem:    Various problems with 'cindent', among which that a
13271	    list of variable declarations is not indented properly.
13272Solution:   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.
13276Files:	    runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
13277	    src/testdir/test3.ok
13278
13279Patch 6.2.505
13280Problem:    Help for -P argument is missing. (Ronald Hoellwarth)
13281Solution:   Add the patch that was missing in 6.2.419.
13282Files:	    runtime/doc/starting.txt
13283
13284Patch 6.2.506 (extra)
13285Problem:    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.
13288Solution:   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.
13291Files:	    src/fileio.c, src/testdir/Make_dos.mak, src/testdir/test52.in,
13292	    src/testdir/test52.ok
13293
13294Patch 6.2.507
13295Problem:    The ownership of the file with the password for the NetBeans
13296	    connection is not checked.  "-nb={file}" doesn't work for GTK.
13297Solution:   Only accept the file when owned by the user and not accessible by
13298	    others.  Detect "-nb=" for GTK.
13299Files:	    src/netbeans.c, src/gui_gtk_x11.c
13300
13301Patch 6.2.508
13302Problem:    Win32: "v:lang" does not show the current language for messages if
13303	    it differs from the other locale settings.
13304Solution:   Use the value of the $LC_MESSAGES environment variable.
13305Files:	    src/ex_cmds2.c
13306
13307Patch 6.2.509 (after 6.2.508)
13308Problem:    Crash when $LANG is not set.
13309Solution:   Add check for NULL pointer. (Ron Aaron)
13310Files:	    src/ex_cmds2.c
13311
13312Patch 6.2.510 (after 6.2.507)
13313Problem:    Warning for pointer conversion.
13314Solution:   Add a type cast.
13315Files:	    src/gui_gtk_x11.c
13316
13317Patch 6.2.511
13318Problem:    Tags in Russian help files are in utf-8 encoding, which may be
13319	    different from 'encoding'.
13320Solution:   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.
13324Files:	    runtime/doc/tagsrch.txt, src/ex_cmds.c, src/tag.c
13325
13326Patch 6.2.512
13327Problem:    Translating "\"\n" is useless. (Gerfried Fuchs)
13328Solution:   Remove the _() around it.
13329Files:	    src/main.c, src/memline.c
13330
13331Patch 6.2.513 (after 6.2.507)
13332Problem:    NetBeans: the check for owning the connection info file can be
13333	    simplified. (Nikolay Molchanov)
13334Solution:   Only check if the access mode is right.
13335Files:	    src/netbeans.c
13336
13337Patch 6.2.514
13338Problem:    When a highlight/syntax group name contains invalid characters
13339	    there is no warning.
13340Solution:   Add an error for unprintable characters and a warning for other
13341	    invalid characters.
13342Files:	    src/syntax.c
13343
13344Patch 6.2.515
13345Problem:    When using the options window 'swapfile' is reset.
13346Solution:   Use ":setlocal" instead of ":set".
13347Files:	    runtime/optwin.vim
13348
13349Patch 6.2.516
13350Problem:    The sign column cannot be seen, looks like there are two spaces
13351	    before the text. (Rob Retter)
13352Solution:   Add the SignColumn highlight group.
13353Files:	    runtime/doc/options.txt, runtime/doc/sign.txt, src/option.c,
13354	    src/screen.c, src/syntax.c, src/vim.h
13355
13356Patch 6.2.517
13357Problem:    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.
13360Solution:   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.
13363Files:	    src/ops.c
13364
13365Patch 6.2.518
13366Problem:    Last line of a window is not updated after using "J" and then "D".
13367	    (Adri Verhoef)
13368Solution:   When no line is found below a change that doesn't need updating,
13369	    update all lines below the change.
13370Files:	    src/screen.c
13371
13372Patch 6.2.519
13373Problem:    Mac: cannot read/write files in MacRoman format.
13374Solution:   Do internal conversion from/to MacRoman to/from utf-8 and latin1.
13375	    (Eckehard Berns)
13376Files:	    src/fileio.c
13377
13378Patch 6.2.520 (extra)
13379Problem:    The NSIS installer is outdated.
13380Solution:   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.
13383Files:	    Makefile, nsis/gvim.nsi
13384
13385Patch 6.2.521
13386Problem:    When using silent Ex mode the "changing a readonly file" warning
13387	    is omitted but the one second wait isn't. (Yakov Lerner)
13388Solution:   Skip the delay when "silent_mode" is set.
13389Files:	    src/misc1.c
13390
13391Patch 6.2.522
13392Problem:    GUI: when changing 'cmdheight' in the gvimrc file the window
13393	    layout is messed up. (Keith Dart)
13394Solution:   Skip updating the window layout when changing 'cmdheight' while
13395	    still starting up.
13396Files:	    src/option.c
13397
13398Patch 6.2.523
13399Problem:    When loading a session and aborting when a swap file already
13400	    exists, the user is left with useless windows. (Robert Webb)
13401Solution:   Load one file before creating the windows.
13402Files:	    src/ex_docmd.c
13403
13404Patch 6.2.524 (extra, after 6.2.520)
13405Problem:    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.
13411Solution:   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)
13416Files:	    nsis/gvim.nsi, src/dosinst.c, src/dosinst.h, src/uninstal.c
13417
13418Patch 6.2.525
13419Problem:    When the history contains a very long line ":history" causes a
13420	    crash. (Volker Kiefel)
13421Solution:   Shorten the history entry to fit it in one line.
13422Files:	    src/ex_getln.c
13423
13424Patch 6.2.526
13425Problem:    When s:lang is "ja" the Japanese menus are not used.
13426Solution:   Add 'encoding' to the language when there is no charset.
13427Files:	    runtime/menu.vim
13428
13429Patch 6.2.527
13430Problem:    The 2html script uses ":wincmd p", which breaks when using some
13431	    autocommands.
13432Solution:   Remember the window numbers and jump to them with ":wincmd w".
13433	    Also add XHTML support. (Panagiotis Issaris)
13434Files:	    runtime/syntax/2html.vim
13435
13436Patch 6.2.528
13437Problem:    NetBeans: Changes of the "~" command are not reported.
13438Solution:   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.
13442Files:	    src/nbdebug.c, src/normal.c, src/ops.c
13443
13444Patch 6.2.529 (extra)
13445Problem:    VisVim only works for Admin.  Doing it for one user doesn't work.
13446	    (Alexandre Gouraud)
13447Solution:   When registering the module fails, simply continue.
13448Files:	    src/VisVim/VisVim.cpp
13449
13450Patch 6.2.530
13451Problem:    Warning for missing prototype on the Amiga.
13452Solution:   Include time.h
13453Files:	    src/version.c
13454
13455Patch 6.2.531
13456Problem:    In silent ex mode no messages are given, which makes debugging
13457	    very difficult.
13458Solution:   Do output messages when 'verbose' is set.
13459Files:	    src/message.c, src/ui.c
13460
13461Patch 6.2.532 (extra)
13462Problem:    Compiling for Win32s with VC 4.1 doesn't work.
13463Solution:   Don't use CP_UTF8 if it's not defined.  Don't use CSIDL_COMMON*
13464	    when not defined.
13465Files:	    src/dosinst.h, src/fileio.c
13466
13467Win32 console: After patch 6.2.398 Ex mode did not work. (Yasuhiro Matsumoto)
13468
13469Patch 6.3a.001
13470Problem:    Win32: if testing for the "--binary" option fails, diff isn't used
13471	    at all.
13472Solution:   Handle the "ok" flag properly. (Yasuhiro Matsumoto)
13473Files:	    src/diff.c
13474
13475Patch 6.3a.002
13476Problem:    NetBeans: An insert command from NetBeans beyond the end of a
13477	    buffer crashes Vim. (Xavier de Gaye)
13478Solution:   Use a local pos_T structure for the position.
13479Files:	    src/netbeans.c
13480
13481Patch 6.3a.003
13482Problem:    E315 error with auto-formatting comments. (Henry Van Roessel)
13483Solution:   Pass the line number to same_leader().
13484Files:	    src/ops.c
13485
13486Patch 6.3a.004
13487Problem:    Test32 fails on Windows XP for the DJGPP version.  Renaming
13488	    test11.out fails.
13489Solution:   Don't try renaming, create new files to use for the test.
13490Files:	    src/testdir/test32.in, src/testdir/test32.ok
13491
13492Patch 6.3a.005
13493Problem:    ":checkpath!" does not use 'includeexpr'.
13494Solution:   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.
13496Files:	    src/search.c
13497
13498Patch 6.3a.006
13499Problem:    "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)
13501Solution:   Move the cursor to the first column.
13502Files:	    src/search.c
13503
13504Patch 6.3a.007
13505Problem:    'cindent' recognizes "enum" but not "typedef enum".
13506Solution:   Skip over "typedef" before checking for "enum". (Helmut Stiegler)
13507	    Also avoid that searching for this item goes too far back.
13508Files:	    src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
13509
13510Patch 6.3a.008 (extra)
13511Problem:    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.
13514Solution:   Handle the failure and fall back to non-wide functions.
13515Files:	    src/os_win32.c
13516
13517Patch 6.3a.009
13518Problem:    Win32: Completion of filenames does not work properly when
13519	    'encoding' differs from the active code page.
13520Solution:   Use wide functions for expanding wildcards when appropriate.
13521Files:	    src/misc1.c
13522
13523Patch 6.3a.010 (extra)
13524Problem:    Win32: Characters in the window title that do not appear in the
13525	    active codepage are replaced by a question mark.
13526Solution:   Use DefWindowProcW() instead of DefWindowProc() when possible.
13527Files:	    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
13529
13530Patch 6.3a.011
13531Problem:    Using the explorer plugin changes a local directory to the global
13532	    directory.
13533Solution:   Don't use ":chdir" to restore the current directory.  Make
13534	    "expand('%:p')" remove "/../" and "/./" items from the path.
13535Files:	    runtime/plugin/explorer.vim, src/eval.c, src/os_unix.c
13536
13537Patch 6.3a.012 (extra)
13538Problem:    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".
13542Solution:   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.
13546Files:	    nsis/gvim.nsi, src/dosinst.c
13547
13548Patch 6.3a.013 (extra)
13549Problem:    Win32: Characters in the menu that are not in the active codepage
13550	    are garbled.
13551Solution:   Convert menu strings from 'encoding' to the active codepage.
13552Files:	    src/gui_w32.c, src/gui_w48.c
13553
13554Patch 6.3a.014
13555Problem:    Using multi-byte text and highlighting in a statusline causes gaps
13556	    to appear. (Helmut Stiegler)
13557Solution:   Advance the column by text width instead of number of bytes.  Add
13558	    the vim_strnsize() function.
13559Files:	    src/charset.c, src/proto/charset.pro, src/screen.c
13560
13561Patch 6.3a.015
13562Problem:    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)
13566Solution:   Don't use CTRL-\ CTRL-N.  Add ":confirm" for the Buffers menu
13567	    items.
13568Files:	    runtime/menu.vim
13569
13570Patch 6.3a.016
13571Problem:    After cancelling the ":confirm" dialog the error message and
13572	    hit-enter prompt may not be displayed properly.
13573Solution:   Flush output after showing the dialog.
13574Files:	    src/message.c
13575
13576Patch 6.3a.017
13577Problem:    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)
13580Solution:   Force connecting to the X server when using client-server
13581	    commands.
13582Files:	    src/eval.c, src/globals.h, src/os_unix.c
13583
13584Patch 6.3a.018 (after 6.3a.017)
13585Problem:    Compiler warning for return value of make_connection().
13586Solution:   Use void return type.
13587Files:	    src/eval.c
13588
13589Patch 6.3a.019 (extra)
13590Problem:    Win32: typing non-latin1 characters doesn't work.
13591Solution:   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().
13594Files:	    src/gui_w32.c, src/gui_w48.c
13595
13596Patch 6.3a.020 (extra)
13597Problem:    Missing support for AROS (AmigaOS reimplementation).  Amiga GUI
13598	    doesn't work.
13599Solution:   Add AROS support.  (Adam Chodorowski)
13600	    Fix Amiga GUI problems. (Georg Steger, Ali Akcaagac)
13601Files:	    Makefile, src/Make_aros.mak, src/gui_amiga.c, src/gui_amiga.h,
13602	    src/memfile.c, src/os_amiga.c, src/term.c
13603
13604Patch 6.3a.021 (after 6.3a.017)
13605Problem:    Can't compile with X11 but without GUI.
13606Solution:   Put use of "gui.in_use" inside an #ifdef.
13607Files:	    src/eval.c
13608
13609Patch 6.3a.022
13610Problem:    When typing Tabs when 'softtabstop' is used and 'list' is set a
13611	    tab is counted for two spaces.
13612Solution:   Use the "L" flag in 'cpoptions' to tell whether a tab is counted
13613	    as two spaces or as 'tabstop'. (Antony Scriven)
13614Files:	    runtime/doc/options.txt, src/edit.c
13615
13616Patch 6.3a.023
13617Problem:    Completion on the command line doesn't handle backslashes
13618	    properly.  Only the tail of matches is shown, even when not
13619	    completing filenames.
13620Solution:   When turning the string into a pattern double backslashes.  Don't
13621	    omit the path when not expanding files or directories.
13622Files:	    src/ex_getln.c
13623
13624Patch 6.3a.024
13625Problem:    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.
13630Solution:   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.
13633Files:	    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
13637
13638Patch 6.3a.025
13639Problem:    Setting 'virtualedit' moves the cursor. (Benji Fisher)
13640Solution:   Update the virtual column before using it.
13641Files:	    src/option.c
13642
13643Patch 6.3a.026 (extra, after 6.3a.008)
13644Problem:    Editing files on Windows 98 doesn't work when 'encoding' is
13645	    "utf-8" (Antoine Mechelynck)
13646	    Warning for missing function prototype.
13647Solution:   For all wide functions check if it failed because it is not
13648	    implemented.  Use ANSI function declaration for char_to_string().
13649Files:	    src/gui_w48.c, src/os_mswin.c, src/os_win32.c
13650
13651Patch 6.3a.027 (extra, after 6.3a.026)
13652Problem:    Compiler warning for function argument.
13653Solution:   Declare both char and WCHAR arrays.
13654Files:	    src/gui_w48.c
13655
13656Patch 6.3a.028
13657Problem:    ":normal ." doesn't work inside a function, because redo is saved
13658	    and restored. (Benji Fisher)
13659Solution:   Make a copy of the redo buffer when executing a function.
13660Files:	    src/getchar.c
13661
13662Patch 6.3b.001 (extra)
13663Problem:    Bcc 5: The generated auto/pathdef can't be compiled.
13664Solution:   Fix the way quotes and backslashes are escaped.
13665Files:	    src/Make_bc5.mak
13666
13667Patch 6.3b.002
13668Problem:    Win32: conversion during file write fails when a double-byte
13669	    character is split over two writes.
13670Solution:   Fix the conversion retry without a trailing byte. (Taro Muraoka)
13671Files:	    src/fileio.c
13672
13673Patch 6.3b.003 (extra)
13674Problem:    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)
13677Solution:   Don't use _wstat(), _wopen() and _wfopen() in this situation.
13678Files:	    src/os_mswin.c, src/os_win32.c
13679
13680Patch 6.3b.004
13681Problem:    ":helpgrep" includes a trailing CR in the text line.
13682Solution:   Remove the CR.
13683Files:	    src/quickfix.c
13684
13685Patch 6.3b.005
13686Problem:    ":echo &g:ai" results in the local option value. (Salman Halim)
13687Solution:   Pass the flags from find_option_end() to get_option_value().
13688Files:	    src/eval.c
13689
13690Patch 6.3b.006
13691Problem:    When using "mswin.vim", CTRL-V in Insert mode leaves cursor before
13692	    last pasted character.  (Mathew Davis)
13693Solution:   Use the same Paste() function as in menu.vim.
13694Files:	    runtime/mswin.vim
13695
13696Patch 6.3b.007
13697Problem:    Session file doesn't restore view on windows properly. (Robert
13698	    Webb)
13699Solution:   Restore window sizes both before and after restoring the view, so
13700	    that the view, cursor position and size are restored properly.
13701Files:	    src/ex_docmd.c
13702
13703Patch 6.3b.008
13704Problem:    Using ":finally" in a user command doesn't always work. (Hari
13705	    Krishna Dara)
13706Solution:   Don't assume that using getexline() means the command was typed.
13707Files:	    src/ex_docmd.c
13708
13709Patch 6.3b.009 (extra)
13710Problem:    Win32: When the -P argument is not found in a window title, there
13711	    is no error message.
13712Solution:   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)
13715Files:	    src/gui_w32.c
13716
13717Patch 6.3b.010
13718Problem:    Win32: Using the "-D" argument and expanding arguments may cause a
13719	    hang, because the terminal isn't initialized yet. (Vince Negri)
13720Solution:   Don't go into debug mode before the terminal is initialized.
13721Files:	    src/main.c
13722
13723Patch 6.3b.011
13724Problem:    Using CTRL-\ e while obtaining an expression aborts the command
13725	    line. (Hari Krishna Dara)
13726Solution:   Insert the CTRL-\ e as typed.
13727Files:	    src/ex_getln.c
13728
13729Patch 6.3b.012 (after 6.3b.010)
13730Problem:    Can't compile with tiny features. (Norbert Tretkowski)
13731Solution:   Add #ifdefs.
13732Files:	    src/main.c
13733
13734Patch 6.3b.013
13735Problem:    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)
13738Solution:   Check w_arg_idx_invalid to decide whether to edit a file.
13739Files:	    src/ex_docmd.c
13740
13741Patch 6.3b.014
13742Problem:    ":runtime! foo*.vim" may using freed memory when a sourced script
13743	    changes the value of 'runtimepath'.
13744Solution:   Make a copy of 'runtimepath' when looping over the matches.
13745Files:	    src/ex_cmds2.c
13746
13747Patch 6.3b.015
13748Problem:    Get lalloc(0) error when using "p" in Visual mode while
13749	    'clipboard' contains "autoselect,unnamed". (Mark Wagonner)
13750Solution:   Avoid allocating zero bytes.  Obtain the clipboard when necessary.
13751Files:	    src/ops.c
13752
13753Patch 6.3b.016
13754Problem:    When 'virtualedit' is used "x" doesn't delete the last character
13755	    of a line that has as many characters as 'columns'. (Yakov Lerner)
13756Solution:   When the cursor isn't moved let oneright() return FAIL.
13757Files:	    src/edit.c
13758
13759Patch 6.3b.017
13760Problem:    Win32: "vim --remote-wait" doesn't exit when the server finished
13761	    editing the file. (David Fishburn)
13762Solution:   In the rrhelper plugin change backslashes to forward slashes and
13763	    escape special characters.
13764Files:	    runtime/plugin/rrhelper.vim
13765
13766Patch 6.3b.018
13767Problem:    The list of help files in the "local additions" table doesn't
13768	    recognize utf-8 encoding. (Yasuhiro Matsumoto)
13769Solution:   Recognize utf-8 characters.
13770Files:	    src/ex_cmds.c
13771
13772Patch 6.3b.019
13773Problem:    When $VIMRUNTIME is not a full path name the "local additions"
13774	    table lists all the help files.
13775Solution:   Use fullpathcmp() instead of fnamecmp() to compare the directory
13776	    names.
13777Files:	    src/ex_cmds.c
13778
13779Patch 6.3b.020
13780Problem:    When using CTRL-^ when entering a search string, the item in the
13781	    statusline that indicates the keymap is not updated. (Ilya
13782	    Dogolazky)
13783Solution:   Mark the statuslines for updating.
13784Files:	    src/ex_getln.c
13785
13786Patch 6.3b.021
13787Problem:    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)
13790Solution:   Use the protection of original file for the swapfile and set it
13791	    after creating the swapfile.
13792Files:	    src/fileio.c
13793
13794Patch 6.3b.022
13795Problem:    Using "4v" to select four times the old Visual area may put the
13796	    cursor beyond the end of the line. (Jens Paulus)
13797Solution:   Correct the cursor column.
13798Files:	    src/normal.c
13799
13800Patch 6.3b.023
13801Problem:    When "3dip" starts in an empty line, white lines after the
13802	    non-white lines are not deleted. (Jens Paulus)
13803Solution:   Include the white lines.
13804Files:	    src/search.c
13805
13806Patch 6.3b.024
13807Problem:    "2daw" does not delete leading white space like "daw" does.  (Jens
13808	    Paulus)
13809Solution:   Include the white space when a count is used.
13810Files:	    src/search.c
13811
13812Patch 6.3b.025
13813Problem:    Percentage in ruler isn't updated when a line is deleted. (Jens
13814	    Paulus)
13815Solution:   Check for a change in line count when deciding to update the ruler.
13816Files:	    src/screen.c, src/structs.h
13817
13818Patch 6.3b.026
13819Problem:    When selecting "abort" at the ATTENTION prompt for a file that is
13820	    already being edited Vim crashes.
13821Solution:   Don't abort creating a new buffer when we really need it.
13822Files:	    src/buffer.c, src/vim.h
13823
13824Patch 6.3b.027
13825Problem:    Win32: When enabling the menu in a maximized window, Vim uses more
13826	    lines than what is room for. (Shizhu Pan)
13827Solution:   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.
13830Files:	    src/gui.c
13831
13832Patch 6.3b.028
13833Problem:    When in diff mode, setting 'rightleft' causes a crash. (Eddine)
13834Solution:   Check for last column differently when 'rightleft' is set.
13835Files:	    src/screen.c
13836
13837Patch 6.3b.029
13838Problem:    Win32: warning for uninitialized variable.
13839Solution:   Initialize to zero.
13840Files:	    src/misc1.c
13841
13842Patch 6.3b.030
13843Problem:    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)
13846Solution:   Don't store the size of the Visual area when redo is active.
13847Files:	    src/normal.c
13848
13849==============================================================================
13850VERSION 6.4						*version-6.4*
13851
13852This section is about improvements made between version 6.3 and 6.4.
13853
13854This is a bug-fix release.  There are also a few new features.  The major
13855number of new items is in the runtime files and translations.
13856
13857The big MS-Windows version now uses:
13858	Ruby version 1.8.3
13859	Perl version 5.8.7
13860	Python version 2.4.2
13861
13862
13863Changed							*changed-6.4*
13864-------
13865
13866Removed runtime/tools/tcltags, Exuberant ctags does it better.
13867
13868
13869Added							*added-6.4*
13870-----
13871
13872Alsaconf syntax file (Nikolai Weibull)
13873Eruby syntax, indent, compiler and ftplugin file (Doug Kearns)
13874Esterel syntax file (Maurizio Tranchero)
13875Mathematica indent file (Steve Layland)
13876Netrc syntax file (Nikolai Weibull)
13877PHP compiler file (Doug Kearns)
13878Pascal indent file (Neil Carter)
13879Prescribe syntax file (Klaus Muth)
13880Rubyunit compiler file (Doug Kearns)
13881SMTPrc syntax file (Kornel Kielczewski)
13882Sudoers syntax file (Nikolai Weibull)
13883TPP syntax file (Gerfried Fuchs)
13884VHDL ftplugin file (R. Shankar)
13885Verilog-AMS syntax file (S. Myles Prather)
13886
13887Bulgarian keymap (Alberto Mardegan)
13888Canadian keymap (Eric Joanis)
13889
13890Hungarian menu translations in UTF-8 (Kantra Gergely)
13891Ukrainian menu translations (Bohdan Vlasyuk)
13892
13893Irish message translations (Kevin Patrick Scannell)
13894
13895Configure also checks for tclsh8.4.
13896
13897
13898Fixed							*fixed-6.4*
13899-----
13900
13901"dFxd;" deleted the character under the cursor, "d;" didn't remember the
13902exclusiveness of the motion.
13903
13904When using "set laststatus=2 cmdheight=2" in the .gvimrc you may only get one
13905line for the cmdline. (Christian Robinson)  Invoke command_height() after the
13906GUI has started up.
13907
13908Gcc would warn "dereferencing type-punned pointer will break strict -aliasing
13909rules".  Avoid using typecasts for variable pointers.
13910
13911Gcc 3.x interprets the -MM argument differently.  Change "-I /path" to
13912"-isystem /path" for "make depend".
13913
13914
13915Patch 6.3.001
13916Problem:    ":browse split" gives the file selection dialog twice. (Gordon
13917	    Bazeley)  Same problem for ":browse diffpatch".
13918Solution:   Reset cmdmod.browse before calling do_ecmd().
13919Files:	    src/diff.c, src/ex_docmd.c
13920
13921Patch 6.3.002
13922Problem:    When using translated help files with non-ASCII latin1 characters
13923	    in the first line the utf-8 detection is wrong.
13924Solution:   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.
13928Files:	    src/ex_cmds.c
13929
13930Patch 6.3.003
13931Problem:    Crash when using a console dialog and the first choice does not
13932	    have a default button. (Darin Ohashi)
13933Solution:   Allocate two more characters for the [] around the character for
13934	    the default choice.
13935Files:	    src/message.c
13936
13937Patch 6.3.004
13938Problem:    When searching for a long string (140 chars in a 80 column
13939	    terminal) get three hit-enter prompts. (Robert Webb)
13940Solution:   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.
13943Files:	    src/message.c, src/search.c
13944
13945Patch 6.3.005
13946Problem:    Crash when searching for a pattern with a character offset and
13947	    starting in a closed fold. (Frank Butler)
13948Solution:   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.
13951Files:	    src/search.c
13952
13953Patch 6.3.006
13954Problem:    ":breakadd file *foo" prepends the current directory to the file
13955	    pattern. (Hari Krishna Dara)
13956Solution:   Keep the pattern as-is.
13957Files:	    src/ex_cmds2.c
13958
13959Patch 6.3.007
13960Problem:    When there is a buffer with 'buftype' set to "nofile" and using a
13961	    ":cd" command, the swap file is not deleted when exiting.
13962Solution:   Use the full path of the swap file also for "nofile" buffers.
13963Files:	    src/fileio.c
13964
13965Patch 6.3.008
13966Problem:    Compiling fails under OS/2.
13967Solution:   Include "e_screenmode" also for OS/2. (David Sanders)
13968Files:	    src/globals.h
13969
13970Patch 6.3.009 (after 6.3.006)
13971Problem:    ":breakadd file /path/foo.vim" does not match when a symbolic link
13972	    is involved.  (Servatius Brandt)
13973Solution:   Do expand the pattern when it does not start with "*".
13974Files:	    runtime/doc/repeat.txt, src/ex_cmds2.c
13975
13976Patch 6.3.010
13977Problem:    When writing to a named pipe there is an error for fsync()
13978	    failing.
13979Solution:   Ignore the fsync() error for devices.
13980Files:	    src/fileio.c
13981
13982Patch 6.3.011
13983Problem:    Crash when the completion function of a user-command uses a
13984	    "normal :cmd" command.  (Hari Krishna Dara)
13985Solution:   Save the command line when invoking the completion function.
13986Files:	    src/ex_getln.c
13987
13988Patch 6.3.012
13989Problem:    Internal lalloc(0) error when using a complicated multi-line
13990	    pattern in a substitute command. (Luc Hermitte)
13991Solution:   Avoid going past the end of a line.
13992Files:	    src/ex_cmds.c
13993
13994Patch 6.3.013
13995Problem:    Crash when editing a command line and typing CTRL-R = to evaluate
13996	    a function that uses "normal :cmd". (Hari Krishna Dara)
13997Solution:   Save and restore the command line when evaluating an expression
13998	    for CTRL-R =.
13999Files:	    src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
14000	    src/proto/ops.pro
14001
14002Patch 6.3.014
14003Problem:    When using Chinese or Taiwanese the default for 'helplang' is
14004	    wrong. (Simon Liang)
14005Solution:   Use the part of the locale name after "zh_".
14006Files:	    src/option.c
14007
14008Patch 6.3.015
14009Problem:    The string that winrestcmd() returns may end in garbage.
14010Solution:   NUL-terminate the string. (Walter Briscoe)
14011Files:	    src/eval.c
14012
14013Patch 6.3.016
14014Problem:    The default value for 'define' has "\s" before '#'.
14015Solution:   Add a star after "\s". (Herculano de Lima Einloft Neto)
14016Files:	    src/option.c
14017
14018Patch 6.3.017
14019Problem:    "8zz" may leave the cursor beyond the end of the line. (Niko
14020	    Maatjes)
14021Solution:   Correct the cursor column after moving to another line.
14022Files:	    src/normal.c
14023
14024Patch 6.3.018
14025Problem:    ":0argadd zero" added the argument after the first one, instead of
14026	    before it. (Adri Verhoef)
14027Solution:   Accept a zero range for ":argadd".
14028Files:	    src/ex_cmds.h
14029
14030Patch 6.3.019
14031Problem:    Crash in startup for debug version. (David Rennals)
14032Solution:   Move the call to nbdebug_wait() to after allocating NameBuff.
14033Files:	    src/main.c
14034
14035Patch 6.3.020
14036Problem:    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)
14039Solution:   Correctly check that one character is being deleted.
14040Files:	    src/misc1.c
14041
14042Patch 6.3.021
14043Problem:    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.
14045Solution:   Check for the last byte to be part of a multi-byte character.
14046	    (Taro Muraoka)
14047Files:	    src/fileio.c
14048
14049Patch 6.3.022 (extra)
14050Problem:    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.
14054Solution:   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)
14057Files:	    src/gui_w48.c, src/os_mswin.c
14058
14059Patch 6.3.023
14060Problem:    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.
14064Solution:   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.
14067Files:	    src/getchar.c, src/vim.h
14068
14069Patch 6.3.024
14070Problem:    In a few places a string in allocated memory is not terminated
14071	    with a NUL.
14072Solution:   Add ga_append(NUL) in script_get(), gui_do_findrepl() and
14073	    serverGetVimNames().
14074Files:	    src/ex_getln.c, src/gui.c, src/if_xcmdsrv.c, src/os_mswin.c
14075
14076Patch 6.3.025 (extra)
14077Problem:    Missing NUL for list of server names.
14078Solution:   Add ga_append(NUL) in serverGetVimNames().
14079Files:	    src/os_mswin.c
14080
14081Patch 6.3.026
14082Problem:    When ~/.vim/after/syntax/syncolor.vim contains a command that
14083	    reloads the colors an endless loop and/or a crash may occur.
14084Solution:   Only free the old value of an option when it was originally
14085	    allocated.  Limit recursiveness of init_highlight() to 5 levels.
14086Files:	    src/option.c, src/syntax.c
14087
14088Patch 6.3.027
14089Problem:    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.
14092Solution:   Use another method to write files.  Add vt320 termcap codes for
14093	    colors.  (Zoltan Arpadffy)
14094Files:	    src/fileio.c, src/misc1.c, src/os_unix.c, src/structs.h,
14095	    src/term.c
14096
14097Patch 6.3.028
14098Problem:    When appending to a file the BOM marker may be written.  (Alex
14099	    Jakushev)
14100Solution:   Do not write the BOM marker when appending.
14101Files:	    src/fileio.c
14102
14103Patch 6.3.029
14104Problem:    Crash when inserting a line break. (Walter Briscoe)
14105Solution:   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.
14107Files:	    src/syntax.c
14108
14109Patch 6.3.030
14110Problem:    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.
14113Solution:   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.
14116Files:	    src/gui_gtk.c, src/mbyte.c, src/proto/mbyte.pro, src/screen.c
14117
14118Patch 6.3.031
14119Problem:    When entering a mapping and pressing Tab halfway the command line
14120	    isn't redrawn properly. (Adri Verhoef)
14121Solution:   Reposition the cursor after drawing over the "..." of the
14122	    completion attempt.
14123Files:	    src/ex_getln.c
14124
14125Patch 6.3.032
14126Problem:    Using Python 2.3 with threads doesn't work properly.
14127Solution:   Release the lock after initialization.
14128Files:	    src/if_python.c
14129
14130Patch 6.3.033
14131Problem:    When a mapping ends in a Normal mode command of more than one
14132	    character Vim doesn't return to Insert mode.
14133Solution:   Check that the mapping has ended after obtaining all characters of
14134	    the Normal mode command.
14135Files:	    src/normal.c
14136
14137Patch 6.3.034
14138Problem:    VMS: crash when using ":help".
14139Solution:   Avoid using "tags-??", some Open VMS systems can't handle the "?"
14140	    wildcard.  (Zoltan Arpadffy)
14141Files:	    src/tag.c
14142
14143Patch 6.3.035 (extra)
14144Problem:    RISC OS: Compile errors.
14145Solution:   Change e_screnmode to e_screenmode.  Change the way
14146	    __riscosify_control is set.  Improve the makefile.  (Andy Wingate)
14147Files:	    src/os_riscos.c, src/search.c, src/Make_ro.mak
14148
14149Patch 6.3.036
14150Problem:    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.
14153Solution:   Delete the fold properly.
14154Files:	    src/fold.c
14155
14156Patch 6.3.037 (after 6.3.032)
14157Problem:    Warning for unused variable.
14158Solution:   Change the #ifdefs for the saved thread stuff.
14159Files:	    src/if_python.c
14160
14161Patch 6.3.038 (extra)
14162Problem:    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.
14166Solution:   Clear the s_button_pending variable when any input is received.
14167Files:	    src/gui_w48.c
14168
14169Patch 6.3.039
14170Problem:    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)
14173Solution:   When 'number' is set and lines are inserted/deleted redraw all
14174	    lines below the change.
14175Files:	    src/screen.c
14176
14177Patch 6.3.040
14178Problem:    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.
14181Solution:   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.
14184Files:	    src/buffer.c, src/ex_docmd.c, src/ex_eval.c,
14185	    src/proto/ex_eval.pro, src/structs.h, src/vim.h
14186
14187Patch 6.3.041 (extra)
14188Problem:    Win32: When the path to a file has Russian characters, ":cd %:p:h"
14189	    doesn't work. (Valery Kondakoff)
14190Solution:   Use a wide function to change directory.
14191Files:	    src/os_mswin.c
14192
14193Patch 6.3.042
14194Problem:    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)
14197Solution:   Scroll over the closed fold.
14198Files:	    src/move.c
14199
14200Patch 6.3.043
14201Problem:    'hlsearch' highlighting sometimes disappears when inserting text
14202	    in PHP code with syntax highlighting. (Marcel Svitalsky)
14203Solution:   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.
14206Files:	    src/screen.c
14207
14208Patch 6.3.044 (extra)
14209Problem:    Mac: When 'linespace' is non-zero the Insert mode cursor leaves
14210	    pixels behind. (Richard Sandilands)
14211Solution:   Erase the character cell before drawing the text when needed.
14212Files:	    src/gui_mac.c
14213
14214
14215Patch 6.3.045
14216Problem:    Unusual characters in an option value may cause unexpected
14217	    behavior, especially for a modeline. (Ciaran McCreesh)
14218Solution:   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'.
14222Files:	    src/option.c, runtime/doc/options.txt
14223
14224Patch 6.3.046
14225Problem:    ":registers" doesn't show multi-byte characters properly.
14226	    (Valery Kondakoff)
14227Solution:   Get the length of each character before displaying it.
14228Files:	    src/ops.c
14229
14230Patch 6.3.047 (extra)
14231Problem:    Win32 with Borland C 5.5 on Windows XP: A new file is created with
14232	    read-only attributes. (Tony Mechelynck)
14233Solution:   Don't use the _wopen() function for Borland.
14234Files:	    src/os_win32.c
14235
14236Patch 6.3.048 (extra)
14237Problem:    Build problems with VMS on IA64.
14238Solution:   Add dependencies to the build file. (Zoltan Arpadffy)
14239Files:	    src/Make_vms.mms
14240
14241Patch 6.3.049 (after 6.3.045)
14242Problem:    Compiler warning for "char" vs "char_u" mixup. (Zoltan Arpadffy)
14243Solution:   Add a typecast.
14244Files:	    src/option.c
14245
14246Patch 6.3.050
14247Problem:    When SIGHUP is received while busy exiting, non-reentrant
14248	    functions such as free() may cause a crash.
14249Solution:   Ignore SIGHUP when exiting because of an error. (Scott Anderson)
14250Files:	    src/misc1.c, src/main.c
14251
14252Patch 6.3.051
14253Problem:    When 'wildmenu' is set and completed file names contain multi-byte
14254	    characters Vim may crash.
14255Solution:   Reserve room for multi-byte characters. (Yasuhiro Matsumoto)
14256Files:	    src/screen.c
14257
14258Patch 6.3.052 (extra)
14259Problem:    Windows 98: typed keys that are not ASCII may not work properly.
14260	    For example with a Russian input method. (Jiri Jezdinsky)
14261Solution:   Assume that the characters arrive in the current codepage instead
14262	    of UCS-2.  Perform conversion based on that.
14263Files:	    src/gui_w48.c
14264
14265Patch 6.3.053
14266Problem:    Win32: ":loadview" cannot find a file with non-ASCII characters.
14267	    (Valerie Kondakoff)
14268Solution:   Use mch_open() instead of open() to open the file.
14269Files:	    src/ex_cmds2.c
14270
14271Patch 6.3.054
14272Problem:    When 'insertmode' is set <C-L>4ixxx<C-L> hangs Vim. (Jens Paulus)
14273	    Vim is actually still working but redraw is disabled.
14274Solution:   When stopping Insert mode with CTRL-L don't put an Esc in the redo
14275	    buffer but a CTRL-L.
14276Files:	    src/edit.c
14277
14278Patch 6.3.055 (after 6.3.013)
14279Problem:    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)
14282Solution:   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().
14286Files:	    src/ex_getln.c
14287
14288Patch 6.3.056
14289Problem:    The last characters of a multi-byte file name may not be displayed
14290	    in the window title.
14291Solution:   Avoid to remove a multi-byte character where the last byte looks
14292	    like a path separator character. (Yasuhiro Matsumoto)
14293Files:	    src/buffer.c, src/ex_getln.c
14294
14295Patch 6.3.057
14296Problem:    When filtering lines folds are not updated. (Carl Osterwisch)
14297Solution:   Update folds for filtered lines.
14298Files:	    src/ex_cmds.c
14299
14300Patch 6.3.058
14301Problem:    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)
14304Solution:   Check for zero room for wrapped text.  Make compiling without
14305	    vertical splits possible.
14306Files:	    src/move.c, src/quickfix.c, src/screen.c, src/netbeans.c
14307
14308Patch 6.3.059
14309Problem:    Crash when expanding an ":edit" command containing several spaces
14310	    with the shell. (Brian Hirt)
14311Solution:   Allocate enough space for the quotes.
14312Files:	    src/os_unix.c
14313
14314Patch 6.3.060
14315Problem:    Using CTRL-R CTRL-O in Insert mode with an invalid register name
14316	    still causes something to be inserted.
14317Solution:   Check the register name for being valid.
14318Files:	    src/edit.c
14319
14320Patch 6.3.061
14321Problem:    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)
14324Solution:   Check for a multi-byte character, not a multi-column character.
14325Files:	    src/screen.c
14326
14327Patch 6.3.062
14328Problem:    ":normal! gQ" hangs.
14329Solution:   Quit getcmdline() and do_exmode() when out of typeahead.
14330Files:	    src/ex_getln.c, src/ex_docmd.c
14331
14332Patch 6.3.063
14333Problem:    When a CursorHold autocommand changes to another window
14334	    (temporarily) 'mousefocus' stops working.
14335Solution:   Call gui_mouse_correct() after triggering CursorHold.
14336Files:	    src/gui.c
14337
14338Patch 6.3.064
14339Problem:    line2byte(line("$") + 1) sometimes returns the wrong number.
14340	    (Charles Campbell)
14341Solution:   Flush the cached line before counting the bytes.
14342Files:	    src/memline.c
14343
14344Patch 6.3.065
14345Problem:    The euro digraph doesn't always work.
14346Solution:   Add an "e=" digraph for Unicode euro character and adjust the
14347	    help files.
14348Files:	    src/digraph.c, runtime/doc/digraph.txt
14349
14350Patch 6.3.066
14351Problem:    Backup file may get wrong permissions.
14352Solution:   Use permissions of original file for backup file in more places.
14353Files:	    src/fileio.c
14354
14355Patch 6.3.067 (after 6.3.066)
14356Problem:    Newly created file gets execute permission.
14357Solution:   Check for "perm" to be negative before using it.
14358Files:	    src/fileio.c
14359
14360Patch 6.3.068
14361Problem:    When editing a compressed file xxx.gz which is a symbolic link to
14362	    the actual file a ":write" renames the link.
14363Solution:   Resolve the link, so that the actual file is renamed and
14364	    compressed.
14365Files:	    runtime/plugin/gzip.vim
14366
14367Patch 6.3.069
14368Problem:    When converting text with illegal characters Vim may crash.
14369Solution:   Avoid that too much is subtracted from the length. (Da Woon Jung)
14370Files:	    src/mbyte.c
14371
14372Patch 6.3.070
14373Problem:    After ":set number linebreak wrap" and a vertical split, moving
14374	    the vertical separator far left will crash Vim. (Georg Dahn)
14375Solution:   Avoid dividing by zero.
14376Files:	    src/charset.c
14377
14378Patch 6.3.071
14379Problem:    The message for CTRL-X mode is still displayed after an error for
14380	    'thesaurus' or 'dictionary' being empty.
14381Solution:   Clear "edit_submode".
14382Files:	    src/edit.c
14383
14384Patch 6.3.072
14385Problem:    Crash in giving substitute message when language is Chinese and
14386	    encoding is utf-8. (Yongwei)
14387Solution:   Make the msg_buf size larger when using multi-byte.
14388Files:	    src/vim.h
14389
14390Patch 6.3.073
14391Problem:    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.
14394Solution:   Use the SW_INVALIDATE flag when the Vim window is partly below or
14395	    above the screen.
14396Files:	    src/gui_w48.c
14397
14398Patch 6.3.074
14399Problem:    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)
14402Solution:   When restart_edit is set use "d" instead of "c" to remove the
14403	    selected text to avoid calling edit() twice.
14404Files:	    src/normal.c
14405
14406Patch 6.3.075
14407Problem:    After unloading another buffer, syntax highlighting in the current
14408	    buffer may be wrong when it uses "containedin". (Eric Arnold)
14409Solution:   Use "buf" instead of "curbuf" in syntax_clear().
14410Files:	    src/syntax.c
14411
14412Patch 6.3.076
14413Problem:    Crash when using cscope and there is a parse error (e.g., line too
14414	    long). (Alexey I. Froloff)
14415Solution:   Pass the actual number of matches to cs_manage_matches() and
14416	    correctly handle the error situation.
14417Files:	    src/if_cscope.c
14418
14419Patch 6.3.077 (extra)
14420Problem:    VMS: First character input after ESC was not recognized.
14421Solution:   Added TRM$M_TM_TIMED in vms_read().  (Zoltan Arpadffy)
14422Files:	    src/os_vms.c
14423
14424Patch 6.3.078 (extra, after 6.3.077)
14425Problem:    VMS: Performance issue after patch 6.3.077
14426Solution:   Add a timeout in the itemlist.  (Zoltan Arpadffy)
14427Files:	    src/os_vms.c
14428
14429Patch 6.3.079
14430Problem:    Crash when executing a command in the command line window while
14431	    syntax highlighting is enabled. (Pero Brbora)
14432Solution:   Don't use a pointer to a buffer that has been deleted.
14433Files:	    src/syntax.c
14434
14435Patch 6.3.080 (extra)
14436Problem:    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.
14439Solution:   Use _wfullpath() instead of _fullpath() when necessary.
14440Files:	    src/os_mswin.c
14441
14442Patch 6.3.081
14443Problem:    Unix: glob() may execute a shell command when it's not wanted.
14444	    (Georgi Guninski)
14445Solution:   Verify the sandbox flag is not set.
14446Files:	    src/os_unix.c
14447
14448Patch 6.3.082 (after 6.3.081)
14449Problem:    Unix: expand() may execute a shell command when it's not wanted.
14450	    (Georgi Guninski)
14451Solution:   A more generic solution than 6.3.081.
14452Files:	    src/os_unix.c
14453
14454Patch 6.3.083
14455Problem:    VMS: The vt320 termcap entry is incomplete.
14456Solution:   Add missing function keys.  (Zoltan Arpadffy)
14457Files:	    src/term.c
14458
14459Patch 6.3.084 (extra)
14460Problem:    Cygwin: compiling with DEBUG doesn't work.  Perl path was ignored.
14461	    Failure when $(OUTDIR) already exists.  "po" makefile is missing.
14462Solution:   Use changes tested in Vim 7. (Tony Mechelynck)
14463Files:	    src/Make_cyg.mak, src/po/Make_cyg.mak
14464
14465Patch 6.3.085
14466Problem:    Crash in syntax highlighting code. (Marc Espie)
14467Solution:   Prevent current_col going past the end of the line.
14468Files:	    src/syntax.c
14469
14470Patch 6.3.086 (extra)
14471Problem:    Can't produce message translation file with msgfmt that checks
14472	    printf strings.
14473Solution:   Fix the Russian translation.
14474Files:	    src/po/ru.po, src/po/ru.cp1251.po
14475
14476Patch 6.3.087
14477Problem:    MS-DOS: Crash. (Jason Hood)
14478Solution:   Don't call fname_case() with a NULL pointer.
14479Files:	    src/ex_cmds.c
14480
14481Patch 6.3.088
14482Problem:    Editing ".in" causes error E218. (Stefan Karlsson)
14483Solution:   Require some characters before ".in".  Same for ".orig" and others.
14484Files:	    runtime/filetype.vim
14485
14486Patch 6.3.089
14487Problem:    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)
14490Solution:   Escape spaces with a backslash.
14491Files:	    src/ex_docmd.c
14492
14493Patch 6.3.090
14494Problem:    A very big value for 'columns' or 'lines' may cause a crash.
14495Solution:   Limit the values to 10000 and 1000.
14496Files:	    src/option.c
14497
14498Patch 6.4a.001
14499Problem:    The Unix Makefile contained too many dependencies and a few
14500	    uncommented lines.
14501Solution:   Run "make depend" with manual changes to avoid a gcc
14502	    incompatibility.  Comment a few lines.
14503Files:	    src/Makefile
14504
14505Patch 6.4b.001
14506Problem:    Vim reports "Vim 6.4a" in the ":version" output.
14507Solution:   Change "a" to "b". (Tony Mechelynck)
14508Files:	    src/version.h
14509
14510Patch 6.4b.002
14511Problem:    In Insert mode, pasting a multi-byte character after the end of
14512	    the line leaves the cursor just before that character.
14513Solution:   Make sure "gP" leaves the cursor in the right place when
14514	    'virtualedit' is set.
14515Files:	    src/ops.c
14516
14517Patch 6.4b.003 (after 6.4b.002)
14518Problem:    The problem still exists when 'encoding' is set to "cp936".
14519Solution:   Fix the problem in getvvcol(), compute the coladd field correctly.
14520Files:	    src/charset.c, src/ops.c
14521
14522Patch 6.4b.004
14523Problem:    Selecting a {} block with "viB" includes the '}' when there is an
14524	    empty line before it.
14525Solution:   Don't advance the cursor to include a line break when it's already
14526	    at the line break.
14527Files:	    src/search.c
14528
14529
14530 vim:tw=78:ts=8:ft=help:norl:
14531