blob: 1712754a7a8562531b39a0d2a5244a70625d9399 [file] [log] [blame]
Bram Moolenaar677ee682005-01-27 14:41:15 +00001*version6.txt* For Vim version 7.0aa. Last change: 2005 Jan 26
Bram Moolenaar071d4272004-06-13 20:20:40 +00002
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
83==============================================================================
84INCOMPATIBLE CHANGES *incompatible-6*
85
86These changes are incompatible with previous releases. Check this list if you
87run into a problem when upgrading from Vim 5.x to 6.0
88
89
90Cursor position in Visual mode *curpos-visual*
91------------------------------
92
93When going from one window to another window on the same buffer while in
94Visual mode, the cursor position of the other window is adjusted to keep the
95same Visual area. This can be used to set the start of the Visual area in one
96window and the end in another. In vim 5.x the cursor position of the other
97window would be used, which could be anywhere and was not very useful.
98
99
100Substitute command Vi compatible *substitute-CR*
101--------------------------------
102
103The substitute string (the "to" part of the substitute command) has been made
104Vi compatible. Previously a CTRL-V had a special meaning and could be used to
105prevent a <CR> to insert a line break. This made it impossible to insert a
106CTRL-V before a line break. Now a backslash is used to prevent a <CR> to
107cause a line break. Since the number of backslashes is halved, it is still
108possible to insert a line break at the end of the line. This now works just
109like Vi, but it's not compatible with Vim versions before 6.0.
110
111When a ":s" command doesn't make any substitutions, it no longer sets the '[
112and '] marks. This is not related to Vi, since it doesn't have these marks.
113
114
115Global option values introduced *new-global-values*
116-------------------------------
117
118There are now global values for options which are local to a buffer or window.
119Previously the local options were copied from one buffer to another. When
120editing another file this could cause option values from a modeline to be used
121for the wrong file. Now the global values are used when entering a buffer
122that has not been used before. Also, when editing another buffer in a window,
123the local window options are reset to their global values. The ":set" command
124sets both the local and global values, this is still compatible. But a
125modeline only sets the local value, this is not backwards compatible.
126
127":let &opt = val" now sets the local and global values, like ":set". New
128commands have been added to set the global or local value:
129 :let &opt = val like ":set"
130 :let &g:opt = val like ":setglobal"
131 :let &l:opt = val like ":setlocal"
132
133
134'fileencoding' changed *fileencoding-changed*
135----------------------
136
137'fileencoding' was used in Vim 5.x to set the encoding used inside all of Vim.
138This was a bit strange, because it was local to a buffer and worked for all
139buffers. It could never be different between buffers, because it changed the
140way text in all buffers was interpreted.
141It is now used for the encoding of the file related to the buffer. If you
142still set 'fileencoding' it is likely to be overwritten by the detected
143encoding from 'fileencodings', thus it is "mostly harmless".
144The old FileEncoding autocommand now does the same as the new EncodingChanged
145event.
146
147
148Digraphs changed *digraphs-changed*
149----------------
150
151The default digraphs now correspond to RFC1345. This is very different from
152what was used in Vim 5.x. |digraphs|
153
154
155Filetype detection changed *filetypedetect-changed*
156--------------------------
157
158The filetype detection previously was using the "filetype" autocommand group.
159This caused confusion with the FileType event name (case is ignored). The
160group is now called "filetypedetect". It still works, but if the "filetype"
161group is used the autocommands will not be removed by ":filetype off".
162 The support for 'runtimepath' has made the "myfiletypefile" and
163"mysyntaxfile" mechanism obsolete. They are still used for backwards
164compatibility.
165
166The connection between the FileType event and setting the 'syntax' option was
167previously in the "syntax" autocommand group. That caused confusion with the
168Syntax event name. The group is now called "syntaxset".
169
170The distributed syntax files no longer contain "syntax clear". That makes it
171possible to include one in the other without tricks. The syntax is now
172cleared when the 'syntax' option is set (by an autocommand added from
173synload.vim). This makes the syntax cleared when the value of 'syntax' does
174not correspond to a syntax file. Previously the existing highlighting was
175kept.
176
177
178Unlisted buffers introduced *new-unlisted-buffers*
179---------------------------
180
181There is now a difference between buffers which don't appear in the buffer
182list and buffers which are really not in the buffer list. Commands like
183":ls", ":bnext", ":blast" and the Buffers menu will skip buffers not in the
184buffer list. |unlisted-buffer|
185The 'buflisted' option can be used to make a buffer appear in the buffer list
186or not.
187
188Several commands that previously added a buffer to the buffer list now create
189an unlisted buffer. This means that a ":bnext" and ":ball" will not find these
190files until they have actually been edited. For example, buffers used for the
191alternative file by ":write file" and ":read file".
192 Other commands previously completely deleted a buffer and now only remove
193the buffer from the buffer list. Commands relying on a buffer not to be
194present might fail. For example, a ":bdelete" command in an autocommand that
195relied on something following to fail (was used in the automatic tests).
196|:bwipeout| can be used for the old meaning of ":bdelete".
197
198The BufDelete autocommand event is now triggered when a buffer is removed from
199the buffer list. The BufCreate event is only triggered when a buffer is
200created that is added to the buffer list, or when an existing buffer is added
201to the buffer list. BufAdd is a new name for BufCreate.
202The new BufNew event is for creating any buffer and BufWipeout for really
203deleting a buffer.
204
205When doing Insert mode completion, only buffers in the buffer list are
206scanned. Added the 'U' flag to 'complete' to do completion from unlisted
207buffers.
208
209Unlisted buffers are not stored in a viminfo file.
210
211
212CTRL-U in Command-line mode changed *CTRL-U-changed*
213-----------------------------------
214
215Using CTRL-U when editing the command line cleared the whole line. Most
216shells only delete the characters before the cursor. Made it work like that.
217(Steve Wall)
218
219You can get the old behavior with CTRL-E CTRL-U: >
220 :cnoremap <C-U> <C-E><C-U>
221
222
223Ctags gone *ctags-gone*
224----------
225
226Ctags is no longer part of the Vim distribution. It's now a grown-up program
227by itself, it deserves to be distributed separately.
228Ctags can be found here: http://ctags.sf.net/.
229
230
231Documentation reorganized *documentation-6*
232-------------------------
233
234The documentation has been reorganized, an item may not be where you found it
235in Vim 5.x.
236- The user manual was added, some items have been moved to it from the
237 reference manual.
238- The quick reference is now in a separate file (so that it can be printed).
239
240The examples in the documentation were previously marked with a ">" in the
241first column. This made it difficult to copy/paste them. There is now a
242single ">" before the example and it ends at a "<" or a non-blank in the first
243column. This also looks better without highlighting.
244
245'helpfile' is no longer used to find the help tags file. This allows a user
246to add its own help files (e.g., for plugins).
247
248
249Modeless selection and clipboard *modeless-and-clipboard*
250--------------------------------
251
252The modeless selection is used to select text when Visual mode can't be used,
253for example when editing the command line or at the more prompt.
254In Vim 5.x the modeless selection was always used. On MS-Windows this caused
255the clipboard to be overwritten, with no way to avoid that. The modeless
256selection now obeys the 'a' and 'A' flags in 'guioptions' and "autoselect" and
257"autoselectml" in 'clipboard'. By default there is no automatic copy on
258MS-Windows. Use the |c_CTRL-Y| command to manually copy the selection.
259
260To get the old behavior back, do this: >
261
262 :set clipboard^=autoselectml guioptions+=A
263
264
265Small incompatibilities *incomp-small-6*
266-----------------------
267
268'backupdir', 'cdpath', 'directory', 'equalprg', 'errorfile', 'formatprg',
269'grepprg', 'helpfile', 'makeef', 'makeprg', 'keywordprg', 'cscopeprg',
270'viminfo' and 'runtimepath' can no longer be set from a modeline, for better
271security.
272
273Removed '_' from the 'breakat' default: It's commonly used in keywords.
274
275The default for 'mousehide' is on, because this works well for most people.
276
277The Amiga binary is now always compiled with "big" features. The "big" binary
278archive no longer exists.
279
280The items "[RO]", "[+]", "[help]", "[Preview]" and "[filetype]" in
281'statusline' no longer have a leading space.
282
283Non-Unix systems: When expanding wildcards for the Vim arguments, don't use
284'suffixes'. It now works as if the shell had expanded the arguments.
285
286The 'lisp', 'smartindent' and 'cindent' options are not switched off when
287'paste' is set. The auto-indenting is disabled when 'paste' is set, but
288manual indenting with "=" still works.
289
290When formatting with "=" uses 'cindent' or 'indentexpr' indenting, and there
291is no change in indent, this is not counted as a change ('modified' isn't set
292and there is nothing to undo).
293
294Report 'modified' as changed when 'fileencoding' or 'fileformat' was set.
295Thus it reflects the possibility to abandon the buffer without losing changes.
296
297The "Save As" menu entry now edits the saved file. Most people expect it to
298work like this.
299
300A buffer for a directory is no longer added to the Buffers menu.
301
302Renamed <Return> to <Enter>, since that's what it's called on most keyboards.
303Thus it's now the hit-enter prompt instead of the hit-return prompt.
304Can map <Enter> just like <CR> or <Return>.
305
306The default for the 'viminfo' option is now '20,"50,h when 'compatible' isn't
307set. Most people will want to use it, including beginners, but it required
308setting the option, which isn't that easy.
309
310After using ":colder" the newer error lists are overwritten. This makes it
311possible to use ":grep" to browse in a tree-like way. Must use ":cnewer 99"
312to get the old behavior.
313
314The patterns in 'errorformat' would sometimes ignore case (MS-Windows) and
315sometimes not (Unix). Now case is always ignored. Add "\C" to the pattern to
316match case.
317
318The 16 bit MS-DOS version is now compiled without the +listcmds feature
319(buffer list manipulation commands). They are not often needed and this
320executable needs to be smaller.
321
322'sessionoptions' now includes "curdir" by default. This means that restoring
323a session will result in the current directory being restored, instead of
324going to the directory where the session file is located.
325
326A session deleted all buffers, deleting all marks. Now keep the buffer list,
327it shouldn't hurt for some existing buffers to remain present.
328When the argument list is empty ":argdel *" caused an error message.
329
330No longer put the search pattern from a tag jump in the history.
331
332Use "SpecialKey" highlighting for unprintable characters instead of "NonText".
333The idea is that unprintable text or any text that's displayed differently
334from the characters in the file is using "SpecialKey", and "NonText" is used
335for text that doesn't really exist in the file.
336
337Motif now uses the system default colors for the menu and scrollbar. Used to
338be grey. It's still possible to set the colors with ":highlight" commands and
339resources.
340
341Formatting text with "gq" breaks a paragraph at a non-empty blank line.
342Previously the line would be removed, which wasn't very useful.
343
344":normal" does no longer hang when the argument ends in half a command.
345Previously Vim would wait for more characters to be typed, without updating
346the screen. Now it pretends an <Esc> was typed.
347
348Bitmaps for the toolbar are no longer searched for in "$VIM/bitmaps" but in
349the "bitmaps" directories in 'runtimepath'.
350
351Now use the Cmdline-mode menus for the hit-enter prompt instead of the Normal
352mode menus. This generally works better and allows using the "Copy" menu to
353produce CTRL-Y to copy the modeless selection.
354
355Moved the font selection from the Window to the Edit menu, together with the
356other settings.
357
358The default values for 'isfname' include more characters to make "gf" work
359better.
360
361Changed the license for the documentation to the Open Publication License.
362This seemed fair, considering the inclusion of parts of the Vim book, which is
363also published under the OPL. The downside is that we can't force someone who
364would sell copies of the manual to contribute to Uganda.
365
366After "ayy don't let ""yy or :let @" = val overwrite the "a register.
367Use the unnamed register instead.
368
369MSDOS: A pattern "*.*" previously also matched a file name without a dot.
370This was inconsistent with other versions.
371
372In Insert mode, CTRL-O CTRL-\ CTRL-N {cmd} remains in Normal mode. Previously
373it would go back to Insert mode, thus confusing the meaning of CTRL-\ CTRL-N,
374which is supposed to take us to Normal mode (especially in ":amenu").
375
376Allow using ":" commands after an operator. Could be used to implement a new
377movement command. Thus it no longer aborts a pending operator.
378
379For the Amiga the "-d {device}" argument was possible. When compiled with the
380diff feature, this no longer works. Use "-dev {device}" instead. |-dev|
381
382Made the default mappings for <S-Insert> in Insert mode insert the text
383literally, avoids that special characters like BS cause side effects.
384
385Using ":confirm" applied to the rest of the line. Now it applies only to the
386command right after it. Thus ":confirm if x | edit | endif" no longer works,
387use ":if x | confirm edit | endif". This was the original intention, that it
388worked differently was a bug.
389
390==============================================================================
391NEW FEATURES *new-6*
392
393Folding *new-folding*
394-------
395
396Vim can now display a buffer with text folded. This allows overviewing the
397structure of a file quickly. It is also possible to yank, delete and put
398folded text, for example to move a function to another position.
399
400There is a whole bunch of new commands and options related to folding.
401See |folding|.
402
403
404Vertically split windows *new-vertsplit*
405------------------------
406
407Windows can also be split vertically. This makes it possible to have windows
408side by side. One nice use for this is to compare two similar files (see
409|new-diff-mode|). The 'scrollbind' option can be used to synchronize
410scrolling.
411
412A vertical split can be created with the commands:
413 :vsplit or CTRL-W v or CTRL-W CTRL-V |:vsplit|
414 :vnew |:vnew|
415 :vertical {cmd} |:vertical|
416The last one is a modifier, which has a meaning for any command that splits a
417window. For example: >
418 :vertical stag main
419Will vertically split the window and jump to the tag "main" in the new window.
420
421Moving from window to window horizontally can be done with the |CTRL-W_h| and
422|CTRL-W_l| commands. The |CTRL-W_k| and |CTRL-W_j| commands have been changed
423to jump to the window above or below the cursor position.
424
425The vertical and horizontal splits can be mixed as you like. Resizing windows
426is easy when using the mouse, just position the pointer on a status line or
427vertical separator and drag it. In the GUI a special mouse pointer shape
428indicates where you can drag a status or separator line.
429
430To resize vertically split windows use the |CTRL-W_<| and |CTRL-W_>| commands.
431To make a window the maximum width use the CTRL-W | command |CTRL-W_bar|.
432
433To force a new window to use the full width or height of the Vim window,
434these two modifiers are available:
435 :topleft {cmd} New window appears at the top with full
436 width or at the left with full height.
437 :botright {cmd} New window appears at the bottom with full
438 width or at the right with full height.
439This can be combined with ":vertical" to force a vertical split: >
440 :vert bot dsplit DEBUG
441This will open a window at the far right, occupying the full height of the Vim
442window, with the cursor on the first definition of "DEBUG".
443The help window is opened at the top, like ":topleft" was used, if the current
444window is fewer than 80 characters wide.
445
446A few options can be used to set the preferences for vertically split windows.
447They work similar to their existing horizontal equivalents:
448 horizontal vertical ~
449 'splitbelow' 'splitright'
450 'winheight' 'winwidth'
451 'winminheight' 'winminwidth'
452It's possible to set 'winminwidth' to zero, so that temporarily unused windows
453hardly take up space without closing them.
454
455The new 'eadirection' option tells where 'equalalways' applies:
456 :set eadirection=both both directions
457 :set eadirection=ver equalize window heights
458 :set eadirection=hor equalize windows widths
459This can be used to avoid changing window sizes when you want to keep them.
460
461Since windows can become quite narrow with vertical splits, text lines will
462often not fit. The 'sidescrolloff' has been added to keep some context left
463and right of the cursor. The 'listchars' option has been extended with the
464"precedes" item, to show a "<" for example, when there is text left off the
465screen. (Utz-Uwe Haus)
466
467"-O" command line argument: Like "-o" but split windows vertically. (Scott
468Urban)
469
470Added commands to move the current window to the very top (CTRL-W K), bottom
471(CTRL-W J), left (CTRL-W H) and right (CTRL-W L). In the new position the
472window uses the full width/height of the screen.
473
474When there is not enough room in the status line for both the file name and
475the ruler, use up to half the width for the ruler. Useful for narrow windows.
476
477
478Diff mode *new-diff-mode*
479---------
480
481In diff mode Vim shows the differences between two, three or four files.
482Folding is used to hide the parts of the file that are equal.
483Highlighting is used to show deleted and changed lines.
484See |diff-mode|.
485
486An easy way to start in diff mode is to start Vim as "vimdiff file1 file2".
487Added the vimdiff manpage.
488
489In a running Vim the |:diffsplit| command starts diff mode for the current
490file and another file. The |:diffpatch| command starts diff mode using the
491current file and a patch file. The |:diffthis| command starts diff mode for
492the current window.
493
494Differences can be removed with the |:diffget| and |:diffput| commands.
495
496- The 'diff' option switches diff mode on in a window.
497- The |:diffupdate| command refreshes the diffs.
498- The 'diffopt' option changes how diffs are displayed.
499- The 'diffexpr' option can be set how a diff is to be created.
500- The 'patchexpr' option can be set how patch is applied to a file.
501- Added the "diff" folding method. When opening a window for diff-mode, set
502 'foldlevel' to zero and 'foldenable' on, to close the folds.
503- Added the DiffAdd, DiffChange, DiffDelete and DiffText highlight groups to
504 specify the highlighting for differences. The defaults are ugly...
505- Unix: make a vimdiff symbolic link for "make install".
506- Removed the now obsolete "vimdiff.vim" script from the distribution.
507- Added the "[c" and "]c" commands to move to the next/previous change in diff
508 mode.
509
510
511Easy Vim: click-and-type *new-evim*
512------------------------
513
514eVim stands for "Easy Vim". This is a separate program, but can also be
515started as "vim -y".
516
517This starts Vim with 'insertmode' set to allow click-and-type editing. The
518$VIMRUNTIME/evim.vim script is used to add mappings and set options to be able
519to do most things like Notepad. This is only for people who can't stand two
520modes.
521
522eView does the same but in readonly mode.
523
524In the GUI a CTRL-C now only interrupts when busy with something, not when
525waiting for a character. Allows using CTRL-C to copy text to the clipboard.
526
527
528User manual *new-user-manual*
529-----------
530
531The user manual has been added. It is organised around editing tasks. It
532reads like a book, from start to end. It should allow beginners to start
533learning Vim. It helps everybody to learn using the most useful Vim features.
534It is much easier to read than the reference manual, but omits details. See
535|user-manual|.
536
537The user manual includes parts of the Vim book by Steve Oualline |frombook|.
538It is published under the OPL |manual-copyright|.
539
540When syntax highlighting is not enabled, the characters in the help file which
541mark examples ('>' and '<') and header lines ('~') are replaced with a space.
542
543When closing the help window, the window layout is restored from before
544opening it, if the window layout didn't change since then.
545When opening the help window, put it at the top of the Vim window if the
546current window is fewer than 80 characters and not full width.
547
548
549Flexible indenting *new-indent-flex*
550------------------
551
552Automatic indenting is now possible for any language. It works with a Vim
553script, which makes it very flexible to compute the indent.
554
555The ":filetype indent on" command enables using the provided indent scripts.
556This is explained in the user manual: |30.3|.
557
558The 'indentexpr' option is evaluated to get the indent for a line. The
559'indentkeys' option tells when to trigger re-indenting. Normally these
560options are set from an indent script. Like Syntax files, indent scripts will
561be created and maintained by many people.
562
563
564Extended search patterns *new-searchpat*
565------------------------
566
567Added the possibility to match more than one line with a pattern. (partly by
568Loic Grenie)
569New items in a search pattern for multi-line matches:
570\n match end-of-line, also in []
571\_[] match characters in range and end-of-line
572\_x match character class and end-of-line
573\_. match any character or end-of-line
574\_^ match start-of-line, can be used anywhere in the regexp
575\_$ match end-of-line, can be used anywhere in the regexp
576
577Various other new items in search patterns:
578\c ignore case for the whole pattern
579\C match case for the whole pattern
580\m magic on for the following
581\M magic off for the following
582\v make following characters "very magic"
583\V make following characters "very nomagic"
584
585\@! don't match atom before this.
586 Example: "foo\(bar\)\@!" matches "foo " but not "foobar".
587\@= match atom, resulting in zero-width match
588 Example: "foo\(bar\)\@=" matches "foo" in "foobar".
589\@<! don't match preceding atom before the current position
590\@<= match preceding atom before the current position
591\@> match preceding atom as a subexpression
592
593\& match only when branch before and after it match
594
595\%[] optionally match a list of atoms; "end\%[if]" matches "end",
596 "endi" and "endif"
597\%(\) like \(\), but without creating a back-reference; there can be
598 any number of these, overcomes the limit of nine \( \) pairs
599\%^ match start-of-file (Chase Tingley)
600\%$ match end-of-file (Chase Tingley)
601\%# Match with the cursor position. (Chase Tingley)
602\? Just like "\=" but can't be used in a "?" command.
603
604\%23l match in line 23
605\%<23l match before line 23
606\%>23l match after line 23
607\%23c, \%<23c, \%>23c match in/before/after column 23
608\%23v, \%<23v, \%>23v match in/before/after virtual column 23
609
610
611For syntax items:
612\z(...\) external reference match set (in region start pattern)
613\z1 - \z9 external reference match use (in region skip or end pattern)
614 (Scott Bigham)
615
616\zs use position as start of match
617\ze use position as end of match
618
619Removed limit of matching only up to 32767 times with *, \+, etc.
620
621Added support to match multi-byte characters. (partly by Muraoka Taro)
622Made "\<" and "\>" work for UTF-8. (Muraoka Taro)
623
624
625UTF-8 support *new-utf-8*
626-------------
627
628Vim can now edit files in UTF-8 encoding. Up to 31 bit characters can be
629used, but only 16 bit characters are displayed. Up to two combining
630characters are supported, they overprint the preceding character.
631Double-wide characters are also supported. See |UTF-8|.
632
633UCS-2, UCS-4 and UTF-16 encodings are supported too, they are converted to
634UTF-8 internally. There is also support for editing Unicode files in a Latin1
635environment. Other encodings are converted with iconv() or an external
636converter specified with 'charconvert'.
637
638Many new items for Multi-byte support:
639- Added 'encoding' option: specifies character encoding used inside Vim. It
640 can be any 8-bit encoding, some double-byte encodings or Unicode.
641 It is initialized from the environment when a supported value is found.
642- Added 'fileencoding' and 'fileencodings': specify character coding in a
643 file, similar to 'fileformat' and 'fileformats'.
644 When 'encoding' is "utf-8" and 'fileencodings' is "utf-8,latin1" this will
645 automatically switch to latin1 if a file does not contain valid UTF-8.
646- Added 'bomb' option and detection of a BOM at the start of a file. Can be
647 used with "ucs-bom" in 'fileencodings' to automatically detect a Unicode
648 file if it starts with a BOM. Especially useful on MS-Windows (NT and
649 2000), which uses ucs-2le files with a BOM (e.g., when exporting the
650 registry).
651- Added the 'termencoding' option: Specifies the encoding used for the
652 terminal. Useful to put Vim in utf-8 mode while in a non-Unicode locale: >
653 :let &termencoding = &encoding
654 :set encoding=utf-8
655- When 'viminfo' contains the 'c' flag, the viminfo file is converted from the
656 'encoding' it was written with to the current 'encoding'.
657- Added ":scriptencoding" command: convert lines in a sourced script to
658 'encoding'. Useful for menu files.
659- Added 'guifontwide' to specify a font for double-wide characters.
660- Added Korean support for character class detection. Also fix cls() in
661 search.c. (Chong-Dae Park)
662- Win32: Typing multi-byte characters without IME. (Alexander Smishlajev)
663- Win32 with Mingw: compile with iconv library. (Ron Aaron)
664- Win32 with MSVC: dynamically load iconv.dll library. (Muraoka Taro)
665- Make it possible to build a version with multi-byte and iconv support with
666 Borland 5.5. (Yasuhiro Matsumoto)
667- Added 'delcombine' option: Delete combining character separately. (Ron
668 Aaron)
669- The "xfontset" feature isn't required for "xim". These are now two
670 independent features.
671- XIM: enable XIM when typing a language character (Insert mode, Search
672 pattern, "f" or "r" command). Disable XIM when typing a Normal mode
673 command.
674- When the XIM is active, show "XIM" in the 'showmode' message. (Nam SungHyun)
675- Support "CursorIM" for XIM. (Nam SungHyun)
676- Added 'm' flag to 'formatoptions': When wrapping words, allow splitting at
677 each multibyte character, not only at a space.
678- Made ":syntax keyword" work with multi-byte characters.
679- Added support for Unicode upper/lowercase flipping and comparing. (based on
680 patch by Raphael Finkel)
681 Let "~" on multi-byte characters that have a third case ("title case")
682 switch between the three cases. (Raphael Finkel)
683
684Allow defining digraphs for multi-byte characters.
685Added RFC1345 digraphs for Unicode.
686Most Normal mode commands that accept a character argument, like "r", "t" and
687"f" now accept a digraph. The 'D' flag in 'cpoptions' disables this to remain
688Vi compatible.
689
690Added Language mapping and 'keymap' to be able to type multi-byte characters:
691- Added the ":lmap" command and friends: Define mappings that are used when
692 typing characters in the language of the text. Also for "r", "t", etc. In
693 Insert and Command-line mode CTRL-^ switches the use of the mappings on/off.
694 CTRL-^ also toggles the use of an input method when no language mappings are
695 present. Allows switching the IM back on halfway typing.
696- "<char-123>" argument to ":map", allows to specify the decimal, octal or
697 hexadecimal value of a character.
698- Implemented the 'keymap' option: Load a keymap file. Uses ":lnoremap" to
699 define mappings for the keymap. The new ":loadkeymap" command is used in
700 the keymap file.
701- Added 'k' flag in 'statusline': Value of "b:keymap_name" or 'keymap' when
702 it's being used. Uses "<lang>" when no keymap is loaded and ":lmap"s are
703 active. Show this text in the default statusline too.
704- Added the 'iminsert' and 'imsearch' options: Specify use of langmap mappings
705 and Input Method with an option. (Muraoka Taro)
706 Added 'imcmdline' option: When set the input method is always enabled when
707 starting to edit a command line. Useful for a XIM that uses dead keys to
708 type accented characters.
709 Added 'imactivatekey' option to better control XIM. (Muraoka Taro)
710- When typing a mapping that's not finished yet, display the last character
711 under the cursor in Insert mode and Command-line mode. Looks good for dead
712 characters.
713- Made the 'langmap' option recognize multi-byte characters. But mapping only
714 works for 8-bit characters. Helps when using UTF-8.
715- Use a different cursor for when ":lmap" mappings are active. Can specify
716 two highlight groups for an item in 'guicursor'. By default "lCursor" and
717 "Cursor" are equal, the user must set a color he likes.
718 Use the cursor color for hangul input as well. (Sung-Hyun Nam)
719- Show "(lang)" for 'showmode' when language mapping is enabled.
720- UTF-8: Made "r" work with a ":lmap" that includes a composing character.
721 Also works for "f", which now works to find a character that includes a
722 composing character.
723
724Other multi-byte character additions:
725- Support double-byte single-width characters for euc-jp: Characters starting
726 with 0x8E. Added ScreenLines2[] to store the second byte.
727
728
729Multi-language support *new-multi-lang*
730----------------------
731
732The messages used in Vim can be translated. Several translations are
733available. This uses the gettext mechanism. It allows adding a translation
734without recompiling Vim. |multi-lang| (partly by Marcin Dalecki)
735
736The translation files are in the src/po directory. The src/po/README.txt file
737explains a few things about doing a translation.
738
739Menu translations are available as well. This uses the new |:menutranslate|
740command. The translations are found in the runtime directory "lang". This
741allows a user to add a translation.
742
743Added |:language| command to set the language (locale) for messages, time and
744character type. This allows switching languages in Vim without changing the
745locale outside of Vim.
746
747Made it possible to have vimtutor use different languages. (Eduardo Fernandez)
748Spanish (Eduardo Fernandez), Italian (Antonio Colombo), Japanese (Yasuhiro
749Matsumoto) and French (Adrien Beau) translations are included.
750Added "vimtutor.bat": script to start Vim on a copy of the tutor file for
751MS-Windows. (Dan Sharp)
752
753- Added v:lang variable to be able to get current language setting.
754 (Marcin Dalecki) Also v:lc_time and v:ctype.
755- Make it possible to translate the dialogs used by the menus. Uses global
756 "menutrans_" variables. ":menutrans clear" deletes them.
757- removed "broken locale" (Marcin Dalecki).
758- Don't use color names in icons, use RGB values. The names could be
759 translated.
760- Win32: Added global IME support (Muraoka)
761- Win32: Added dynamic loading of IME support.
762- ":messages" prints a message about who maintains the messages or the
763 translations. Useful to find out where to make a remark about a wrong
764 translation.
765- --disable-nls argument for configure: Disable use of gettext(). (Sung-Hyun
766 Nam)
767- Added NLS support for Win32 with the MingW compiler. (Eduardo Fernandez)
768- When available, call bind_textdomain_codeset() to have gettext() translate
769 messages to 'encoding'. This requires GNU gettext 0.10.36 or later.
770- Added gettext support for Win32. This means messages will be translated
771 when the locale is set and libintl.dll can be found. (Muraoka Taro)
772 Also made it work with MingW compiler. (Eduardo Fernandez)
773 Detect the language and set $LANG to get the appropriate translated messages
774 (if supported). Also use $LANG to select a language, v:lang is a very
775 different kind of name.
776- Made gvimext.dll use translated messages, if possible. (Yasuhiro Matsumoto)
777
778
779Plugin support *new-plugins*
780--------------
781
782To make it really easy to load a Vim script when starting Vim, the "plugin"
783runtime directory can be used. All "*.vim" files in it will be automatically
784loaded. For Unix, the directory "~/.vim/plugin" is used by default. The
785'runtimepath' option can be set to look in other directories for plugins.
786|load-plugins| |add-plugin|
787
788The |:runtime| command has been added to load one or more files in
789'runtimepath'.
790
791Standard plugins:
792netrw.vim - Edit files over a network |new-network-files|
793gzip.vim - Edit compressed files
794explorer.vim - Browse directories |new-file-browser|
795
796Added support for local help files. |add-local-help|.
797When searching for help tags, all "doc/tags" files in 'runtimepath' are used.
798Added the ":helptags" command: Generate a tags file for a help directory.
799The first line of each help file is automagically added to the "LOCAL
800ADDITIONS" section in doc/help.txt.
801
802Added the <unique> argument to ":map": only add a mapping when it wasn't
803defined before.
804
805When displaying an option value with 'verbose' set will give a message about
806where the option was last set. Very useful to find out which script did set
807the value.
808
809The new |:scriptnames| command displays a list of all scripts that have been
810sourced.
811
812GUI: For Athena, Motif and GTK look for a toolbar bitmap in the "bitmaps"
813directories in 'runtimepath'. Allows adding your own bitmaps.
814
815
816Filetype plugins *new-filetype-plugins*
817-----------------
818
819A new group of files has been added to do settings for specific file types.
820These can be options and mappings which are specifically used for one value of
821'filetype'.
822
823The files are located in "$VIMRUNTIME/ftplugin". The 'runtimepath' option
824makes it possible to use several sets of plugins: Your own, system-wide,
825included in the Vim distribution, etc.
826
827To be able to make this work, several features were added:
828- Added the "s:" variables, local to a script. Avoids name conflicts with
829 global variables. They can be used in the script and in functions,
830 autocommands and user commands defined in the script. They are kept between
831 invocations of the same script. |s:var|
832- Added the global value for local options. This value is used when opening
833 a new buffer or editing another file. The option value specified in a
834 modeline or filetype setting is not carried over to another buffer.
835 ":set" sets both the local and the global value.
836 ":setlocal" sets the local option value only.
837 ":setglobal" sets or displays the global value for a local option.
838 ":setlocal name<" sets a local option to its global value.
839- Added the buffer-local value for some global options: 'equalprg', 'makeprg',
840 'errorformat', 'grepprg', 'path', 'dictionary', 'thesaurus', 'tags',
841 'include' and 'define'. This allows setting a local value for these global
842 options, without making it incompatible.
843- Added mappings and abbreviations local to a buffer: ":map <buffer>".
844- In a mapping "<Leader>" can be used to get the value of the "mapleader"
845 variable. This simplifies mappings that use "mapleader". "<Leader>"
846 defaults to "\". "<LocalLeader>" does the same with "maplocalleader". This
847 is to be used for mappings local to a buffer.
848- Added <SID> Script ID to define functions and mappings local to a script.
849- Added <script> argument to ":noremap" and ":noremenu": Only remap
850 script-local mappings. Avoids that mappings from other scripts get in the
851 way, but does allow using mappings defined in the script.
852- User commands can be local to a buffer: ":command -buffer".
853
854The new ":setfiletype" command is used in the filetype detection autocommands,
855to avoid that 'filetype' is set twice.
856
857
858File browser *new-file-browser*
859------------
860
861When editing a directory, the explorer plugin will list the files in the
862directory. Pressing <Enter> on a file name edits that file. Pressing <Enter>
863on a directory moves the browser to that directory.
864
865There are several other possibilities, such as opening a file in the preview
866window, renaming files and deleting files.
867
Bram Moolenaar071d4272004-06-13 20:20:40 +0000868
869Editing files over a network *new-network-files*
870----------------------------
871
872Files starting with scp://, rcp://, ftp:// and http:// are recognized as
873remote files. An attempt is made to access these files with the indicated
874method. For http:// only reading is possible, for the others writing is also
875supported. Uses the netrw.vim script as a standard "plugin". |netrw|
876
877Made "gf" work on a URL. It no longer assumes the file is local on the
878computer (mostly didn't work anyway, because the full path was required).
879Adjusted test2 for this.
880
881Allow using a URL in 'path'. Makes ":find index.html" work.
882
883GTK: Allow dropping a http:// and ftp:// URL on Vim. The netrw plugin takes
884care of downloading the file. (MiKael Berthe)
885
886
887Window for command-line editing *new-cmdwin*
888-------------------------------
889
890The Command-line window can be used to edit a command-line with Normal and
891Insert mode commands. When it is opened it contains the history. This allows
892copying parts of previous command lines. |cmdwin|
893
894The command-line window can be opened from the command-line with the key
895specified by the 'cedit' option (like Nvi). It can also be opened directly
896from Normal mode with "q:", "q/" and "q?".
897
898The 'cmdwinheight' is used to specify the initial height of the window.
899
900In Insert mode CTRL-X CTRL-V can be used to complete an Ex command line, like
901it's done on the command-line. This is also useful for writing Vim scripts!
902
903Additionally, there is "improved Ex mode". Entered when Vim is started as
904"exim" or "vim -E", and with the "gQ" command. Works like repeated use of
905":", with full command-line editing and completion. (Ulf Carlsson)
906
907
908Debugging mode *new-debug-mode*
909--------------
910
911In debugging mode sourced scripts and user functions can be executed line by
912line. There are commands to step over a command or step into it. |debug-mode|
913
914Breakpoints can be set to run until a certain line in a script or user
915function is executed. |:breakadd|
916
917Debugging can be started with ":debug {cmd}" to debug what happens when a
918command executes. The |-D| argument can be used to debug while starting up.
919
920
921Cursor in virtual position *new-virtedit*
922--------------------------
923
924Added the 'virtualedit' option: Allow positioning the cursor where there is no
925actual character in Insert mode, Visual mode or always. (Matthias Kramm)
926This is especially useful in Visual-block mode. It allows positioning a
927corner of the area where there is no text character. (Many improvements by
928Chase Tingley)
929
930
931Debugger interface *new-debug-itf*
932------------------
933
934This was originally made to work with Sun Visual Workshop. (Gordon Prieur)
935See |debugger.txt|, |sign.txt| and |workshop.txt|.
936
937Added the ":sign" command to define and place signs. They can be displayed
938with two ASCII characters or an icon. The line after it can be highlighted.
939Useful to display breakpoints and the current PC position.
940
941Added the |:wsverb| command to execute debugger commands.
942
943Added balloon stuff: 'balloondelay' and 'ballooneval' options.
944
945Added "icon=" argument for ":menu". Allows defining a specific icon for a
946ToolBar item.
947
948
949Communication between Vims *new-vim-server*
950--------------------------
951
952Added communication between two Vims. Makes it possible to send commands from
953one Vim to another. Works for X-Windows and MS-Windows |clientserver|.
954
955Use "--remote" to have files be edited in an already running Vim.
956Use "--remote-wait" to do the same and wait for the editing to finish.
957Use "--remote-send" to send commands from one Vim to another.
958Use "--remote-expr" to have an expression evaluated in another Vim.
959Use "--serverlist" to list the currently available Vim servers. (X only)
960There are also functions to communicate between the server and the client.
961|remote_send()| |remote_expr()|
962
963(X-windows version implemented by Flemming Madsen, MS-Windows version by Paul
964Moore)
965
966Added the command server name to the window title, so you can see which server
967name belongs to which Vim.
968
969Removed the OleVim directory and SendToVim.exe and EditWithVim.exe from the
970distribution. Can now use "gvim --remote" and "gvim --remote-send", which is
971portable.
972
973GTK+: Support running Vim inside another window. Uses the --socketid argument
974(Neil Bird)
975
976
977Buffer type options *new-buftype*
978-------------------
979
980The 'buftype' and 'bufhidden' options have been added. They can be set to
981have different kinds of buffers. For example:
982- 'buftype' = "quickfix": buffer with error list
983- 'buftype' = "nofile" and 'bufhidden' = "delete": scratch buffer that will be
984 deleted as soon as there is no window displaying it.
985
986'bufhidden' can be used to overrule the 'hidden' option for one buffer.
987
988In combination with 'buflisted' and 'swapfile' this offers the possibility to
989use various kinds of special buffers. See |special-buffers|.
990
991
992Printing *new-printing*
993--------
994
995Included first implementation of the ":hardcopy" command for printing
996to paper. For MS-Windows any installed printer can be used. For other
997systems a PostScript file is generated, which can be printed with the
998'printexpr' option.
999(MS-Windows part by Vince Negri, Vipin Aravind, PostScript by Vince Negri and
1000Mike Williams)
1001
1002Made ":hardcopy" work with multi-byte characters. (Muraoka Taro, Yasuhiro
1003Matsumoto)
1004
1005Added options to tune the way printing works: (Vince Negri)
1006- 'printoptions' defines various things.
1007- 'printheader' specifies the header format. Added "N" field to 'statusline'
1008 for the page number.
1009- 'printfont' specifies the font name and attributes.
1010- 'printdevice' defines the default printer for ":hardcopy!".
1011
1012
1013Ports *ports-6*
1014-----
1015
1016Port to OS/390 Unix (Ralf Schandl)
1017- A lot of changes to handle EBCDIC encoding.
1018- Changed Ctrl('x') to Ctrl_x define.
1019
1020Included jsbmouse support. (Darren Garth)
1021Support for dec mouse in Unix. (Steve Wall)
1022
1023Port to 16-bit MS Windows (Windows 3.1x) (Vince Negri)
1024
1025Port to QNX. Supports the Photon GUI, mouse, etc. (Julian Kinraid)
1026
1027Allow cross-compiling the Win32 version with Make_ming.mak. (Ron Aaron)
1028Added Python support for compiling with Mingw. (Ron Aaron)
1029
1030Dos 32 bit: Added support the Windows clipboard. (David Kotchan)
1031
1032Win32: Dynamically load Perl and Python. Allows compiling Vim with these
1033interfaces and will try to find the DLLs at runtime. (Muraoka Taro)
1034
1035Compiling the Win32 GUI with Cygwin. Also compile vimrun, dosinst and
1036uninstall. (Gerfried)
1037
1038Mac: Make Vim compile with the free MPW compiler supplied by Apple. And
1039updates for CodeWarrior. (Axel Kielhorn)
1040
1041Added typecasts and ifdefs as a start to make Vim work on Win64 (George
1042Reilly)
1043
1044
1045Quickfix extended *quickfix-6*
1046-----------------
1047
1048Added the "error window". It contains all the errors of the current error
1049list. Pressing <Enter> in a line makes Vim jump to that line (in another
1050window). This makes it easy to navigate through the error list.
1051|quickfix-window|.
1052
1053- |:copen| opens the quickfix window.
1054- |:cclose| closes the quickfix window.
1055- |:cwindow| takes care that there is a quickfix window only when there are
1056 recognized errors. (Dan Sharp)
1057
1058- Quickfix also knows "info", next to "warning" and "error" types. "%I" can be
1059 used for the start of a multi-line informational message. (Tony Leneis)
1060- The "%p" argument can be used in 'errorformat' to get the column number from
1061 a line where "^" points to the column. (Stefan Roemer)
1062- When using "%f" in 'errorformat' on a DOS/Windows system, also include "c:"
1063 in the filename, even when using "%f:".
1064
1065
1066Operator modifiers *new-operator-mod*
1067------------------
1068
1069Insert "v", "V" or CTRL-V between an operator and a motion command to force
1070the operator to work characterwise, linewise or blockwise. |o_v|
1071
1072
1073Search Path *new-search-path*
1074-----------
1075
1076Vim can search in a directory tree not only in downwards but also upwards.
1077Works for the 'path', 'cdpath' and 'tags' options. (Ralf Schandl)
1078
1079Also use "**" for 'tags' option. (Ralf Schandl)
1080
1081Added 'includeexpr', can be used to modify file name found by 'include'
1082option.
1083Also use 'includeexpr' for "gf" and "<cfile>" when the file can't be found
1084without modification. Useful for doing "gf" on the name after an include or
1085import statement.
1086
1087Added the 'cdpath' option: Locations to find a ":cd" argument. (Raf)
1088
1089Added the 'suffixesadd' option: Suffixes to be added to a file name when
1090searching for a file for the "gf", "[I", etc. commands.
1091
1092
1093Writing files improved *new-file-writing*
1094----------------------
1095
1096Added the 'backupcopy' option: Select whether a file is to be copied or
1097renamed to make a backup file. Useful on Unix to speed up writing an ordinary
1098file. Useful on other systems to preserve file attributes and when editing a
1099file on a Unix filesystem.
1100
1101Added the 'autowriteall' option. Works like 'autowrite' but for more
1102commands.
1103
1104Added the 'backupskip' option: A list of file patterns to skip making a backup
1105file when it matches. The default for Unix includes "/tmp/*", this makes
1106"crontab -e" work.
1107
1108Added support for Access Control Lists (ACL) for FreeBSD and Win32. The ACL
1109is copied from the original file to the new file (or the backup if it's
1110copied).
1111ACL is also supported for AIX, Solaris and generic POSIX. (Tomas Ogren)
1112And on SGI.
1113
1114
1115Argument list *new-argument-list*
1116-------------
1117
1118The support for the argument list has been extended. It can now be
1119manipulated to contain the files you want it to contain.
1120
1121The argument list can now be local to a window. It is created with the
1122|:arglocal| command. The |:argglobal| command can be used to go back to the
1123global argument list.
1124
1125The |:argdo| command executes a command on all files in the argument list.
1126
1127File names can be added to the argument list with |:argadd|. File names can
1128be removed with |:argdelete|.
1129
1130"##" can be used like "#", it is replaced by all the names in the argument
1131list concatenated. Useful for ":grep foo ##".
1132
1133The |:argedit| adds a file to the argument list and edits it. Like ":argadd"
1134and then ":edit".
1135
1136
1137Restore a View *new-View*
1138--------------
1139
1140The ":mkview" command writes a Vim script with the settings and mappings for
1141one window. When the created file is sourced, the view of the window is
1142restored. It's like ":mksession" for one window.
1143The View also contains the local argument list and manually created, opened
1144and closed folds.
1145
1146Added the ":loadview" command and the 'viewdir' option: Allows for saving and
1147restoring views of a file with simple commands. ":mkview 1" saves view 1 for
1148the current file, ":loadview 1" loads it again. Also allows quickly switching
1149between two views on one file. And saving and restoring manual folds and the
1150folding state.
1151
1152Added 'viewoptions' to specify how ":mkview" works.
1153
1154":mksession" now also works fine with vertical splits. It has been further
1155improved and restores the view of each window. It also works properly with
1156preview and quickfix windows.
1157
1158'sessionoptions' is used for ":mkview" as well.
1159Added "curdir" and "sesdir" to 'sessionoptions'. Allows selection of what
1160the current directory will be restored to.
1161
1162The session file now also contains the argument list(s).
1163
1164
1165Color schemes *new-color-schemes*
1166-------------
1167
1168Support for loading a color scheme. Added the ":colorscheme" command.
1169Automatically add menu entries for available schemes.
1170Should now properly reset the colors when 'background' or 't_Co' is changed.
1171":highlight clear" sets the default colors again.
1172":syntax reset" sets the syntax highlight colors back to the defaults.
1173For ":set bg&" guess the value. This allows a color scheme to switch back to
1174the default colors.
1175When syntax highlighting is switched on and a color scheme was defined, reload
1176the color scheme to define the colors.
1177
1178
1179Various new items *new-items-6*
1180-----------------
1181
1182Normal mode commands: ~
1183
1184"gi" Jump to the ^ mark and start Insert mode. Also works when the
1185 mark is just after the line. |gi|
1186
1187"g'm" and "g`m"
1188 Jump to a mark without changing the jumplist. Now you can use
1189 g`" to jump to the last known position in a file without side
1190 effects. Also useful in mappings.
1191
1192[', [`, ]' and ]`
1193 move the cursor to the next/previous lowercase mark.
1194
1195g_ Go to last non-blank in line. (Steve Wall)
1196
1197
1198Options: ~
1199
1200'autoread' When detected that a file changed outside of Vim,
1201 automatically read a buffer again when it's not changed.
1202 It has a global and a local value. Use ":setlocal autoread<"
1203 to go back to using the global value for 'autoread'.
1204
1205'debug' When set to "msg" it will print error messages that would
1206 otherwise be omitted. Useful for debugging 'indentexpr' and
1207 'foldexpr'.
1208
1209'lispwords' List of words used for lisp indenting. It was previously hard
1210 coded. Added a number of Lisp names to the default.
1211
1212'fold...' Many new options for folding.
1213
1214'modifiable' When off, it is impossible to make changes to a buffer.
1215 The %m and %M items in 'statusline' show a '-'.
1216
1217'previewwindow' Set in the preview window. Used in a session file to mark a
1218 window as the preview window.
1219
1220'printfont'
1221'printexpr'
1222'printheader'
1223'printdevice'
1224'printoptions' for ":hardcopy".
1225
1226'buflisted' Makes a buffer appear in the buffer list or not.
1227
1228Use "vim{version}:" for modelines, only to be executed when the version is
1229>= {version}. Also "vim>{version}", "vim<{version}" and "vim={version}".
1230
1231
1232Ex commands: ~
1233
1234:sav[eas][!] {file}
1235 Works like ":w file" and ":e #", but without loading the file
1236 again and avoiding other side effects. |:saveas|
1237
1238:silent[!] {cmd}
1239 Execute a command silently. Also don't use a delay that would
1240 come after the message. And don't do 'showmatch'.
1241 RISCOS: Removed that "!~cmd" didn't output anything, and
1242 didn't wait for <Enter> afterwards. Can use ":silent !cmd"
1243 now.
1244:menu <silent> Add a menu that won't echo Ex commands.
1245:map <silent> Add a mapping that won't echo Ex commands.
1246
1247:checktime Check for changed buffers.
1248
1249:verbose {cmd} Set 'verbose' for one command.
1250
1251:echomsg {expr}
1252:echoerr {expr} Like ":echo" but store the message in the history. (Mark
1253 Waggoner)
1254
1255:grepadd Works just like ":grep" but adds to the current error list
1256 instead of defining a new list. |:grepadd|
1257
1258:finish Finish sourcing a file. Can be used to skip the rest of a Vim
1259 script. |:finish|
1260
1261:leftabove
1262:aboveleft Split left/above current window.
1263
1264:rightbelow
1265:belowright Split right/below current window.
1266
1267:first, :bfirst, :ptfirst, etc.
1268 Alias for ":rewind". It's more logical compared to ":last".
1269
1270:enew Edit a new, unnamed buffer. This is needed, because ":edit"
1271 re-edits the same file. (Wall)
1272
1273:quitall Same as ":qall".
1274
1275:match Define match highlighting local to a window. Allows
1276 highlighting an item in the current window without interfering
1277 with syntax highlighting.
1278
1279:menu enable
1280:menu disable Commands to enable/disable menu entries without removing them.
1281 (Monish Shah)
1282
1283:windo Execute a command in all windows.
1284:bufdo Execute a command in all buffers.
1285
1286:wincmd Window (CTRL-W) command. Useful when a Normal mode command
1287 can't be used (e.g., for a CursorHold autocommand). See
1288 |CursorHold-example| for a nice application with it.
1289
1290:lcd and :lchdir
1291 Set local directory for a window. (Benjie Chen)
1292
1293:hide {command}
1294 Execute {command} with 'hidden' set.
1295
1296:emenu in Visual mode to execute a ":vmenu" entry.
1297
1298:popup Pop up a popup menu.
1299
1300:redraw Redraw the screen even when busy with a script or function.
1301
1302:hardcopy Print to paper.
1303
1304:compiler Load a Vim script to do settings for a specific compiler.
1305
1306:z# List numbered lines. (Bohdan Vlasyuk)
1307
1308
1309New marks: ~
1310
1311'( and ') Begin or end of current sentence. Useful in Ex commands.
1312'{ and '} Begin or end of current paragraph. Useful in Ex commands.
1313'. Position of the last change in the current buffer.
1314'^ Position where Insert mode was stopped.
1315
1316Store the ^ and . marks in the viminfo file. Makes it possible to jump to the
1317last insert position or changed text.
1318
1319
1320New functions: ~
1321argidx() Current index in argument list.
1322buflisted() Checks if the buffer exists and has 'buflisted' set.
1323cindent() Get indent according to 'cindent'.
1324eventhandler() Returns 1 when inside an event handler and interactive
1325 commands can't be used.
1326executable() Checks if a program or batch script can be executed.
1327filewritable() Checks if a file can be written. (Ron Aaron)
1328foldclosed() Find out if there is a closed fold. (Johannes Zellner).
1329foldcloseend() Find the end of a closed fold.
1330foldlevel() Find out the foldlevel. (Johannes Zellner)
1331foreground() Move the GUI window to the foreground.
1332getchar() Get one character from the user. Can be used to define a
1333 mapping that takes an argument.
1334getcharmod() Get last used key modifier.
1335getbufvar() gets the value of an option or local variable in a buffer (Ron
1336 Aaron)
1337getfsize() Return the size of a file.
1338getwinvar() gets the value of an option or local variable in a window (Ron
1339 Aaron)
1340globpath() Find matching files in a list of directories.
1341hasmapto() Detect if a mapping to a string is already present.
1342iconv() Convert a string from one encoding to another.
1343indent() gets the indent of a line (Ron Aaron)
1344inputdialog() Like input() but use a GUI dialog when possible. Currently
1345 only works for Win32, Motif, Athena and GTK.
1346 Use inputdialog() for the Edit/Settings/Text Width menu. Also
1347 for the Help/Find.. and Toolbar FindHelp items.
1348 (Win32 support by Thore B. Karlsen)
1349 (Win16 support by Vince Negri)
1350inputsecret() Ask the user to type a string without showing the typed keys.
1351 (Charles Campbell)
1352libcall() for Unix (Neil Bird, Johannes Zellner, Stephen Wall)
1353libcallnr() for Win32 and Unix
1354lispindent() Get indent according to 'lisp'.
1355mode() Return a string that indicates the current mode.
1356nextnonblank() Skip blank lines forwards.
1357prevnonblank() Skip blank lines backwards. Useful to for indent scripts.
1358resolve() MS-Windows: resolve a shortcut to the file it points to.
1359 Unix: resolve a symbolic link.
1360search() Search for a pattern.
1361searchpair() Search for matching pair. Can be used in indent files to find
1362 the "if" matching an endif.
1363setbufvar() sets an option or variable local to a buffer (Ron Aaron)
1364setwinvar() sets an option or variable local to a window (Ron Aaron)
1365stridx() Search for first occurrence of one string in another.
1366strridx() Search for last occurrence of one string in another.
1367tolower() Convert string to all-lowercase.
1368toupper() Convert string to all-uppercase.
1369type() Check the type of an expression.
1370wincol() window column of the cursor
1371winwidth() Width of a window. (Johannes Zellner)
1372winline() window line of the cursor
1373
1374
1375Added expansion of curly braces in variable and function names. This can be
1376used for variable names that include the value of an option. Or a primitive
1377form of arrays. (Vince Negri)
1378
1379
1380New autocommand events: ~
1381BufWinEnter Triggered when a buffer is displayed in a window, after using
1382 the modelines. Can be used to load a view.
1383BufWinLeave Triggered when a buffer is no longer in a window. Also
1384 triggered when exiting Vim. Can be used to save views.
1385FileChangedRO Triggered before making the first change to a read-only file.
1386 Can be used to check-out the file. (Scott Graham)
1387TermResponse Triggered when the terminal replies to the version-request.
1388 The v:termresponse internal variable holds the result. Can be
1389 used to react to the version of the terminal. (Ronald Schild)
1390FileReadCmd Triggered before reading a file.
1391BufReadCmd Triggered before reading a file into a buffer.
1392FileWriteCmd Triggered before writing a file.
1393BufWriteCmd Triggered before writing a buffer into a file.
1394FileAppendCmd Triggered before appending to a file.
1395FuncUndefined Triggered when a user function is not defined. (Ron Aaron)
1396
1397The autocommands for the *Cmd events read or write the file instead of normal
1398file read/write. Use this in netrw.vim to be able to edit files on a remote
1399system. (Charles Campbell)
1400
1401
1402New Syntax files: ~
1403
1404bdf BDF font definition (Nikolai Weibull)
1405catalog SGML catalog (Johannes Zellner)
1406debchangelog Debian Changelog (Wichert Akkerman)
1407debcontrol Debian Control (Wichert Akkerman)
1408dot dot (Markus Mottl)
1409dsl DSSSL syntax (Johannes Zellner)
1410eterm Eterm configuration (Nikolai Weibull)
1411indent Indent profile (Nikolai Weibull)
1412lftp LFTP (Nikolai Weibull)
1413lynx Lynx config (Doug Kearns)
1414mush mush sourcecode (Bek Oberin)
1415natural Natural (Marko Leipert)
1416pilrc Pal resource compiler (Brian Schau)
1417plm PL/M (Philippe Coulonges)
1418povini Povray configuration (David Necas)
1419ratpoison Ratpoison config/command (Doug Kearns)
1420readline readline config (Nikolai Weibull)
1421screen Screen RC (Nikolai Weibull)
1422specman Specman (Or Freund)
1423sqlforms SQL*Forms (Austin Ziegler)
1424terminfo terminfo (Nikolai Weibull)
1425tidy Tidy configuration (Doug Kearns)
1426wget Wget configuration (Doug Kearns)
1427
1428
1429Updated many syntax files to work both with Vim 5.7 and 6.0.
1430
1431Interface to Ruby. (Shugo Maeda)
1432Support dynamic loading of the Ruby interface on MS-Windows. (Muraoka Taro)
1433Support this for Mingw too. (Benoit Cerrina)
1434
1435Win32: Added possibility to load TCL dynamically. (Muraoka Taro)
1436Also for Borland 5.5. (Dan Sharp)
1437
1438Win32: When editing a file that is a shortcut (*.lnk file), edit the file it
1439links to. Unless 'binary' is set, then edit the shortcut file itself.
1440(Yasuhiro Matsumoto)
1441
1442The ":command" command now accepts a "-bar" argument. This allows the user
1443command to be followed by "| command".
1444
1445The preview window is now also used by these commands:
1446- |:pedit| edits the specified file in the preview window
1447- |:psearch| searches for a word in included files, like |:ijump|, and
1448 displays the found text in the preview window.
1449Added the CTRL-W P command: go to preview window.
1450
1451MS-DOS and MS-Windows also read the system-wide vimrc file $VIM/vimrc. Mostly
1452for NT systems with multiple users.
1453
1454A double-click of the mouse on a character that has a "%" match selects from
1455that character to the match. Similar to "v%".
1456
1457"-S session.vim" argument: Source a script file when starting up. Convenient
1458way to start Vim with a session file.
1459
1460Added "--cmd {command}" Vim argument to execute a command before a vimrc file
1461is loaded. (Vince Negri)
1462
1463Added the "-M" Vim argument: reset 'modifiable' and 'write', thus disallow
1464making changes and writing files.
1465
1466Added runtime/delmenu.vim. Source this to remove all menus and prepare for
1467loading new menus. Useful when changing 'langmenu'.
1468
1469Perl script to filter Perl error messages to quickfix usable format. (Joerg
1470Ziefle)
1471
1472Added runtime/macros/less.vim: Vim script to simulate less, but with syntax
1473highlighting.
1474
1475MS-Windows install program: (Jon Merz)
1476- The Win32 program can now create shortcuts on the desktop and install Vim in
1477 the Start menu.
1478- Possibly remove old "Edit with Vim" entries.
1479- The Vim executable is never moved or $PATH changed. A small batch file is
1480 created in a directory in $PATH. Fewer choices to be made.
1481- Detect already installed Vim versions and offer to uninstall them first.
1482
1483Improved the MS-Windows uninstal program. It now also deletes the entries in
1484the Start menu, icons from the desktop and the created batch files. (Jon Merz)
1485Also made it possible to delete only some of these. Also unregister gvim for
1486OLE.
1487
1488Generate a self-installing Vim package for MS-Windows. This uses NSIS. (Jon
1489Merz et al.)
1490
1491Added ":filetype detect". Try detecting the filetype again. Helps when
1492writing a new shell script, after adding "#!/bin/csh".
1493
1494Added ":augroup! name" to delete an autocommand group. Needed for the
1495client-server "--remote-wait".
1496
1497Add the Vim version number to the viminfo file, useful for debugging.
1498
1499==============================================================================
1500IMPROVEMENTS *improvements-6*
1501
1502Added the 'n' flag in 'cpoptions': When omitted text of wrapped lines is not
1503put between line numbers from 'number' option. Makes it a lot easier to read
1504wrapped lines.
1505
1506When there is a format error in a tags file, the byte position is reported so
1507that the error can be located.
1508
1509"gf" works in Visual mode: Use the selected text as the file name. (Chase
1510Tingley)
1511
1512Allow ambiguous mappings. Thus "aa" and "aaa" can both be mapped, the longest
1513matching one is used. Especially useful for ":lmap" and 'keymap'.
1514
1515Encryption: Ask the key to be typed twice when crypting the first time.
1516Otherwise a typo might cause the text to be lost forever. (Chase Tingley)
1517
1518The window title now has "VIM" on the end. The file name comes first, useful
1519in the taskbar. A "+" is added when the file is modified. "=" is added for
1520a read-only file. "-" is added for a file with 'modifiable' off.
1521
1522In Visual mode, mention the size of the selected area in the 'showcmd'
1523position.
1524
1525Added the "b:changedtick" variable. Incremented at each change, also for
1526undo. Can be used to take action only if the buffer has been changed.
1527
1528In the replacement string of a ":s" command "\=" can be used to replace with
1529the result of an expression. From this expression the submatch() function can
1530be used to access submatches.
1531
1532When doing ":qall" and there is a change in a buffer that is being edited in
1533another window, jump to that window, instead of editing that buffer in the
1534current window.
1535
1536Added the "++enc=" and "++ff=" arguments to file read/write commands to force
1537using the given 'encoding' or 'fileformat'. And added the "v:cmdarg"
1538variable, to be used for FileReadCmd autocommands that read/write the file
1539themselves.
1540
1541When reading stdin, first read the text in binary mode and then re-read it
1542with automatic selection of 'fileformat' and 'fileencoding'. This avoids
1543problems with not being able to rewind the file (e.g., when a line near the
1544end of the file ends in LF instead of CR-LF).
1545When reading text from stdin and the buffer is empty, don't mark it changed.
1546Allows exiting without trouble.
1547
1548Added an ID to many error messages. This will make it easier to find help for
1549a message.
1550
1551Insert mode:
1552- "CTRL-G j" and "CTRL-G k" can be used to insert in another line in the same
1553 column. Useful for editing a table.
1554- Added Thesaurus completion with CTRL-X CTRL-T. (Vince Negri)
1555- Added the 'thesaurus' option, to use instead of 'dictionary' for thesaurus
1556 completion. Added the 's' flag in 'complete'.
1557- Made CTRL-X CTRL-L in Insert mode use the 'complete' option. It now also
1558 scans other loaded buffers for matching lines.
1559- CTRL-R now also works in Insert mode while doing completion with CTRL-X or
1560 CTRL-N. (Neil Bird)
1561- When doing Insert mode completion, when completion is finished check for a
1562 match with words from 'cinkeys' or 'indentkeys'.
1563
1564Performance:
1565- Made display updating more efficient. Insert/delete lines may be used for
1566 all changes, also for undo/redo.
1567- The display is not redrawn when there is typeahead in Insert mode. Speeds
1568 up CTRL-R a lot.
1569- Improved speed of screen output for 32 bit DOS version. (Vince Negri)
1570- When dragging with the mouse, there is a lookahead to skip mouse codes when
1571 there is another one next. Makes dragging with the mouse a lot faster.
1572- Also a memory usage improvement: When calling u_save with a single line,
1573 don't save it if the line was recently saved for the same undo already.
1574- When using a script that appends one character at a time, the amount of
1575 allocated memory was growing steadily. Also when 'undolevels' is -1.
1576 Caused by the line saved for "U" never to be freed. Now free an undo block
1577 when it becomes empty.
1578- GUI and Dos32: Use a vertical scroll region, to make scrolling in a
1579 vertically split window faster. No need to redraw the whole window.
1580- When scrolling isn't possible with terminal codes (e.g., for a vertically
1581 split window) redraw from ScreenLines[]. That should be faster than going
1582 through the lines with win_line(), especially when using syntax
1583 highlighting.
1584- The Syntax menu is now pre-generated by a separate script. Makes loading
1585 the menu 70% faster. This can halve the startup time of gvim.
1586- When doing ":help tag", don't open help.txt first, jump directly to the help
1587 tag. It's faster and avoids an extra message.
1588- Win32: When a file name doesn't end in ".lnk" don't try resolving a
1589 shortcut, it takes quite a bit of time.
1590- Don't update the mouse pointer shape while there are typeahead characters.
1591- Change META[] from a string into an array, avoids using strchr() on it.
1592- Don't clear the command line when adding characters, avoids that screen_fill
1593 is called but doesn't do anything.
1594
1595Robustness:
1596- Unix: Check for running out of stack space when executing a regexp. Avoids
1597 a nasty crash. Only works when the system supports running the signal
1598 function on another stack.
1599- Disallow ":source <dirname>". On unix it's possible to read a directory,
1600 does not make sense to use it as Vim commands.
1601
1602Security:
1603- When reading from or writing to a temporary file, check that it isn't a
1604 symbolic link. Gives some protection against symlink attacks.
1605- When creating a backup file copy or a swap file, check for it already
1606 existing to avoid a symlink attack. (Colin Phipps)
1607- Evaluating options which are an expression is done in a |sandbox|. If the
1608 option was set by a modeline, it cannot cause damage.
1609- Use a secure way to generate temp file names: Create a private directory for
1610 temp files. Used for Unix, MS-DOS and OS/2.
1611- 'makeef' can be empty, which means that an internally generated file name is
1612 used. The old default was "/tmp/file", which is a security risk.
1613 Writing 'makeef' in the current directory fails in a read-only directory and
1614 causes trouble when using ":grep" on all files. Made the default empty for
1615 all systems, so that a temp file is used.
1616- The command from a tags file is executed in the sandbox for better security.
1617- The Ruby, Tcl and Python interfaces cannot be used from the sandbox. They
1618 might do dangerous things. Perl is still possible, but limited to the Safe
1619 environment. (Donnie Smith)
1620
1621Syntax highlighting:
1622- Optimized the speed by caching the state stack all over the file, not just
1623 the part being displayed. Required for folding.
1624- Added ":syntax sync fromstart": Always parse from the start of the file.
1625- Added the "display" argument for syntax items: use the item only when
1626 displaying the result. Can make parsing faster for text that isn't going to
1627 be displayed.
1628- When using CTRL-L, the cached states are deleted, to force parsing the text
1629 again.
1630- Use elfhash algorithm for table of keywords. This should give a better
1631 distribution and speedup keyword lookup. (Campbell)
1632- Also allow the "lc" leading context for skip and end patterns. (Scott
1633 Bigham)
1634- Syntax items can have the "extend" argument to undo the effect of a
1635 "keepend" argument of an item it is contained in. Makes it possible to have
1636 some contained items extend a region while others don't.
1637- ":syntax clear" now deletes the b:current_syntax variable. That's logical,
1638 since no syntax is defined after this command.
1639- Added ":syntax enable": switch on syntax highlighting without changing the
1640 colors. This allows specifying the colors in the .vimrc file without the
1641 need for a mysyntaxfile.
1642- Added ":syntax reset": reset the colors to their defaults.
1643- Added the "contains=TOP" and "contains=CONTAINED" arguments. Makes it
1644 possible to define a transparent item that doesn't contain itself.
1645- Added a "containedin" argument to syntax items. Allows adding a contained
1646 item to an existing item (e.g., to highlight a name in a comment).
1647
1648Modeless selection:
1649- When in the command-line window, use modeless selection in the other
1650 windows. Makes it possible to copy visible text to the command-line window.
1651- Support modeless selection on the cmdline in a terminal. Previously it was
1652 only possible for the GUI.
1653- Make double-right-click in modeless selection select a whole word. Single
1654 right click doesn't use the word selection started by a double-left-click.
1655 Makes it work like in Visual mode.
1656- The modeless selection no longer has an implied automatic copy to the
1657 clipboard. It now obeys the 'a' and 'A' flags in 'guioptions' or
1658 "autoselect" and "autoselectml" in 'clipboard'.
1659- Added the CTRL-Y command in Cmdline-mode to copy the modeless selection to
1660 the clipboard. Also works at the hit-enter prompt and the more prompt.
1661 Removed the mappings in runtime/mswin.vim for CTRL-Y and CTRL-Z in
1662 cmdline-mode to be able to use CTRL-Y in the new way.
1663
1664Reduced the amount of stack space used by regmatch() to allow it to handle
1665complicated patterns on a longer text.
1666
1667'isfname' now includes '%' and '#'. Makes "vim dir\#file" work for MS-DOS.
1668
1669Added keypad special keys <kEnter>, <k0> - <k9>. When not mapped they behave
1670like the ASCII equivalent. (Ivan Wellesz and Vince Negri)
1671Recognize a few more xterm keys: <C-Right>, <C-Left>, <C-End>, <C-Home>
1672
1673Also trigger the BufUnload event when Vim is going to exit. Perhaps a script
1674needs to do some cleaning up.
1675
1676Expand expression in backticks: `={expr}`. Can be used where backtick
1677expansion is done. (Vince Negri)
1678
1679GUI:
1680- Added 'L' and 'R' flags in 'guioptions': Add a left or right scrollbar only
1681 when there is a vertically split window.
1682- X11: When a color can't be allocated, use the nearest match from the
1683 colormap. This avoids that black is used for many things. (Monish Shah)
1684 Also do this for the menu and scrollbar, to avoid that they become black.
1685- Win32 and X11: Added 'mouseshape' option: Adjust the mouse pointer shape to
1686 the current mode. (Vince Negri)
1687- Added the 'linespace' option: Insert a pixel line between lines. (Nam)
1688- Allow modeless selection (without moving the cursor) by keeping CTRL and
1689 SHIFT pressed. (Ivan Wellesz)
1690- Motif: added toolbar. (Gordon Prieur) Also added tooltips.
1691- Athena: added toolbar and tooltips. (David Harrison -- based on Gordon
1692 Prieur's work)
1693- Made the 'toolbar' option work for Athena and Motif. Can now switch between
1694 text and icons on the fly. (David Harrison)
1695- Support menu separator lines for Athena. (David Harrison)
1696- Athena: Adjust the arrow pixmap used in a pullright menu to the size of the
1697 font. (David Harrison)
1698- Win32: Added "c" flag to 'guifont' to be able to specify the charset. (Artem
1699 Khodush)
1700- When no --enable-xim argument is given, automatically enable it when a X GUI
1701 is used. Required for dead key support (and multi-byte input).
1702- After a file selection dialog, check that the edited files were not changed
1703 or deleted. The Win32 dialog allows deleting and renaming files.
Bram Moolenaarb11160e2005-01-04 21:31:43 +00001704- Motif and Athena: Added support for "editres". (Marcin Dalecki)
Bram Moolenaar071d4272004-06-13 20:20:40 +00001705- Motif and Athena: Added "menuFont" to be able to specify a font or fontset
1706 for the menus. Can also be set with the "Menu" highlight group. Useful
1707 when the locale is different from 'encoding'. (David Harrison)
1708 When FONTSET_ALWAYS is defined, always use a fontset for the menus. Should
1709 avoid trouble with changing from a font to a fontset. (David Harrison)
1710- Highlighting and font for the tooltips can be specified with the "Tooltip"
1711 highlight group. (David Harrison)
1712- The Cmdline-mode menus can be used at the more-prompt. This mostly works
1713 fine, because they start with a CTRL-C. The "Copy" menu works to copy the
1714 modeless selection. Allows copying the output of ":set all" or ":intro"
1715 without auto-selection.
1716- When starting the GUI when there is no terminal connected to stdout and
1717 stderr, display error messages in a dialog. Previously they wouldn't be
1718 displayed at all.
1719- Allow setting 'browsedir' to the name of a directory, to be used for the
1720 file dialog. (Dan Sharp)
1721- b:browsefilter and g:browsefilter can be set to the filters used for the
1722 file dialog. Supported for Win32 and Motif GUI. (Dan Sharp)
1723
1724X11:
1725- Support for the clipboard selection as register "+. When exiting or
1726 suspending copy the selection to cut buffer 0. Should allow copy/paste with
1727 more applications in a X11-standard way. (Neil Bird)
1728- Use the X clipboard in any terminal, not just in an xterm.
1729 Added "exclude:" in 'clipboard': Specify a pattern to match against terminal
1730 names for which no connection should be made to the X server. The default
1731 currently work for FreeBSD and Linux consoles.
1732- Added a few messages for when 'verbose' is non-zero to show what happens
1733 when trying to connect to the X server. Should help when trying to find out
1734 why startup is slow.
1735
1736GTK GUI: (partly by Marcin Dalecki)
1737- With some fonts the characters can be taller than ascent + descent. E.g.,
1738 "-misc-fixed-*-*-*-*-18-*-*-*-*-*-iso10646-1". Add one to the character
1739 cell height.
1740- Implement "no" value for 'winaltkeys': don't use Alt-Key as a menu shortcut,
1741 when 'wak' changed after creating the menus.
1742- Setting 'wak' after the GUI started works.
1743- recycle text GC's to reduce communication.
1744- Adjust icon size to window manager.
1745- Cleanup in font handling.
1746- Replace XQueryColor with GDK calls.
1747- Gnome support. Detects Gnome in configure and uses different widgets.
1748 Otherwise it's much like GTK. (Andy Kahn)
1749 It is disabled by default, because it causes a few problems.
1750- Removed the special code to fork first and then start the GUI. Now use
1751 _exit() instead of exit(), this works fine without special tricks.
1752- Dialogs sometimes appeared a bit far away. Position the dialogs inside
1753 the gvim window. (Brent Verner)
1754- When dropping a file on Vim, remove extra slashes from the start of the
1755 path. Also shorten the file name if possible.
1756
Bram Moolenaarb11160e2005-01-04 21:31:43 +00001757Motif: (Marcin Dalecki)
Bram Moolenaar071d4272004-06-13 20:20:40 +00001758- Made the dialog layout better.
1759- Added find and find/replace dialogs.
1760- For the menus, change "iso-8859" to "iso_8859", Linux appears to need this.
1761- Added icon to dialogs, like for GTK.
1762- Use XPM bitmaps for the icon when possible. Use the Solaris XpmP.h include
1763 file when it's available.
1764- Change the shadow of the toolbar items to get a visual feedback of it being
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00001765 pressed on non-LessTif.
Bram Moolenaar071d4272004-06-13 20:20:40 +00001766- Use gadgets instead of windows for some items for speed.
1767
1768Command line completion:
1769- Complete environment variable names. (Mike Steed)
1770- For ":command", added a few completion methods: "mapping", "function",
1771 "expression" and "environment".
1772- When a function doesn't take arguments, let completion add () instead of (.
1773
1774For MS-DOS, MS-Windows and OS/2: Expand %VAR% environment variables like $VAR.
1775(Walter Briscoe)
1776
1777Redirect messages to the clipboard ":redir @*" and to the unnamed register
1778":redir @"". (Wall)
1779
1780":let @/ = ''" clears the search pattern, instead of setting it to an empty
1781string.
1782
1783Expression evaluation:
1784- "? :" can be used like in C.
1785- col("$") returns the length of the cursor line plus one. (Stephen P. Wall)
1786- Optional extra argument for match(), matchend() and matchstr(): Offset to
1787 start looking for a match.
1788- Made third argument to strpart() optional. (Paul Moore, Zdenek Sekera)
1789- exists() can also be used to check for Ex commands and defined autocommands.
1790- Added extra argument to input(): Default text.
1791- Also set "v:errmsg" when using ":silent! cmd".
1792- Added the v:prevcount variable: v:count for the previous command.
1793- Added "v:progname", name with which Vim was started. (Vince Negri)
1794- In the verbose message about returning from a function, also show the return
1795 value.
1796
1797Cscope:
1798- Added the cscope_connection() function. (Andy Kahn)
1799- ":cscope kill -1" kills all cscope connections. (Andy Kahn)
1800- Added the 'cscopepathcomp' option. (Scott Hauck)
1801- Added ":scscope" command, split window and execute Cscope command. (Jason
1802 Duell)
1803
1804VMS:
1805- Command line arguments are always uppercase. Interpret a "-X" argument as
1806 "-x" and "-/X" as "-X".
1807- Set 'makeprg' and 'grepprg' to meaningful defaults. (Zoltan Arpadffy)
1808- Use the X-clipboard feature and the X command server. (Zoltan Arpadffy)
1809
1810Macintosh: (Dany St-Amant)
1811- Allow a tags file to have CR, CR-LF or LF line separator. (Axel Kielhorn)
1812- Carbonized (while keeping non Carbon code)
1813 (Some work "stolen" from Ammon Skidmore)
1814- Improved the menu item index handling (should be faster)
1815- Runtime commands now handle / in file name (MacOS 9 version)
1816- Added ":winpos" support.
1817- Support using "~" in file names for home directory.
1818
1819Options:
1820- When using set += or ^= , check for items used twice. Duplicates are
1821 removed. (Vince Negri)
1822- When setting an option that is a list of flags, remove duplicate flags.
1823- If possible, use getrlimit() to set 'maxmemtot' and 'maxmem'. (Pina)
1824- Added "alpha" to 'nrformats': increment or decrement an alphabetic character
1825 with CTRL-A and CTRL-X.
1826- ":set opt&vi" sets an option to its Vi default, ":set opt&vim" to its Vim
1827 default. Useful to set 'cpo' to its Vim default without knowing what flags
1828 that includes.
1829- 'scrolloff' now also applies to a long, wrapped line that doesn't fit in the
1830 window.
1831- Added more option settings to the default menus.
1832- Updated the option window with new options. Made it a bit easier to read.
1833
1834Internal changes:
1835- Split line pointers in text part and attributes part. Allows for future
1836 change to make attribute more than one byte.
1837- Provide a qsort() function for systems that don't have it.
1838- Changed the big switch for Normal mode commands into a table. This cleans
1839 up the code considerably and avoids trouble for some optimizing compilers.
1840- Assigned a negative value to special keys, to avoid them being mixed up with
1841 Unicode characters.
1842- Global variables expand_context and expand_pattern were not supposed to be
1843 global. Pass them to ExpandOne() and all functions called by it.
1844- No longer use the global reg_ic flag. It caused trouble and in a few places
1845 it was not set.
1846- Removed the use of the stuff buffer for "*", "K", CTRL-], etc. Avoids
1847 problem with autocommands.
1848- Moved some code from ex_docmd.c to ex_cmds2.c. The file was getting too
1849 big. Also moved some code from screen.c to move.c.
1850- Don't include the CRC table for encryption, generate it. Saves quite a bit
1851 of space in the source code. (Matthias Kramm)
1852- Renamed multibyte.c to mbyte.c to avoid a problem with 8.3 filesystems.
1853- Removed the GTK implementation of ":findhelp", it now uses the
1854 ToolBar.FindHelp menu entry.
1855- Renamed mch_windexit() to mch_exit(), mch_init() to mch_early_init() and
1856 mch_shellinit() to mch_init().
1857
1858Highlighting:
1859- In a ":highlight" listing, show "xxx" with the highlight color.
1860- Added support for xterm with 88 or 256 colors. The right color numbers will
1861 be used for the name used in a ":highlight" command. (Steve Wall)
1862- Added "default" argument for ":highlight". When included, the command is
1863 ignored if highlighting for the group was already defined.
1864 All syntax files now use ":hi default ..." to allow the user to specify
1865 colors in his vimrc file. Also, the "if did_xxx_syntax_inits" is not needed
1866 anymore. This greatly simplifies using non-default colors for a specific
1867 language.
1868- Adjusted colortest.vim: Included colors on normal background and reduced the
1869 size by using a while loop. (Rafael Garcia-Suarez)
1870- Added the "DarkYellow" color name. Just to make the list of standard colors
1871 consistent, it's not really a nice color to use.
1872
1873When an xterm is in 8-bit mode this is detected by the code returned for
1874|t_RV|. All key codes are automatically converted to their 8-bit versions.
1875
1876The OPT_TCAP_QUERY in xterm patch level 141 and later is used to obtain the
1877actual key codes used and the number of colors for t_Co. Only when |t_RV| is
1878also used.
1879
1880":browse set" now also works in the console mode. ":browse edit" will give an
1881error message.
1882
1883":bdelete" and ":bunload" only report the number of deleted/unloaded buffers
1884when more than 'report'. The message was annoying when deleting a buffer in a
1885script.
1886
1887Jump list:
1888- The number of marks kept in the jumplist has been increased from 50 to 100.
1889- The jumplist is now stored in the viminfo file. CTRL-O can be used to jump
1890 to positions from a previous edit session.
1891- When doing ":split" copy the jumplist to the new window.
1892
1893Also set the '[ and '] marks for the "~" and "r" commands. These marks are
1894now always set when making a change with a Normal mode command.
1895
1896Python interface: Allow setting the width of a vertically split window. (John
1897Cook)
1898
1899Added "=word" and "=~word" to 'cinkeys' (also used in 'indentkeys').
1900
1901Added "j1" argument in 'cinoptions': indent {} inside () for Java. (Johannes
1902Zellner)
1903Added the "l" flag in 'cinoptions'. (Anduin Withers)
1904Added 'C', 'U', 'w' and 'm' flags to 'cinoptions'. (Servatius Brandt)
1905
1906When doing ":wall" or ":wqall" and a modified buffer doesn't have a name,
1907mention its buffer number in the error message.
1908
1909":function Name" lists the function with line numbers. Makes it easier to
1910find out where an error happened.
1911
1912In non-blockwise Visual mode, "r" replaces all selected characters with the
1913typed one, like in blockwise Visual mode.
1914
1915When editing the last file in the argument list in any way, allow exiting.
1916Previously this was only possible when getting to that file with ":next" or
1917":last".
1918
1919Added the '1' flag to 'formatoptions'. (Vit Stradal)
1920Added 'n' flag in 'formatoptions': format a numbered list.
1921
1922Swap file:
1923- When a swap file already exists, and the user selects "Delete" at the
1924 ATTENTION prompt, use the same ".swp" swapfile, to avoid creating a ".swo"
1925 file which won't always be found.
1926- When giving the ATTENTION message and the date of the file is newer than the
1927 date of swap file, give a warning about this.
1928- Made the info for an existing swap file a bit shorter, so that it still fits
1929 on a 24 line screen.
1930- It was possible to make a symlink with the name of a swap file, linking to a
1931 file that doesn't exist. Vim would then silently use another file (if open
1932 with O_EXCL refuses a symlink). Now check for a symlink to exist. Also do
1933 another check for an existing swap file just before creating it to catch a
1934 symlink attack.
1935
1936The g CTRL-G command also works in Visual mode and counts the number of words.
1937(Chase Tingley)
1938
1939Give an error message when using 'shell' and it's empty.
1940
1941Added the possibility to include "%s" in 'shellpipe'.
1942
1943Added "uhex" value for 'display': show non-printable characters as <xx>.
1944Show unprintable characters with NonText highlighting, also in the command
1945line.
1946
1947When asked to display the value of a hidden option, tell it's not supported.
1948
1949Win32:
1950- When dropping a shortcut on gvim (.lnk file) edit the target, not the
1951 shortcut itself. (Yasuhiro Matsumoto)
1952- Added C versions of the OpenWithVim and SendToVim programs. (Walter Briscoe)
1953- When 'shell' is "cmd" or "cmd.exe", set 'shellredir' to redirect stderr too.
1954 Also check for the Unix shell names.
1955- When $HOMEDRIVE and $HOMEPATH are defined, use them to define $HOME. (Craig
1956 Barkhouse)
1957
1958Win32 console version:
1959- Includes the user and system name in the ":version" message, when available.
1960 It generates a pathdef.c file for this. (Jon Miner)
1961- Set the window icon to Vim's icon (only for Windows 2000). While executing
1962 a shell command, modify the window title to show this. When exiting,
1963 restore the cursor position too. (Craig Barkhouse)
1964- The Win32 console version can be compiled with OLE support. It can only
1965 function as a client, not as an OLE server.
1966
1967Errorformat:
1968- Let "%p" in 'errorformat' (column of error indicated by a row of characters)
1969 also accept a line of dots.
1970- Added "%v" item in 'errorformat': Virtual column number. (Dan Sharp)
1971- Added a default 'errorformat' value for VMS. (Jim Bush)
1972
1973The "p" command can now be used in Visual mode. It overwrites the selected
1974text with the contents of a register.
1975
1976Highlight the <> items in the intro message to make clear they are special.
1977
1978When using the "c" flag for ":substitute", allow typing "l" for replacing this
1979item and then stop: "last".
1980
1981When printing a verbose message about sourcing another file, print the line
1982number.
1983
1984When resizing the Vim window, don't use 'equalalways'. Avoids that making the
1985Vim window smaller makes split windows bigger. And it's what the docs say.
1986
1987When typing CTRL-D in Insert mode, just after an autoindent, then hitting CR
1988kept the remaining white space. Now made it work like BS: delete the
1989autoindent to avoid a blank non-empty line results.
1990
1991Added a GetHwnd() call to the OLE interface. (Vince Negri)
1992
1993Made ":normal" work in an event handler. Useful when dropping a file on Vim
1994and for CursorHold autocommands.
1995
1996For the MS-Windows version, don't change to the directory of the file when a
1997slash is used instead of a backslash. Explorer should always use a backslash,
1998the user can use a slash when typing the command.
1999
2000Timestamps:
2001- When a buffer was changed outside of Vim and regaining focus, give a dialog
2002 to allow the user to reload the file. Now also for other GUIs than
2003 MS-Windows. And also used in the console, when compiled with dialog
2004 support.
2005- Inspect the file contents to find out if it really changed, ignore
2006 situations where only the time stamp changed (e.g., checking the file out
2007 from CVS).
2008- When checking the timestamp, first check if the file size changed, to avoid
2009 a file compare then. Makes it quicker for large (log) files that are
2010 appended to.
2011- Don't give a warning for a changed or deleted file when 'buftype' is set.
2012- No longer warn for a changed directory. This avoids that the file explorer
2013 produces warnings.
2014- Checking timestamps is only done for buffers that are not hidden. These
2015 will be checked when they become unhidden.
2016- When checking for a file being changed outside of Vim, also check if the
2017 file permissions changed. When the file contents didn't change but the
2018 permissions did, give a warning.
2019- Avoid checking too often, otherwise the dialog keeps popping up for a log
2020 file that steadily grows.
2021
2022Mapping <M-A> when 'encoding' is "latin1" and then setting 'encoding' to
2023"utf-8" causes the first byte of a multi-byte to be mapped. Can cause very
2024hard to find problems. Disallow mapping part of a multi-byte character.
2025
2026For ":python" and ":tcl" accept an in-line script. (Johannes Zellner)
2027Also for ":ruby" and ":perl". (Benoit Cerrina)
2028
2029Made ":syn include" use 'runtimepath' when the file name is not a full path.
2030
2031When 'switchbuf' contains "split" and the current window is empty, don't split
2032the window.
2033
2034Unix: Catch SIGPWR to preserve files when the power is about to go down.
2035
2036Sniff interface: (Anton Leherbauer)
2037- fixed windows code, esp. the event handling stuff
2038- adaptations for sniff 4.x ($SNIFF_DIR4)
2039- support for adding sniff requests at runtime
2040
2041Support the notation <A-x> as an alias for <M-x>. This logical, since the Alt
2042key is used.
2043
2044":find" accepts a count, which means that the count'th match in 'path' is
2045used.
2046
2047":ls" and ":buffers" output shows modified/readonly/modifiable flag. When a
2048buffer is active show "a" instead of nothing. When a buffer isn't loaded
2049show nothing instead of "-".
2050
2051Unix install:
2052- When installing the tools, set absolute paths in tools scripts efm_perl.pl
2053 and mve.awk. Avoids that the user has to edit these files.
2054- Install Icons for KDE when the directories exist and the icons do not exist
2055 yet.
2056
2057Added has("win95"), to be able to distinguish between MS-Windows 95/98/ME and
2058NT/2000/XP in a Vim script.
2059
2060When a ":cd" command was typed, echo the new current directory. (Dan Sharp)
2061
2062When using ":winpos" before the GUI window has been opened, remember the
2063values until it is opened.
2064
2065In the ":version" output, add "/dyn" for features that are dynamically loaded.
2066This indicates the feature may not always work.
2067
2068On Windows NT it is possible that a directory is read-only, but a file can be
2069deleted. When making a backup by renaming the file and 'backupdir' doesn't
2070use the current directory, this causes the original file to be deleted,
2071without the possibility to create a new file. Give an extra error message
2072then to warn to user about this.
2073
2074Made CTRL-R CTRL-O at the command line work like CTRL-R CTRL-R, so that it's
2075consistent with Insert mode.
2076
2077==============================================================================
2078COMPILE TIME CHANGES *compile-changes-6*
2079
2080All generated files have been moved out of the "src" directory. This makes it
2081easy to see which files are not edited by hand. The files generated by
2082configure are now in the "src/auto" directory. For Unix, compiled object
2083files go in the objects directory.
2084
2085The source archive was over the 1.4M floppy limit. The archives are now split
2086up into two runtime and two source archives. Also provide a bzip2 compressed
2087archive that contains all the sources and runtime files.
2088
2089Added "reconfig" as a target for make. Useful when changing some of the
2090arguments that require flushing the cache, such as switching from GTK to
2091Motif. Adjusted the meaning of GUI_INC_LOC and GUI_LIB_LOC to be consistent
2092over different GUIs.
2093
2094Added src/README.txt to give an overview of the main parts of the source code.
2095
2096The Unix Makefile now fully supports using $(DESTDIR) to install to a specific
2097location. Replaces the manual setting of *ENDLOC variables.
2098
2099Added the possibility for a maintainer of a binary version to include his
2100e-mail address with the --with-compiledby configure argument.
2101
2102Included features are now grouped in "tiny", "small", "normal", "big" and
2103"huge". This replaces "min-features" and "max-features". Using "tiny"
2104disables multiple windows for a really small Vim.
2105
2106For the tiny version or when FEAT_WINDOWS is not defined: Firstwin and lastwin
2107are equal to curwin and don't use w_next and w_prev.
2108
2109Added the +listcmds feature. Can be used to compile without the Vim commands
2110that manipulate the buffer list and argument list (the buffer list itself is
2111still there, can't do without it).
2112
2113Added the +vreplace feature. It is disabled in the "small" version to avoid
2114that the 16 bit DOS version runs out of memory.
2115
2116Removed GTK+ support for versions older than 1.1.16.
2117
2118The configure checks for using PTYs have been improved. Code taken from a
2119recent version of screen.
2120
2121Added configure options to install Vim, Ex and View under another name (e.g.,
2122vim6, ex6 and view6).
2123
2124Added "--with-global-runtime" configure argument. Allows specifying the
2125global directory used in the 'runtimepath' default.
2126
2127Made enabling the SNiFF+ interface possible with a configure argument.
2128
2129Configure now always checks /usr/local/lib for libraries and
2130/usr/local/include for include files. Helps finding the stuff for iconv() and
2131gettext().
2132
2133Moved the command line history stuff into the +cmdline_hist feature, to
2134exclude the command line history from the tiny version.
2135
2136MS-Windows: Moved common functions from Win16 and Win32 to os_mswin.c. Avoids
2137having to change two files for one problem. (Vince Negri)
2138
2139Moved common code from gui_w16.c and gui_w32.c to gui_w48.c (Vince Negri)
2140
2141The jumplist is now a separate feature. It is disabled for the "small"
2142version (16 bit MS-DOS).
2143
2144Renamed all types ending in _t to end in _T. Avoids potential problems with
2145system types.
2146
2147Added a configure check for X11 header files that implicitly define the return
2148type to int. (Steve Wall)
2149
2150"make doslang" in the top directory makes an archive with the menu and .mo
2151files for Windows. This uses the files generated on Unix, these should work
2152on MS-Windows as well.
2153
2154Merged a large part of os_vms.c with os_unix.c. The code was duplicated in
2155the past which made maintenance more work. (Zoltan Arpadffy)
2156
2157Updated the Borland C version 5 Makefile: (Dan Sharp)
2158- Fixed the Perl build
2159- Added python and tcl builds
2160- Added dynamic perl and dynamic python builds
2161- Added uninstal.exe build
2162- Use "yes" and "no" for the options, like in Make_mvc.mak.
2163
2164Win32: Merged Make_gvc.mak and Make_ovc.mak into one file: Make_ivc.mak. It's
2165much smaller, many unnecessary text has been removed. (Walter Briscoe)
2166Added Make_dvc.mak to be able to debug exe generated with Make_mvc.mak in
2167MS-Devstudio. (Walter Briscoe)
2168
2169MS-Windows: The big gvim.exe, which includes OLE, now also includes
2170dynamically loaded Tcl, Perl and Python. This uses ActivePerl 5.6.1,
2171ActivePython 2.1.1 and ActiveTCL 8.3.3
2172
2173Added AC_EXEEXT to configure.in, to check if the executable needs ".exe" for
2174Cygwin or MingW. Renamed SUFFIX to EXEEXT in Makefile.
2175
2176Win32: Load comdlg32.dll delayed for faster startup. Only when using VC 6.
2177(Vipin Aravind)
2178
2179Win32: When compiling with Borland, allow using IME. (Yasuhiro Matsumoto)
2180
2181Win32: Added Makefile for Borland 5 to compile gvimext.dll. (Yasuhiro
2182Matsumoto)
2183
2184==============================================================================
2185BUG FIXES *bug-fixes-6*
2186
2187When checking the command name for "gvim", "ex", etc. ignore case. Required
2188for systems where case is ignored in command names.
2189
2190Search pattern "[a-c-e]" also matched a 'd' and didn't match a '-'.
2191
2192When double-clicking in another window, wasn't recognized as double click,
2193because topline is different. Added set_mouse_topline().
2194
2195The BROKEN_LOCALE check was broken. (Marcin Dalecki)
2196
2197When "t_Co" is set, the default colors remain the same, thus wrong. Reset the
2198colors after changing "t_Co". (Steve Wall)
2199
2200When exiting with ":wqall" the messages about writing files could overwrite
2201each other and be lost forever.
2202
2203When starting Vim with an extremely long file name (around 1024 characters) it
2204would crash. Added a few checks to avoid buffer overflows.
2205
2206CTRL-E could get stuck in a file with very long lines.
2207
2208":au syntax<Tab>" expanded event names while it should expand groups starting
2209with "syntax".
2210
2211When expanding a file name caused an error (e.g., for <amatch>) it was
2212produced even when inside an "if 0".
2213
2214'cindent' formatted C comments differently from what the 'comments' option
2215specified. (Steve Wall)
2216
2217Default for 'grepprg' didn't include the file name when only grepping in one
2218file. Now /dev/null has been added for Unix.
2219
2220Opening the option window twice caused trouble. Now the cursor goes to the
2221existing option window.
2222
2223":sview" and ":view" didn't set 'readonly' for an existing buffer. Now do set
2224'readonly', unless the buffer is also edited in another window.
2225
2226GTK GUI: When 'guioptions' excluded 'g', the more prompt caused the toolbar
2227and menubar to disappear and resize the window (which clears the text).
2228Now always grey-out the toplevel menus to avoid that the menubar changes size
2229or disappears.
2230
2231When re-using the current buffer for a new buffer, buffer-local variables were
2232not deleted.
2233
2234GUI: when 'scrolloff' is 0 dragging the mouse above the window didn't cause a
2235down scroll. Now pass on a mouse event with mouse_row set to -1.
2236
2237Win32: Console version didn't work on telnet, because of switching between two
2238console screens. Now use one console screen and save/restore the contents
2239when needed. (Craig Barkhouse)
2240
2241When reading a file the magic number for encryption was included in the file
2242length. (Antonio Colombo)
2243
2244The quickfix window contained leading whitespace and NULs for multi-line
2245messages. (David Harrison)
2246
2247When using cscope, redundant tags were removed. This caused a numbering
2248problem, because they were all listed. Don't remove redundant cscope tags.
2249(David Bustos).
2250
2251Cscope: Test for which matches are in the current buffer sometimes failed,
2252causing a jump to another match than selected. (David Bustos)
2253
2254Win32: Buffer overflow when adding a charset name in a font.
2255
2256'titlestring' and 'iconstring' were evaluating an expression in the current
2257context, which could be a user function, which is a problem for local
2258variables vs global variables.
2259
2260Win32 GUI: Mapping <M-F> didn't work. Now handle SHIFT and CTRL in
2261_OnSysChar().
2262
2263Win32 GUI: (on no file), :vs<CR>:q<CR> left a trail of pixels down the middle.
2264Could also happen for the ruler. screen_puts() didn't clear the right char in
2265ScreenLines[] for the bold trick.
2266
2267Win32: ":%!sort|uniq" didn't work, because the input file name touches the
2268"|". Insert a space before the "|".
2269
2270OS/2: Expanding wildcards included non-existing files. Caused ":runtime" to
2271fail, which caused syntax highlighting to fail.
2272
2273Pasting a register containing CTRL-R on the command line could cause an
2274endless loop that can't be interrupted. Now it can be stopped with CTRL-C.
2275
2276When 'verbose' is set, a message for file read/write could overwrite the
2277previous message.
2278When 'verbose' is set, the header from ":select" was put after the last
2279message. Now start a new line.
2280
2281The hit-enter prompt reacted to the response of the t_RV string, causing
2282messages at startup to disappear.
2283
2284When t_Co was set to 1, colors were still used. Now only use color when t_Co
2285> 1.
2286
2287Listing functions with ":function" didn't quit when 'q' or ':' was typed at
2288the more prompt.
2289
2290Use mkstemp() instead of mktemp() when it's available, avoids a warning for
2291linking on FreeBSD.
2292
2293When doing Insert mode completion it's possible that b_sfname is NULL. Don't
2294give it to printf() for the "Scanning" message.
2295
2296":set runtimepath-=$VIMRUNTIME" didn't work, because expansion of wildcards
2297was done after trying to remove the string. Now for ":set opt+=val" and ":set
2298opt-=val" the expansion of wildcards is done before adding or removing "val".
2299
2300Using CTRL-V with the "r" command with a blockwise Visual selection inserted a
2301CTRL-V instead of getting a special character.
2302
2303Unix: Changed the order of libraries: Put -lXdmcp after -lX11 and -lSM -lICE
2304after -lXdmcp. Should fix link problem on HP-UX 10.20.
2305
2306Don't remove the last "-lm" from the link line. Vim may link but fail later
2307when the GUI starts.
2308
2309When the shell returns with an error when trying to expand wildcards, do
2310include the pattern when the "EW_NOTFOUND" flag was set.
2311When expanding wildcards with the shell fails, give a clear error message
2312instead of just "1 returned".
2313
2314Selecting a Visual block, with the start partly on a Tab, deleting it leaves
2315the cursor too far to the left. Causes "s" to work in the wrong position.
2316
2317Pound sign in normal.c caused trouble on some compilers. Use 0xA3 instead.
2318
2319Warning for changing a read-only file wasn't given when 'insertmode' was set.
2320
2321Win32: When 'shellxquote' is set to a double quote (e.g., using csh), ":!start
2322notepad file" doesn't work. Remove the double quotes added by 'shellxquote'
2323when using ":!start". (Pavol Juhas)
2324
2325The "<f-args>" argument of ":command" didn't accept Tabs for white space.
2326Also, don't add an empty argument when there are trailing blanks.
2327
2328":e test\\je" edited "test\je", but ":next test\\je" edited "testje".
2329Backslashes were removed one time too many for ":next".
2330
2331VMS: "gf" didn't work properly. Use vms_fixfilename() to translate the file
2332name. (Zoltan Arpadffy)
2333
2334After ":hi Normal ctermbg=black ctermfg=white" and suspending Vim not all
2335characters are redrawn with the right background.
2336
2337When doing "make test" without +eval or +windows feature, many tests failed.
2338Now have test1 generate a script to copy the correct output, so that a test
2339that doesn't work is skipped.
2340
2341On FreeBSD the Perl interface added "-lc" to the link command and Python added
2342"-pthread". These two don't work together, because the libc_r library should
2343be used. Removed "-lc" from Perl, it should not be needed.
2344Also: Add "-pthread" to $LIBS, so that the checks for functions is done with
2345libc_r. Sigaltstack() appears to be missing from libc_r.
2346
2347The Syntax sub-menus were getting too long, reorganized them and added another
2348level for some languages.
2349
2350Visual block "r"eplace didn't work well when a Tab is partly included.
2351(Matthias Kramm)
2352
2353When yanking a Visual block, where some lines end halfway the block, putting
2354the text somewhere else doesn't insert a block. Padd with spaces for missing
2355characters. Added "y_width" to struct yankreg. (Matthias Kramm)
2356
2357If a substitute string has a multibyte character after a backslash only the
2358first byte of it was skipped. (Muraoka Taro)
2359
2360Win32: Numeric keypad keys were missing from the builtin termcap entry.
2361
2362When a file was read-only ":wa!" didn't force it to be written. (Vince Negri)
2363
2364Amiga: A file name starting with a colon was considered absolute but it isn't.
2365Amiga: ":pwd" added a slash when in the root of a drive.
2366
2367Don't let 'ttymouse' default to "dec" when compiled with dec mouse support.
2368It breaks the gpm mouse (Linux console).
2369
2370The prototypes for the Perl interface didn't work for threaded Perl. Added a
2371sed command to remove the prototypes from proto/if_perl.pro and added them
2372manually to if_perl.xs.
2373
2374When ":w!" resets the 'readonly' option the title and status lines were not
2375updated.
2376
2377":args" showed the current file when the argument list was empty. Made this
2378work like Vi: display nothing.
2379
2380"99:<C-U>echo v:count" echoed "99" in Normal mode, but 0 in Visual mode.
2381Don't set v:count when executing a stuffed command.
2382
2383Amiga: Got a requester for "home:" because it's in the default runtime path.
2384Don't bring up a requester when searching for a file in 'path', sourcing the
2385.vimrc file or using ":runtime".
2386
2387Win16 and Win32: Considered a file "\path\file" absolute. Can cause the same
2388file to appear as two different buffers.
2389
2390Win32: Renaming a file to an empty string crashed Vim. Happened when using
2391explorer.vim and hitting ESC at the rename prompt.
2392
2393Win32: strftime() crashed when called with a "-1" value for the time.
2394
2395Win32 with Borland compiler: mch_FullName() didn't work, caused tag file not
2396to be found.
2397
2398Cscope sometimes jumped to the wrong tag. (David Bustos)
2399
2400OS/2: Could not find the tags file. mch_expand_wildcards() added another
2401slash to a directory name.
2402
2403When using ">>" the `] mark was not in the last column.
2404
2405When Vim was compiled without menu support, filetype.vim was still trying to
2406source the menu.vim script. (Rafael Garcia-Suarez)
2407
2408":ptag" added an item to the tag stack.
2409
2410Win32 IME: "gr" didn't use IME mode.
2411
2412In the "vim --help" message the term "options" was used for arguments. That's
2413confusing, call them "arguments".
2414
2415When there are two windows, and a BufUnload autocommand for closing window #1
2416closed window #2, Vim would crash.
2417
2418When there is a preview window and only one other window, ":q" wouldn't exit.
2419
2420In Insert mode, when cancelling a digraph with ESC, the '?' wasn't removed.
2421
2422On Unix glob(".*") returned "." and "..", on Windows it didn't. On Windows
2423glob("*") also returned files starting with a dot. Made this work like Unix
2424on all systems.
2425
2426Win32: Removed old code to open a console. Vimrun is now used and works fine.
2427
2428Compute the room needed by the intro message accurately, so that it also fits
2429on a 25 line console. (Craig Barkhouse)
2430
2431":ptnext" was broken. Now remember the last tag used in the preview window
2432separately from the tagstack.
2433
2434Didn't check for "-display" being the last argument. (Wichert Akkerman)
2435
2436GTK GUI: When starting "gvim" under some conditions there would be an X error.
2437Don't replace the error handler when creating the xterm clipboard. (Wichert
2438Akkerman)
2439
2440Adding a space after a help tag caused the tag not to be found. E.g., ":he
2441autoindent ".
2442
2443Was trying to expand a URL into a full path name. On Windows this resulted in
2444the current directory to be prepended to the URL. Added vim_isAbsName() and
2445vim_FullName() to avoid that various machine specific functions do it
2446differently.
2447
2448":n *.c" ":cd .." ":n" didn't use the original directory of the file. Vi only
2449does it for the current file (looks like a bug). Now remember the buffer used
2450for the entry in the argument list and use it's name (adjusted when doing
2451":cd"), unless it's deleted.
2452
2453When inserting a special key as its name ("<F8>" as four characters) after
2454moving around in Insert mode, undo didn't work properly.
2455
2456Motif GUI: When using the right mouse button, for some people gvim froze for
2457a couple of seconds (Motif 1.2?). This doesn't happen when there is no Popup
2458menu. Solved by only creating a popup menu when 'mousemodel' is "popup" or
2459"popup_setpos". (David Harrison)
2460
2461Motif: When adding many menu items, the "Help" menu disappeared but the
2462menubar didn't wrap. Now manually set the menubar height.
2463
2464When using <BS> in Insert mode to remove a line break, or using "J" to join
2465lines, the cursor could end up halfway a multi-byte character. (Muraoka Taro)
2466
2467Removed defining SVR4 in configure. It causes problems for some X header
2468files and doesn't appear to be used anywhere.
2469
2470When 'wildignore' is used, 'ignorecase' for a tag match was not working.
2471
2472When 'wildignore' contains "*~" it was impossible to edit a file ending in a
2473"~". Now don't recognize a file ending in "~" as containing wildcards.
2474
2475Disabled the mouse code for OS/2. It was not really used.
2476
2477":mksession" always used the full path name for a buffer, also when the short
2478name could be used.
2479":mkvimrc" and ":mksession" didn't save 'wildchar' and 'pastetoggle' in such a
2480way that they would be restored. Now use the key name if possible, this is
2481portable.
2482
2483After recovering a file and abandoning it, an ":edit" command didn't give the
2484ATTENTION prompt again. Would be useful to be able to delete the file in an
2485easy way. Reset the BF_RECOVERED flag when unloading the buffer.
2486
2487histdel() could match or ignore case, depending on what happened before it.
2488Now always match case.
2489
2490When a window size was specified when splitting a window, it would still get
2491the size from 'winheight' or 'winwidth' if it's larger.
2492
2493When using "append" or "insert" inside a function definition, a line starting
2494with "function" or "endfunction" caused confusion. Now recognize the commands
2495and skip lines until a ".".
2496
2497At the end of any function or sourced file need_wait_return could be reset,
2498causing messages to disappear when redrawing.
2499
2500When in a while loop the line number for error messages stayed fixed. Now the
2501line number is remembered in the while loop.
2502
2503"cd c:/" didn't work on MS-DOS. mch_isdir() removed a trailing slash.
2504
2505MS-Windows: getftime() didn't work when a directory had a trailing slash or
2506backslash. Didn't show the time in the explorer because of this.
2507
2508When doing wildcard completion, a directory "a/" sorted after "a-b". Now
2509recognize path separators when sorting files.
2510
2511Non-Unix systems: When editing "c:/dir/../file" and "c:/file" they were
2512created as different buffers, although it's the same file. Expand to a full
2513file name also when an absolute name contains "..".
2514
2515"g&" didn't repeat the last substitute properly.
2516
2517When 'clipboard' was set to "unnamed", a "Y" command would not write to "0.
2518Now make a copy of register 0 to the clipboard register.
2519
2520When the search pattern matches in many ways, it could not always be
2521interrupted with a CTRL-C. And CTRL-C would have to be hit once for every
2522line when 'hlsearch' is on.
2523When 'incsearch' is on and interrupting the search for a match, don't abandon
2524the command line.
2525
2526When turning a directory name into a full path, e.g., with fnamemodify(),
2527sometimes a slash was added. Make this consistent: Don't add a slash.
2528
2529When a file name contains a "!", using it in a shell command will cause
2530trouble: ":!cat %". Escape the "!" to avoid that. Escape it another time
2531when 'shell' contains "sh".
2532
2533Completing a file name that has a tail that starts with a "~" didn't work:
2534":e view/~<Tab>".
2535
2536Using a ":command" argument that contains < and > but not for a special
2537argument was not skipped properly.
2538
2539The DOS install program: On Win2000 the check for a vim.exe or gvim.exe in
2540$PATH didn't work, it always found it in the current directory.
2541Rename the vim.exe in the current dir to avoid this. (Walter Briscoe)
2542
2543In the MS-DOS/Windows install program, use %VIM% instead of an absolute path,
2544so that moving Vim requires only one change in the batch file.
2545
2546Mac: mch_FullName() changed the "fname" argument and didn't always initialize
2547the buffer.
2548
2549MS-DOS: mch_FullName() didn't fix forward/backward slashes in an absolute file
2550name.
2551
2552"echo expand("%:p:h")" with an empty file name removed one directory name on
2553MS-DOS. For Unix, when the file name is a directory, the directory name was
2554removed. Now make it consistent: "%:p" adds a path separator for all systems,
2555but no path separator is added in other situations.
2556
2557Unix: When checking for a CTRL-C (could happen any time) and there is an X
2558event (e.g., clipboard updated) and there is typeahead, Vim would hang until a
2559character was typed.
2560
2561MS-DOS, MS-Windows and Amiga: expanding "$ENV/foo" when $ENV ends in a colon,
2562had the slash removed.
2563
2564":he \^=" gave an error for using \_. ":he ^=" didn't find tag :set^=. Even
2565"he :set^=" didn't find it.
2566
2567A tags file name "D:/tags" was used as file "tags" in "D:". That doesn't work
2568when the current path for D: isn't the root of the drive.
2569
2570Removed calls to XtInitializeWidgetClass(), they shouldn't be necessary.
2571
2572When using a dtterm or various other color terminals, and the Normal group has
2573been set to use a different background color, the background wouldn't always
2574be displayed with that color. Added check for "ut" termcap entry: If it's
2575missing, clearing the screen won't give us the current background color. Need
2576to draw each character instead. Vim now also works when the "cl" (clear
2577screen) termcap entry is missing.
2578
2579When repeating a "/" search command with a line offset, the "n" did use the
2580offset but didn't make the motion linewise. Made "d/pat/+2" and "dn" do the
2581same.
2582
2583Win32: Trying to use ":tearoff" for a menu that doesn't exist caused a crash.
2584
2585OpenPTY() didn't work on Sequent. Add a configure check for getpseudotty().
2586
2587C-indenting: Indented a line starting with ")" with the matching "(", but not
2588a line starting with "x)" looks strange. Also compute the indent for aligning
2589with items inside the () and use the lowest indent.
2590
2591MS-DOS and Windows: ":n *.vim" also matched files ending in "~".
2592Moved mch_expandpath() from os_win16.c and os_msdos.c to misc1.c, they are
2593equal.
2594
2595Macintosh: (Dany St-Amant)
2596- In Vi-compatible mode didn't read files with CR line separators.
2597- Fixed a bug in the handling of Activate/Deactivate Event
2598- Fixed a bug in gui_mch_dialog (using wrong pointer)
2599
2600Multibyte GDK XIM: While composing a multibyte-word, if user presses a
2601mouse button, then the word is removed. It should remain and composing end.
2602(Sung-Hyun Nam)
2603
2604MS-DOS, MS-Windows and OS/2: When reading from stdin, automatic CR-LF
2605conversion by the C library got in the way of detecting a "dos" 'fileformat'.
2606
2607When 'smartcase' is set, patterns with "\S" would also make 'ignorecase'
2608reset.
2609
2610When clicking the mouse in a column larger than 222, it moved to the first
2611column. Can't encode a larger number in a character. Now limit the number to
2612222, don't jump back to the first column.
2613
2614GUI: In some versions CSI would cause trouble, either when typed directly or
2615when part of a multi-byte sequence.
2616
2617When using multibyte characters in a ":normal" command, a trailing byte that
2618is CSI or K_SPECIAL caused problems.
2619
2620Wildmenu didn't handle multi-byte characters.
2621
2622":sleep 10" could not be interrupted on Windows, while "gs" could. Made them
2623both work the same.
2624
2625Unix: When waiting for a character is interrupted by an X-windows event (e.g.,
2626to obtain the contents of the selection), the wait time would not be honored.
2627A message could be overwritten quickly. Now compute the remaining waiting
2628time.
2629
2630Windows: Completing "\\share\c$\S" inserted a backslash before the $ and then
2631the name is invalid. Don't insert the backslash.
2632
2633When doing an auto-write before ":make", IObuff was overwritten and the wrong
2634text displayed later.
2635
2636On the Mac the directories "c:/tmp" and "c:/temp" were used in the defaults
2637for 'backupdir' and 'directory', they don't exist.
2638
2639The check for a new file not to be on an MS-DOS filesystem created the file
2640temporarily, which can be slow. Don't do this if there is another check for
2641the swap file being on an MS-DOS filesystem.
2642
2643Don't give the "Changing a readonly file" warning when reading from stdin.
2644
2645When using the "Save As" menu entry and not entering a file name, would get an
2646error message for the trailing ":edit #". Now only do that when the
2647alternate file name was changed.
2648
2649When Vim owns the X11 selection and is being suspended, an application that
2650tries to use the selection hangs. When Vim continues it could no longer
2651obtain the selection. Now give up the selection when suspending.
2652
2653option.h and globals.h were included in some files, while they were already
2654included in vim.h. Moved the definition of EXTERN to vim.h to avoid doing it
2655twice.
2656
2657When repeating an operator that used a search pattern and the search pattern
2658contained characters that have a special meaning on the cmdline (e.g., CTRL-U)
2659it didn't work.
2660
2661Fixed various problems with using K_SPECIAL (0x80) and CSI (0x9b) as a byte in
2662a (multibyte) character. For example, the "r" command could not be repeated.
2663
2664The DOS/Windows install program didn't always work from a directory with a
2665long filename, because $VIM and the executable name would not have the same
2666path.
2667
2668Multi-byte:
2669- Using an any-but character range [^x] in a regexp didn't work for UTF-8.
2670 (Muraoka Taro)
2671- When backspacing over inserted characters in Replace mode multi-byte
2672 characters were not handled correctly. (Muraoka Taro)
2673- Search commands "#" and "*" didn't work with multibyte characters. (Muraoka
2674 Taro)
2675- Word completion in Insert mode didn't work with multibyte characters.
2676 (Muraoka Taro)
2677- Athena/Motif GUI: when 'linespace' is non-zero the cursor would be drawn too
2678 wide (number of bytes instead of cell width).
2679- When changing 'encoding' to "euc-jp" and inserting a character Vim would
2680 crash.
2681- For euc-jp characters positioning the cursor would sometimes be wrong.
2682 Also, with two characters with 0x8e leading byte only the first one would be
2683 displayed.
2684- When using DYNAMIC_ICONV on Win32 conversion might fail because of using the
2685 wrong error number. (Muraoka Taro)
2686- Using Alt-x in the GUI while 'encoding' was set to "utf-8" didn't produce
2687 the right character.
2688- When using Visual block selection and only the left halve of a double-wide
2689 character is selected, the highlighting continued to the end of the line.
2690- Visual-block delete didn't work properly when deleting the right halve of a
2691 double-wide character.
2692- Overstrike mode for the cmdline replaced only the first byte of a multibyte
2693 character.
2694- The cursor in Replace mode (also in the cmdline) was to small on a
2695 double-wide character.
2696- When a multibyte character contained a 0x80 byte, it didn't work (was using
2697 a CSI byte instead). (Muraoka Taro)
2698- Wordwise selection with the mouse didn't work.
2699- Yanking a modeless selection of multi-byte characters didn't work.
2700- When 'selection' is "exclusive", selecting a word that ends in a multi-byte
2701 character used wrong highlighting for the following character.
2702
2703Win32 with Make_mvc.mak: Didn't compile for debugging. (Craig Barkhouse)
2704
2705Win32 GUI: When "vimrun.exe" is used to execute an external command, don't
2706give a message box with the return value, it was already printed by vimrun.
2707Also avoid printing the return value of the shell when ":silent!" is used.
2708
2709Win32: selecting a lot of text and using the "find/replace" dialog caused a
2710crash.
2711
2712X11 GUI: When typing a character with the 8th bit set and the Meta/Alt
2713modifier, the modifier was removed without changing the character.
2714
2715Truncating a message to make it fit on the command line, using "..." for the
2716middle, didn't always compute the space correctly.
2717
2718Could not imap <C-@>. Now it works like <Nul>.
2719
2720VMS:
2721- Fixed a few things for VAXC. os_vms_fix.com had some strange CTRL-M
2722 characters. (Zoltan Arpadffy and John W. Hamill)
2723- Added VMS-specific defaults for the 'isfname' and 'isprint' options.
2724 (Zoltan Arpadffy)
2725- Removed os_vms_osdef.h, it's no longer used.
2726
2727The gzip plugin used a ":normal" command, this doesn't work when dropping a
2728compressed file on Vim.
2729
2730In very rare situations a binary search for a tag would fail, because an
2731uninitialized value happens to be half the size of the tag file. (Narendran)
2732
2733When using BufEnter and BufLeave autocommands to enable/disable a menu, it
2734wasn't updated right away.
2735
2736When doing a replace with the "c"onfirm flag, the cursor was positioned after
2737the ruler, instead of after the question. With a long replacement string the
2738screen could scroll up and cause a "more" prompt. Now the message is
2739truncated to make it fit.
2740
2741Motif: The autoconf check for the Xp library didn't work.
2742
2743When 'verbose' is set to list lines of a sourced file, defining a function
2744would reset the counter used for the "more" prompt.
2745
2746In the Win32 find/replace dialog, a '/' character caused problems. Escape it
2747with a backslash.
2748
2749Starting a shell with ":sh" was different from starting a shell for CTRL-Z
2750when suspending doesn't work. They now work the same way.
2751
2752Jumping to a file mark while in a changed buffer gave a "mark not set" error.
2753
2754":execute histget("cmd")" causes an endless loop and crashed Vim. Now catch
2755all commands that cause too much recursiveness.
2756
2757Removed "Failed to open input method" error message, too many people got this
2758when they didn't want to use a XIM.
2759
2760GUI: When compiled without the +windows feature, the scrollbar would start
2761below line one.
2762
2763Removed the trick with redefining character class functions from regexp.c.
2764
2765Win32 GUI: Find dialog gives focus back to main window, when typing a
2766character mouse pointer is blanked, it didn't reappear when moving it in the
2767dialog window. (Vince Negri)
2768
2769When recording and typing a CTRL-C, no character was recorded. When in Insert
2770mode or cancelling half a command, playing back the recorded sequence wouldn't
2771work. Now record the CTRL-C.
2772
2773When the GUI was started, mouse codes for DEC and netterm were still checked
2774for.
2775
2776GUI: When scrolling and 'writedelay' is non-zero, the character under the
2777cursor was displayed in the wrong position (one line above/below with
2778CTRL-E/CTRL-Y).
2779
2780A ":normal" command would reset the 'scrollbind' info. Causes problems when
2781using a ":normal" command in an autocommand for opening a file.
2782
2783Windows GUI: a point size with a dot, like "7.5", wasn't recognized. (Muraoka
2784Taro)
2785
2786When 'scrollbind' wasn't set would still remember the current position,
2787wasting time.
2788
2789GTK: Crash when 'shell' doesn't exist and doing":!ls". Use _exit() instead of
2790exit() when the child couldn't execute the shell.
2791
2792Multi-byte:
2793- GUI with double-byte encoding: a mouse click in left halve of double-wide
2794 character put the cursor in previous char.
2795- Using double-byte encoding and 'selection' is "exclusive": "vey" and "^Vey"
2796 included the character after the word.
2797- When using a double-byte encoding and there is a lead byte at the end of the
2798 line, the preceding line would be displayed. "ga" also showed wrong info.
2799- "gf" didn't include multi-byte characters before the cursor properly.
2800 (Muraoka Taro)
2801
2802GUI: The cursor was sometimes not removed when scrolling. Changed the policy
2803from redrawing the cursor after each call to gui_write() to only update it at
2804the end of update_screen() or when setting the cursor position. Also only
2805update the scrollbars at the end of update_screen(), that's the only place
2806where the window text may have been scrolled.
2807
2808Formatting "/*<Tab>long text", produced "* <Tab>" in the next line. Now
2809remove the space before the Tab.
2810Formatting "/*<Tab> long text", produced "* <Tab> long text" in the next
2811line. Now keep the space after the Tab.
2812
2813In some places non-ASCII alphabetical characters were accepted, which could
2814cause problems. For example, ":X" (X being such a character).
2815
2816When a pattern matches the end of the line, the last character in the line was
2817highlighted for 'hlsearch'. That looks wrong for "/\%3c". Now highlight the
2818character just after the line.
2819
2820Motif: If a dialog was closed by clicking on the "X" of the window frame Vim
2821would no longer respond.
2822
2823When using CTRL-X or CTRL-A on a number with many leading zeros, Vim would
2824crash. (Matsumoto)
2825
2826When 'insertmode' is set, the mapping in mswin.vim for CTRL-V didn't work in
2827Select mode. Insert mode wasn't restarted after overwriting the text.
2828Now allow nesting Insert mode with insert and change commands. CTRL-O
2829cwfoo<Esc> now also works.
2830
2831Clicking with the right mouse button in another window started Visual mode,
2832but used the start position of the current window. Caused ml_get errors when
2833the line number was invalid. Now stay in the same window.
2834
2835When 'selection' is "exclusive", "gv" sometimes selected one character fewer.
2836
2837When 'comments' contains more than one start/middle/end triplet, the optional
2838flags could be mixed up. Also didn't align the end with the middle part.
2839
2840Double-right-click in Visual mode didn't update the shown mode.
2841
2842When the Normal group has a font name, it was never used when starting up.
2843Now use it when 'guifont' and 'guifontset' are empty.
2844Setting a font name to a highlight group before the GUI was started didn't
2845work.
2846
2847"make test" didn't use the name of the generated Vim executable.
2848
2849'cindent' problems:
2850- Aligned with an "else" inside a do-while loop for a line below that loop.
2851 (Meikel Brandmeyer)
2852- A line before a function would be indented even when terminated with a
2853 semicolon. (Meikel Brandmeyer)
2854- 'cindent' gave too much indent to a line after a "};" that ends an array
2855 init.
2856- Support declaration lines ending in "," and "\". (Meikel Brandmeyer)
2857- A case statement inside a do-while loop was used for indenting a line after
2858 the do-while loop. (Meikel Brandmeyer)
2859- When skipping a string in a line with one double quote it could continue in
2860 the previous line. (Meikel Brandmeyer)
2861
2862When 'list' is set, 'hlsearch' didn't highlight a match at the end of the
2863line. Now highlight the '$'.
2864
2865The Paste menu item in the menu bar, the popup menu and the toolbar were all
2866different. Now made them all equal to how it was done in mswin.vim.
2867
2868st_dev can be smaller than "unsigned". The compiler may give an overflow
2869warning. Added a configure check for dev_t.
2870
2871Athena: closing a confirm() dialog killed Vim.
2872
2873Various typos in the documentation. (Matt Dunford)
2874
2875Python interface: The definition of _DEBUG could cause trouble, undefine it.
2876The error message for not being able to load the shared library wasn't
2877translated. (Muraoka Taro)
2878
2879Mac: (Dany St-Amant and Axel Kielhorn)
2880- Several fixes.
2881- Vim was eating 80% of the CPU time.
2882- The project os_mac.pbxproj didn't work, Moved it to a subdirectory.
2883- Made the menu priority work for the menubar.
2884- Fixed a problem with dragging the scrollbar.
2885- Cleaned up the various #ifdefs.
2886
2887Unix: When catching a deadly signal and we keep getting one use _exit() to
2888exit in a quick and dirty way.
2889
2890Athena menu ordering didn't work correctly. (David Harrison)
2891
2892A ":make" or ":grep" command with a long argument could cause a crash.
2893
2894Doing ":new file" and using "Quit" for the ATTENTION dialog still opened a new
2895window.
2896
2897GTK: When starting the GUI and there is an error in the .vimrc file, don't
2898present the wait-return prompt, since the message was given in the terminal.
2899
2900When there was an error in a .vimrc file the terminal where gvim was started
2901could be cleared. Set msg_row in main.c before writing any messages.
2902
2903GTK and X11 GUI: When trying to read characters from the user (e.g. with
2904input()) before the Vim window was opened caused Vim to hang when it was
2905started from the desktop.
2906
2907OS/390 uses 31 bit pointers. That broke some computations with MAX_COL.
2908Reduce MAX_COL by one bit for OS/390. (Ralf Schandl)
2909
2910When defining a function and it already exists, Vim didn't say it existed
2911until after typing it. Now do this right away when typing it.
2912
2913The message remembered for displaying later (keep_msg) was sometimes pointing
2914into a generic buffer, which might be changed by the time the message is
2915displayed. Now make a copy of the message.
2916
2917When using multi-byte characters in a menu and a trailing byte is a backslash,
2918the menu would not be created correctly. (Muraoka Taro)
2919Using a multibyte character in the substitute string where a trail byte is a
2920backslash didn't work. (Muraoka Taro)
2921
2922When setting "t_Co" in a vimrc file, then setting it automatically from an
2923xterm termresponse and then setting it again manually caused a crash.
2924
2925When getting the value of a string option that is not supported, the number
2926zero was returned. This breaks a check like "&enc == "asdf". Now an empty
2927string is returned for string options.
2928
2929Crashed when starting the GTK GUI while using 'notitle' in the vimrc, setting
2930'title' in the gvimrc and starting the GUI with ":gui". Closed the connection
2931to the X server accidentally.
2932
2933Had to hit return after selecting an entry for ":ts".
2934
2935The message from ":cn" message was sometimes cleared. Now display it after
2936redrawing if it doesn't cause a scroll (truncated when necessary).
2937
2938hangulin.c didn't compile when the GUI was disabled. Disable it when it won't
2939work.
2940
2941When setting a termcap option like "t_CO", the value could be displayed as
2942being for a normal key with a modifier, like "<M-=>".
2943
2944When expanding the argument list, entries which are a directory name did not
2945get included. This stopped "vim c:/" from opening the file explorer.
2946
2947":syn match sd "^" nextgroup=asdf" skipped the first column and matched the
2948nextgroup in the second column.
2949
2950GUI: When 'lazyredraw' is set, 'showmatch' didn't work. Required flushing
2951the output.
2952
2953Don't define the <NetMouse> termcode in an xterm, reduces the problem when
2954someone types <Esc> } in Insert mode.
2955
2956Made slash_adjust() work correctly for multi-byte characters. (Yasuhiro
2957Matsumoto)
2958Using a filename in Big5 encoding for autocommands didn't work (backslash in
2959trailbyte). (Yasuhiro Matsumoto)
2960
2961DOS and Windows: Expanding *.vim also matched file.vimfoo. Expand path like
2962Unix to avoid problems with Windows dir functions. Merged the DOS and Win32
2963functions.
2964
2965Win32: Gvimext could not edit more than a few files at once, the length of the
2966argument was fixed.
2967
2968"ls -1 * | xargs vim" worked, but the input was in cooked mode. Now switch to
2969raw mode when needed. Use dup() to copy the stderr file descriptor to stdin
2970to make shell commands work. No longer requires an external program to do
2971this.
2972
2973When using ":filetype off", ftplugin and indent usage would be switched off at
2974the same time. Don't do this, setting 'filetype' manually can still use them.
2975
2976GUI: When writing a double-byte character, it could be split up in two calls
2977to gui_write(), which doesn't work. Now flush before the output buffer
2978becomes full.
2979
2980When 'laststatus' is set and 'cmdheight' is two or bigger, the intro message
2981would be written over the status line.
2982The ":intro" command didn't work when there wasn't enough room.
2983
2984Configuring for Ruby failed with a recent version of Ruby. (Akinori Musha)
2985
2986Athena: When deleting the directory in which Vim was started, using the file
2987browser made Vim exit. Removed the use of XtAppError().
2988
2989When using autoconf 2.50, UNIX was not defined. Moved the comment for "#undef
2990UNIX" to a separate line.
2991
2992Win32: Disabled _OnWindowPosChanging() to make maximize work better.
2993
2994Win32: Compiling with VC 4.0 didn't work. (Walter Briscoe)
2995
2996Athena:
2997- Finally fixed the problems with deleting a menu. (David Harrison)
2998- Athena: When closing the confirm() dialog, worked like OK was pressed,
2999 instead of Cancel.
3000
3001The file explorer didn't work in compatible mode, because of line
3002continuation.
3003
3004Didn't give an error message for ":digraph a".
3005
3006When using Ex mode in the GUI and typing a special key, <BS> didn't delete it
3007correctly. Now display '?' for a special key.
3008
3009When an operator is pending, clicking in another window made it apply to that
3010window, even though the line numbers could be beyond the end of the buffer.
3011
3012When a function call doesn't have a terminating ")" Vim could crash.
3013
3014Perl interface: could crash on exit with perl 5.6.1. (Anduin Withers)
3015
3016Using %P in 'errorformat' wasn't handled correctly. (Tomas Zellerin)
3017
3018Using a syntax cluster that includes itself made Vim crash.
3019
3020GUI: With 'ls' set to 2, dragging the status line all the way up, then making
3021the Vim window smaller: Could not the drag status line anymore.
3022
3023"vim -c startinsert! file" placed cursor on last char of a line, instead of
3024after it. A ":set" command in the buffer menu set w_set_curswant. Now don't
3025do this when w_curswant is MAXCOL.
3026
3027Win32: When the gvim window was maximized and selecting another font, the
3028window would no longer fill the screen.
3029
3030The line with 'pastetoggle' in ":options" didn't show the right value when it
3031is a special key. Hitting <CR> didn't work either.
3032
3033Formatting text, resulting in a % landing in the first line, repeated the % in
3034the following lines, like it's the start of a comment.
3035
3036GTK: When adding a toolbar item while gvim is already running, it wasn't
3037possible to use the tooltip. Now it works by adding the tooltip first.
3038
3039The output of "g CTRL-G" mentioned "Char" but it's actually bytes.
3040
3041Searching for the end of a oneline region didn't work correctly when there is
3042an offset for the highlighting.
3043
3044Syntax highlighting: When synchronizing on C-comments, //*/ was seen as the
3045start of a comment.
3046
3047Win32: Without scrollbars present, the MS mouse scroll wheel didn't work.
3048Also handle the scrollbars when they are not visible.
3049
3050Motif: When there is no right scrollbar, the bottom scrollbar would still
Bram Moolenaarb11160e2005-01-04 21:31:43 +00003051leave room for it. (Marcin Dalecki)
Bram Moolenaar071d4272004-06-13 20:20:40 +00003052
3053When changing 'guicursor' and the value is invalid, some of the effects would
3054still take place. Now first check for errors and only make the new value
3055effective when it's OK.
3056
3057Using "A" In Visual block mode, appending to lines that don't extend into the
3058block, padding was wrong.
3059
3060When pasting a block of text, a character that occupies more than one screen
3061column could be deleted and spaces inserted instead. Now only do that with a
3062tab.
3063
3064Fixed conversion of documentation to HTML using Perl. (Dan Sharp)
3065
3066Give an error message when a menu name starts with a dot.
3067
3068Avoid a hang when executing a shell from the GUI on HP-UX by pushing "ptem"
3069even when sys/ptem.h isn't present.
3070
3071When creating the temp directory, make sure umask is 077, otherwise the
3072directory is not accessible when it was set to 0177.
3073
3074Unix: When resizing the window and a redraw is a bit slow, could get a window
3075resize event while redrawing, resulting in a messed up window. Any input
3076(e.g., a mouse click) would redraw.
3077
3078The "%B" item in the status line became zero in Insert mode (that's normal)
3079for another than the current window.
3080
3081The menu entries to convert to xxd and back didn't work in Insert mode.
3082
3083When ":vglobal" didn't find a line where the pattern doesn't match, the error
3084message would be the wrong way around.
3085
3086When ignoring a multi-line error message with "%-A", the continuation lines
3087would be used anyway. (Servatius Brandt)
3088
3089"grx" on a double-wide character inserted "x", instead of replacing the
3090character with "x ". "gR" on <xx> ('display' set the "uhex") didn't replace
3091at all. When doing "gRxx" on a control character the first "x" would be
3092inserted, breaking the alignment.
3093
3094Added "0)" to 'cinkeys', so that when typing a ) it is put in the same place
3095as where "==" would put it.
3096
3097Win32: When maximized, adding/removing toolbar didn't resize the text area.
3098
3099When using <C-RightMouse> a count was discarded.
3100
3101When typing CTRL-V and <RightMouse> in the command line, would insert
3102<LeftMouse>.
3103
3104Using "vis" or "vas" when 'selection' is exclusive didn't include the last
3105character.
3106
3107When adding to an option like 'grepprg', leading space would be lost. Don't
3108expand environment variables when there is no comma separating the items.
3109
3110GUI: When using a bold-italic font, would still use the bold trick and
3111underlining.
3112
3113Motif: The default button didn't work in dialogs, the first one was always
3114used. Had to give input focus to the default button.
3115
3116When using CTRL-T to jump within the same file, the '' mark wasn't set.
3117
3118Undo wasn't Vi compatible when using the 'c' flag for ":s". Now it undoes the
3119whole ":s" command instead of each confirmed replacement.
3120
3121The Buffers menu, when torn-off, disappeared when being refreshed. Add a
3122dummy item to avoid this.
3123
3124Removed calling msg_start() in main(), it should not be needed.
3125
3126vim_strpbrk() did not support multibyte characters. (Muraoka Taro)
3127
3128The Amiga version didn't compile, the code was too big for relative jumps.
3129Moved a few files from ex_docmd.c to ex_cmds2.c
3130
3131When evaluating the "= register resulted in the "= register being changed, Vim
3132would crash.
3133
3134When doing ":view file" and it fails, the current buffer was made read-only.
3135
3136Motif: For some people the separators in the toolbar disappeared when resizing
Bram Moolenaarb11160e2005-01-04 21:31:43 +00003137the Vim window. (Marcin Dalecki)
Bram Moolenaar071d4272004-06-13 20:20:40 +00003138
3139Win32 GUI: when setting 'lines' to a huge number, would not compute the
3140available space correctly. Was counting the menu height twice.
3141
3142Conversion of the docs to HTML didn't handle the line with the +quickfix tag
3143correctly. (Antonio Colombo)
3144
3145Win32: fname_case() didn't handle multi-byte characters correctly. (Yasuhiro
3146Matsumoto)
3147
3148The Cygwin version had trouble with fchdir(). Don't use that function for
3149Cygwin.
3150
3151The generic check in scripts.vim for "conf" syntax was done before some checks
3152in filetype.vim, resulting in "conf" syntax too often.
3153
3154Dos32: Typing lagged behind. Would wait for one biostick when checking if a
3155character is available.
3156
3157GTK: When setting 'columns' while starting up "gvim", would set the width of
3158the terminal it was started in.
3159
3160When using ESC in Insert mode, an autoindent that wraps to the next line
3161caused the cursor to move to the end of the line temporarily. When the
3162character before the cursor was a double-wide multi-byte character the cursor
3163would be on the right halve, which causes problems with some terminals.
3164
3165Didn't handle multi-byte characters correctly when expanding a file name.
3166(Yasuhiro Matsumoto)
3167
3168Win32 GUI: Errors generated before the GUI is decided to start were not
3169reported.
3170
3171globpath() didn't reserve enough room for concatenated results. (Anduin
3172Withers)
3173
3174When expanding an option that is very long already, don't do the expansion, it
3175would be truncated to MAXPATHL. (Anduin Withers)
3176
3177When 'selection' is "exclusive", using "Fx" in Visual mode only moved until
3178just after the character.
3179
3180When using IME on the console to enter a file name, the screen may scroll up.
3181Redraw the screen then. (Yasuhiro Matsumoto)
3182
3183Motif: In the find/replace dialog the "Replace" button didn't work first time,
3184second time it replaced all matches. Removed the use of ":s///c".
3185GTK: Similar problems with the find/replace dialog, moved the code to a common
3186function.
3187
Bram Moolenaarb11160e2005-01-04 21:31:43 +00003188X11: Use shared GC's for text. (Marcin Dalecki)
Bram Moolenaar071d4272004-06-13 20:20:40 +00003189
3190"]i" found the match under the cursor, instead of the first one below it.
3191Same for "]I", "] CTRL-I", "]d", "]D" and "] CTRL-D".
3192
3193Win16: When maximized and the font is changed, don't change the window size.
3194(Vince Negri)
3195
3196When 'lbr' is set, deleting a block of text could leave the cursor in the
3197wrong position.
3198
3199Win32: When opening a file with the "Edit with Vim" popup menu entry,
3200wildcards would cause trouble. Added the "--literal" argument to avoid
3201expanding file names.
3202
3203When using "gv", it didn't restore that "$" was used in Visual block mode.
3204
3205Win32 GUI: While waiting for a shell command to finish, the window wasn't
3206redrawn at all. (Yasuhiro Matsumoto)
3207
3208Syntax highlighting: A match that continues on a next line because of a
3209contained region didn't end when that region ended.
3210
3211The ":s" command didn't allow flags like 'e' and 'i' right after it.
3212
3213When using ":s" to split a line, marks were moved to the next line. Vi keeps
3214them in the first line.
3215
3216When using ":n" ":rew", the previous context mark was at the top of the file,
3217while Vi puts it in the same place as the cursor. Made it Vi compatible.
3218
3219Fixed Vi incompatibility: Text was not put in register 1 when using "c" and
3220"d" with a motion character, when deleting within one line with one of the
3221commands: % ( ) `<character> / ? N n { }
3222
3223Win32 GUI: The tooltip for tear-off items remained when the tear-off item was
3224no longer selected.
3225
3226GUI: When typing ":" at the more prompt, would return to Normal mode and not
3227redraw the screen.
3228
3229When starting Vim with an argument "-c g/at/p" the printed lines would
3230overwrite each other.
3231
3232BeOS: Didn't compile. Configure didn't add the os_beos files, the QNX check
3233removed them. Various changes to os_beos.cc. (Joshua Haberman)
3234Removed the check for the hardware platform, the BeBox has not been produced
3235for a long time now.
3236
3237Win32 GUI: don't use a message box when the shell returns an error code,
3238display the message in the Vim window.
3239
3240Make_mvc.mak always included "/debug" for linking. "GUI=no" argument didn't
3241work. Use "DEBUG=yes" instead of "DEBUG=1" to make it consistent. (Dan Sharp)
3242
3243When a line in the tags file ended in ;" (no TAB following) the command would
3244not be recognized as a search command.
3245
3246X11: The inputMethod resource never worked. Don't use the "none" input method
3247for SGI, it apparently makes the first character in Input method dropped.
3248
3249Fixed incorrect tests in os_mac.h. (Axel Kielhorn)
3250
3251Win32 console: When the console where Vim runs in is closed, Vim could hang in
3252trying to restore the window icon. (Yasuhiro Matsumoto)
3253
3254When using ":3call func()" or ":3,3call func() the line number was ignored.
3255
3256When 'showbreak' and 'linebreak' were both set, Visual highlighting sometimes
3257continued until the end of the line.
3258
3259GTK GUI: Tearoff items were added even when 'guioptions' didn't contain 't'
3260when starting up.
3261
3262MS-Windows: When the current directory includes a "~", searching files with
3263"gf" or ":find" didn't work. A "$" in the directory had the same problem.
3264Added mch_has_exp_wildcard() functions.
3265
3266When reducing the Vim window height while starting up, would get an
3267out-of-memory error message.
3268
3269When editing a very long search pattern, 'incsearch' caused the redraw of the
3270command line to fail.
3271
3272Motif GUI: On some systems the "Help" menu would not be on the far right, as
3273it should be. On some other systems (esp. IRIX) the command line would not
3274completely show. Solution is to only resize the menubar for Lesstif.
3275
3276Using "%" in a line that contains "\\" twice didn't take care of the quotes
3277properly. Now make a difference between \" and \\".
3278
3279For non-Unix systems a dummy file is created when finding a swap name to
3280detect a 8.3 filesystem. When there is an existing swap file, would get a
3281warning for the file being created outside of Vim. Also, when closing the Vim
3282window the file would remain.
3283
3284Motif: The menu height was always computed, using a "-menuheight" argument
3285was setting the room for the command line. Now make clear the argument is not
3286supported.
3287
3288For some (EBCDIC) systems, POUND was equal to '#'. Added an #if for that to
3289avoid a duplicate case in a switch.
3290
3291The GUI may have problems when forking. Always call _exit() instead of exit()
3292in the parent, the child will call exit().
3293
3294Win32 GUI: Accented characters were often wrong in dialogs and tearoff menus.
3295Now use CP_ACP instead of CP_OEMCP. (Vince Negri)
3296
3297When displaying text with syntax highlighting causes an error (e.g., running
3298out of stack) the syntax highlighting is disabled to avoid further messages.
3299
3300When a command in a .vimrc or .gvimrc causes an ATTENTION prompt, and Vim was
3301started from the desktop (no place to display messages) it would hang. Now
3302open the GUI window early to be able to display the messages and pop up the
3303dialog.
3304
3305"r<CR>" on a multi-byte character deleted only the first byte of the
3306character. "3r<CR>" deleted three bytes instead of three characters.
3307
3308When interrupting reading a file, Vi considers the buffer modified. Added the
3309'i' flag in 'cpoptions' flag for this (we don't want it modified to be able to
3310do ":q").
3311
3312When using an item in 'guicursor' that starts with a colon, Vim would get
3313stuck or crash.
3314
3315When putting a file mark in a help file and later jumping back to it, the
3316options would not be set. Extended the modeline in all help files to make
3317this work better.
3318
3319When a modeline contained "::" the local option values would be printed. Now
3320ignore it.
3321
3322Some help files did not use a 8.3 names, which causes problems when using
3323MS-DOS unzip. Renamed "multibyte.txt" to "mbyte.txt", "rightleft.txt" to
3324"rileft.txt", "tagsearch.txt" to "tagsrch.txt", "os_riscos.txt" to
3325"os_risc.txt".
3326
3327When Visual mode is blockwise, using "iw" or "aw" made it characterwise. That
3328doesn't seem right, only do this when in linewise mode. But then do it
3329always, not only when start and end of Visual mode are equal.
3330
3331When using "viw" on a single-letter word and 'selection' is exclusive, would
3332not include the word.
3333
3334When formatting text from Insert mode, using CTRL-O, could mess up undo
3335information.
3336
3337While writing a file (also for the backup file) there was no check for an
3338interrupt (hitting CTRL-C). Vim could hang when writing a large file over a
3339slow network, and moving the mouse didn't make it appear (when 'mousehide' is
3340set) and the screen wasn't updated in the GUI. Also allow interrupting when
3341syncing the swap file, it can take a long time.
3342
3343When using ":mksession" while there is help window, it would later be restored
3344to the right file but not marked as a help buffer. ":help" would then open
3345another window. Now use the value "help" for 'buftype' to mark a help buffer.
3346
3347The session file contained absolute path names in option values, that doesn't
3348work when the home directory depends on the situation. Replace the home
3349directory with ~/ when possible.
3350
3351When using 'showbreak' a TAB just after the shown break would not be counted
3352correctly, the cursor would be positioned wrong.
3353
3354With 'showbreak' set to "--->" or "------->" and 'sts' set to 4, inserting
3355tabs did not work right. Could cause a crash. Backspacing was also wrong,
3356could get stuck at a line break.
3357
3358Win32: crashed when tearing off a menu with over 300 items.
3359
3360GUI: A menu or toolbar item would appear when only a tooltip was defined for
3361it.
3362
3363When 'scrolloff' is non-zero and "$" is in 'cpoptions', using "s" while the
3364last line of the file is the first line on screen, the text wasn't displayed.
3365
3366When running "autoconf", delete the configure cache to force starting cleanly
3367when configure is run again.
3368
3369When changing the Normal colors for cterm, the value of 'background' was
3370changed even when the GUI was used.
3371
3372The warning for a missing vimrun.exe was always given on startup, but some
3373people just editing a file don't need to be bothered by it. Only show it when
3374vimrun would be used.
3375
3376When using "%" in a multibyte text it could get confused by trailbytes that
3377match. (Muraoka Taro)
3378
3379Termcap entry for RiscOS was wrong, using 7 and 8 in octal codes.
3380
3381Athena: The title of a dialog window and the file selector window were not
3382set. (David Harrison)
3383
3384The "htmlLink" highlight group specified colors, which gives problems when
3385using a color scheme. Added the "Underlined" highlight group for this.
3386
3387After using ":insert" or ":change" the '[ mark would be one line too low.
3388
3389When looking for the file name after a match with 'include' one character was
3390skipped. Same for 'define'.
3391
3392Win32 and DJGPP: When editing a file with a short name in a directory, and
3393editing the same file but using the long name, would end up with two buffers
3394on the same file.
3395
3396"gf" on a filename that starts with "../" only worked when the file being
3397edited is in the current directory. An include file search didn't work
3398properly for files starting with "../" or ".". Now search both relative to
3399the file and to the current directory.
3400
3401When 'printheader', 'titlestring', 'iconstring', 'rulerformat' or 'statusline'
3402contained "%{" but no following "}" memory was corrupted and a crash could
3403happen.
3404
3405":0append" and then inserting two lines did not redraw the blank lines that
3406were scrolled back down.
3407
3408When using insert mode completion in a narrow window, the message caused a
3409scroll up. Now shorten the message if it doesn't fit and avoid writing the
3410ruler over the message.
3411
3412XIM still didn't work correctly on some systems, especially SGI/IRIX. Added
3413the 'imdisable' option, which is set by default for that system.
3414
3415Patch 6.0aw.008
3416Problem: When the first character of a file name is over 127, the Buffers
3417 menu entry would get a negative priority and cause problems.
3418Solution: Reduce the multiplier for the first character when computing
3419 the hash value for a Buffers menu entry.
3420Files: runtime/menu.vim
3421
3422Patch 6.0aw.010
3423Problem: Win32: ":browse edit dir/dir" didn't work. (Vikas)
3424Solution: Change slashes to backslashes in the directory passed to the file
3425 browser.
3426Files: src/gui_w48.c
3427
3428Athena file browser: On some systems wcstombs() can't be used to get the
3429length of a multi-byte string. Use the maximum length then. (Yasuhiro
3430Matsumoto)
3431
3432Patch 6.0ax.001
3433Problem: When 'patchmode' is set, appending to a file gives an empty
3434 original file. (Ed Ralston)
3435Solution: Also make a backup copy when appending and 'patchmode' is set.
3436Files: src/fileio.c
3437
3438Patch 6.0ax.002
3439Problem: When 'patchmode' is set, appending to a compressed file gives an
3440 uncompressed original file. (Ed Ralston)
3441Solution: Create the original file before decompressing.
3442Files: runtime/plugin/gzip.vim
3443
3444Patch 6.0ax.005
3445Problem: Athena file selector keeps the title of the first invocation.
3446Solution: Set the title each time the file selector is opened. (David
3447 Harrison)
3448Files: src/gui_at_fs.c
3449
3450Patch 6.0ax.007
3451Problem: When using GPM (mouse driver in a Linux console) a double click is
3452 interpreted as a scroll wheel click.
3453Solution: Check if GPM is being used when deciding if a mouse event is for
3454 the scroll wheel.
3455Files: src/term.c
3456
3457Patch 6.0ax.010
3458Problem: The Edit.Save menu and the Save toolbar button didn't work when
3459 the buffer has no file name.
3460Solution: Use a file browser to ask for a file name. Also fix the toolbar
3461 Find item in Visual mode.
3462Files: runtime/menu.vim
3463
3464Patch 6.0ax.012
3465Problem: When 'cpoptions' contains "$", breaking a line for 'textwidth'
3466 doesn't redraw properly. (Stefan Schulze)
3467Solution: Remove the dollar before breaking the line.
3468Files: src/edit.c
3469
3470Patch 6.0ax.014
3471Problem: Win32: On Windows 98 ":make -f file" doesn't work when 'shell' is
3472 "command.com" and 'makeprg' is "nmake". The environment isn't
3473 passed on to "nmake".
3474Solution: Also use vimrun.exe when redirecting the output of a command.
3475Files: src/os_win32.c
3476
3477Patch 6.0ax.016
3478Problem: The version number was reported wrong in the intro screen.
3479Solution: Check for a version number with two additional letters.
3480Files: src/version.c
3481
3482Patch 6.0ax.019
3483Problem: When scrolling a window with folds upwards, switching to another
3484 vertically split window and back may not update the scrollbar.
3485Solution: Limit w_botline to the number of lines in the buffer plus one.
3486Files: src/move.c
3487
3488
3489==============================================================================
3490VERSION 6.1 *version-6.1*
3491
3492This section is about improvements made between version 6.0 and 6.1.
3493
3494This is a bug-fix release, there are not really any new features.
3495
3496
3497Changed *changed-6.1*
3498-------
3499
3500'iminsert' and 'imsearch' are no longer set as a side effect of defining a
3501language-mapping using ":lmap".
3502
3503
3504Added *added-6.1*
3505-----
3506
3507Syntax files:
3508ampl AMPL (David Krief)
3509ant Ant (Johannes Zellner)
3510baan Baan (Her van de Vliert)
3511cs C# (Johannes Zellner)
3512lifelines Lifelines (Patrick Texier)
3513lscript LotusScript (Taryn East)
3514moo MOO (Timo Frenay)
3515nsis NSIS (Alex Jakushev)
3516ppd Postscript Printer Description (Bjoern Jacke)
3517rpl RPL/2 (Joel Bertrand)
3518scilab Scilab (Benoit Hamelin)
3519splint Splint (Ralf Wildenhues)
3520sqlj SQLJ (Andreas Fischbach)
3521wvdial WvDial (Prahlad Vaidyanathan)
3522xf86conf XFree86 config (Nikolai Weibull)
3523xmodmap Xmodmap (Nikolai Weibull)
3524xslt Xslt (Johannes Zellner)
3525monk Monk (Mike Litherland)
3526xsd Xsd (Johannes Zellner)
3527cdl CDL (Raul Segura Acevedo)
3528sendpr Send-pr (Hendrik Scholz)
3529
3530Added indent file for Scheme. (Dorai Sitaram)
3531Added indent file for Prolog. (Kontra Gergely)
3532Added indent file for Povray (David Necas)
3533Added indent file for IDL (Aleksandar Jelenak)
3534Added C# indent and ftplugin scripts.
3535
3536Added Ukrainian menu translations. (Bohdan Vlasyuk)
3537Added ASCII version of the Czech menus. (Jiri Brezina)
3538
3539Added Simplified Chinese translation of the tutor. (Mendel L Chan)
3540
3541Added Russian keymap for yawerty keyboard.
3542
3543Added an explanation of using the vimrc file in the tutor.
3544Changed tutor.vim to get the right encoding for the Taiwainese tutor.
3545
3546Added Russian tutor. (Andrey Kiselev)
3547Added Polish tutor. (Mikolaj Machowski)
3548
3549Added darkblue color scheme. (Bohdan Vlasyuk)
3550
3551When packing the dos language archive automatically generate the .mo files
3552that are required.
3553
3554Improved NSIS script to support NSIS 180. Added icons for the
3555enabled/disabled status. (Mirek Pruchnik)
3556
3557cp1250 version of the Slovak message translations.
3558
3559Compiler plugins for IRIX compilers. (David Harrison)
3560
3561
3562Fixed *fixed-6.1*
3563-----
3564
3565The license text was updated to make the meaning clearer and make it
3566compatible with the GNU GPL. Otherwise distributors have a problem when
3567linking Vim with a GPL'ed library.
3568
3569When installing the "less.sh" script it was not made executable. (Chuck Berg)
3570
3571Win32: The "9" key on the numpad wasn't working. (Julian Kinraid)
3572
3573The NSIS install script didn't work with NSIS 1.80 or later. Also add
3574Vim-specific icons. (Pruchnik)
3575
3576The script for conversion to HTML contained an "if" in the wrong place.
3577(Michael Geddes)
3578
3579Allow using ":ascii" in the sandbox, it's harmless.
3580
3581Removed creat() from osdef2.h.in, it wasn't used and may cause a problem when
3582it's redefined to creat64().
3583
3584The text files in the VisVim directory were in "dos" format. This caused
3585problems when applying a patch. Now keep them in "unix" format and convert
3586them to "dos" format only for the PC archives.
3587
3588Add ruby files to the dos source archive, they can be used by Make_mvc.mak.
3589(Mirek Pruchnik)
3590
3591"cp -f" doesn't work on all systems. Change "cp -f" in the Makefile to "rm
3592-f" and "cp".
3593
3594Didn't compile on a Compaq Tandem Himalaya OSS. (Michael A. Benzinger)
3595
3596The GTK file selection dialog didn't include the "Create Dir", "Delete File"
3597and "Rename File" buttons.
3598
3599When doing ":browse source" the dialog has the title "Run Macro". Better
3600would be "Source Vim script". (Yegappan Lakshmanan)
3601
3602Win32: Don't use the printer font as default for the font dialog.
3603
3604"make doslang" didn't work when configure didn't run (yet). Set $MAKEMO to
3605"yes". (Mirek Pruchnik)
3606
3607The ToolBar TagJump item used "g]", which prompts for a selection even when
3608there is only one matching tag. Use "g<C-]>" instead.
3609
3610The ming makefile for message translations didn't have the right list of
3611files.
3612
3613The MS-Windows 3.1 version complains about LIBINTL.DLL not found. Compile
3614this version without message translations.
3615
3616The Borland 5 makefile contained a check for Ruby which is no longer needed.
3617The URLs for the TCL library was outdated. (Dan Sharp)
3618
3619The eviso.ps file was missing from the DOS runtime archive, it's needed for
3620printing PostScript in the 32bit DOS version.
3621
3622In menu files ":scriptencoding" was used in a wrong way after patch 6.1a.032
3623Now use ":scriptencoding" in the file where the translations are given. Do
3624the same for all menus in latin1 encoding.
3625
3626Included a lot of fixes for the Macintosh, mostly to make it work with Carbon.
3627(Dany StAmant, Axel Kielhorn, Benji Fisher)
3628
3629Improved the vimtutor shell script to use $TMPDIR when it exists, and delete
3630the copied file when exiting in an abnormal way. (Max Ischenko)
3631
3632When "iconv.dll" can't be found, try using "libiconv.dll".
3633
3634When encryption is used, filtering with a shell command wasn't possible.
3635
3636DJGPP: ":cd c:" always failed, can't get permissions for "c:".
3637Win32: ":cd c:/" failed if the previous current directory on c: had become
3638invalid.
3639
3640DJGPP: Shift-Del and Del both produce \316\123. Default mapping for Del is
3641wrong. Disabled it.
3642
3643Dependencies on header files in MingW makefile was wrong.
3644
3645Win32: Don't use ACL stuff for MSVC 4.2, it's not supported. (Walter Briscoe)
3646
3647Win32 with Borland: bcc.cfg was caching the value for $(BOR), but providing a
3648different argument to make didn't regenerate it.
3649
3650Win32 with MSVC: Make_ivc.mak generates a new if_ole.h in a different
3651directory, the if_ole.h in the src directory may be used instead. Delete the
3652distributed file.
3653
3654When a window is vertically split and then ":ball" is used, the window layout
3655is messed up, can cause a crash. (Muraoka Taro)
3656
3657When 'insertmode' is set, using File/New menu and then double clicking, "i" is
3658soon inserted. (Merlin Hansen)
3659
3660When Select mode is active and using the Buffers menu to switch to another
3661buffer, an old selection comes back. Reset VIsual_reselect for a ":buffer"
3662command.
3663
3664When Select mode is active and 'insertmode' is set, using the Buffers menu to
3665switch to another buffer, did not return to Insert mode. Make sure
3666"restart_edit" is set.
3667
3668When double clicking on the first character of a word while 'selection' is
3669"exclusive" didn't select that word.
3670
3671
3672Patch 6.0.001
3673Problem: Loading the sh.vim syntax file causes error messages . (Corinna
3674 Vinschen)
3675Solution: Add an "if". (Charles Campbell)
3676Files: runtime/syntax/sh.vim
3677
3678Patch 6.0.002
3679Problem: Using a '@' item in 'viminfo' doesn't work. (Marko Leipert)
3680Solution: Add '@' to the list of accepted items.
3681Files: src/option.c
3682
3683Patch 6.0.003
3684Problem: The configure check for ACLs on AIX doesn't work.
3685Solution: Fix the test program so that it compiles. (Tomas Ogren)
3686Files: src/configure.in, src/auto/configure
3687
3688Patch 6.0.004
3689Problem: The find/replace dialog doesn't reuse a previous argument
3690 properly.
3691Solution: After removing a "\V" terminate the string. (Zwane Mwaikambo)
3692Files: src/gui.c
3693
3694Patch 6.0.005
3695Problem: In Insert mode, "CTRL-O :ls" has a delay before redrawing.
3696Solution: Don't delay just after wait_return() was called. Added the
3697 did_wait_return flag.
3698Files: src/globals.h, src/message.c, src/normal.c, src/screen.c
3699
3700Patch 6.0.006
3701Problem: With a vertical split, 'number' set and 'scrolloff' non-zero,
3702 making the window width very small causes a crash. (Niklas
3703 Lindstrom)
3704Solution: Check for a zero width.
3705Files: src/move.c
3706
3707Patch 6.0.007
3708Problem: When setting 'filetype' while there is no FileType autocommand, a
3709 following ":setfiletype" would set 'filetype' again. (Kobus
3710 Retief)
3711Solution: Set did_filetype always when 'filetype' has been set.
3712Files: src/option.c
3713
3714Patch 6.0.008
3715Problem: 'imdisable' is missing from the options window. (Michael Naumann)
3716Solution: Add an entry for it.
3717Files: runtime/optwin.vim
3718
3719Patch 6.0.009
3720Problem: Nextstep doesn't have S_ISBLK. (John Beppu)
3721Solution: Define S_ISBLK using S_IFBLK.
3722Files: src/os_unix.h
3723
3724Patch 6.0.010
3725Problem: Using "gf" on a file name starting with "./" or "../" in a buffer
3726 without a name causes a crash. (Roy Lewis)
3727Solution: Check for a NULL file name.
3728Files: src/misc2.c
3729
3730Patch 6.0.011
3731Problem: Python: After replacing or deleting lines get an ml_get error.
3732 (Leo Lipelis)
3733Solution: Adjust the cursor position for deleted or added lines.
3734Files: src/if_python.c
3735
3736Patch 6.0.012
3737Problem: Polish translations contain printf format errors, this can result
3738 in a crash when using one of them.
3739Solution: Fix for translated messages. (Michal Politowski)
3740Files: src/po/pl.po
3741
3742Patch 6.0.013
3743Problem: Using ":silent! cmd" still gives some error messages, like for an
3744 invalid range. (Salman Halim)
3745Solution: Reset emsg_silent after calling emsg() in do_one_cmd().
3746Files: src/ex_docmd.c
3747
3748Patch 6.0.014
3749Problem: When 'modifiable' is off and 'virtualedit' is "all", "rx" on a TAB
3750 still changes the buffer. (Muraoka Taro)
3751Solution: Check if saving the line for undo fails.
3752Files: src/normal.c
3753
3754Patch 6.0.015
3755Problem: When 'cpoptions' includes "S" and "filetype plugin on" has been
3756 used, can get an error for deleting the b:did_ftplugin variable.
3757 (Ralph Henderson)
3758Solution: Only delete the variable when it exists.
3759Files: runtime/ftplugin.vim
3760
3761Patch 6.0.016
3762Problem: bufnr(), bufname() and bufwinnr() don't find unlisted buffers when
3763 the argument is a string. (Hari Krishna Dara)
3764 Also for setbufvar() and getbufvar().
3765Solution: Also find unlisted buffers.
3766Files: src/eval.c
3767
3768Patch 6.0.017
3769Problem: When 'ttybuiltin' is set and a builtin termcap entry defines t_Co
3770 and the external one doesn't, it gets reset to empty. (David
3771 Harrison)
3772Solution: Only set t_Co when it wasn't set yet.
3773Files: src/term.c
3774
3775Patch 6.0.018
3776Problem: Initializing 'encoding' may cause a crash when setlocale() is not
3777 used. (Dany St-Amant)
3778Solution: Check for a NULL pointer.
3779Files: src/mbyte.c
3780
3781Patch 6.0.019
3782Problem: Converting a string with multi-byte characters to a printable
3783 string, e.g., with strtrans(), may cause a crash. (Tomas Zellerin)
3784Solution: Correctly compute the length of the result in transstr().
3785Files: src/charset.c
3786
3787Patch 6.0.020
3788Problem: When obtaining the value of a global variable internally, could
3789 get the function-local value instead. Applies to using <Leader>
3790 and <LocalLeader> and resetting highlighting in a function.
3791Solution: Prepend "g:" to the variable name. (Aric Blumer)
3792Files: src/syntax.c, src/term.c
3793
3794Patch 6.0.021
3795Problem: The 'cscopepathcomp' option didn't work.
3796Solution: Change USE_CSCOPE to FEAT_CSCOPE. (Mark Feng)
3797Files: src/option.c
3798
3799Patch 6.0.022
3800Problem: When using the 'langmap' option, the second character of a command
3801 starting with "g" isn't adjusted.
3802Solution: Apply 'langmap' to the second character. (Alex Kapranoff)
3803Files: src/normal.c
3804
3805Patch 6.0.023
3806Problem: Loading the lhaskell syntax doesn't work. (Thore B. Karlsen)
3807Solution: Use ":runtime" instead of "source" to load haskell.vim.
3808Files: runtime/syntax/lhaskell.vim
3809
3810Patch 6.0.024
3811Problem: Using "CTRL-V u 9900" in Insert mode may cause a crash. (Noah
3812 Levitt)
3813Solution: Don't insert a NUL byte in the text, use a newline.
3814Files: src/misc1.c
3815
3816Patch 6.0.025
3817Problem: The pattern "\vx(.|$)" doesn't match "x" at the end of a line.
3818 (Preben Peppe Guldberg)
3819Solution: Always see a "$" as end-of-line after "\v". Do the same for "^".
3820Files: src/regexp.c
3821
3822Patch 6.0.026
3823Problem: GTK: When using arrow keys to navigate through the menus, the
3824 separators are selected.
3825Solution: Set the separators "insensitive". (Pavel Kankovsky)
3826Files: src/gui_gtk.c, src/gui_gtk_x11.c
3827
3828Patch 6.0.027
3829Problem: VMS: Printing doesn't work, the file is deleted too quickly.
3830 No longer need the VMS specific printing menu.
3831 gethostname() is not available with VAXC.
3832 The makefile was lacking selection of the tiny-huge feature set.
3833Solution: Adjust the 'printexpr' option default. Fix the other problems and
3834 update the documentation. (Zoltan Arpadffy)
3835Files: runtime/doc/os_vms.txt, runtime/menu.vim, src/INSTALLvms.txt,
3836 src/Make_vms.mms, src/option.c, src/os_unix.c, src/os_vms_conf.h
3837
3838Patch 6.0.028
3839Problem: Can't compile without +virtualedit and with +visualextra. (Geza
3840 Lakner)
3841Solution: Add an #ifdef for +virtualedit.
3842Files: src/ops.c
3843
3844Patch 6.0.029
3845Problem: When making a change in line 1, then in line 2 and then deleting
3846 line 1, undo info could be wrong. Only when the changes are undone
3847 at once. (Gerhard Hochholzer)
3848Solution: When not saving a line for undo because it was already done
3849 before, remember for which entry the last line must be computed.
3850 Added ue_getbot_entry pointer for this. When the number of lines
3851 changes, adjust the position of newer undo entries.
3852Files: src/structs.h, src/undo.c
3853
3854Patch 6.0.030
3855Problem: Using ":source! file" doesn't work inside a loop or after
3856 ":argdo". (Pavol Juhas)
3857Solution: Execute the commands in the file right away, do not let the main
3858 loop do it.
3859Files: src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c, src/globals.h,
3860 src/proto/ex_docmd.pro, src/proto/getchar.pro
3861
3862Patch 6.0.031
3863Problem: Nextstep doesn't have setenv() or putenv(). (John Beppu)
3864Solution: Move putenv() from pty.c to misc2.c
3865Files: src/misc2.c, src/pty.c
3866
3867Patch 6.0.032
3868Problem: When changing a setting that affects all folds, they are not
3869 displayed immediately.
3870Solution: Set the redraw flag in foldUpdateAll().
3871Files: src/fold.c
3872
3873Patch 6.0.033
3874Problem: Using 'wildmenu' on MS-Windows, file names that include a space
3875 are only displayed starting with that space. (Xie Yuheng)
3876Solution: Don't recognize a backslash before a space as a path separator.
3877Files: src/screen.c
3878
3879Patch 6.0.034
3880Problem: Calling searchpair() with three arguments could result in a crash
3881 or strange error message. (Kalle Bjorklid)
3882Solution: Don't use the fifth argument when there is no fourth argument.
3883Files: src/eval.c
3884
3885Patch 6.0.035
3886Problem: The menu item Edit/Global_Settings/Toggle_Toolbar doesn't work
3887 when 'ignorecase' is set. (Allen Castaban)
3888Solution: Always match case when checking if a flag is already present in
3889 'guioptions'.
3890Files: runtime/menu.vim
3891
3892Patch 6.0.036
3893Problem: OS/2, MS-DOS and MS-Windows: Using a path that starts with a
3894 slash in 'tags' doesn't work as expected. (Mathias Koehrer
3895Solution: Only use the drive, not the whole path to the current directory.
3896 Also make it work for "c:dir/file".
3897Files: src/misc2.c
3898
3899Patch 6.0.037
3900Problem: When the user has set "did_install_syntax_menu" to avoid the
3901 default Syntax menu it still appears. (Virgilio)
3902Solution: Don't add the three default items when "did_install_syntax_menu"
3903 is set.
3904Files: runtime/menu.vim
3905
3906Patch 6.0.038
3907Problem: When 'selection' is "exclusive", deleting a block of text at the
3908 end of a line can leave the cursor beyond the end of the line.
3909Solution: Correct the cursor position.
3910Files: src/ops.c
3911
3912Patch 6.0.039
3913Problem: "gP" leaves the cursor in the wrong position when 'virtualedit' is
3914 used. Using "c" in blockwise Visual mode leaves the cursor in a
3915 strange position.
3916Solution: For "gP" reset the "coladd" field for the '] mark. For "c" leave
3917 the cursor on the last inserted character.
3918Files: src/ops.c
3919
3920Patch 6.0.040
3921Problem: When 'fileencoding' is invalid and writing fails because of
3922 this, the original file is gone. (Eric Carlier)
3923Solution: Restore the original file from the backup.
3924Files: src/fileio.c
3925
3926Patch 6.0.041
3927Problem: Using ":language messages en" when LC_MESSAGES is undefined
3928 results in setting LC_CTYPE. (Eric Carlier)
3929Solution: Set $LC_MESSAGES instead.
3930Files: src/ex_cmds2.c
3931
3932Patch 6.0.042
3933Problem: ":mksession" can't handle file names with a space.
3934Solution: Escape special characters in file names with a backslash.
3935Files: src/ex_docmd.c
3936
3937Patch 6.0.043
3938Problem: Patch 6.0.041 was wrong.
3939Solution: Use mch_getenv() instead of vim_getenv().
3940Files: src/ex_cmds2.c
3941
3942Patch 6.0.044
3943Problem: Using a "containedin" list for a syntax item doesn't work for an
3944 item that doesn't have a "contains" argument. Also, "containedin"
3945 doesn't ignore a transparent item. (Timo Frenay)
3946Solution: When there is a "containedin" argument somewhere, always check for
3947 contained items. Don't check for the transparent item but the
3948 item it's contained in.
3949Files: src/structs.h, src/syntax.c
3950
3951Patch 6.0.045
3952Problem: After creating a fold with a Visual selection, another window
3953 with the same buffer still has inverted text. (Sami Salonen)
3954Solution: Redraw the inverted text.
3955Files: src/normal.c
3956
3957Patch 6.0.046
3958Problem: When getrlimit() returns an 8 byte number the check for running
3959 out of stack may fail. (Anthony Meijer)
3960Solution: Skip the stack check if the limit doesn't fit in a long.
3961Files: src/auto/configure, src/config.h.in, src/configure.in,
3962 src/os_unix.c
3963
3964Patch 6.0.047
3965Problem: Using a regexp with "\(\)" inside a "\%[]" item causes a crash.
3966 (Samuel Lacas)
3967Solution: Don't allow nested atoms inside "\%[]".
3968Files: src/regexp.c
3969
3970Patch 6.0.048
3971Problem: Win32: In the console the mouse doesn't always work correctly.
3972 Sometimes after getting focus a mouse movement is interpreted like
3973 a button click.
3974Solution: Use a different function to obtain the number of mouse buttons.
3975 Avoid recognizing a button press from undefined bits. (Vince Negri)
3976Files: src/os_win32.c
3977
3978Patch 6.0.049
3979Problem: When using evim the intro screen is misleading. (Adrian Nagle)
3980Solution: Mention whether 'insertmode' is set and the menus to be used.
3981Files: runtime/menu.vim, src/version.c
3982
3983Patch 6.0.050
3984Problem: UTF-8: "viw" doesn't include non-ASCII characters before the
3985 cursor. (Bertilo Wennergren)
3986Solution: Use dec_cursor() instead of decrementing the column number.
3987Files: src/search.c
3988
3989Patch 6.0.051
3990Problem: UTF-8: Using CTRL-R on the command line doesn't insert composing
3991 characters. (Ron Aaron)
3992Solution: Also include the composing characters and fix redrawing them.
3993Files: src/ex_getln.c, src/ops.c
3994
3995Patch 6.0.052
3996Problem: The check for rlim_t in patch 6.0.046 does not work on some
3997 systems. (Zdenek Sekera)
3998Solution: Also look in sys/resource.h for rlim_t.
3999Files: src/auto/configure, src/configure.in
4000
4001Patch 6.0.053 (extra)
4002Problem: Various problems with QNX.
4003Solution: Minor fix for configure. Switch on terminal clipboard support in
4004 main.c. Fix "pterm" mouse support. os_qnx.c didn't build without
4005 photon. (Julian Kinraid)
4006Files: src/auto/configure, src/configure.in, src/gui_photon.c,
4007 src/main.c, src/misc2.c, src/option.h, src/os_qnx.c, src/os_qnx.h,
4008 src/syntax.c
4009
4010Patch 6.0.054
4011Problem: When using mswin.vim, CTRL-V pastes a block of text like it is
4012 normal text. Using CTRL-V in blockwise Visual mode leaves "x"
4013 characters behind.
4014Solution: Make CTRL-V work as it should. Do the same for the Paste menu
4015 entries.
4016Files: runtime/menu.vim, runtime/mswin.vim
4017
4018Patch 6.0.055
4019Problem: GTK: The selection isn't copied the first time.
4020Solution: Own the selection at the right moment.
4021Files: src/gui_gtk_x11.c
4022
4023Patch 6.0.056
4024Problem: Using "CTRL-O cw" in Insert mode results in a nested Insert mode.
4025 <Esc> doesn't leave Insert mode then.
4026Solution: Only use nested Insert mode when 'insertmode' is set or when a
4027 mapping is used.
4028Files: src/normal.c
4029
4030Patch 6.0.057
4031Problem: Using ":wincmd g}" in a function doesn't work. (Gary Holloway)
4032Solution: Execute the command directly, instead of putting it in the
4033 typeahead buffer.
4034Files: src/normal.c, src/proto/normal.pro, src/window.c
4035
4036Patch 6.0.058
4037Problem: When a Cursorhold autocommand moved the cursor, the ruler wasn't
4038 updated. (Bohdan Vlasyuk)
4039Solution: Update the ruler after executing the autocommands.
4040Files: src/gui.c
4041
4042Patch 6.0.059
4043Problem: Highlighting for 'hlsearch' isn't visible in lines that are
4044 highlighted for diff highlighting. (Gary Holloway)
4045Solution: Let 'hlsearch' highlighting overrule diff highlighting.
4046Files: src/screen.c
4047
4048Patch 6.0.060
4049Problem: Motif: When the tooltip is to be popped up, Vim crashes.
4050 (Gary Holloway)
4051Solution: Check for a NULL return value from gui_motif_fontset2fontlist().
4052Files: src/gui_beval.c
4053
4054Patch 6.0.061
4055Problem: The toolbar buttons to load and save a session do not correctly
4056 use v:this_session.
4057Solution: Check for v:this_session to be empty instead of existing.
4058Files: runtime/menu.vim
4059
4060Patch 6.0.062
4061Problem: Crash when 'verbose' is > 3 and using ":shell". (Yegappan
4062 Lakshmanan)
4063Solution: Avoid giving a NULL pointer to printf(). Also output a newline
4064 and switch the cursor on.
4065Files: src/misc2.c
4066
4067Patch 6.0.063
4068Problem: When 'cpoptions' includes "$", using "cw" to type a ')' on top of
4069 the "$" doesn't update syntax highlighting after it.
4070Solution: Stop displaying the "$" when typing a ')' in its position.
4071Files: src/search.c
4072
4073Patch 6.0.064 (extra)
4074Problem: The NSIS install script doesn't work with newer versions of NSIS.
4075 The diff feature doesn't work when there isn't a good diff.exe on
4076 the system.
4077Solution: Replace the GetParentDir instruction by a user function.
4078 Fix a few cosmetic problems. Use defined constants for the
4079 version number, so that it's defined in one place only.
4080 Only accept the install directory when it ends in "vim".
4081 (Eduardo Fernandez)
4082 Add a diff.exe and use it from the default _vimrc.
4083Files: nsis/gvim.nsi, nsis/README.txt, src/dosinst.c
4084
4085Patch 6.0.065
4086Problem: When using ":normal" in 'indentexpr' it may use redo characters
4087 before its argument. (Neil Bird)
4088Solution: Save and restore the stuff buffer in ex_normal().
4089Files: src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h
4090
4091Patch 6.0.066
4092Problem: Sometimes undo for one command is split into two undo actions.
4093 (Halim Salman)
4094Solution: Don't set the undo-synced flag when reusing a line that was
4095 already saved for undo.
4096Files: src/undo.c
4097
4098Patch 6.0.067
4099Problem: if_xcmdsrv.c doesn't compile on systems where fd_set isn't defined
4100 in the usual header file (e.g., AIX). (Mark Waggoner)
4101Solution: Include sys/select.h in if_xcmdsrv.c for systems that have it.
4102Files: src/if_xcmdsrv.c
4103
4104Patch 6.0.068
4105Problem: When formatting a Visually selected area with "gq" and the number
4106 of lines increases the last line may not be redrawn correctly.
4107 (Yegappan Lakshmanan)
4108Solution: Correct the area to be redrawn for inserted/deleted lines.
4109Files: src/ops.c
4110
4111Patch 6.0.069
4112Problem: Using "K" on a word that includes a "!" causes a "No previous
4113 command" error, because the "!" is expanded. (Craig Jeffries)
4114Solution: Put a backslash before the "!".
4115Files: src/normal.c
4116
4117Patch 6.0.070
4118Problem: Win32: The error message for a failed dynamic linking of a Perl,
4119 Ruby, Tcl and Python library is unclear about what went wrong.
4120Solution: Give the name of the library or function that could not be loaded.
4121 Also for the iconv and gettext libraries when 'verbose' is set.
4122Files: src/eval.c, src/if_perl.xs, src/if_python.c, src/if_ruby.c,
4123 src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/if_perl.pro,
4124 src/proto/if_python.pro, src/proto/if_ruby.pro,
4125 src/proto/if_tcl.pro, src/proto/mbyte.pro
4126
4127Patch 6.0.071
4128Problem: The "iris-ansi" builtin termcap isn't very good.
4129Solution: Fix the wrong entries. (David Harrison)
4130Files: src/term.c
4131
4132Patch 6.0.072
4133Problem: When 'lazyredraw' is set, a mapping that stops Visual mode, moves
4134 the cursor and starts Visual mode again causes a redraw problem.
4135 (Brian Silverman)
4136Solution: Redraw both the old and the new Visual area when necessary.
4137Files: src/normal.c, src/screen.c
4138
4139Patch 6.0.073 (extra)
4140Problem: DJGPP: When using CTRL-Z to start a shell, the prompt is halfway
4141 the text. (Volker Kiefel)
4142Solution: Position the system cursor before starting the shell.
4143Files: src/os_msdos.c
4144
4145Patch 6.0.074
4146Problem: When using "&" in a substitute string a multi-byte character with
4147 a trailbyte 0x5c is not handled correctly.
4148Solution: Recognize multi-byte characters inside the "&" part. (Muraoka Taro)
4149Files: src/regexp.c
4150
4151Patch 6.0.075
4152Problem: When closing a horizontally split window while 'eadirection' is
4153 "hor" another horizontally split window is still resized. (Aron
4154 Griffis)
4155Solution: Only resize windows in the same top frame as the window that is
4156 split or closed.
4157Files: src/main.c, src/proto/window.pro, src/window.c
4158
4159Patch 6.0.076
4160Problem: Warning for wrong pointer type when compiling.
4161Solution: Use char instead of char_u pointer.
4162Files: src/version.c
4163
4164Patch 6.0.077
4165Problem: Patch 6.0.075 was incomplete.
4166Solution: Fix another call to win_equal().
4167Files: src/option.c
4168
4169Patch 6.0.078
4170Problem: Using "daw" at the end of a line on a single-character word didn't
4171 include the white space before it. At the end of the file it
4172 didn't work at all. (Gavin Sinclair)
4173Solution: Include the white space before the word.
4174Files: src/search.c
4175
4176Patch 6.0.079
4177Problem: When "W" is in 'cpoptions' and 'backupcopy' is "no" or "auto", can
4178 still overwrite a read-only file, because it's renamed. (Gary
4179 Holloway)
4180Solution: Add a check for a read-only file before renaming the file to
4181 become the backup.
4182Files: src/fileio.c
4183
4184Patch 6.0.080
4185Problem: When using a session file that has the same file in two windows,
4186 the fileinfo() call in do_ecmd() causes a scroll and a hit-enter
4187 prompt. (Robert Webb)
4188Solution: Don't scroll this message when 'shortmess' contains 'O'.
4189Files: src/ex_cmds.c
4190
4191Patch 6.0.081
4192Problem: After using ":saveas" the new buffer name is added to the Buffers
4193 menu with a wrong number. (Chauk-Mean Proum)
4194Solution: Trigger BufFilePre and BufFilePost events for the renamed buffer
4195 and BufAdd for the old name (which is with a new buffer).
4196Files: src/ex_cmds.c
4197
4198Patch 6.0.082
4199Problem: When swapping screens in an xterm and there is an (error) message
4200 from the vimrc script, the shell prompt is after the message.
4201Solution: Output a newline when there was output on the alternate screen.
4202 Also when starting the GUI.
4203Files: src/main.c
4204
4205Patch 6.0.083
4206Problem: GTK: When compiled without menu support the buttons in a dialog
4207 don't have any text. (Erik Edelmann)
4208Solution: Add the text also when GTK_USE_ACCEL isn't defined. And define
4209 GTK_USE_ACCEL also when not using menus.
4210Files: src/gui_gtk.c
4211
4212Patch 6.0.084
4213Problem: UTF-8: a "r" command with an argument that is a keymap for a
4214 character with a composing character can't be repeated with ".".
4215 (Raphael Finkel)
4216Solution: Add the composing characters to the redo buffer.
4217Files: src/normal.c
4218
4219Patch 6.0.085
4220Problem: When 'mousefocus' is set, using "s" to go to Insert mode and then
4221 moving the mouse pointer to another window stops Insert mode,
4222 while this doesn't happen with "a" or "i". (Robert Webb)
4223Solution: Reset finish_op before calling edit().
4224Files: src/normal.c
4225
4226Patch 6.0.086
4227Problem: When using "gu" the message says "~ed".
4228Solution: Make the message say "changed".
4229Files: src/ops.c
4230
4231Patch 6.0.087 (lang)
4232Problem: Message translations are incorrect, which may cause a crash.
4233 (Peter Figura)
4234 The Turkish translations needed more work and the maintainer
4235 didn't have time.
4236Solution: Fix order of printf arguments. Remove %2$d constructs.
4237 Add "-v" to msgfmt to get a warning for wrong translations.
4238 Don't install the Turkish translations for now.
4239 Update a few more translations.
4240Files: src/po/Makefile, src/po/af.po, src/po/cs.po, src/po/cs.cp1250.po,
4241 src/po/de.po, src/po/es.po, src/po/fr.po, src/po/it.po,
4242 src/po/ja.po, src/po/ja.sjis.po, src/po/ko.po, src/po/pl.po,
4243 src/po/sk.po, src/po/uk.po, src/po/zh_CN.UTF-8.po,
4244 src/po/zh_CN.cp936.po, src/po/zh_CN.po, src/po/zh_TW.po
4245
4246Patch 6.0.088
4247Problem: "." doesn't work after using "rx" in Visual mode. (Charles
4248 Campbell)
4249Solution: Also store the replacement character in the redo buffer.
4250Files: src/normal.c
4251
4252Patch 6.0.089
4253Problem: In a C file, using "==" to align a line starting with "* " after
4254 a line with "* -" indents one space too few. (Piet Delport)
4255Solution: Align with the previous line if the comment-start-string matches
4256 there.
4257Files: src/misc1.c
4258
4259Patch 6.0.090
4260Problem: When a wrapping line does not fit in a window and 'scrolloff' is
4261 bigger than half the window height, moving the cursor left or
4262 right causes the screen to flash badly. (Lubomir Host)
4263Solution: When there is not enough room to show 'scrolloff' screen lines and
4264 near the end of the line, show the end of the line.
4265Files: src/move.c
4266
4267Patch 6.0.091
4268Problem: Using CTRL-O in Insert mode, while 'virtualedit' is "all" and the
4269 cursor is after the end-of-line, moves the cursor left. (Yegappan
4270 Lakshmanan)
4271Solution: Keep the cursor in the same position.
4272Files: src/edit.c
4273
4274Patch 6.0.092
4275Problem: The explorer plugin doesn't ignore case of 'suffixes' on
4276 MS-Windows. (Mike Williams)
4277Solution: Match or ignore case as appropriate for the OS.
4278Files: runtime/plugin/explorer.vim
4279
4280Patch 6.0.093
4281Problem: When the Tcl library couldn't be loaded dynamically, get an error
4282 message when closing a buffer or window. (Muraoka Taro)
4283Solution: Only free structures if already using the Tcl interpreter.
4284Files: src/if_tcl.c
4285
4286Patch 6.0.094
4287Problem: Athena: When clicking in the horizontal scrollbar Vim crashes.
4288 (Paul Ackersviller)
4289Solution: Use the thumb size instead of the window pointer of the scrollbar
4290 (which is NULL). (David Harrison)
4291 Also avoid that scrolling goes the wrong way in a narrow window.
4292Files: src/gui_athena.c
4293
4294Patch 6.0.095
4295Problem: Perl: Deleting lines may leave the cursor beyond the end of the
4296 file.
4297Solution: Check the cursor position after deleting a line. (Serguei)
4298Files: src/if_perl.xs
4299
4300Patch 6.0.096
4301Problem: When ":saveas fname" fails because the file already exists, the
4302 file name is changed anyway and a following ":w" will overwrite
4303 the file. (Eric Carlier)
4304Solution: Don't change the file name if the file already exists.
4305Files: src/ex_cmds.c
4306
4307Patch 6.0.097
4308Problem: Re-indenting in Insert mode with CTRL-F may cause a crash with a
4309 multi-byte encoding.
4310Solution: Avoid using a character before the start of a line. (Sergey
4311 Vlasov)
4312Files: src/edit.c
4313
4314Patch 6.0.098
4315Problem: GTK: When using Gnome the "Search" and "Search and Replace" dialog
4316 boxes are not translated.
4317Solution: Define ENABLE_NLS before including gnome.h. (Eduardo Fernandez)
4318Files: src/gui_gtk.c, src/gui_gtk_x11.c
4319
4320Patch 6.0.099
4321Problem: Cygwin: When running Vi compatible MS-DOS line endings cause
4322 trouble.
4323Solution: Make the default for 'fileformats' "unix,dos" in Vi compatible
4324 mode. (Michael Schaap)
4325Files: src/option.h
4326
4327Patch 6.0.100
4328Problem: ":badd +0 test%file" causes a crash.
4329Solution: Take into account that the "+0" is NUL terminated when allocating
4330 room for replacing the "%".
4331Files: src/ex_docmd.c
4332
4333Patch 6.0.101
4334Problem: ":mksession" doesn't restore editing a file that has a '#' or '%'
4335 in its name. (Wolfgang Blankenburg)
4336Solution: Put a backslash before the '#' and '%'.
4337Files: src/ex_docmd.c
4338
4339Patch 6.0.102
4340Problem: When changing folds the cursor may appear halfway a closed fold.
4341 (Nam SungHyun)
4342Solution: Set w_cline_folded correctly. (Yasuhiro Matsumoto)
4343Files: src/move.c
4344
4345Patch 6.0.103
4346Problem: When using 'scrollbind' a large value of 'scrolloff' will make the
4347 scroll binding stop near the end of the file. (Coen Engelbarts)
4348Solution: Don't use 'scrolloff' when limiting the topline for scroll
4349 binding. (Dany StAmant)
4350Files: src/normal.c
4351
4352Patch 6.0.104
4353Problem: Multi-byte: When '$' is in 'cpoptions', typing a double-wide
4354 character that overwrites the left halve of an old double-wide
4355 character causes a redraw problem and the cursor stops blinking.
4356Solution: Clear the right half of the old character. (Yasuhiro Matsumoto)
4357Files: src/edit.c, src/screen.c
4358
4359Patch 6.0.105
4360Problem: Multi-byte: In a window of one column wide, with syntax
4361 highlighting enabled a crash might happen.
4362Solution: Skip getting the syntax attribute when the character doesn't fit
4363 anyway. (Yasuhiro Matsumoto)
4364Files: src/screen.c
4365
4366Patch 6.0.106 (extra)
4367Problem: Win32: When the printer font is wrong, there is no error message.
4368Solution: Give an appropriate error message. (Yasuhiro Matsumoto)
4369Files: src/os_mswin.c
4370
4371Patch 6.0.107 (extra)
4372Problem: VisVim: When editing another file, a modified file may be written
4373 unexpectedly and without warning.
4374Solution: Split the window if a file was modified.
4375Files: VisVim/Commands.cpp
4376
4377Patch 6.0.108
4378Problem: When using folding could try displaying line zero, resulting in an
4379 error for a NULL pointer.
4380Solution: Stop decrementing w_topline when the first line of a window is in
4381 a closed fold.
4382Files: src/window.c
4383
4384Patch 6.0.109
4385Problem: XIM: When the input method is enabled, repeating an insertion with
4386 "." disables it. (Marcel Svitalsky)
4387Solution: Don't store the input method status when a command comes from the
4388 stuff buffer.
4389Files: src/ui.c
4390
4391Patch 6.0.110
4392Problem: Using undo after executing "OxjAxkdd" from a register in
4393 an empty buffer gives an error message. (Gerhard Hochholzer)
4394Solution: Don't adjust the bottom line number of an undo block when it's
4395 zero. Add a test for this problem.
4396Files: src/undo.c, src/testdir/test20.in, src/testdir/test20.ok
4397
4398Patch 6.0.111
4399Problem: The virtcol() function doesn't take care of 'virtualedit'.
4400Solution: Add the column offset when needed. (Yegappan Lakshmanan)
4401Files: src/eval.c
4402
4403Patch 6.0.112
4404Problem: The explorer plugin doesn't sort directories with a space or
4405 special character after a directory with a shorter name.
4406Solution: Ignore the trailing slash when comparing directory names. (Mike
4407 Williams)
4408Files: runtime/plugin/explorer.vim
4409
4410Patch 6.0.113
4411Problem: ":edit ~/fname" doesn't work if $HOME includes a space. Also,
4412 expanding wildcards with the shell may fail. (John Daniel)
4413Solution: Escape spaces with a backslash when needed.
4414Files: src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/os_unix.c
4415
4416Patch 6.0.114
4417Problem: Using ":p" with fnamemodify() didn't expand "~/" or "~user/" to a
4418 full path. For Win32 the current directory was prepended.
4419 (Michael Geddes)
4420Solution: Expand the home directory.
4421Files: src/eval.c
4422
4423Patch 6.0.115 (extra)
4424Problem: Win32: When using a dialog with a textfield it cannot scroll the
4425 text.
4426Solution: Add ES_AUTOHSCROLL to the textfield style. (Pedro Gomes)
4427Files: src/gui_w32.c
4428
4429Patch 6.0.116 (extra)
4430Problem: MS-Windows NT/2000/XP: filewritable() doesn't work correctly for
4431 filesystems that use ACLs.
4432Solution: Use ACL functions to check if a file is writable. (Mike Williams)
4433Files: src/eval.c, src/macros.h, src/os_win32.c, src/proto/os_win32.pro
4434
4435Patch 6.0.117 (extra)
4436Problem: Win32: when disabling the menu, "set lines=999" doesn't use all
4437 the available screen space.
4438Solution: Don't subtract the fixed caption height but the real menu height
4439 from the available screen space. Also: Avoid recursion in
4440 gui_mswin_get_menu_height().
4441Files: src/gui_w32.c, src/gui_w48.c
4442
4443Patch 6.0.118
4444Problem: When $TMPDIR is a relative path, the temp directory is missing a
4445 trailing slash and isn't deleted when Vim exits. (Peter Holm)
4446Solution: Add the slash after expanding the directory to an absolute path.
4447Files: src/fileio.c
4448
4449Patch 6.0.119 (depends on patch 6.0.116)
4450Problem: VMS: filewritable() doesn't work properly.
4451Solution: Use the same method as for Unix. (Zoltan Arpadffy)
4452Files: src/eval.c
4453
4454Patch 6.0.120
4455Problem: The conversion to html isn't compatible with XHTML.
4456Solution: Quote the values. (Jess Thrysoee)
4457Files: runtime/syntax/2html.vim
4458
4459Patch 6.0.121 (extra) (depends on patch 6.0.116)
4460Problem: Win32: After patch 6.0.116 Vim doesn't compile with mingw32.
4461Solution: Add an #ifdef HAVE_ACL.
4462Files: src/os_win32.c
4463
4464Patch 6.0.122 (extra)
4465Problem: Win16: Same resize problems as patch 6.0.117 fixed for Win32. And
4466 dialog textfield problem from patch 6.0.115.
4467Solution: Set old_menu_height only when used. Add ES_AUTOHSCROLL flag.
4468 (Vince Negri)
4469Files: src/gui_w16.c
4470
4471Patch 6.0.123 (depends on patch 6.0.119)
4472Problem: Win16: Compilation problems.
4473Solution: Move "&&" to other lines. (Vince Negri)
4474Files: src/eval.c
4475
4476Patch 6.0.124
4477Problem: When using a ":substitute" command that starts with "\="
4478 (evaluated as an expression), "~" was still replaced with the
4479 previous substitute string.
4480Solution: Skip the replacement when the substitute string starts with "\=".
4481 Also adjust the documentation about doubling backslashes.
4482Files: src/ex_cmds.c, runtime/doc/change.txt
4483
4484Patch 6.0.125 (extra)
4485Problem: Win32: When using the multi_byte_ime feature pressing the shift
4486 key would be handled as if a character was entered, thus mappings
4487 with a shifted key didn't work. (Charles Campbell)
4488Solution: Ignore pressing the shift, control and alt keys.
4489Files: src/os_win32.c
4490
4491Patch 6.0.126
4492Problem: The python library was always statically linked.
4493Solution: Link the python library dynamically. (Matthias Klose)
4494Files: src/auto/configure, src/configure.in
4495
4496Patch 6.0.127
4497Problem: When using a terminal that swaps screens and the Normal background
4498 color has a different background, using an external command may
4499 cause the color of the wrong screen to be changed. (Mark Waggoner)
4500Solution: Don't call screen_stop_highlight() in stoptermcap().
4501Files: src/term.c
4502
4503Patch 6.0.128
4504Problem: When moving a vertically split window to the far left or right,
4505 the scrollbars are not adjusted. (Scott E Lee) When 'mousefocus'
4506 is set the mouse pointer wasn't adjusted.
4507Solution: Adjust the scrollbars and the mouse pointer.
4508Files: src/window.c
4509
4510Patch 6.0.129
4511Problem: When using a very long file name, ":ls" (repeated a few times)
4512 causes a crash. Test with "vim `perl -e 'print "A"x1000'`".
4513 (Tejeda)
4514Solution: Terminate a string before getting its length in buflist_list().
4515Files: src/buffer.c
4516
4517Patch 6.0.130
4518Problem: When using ":cprev" while the error window is open, and the new
4519 line at the top wraps, the window isn't correctly drawn.
4520 (Yegappan Lakshmanan)
4521Solution: When redrawing the topline don't scroll twice.
4522Files: src/screen.c
4523
4524Patch 6.0.131
4525Problem: When using bufname() and there are two matches for listed buffers
4526 and one match for an unlisted buffer, the unlisted buffer is used.
4527 (Aric Blumer)
4528Solution: When there is a match with a listed buffer, don't check for
4529 unlisted buffers.
4530Files: src/buffer.c
4531
4532Patch 6.0.132
4533Problem: When setting 'iminsert' in the vimrc and using an xterm with two
4534 screens the ruler is drawn in the wrong screen. (Igor Goldenberg)
4535Solution: Only draw the ruler when using the right screen.
4536Files: src/option.c
4537
4538Patch 6.0.133
4539Problem: When opening another buffer while 'keymap' is set and 'iminsert'
4540 is zero, 'iminsert' is set to one unexpectedly. (Igor Goldenberg)
4541Solution: Don't set 'iminsert' as a side effect of defining a ":lmap"
4542 mapping. Only do that when 'keymap' is set.
4543Files: src/getchar.c, src/option.c
4544
4545Patch 6.0.134
4546Problem: When completing ":set tags=" a path with an embedded space causes
4547 the completion to stop. (Sektor van Skijlen)
4548Solution: Escape spaces with backslashes, like for ":set path=". Also take
4549 backslashes into account when searching for the start of the path
4550 to complete (e.g., for 'backupdir' and 'cscopeprg').
4551Files: src/ex_docmd.c, src/ex_getln.c, src/option.c, src/structs.h
4552
4553Patch 6.0.135
4554Problem: Menus that are not supposed to do anything used "<Nul>", which
4555 still produced an error beep.
4556 When CTRL-O is mapped for Insert mode, ":amenu" commands didn't
4557 work in Insert mode.
4558 Menu language falls back to English when $LANG ends in "@euro".
4559Solution: Use "<Nop>" for a menu item that doesn't do anything, just like
4560 mappings.
4561 Use ":anoremenu" instead of ":amenu".
4562 Ignore "@euro" in the locale name.
4563Files: runtime/makemenu.vim, runtime/menu.vim, src/menu.c
4564
4565Patch 6.0.136
4566Problem: When completing in Insert mode, a mapping could be unexpectedly
4567 applied.
4568Solution: Don't use mappings when checking for a typed character.
4569Files: src/edit.c
4570
4571Patch 6.0.137
4572Problem: GUI: When using the find or find/replace dialog from Insert mode,
4573 the input mode is stopped.
4574Solution: Don't use the input method status when the main window doesn't
4575 have focus.
4576Files: src/ui.c
4577
4578Patch 6.0.138
4579Problem: GUI: When using the find or find/replace dialog from Insert mode,
4580 the text is inserted when CTRL-O is mapped. (Andre Pang)
4581 When opening the dialog again, a whole word search isn't
4582 recognized.
4583 When doing "replace all" a whole word search was never done.
4584Solution: Don't put a search or replace command in the input buffer,
4585 execute it directly.
4586 Recognize "\<" and "\>" after removing "\V".
4587 Add "\<" and "\>" also for "replace all".
4588Files: src/gui.c
4589
4590Patch 6.0.139
4591Problem: When stopping 'wildmenu' completion, the statusline of the
4592 bottom-left vertically split window isn't redrawn. (Yegappan
4593 Lakshmanan)
4594Solution: Redraw all the bottom statuslines.
4595Files: src/ex_getln.c, src/proto/screen.pro, src/screen.c
4596
4597Patch 6.0.140
4598Problem: Memory allocated for local mappings and abbreviations is leaked
4599 when the buffer is wiped out.
4600Solution: Clear the local mappings when deleting a buffer.
4601Files: src/buffer.c, src/getchar.c, src/proto/getchar.pro, src/vim.h
4602
4603Patch 6.0.141
4604Problem: When using ":enew" in an empty buffer, some buffer-local things
4605 are not cleared. b:keymap_name is not set.
4606Solution: Clear user commands and mappings local to the buffer when re-using
4607 the current buffer. Reload the keymap.
4608Files: src/buffer.c
4609
4610Patch 6.0.142
4611Problem: When Python is linked statically, loading dynamic extensions might
4612 fail.
4613Solution: Add an extra linking flag when needed. (Andrew Rodionoff)
4614Files: src/configure.in, src/auto/configure
4615
4616Patch 6.0.143
4617Problem: When a syntax item includes a line break in a pattern, the syntax
4618 may not be updated properly when making a change.
4619Solution: Add the "linebreaks" argument to ":syn sync".
4620Files: runtime/doc/syntax.txt, src/screen.c, src/structs.h, src/syntax.c
4621
4622Patch 6.0.144
4623Problem: After patch 6.0.088 redoing "veU" doesn't work.
4624Solution: Don't add the "U" to the redo buffer, it will be used as an undo
4625 command.
4626Files: src/normal.c
4627
4628Patch 6.0.145
4629Problem: When Vim can't read any input it might get stuck. When
4630 redirecting stdin and stderr Vim would not read commands from a
4631 file. (Servatius Brandt)
4632Solution: When repeatedly trying to read a character when it's not possible,
4633 exit Vim. When stdin and stderr are not a tty, still try reading
4634 from them, but don't do a blocking wait.
4635Files: src/ui.c
4636
4637Patch 6.0.146
4638Problem: When 'statusline' contains "%{'-'}" this results in a zero.
4639 (Milan Vancura)
4640Solution: Don't handle numbers with a minus as a number, they were not
4641 displayed anyway.
4642Files: src/buffer.c
4643
4644Patch 6.0.147
4645Problem: It's not easy to mark a Vim version as being modified. The new
4646 license requires this.
4647Solution: Add the --modified-by argument to configure and the MODIFIED_BY
4648 define. I's used in the intro screen and the ":version" output.
4649Files: src/auto/configure, src/configure.in, src/config.h.in,
4650 src/feature.h, src/version.c
4651
4652Patch 6.0.148
4653Problem: After "p" in an empty line, `[ goes to the second character.
4654 (Kontra Gergely)
4655Solution: Don't increment the column number in an empty line.
4656Files: src/ops.c
4657
4658Patch 6.0.149
4659Problem: The pattern "\(.\{-}\)*" causes a hang. When using a search
4660 pattern that causes a stack overflow to be detected Vim could
4661 still hang.
4662Solution: Correctly report "operand could be empty" when using "\{-}".
4663 Check for "out_of_stack" inside loops to avoid a hang.
4664Files: src/regexp.c
4665
4666Patch 6.0.150
4667Problem: When using a multi-byte encoding, patch 6.0.148 causes "p" to work
4668 like "P". (Sung-Hyun Nam)
4669Solution: Compute the byte length of a multi-byte character.
4670Files: src/ops.c
4671
4672Patch 6.0.151
4673Problem: Redrawing the status line and ruler can be wrong when it contains
4674 multi-byte characters.
4675Solution: Use character width and byte length correctly. (Yasuhiro Matsumoto)
4676Files: src/screen.c
4677
4678Patch 6.0.152
4679Problem: strtrans() could hang on an illegal UTF-8 byte sequence.
4680Solution: Skip over illegal bytes. (Yasuhiro Matsumoto)
4681Files: src/charset.c
4682
4683Patch 6.0.153
4684Problem: When using (illegal) double-byte characters and Vim syntax
4685 highlighting Vim can crash. (Yasuhiro Matsumoto)
4686Solution: Increase a pointer over a character instead of a byte.
4687Files: src/regexp.c
4688
4689Patch 6.0.154
4690Problem: MS-DOS and MS-Windows: The menu entries for xxd don't work when
4691 there is no xxd in the path.
4692 When converting back from Hex the filetype may remain "xxd" if it
4693 is not detected.
4694Solution: When xxd is not in the path use the one in the runtime directory,
4695 where the install program has put it.
4696 Clear the 'filetype' option before detecting the new value.
4697Files: runtime/menu.vim
4698
4699Patch 6.0.155
4700Problem: Mac: compilation problems in ui.c after patch 6.0.145. (Axel
4701 Kielhorn)
4702Solution: Don't call mch_inchar() when NO_CONSOLE is defined.
4703Files: src/ui.c
4704
4705Patch 6.0.156
4706Problem: Starting Vim with the -b argument and two files, ":next" doesn't
4707 set 'binary' in the second file, like Vim 5.7. (Norman Diamond)
4708Solution: Set the global value for 'binary'.
4709Files: src/option.c
4710
4711Patch 6.0.157
4712Problem: When defining a user command with "-complete=dir" files will also
4713 be expanded. Also, "-complete=mapping" doesn't appear to work.
4714 (Michael Naumann)
4715Solution: Use the expansion flags defined with the user command.
4716 Handle expanding mappings specifically.
4717Files: src/ex_docmd.c
4718
4719Patch 6.0.158
4720Problem: When getting the warning for a file being changed outside of Vim
4721 and reloading the file, the 'readonly' option is reset, even when
4722 the permissions didn't change. (Marcel Svitalsky)
4723Solution: Keep 'readonly' set when reloading a file and the permissions
4724 didn't change.
4725Files: src/fileio.c
4726
4727Patch 6.0.159
4728Problem: Wildcard expansion for ":emenu" also shows separators.
4729Solution: Skip menu separators for ":emenu", ":popup" and ":tearoff".
4730 Also, don't handle ":tmenu" as if it was ":tearoff". And leave
4731 out the alternatives with "&" included.
4732Files: src/menu.c
4733
4734Patch 6.0.160
4735Problem: When compiling with GCC 3.0.2 and using the "-O2" argument, the
4736 optimizer causes a problem that makes Vim crash.
4737Solution: Add a configure check to avoid "-O2" for this version of gcc.
4738Files: src/configure.in, src/auto/configure
4739
4740Patch 6.0.161 (extra)
4741Problem: Win32: Bitmaps don't work with signs.
4742Solution: Make it possible to use bitmaps with signs. (Muraoka Taro)
4743Files: src/ex_cmds.c, src/feature.h, src/gui_w32.c, src/gui_x11.c,
4744 src/proto/gui_w32.pro, src/proto/gui_x11.pro
4745
4746Patch 6.0.162
4747Problem: Client-server: An error message for a wrong expression appears in
4748 the server instead of the client.
4749Solution: Pass the error message from the server to the client. Also
4750 adjust the example code. (Flemming Madsen)
4751Files: src/globals.h, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
4752 src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro,
4753 runtime/doc/eval.txt, runtime/tools/xcmdsrv_client.c
4754
4755Patch 6.0.163
4756Problem: When using a GUI dialog, a file name is sometimes used like it was
4757 a directory.
4758Solution: Separate path and file name properly.
4759 For GTK, Motif and Athena concatenate directory and file name for
4760 the default selection.
4761Files: src/diff.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
4762 src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c, src/message.c
4763
4764Patch 6.0.164
4765Problem: After patch 6.0.135 the menu entries for pasting don't work in
4766 Insert and Visual mode. (Muraoka Taro)
4767Solution: Add <script> to allow script-local mappings.
4768Files: runtime/menu.vim
4769
4770Patch 6.0.165
4771Problem: Using --remote and executing locally gives unavoidable error
4772 messages.
4773Solution: Add --remote-silent and --remote-wait-silent to silently execute
4774 locally.
4775 For Win32 there was no error message when a server didn't exist.
4776Files: src/eval.c, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
4777 src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro
4778
4779Patch 6.0.166
4780Problem: GUI: There is no way to avoid dialogs to pop up.
4781Solution: Add the 'c' flag to 'guioptions': Use console dialogs. (Yegappan
4782 Lakshmanan)
4783Files: runtime/doc/options.txt, src/option.h, src/message.c
4784
4785Patch 6.0.167
4786Problem: When 'fileencodings' is "latin2" some characters in the help files
4787 are displayed wrong.
4788Solution: Force the 'fileencoding' for the help files to be "latin1".
4789Files: src/fileio.c
4790
4791Patch 6.0.168
4792Problem: ":%s/\n/#/" doesn't replace at an empty line. (Bruce DeVisser)
4793Solution: Don't skip matches after joining two lines.
4794Files: src/ex_cmds.c
4795
4796Patch 6.0.169
4797Problem: When run as evim and the GUI can't be started we get stuck in a
4798 terminal without menus in Insert mode.
4799Solution: Exit when using "evim" and "gvim -y" when the GUI can't be
4800 started.
4801Files: src/main.c
4802
4803Patch 6.0.170
4804Problem: When printing double-width characters the size of tabs after them
4805 is wrong. (Muraoka Taro)
4806Solution: Correctly compute the column after a double-width character.
4807Files: src/ex_cmds2.c
4808
4809Patch 6.0.171
4810Problem: With 'keymodel' including "startsel", in Insert mode after the end
4811 of a line, shift-Left does not move the cursor. (Steve Hall)
4812Solution: CTRL-O doesn't move the cursor left, need to do that explicitly.
4813Files: src/edit.c
4814
4815Patch 6.0.172
4816Problem: CTRL-Q doesn't replace CTRL-V after CTRL-X in Insert mode while it
4817 does in most other situations.
4818Solution: Make CTRL-X CTRL-Q work like CTRL-X CTRL-V in Insert mode.
4819Files: src/edit.c
4820
4821Patch 6.0.173
4822Problem: When using "P" to insert a line break the cursor remains past the
4823 end of the line.
4824Solution: Check for the cursor being beyond the end of the line.
4825Files: src/ops.c
4826
4827Patch 6.0.174
4828Problem: After using "gd" or "gD" the search direction for "n" may still be
4829 backwards. (Servatius Brandt)
4830Solution: Reset the search direction to forward.
4831Files: src/normal.c, src/search.c, src/proto/search.pro
4832
4833Patch 6.0.175
4834Problem: ":help /\z(\)" doesn't work. (Thomas Koehler)
4835Solution: Double the backslashes.
4836Files: src/ex_cmds.c
4837
4838Patch 6.0.176
4839Problem: When killed by a signal autocommands are still triggered as if
4840 nothing happened.
4841Solution: Add the v:dying variable to allow autocommands to work differently
4842 when a deadly signal has been trapped.
4843Files: src/eval.c, src/os_unix.c, src/vim.h
4844
4845Patch 6.0.177
4846Problem: When 'commentstring' is empty and 'foldmethod' is "marker", "zf"
4847 doesn't work. (Thomas S. Urban)
4848Solution: Add the marker even when 'commentstring' is empty.
4849Files: src/fold.c, src/normal.c
4850
4851Patch 6.0.178
4852Problem: Uninitialized memory read from xp_backslash field.
4853Solution: Initialize xp_backslash field properly.
4854Files: src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/tag.c
4855
4856Patch 6.0.179
4857Problem: Win32: When displaying UTF-8 characters may read uninitialized
4858 memory.
4859Solution: Add utfc_ptr2len_check_len() to avoid reading past the end of a
4860 string.
4861Files: src/mbyte.c, src/proto/mbyte.pro, src/gui_w32.c
4862
4863Patch 6.0.180
4864Problem: Expanding environment variables in a string that ends in a
4865 backslash could go past the end of the string.
4866Solution: Detect the trailing backslash.
4867Files: src/misc1.c
4868
4869Patch 6.0.181
4870Problem: When using ":cd dir" memory was leaked.
4871Solution: Free the allocated memory. Also avoid an uninitialized memory
4872 read.
4873Files: src/misc2.c
4874
4875Patch 6.0.182
4876Problem: When using a regexp on multi-byte characters, could try to read a
4877 character before the start of the line.
4878Solution: Don't decrement a pointer to before the start of the line.
4879Files: src/regexp.c
4880
4881Patch 6.0.183
4882Problem: Leaking memory when ":func!" redefines a function.
4883Solution: Free the function name when it's not used.
4884Files: src/eval.c
4885
4886Patch 6.0.184
4887Problem: Leaking memory when expanding option values.
4888Solution: Don't always copy the expanded option into allocated memory.
4889Files: src/option.c
4890
4891Patch 6.0.185
4892Problem: Crash in Vim when pasting a selection in another application, on a
4893 64 bit machine.
4894Solution: Fix the format for an Atom to 32 bits. (Peter Derr)
4895Files: src/ui.c
4896
4897Patch 6.0.186
4898Problem: X11: Three warnings when compiling the client-server code.
4899Solution: Add a typecast to unsigned char.
4900Files: src/if_xcmdsrv.c
4901
4902Patch 6.0.187
4903Problem: "I" in Visual mode and then "u" reports too many changes. (Andrew
4904 Stryker)
4905 "I" in Visual linewise mode adjusts the indent for no apparent
4906 reason.
4907Solution: Only save those lines for undo that are changed.
4908 Don't change the indent after inserting in Visual linewise mode.
4909Files: src/ops.c
4910
4911Patch 6.0.188
4912Problem: Win32: After patch 6.0.161 signs defined in the vimrc file don't
4913 work.
4914Solution: Initialize the sign icons after initializing the GUI. (Vince
4915 Negri)
4916Files: src/gui.c, src/gui_x11.c
4917
4918Patch 6.0.189
4919Problem: The size of the Visual area isn't always displayed when scrolling
4920 ('ruler' off, 'showcmd' on). Also not when using a search
4921 command. (Sylvain Hitier)
4922Solution: Redisplay the size of the selection after showing the mode.
4923Files: src/screen.c
4924
4925Patch 6.0.190
4926Problem: GUI: when 'mouse' is empty a click with the middle button still
4927 moves the cursor.
4928Solution: Paste at the cursor position instead of the mouse position.
4929Files: src/normal.c
4930
4931Patch 6.0.191
4932Problem: When no servers are available serverlist() gives an error instead
4933 of returning an empty string. (Hari Krishna)
4934Solution: Don't give an error message.
4935Files: src/eval.c
4936
4937Patch 6.0.192
4938Problem: When 'virtualedit' is set, "ylj" goes to the wrong column. (Andrew
4939 Nikitin)
4940Solution: Reset the flag that w_virtcol is valid when moving the cursor back
4941 to the start of the operated area.
4942Files: src/normal.c
4943
4944Patch 6.0.193
4945Problem: When 'virtualedit' is set, col(".") after the end of the line
4946 should return one extra.
4947Solution: Add one to the column.
4948Files: src/eval.c
4949
4950Patch 6.0.194
4951Problem: "--remote-silent" tries to send a reply to the client, like it was
4952 "--remote-wait".
4953Solution: Properly check for the argument.
4954Files: src/main.c
4955
4956Patch 6.0.195
4957Problem: When 'virtualedit' is set and a search starts in virtual space
4958 ":call search('x')" goes to the wrong position. (Eric Long)
4959Solution: Reset coladd when finding a match.
4960Files: src/search.c
4961
4962Patch 6.0.196
4963Problem: When 'virtualedit' is set, 'selection' is "exclusive" and visually
4964 selecting part of a tab at the start of a line, "x" joins it with
4965 the previous line. Also, when the selection spans more than one
4966 line the whole tab is deleted.
4967Solution: Take coladd into account when adjusting for 'selection' being
4968 "exclusive". Also expand a tab into spaces when deleting more
4969 than one line.
4970Files: src/normal.c, src/ops.c
4971
4972Patch 6.0.197
4973Problem: When 'virtualedit' is set and 'selection' is "exclusive", "v$x"
4974 doesn't delete the last character in the line. (Eric Long)
4975Solution: Don't reset the inclusive flag. (Helmut Stiegler)
4976Files: src/normal.c
4977
4978Patch 6.0.198
4979Problem: When 'virtualedit' is set and 'showbreak' is not empty, moving the
4980 cursor over the line break doesn't work properly. (Eric Long)
4981Solution: Make getviscol() and getviscol2() use getvvcol() to obtain the
4982 virtual cursor position. Adjust coladvance() and oneleft() to
4983 skip over the 'showbreak' characters.
4984Files: src/edit.c, src/misc2.c
4985
4986Patch 6.0.199
4987Problem: Multi-byte: could use iconv() after calling iconv_end().
4988 (Yasuhiro Matsumoto)
4989Solution: Stop converting input and output stream after calling iconv_end().
4990Files: src/mbyte.c
4991
4992Patch 6.0.200
4993Problem: A script that starts with "#!perl" isn't recognized as a Perl
4994 filetype.
4995Solution: Ignore a missing path in a script header. Also, speed up
4996 recognizing scripts by simplifying the patterns used.
4997Files: runtime/scripts.vim
4998
4999Patch 6.0.201
5000Problem: When scrollbinding and doing a long jump, switching windows jumps
5001 to another position in the file. Scrolling a few lines at a time
5002 is OK. (Johannes Zellner)
5003Solution: When setting w_topline reset the flag that indicates w_botline is
5004 valid.
5005Files: src/diff.c
5006
5007Patch 6.0.202
5008Problem: The "icon=" argument for the menu command to define a toolbar icon
5009 with a file didn't work for GTK. (Christian J. Robinson)
5010 For Motif and Athena a full path was required.
5011Solution: Search the icon file using the specified path. Expand environment
5012 variables in the file name.
5013Files: src/gui_gtk.c, src/gui_x11.c
5014
5015Patch 6.0.203
5016Problem: Can change 'fileformat' even though 'modifiable' is off.
5017 (Servatius Brandt)
5018Solution: Correct check for kind of set command.
5019Files: src/option.c
5020
5021Patch 6.0.204
5022Problem: ":unlet" doesn't work for variables with curly braces. (Thomas
5023 Scott Urban)
5024Solution: Handle variable names with curly braces properly. (Vince Negri)
5025Files: src/eval.c
5026
5027Patch 6.0.205 (extra)
5028Problem: "gvim -f" still forks when using the batch script to start Vim.
5029Solution: Add an argument to "start" to use a foreground session (Michael
5030 Geddes)
5031Files: src/dosinst.c
5032
5033Patch 6.0.206
5034Problem: Unix: if expanding a wildcard in a file name results in a
5035 wildcard character and there are more parts in the path with a
5036 wildcard, it is expanded again.
5037 Windows: ":edit \[abc]" could never edit the file "[abc]".
5038Solution: Don't expand wildcards in already expanded parts.
5039 Don't remove backslashes used to escape the special meaning of a
5040 wildcard; can edit "[abc]" if '[' is removed from 'isfname'.
5041Files: src/misc1.c, src/os_unix.c
5042
5043Patch 6.0.207 (extra)
5044Problem: Win32: The shortcuts and start menu entries let Vim startup in the
5045 desktop directory, which is not very useful.
5046Solution: Let shortcuts start Vim in $HOME or $HOMEDIR$HOMEPATH.
5047Files: src/dosinst.c
5048
5049Patch 6.0.208
5050Problem: GUI: When using a keymap and the cursor is not blinking, CTRL-^ in
5051 Insert mode doesn't directly change the cursor color. (Alex
5052 Solow)
5053Solution: Force a redraw of the cursor after CTRL-^.
5054Files: src/edit.c
5055
5056Patch 6.0.209
5057Problem: GUI GTK: After selecting a 'guifont' with the font dialog there
5058 are redraw problems for multi-byte characters.
5059Solution: Separate the font dialog from setting the new font name to avoid
5060 that "*" is used to find wide and bold fonts.
5061 When redrawing extra characters for the bold trick, take care of
5062 UTF-8 characters.
5063Files: src/gui.c, src/gui_gtk_x11.c, src/option.c, src/proto/gui.pro,
5064 src/proto/gui_gtk_x11.pro
5065
5066Patch 6.0.210
5067Problem: After patch 6.0.167 it's no longer possible to edit a help file in
5068 another encoding than latin1.
5069Solution: Let the "++enc=" argument overrule the encoding.
5070Files: src/fileio.c
5071
5072Patch 6.0.211
5073Problem: When reading a file fails, the buffer is empty, but it might still
5074 be possible to write it with ":w" later. The original file is
5075 lost then. (Steve Amerige)
5076Solution: Set the 'readonly' option for the buffer.
5077Files: src/fileio.c
5078
5079Patch 6.0.212
5080Problem: GUI GTK: confirm("foo", "") causes a crash.
5081Solution: Don't make a non-existing button the default. Add a default "OK"
5082 button if none is specified.
5083Files: src/eval.c, src/gui_gtk.c
5084
5085Patch 6.0.213
5086Problem: When a file name contains unprintable characters, CTRL-G and other
5087 commands don't work well.
5088Solution: Turn unprintable into printable characters. (Yasuhiro Matsumoto)
5089Files: src/buffer.c, src/charset.c
5090
5091Patch 6.0.214
5092Problem: When there is a buffer without a name, empty entries appear in the
5093 jumplist saved in the viminfo file.
5094Solution: Don't write jumplist entries without a file name.
5095Files: src/mark.c
5096
5097Patch 6.0.215
5098Problem: After using "/" from Visual mode the Paste menu and Toolbar
5099 entries don't work. Pasting with the middle mouse doesn't work
5100 and modeless selection doesn't work.
5101Solution: Use the command line mode menus and use the mouse like in the
5102 command line.
5103Files: src/gui.c, src/menu.c, src/ui.c
5104
5105Patch 6.0.216
5106Problem: After reloading a file, displayed in another window than the
5107 current one, which was changed outside of Vim the part of the file
5108 around the cursor set by autocommands may be displayed, but
5109 jumping back to the original cursor position when entering the
5110 window again.
5111Solution: Restore the topline of the window.
5112Files: src/fileio.c
5113
5114Patch 6.0.217
5115Problem: When getting help from a help file that was used before, an empty
5116 unlisted buffer remains in the buffer list. (Eric Long)
5117Solution: Wipe out the buffer used to do the tag jump from.
5118Files: src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
5119
5120Patch 6.0.218
5121Problem: With explorer plugin: "vim -o filename dirname" doesn't load the
5122 explorer window until entering the window.
5123Solution: Call s:EditDir() for each window after starting up.
5124Files: runtime/plugin/explorer.vim
5125
5126Patch 6.0.219
5127Problem: ":setlocal" and ":setglobal", without arguments, display terminal
5128 options. (Zdenek Sekera)
5129Solution: Skip terminal options for these two commands.
5130Files: src/option.c
5131
5132Patch 6.0.220
5133Problem: After patch 6.0.218 get a beep on startup. (Muraoka Taro)
5134Solution: Don't try going to another window when there isn't one.
5135Files: runtime/plugin/explorer.vim
5136
5137Patch 6.0.221
5138Problem: When using ":bdel" and all other buffers are unloaded the lowest
5139 numbered buffer is jumped to instead of the most recent one. (Dave
5140 Cecil)
5141Solution: Prefer an unloaded buffer from the jumplist.
5142Files: src/buffer.c
5143
5144Patch 6.0.222
5145Problem: When 'virtualedit' is set and using autoindent, pressing Esc after
5146 starting a new line leaves behind part of the autoindent. (Helmut
5147 Stiegler)
5148Solution: After deleting the last char in the line adjust the cursor
5149 position in del_bytes().
5150Files: src/misc1.c, src/ops.c
5151
5152Patch 6.0.223
5153Problem: When splitting a window that contains the explorer, hitting CR on
5154 a file name gives error messages.
5155Solution: Set the window variables after splitting the window.
5156Files: runtime/plugin/explorer.vim
5157
5158Patch 6.0.224
5159Problem: When 'sidescroll' and 'sidescrolloff' are set in a narrow window
5160 the text may jump left-right and the cursor is displayed in the
5161 wrong position. (Aric Blumer)
5162Solution: When there is not enough room, compute the left column for the
5163 window to put the cursor in the middle.
5164Files: src/move.c
5165
5166Patch 6.0.225
5167Problem: In Visual mode "gk" gets stuck in a closed fold. (Srinath
5168 Avadhanula)
5169Solution: Behave differently in a closed fold.
5170Files: src/normal.c
5171
5172Patch 6.0.226
5173Problem: When doing ":recover file" get the ATTENTION prompt.
5174 After recovering the same file five times get a read error or a
5175 crash. (Alex Davis)
5176Solution: Set the recoverymode flag before setting the file name.
5177 Correct the amount of used memory for the size of block zero.
5178Files: src/ex_docmd.c
5179
5180Patch 6.0.227 (extra)
5181Problem: The RISC OS port has several problems.
5182Solution: Update the makefile and fix some of the problems. (Andy Wingate)
5183Files: src/Make_ro.mak, src/os_riscos.c, src/os_riscos.h,
5184 src/proto/os_riscos.pro, src/search.c
5185
5186Patch 6.0.228
5187Problem: After putting text in Visual mode the '] mark is not at the end of
5188 the put text.
5189 Undo doesn't work properly when putting a word into a Visual
5190 selection that spans more than one line.
5191Solution: Correct the '] mark for the deleting the Visually selected text.
5192 #ifdef code that depends on FEAT_VISUAL properly.
5193 Also fix that "d" crossing line boundary puts '[ just before
5194 deleted text.
5195 Fix undo by saving all deleted lines at once.
5196Files: src/ex_docmd.c, src/globals.h, src/normal.c, src/ops.c,
5197 src/structs.h, src/vim.h
5198
5199Patch 6.0.229
5200Problem: Multi-byte: With 'm' in 'formatoptions', formatting doesn't break
5201 at a multi-byte char followed by an ASCII char, and the other way
5202 around. (Muraoka Taro)
5203 When joining lines a space is inserted between multi-byte
5204 characters, which is not always wanted.
5205Solution: Check for multi-byte character before and after the breakpoint.
5206 Don't insert a space before or after a multi-byte character when
5207 joining lines and the 'M' flag is in 'formatoptions'. Don't
5208 insert a space between multi-byte characters when the 'B' flag is
5209 in 'formatoptions'.
5210Files: src/edit.c, src/ops.c, src/option.h
5211
5212Patch 6.0.230
5213Problem: The ":" used as a motion after an operator is exclusive, but
5214 sometimes it should be inclusive.
5215Solution: Make the "v" in between an operator and motion toggle
5216 inclusive/exclusive. (Servatius Brandt)
5217Files: runtime/doc/motion.txt, src/normal.c
5218
5219Patch 6.0.231
5220Problem: "gd" and "gD" don't work when the variable matches in a comment
5221 just above the match to be found. (Servatius Brandt)
5222Solution: Continue searching in the first column below the comment.
5223Files: src/normal.c
5224
5225Patch 6.0.232
5226Problem: "vim --version" prints on stderr while "vim --help" prints on
5227 stdout.
5228Solution: Make "vim --version" use stdout.
5229Files: runtime/doc/starting.txt, src/globals.h, src/main.c, src/message.c
5230
5231Patch 6.0.233
5232Problem: "\1\{,8}" in a regexp is not allowed, but it should work, because
5233 there is an upper limit. (Jim Battle)
5234Solution: Allow using "\{min,max}" after an atom that can be empty if there
5235 is an upper limit.
5236Files: src/regexp.c
5237
5238Patch 6.0.234
5239Problem: It's not easy to set the cursor position without modifying marks.
5240Solution: Add the cursor() function. (Yegappan Lakshmanan)
5241Files: runtime/doc/eval.txt, src/eval.c
5242
5243Patch 6.0.235
5244Problem: When writing a file and renaming the original file to make the
5245 backup, permissions could change when setting the owner.
5246Solution: Only set the owner when it's needed and set the permissions again
5247 afterwards.
5248 When 'backupcopy' is "auto" check that the owner and permissions
5249 of a newly created file can be set properly.
5250Files: src/fileio.c
5251
5252Patch 6.0.236
5253Problem: ":edit" without argument should move cursor to line 1 in Vi
5254 compatible mode.
5255Solution: Add 'g' flag to 'cpoptions'.
5256Files: runtime/doc/options.txt, src/ex_docmd.c, src/option.h
5257
5258Patch 6.0.237
5259Problem: In a C file, using the filetype plugin, re-indenting a comment
5260 with two spaces after the middle "*" doesn't align properly.
5261Solution: Don't use a middle entry from a start/middle/end to line up with
5262 the start of the comment when the start part doesn't match with
5263 the actual comment start.
5264Files: src/misc1.c
5265
5266Patch 6.0.238
5267Problem: Using a ":substitute" command with a substitute() call in the
5268 substitution expression causes errors. (Srinath Avadhanula)
5269Solution: Save and restore pointers when doing substitution recursively.
5270Files: src/regexp.c
5271
5272Patch 6.0.239
5273Problem: Using "A" to append after a Visually selected block which is after
5274 the end of the line, spaces are inserted in the wrong line and
5275 other unexpected effects. (Michael Naumann)
5276Solution: Don't advance the cursor to the next line.
5277Files: src/ops.c
5278
5279Patch 6.0.240
5280Problem: Win32: building with Python 2.2 doesn't work.
5281Solution: Add support for Python 2.2 with dynamic linking. (Paul Moore)
5282Files: src/if_python.c
5283
5284Patch 6.0.241
5285Problem: Win32: Expanding the old value of an option that is a path that
5286 starts with a backslash, an extra backslash is inserted.
5287Solution: Only insert backslashes where needed.
5288 Also handle multi-byte characters properly when removing
5289 backslashes.
5290Files: src/option.c
5291
5292Patch 6.0.242
5293Problem: GUI: On a system with an Exceed X server sometimes get a "Bad
5294 Window" error. (Tommi Maekitalo)
5295Solution: When forking, use a pipe to wait in the parent for the child to
5296 have done the setsid() call.
5297Files: src/gui.c
5298
5299Patch 6.0.243
5300Problem: Unix: "vim --version" outputs a NL before the last line instead of
5301 after it. (Charles Campbell)
5302Solution: Send the NL to the same output stream as the text.
5303Files: src/message.c, src/os_unix.c, src/proto/message.pro
5304
5305Patch 6.0.244
5306Problem: Multi-byte: Problems with (illegal) UTF-8 characters in menu and
5307 file name (e.g., icon text, status line).
5308Solution: Correctly handle unprintable characters. Catch illegal UTF-8
5309 characters and replace them with <xx>. Truncating the status line
5310 wasn't done correctly at a multi-byte character. (Yasuhiro
5311 Matsumoto)
5312 Added correct_cmdspos() and transchar_byte().
5313Files: src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c,
5314 src/message.c, src/screen.c, src/vim.h
5315
5316Patch 6.0.245
5317Problem: After using a color scheme, setting the 'background' option might
5318 not work. (Peter Horst)
5319Solution: Disable the color scheme if it switches 'background' back to the
5320 wrong value.
5321Files: src/option.c
5322
5323Patch 6.0.246
5324Problem: ":echomsg" didn't use the highlighting set by ":echohl". (Gary
5325 Holloway)
5326Solution: Use the specified attributes for the message. (Yegappan
5327 Lakshmanan)
5328Files: src/eval.c
5329
5330Patch 6.0.247
5331Problem: GTK GUI: Can't use gvim in a kpart widget.
5332Solution: Add the "--echo-wid" argument to let Vim echo the window ID on
5333 stdout. (Philippe Fremy)
5334Files: runtime/doc/starting.txt, src/globals.h, src/gui_gtk_x11.c,
5335 src/main.c
5336
5337Patch 6.0.248
5338Problem: When using compressed help files and 'encoding' isn't "latin1",
5339 Vim converts the help file before decompressing. (David Reviejo)
5340Solution: Don't convert a help file when 'binary' is set.
5341Files: src/fileio.c
5342
5343Patch 6.0.249
5344Problem: "vim -t edit -c 'sta ex_help'" doesn't move cursor to edit().
5345Solution: Don't set the cursor on the first line for "-c" arguments when
5346 there also is a "-t" argument.
5347Files: src/main.c
5348
5349Patch 6.0.250 (extra)
5350Problem: Macintosh: Various problems when compiling.
5351Solution: Various fixes, mostly #ifdefs. (Dany St. Amant)
5352Files: src/gui_mac.c, src/main.c, src/misc2.c, src/os_mac.h,
5353 src/os_mac.pbproj/project.pbxproj, src/os_unix.c
5354
5355Patch 6.0.251 (extra)
5356Problem: Macintosh: menu shortcuts are not very clear.
5357Solution: Show the shortcut with the Mac clover symbol. (raindog)
5358Files: src/gui_mac.c
5359
5360Patch 6.0.252
5361Problem: When a user function was defined with "abort", an error that is
5362 not inside if/endif or while/endwhile doesn't abort the function.
5363 (Servatius Brandt)
5364Solution: Don't reset did_emsg when the function is to be aborted.
5365Files: src/ex_docmd.c
5366
5367Patch 6.0.253
5368Problem: When 'insertmode' is set, after "<C-O>:edit file" the next <C-O>
5369 doesn't work. (Benji Fisher) <C-L> has the same problem.
5370Solution: Reset need_start_insertmode once in edit().
5371Files: src/edit.c
5372
5373Patch 6.0.254 (extra)
5374Problem: Borland C++ 5.5: Checking for stack overflow doesn't work
5375 correctly. Matters when using a complicated regexp.
5376Solution: Remove -N- from Make_bc5.mak. (Yasuhiro Matsumoto)
5377Files: src/Make_bc5.mak
5378
5379Patch 6.0.255 (extra) (depends on patch 6.0.116 and 6.0.121)
5380Problem: Win32: ACL support doesn't work well on Samba drives.
5381Solution: Add a check for working ACL support. (Mike Williams)
5382Files: src/os_win32.c
5383
5384Patch 6.0.256 (extra)
5385Problem: Win32: ":highlight Comment guifg=asdf" does not give an error
5386 message. (Randall W. Morris) Also for other systems.
5387Solution: Add gui_get_color() to give one error message for all systems.
5388Files: src/gui.c, src/gui_amiga.c, src/gui_athena.c, src/gui_motif.c,
5389 src/gui_riscos.c, src/gui_x11.c, src/gui_gtk_x11.c,
5390 src/proto/gui.pro, src/syntax.c
5391
5392Patch 6.0.257
5393Problem: Win32: When 'mousefocus' is set and there is a BufRead
5394 autocommand, after the dialog for permissions changed outside of
5395 Vim: 'mousefocus' stops working. (Robert Webb)
5396Solution: Reset need_mouse_correct after checking timestamps.
5397Files: src/fileio.c
5398
5399Patch 6.0.258
5400Problem: When 'scrolloff' is 999 and there are folds, the text can jump up
5401 and down when moving the cursor down near the end of the file.
5402 (Lubomir Host)
5403Solution: When putting the cursor halfway the window start counting lines at
5404 the end of a fold.
5405Files: src/move.c
5406
5407Patch 6.0.259
5408Problem: MS-DOS: after editing the command line the cursor shape may remain
5409 like in Insert mode. (Volker Kiefel)
5410Solution: Reset the cursor shape after editing the command line.
5411Files: src/ex_getln.c
5412
5413Patch 6.0.260
5414Problem: GUI: May crash while starting up when giving an error message for
5415 missing color. (Servatius Brandt)
5416Solution: Don't call gui_write() when still starting up. Don't give error
5417 message for empty color name. Don't use 't_vb' while the GUI is
5418 still starting up.
5419Files: src/fileio.c, src/gui.c, src/misc1.c, src/ui.c
5420
5421Patch 6.0.261
5422Problem: nr2char() and char2nr() don't work with multi-byte characters.
5423Solution: Use 'encoding' for these functions. (Yasuhiro Matsumoto)
5424Files: runtime/doc/eval.txt, src/eval.c
5425
5426Patch 6.0.262 (extra)
5427Problem: Win32: IME doesn't work properly. OnImeComposition() isn't used
5428 at all.
5429Solution: Adjust various things for IME.
5430Files: src/globals.h, src/gui_w32.c, src/mbyte.c, src/proto/ui.pro,
5431 src/structs.h, src/ui.c
5432
5433Patch 6.0.263
5434Problem: GTK: When a dialog is closed by the window manager, Vim hangs.
5435 (Christian J. Robinson)
5436Solution: Use GTK_WIDGET_DRAWABLE() instead of GTK_WIDGET_VISIBLE().
5437Files: src/gui_gtk.c, src/gui_gtk_x11.c
5438
5439Patch 6.0.264
5440Problem: The amount of virtual memory is used to initialize 'maxmemtot',
5441 which may be much more than the amount of physical memory,
5442 resulting in a lot of swapping.
5443Solution: Get the amount of physical memory with sysctl(), sysconf() or
5444 sysinfo() when possible.
5445Files: src/auto/configure, src/configure.in, src/config.h.in,
5446 src/os_unix.c, src/os_unix.h
5447
5448Patch 6.0.265
5449Problem: Win32: Using backspace while 'fkmap' is set causes a crash.
5450 (Jamshid Oasjmoha)
5451Solution: Don't try mapping special keys.
5452Files: src/farsi.c
5453
5454Patch 6.0.266
5455Problem: The rename() function deletes the file if the old and the new name
5456 are the same. (Volker Kiefel)
5457Solution: Don't do anything if the names are equal.
5458Files: src/fileio.c
5459
5460Patch 6.0.267
5461Problem: UTF-8: Although 'isprint' says a character is printable,
5462 utf_char2cells() still considers it unprintable.
5463Solution: Use vim_isprintc() for characters upto 0x100. (Yasuhiro Matsumoto)
5464Files: src/mbyte.c
5465
5466Patch 6.0.268 (extra) (depends on patch 6.0.255)
5467Problem: Win32: ACL check crashes when using forward slash in file name.
5468Solution: Improve the check for the path in the file name.
5469Files: src/os_win32.c
5470
5471Patch 6.0.269
5472Problem: Unprintable characters in a file name may cause problems when
5473 using the 'statusline' option or when 'buftype' is "nofile".
5474Solution: call trans_characters() for the resulting statusline. (Yasuhiro
5475 Matsumoto)
5476Files: src/buffer.c, src/screen.c, src/charset.c
5477
5478Patch 6.0.270 (depends on patch 6.0.267)
5479Problem: A tab causes UTF-8 text to be displayed in the wrong position.
5480 (Ron Aaron)
5481Solution: Correct utf_char2cells() again.
5482Files: src/mbyte.c
5483
5484Patch 6.1a.001 (extra)
5485Problem: 32bit DOS: copying text to the clipboard may cause a crash.
5486 (Jonathan D Johnston)
5487Solution: Don't copy one byte too much in SetClipboardData().
5488Files: src/os_msdos.c
5489
5490Patch 6.1a.002
5491Problem: GTK: On some configurations, when closing a dialog from the window
5492 manager, Vim hangs.
5493Solution: Catch the "destroy" signal. (Aric Blumer)
5494Files: src/gui_gtk.c
5495
5496Patch 6.1a.003
5497Problem: Multi-byte: With UTF-8 double-wide char and 'virtualedit' set:
5498 yanking in Visual mode doesn't include the last byte. (Eric Long)
5499Solution: Don't add a space for a double-wide character.
5500Files: src/ops.c
5501
5502Patch 6.1a.004 (extra)
5503Problem: MINGW: undefined type. (Ron Aaron)
5504Solution: Make GetCompositionString_inUCS2() static.
5505Files: src/gui_w32.c, src/gui_w48.c, src/proto/gui_w32.pro
5506
5507Patch 6.1a.005 (extra)
5508Problem: Win32: ":hardcopy" doesn't work after ":hardcopy!". (Jonathan
5509 Johnston)
5510Solution: Don't keep the driver context when using ":hardcopy!". (Vince
5511 Negri)
5512Files: src/os_mswin.c
5513
5514Patch 6.1a.006
5515Problem: multi-byte: after setting 'encoding' the window title might be
5516 wrong.
5517Solution: Force resetting the title. (Yasuhiro Matsumoto)
5518Files: src/option.c
5519
5520Patch 6.1a.007
5521Problem: Filetype detection for "*.inc" doesn't work.
5522Solution: Use a ":let" command. (David Schweikert)
5523Files: runtime/filetype.vim
5524
5525Patch 6.1a.008 (extra)
5526Problem: Win32: ACL detection for network shares doesn't work.
5527Solution: Include the trailing (back)slash in the root path. (Mike Williams)
5528Files: src/os_win32.c
5529
5530Patch 6.1a.009
5531Problem: When using "\@<=" or "\@<!" in a pattern, a "\1" may refer to a ()
5532 part that follows, but it generates an error message.
5533Solution: Allow a forward reference when there is a following "\@<=" or
5534 "\@<!".
5535Files: runtime/doc/pattern.txt, src/regexp.c
5536
5537Patch 6.1a.010
5538Problem: When using ":help" and opening a new window, the alternate file
5539 isn't set.
5540Solution: Set the alternate file to the previously edited file.
5541Files: src/ex_cmds.c
5542
5543Patch 6.1a.011
5544Problem: GTK: ":set co=77", change width with the mouse, ":set co=77"
5545 doesn't resize the window. (Darren Hiebert)
5546Solution: Set the form size after handling a resize event.
5547Files: src/gui_gtk_x11.c
5548
5549Patch 6.1a.012
5550Problem: GTK: The file browser always returns a full path. (Lohner)
5551Solution: Shorten the file name if possible.
5552Files: src/gui_gtk.c
5553
5554Patch 6.1a.013
5555Problem: When using "=~word" in 'cinkeys' or 'indentkeys', the case of the
5556 last character of the word isn't ignored. (Raul Segura Acevedo)
5557Solution: Ignore case when checking the last typed character.
5558Files: src/edit.c
5559
5560Patch 6.1a.014
5561Problem: After patch 6.1a.006 can't compile without the title feature.
5562Solution: Add an #ifdef.
5563Files: src/option.c
5564
5565Patch 6.1a.015
5566Problem: MS-Windows: When expanding a file name that contains a '[' or '{'
5567 an extra backslash is inserted. (Raul Segura Acevedo)
5568Solution: Avoid adding the backslash.
5569Files: src/ex_getln.c
5570
5571Patch 6.1a.016
5572Problem: Completion after ":language" doesn't include "time". (Raul Segura
5573 Acevedo)
5574Solution: Add the alternative to the completions.
5575Files: src/ex_cmds2.c
5576
5577Patch 6.1a.017
5578Problem: Clicking the mouse in the top row of a window where the first line
5579 doesn't fit moves the cursor to the wrong column.
5580Solution: Add the skipcol also for the top row of a window.
5581Files: src/ui.c
5582
5583Patch 6.1a.018
5584Problem: When 'scrolloff' is one and the window height is one, "gj" can put
5585 the cursor above the window. (Raul Segura Acevedo)
5586Solution: Don't let skipcol become bigger than the cursor column.
5587Files: src/move.c
5588
5589Patch 6.1a.019
5590Problem: When using a composing character on top of an ASCII character, the
5591 "l" command clears the composing character. Only when 'ruler' and
5592 'showcmd' are off. (Raphael Finkel)
5593Solution: Don't move the cursor by displaying characters when there are
5594 composing characters.
5595Files: src/screen.c
5596
5597Patch 6.1a.020
5598Problem: GTK: after patch 6.1a.011 resizing with the mouse doesn't always
5599 work well for small sizes. (Adrien Beau)
5600Solution: Use another way to avoid the problem with ":set co=77".
5601Files: src/gui_gtk_x11.c
5602
5603Patch 6.1a.021
5604Problem: Several Syntax menu entries are wrong or confusing.
5605Solution: Rephrase and correct the menu entries. (Adrien Beau)
5606Files: runtime/makemenu.vim, runtime/menu.vim
5607
5608Patch 6.1a.022
5609Problem: A tags file might be used twice on case insensitive systems.
5610 (Rick Swanton)
5611Solution: Don't use the same file name twice in the default for the 'tags'
5612 option. Ignore case when comparing names of already visited
5613 files.
5614Files: src/misc2.c, src/option.c
5615
5616Patch 6.1a.023
5617Problem: When starting the GUI get "C" characters echoed in the terminal.
5618Solution: Don't try sending a clear-screen command while the GUI is starting
5619 up.
5620Files: src/screen.c
5621
5622Patch 6.1a.024
5623Problem: In other editors CTRL-F is often used for a find dialog.
5624Solution: In evim use CTRL-F for the find dialog.
5625Files: runtime/evim.vim
5626
5627Patch 6.1a.025
5628Problem: The choices for the fileformat dialog can't be translated.
5629Solution: Add g:menutrans_fileformat_choices. (Adrien Beau)
5630Files: runtime/menu.vim
5631
5632Patch 6.1a.026
5633Problem: Indenting Java files is wrong with "throws", "extends" and
5634 "implements" clauses.
5635Solution: Update the Java indent script.
5636Files: runtime/indent/java.vim
5637
5638Patch 6.1a.027
5639Problem: A few Syntax menu entries missing or incorrect.
5640Solution: Add and correct the menu entries. (Adrien Beau)
5641 Shorten a few menus to avoid they become too long.
5642Files: runtime/makemenu.vim, runtime/menu.vim
5643
5644Patch 6.1a.028
5645Problem: XIM: problems with feedback and some input methods.
5646Solution: Use iconv for calculating the cells. Remove the queue for
5647 key_press_event only when text was changed. (Yasuhiro Matsumoto)
5648Files: src/globals.h, src/mbyte.c, src/screen.c
5649
5650Patch 6.1a.029
5651Problem: After patch 6.1a.028 can't compile GTK version with XIM but
5652 without multi-byte chars.
5653Solution: Add an #ifdef. (Aschwin Marsman)
5654Files: src/mbyte.c
5655
5656Patch 6.1a.030
5657Problem: With double-byte encodings toupper() and tolower() may have wrong
5658 results.
5659Solution: Skip double-byte characters. (Eric Long)
5660Files: src/eval.c
5661
5662Patch 6.1a.031
5663Problem: Accessing the 'balloondelay' variable may cause a crash.
5664Solution: Make the variable for 'balloondelay' a long. (Olaf Seibert)
5665Files: src/option.h
5666
5667Patch 6.1a.032 (extra)
5668Problem: Some menu files used a wrong encoding name for "scriptencoding".
5669Solution: Move the translations to a separate file, which is sourced after
5670 setting "scriptencoding".
5671 Also add Czech menu translations in ASCII and update the other
5672 encodings.
5673Files: runtime/lang/menu_cs_cz.iso_8859-1.vim,
5674 runtime/lang/menu_cs_cz.iso_8859-2.vim,
5675 runtime/lang/menu_czech_czech_republic.1250.vim,
5676 runtime/lang/menu_czech_czech_republic.1252.vim,
5677 runtime/lang/menu_czech_czech_republic.ascii.vim,
5678 runtime/lang/menu_de_de.iso_8859-1.vim,
5679 runtime/lang/menu_de_de.latin1.vim,
5680 runtime/lang/menu_fr_fr.iso_8859-1.vim,
5681 runtime/lang/menu_fr_fr.latin1.vim,
5682 runtime/lang/menu_french_france.1252.vim,
5683 runtime/lang/menu_german_germany.1252.vim,
5684 runtime/lang/menu_ja_jp.euc-jp.vim,
5685 runtime/lang/menu_ja_jp.utf-8.vim,
5686 runtime/lang/menu_japanese_japan.932.vim
5687
5688Patch 6.1a.033
5689Problem: XIM: doesn't reset input context.
5690Solution: call xim_reset() with im_set_active(FALSE). (Takuhiro Nishioka)
5691Files: src/mbyte.c
5692
5693Patch 6.1a.034 (extra)
5694Problem: Win32: The ACL checks for a readonly file still don't work well.
5695Solution: Remove the ACL checks, go back to how it worked in Vim 6.0.
5696Files: src/os_win32.c
5697
5698Patch 6.1a.035
5699Problem: multi-byte: When using ":sh" in the GUI, typed and displayed
5700 multi-byte characters are not handled correctly.
5701Solution: Deal with multi-byte characters to and from the shell. (Yasuhiro
5702 Matsumoto) Also handle UTF-8 composing characters.
5703Files: src/os_unix.c
5704
5705Patch 6.1a.036
5706Problem: GTK: the save-yourself event was not handled.
5707Solution: Catch the save-yourself event and preserve swap files. (Neil Bird)
5708Files: src/gui_gtk_x11.c
5709
5710Patch 6.1a.037
5711Problem: The MS-Windows key mapping doesn't include CTRL-S for saving.
5712 (Vlad Sandrini)
5713Solution: Map CTRL-S to ":update".
5714Files: runtime/mswin.vim
5715
5716Patch 6.1a.038
5717Problem: Solaris: Including both sys/sysctl.h and sys/sysinfo.h doesn't
5718 work. (Antonio Colombo)
5719Solution: Don't include sys/sysinfo.h when not calling sysinfo().
5720Files: src/os_unix.c
5721
5722Patch 6.1a.039
5723Problem: Not all visual basic files are recognized.
5724Solution: Add checks to catch *.ctl files. (Raul Segura Acevedo)
5725Files: runtime/filetype.vim
5726
5727Patch 6.1a.040
5728Problem: A *.pl file is recognized as Perl, but it could be a prolog file.
5729Solution: Check the first non-empty line. (Kontra Gergely)
5730Files: runtime/filetype.vim
5731
5732Patch 6.1a.041
5733Problem: When pressing the left mouse button in the command line and them
5734 moving the mouse upwards, nearly all the text is selected.
5735Solution: Don't try extending a modeless selection when there isn't one.
5736Files: src/ui.c
5737
5738Patch 6.1a.042
5739Problem: When merging files, ":diffput" and ":diffget" are used a lot, but
5740 they require a lot of typing.
5741Solution: Add "dp" for ":diffput" and "do" for ":diffget".
5742Files: runtime/doc/diff.txt, src/diff.c, src/normal.c, src/proto/diff.pro
5743
5744
5745Patch 6.1b.001 (extra)
5746Problem: Checking for wildcards in a path does not handle multi-byte
5747 characters with a trail byte which is a wildcard.
5748Solution: Handle multi-byte characters correctly. (Muraoka Taro)
5749Files: src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c,
5750 src/os_unix.c
5751
5752Patch 6.1b.002
5753Problem: A regexp that ends in "\{" is not flagged as an error. May cause
5754 a stack overflow when 'incsearch' is set. (Gerhard Hochholzer)
5755Solution: Handle a missing "}" as an error.
5756Files: src/regexp.c
5757
5758Patch 6.1b.003 (extra)
5759Problem: The RISC OS GUI doesn't compile.
5760Solution: Include changes since Vim 5.7. (Andy Wingate)
5761Files: src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c,
5762 src/os_riscos.h, src/proto/gui_riscos.pro
5763
5764Patch 6.1b.004
5765Problem: col("'>") returns a negative number for linewise selection. (Neil
5766 Bird)
5767Solution: Don't add one to MAXCOL.
5768Files: src/eval.c
5769
5770Patch 6.1b.005
5771Problem: Using a search pattern that causes an out-of-stack error while
5772 'hlsearch' is set keeps giving the hit-Enter prompt.
5773 A search pattern that takes a long time delays typing when
5774 'incsearch' is set.
5775Solution: Stop 'hlsearch' highlighting when the regexp causes an error.
5776 Stop searching for 'incsearch' when a character is typed.
5777Files: src/globals.h, src/message.c, src/screen.c, src/search.c,
5778 src/vim.h
5779
5780Patch 6.1b.006
5781Problem: When entering a composing character on the command line with
5782 CTRL-V, the text isn't redrawn correctly.
5783Solution: Redraw the text under and after the cursor.
5784Files: src/ex_getln.c
5785
5786Patch 6.1b.007
5787Problem: When the cursor is in the white space between two sentences, "dis"
5788 deletes the first character of the following sentence, "das"
5789 deletes a space after the sentence.
5790Solution: Backup the cursor one character in these situations.
5791Files: src/search.c
5792
5793Patch 6.1b.008
5794Problem: *.xsl files are not recognized as xslt but xml.
5795 Monk files are not recognized.
5796Solution: Delete the duplicate line for *.xsl. (Johannes Zellner)
5797 Recognize monk files.
5798Files: runtime/filetype.vim
5799
5800Patch 6.1b.009
5801Problem: Can't always compile small features and then adding eval feature,
5802 "sandbox" is undefined. (Axel Kielhorn)
5803Solution: Always define "sandbox" when the eval feature is used.
5804Files: src/globals.h
5805
5806Patch 6.1b.010 (extra)
5807Problem: When compiling gvimext.cpp with MSVC 4.2 get a number of warnings.
5808Solution: Change "true" to "TRUE". (Walter Briscoe)
5809Files: GvimExt/gvimext.cpp
5810
5811Patch 6.1b.011
5812Problem: When using a very long string for confirm(), can't quit the
5813 displaying at the more prompt. (Hari Krishna Dara)
5814Solution: Jump to the end of the message to show the choices.
5815Files: src/message.c
5816
5817Patch 6.1b.012
5818Problem: Multi-byte: When 'showbreak' is set and a double-wide character
5819 doesn't fit at the right window edge the cursor gets stuck there.
5820 Using cursor-left gets stuck when 'virtualedit' is set. (Eric
5821 Long)
5822Solution: Fix the way the extra ">" character is counted when 'showbreak' is
5823 set. Don't correct cursor for virtual editing on a double-wide
5824 character.
5825Files: src/charset.c, src/edit.c
5826
5827Patch 6.1b.013
5828Problem: A user command that partly matches with a buffer-local user
5829 command and matches full with a global user command unnecessarily
5830 gives an 'ambiguous command' error.
5831Solution: Find the full global match even after a partly local match.
5832Files: src/ex_docmd.c
5833
5834Patch 6.1b.014
5835Problem: EBCDIC: switching mouse events off causes garbage on screen.
5836 Positioning the cursor in the GUI causes garbage.
5837Solution: Insert an ESC in the terminal code. (Ralf Schandl)
5838 Use "\b" instead of "\010" for KS_LE.
5839Files: src/os_unix.c, src/term.c
5840
5841Patch 6.1b.015
5842Problem: Vimtutor has a typo. Get a warning for "tempfile" if it
5843 doesn't exist.
5844Solution: Move a quote to the end of a line. (Max Ischenko)
5845 Use "mktemp" first, more systems have it.
5846Files: src/vimtutor
5847
5848Patch 6.1b.016
5849Problem: GTK: loading a fontset that works partly, Vim might hang or crash.
5850Solution: Avoid that char_width becomes zero. (Yasuhiro Matsumoto)
5851Files: src/gui_gtk_x11.c
5852
5853Patch 6.1b.017
5854Problem: GUI: When using ":shell" and there is a beep, nothing happens.
5855Solution: Call vim_beep() to produce the beep from the shell. (Yasuhiro
5856 Matsumoto)
5857Files: src/message.c
5858
5859Patch 6.1b.018 (depends on 6.1b.006)
5860Problem: When entering the encryption key, special keys may still reveal
5861 the typed characters.
5862Solution: Make sure stars are used or nothing is shown in all cases.
5863Files: src/digraph.c, src/getchar.c, src/ex_getln.c
5864
5865Patch 6.1b.019 (depends on 6.1b.005)
5866Problem: A search pattern that takes a long time slows down typing when
5867 'incsearch' is set.
5868Solution: Pass SEARCH_PEEK to dosearch().
5869Files: src/ex_getln.c
5870
5871Patch 6.1b.020
5872Problem: When using the matchit plugin, "%" finds a match on the "end" of a
5873 ":syntax region" command in Vim scripts.
5874Solution: Skip over ":syntax region" commands by setting b:match_skip.
5875Files: runtime/ftplugin/vim.vim
5876
5877Patch 6.1b.021
5878Problem: when 'mousefocus' is set, CTRL-W CTRL-] sometimes doesn't warp the
5879 pointer to the new window. (Robert Webb)
5880Solution: Don't reset need_mouse_correct when checking the timestamp of a
5881 file.
5882Files: src/fileio.c
5883
5884Patch 6.1b.022
5885Problem: With lots of folds "j" does not obey 'scrolloff' properly.
5886 (Srinath Avadhanula)
5887Solution: Go to end of the fold before counting context lines.
5888Files: src/move.c
5889
5890Patch 6.1b.023
5891Problem: On MS-Windows system() may cause checking timestamps, because Vim
5892 looses and gains input focus, while this doesn't happen on Unix.
5893Solution: Don't check timestamps while system() is busy.
5894Files: src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c
5895
5896Patch 6.1b.024 (extra)
5897Problem: Gettext 0.11 complains that "sjis" is not a standard name.
5898Solution: Use "cp932" instead.
5899Files: src/po/sjiscorr.c
5900
5901Patch 6.1b.025 (extra)
5902Problem: Win32: When closing gvim while it is minimized and has a changed
5903 file, the file-changed dialog pops up in a corner of the screen.
5904Solution: Put the dialog in the middle of the screen.
5905Files: src/gui_w48.c
5906
5907Patch 6.1b.026
5908Problem: When 'diffopt' contains 'iwhite' but not 'icase': differences in
5909 case are not highlighted properly. (Gerhard Hochholzer)
5910Solution: Don't ignore case when ignoring white space differences.
5911Files: src/diff.c
5912
5913Patch 6.1b.027
5914Problem: "vim --remote +" may cause a crash.
5915Solution: Check for missing file name argument. (Martin Kahlert)
5916Files: src/main.c
5917
5918Patch 6.1b.028 (extra)
5919Problem: Win16: Can't compile after patch 6.1b.025.
5920Solution: Add code specifically for Win16. (Vince Negri)
5921Files: src/gui_w48.c
5922
5923Patch 6.1b.029
5924Problem: Win32: When a directory on an NTFS partition is read/execute (no
5925 delete,modify,write) and the file has modify rights, trying to
5926 write the file deletes it. Making the file read/write/execute
5927 (not delete) solves it. (Mark Canup)
5928Solution: Use the Unix code to check for a writable directory. If not, then
5929 make a backup copy and overwrite the file.
5930Files: src/fileio.c
5931
5932Patch 6.1b.030 (extra)
5933Problem: Mac: small mistake in the build script and prototypes.
5934Solution: Fix the build script and add the prototypes. (Axel Kielhorn)
5935Files: src/os_mac.build, src/gui_mac.c
5936
5937Patch 6.1b.031 (extra)
5938Problem: Win32 GUI: ":set guifont=*" doesn't set 'guifont' to the resulting
5939 font name. (Vlad Sandrini)
5940Solution: Put the code back in gui_mch_init_font() to form the font name out
5941 of the logfont.
5942Files: src/gui_w48.c
5943
5944Patch 6.1b.032
5945Problem: Athena: Setting a color scheme before the GUI has started causes a
5946 crash. (Todd Blumer)
5947Solution: Don't try using color names that haven't been set yet.
5948Files: src/gui_athena.c
5949
5950Patch 6.1b.033
5951Problem: When using a count after a ":s" command may get ml_get errors.
5952 (Dietmar Lang)
5953Solution: Check that the resulting range does not go past the end of the
5954 buffer.
5955Files: src/ex_cmds.c
5956
5957Patch 6.1b.034
5958Problem: After sourcing mswin.vim, when using <C-S-Right> after
5959 auto-indenting and then <Del>, get warning for allocating
5960 ridiculous amount of memory. (Dave Delgreco)
5961Solution: Adjust the start of the Visual area when deleting the auto-indent.
5962Files: src/edit.c
5963
5964Patch 6.1b.035
5965Problem: When using evim, dropping a file on Vim and then double clicking
5966 on a word, it is changed to "i". (Merlin Hansen)
5967Solution: Reset need_start_insertmode after editing the file.
5968Files: src/ex_docmd.c
5969
5970
5971==============================================================================
5972VERSION 6.2 *version-6.2*
5973
5974This section is about improvements made between version 6.1 and 6.2.
5975
5976This is mainly a bug-fix release. There are also a few new features.
5977
5978Main new features:
5979- Support for GTK 2. (Daniel Elstner)
5980- Support for editing Arabic text. (Nadim Shaikli & Isam Bayazidi)
5981- ":try" command and exception handling. (Servatius Brandt)
5982- Support for the neXtaw GUI toolkit (mostly like Athena). (Alexey Froloff)
5983- Cscope support for Win32. (Khorev Sergey)
5984- Support for PostScript printing in various 8-bit encodings. (Mike Williams)
5985
5986
5987Changed *changed-6.2*
5988-------
5989
5990Removed the scheme indent file, the internal Lisp indenting works well now.
5991
5992Moved the GvimEXt, OleVim and VisVim directories into the "src" directory.
5993This is more consistent with how xxd is handled.
5994
5995The VisVim.dll file is installed in the top directory, next to gvimext.dll,
5996instead of in a subdirectory "VisVim". Fixes that NSIS was uninstalling it
5997from the wrong directory.
5998
5999Removed the art indent file, it didn't do anything.
6000
6001submatch() returned line breaks with CR instead of LF.
6002
6003Changed the Win32 Makefiles to become more uniform and compile gvimext.dll.
6004(Dan Sharp)
6005
6006'cindent': Align a "//" comment with a "//" comment in a previous line.
6007(Helmut Stiegler)
6008
6009Previously only for xterm-like terminals parent widgets were followed to find
6010the title and icon label. Now do this for all terminal emulators.
6011
6012Made it possible to recognize backslashes for "%" matching. The 'M' flag in
6013'cpoptions' disables it. (Haakon Riiser)
6014
6015Removed the Make_tcc.mak makefile for Turbo C. It didn't work and we probably
6016can't make it work (the compiler runs out of memory).
6017
6018Even though the documentation refers to keywords, "[ CTRL-D" was using
6019'isident' to find matches. Changed it to use 'iskeyword'. Also applies to
6020other commands that search for defined words in included files such as
6021":dsearch", "[D" and "[d".
6022
6023Made 'keywordprg' global-local. (Christian Robinson)
6024
6025Enabled the Netbeans interface by default. Reversed the configure argument
6026from "--enable-netbeans" to "--disable-netbeans".
6027
6028
6029Added *added-6.2*
6030-----
6031
6032New options:
6033 'arabic'
6034 'arabicshape'
6035 'ambiwidth'
6036 'autochdir'
6037 'casemap'
6038 'copyindent'
6039 'cscopequickfix'
6040 'preserveindent'
6041 'printencoding'
6042 'rightleftcmd'
6043 'termbidi'
6044 'toolbariconsize'
6045 'winfixheight'
6046
6047New keymaps:
6048 Serbian (Aleksandar Veselinovic)
6049 Chinese Pinyin (Fredrik Roubert)
6050 Esperanto (Antoine J. Mechelynck)
6051
6052New syntax files:
6053 Valgrind (Roger Luethi)
6054 Smarty template (Manfred Stienstra)
6055 MySQL (Kenneth Pronovici)
6056 RockLinux package description (Piotr Esden-Tempski)
6057 MMIX (Dirk Huesken)
6058 gkrellmrc (David Necas)
6059 Tilde (Tobias Rundtrom)
6060 Logtalk (Paulo Moura)
6061 PLP (Juerd Waalboer)
6062 fvwm2m4 (David Necas)
6063 IPfilter (Hendrik Scholz)
6064 fstab (Radu Dineiu)
6065 Quake (Nikolai Weibull)
6066 Occam (Mario Schweigler)
6067 lpc (Shizhu Pan)
6068 Exim conf (David Necas)
6069 EDIF (Artem Zankovich)
6070 .cvsrc (Nikolai Weibull)
6071 .fetchmailrc (Nikolai Weibull)
6072 GNU gpg (Nikolai Weibull)
6073 Grub (Nikolai Weibull)
6074 Modconf (Nikolai Weibull)
6075 RCS (Dmitry Vasiliev)
6076 Art (Dorai Sitaram)
6077 Renderman Interface Bytestream (Andrew J Bromage)
6078 Mailcap (Doug Kearns)
6079 Subversion commit file (Dmitry Vasiliev)
6080 Microsoft IDL (Vadim Zeitlin)
6081 WildPackets EtherPeek Decoder (Christopher Shinn)
6082 Spyce (Rimon Barr)
6083 Resolv.conf (Radu Dineiu)
6084 A65 (Clemens Kirchgatterer)
6085 sshconfig and sshdconfig (David Necas)
6086 Cheetah and HTMLCheetah (Max Ischenko)
6087 Packet filter (Camiel Dobbelaar)
6088
6089New indent files:
6090 Eiffel (David Clarke)
6091 Tilde (Tobias Rundtrom)
6092 Occam (Mario Schweigler)
6093 Art (Dorai Sitaram)
6094 PHP (Miles Lott)
6095 Dylan (Brent Fulgham)
6096
6097New tutor translations:
6098 Slovak (Lubos Celko)
6099 Greek (Christos Kontas)
6100 German (Joachim Hofmann)
6101 Norwegian (Øyvind Holm)
6102
6103New filetype plugins:
6104 Occam (Mario Schweigler)
6105 Art (Dorai Sitaram)
6106 ant.vim, aspvbs.vim, config.vim, csc.vim, csh.vim, dtd.vim, html.vim,
6107 jsp.vim, pascal.vim, php.vim, sgml.vim, sh.vim, svg.vim, tcsh.vim,
6108 xhtml.vim, xml.vim, xsd.vim. (Dan Sharp)
6109
6110New compiler plugins:
6111 Checkstyle (Doug Kearns)
6112 g77 (Ralf Wildenhues)
6113 fortran (Johann-Guenter Simon)
6114 Xmllint (Doug Kearns)
6115 Ruby (Tim Hammerquist)
6116 Modelsim vcom (Paul Baleme)
6117
6118New menu translations:
6119 Brazilian (José de Paula)
6120 British (Mike Williams)
6121 Korean in UTF-8. (Nam SungHyun)
6122 Norwegian (Øyvind Holm)
6123 Serbian (Aleksandar Jelenak)
6124
6125New message translation for Norwegian. (Øyvind Holm)
6126
6127New color scheme:
6128 desert (Hans Fugal)
6129
6130Arabic specific features. 'arabicshape', 'termbidi', 'arabic' and
6131'rightleftcmd' options. (Nadim Shaikli & Isam Bayazidi)
6132
6133Support for neXtaw GUI toolkit, mostly like Athena. (Alexey Froloff)
6134
6135Win32: cscope support. (Khorev Sergey)
6136
6137VMS: various improvements to documentation and makefiles. (Zoltan Arpadffy)
6138
6139Added "x" key to the explorer plugin: execute the default action. (Yasuhiro
6140Matsumoto)
6141
6142Compile gvimext.dll with MingW. (Rene de Zwart)
6143
6144Add the "tohtml.vim" plugin. It defines the ":TOhtml" user command, an easy
6145way to convert text to HTML.
6146
6147Added ":try" / ":catch" / ":finally" / ":endtry" commands. Add E999 numbers
6148to all error messages, so that they can be caught by the number.
6149(Servatius Brandt)
6150Moved part of ex_docmd.c to the new ex_eval.c source file.
6151
6152Include support for GTK+ 2.2.x (Daniel Elstner)
6153Adds the "~" register: drag & drop text.
6154Adds the 'toolbariconsize' option.
6155Add -Dalloca when running lint to work around a problem with alloca()
6156prototype.
6157
6158When selecting an item in the error window to jump to, take some effort to
6159find an ordinary window to show the file in (not a preview window).
6160
6161Support for PostScript printing of various 8-bit encodings. (Mike Williams)
6162
6163inputdialog() accepts a third argument that is used when the dialog is
6164cancelled. Makes it possible to see a difference between cancelling and
6165entering nothing.
6166
6167Included Aap recipes. Can be used to update Vim to the latest version,
6168building and installing.
6169
6170"/" option in 'cinoptions': extra indent for comment lines. (Helmut Stiegler)
6171
6172Vim variable "v:register" and functions setreg(), getreg() and getregtype().
6173(Michael Geddes)
6174
6175"v" flag in 'cpoptions': Leave text on screen with backspace in Insert mode.
6176(Phillip Vandry)
6177
6178Dosinst.exe also finds gvimext.dll in the "GvimExt" directory. Useful when
6179running install in the "src" directory for testing.
6180
6181Support tag files that were sorted with case ignored. (Flemming Madsen)
6182
6183When completing a wildcard in a leading path element, as in "../*/Makefile",
6184only the last part ("Makefile") was listed. Support custom defined
6185command line completion. (Flemming Madsen)
6186
6187Also recognize "rxvt" as an xterm-like terminal. (Tomas Styblo)
6188
6189Proper X11 session management. Fixes that the WM_SAVE_YOURSELF event was not
6190used by popular desktops. (Neil Bird)
6191Not used for Gnome 2, it has its own handling.
6192
6193Support BOR, DEBUG and SPAWNO arguments for the Borland 3 Makefile. (Walter
6194Briscoe)
6195
6196Support page breaks for printing. Adds the "formfeed" field in
6197'printoptions'. (Mike Williams)
6198
6199Mac OSX: multi-language support: iconv and gettext. (Muraoka Taro, Axel
6200Kielhorn)
6201
6202"\Z" flag in patterns: ignore differences in combining characters. (Ron Aaron)
6203
6204Added 'preserveindent' and 'copyindent' options. They use existing white
6205space characters instead of using Tabs as much as possible. (Chris Leishman)
6206
6207Updated Unicode tables to Unicode 4.0. (Raphael Finkel)
6208
6209Support for the mouse wheel in rxvt. (AIDA Shinra)
6210
6211Win32: Added ":8" file modifier to get short filename. Test50 tests the ":8"
6212expansion on Win32 systems. (Michael Geddes)
6213
6214'cscopequickfix' option: Open quickfix window for Cscope commands. Also
6215cleanup the code for giving messages. (Khorev Sergey)
6216
6217GUI: Support more than 222 columns for mouse positions.
6218
6219":stopinsert" command: Don't return to Insert mode.
6220
6221"interrupt" command for debug mode. Useful for simulating CTRL-C. (Servatius
6222Brandt)
6223
6224
6225Fixed *fixed-6.2*
6226-----
6227
6228Removed a few unused #defines from config.h.in, os_os2_cfg.h and os_vms_conf.h.
6229
6230The Vim icons in PNG format didn't have a transparent background. (Greg
6231Roelofs)
6232
6233Fixed a large number of spelling mistakes in the docs. (Adri Verhoef)
6234
6235The #defines for prototype generation were causing trouble. Changed them to
6236typedefs.
6237
6238A new version of libintl.h uses __asm__, which confuses cproto. Define a
6239dummy __asm__ macro.
6240
6241When 'virtualedit' is set can't move to halfway an unprintable character.
6242Cripples CTRL-V selection. (Taro Muraoka)
6243Allow moving to halfway an unprintable character. Don't let getvvcol() change
6244the pos->coladd argument.
6245
6246When a tab wraps to the next line, 'listchars' is set and 'foldcolumn' is
6247non-zero, only one character of the foldcolumn is highlighted. (Muraoka Taro)
6248
6249When using ":catch" without an argument Vim crashes. (Yasuhiro Matsumoto)
6250When no argument given use the ".*" pattern.
6251
6252Win32: When gvim.exe is started from a shortcut with the window style property
6253set to maximize Vim doesn't start with a maximized window. (Yasuhiro
6254Matsumoto) Open the window with the default size and don't call ShowWindow()
6255again when it's already visible. (Helmut Stiegler)
6256
6257gui_gtk.c used MAX, but it's undefined to avoid a conflict with system header
6258files.
6259
6260Win32: When closing a window from a mapping some pixels remain on the
6261statusline. (Yasuhiro Matsumoto)
6262
6263A column number in an errorformat that goes beyond the end of the line may
6264cause a crash.
6265
6266":throw 'test'" crashes Vim. (Yasuhiro Matsumoto)
6267
6268The file selector's scrollbar colors are not set after doing a ":hi Scrollbar
6269guifg=color". And the file selector's colors are not changed by the
6270colorscheme command. (David Harrison)
6271
6272Motif: When compiling with FEAT_FOOTER defined, the text area gets a few
6273pixels extra space on the right. Remove the special case in
6274gui_get_base_width(). (David Harrison)
6275
6276Using CTRL-R CTRL-P in Insert mode puts the '] mark in the wrong position.
6277(Helmut Stiegler)
6278
6279When 'formatoptions' includes "awct" a non-comment wasn't auto-formatted.
6280
6281Using a "--cmd" argument more than 10 times caused a crash.
6282
6283DEC style mouse support didn't work if the page field is not empty.
6284(Uribarri)
6285
6286"vim -l one two" did only set 'lisp' in the first file. Vi does it for every
6287file.
6288
6289":set tw<" didn't work. Was checking for '^' instead of '<'.
6290
6291In ":hardcopy > %.ps" the "%" was not expanded to the current filename.
6292
6293Made ":redraw" also update the Visual area.
6294
6295When a not implemented command, such as ":perl", has wrong arguments the less
6296important error was reported, giving the user the idea the command could work.
6297
6298On non-Unix systems autocommands for writing did not attempt a match with the
6299short file name, causing a pattern like "a/b" to fail.
6300
6301VMS: e_screenmode was not defined and a few other fixes for VMS. (Zoltan
6302Arpadffy)
6303
6304redraw_msg() depended on FEAT_ARABIC instead of FEAT_RIGHTLEFT. (Walter
6305Briscoe)
6306
6307Various changes for the PC Makefiles. (Walter Briscoe)
6308
6309Use _truename() instead of our own code to expand a file name into a full
6310path. (Walter Briscoe)
6311
6312Error in filetype check for /etc/modutils. (Lubomir Host)
6313
6314Cscope interface: allocated a buffer too small.
6315
6316Win16: remove a trailing backslash from a path when obtaining the permission
6317flags. (Vince Negri)
6318
6319When searching for tags with case ignored Vim could hang.
6320
6321When searching directories with a stopdir could get a crash. Did not
6322re-allocate enough memory. (Vince Negri)
6323
6324A user command may cause a crash. Don't use the command index when it's
6325negative. (Vince Negri)
6326
6327putenv() didn't work for MingW and Cygwin. (Dan Sharp)
6328
6329Many functions were common between os_msdos.c and os_win16.c. Use os_msdos.c
6330for compiling the Win16 version and remove the functions from os_win16.c.
6331(Vince Negri)
6332
6333For terminals that behave like an xterm but didn't have a name that is
6334recognized, the window title would not always be set.
6335
6336When syntax highlighting is off ":hardcopy" could still attempt printing
6337colors.
6338
6339Crash when using ":catch" without an argument. (Servatius Brandt)
6340
6341Win32: ":n #" doubled the backslashes.
6342
6343Fixed Arabic shaping for the command line. (Nadim Shaikli)
6344
6345Avoid splitting up a string displayed on the command line into individual
6346characters, it breaks Arabic shaping.
6347
6348Updated Cygwin and MingW makefiles to use more dependencies. (Dan Sharp)
6349
63502html.vim didn't work with 'nomagic' set.
6351
6352When a local argument list is used and doing ":only" Vim could crash later.
6353(Muraoka Taro)
6354
6355When using "%P" in 'statusline' and the fillchar is "-", a percentage of 3%
6356could result in "-3%". Also avoid changing a space inside a filename to the
6357fill character.
6358
6359MSwin: Handling of backslashes and double quotes for command line arguments
6360was not like what other applications do. (Walter Briscoe)
6361
6362Test32 sometimes didn't work, because test11.out was written as TEST11.OUT.
6363
6364Avoid pointer conversions warnings for Borland C 5.5 in dosinst.c and
6365uninstal.c.
6366
6367More improvements for Make_bc3.mak file. (Walter Briscoe)
6368
6369When ":syn sync linebreaks=1" is used, editing the first line caused a redraw
6370of the whole screen.
6371
6372Making translated messages didn't work, if_perl.xs wasn't found. (Vlad
6373Sandrini)
6374
6375Motif and Athena: moving Vim to the foreground didn't uniconify it. Use
6376XMapRaised() instead of XRaiseWindow(). (Srikanth Sankaran)
6377
6378When using ":ptag" in a window where 'scrollbind' is set the preview window
6379would also have 'scrollbind' set. Also reset 'foldcolumn' and 'diff'.
6380
6381Various commands that split a window took over 'scrollbind', which is hardly
6382ever desired. Esp. for "q:" and ":copen". Mostly reset 'scrollbind' when
6383splitting a window.
6384
6385When 'shellslash' is set in the vimrc file the first entry of ":scriptnames"
6386would still have backslashes. Entries in the quickfix list could also have
6387wrong (back)slashes.
6388
6389Win32: printer dialog texts were not translated. (Yasuhiro Matsumoto)
6390
6391When using a multi-byte character with a K_SPECIAL byte or a special key code
6392with "--remote-send" the received byte sequence was mangled. Put it in the
6393typeahead buffer instead of the input buffer.
6394
6395Win32: The cursor position was incorrect after changing cursor shape.
6396(Yasuhiro Matsumoto).
6397
6398Win32: When 'encoding' is not the current codepage the title could not be set
6399to non-ascii characters.
6400
6401"vim -d scp://machine/file1 scp://machine/file2" did not work, there was only
6402one window. Fixed the netrw plugin not to wipe out the buffer if it is
6403displayed in other windows.
6404
6405"/$" caused "e" in last column of screen to disappear, a highlighted blank was
6406displayed instead.
6407
6408":s/ *\ze\n//e" removed the line break and introduced arbitrary text. Was
6409using the line count including what matched after the "\ze".
6410
6411Using the "c" flag with ":s" changed the behavior when a line break is
6412replaced and "\@<=" is used. Without "c" a following match was not found.
6413
6414":%s/\vA@<=\nB@=//gce" got stuck on "A\nB" when entering "n".
6415
6416VMS: add HAVE_STRFTIME in the config file. (Zoltan Arpadffy)
6417
6418When a delete prompts if a delete should continue when yanking is not
6419possible, restore msg_silent afterwards.
6420
6421":sign" did not complain about a missing argument.
6422
6423When adding or deleting a sign 'hlsearch' highlighting could disappear.
6424Use the generic functions for updating signs.
6425
6426On MS-Windows NT, 2K and XP don't use command.com but cmd.exe for testing.
6427Makes the tests work on more systems.
6428
6429In the DOS tests don't create "/tmp" to avoid an error.
6430
6431Mac classic: Problems with reading files with CR vs CR/LF. Rely on the
6432library version of fgets() to work correctly for Metrowerks 2.2. (Axel
6433Kielhorn)
6434
6435When typing a password a "*" was shown for each byte instead of for each
6436character. Added multi-byte handling to displaying the stars. (Yasuhiro
6437Matsumoto)
6438
6439When using Perl 5.6 accessing $curbuf doesn't work. Add an #ifdef to use
6440different code for 5.6 and 5.8. (Dan Sharp)
6441
6442MingW and Cygwin: Don't strip the debug executable. (Dan Sharp)
6443
6444An assignment to a variable with curlies that includes "==" doesn't work.
6445Skip over the curlies before searching for an "=". (Vince Negri)
6446
6447When cancelling the selection of alternate matching tags the tag stack index
6448could be advanced too far, resulting in an error message when using CTRL-T.
6449
6450
6451Patch 6.1.001
6452Problem: When formatting UTF-8 text it might be wrapped at a space that is
6453 followed by a composing character. (Raphael Finkel)
6454 Also correct a display error for removing a composing char on top
6455 of a space.
6456Solution: Check for a composing character on a space.
6457Files: src/edit.c, src/misc1.c, src/screen.c
6458
6459Patch 6.1.002 (extra)
6460Problem: Win32: after a ":popup" command the mouse pointer stays hidden.
6461Solution: Unhide the mouse pointer before showing the menu.
6462Files: src/gui_w48.c
6463
6464Patch 6.1.003
6465Problem: When 'laststatus' is zero and there is a vertical split, the
6466 vertical separator is drawn in the command line. (Srikant
6467 Sankaran)
6468Solution: Don't draw the vertical separator where there is no statusline.
6469Files: src/screen.c
6470
6471Patch 6.1.004
6472Problem: Unicode 3.2 changes width and composing of a few characters.
6473 (Markus Kuhn)
6474Solution: Adjust the Unicode functions for the character width and composing
6475 characters.
6476Files: src/mbyte.c
6477
6478Patch 6.1.005
6479Problem: When using more than 50 items in 'statusline' Vim might crash.
6480 (Steve Hall)
6481Solution: Increment itemcnt in check_stl_option(). (Flemming Madsen)
6482Files: src/option.c
6483
6484Patch 6.1.006
6485Problem: When using "P" in Visual mode to put linewise selected text, the
6486 wrong text is deleted. (Jakub Turski)
6487Solution: Put the text before the Visual area and correct the text to be
6488 deleted for the inserted lines.
6489 Also fix that "p" of linewise text in Visual block mode doesn't
6490 work correctly.
6491Files: src/normal.c, src/ops.c
6492
6493Patch 6.1.007
6494Problem: Using ":filetype plugin off" when filetype plugins were never
6495 enabled causes an error message. (Yiu Wing)
6496Solution: Use ":silent!" to avoid the error message.
6497Files: runtime/ftplugof.vim
6498
6499Patch 6.1.008
6500Problem: The "%" command doesn't ignore \" inside a string, it's seen as
6501 the end of the string. (Ken Clark)
6502Solution: Skip a double quote preceded by an odd number of backslashes.
6503Files: src/search.c
6504
6505Patch 6.1.009
6506Problem: Vim crashes when using a huge number for the maxwid value in a
6507 statusline. (Robert M. Nowotniak)
6508Solution: Check for an overflow that makes maxwid negative.
6509Files: src/buffer.c
6510
6511Patch 6.1.010
6512Problem: Searching backwards for a question mark with "?\?" doesn't work.
6513 (Alan Isaac) Same problem in ":s?\??" and ":g?\??".
6514Solution: Change the "\?" in a pattern to "?" when using "?" as delimiter.
6515Files: src/ex_cmds.c, src/ex_docmd.c, src/proto/regexp.pro, src/regexp.c,
6516 src/search.c, src/syntax.c, src/tag.c
6517
6518Patch 6.1.011
6519Problem: XIM: doesn't work correctly when 'number' is set. Also, a focus
6520 problem when selecting candidates.
6521Solution: Fix the XIM problems. (Yasuhiro Matsumoto)
6522Files: src/mbyte.c, src/screen.c
6523
6524Patch 6.1.012
6525Problem: A system() call might fail if fread() does CR-LF to LF
6526 translation.
6527Solution: Open the output file in binary mode. (Pavol Huhas)
6528Files: src/misc1.c
6529
6530Patch 6.1.013
6531Problem: Win32: The default for 'printexpr' doesn't work when there are
6532 special characters in 'printdevice'.
6533Solution: Add double quotes around the device name. (Mike Williams)
6534Files: runtime/doc/option.txt, src/option.c
6535
6536Patch 6.1.014
6537Problem: An operator like "r" used in Visual block mode doesn't use
6538 'virtualedit' when it's set to "block".
6539Solution: Check for 'virtualedit' being active in Visual block mode when the
6540 operator was started.
6541Files: src/ex_docmd.c, src/globals.h, src/misc2.c, src/normal.c,
6542 src/ops.c, src/undo.c
6543
6544Patch 6.1.015
6545Problem: After patch 6.1.014 can't compile with tiny features. (Christian
6546 J. Robinson)
6547Solution: Add the missing define of virtual_op.
6548Files: src/vim.h
6549
6550Patch 6.1.016 (extra)
6551Problem: Win32: Outputting Hebrew or Arabic text might have a problem with
6552 reversing.
6553Solution: Replace the RevOut() function with ETO_IGNORELANGUAGE. (Ron Aaron)
6554Files: src/gui_w32.c
6555
6556Patch 6.1.017
6557Problem: Cygwin: After patch 6.1.012 Still doesn't do binary file I/O.
6558 (Pavol Juhas)
6559Solution: Define BINARY_FILE_IO for Cygwin.
6560Files: src/os_unix.h
6561
6562Patch 6.1.018
6563Problem: Error message when using cterm highlighting. (Leonardo Di Lella)
6564Solution: Remove a backslash before a question mark.
6565Files: runtime/syntax/cterm.vim
6566
6567Patch 6.1.019 (extra)
6568Problem: Win32: File name is messed up when editing just a drive name.
6569 (Walter Briscoe)
6570Solution: Append a NUL after the drive name. (Vince Negri)
6571Files: src/os_win32.c
6572
6573Patch 6.1.020
6574Problem: col("'>") returns a huge number after using Visual line mode.
6575Solution: Return the length of the line instead.
6576Files: src/eval.c
6577
6578Patch 6.1.021 (depends on patch 6.1.009)
6579Problem: Vim crashes when using a huge number for the minwid value in a
6580 statusline. (Robert M. Nowotniak)
6581Solution: Check for an overflow that makes minwid negative.
6582Files: src/buffer.c
6583
6584Patch 6.1.022
6585Problem: Grabbing the status line above the command-line window works like
6586 the bottom status line was grabbed. (Jim Battle)
6587Solution: Make it possible to grab the status line above the command-line
6588 window, so that it can be resized.
6589Files: src/ui.c
6590
6591Patch 6.1.023 (extra)
6592Problem: VMS: running tests doesn't work properly.
6593Solution: Adjust the makefile. (Zoltan Arpadffy)
6594Files: src/testdir/Make_vms.mms
6595
6596Patch 6.1.024
6597Problem: When header files use a new syntax for declaring functions, Vim
6598 can't figure out missing prototypes properly.
6599Solution: Accept braces around a function name. (M. Warner Losh)
6600Files: src/osdef.sh
6601
6602Patch 6.1.025
6603Problem: Five messages for "vim --help" don't start with a capital. (Vlad
6604 Sandrini)
6605Solution: Make the messages consistent.
6606Files: src/main.c
6607
6608Patch 6.1.026
6609Problem: *.patch files are not recognized as diff files. In a script a
6610 "VAR=val" argument after "env" isn't ignored. PHP scripts are not
6611 recognized.
6612Solution: Add *.patch for diff filetypes. Ignore "VAR=val". Recognize PHP
6613 scripts. (Roman Neuhauser)
6614Files: runtime/filetype.vim, runtime/scripts.vim
6615
6616Patch 6.1.027
6617Problem: When 'foldcolumn' is non-zero, a special character that wraps to
6618 the next line disturbs the foldcolumn highlighting. (Yasuhiro
6619 Matsumoto)
6620Solution: Only use the special highlighting when drawing text characters.
6621Files: src/screen.c
6622
6623Patch 6.1.028
6624Problem: Client-server: When a --remote-expr fails, Vim still exits with
6625 status zero.
6626Solution: Exit Vim with a non-zero status to indicate the --remote-expr
6627 failed. (Thomas Scott Urban)
6628Files: src/main.c
6629
6630Patch 6.1.029
6631Problem: When 'encoding' is an 8-bit encoding other than "latin1", editing
6632 a utf-8 or other Unicode file uses the wrong conversion. (Jan
6633 Fedak)
6634Solution: Don't use Unicode to latin1 conversion for 8-bit encodings other
6635 than "latin1".
6636Files: src/fileio.c
6637
6638Patch 6.1.030
6639Problem: When CTRL-N is mapped in Insert mode, it is also mapped after
6640 CTRL-X CTRL-N, while it is not mapped after CTRL-X CTRL-F.
6641 (Kontra Gergely)
6642Solution: Don't map CTRL-N after CTRL-X CTRL-N. Same for CTRL-P.
6643Files: src/getchar.c
6644
6645Patch 6.1.031
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00006646Problem: Cygwin: Xxd could read a file in text mode instead of binary mode.
Bram Moolenaar071d4272004-06-13 20:20:40 +00006647Solution: Use "rb" or "rt" when needed. (Pavol Juhas)
6648Files: src/xxd/xxd.c
6649
6650Patch 6.1.032
6651Problem: Can't specify a quickfix file without jumping to the first error.
6652Solution: Add the ":cgetfile" command. (Yegappan Lakshmanan)
6653Files: runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmds.h,
6654 src/quickfix.c
6655
6656Patch 6.1.033
6657Problem: GUI: When the selection is lost and the Visual highlighting is
6658 changed to underlining, the cursor is left in a different
6659 position. (Christian Michon)
6660Solution: Update the cursor position after redrawing the selection.
6661Files: src/ui.c
6662
6663Patch 6.1.034
6664Problem: A CVS diff file isn't recognized as diff filetype.
6665Solution: Skip lines starting with "? " before checking for an "Index:" line.
6666Files: runtime/scripts.vim
6667
6668Patch 6.1.035 (extra, depends on 6.1.016)
6669Problem: Win32: Outputting Hebrew or Arabic text might have a problem with
6670 reversing on MS-Windows 95/98/ME.
6671Solution: Restore the RevOut() function and use it in specific situations
6672 only. (Ron Aaron)
6673Files: src/gui_w32.c
6674
6675Patch 6.1.036
6676Problem: This command may cause a crash: ":v/./,//-j". (Ralf Arens)
6677Solution: Compute the right length of the regexp when it's empty.
6678Files: src/search.c
6679
6680Patch 6.1.037
6681Problem: When 'lazyredraw' is set, pressing "q" at the hit-enter prompt
6682 causes an incomplete redraw and the cursor isn't positioned.
6683 (Lubomir Host)
6684Solution: Overrule 'lazyredraw' when do_redraw is set.
6685Files: src/main.c, src/screen.c
6686
6687Patch 6.1.038
6688Problem: Multi-byte: When a ":s" command contains a multi-byte character
6689 where the trail byte is '~' the text is messed up.
6690Solution: Properly skip multi-byte characters in regtilde() (Muraoka Taro)
6691Files: src/regexp.c
6692
6693Patch 6.1.039
6694Problem: When folds are defined and the file is changed outside of Vim,
6695 reloading the file doesn't update the folds. (Anders
6696 Schack-Nielsen)
6697Solution: Recompute the folds after reloading the file.
6698Files: src/fileio.c
6699
6700Patch 6.1.040
6701Problem: When changing directory for expanding a file name fails there is
6702 no error message.
6703Solution: Give an error message for this situation. Don't change directory
6704 if we can't return to the original directory.
6705Files: src/diff.c, src/ex_docmd.c, src/globals.h, src/misc1.c,
6706 src/os_unix.c
6707
6708Patch 6.1.041
6709Problem: ":mkvimrc" doesn't handle a mapping that has a leading space in
6710 the rhs. (Davyd Ondrejko)
6711Solution: Insert a CTRL-V before the leading space. Also display leading
6712 and trailing white space in <> form.
6713Files: src/getchar.c, src/message.c
6714
6715Patch 6.1.042
6716Problem: "vim -r" doesn't show all matches when 'wildignore' removes swap
6717 files. (Steve Talley)
6718Solution: Keep all matching swap file names.
6719Files: src/memline.c
6720
6721Patch 6.1.043
6722Problem: After patch 6.1.040 a few warnings are produced.
6723Solution: Add a type cast to "char *" for mch_chdir(). (Axel Kielhorn)
6724Files: src/diff.c, src/ex_docmd.c.c, src/misc1.c, src/os_unix.c
6725
6726Patch 6.1.044 (extra)
6727Problem: GUI: When using the find/replace dialog with text that contains a
6728 slash, an invalid substitute command is generated.
6729 On Win32 a find doesn't work when 'insertmode' is set.
6730Solution: Escape slashes with a backslash.
6731 Make the Win32, Motif and GTK gui use common code for the
6732 find/replace dialog.
6733 Add the "match case" option for Motif and GTK.
6734Files: src/feature.h, src/proto/gui.pro, src/gui.c, src/gui.h,
6735 src/gui_motif.c, src/gui_gtk.c, src/gui_w48.c
6736
6737Patch 6.1.045
6738Problem: In Visual mode, with lots of folds and 'scrolloff' set to 999,
6739 moving the cursor down near the end of the file causes the text to
6740 jump up and down. (Lubomir Host)
6741Solution: Take into account that the cursor may be on the last line of a
6742 closed fold.
6743Files: src/move.c
6744
6745Patch 6.1.046
6746Problem: X11 GUI: ":set lsp=2 gcr=n-v-i:hor1-blinkon0" draws a black
6747 rectangle. ":set lsp=2 gcr=n-v-i:hor10-blinkon0" makes the cursor
6748 disappear. (Nam SungHyun)
6749Solution: Correctly compute the height of the horizontal cursor.
6750Files: src/gui_gtk_x11.c, src/gui_x11.c
6751
6752Patch 6.1.047
6753Problem: When skipping commands after an error was encountered, expressions
6754 for ":if", ";elseif" and ":while" are still evaluated.
6755Solution: Skip the expression after an error. (Servatius Brandt)
6756Files: src/ex_docmd.c
6757
6758Patch 6.1.048
6759Problem: Unicode 3.2 changes were missing a few Hangul Jamo characters.
6760Solution: Recognize more characters as composing characters. (Jungshik Shin)
6761Files: src/mbyte.c
6762
6763Patch 6.1.049 (extra)
6764Problem: On a 32 bit display a valid color may cause an error message,
6765 because its pixel value is negative. (Chris Paulson-Ellis)
6766Solution: Check for -11111 instead of the color being negative.
6767 Don't add one to the pixel value, -1 may be used for white.
6768Files: src/globals.h, src/gui.c, src/gui.h, src/gui_amiga.c,
6769 src/gui_athena.c, src/gui_beos.cc, src/gui_gtk_x11.c,
6770 src/gui_mac.c, src/gui_motif.c, src/gui_photon.c,
6771 src/gui_riscos.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c,
6772 src/gui_x11.c, src/mbyte.c, src/syntax.c
6773
6774Patch 6.1.050 (depends on 6.1.049)
6775Problem: After patch 6.1.049 the non-GUI version doesn't compile.
6776Solution: Add an #ifdef FEAT_GUI. (Robert Stanton)
6777Files: src/syntax.c
6778
6779Patch 6.1.051 (depends on 6.1.044)
6780Problem: Doesn't compile with GUI and small features.
6781Solution: Adjust the #if for ga_append().
6782Files: src/misc2.c
6783
6784Patch 6.1.052
6785Problem: Unix: The executable() function doesn't work when the "which"
6786 command isn't available.
6787Solution: Go through $PATH manually. Also makes it work for VMS.
6788Files: src/os_unix.c
6789
6790Patch 6.1.053
6791Problem: When 'sessionoptions' contains "globals", or "localoptions" and an
6792 option value contains a line break, the resulting script is wrong.
6793Solution: Use "\n" and "\r" for a line break. (Srinath Avadhanula)
6794Files: src/eval.c
6795
6796Patch 6.1.054
6797Problem: GUI: A mouse click is not recognized at the more prompt, even when
6798 'mouse' includes 'r'.
6799Solution: Recognize a mouse click at the more prompt.
6800 Also accept a mouse click in the last line in the GUI.
6801 Add "ml" entry in 'mouseshape'.
6802Files: src/gui.c, src/message.c, src/misc1.c, src/misc2.c, src/option.c,
6803 src/structs.h
6804
6805Patch 6.1.055
6806Problem: When editing a compressed file, Vim will inspect the contents to
6807 guess the filetype.
6808Solution: Don't source scripts.vim for .Z, .gz, .bz2, .zip and .tgz files.
6809Files: runtime/filetype.vim, runtime/plugin/gzip.vim
6810
6811Patch 6.1.056
6812Problem: Loading the Syntax menu can take quite a bit of time.
6813Solution: Add the "skip_syntax_sel_menu" variable. When its defined the
6814 available syntax files are not in the Syntax menu.
6815Files: runtime/doc/gui.txt, runtime/menu.vim
6816
6817Patch 6.1.057
6818Problem: An ESC inside a mapping doesn't work as documented when
6819 'insertmode' is set, it does go from Visual or Normal mode to
6820 Insert mode. (Benji Fisher)
6821Solution: Make it work as documented.
6822Files: src/normal.c
6823
6824Patch 6.1.058
6825Problem: When there is a closed fold just above the first line in the
6826 window, using CTRL-X CTRL-Y in Insert mode will show only one line
6827 of the fold. (Alexey Marinichev)
6828Solution: Correct the topline by putting it at the start of the fold.
6829Files: src/move.c
6830
6831Patch 6.1.059
6832Problem: ":redir > ~/file" doesn't work. (Stephen Rasku)
6833Solution: Expand environment variables in the ":redir >" argument.
6834Files: src/ex_docmd.c
6835
6836Patch 6.1.060
6837Problem: When 'virtualedit' is set and 'selection' is "exclusive", deleting
6838 a character just before a tab changes the tab into spaces. Undo
6839 doesn't restore the tab. (Helmut Stiegler)
6840Solution: Don't replace the tab by spaces when it's not needed. Correctly
6841 save the line before it's changed.
6842Files: src/ops.c
6843
6844Patch 6.1.061
6845Problem: When 'virtualedit' is set and 'selection' is "exclusive", a Visual
6846 selection that ends just after a tab doesn't include that tab in
6847 the highlighting. (Helmut Stiegler)
6848Solution: Use a different way to exclude the character under the cursor.
6849Files: src/screen.c
6850
6851Patch 6.1.062
6852Problem: The "man" filetype plugin doesn't work properly on Solaris 5.
6853Solution: Use a different way to detect that "man -s" should be used. (Hugh
6854 Sasse)
6855Files: runtime/ftplugin/man.vim
6856
6857Patch 6.1.063
6858Problem: Java indenting doesn't work properly.
6859Solution: Ignore comments when checking if the indent doesn't increase after
6860 a "}".
6861Files: runtime/indent/java.vim
6862
6863Patch 6.1.064
6864Problem: The URLs that the netrw plugin recognized for ftp and rcp did not
6865 conform to the standard method://[user@]host[:port]/path.
6866Solution: Use ftp://[user@]host[[:#]port]/path, which supports both the new
6867 and the previous style. Also added a bit of dav/cadaver support.
6868 (Charles Campbell)
6869Files: runtime/plugin/netrw.vim
6870
6871Patch 6.1.065
6872Problem: VMS: The colorscheme, keymap and compiler menus are not filled in.
6873Solution: Ignore case when looking for ".vim" files. (Coen Engelbarts)
6874Files: runtime/menu.vim
6875
6876Patch 6.1.066 (extra)
6877Problem: When calling system() in a plugin reading stdin hangs.
6878Solution: Don't set the terminal to RAW mode when it wasn't in RAW mode
6879 before the system() call.
6880Files: src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_unix.c,
6881 src/os_win16.c, src/os_win32.c
6882
6883Patch 6.1.067
6884Problem: ":set viminfo+=f0" is not working. (Benji Fisher)
6885Solution: Check the "f" flag instead of "'" in 'viminfo'.
6886Files: src/mark.c
6887
6888Patch 6.1.068
6889Problem: When a file is reloaded after it was changed outside of Vim, diff
6890 mode isn't updated. (Michael Naumann)
6891Solution: Invalidate the diff info so that it's updated when needed.
6892Files: src/fileio.c
6893
6894Patch 6.1.069
6895Problem: When 'showmatch' is set and "$" is in 'cpoptions', using
6896 "C}<Esc>" may forget to remove the "$". (Preben Guldberg)
6897Solution: Restore dollar_vcol after displaying the matching cursor position.
6898Files: src/search.c
6899
6900Patch 6.1.070 (depends on 6.1.060)
6901Problem: Compiler warning for signed/unsigned mismatch. (Mike Williams)
6902Solution: Add a typecast to int.
6903Files: src/ops.c
6904
6905Patch 6.1.071
6906Problem: When 'selection' is exclusive, g CTRL-G in Visual mode counts one
6907 character too much. (David Necas)
6908Solution: Subtract one from the end position.
6909Files: src/ops.c
6910
6911Patch 6.1.072
6912Problem: When a file name in a tags file starts with http:// or something
6913 else for which there is a BufReadCmd autocommand, the file isn't
6914 opened anyway.
6915Solution: Check if there is a matching BufReadCmd autocommand and try to
6916 open the file.
6917Files: src/fileio.c, src/proto/fileio.pro, src/tag.c
6918
6919Patch 6.1.073 (extra)
6920Problem: BC5: Can't easily specify a tiny, small, normal, big or huge
6921 version.
6922Solution: Allow selecting the version with the FEATURES variable. (Ajit
6923 Thakkar)
6924Files: src/Make_bc5.mak
6925
6926Patch 6.1.074
6927Problem: When 'cdpath' includes "../..", changing to a directory in which
6928 we currently already are doesn't work. ff_check_visited() adds
6929 the directory both when using it as the root for searching and for
6930 the actual matches. (Stephen Rasku)
6931Solution: Use a separate list for the already searched directories.
6932Files: src/misc2.c
6933
6934Patch 6.1.075 (depends on 6.1.072)
6935Problem: Can't compile fileio.c on MS-Windows.
6936Solution: Add a declaration for the "p" pointer. (Madoka Machitani)
6937Files: src/fileio.c
6938
6939Patch 6.1.076 (extra)
6940Problem: Macintosh: explorer plugin doesn't work on Mac Classic.
6941 IME doesn't work. Dialog boxes don't work on Mac OS X
6942Solution: Fix explorer plugin and key modifiers. (Axel Kielhorn)
6943 Fix IME support. (Muraoka Taro)
6944 Disable dialog boxes. (Benji Fisher)
6945Files: src/edit.c, src/feature.h, src/gui_mac.c, src/os_mac.c
6946
6947Patch 6.1.077
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00006948Problem: On a Debian system with ACL linking fails. (Lubomir Host)
Bram Moolenaar071d4272004-06-13 20:20:40 +00006949Solution: When the "acl" library is used, check if the "attr" library is
6950 present and use it.
6951Files: src/auto/configure, src/configure.in, src/link.sh
6952
6953Patch 6.1.078
6954Problem: When using 'foldmethod' "marker" and the end marker appears before
6955 the start marker in the file, no fold is found. (Nazri Ramliy)
6956Solution: Don't let the fold depth go negative.
6957Files: src/fold.c
6958
6959Patch 6.1.079
6960Problem: When using "s" in Visual block mode with 'virtualedit' set, when
6961 the selected block is after the end of some lines the wrong text
6962 is inserted and some lines are skipped. (Servatius Brandt)
6963Solution: Insert the right text and extend short lines.
6964Files: src/ops.c
6965
6966Patch 6.1.080
6967Problem: When using gcc with /usr/local already in the search path, adding
6968 it again causes problems.
6969Solution: Adjust configure.in to avoid adding /usr/local/include and
6970 /usr/local/lib when using GCC and they are already used. (Johannes
6971 Zellner)
6972Files: src/auto/configure, src/configure.in
6973
6974Patch 6.1.081
6975Problem: ":help CTRL-\_CTRL-N" doesn't work. (Christian J. Robinson)
6976Solution: Double the backslash to avoid the special meaning of "\_".
6977Files: src/ex_cmds.c
6978
6979Patch 6.1.082
6980Problem: On MS-Windows the vimrc_example.vim script is sourced and then
6981 mswin.vim. This enables using select mode, but since "p" is
6982 mapped it doesn't replace the selection.
6983Solution: Remove the mapping of "p" from vimrc_example.vim, it's obsolete.
6984 (Vlad Sandrini)
6985Files: runtime/vimrc_example.vim
6986
6987Patch 6.1.083
6988Problem: When $LANG is "sk" or "sk_sk", the Slovak menu file isn't found.
6989 (Martin Lacko)
6990Solution: Guess the right menu file based on the system.
6991Files: runtime/lang/menu_sk_sk.vim
6992
6993Patch 6.1.084 (depends on 6.1.080)
6994Problem: "include" and "lib" are mixed up when checking the directories gcc
6995 already searches.
6996Solution: Swap the variable names. (SunHo Kim)
6997Files: src/auto/configure, src/configure.in
6998
6999Patch 6.1.085
7000Problem: When using CTRL-O CTRL-\ CTRL-N from Insert mode, the displayed
7001 mode "(insert)" isn't removed. (Benji Fisher)
7002Solution: Clear the command line.
7003Files: src/normal.c
7004
7005Patch 6.1.086 (depends on 6.1.049)
7006Problem: The guifg color for CursorIM doesn't take effect.
7007Solution: Use the foreground color when it's defined. (Muraoka Taro)
7008Files: src/gui.c
7009
7010Patch 6.1.087
7011Problem: A thesaurus with Japanese characters has problems with characters
7012 in different word classes.
7013Solution: Only separate words with single-byte non-word characters.
7014 (Muraoka Taro)
7015Files: src/edit.c
7016
7017Patch 6.1.088 (extra)
7018Problem: Win32: no debugging info is generated. Tags file excludes .cpp
7019 files.
7020Solution: Add "/map" to compiler flags. Add "*.cpp" to ctags command.
7021 (Muraoka Taro)
7022Files: src/Make_mvc.mak
7023
7024Patch 6.1.089
7025Problem: On BSDI systems there is no ss_sp field in stack_t. (Robert Jan)
7026Solution: Use ss_base instead.
7027Files: src/auto/configure, src/configure.in, src/config.h.in,
7028 src/os_unix.c
7029
7030Patch 6.1.090
7031Problem: CTRL-F gets stuck when 'scrolloff' is non-zero and there is a mix
7032 of long wrapping lines and a non-wrapping line.
7033Solution: Check that CTRL-F scrolls at least one line.
7034Files: src/move.c
7035
7036Patch 6.1.091
7037Problem: GTK: Can't change preeditstate without setting 'imactivatekey'.
7038Solution: Add some code to change preeditstate for OnTheSpot. (Yasuhiro
7039 Matsumoto)
7040Files: src/mbyte.c
7041
7042Patch 6.1.092
7043Problem: ":mapclear <buffer>" doesn't work. (Srikanth Adayapalam)
7044Solution: Allow an argument for ":mapclear".
7045Files: src/ex_cmds.h
7046
7047Patch 6.1.093 (extra)
7048Problem: Mac and MS-Windows GUI: when scrolling while ":s" is working the
7049 results can be messed up, because the cursor is moved.
7050Solution: Disallow direct scrolling when not waiting for a character.
7051Files: src/gui_mac.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7052
7053Patch 6.1.094
7054Problem: Cygwin: Passing a file name that has backslashes isn't handled
7055 very well.
7056Solution: Convert file name arguments to Posix. (Chris Metcalf)
7057Files: src/main.c
7058
7059Patch 6.1.095
7060Problem: When using signs can free an item on the stack.
7061 Overruling sign colors doesn't work. (Srikanth Sankaran)
7062Solution: Don't free the item on the stack. Use NULL instead of "none" for
7063 the value of the color.
7064Files: src/gui_x11.c
7065
7066Patch 6.1.096
7067Problem: When erasing the right halve of a double-byte character, it may
7068 cause further characters to be erased. (Yasuhiro Matsumoto)
7069Solution: Make sure only one character is erased.
7070Files: src/screen.c
7071
7072Patch 6.1.097 (depends on 6.1.090)
7073Problem: When 'scrolloff' is set to a huge value, CTRL-F at the end of the
7074 file scrolls one line. (Lubomir Host)
7075Solution: Don't scroll when CTRL-F detects the end-of-file.
7076Files: src/move.c
7077
7078Patch 6.1.098
7079Problem: MS-Windows: When the xxd program is under "c:\program files" the
7080 "Convert to Hex" menu doesn't work. (Brian Mathis)
7081Solution: Put the path to xxd in double quotes.
7082Files: runtime/menu.vim
7083
7084Patch 6.1.099
7085Problem: Memory corrupted when closing a fold with more than 99999 lines.
7086Solution: Allocate more space for the fold text. (Walter Briscoe)
7087Files: src/eval.c
7088
7089Patch 6.1.100 (extra, depends on 6.1.088)
7090Problem: Win32: VC5 and earlier don't support the /mapinfo option.
7091Solution: Add "/mapinfo" only when "MAP=lines" is specified. (Muraoka Taro)
7092Files: src/Make_mvc.mak
7093
7094Patch 6.1.101
7095Problem: After using ":options" the tabstop of a new window is 15. Entry
7096 in ":options" window for 'autowriteall' is wrong. (Antoine J
7097 Mechelynck) Can't insert a space in an option value.
7098Solution: Use ":setlocal" instead of ":set". Change "aw" to "awa".
7099 Don't map space in Insert mode.
7100Files: runtime/optwin.vim
7101
7102Patch 6.1.102
7103Problem: Unprintable and multi-byte characters in a statusline item are not
7104 truncated correctly. (Yasuhiro Matsumoto)
7105Solution: Count the width of characters instead of the number of bytes.
7106Files: src/buffer.c
7107
7108Patch 6.1.103
7109Problem: A function returning from a while loop, with 'verbose' set to 12
7110 or higher, doesn't mention the return value. A function with the
7111 'abort' attribute may return -1 while the verbose message says
7112 something else.
7113Solution: Move the verbose message about returning from a function to
7114 call_func(). (Servatius Brandt)
7115Files: src/eval.c
7116
7117Patch 6.1.104
7118Problem: GCC 3.1 appears to have an optimizer problem that makes test 3
7119 crash.
7120Solution: For GCC 3.1 add -fno-strength-reduce to avoid the optimizer bug.
7121 Filter out extra info from "gcc --version".
7122Files: src/auto/configure, src/configure.in
7123
7124Patch 6.1.105
7125Problem: Win32: The default for 'shellpipe' doesn't redirect stderr. (Dion
7126 Nicolaas)
7127Solution: Redirect stderr, depending on the shell (like for 'shellredir').
7128Files: src/option.c
7129
7130Patch 6.1.106
7131Problem: The maze program crashes.
7132Solution: Change "11" to "27" and it works. (Greg Roelofs)
7133Files: runtime/macros/maze/mazeansi.c
7134
7135Patch 6.1.107
7136Problem: When 'list' is set the current line in the error window may be
7137 displayed wrong. (Muraoka Taro)
7138Solution: Don't continue the line after the $ has been displayed and the
7139 rightmost column is reached.
7140Files: src/screen.c
7141
7142Patch 6.1.108
7143Problem: When interrupting a filter command such as "!!sleep 20" the file
7144 becomes read-only. (Mark Brader)
7145Solution: Only set the read-only flag when opening a buffer is interrupted.
7146 When the shell command was interrupted, read the output that was
7147 produced so far.
7148Files: src/ex_cmds.c, src/fileio.c
7149
7150Patch 6.1.109
7151Problem: When 'eadirection' is "hor", using CTRL-W = doesn't equalize the
7152 window heights. (Roman Neuhauser)
7153Solution: Ignore 'eadirection' for CTRL-W =
7154Files: src/window.c
7155
7156Patch 6.1.110
7157Problem: When using ":badd file" when "file" is already present but not
7158 listed, it stays unlisted. (David Frey)
7159Solution: Set 'buflisted'.
7160Files: src/buffer.c
7161
7162Patch 6.1.111
7163Problem: It's not possible to detect using the Unix sources on Win32 or Mac.
7164Solution: Add has("macunix") and has("win32unix").
7165Files: runtime/doc/eval.txt, src/eval.c
7166
7167Patch 6.1.112
7168Problem: When using ":argdo", ":bufdo" or ":windo", CTRL-O doesn't go to
7169 the cursor position from before this command but every position
7170 where the argument was executed.
7171Solution: Only remember the cursor position from before the ":argdo",
7172 ":bufdo" and ":windo".
7173Files: src/ex_cmds2.c, src/mark.c
7174
7175Patch 6.1.113
7176Problem: ":bufdo bwipe" only wipes out half the buffers. (Roman Neuhauser)
7177Solution: Decide what buffer to go to next before executing the command.
7178Files: src/ex_cmds2.c
7179
7180Patch 6.1.114
7181Problem: ":python import vim", ":python vim.current.buffer[0:0] = []" gives
7182 a lalloc(0) error. (Chris Southern)
7183Solution: Don't allocate an array when it's size is zero.
7184Files: src/if_python.c
7185
7186Patch 6.1.115
7187Problem: "das" on the white space at the end of a paragraph does not delete
7188 the "." the sentence ends with.
7189Solution: Don't exclude the last character when it is not white space.
7190Files: src/search.c
7191
7192Patch 6.1.116
7193Problem: When 'endofline' is changed while 'binary' is set a file should be
7194 considered modified. (Olaf Buddenhagen)
7195Solution: Remember the 'eol' value when editing started and consider the
7196 file changed when the current value is different and 'binary' is
7197 set. Also fix that the window title isn't updated when 'ff' or
7198 'bin' changes.
7199Files: src/option.c, src/structs.h
7200
7201Patch 6.1.117
7202Problem: Small problem with editing a file over ftp: and with Cygwin.
7203Solution: Remove a dot from a ":normal" command. Use "cygdrive" where
7204 appropriate. (Charles Campbell)
7205Files: runtime/plugin/netrw.vim
7206
7207Patch 6.1.118
7208Problem: When a file in diff mode is reloaded because it changed outside
7209 of Vim, other windows in diff mode are not always updated.
7210 (Michael Naumann)
7211Solution: After reloading a file in diff mode mark all windows in diff mode
7212 for redraw.
7213Files: src/diff.c
7214
7215Patch 6.1.119 (extra)
7216Problem: With the Sniff interface, using Sniff 4.0.X on HP-UX, there may be
7217 a crash when connecting to Sniff.
7218Solution: Initialize sniff_rq_sep such that its value can be changed.
7219 (Martin Egloff)
7220Files: src/if_sniff.c
7221
7222Patch 6.1.120 (depends on 6.1.097)
7223Problem: When 'scrolloff' is non-zero and there are folds, CTRL-F at the
7224 end of the file scrolls part of a closed fold. (Lubomir Host)
7225Solution: Adjust the first line to the start of a fold.
7226Files: src/move.c
7227
7228Patch 6.1.121 (depends on 6.1.098)
7229Problem: When starting Select mode from Insert mode, then using the Paste
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00007230 menu entry, the cursor is left before the last pasted character.
Bram Moolenaar071d4272004-06-13 20:20:40 +00007231 (Mario Schweigler)
7232Solution: Set the cursor for Insert mode one character to the right.
7233Files: runtime/menu.vim
7234
7235Patch 6.1.122
7236Problem: ":file name" creates a new buffer to hold the old buffer name,
7237 which becomes the alternate file. This buffer is unexpectedly
7238 listed.
7239Solution: Create the buffer for the alternate name unlisted.
7240Files: src/ex_cmds.c
7241
7242Patch 6.1.123
7243Problem: A ":match" command with more than one argument doesn't report an
7244 error.
7245Solution: Check for extra characters. (Servatius Brandt)
7246Files: src/ex_docmd.c
7247
7248Patch 6.1.124
7249Problem: When trying to exit and there is a hidden buffer that had 'eol'
7250 off and 'bin' set exiting isn't possible. (John McGowan)
7251Solution: Set b_start_eol when clearing the buffer.
7252Files: src/buffer.c
7253
7254Patch 6.1.125
7255Problem: Explorer plugin asks for saving a modified buffer even when it's
7256 open in another window as well.
7257Solution: Count the number of windows using the buffer.
7258Files: runtime/plugin/explorer.vim
7259
7260Patch 6.1.126
7261Problem: Adding the choices in the syntax menu is consuming much of the
7262 startup time of the GUI while it's not often used.
7263Solution: Only add the choices when the user wants to use them.
7264Files: Makefile, runtime/makemenu.vim, runtime/menu.vim,
7265 runtime/synmenu.vim, src/Makefile
7266
7267Patch 6.1.127
7268Problem: When using "--remote file" and the server has 'insertmode' set,
7269 commands are inserted instead of being executed. (Niklas Volbers)
7270Solution: Go to Normal mode again after the ":drop" command.
7271Files: src/main.c
7272
7273Patch 6.1.128
7274Problem: The expression "input('very long prompt')" puts the cursor in the
7275 wrong line (column is OK).
7276Solution: Add the wrapped lines to the indent. (Yasuhiro Matsumoto)
7277Files: src/ex_getln.c
7278
7279Patch 6.1.129
7280Problem: On Solaris editing "file/" and then "file" results in using the
7281 same buffer. (Jim Battle)
7282Solution: Before using stat(), check that there is no illegal trailing
7283 slash.
7284Files: src/auto/configure, src/config.h.in, src/configure.in,
7285 src/macros.h src/misc2.c, src/proto/misc2.pro
7286
7287Patch 6.1.130
7288Problem: The documentation for some of the 'errorformat' items is unclear.
7289Solution: Add more examples and explain hard to understand items. (Stefan
7290 Roemer)
7291Files: runtime/doc/quickfix.txt
7292
7293Patch 6.1.131
7294Problem: X11 GUI: when expanding a CSI byte in the input stream to K_CSI,
7295 the CSI byte itself isn't copied.
7296Solution: Copy the CSI byte.
7297Files: src/gui_x11.c
7298
7299Patch 6.1.132
7300Problem: Executing a register in Ex mode may cause commands to be skipped.
7301 (John McGowan)
7302Solution: In Ex mode use an extra check if the register contents was
7303 consumed, to avoid input goes into the typeahead buffer.
7304Files: src/ex_docmd.c
7305
7306Patch 6.1.133
7307Problem: When drawing double-wide characters in the statusline, may clear
7308 half of a character. (Yasuhiro Matsumoto)
7309Solution: Force redraw of the next character by setting the attributes
7310 instead of putting a NUL in ScreenLines[]. Do put a NUL in
7311 ScreenLines[] when overwriting half of a double-wide character.
7312Files: src/screen.c
7313
7314Patch 6.1.134
7315Problem: An error for a trailing argument of ":match" should not be given
7316 after ":if 0". (Servatius Brandt)
7317Solution: Only do the check when executing commands.
7318Files: src/ex_docmd.c
7319
7320Patch 6.1.135
7321Problem: Passing a command to the shell that includes a newline always has
7322 a backslash before the newline.
7323Solution: Remove one backslash before the newline. (Servatius Brandt)
7324Files: src/ex_docmd.c
7325
7326Patch 6.1.136
7327Problem: When $TERM is "linux" the default for 'background' is "dark", even
7328 though the GUI uses a light background. (Hugh Allen)
7329Solution: Don't mark the option as set when defaulting to "dark" for the
7330 linux console. Also reset 'background' to "light" when the GUI
7331 has a light background.
7332Files: src/option.c
7333
7334Patch 6.1.137
7335Problem: Converting to HTML has a clumsy way of dealing with tabs which may
7336 change the highlighting.
7337Solution: Replace tabs with spaces after converting a line to HTML. (Preben
7338 Guldberg)
7339Files: runtime/syntax/2html.vim
7340
7341Patch 6.1.138 (depends on 6.1.126)
7342Problem: Adding extra items to the Syntax menu can't be done when the "Show
7343 individual choices" menu is used.
7344Solution: Use ":runtime!" instead of ":source", so that all synmenu.vim
7345 files in the runtime path are loaded. (Servatius Brandt)
7346 Also fix that a translated menu can't be removed.
7347Files: runtime/menu.vim
7348
7349Patch 6.1.139
7350Problem: Cygwin: PATH_MAX is not defined.
7351Solution: Include limits.h. (Dan Sharp)
7352Files: src/main.c
7353
7354Patch 6.1.140
7355Problem: Cygwin: ":args `ls *.c`" does not work if the shell command
7356 produces CR NL line separators.
7357Solution: Remove the CR characters ourselves. (Pavol Juhas)
7358Files: src/os_unix.c
7359
7360Patch 6.1.141
7361Problem: ":wincmd gx" may cause problems when mixed with other commands.
7362 ":wincmd c" doesn't close the window immediately. (Benji Fisher)
7363Solution: Pass the extra command character directly instead of using the
7364 stuff buffer and call ex_close() directly.
7365Files: src/ex_docmd.c, src/normal.c, src/proto/normal.pro,
7366 src/proto/window.pro, src/window.c
7367
7368Patch 6.1.142
7369Problem: Defining paragraphs without a separating blank line isn't
7370 possible. Paragraphs can't be formatted automatically.
7371Solution: Allow defining paragraphs with lines that end in white space.
7372 Added the 'w' and 'a' flags in 'formatoptions'.
7373Files: runtime/doc/change.txt, src/edit.c, src/misc1.c, src/normal.c,
7374 src/option.h, src/ops.c, src/proto/edit.pro, src/proto/ops.pro,
7375 src/vim.h
7376
7377Patch 6.1.143 (depends on 6.1.142)
7378Problem: Auto formatting near the end of the file moves the cursor to a
7379 wrong position. In Insert mode some lines are made one char too
7380 narrow. When deleting a line undo might not always work properly.
7381Solution: Don't always move to the end of the line in the last line. Don't
7382 position the cursor past the end of the line in Insert mode.
7383 After deleting a line save the cursor line for undo.
7384Files: src/edit.c, src/ops.c, src/normal.c
7385
7386Patch 6.1.144
7387Problem: Obtaining the size of a line in screen characters can be wrong.
7388 A pointer may wrap around zero.
7389Solution: In win_linetabsize() check for a MAXCOL length argument. (Jim
7390 Dunleavy)
7391Files: src/charset.c
7392
7393Patch 6.1.145
7394Problem: GTK: Drag&drop with more than 3 files may cause a crash. (Mickael
7395 Marchand)
7396Solution: Rewrite the code that parses the received list of files to be more
7397 robust.
7398Files: src/charset.c, src/gui_gtk_x11.c
7399
7400Patch 6.1.146
7401Problem: MS-Windows: When $HOME is constructed from $HOMEDRIVE and
7402 $HOMEPATH, it is not used for storing the _viminfo file. (Normal
7403 Diamond)
7404Solution: Set $HOME with the value obtained from $HOMEDRIVE and $HOMEPATH.
7405Files: src/misc1.c
7406
7407Patch 6.1.147 (extra)
7408Problem: MS-Windows: When a dialog has no default button, pressing Enter
7409 ends it anyway and all buttons are selected.
7410Solution: Don't end a dialog when there is no default button. Don't select
7411 all button when there is no default. (Vince Negri)
7412Files: src/gui_w32.c
7413
7414Patch 6.1.148 (extra)
7415Problem: MS-Windows: ACL is not properly supported.
7416Solution: Add an access() replacement that also works for ACL. (Mike
7417 Williams)
7418Files: runtime/doc/editing.txt, src/os_win32.c
7419
7420Patch 6.1.149 (extra)
7421Problem: MS-Windows: Can't use diff mode from the file explorer.
7422Solution: Add a "diff with Vim" context menu entry. (Dan Sharp)
7423Files: GvimExt/gvimext.cpp, GvimExt/gvimext.h
7424
7425Patch 6.1.150
7426Problem: OS/2, MS-Windows and MS-DOS: When 'shellslash' is set getcwd()
7427 still uses backslash. (Yegappan Lakshmanan)
7428Solution: Adjust slashes in getcwd().
7429Files: src/eval.c
7430
7431Patch 6.1.151 (extra)
7432Problem: Win32: The NTFS substream isn't copied.
7433Solution: Copy the substream when making a backup copy. (Muraoka Taro)
7434Files: src/fileio.c, src/os_win32.c, src/proto/os_win32.pro
7435
7436Patch 6.1.152
7437Problem: When $LANG is iso8859-1 translated menus are not used.
7438Solution: Change iso8859 to iso_8859.
7439Files: runtime/menu.vim
7440
7441Patch 6.1.153
7442Problem: Searching in included files may search recursively when the path
7443 starts with "../". (Sven Berkvens-Matthijsse)
7444Solution: Compare full file names, use inode/device when possible.
7445Files: src/search.c
7446
7447Patch 6.1.154 (extra)
7448Problem: DJGPP: "vim -h" leaves the cursor in a wrong position.
7449Solution: Don't position the cursor using uninitialized variables. (Jim
7450 Dunleavy)
7451Files: src/os_msdos.c
7452
7453Patch 6.1.155
7454Problem: Win32: Cursor may sometimes disappear in Insert mode.
7455Solution: Change "hor10" in 'guicursor' to "hor15". (Walter Briscoe)
7456Files: src/option.c
7457
7458Patch 6.1.156
7459Problem: Conversion between DBCS and UCS-2 isn't implemented cleanly.
7460Solution: Clean up a few things.
7461Files: src/mbyte.c, src/structs.h
7462
7463Patch 6.1.157
7464Problem: 'hlsearch' highlights only the second comma in ",,,,," with
7465 "/,\@<=[^,]*". (Preben Guldberg)
7466Solution: Also check for an empty match to start just after a previous
7467 match.
7468Files: src/screen.c
7469
7470Patch 6.1.158
7471Problem: "zs" and "ze" don't work correctly with ":set nowrap siso=1".
7472 (Preben Guldberg)
7473Solution: Take 'siso' into account when computing the horizontal scroll
7474 position for "zs" and "ze".
7475Files: src/normal.c
7476
7477Patch 6.1.159
7478Problem: When expanding an abbreviation that includes a multi-byte
7479 character too many characters are deleted. (Andrey Urazov)
7480Solution: Delete the abbreviation counting characters instead of bytes.
7481Files: src/getchar.c
7482
7483Patch 6.1.160
7484Problem: ":$read file.gz" doesn't work. (Preben Guldberg)
7485Solution: Don't use the '[ mark after it has become invalid.
7486Files: runtime/plugin/gzip.vim
7487
7488Patch 6.1.161 (depends on 6.1.158)
7489Problem: Warning for signed/unsigned compare. Can set 'siso' to a negative
7490 value. (Mike Williams)
7491Solution: Add a typecast. Add a check for 'siso' being negative.
7492Files: src/normal.c, src/option.c
7493
7494Patch 6.1.162
7495Problem: Python interface: Didn't initialize threads properly.
7496Solution: Call PyEval_InitThreads() when starting up.
7497Files: src/if_python.c
7498
7499Patch 6.1.163
7500Problem: Win32: Can't compile with Python after 6.1.162.
7501Solution: Dynamically load PyEval_InitThreads(). (Dan Sharp)
7502Files: src/if_python.c
7503
7504Patch 6.1.164
7505Problem: If 'modifiable' is off, converting to xxd fails and 'filetype' is
7506 changed to "xxd" anyway.
7507Solution: Don't change 'filetype' when conversion failed.
7508Files: runtime/menu.vim
7509
7510Patch 6.1.165
7511Problem: Making changes in several lines and then a change in one of these
7512 lines that splits it in two or more lines, undo information was
7513 corrupted. May cause a crash. (Dave Fishburn)
7514Solution: When skipping to save a line for undo because it was already
7515 saved, move it to become the last saved line, so that when the
7516 command changes the line count other saved lines are not involved.
7517Files: src/undo.c
7518
7519Patch 6.1.166
7520Problem: When 'autoindent' is set and mswin.vim has been sourced, pasting
7521 with CTRL-V just after auto-indenting removes the indent. (Shlomi
7522 Fish)
7523Solution: First insert an "x" and delete it again, so that the auto-indent
7524 remains.
7525Files: runtime/mswin.vim
7526
7527Patch 6.1.167
7528Problem: When giving a negative argument to ":retab" strange things start
7529 happening. (Hans Ginzel)
7530Solution: Check for a negative value.
7531Files: src/ex_cmds.c
7532
7533Patch 6.1.168
7534Problem: Pressing CTRL-C at the hit-enter prompt doesn't end the prompt.
7535Solution: Make CTRL-C stop the hit-enter prompt.
7536Files: src/message.c
7537
7538Patch 6.1.169
7539Problem: bufexists() finds a buffer by using the name of a symbolic link to
7540 it, but bufnr() doesn't. (Yegappan Lakshmanan)
7541Solution: When bufnr() can't find a buffer, try using the same method as
7542 bufexists().
7543Files: src/eval.c
7544
7545Patch 6.1.170
7546Problem: Using ":mksession" uses the default session file name, but "vim
7547 -S" doesn't. (Hans Ginzel)
7548Solution: Use the default session file name if "-S" is the last command
7549 line argument or another option follows.
7550Files: runtime/doc/starting.txt, src/main.c
7551
7552Patch 6.1.171
7553Problem: When opening a line just above a closed fold with "O" and the
7554 comment leader is automatically inserted, the cursor is displayed
7555 in the first column. (Sung-Hyun Nam)
7556Solution: Update the flag that indicates the cursor is in a closed fold.
7557Files: src/misc1.c
7558
7559Patch 6.1.172
7560Problem: Command line completion of ":tag /pat" does not show the same
7561 results as the tags the command actually finds. (Gilles Roy)
7562Solution: Don't modify the pattern to make it a regexp.
7563Files: src/ex_getln.c, src/tag.c
7564
7565Patch 6.1.173
7566Problem: When using remote control to edit a position in a file and this
7567 file is the current buffer and it's modified, the window is split
7568 and the ":drop" command fails.
7569Solution: Don't split the window, keep editing the same buffer.
7570 Use the ":drop" command in VisVim to avoid the problem there.
7571Files: src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
7572 VisVim/Commands.cpp
7573
7574Patch 6.1.174
7575Problem: It is difficult to know in a script whether an option not only
7576 exists but really works.
7577Solution: Add "exists('+option')".
7578Files: runtime/doc/eval.txt, src/eval.c
7579
7580Patch 6.1.175
7581Problem: When reading commands from a pipe and a CTRL-C is pressed, Vim
7582 will hang. (Piet Delport)
7583Solution: Don't keep reading characters to clear typeahead when an interrupt
7584 was detected, stop when a single CTRL-C is read.
7585Files: src/getchar.c, src/ui.c
7586
7587Patch 6.1.176
7588Problem: When the stack limit is very big a false out-of-stack error may
7589 be detected.
7590Solution: Add a check for overflow of the stack limit computation. (Jim
7591 Dunleavy)
7592Files: src/os_unix.c
7593
7594Patch 6.1.177 (depends on 6.1.141)
7595Problem: ":wincmd" does not allow a following command. (Gary Johnson)
7596Solution: Check for a following " | cmd". Also give an error for trailing
7597 characters.
7598Files: src/ex_docmd.c
7599
7600Patch 6.1.178
7601Problem: When 'expandtab' is set "r<C-V><Tab>" still expands the Tab.
7602 (Bruce deVisser)
7603Solution: Replace with a literal Tab.
7604Files: src/normal.c
7605
7606Patch 6.1.179 (depends on 6.1.091)
7607Problem: When using X11R5 XIMPreserveState is undefined. (Albert Chin)
7608Solution: Include the missing definitions.
7609Files: src/mbyte.c
7610
7611Patch 6.1.180
7612Problem: Use of the GUI code for forking is inconsistent.
7613Solution: Define MAY_FORK and use it for later #ifdefs. (Ben Fowlwer)
7614Files: src/gui.c
7615
7616Patch 6.1.181
7617Problem: If the terminal doesn't wrap from the last char in a line to the
7618 next line, the last column is blanked out. (Peter Karp)
7619Solution: Don't output a space to mark the wrap, but the same character
7620 again.
7621Files: src/screen.c
7622
7623Patch 6.1.182 (depends on 6.1.142)
7624Problem: It is not possible to auto-format comments only. (Moshe Kaminsky)
7625Solution: When the 'a' and 'c' flags are in 'formatoptions' only auto-format
7626 comments.
7627Files: runtime/doc/change.txt, src/edit.c
7628
7629Patch 6.1.183
7630Problem: When 'fencs' is empty and 'enc' is utf-8, reading a file with
7631 illegal bytes gives "CONVERSION ERROR" even though no conversion
7632 is done. 'readonly' is set, even though writing the file results
7633 in an unmodified file.
7634Solution: For this specific error use "ILLEGAL BYTE" and don't set
7635 'readonly'.
7636Files: src/fileio.c
7637
7638Patch 6.1.184 (extra)
7639Problem: The extra mouse buttons found on some mice don't work.
7640Solution: Support two extra buttons for MS-Windows. (Michael Geddes)
7641Files: runtime/doc/term.txt, src/edit.c, src/ex_getln.c, src/gui.c,
7642 src/gui_w32.c, src/gui_w48.c, src/keymap.h, src/message.c,
7643 src/misc1.c, src/misc2.c, src/normal.c. src/vim.h
7644
7645Patch 6.1.185 (depends on 6.1.182)
7646Problem: Can't compile without +comments feature.
7647Solution: Add #ifdef FEAT_COMMENTS. (Christian J. Robinson)
7648Files: src/edit.c
7649
7650Patch 6.1.186 (depends on 6.1.177)
7651Problem: ":wincmd" does not allow a following comment. (Aric Blumer)
7652Solution: Check for a following double quote.
7653Files: src/ex_docmd.c
7654
7655Patch 6.1.187
7656Problem: Using ":doarg" with 'hidden' set and the current file is the only
7657 argument and was modified gives an error message. (Preben
7658 Guldberg)
7659Solution: Don't try re-editing the same file.
7660Files: src/ex_cmds2.c
7661
7662Patch 6.1.188 (depends on 6.1.173)
7663Problem: Unused variable in the small version.
7664Solution: Move the declaration for "p" inside #ifdef FEAT_LISTCMDS.
7665Files: src/ex_cmds2.c
7666
7667Patch 6.1.189
7668Problem: inputdialog() doesn't work when 'c' is in 'guioptions'. (Aric
7669 Blumer)
7670Solution: Fall back to the input() function in this situation.
7671Files: src/eval.c
7672
7673Patch 6.1.190 (extra)
7674Problem: VMS: doesn't build with GTK GUI. Various other problems.
7675Solution: Fix building for GTK. Improved Perl, Python and TCL support.
7676 Improved VMS documentation. (Zoltan Arpadffy)
7677 Added Vimtutor for VMS (T. R. Wyant)
7678Files: runtime/doc/os_vms.txt, src/INSTALLvms.txt, src/gui_gtk_f.h,
7679 src/if_tcl.c, src/main.c, src/gui_gtk_vms.h, src/Make_vms.mms,
7680 src/os_vms.opt, src/proto/if_tcl.pro, vimtutor.com,
7681 src/testdir/Make_vms.mms
7682
7683Patch 6.1.191
7684Problem: When using "vim -s script" and redirecting the output, the delay
7685 for the "Output is not to a terminal" warning slows Vim down too
7686 much.
7687Solution: Don't delay when reading commands from a script.
7688Files: src/main.c
7689
7690Patch 6.1.192
7691Problem: ":diffsplit" doesn't add "hor" to 'scrollopt'. (Gary Johnson)
7692Solution: Add "hor" to 'scrollopt' each time ":diffsplit" is used.
7693Files: src/diff.c, src/main.c
7694
7695Patch 6.1.193
7696Problem: Crash in in_id_list() for an item with a "containedin" list. (Dave
7697 Fishburn)
7698Solution: Check for a negative syntax id, used for keywords.
7699Files: src/syntax.c
7700
7701Patch 6.1.194
7702Problem: When "t_ti" is set but it doesn't cause swapping terminal pages,
7703 "ZZ" may cause the shell prompt to appear on top of the file-write
7704 message.
7705Solution: Scroll the text up in the Vim page before swapping to the terminal
7706 page. (Michael Schroeder)
7707Files: src/os_unix.c
7708
7709Patch 6.1.195
7710Problem: The quickfix and preview windows always keep their height, while
7711 other windows can't fix their height.
7712Solution: Add the 'winfixheight' option, so that a fixed height can be
7713 specified for any window. Also fix that the wildmenu may resize a
7714 one-line window to a two-line window if 'ls' is zero.
7715Files: runtime/doc/options.txt, runtime/optwin.vim, src/ex_cmds.c,
7716 src/ex_getln.c, src/globals.h, src/option.c, src/quickfix.c,
7717 src/screen.c, src/structs.h, src/window.c
7718
7719Patch 6.1.196 (depends on 6.1.084)
7720Problem: On Mac OS X 10.2 generating osdef.h fails.
7721Solution: Add -no-cpp-precomp to avoid using precompiled header files, which
7722 disables printing the search path. (Ben Fowler)
7723Files: src/auto/configure, src/configure.in
7724
7725Patch 6.1.197
7726Problem: ":help <C-V><C-\><C-V><C-N>" (resulting in <1c><0e>) gives an
7727 error message. (Servatius Brandt)
7728Solution: Double the backslash in "CTRL-\".
7729Files: src/ex_cmds.c
7730
7731Patch 6.1.198 (extra) (depends on 6.1.076)
7732Problem: Mac OS X: Dialogues don't work.
7733Solution: Fix a crashing problem for some GUI dialogues. Fix a problem when
7734 saving to a new file from the GUI. (Peter Cucka)
7735Files: src/feature.h, src/gui_mac.c
7736
7737Patch 6.1.199
7738Problem: 'guifontwide' doesn't work on Win32.
7739Solution: Output each wide character separately. (Michael Geddes)
7740Files: src/gui.c
7741
7742Patch 6.1.200
7743Problem: ":syn sync fromstart" is not skipped after ":if 0". This can make
7744 syntax highlighting very slow.
7745Solution: Check "eap->skip" appropriately. (Rob West)
7746Files: src/syntax.c
7747
7748Patch 6.1.201 (depends on 6.1.192)
7749Problem: Warning for illegal pointer combination. (Zoltan Arpadffy)
7750Solution: Add a typecast.
7751Files: src/diff.c
7752
7753Patch 6.1.202 (extra)(depends on 6.1.148)
7754Problem: Win32: filewritable() doesn't work properly on directories.
7755Solution: fix filewritable(). (Mike Williams)
7756Files: src/os_win32.c
7757
7758Patch 6.1.203
7759Problem: ":%s/~//" causes a crash after ":%s/x//". (Gary Holloway)
7760Solution: Avoid reading past the end of a line when "~" is empty.
7761Files: src/regexp.c
7762
7763Patch 6.1.204 (depends on 6.1.129)
7764Problem: Warning for an illegal pointer on Solaris.
7765Solution: Add a typecast. (Derek Wyatt)
7766Files: src/misc2.c
7767
7768Patch 6.1.205
7769Problem: The gzip plugin changes the alternate file when editing a
7770 compressed file. (Oliver Fuchs)
7771Solution: Temporarily remove the 'a' and 'A' flags from 'cpo'.
7772Files: runtime/plugin/gzip.vim
7773
7774Patch 6.1.206
7775Problem: The script generated with ":mksession" doesn't work properly when
7776 some commands are mapped.
7777Solution: Use ":normal!" instead of ":normal". And use ":wincmd" where
7778 possible. (Muraoka Taro)
7779Files: src/ex_docmd.c, src/fold.c
7780
7781Patch 6.1.207
7782Problem: Indenting a Java file hangs below a line with a comment after a
7783 command.
7784Solution: Break out of a loop. (Andre Pang)
7785 Also line up } with matching {.
7786Files: runtime/indent/java.vim
7787
7788Patch 6.1.208
7789Problem: Can't use the buffer number from the Python interface.
7790Solution: Add buffer.number. (Michal Vitecek)
7791Files: src/if_python.c
7792
7793Patch 6.1.209
7794Problem: Printing doesn't work on Mac OS classic.
7795Solution: Use a ":" for path separator when opening the resource file. (Axel
7796 Kielhorn)
7797Files: src/ex_cmds2.c
7798
7799Patch 6.1.210
7800Problem: When there is an iconv() conversion error when reading a file
7801 there can be an error the next time iconv() is used.
7802Solution: Reset the state of the iconv() descriptor. (Yasuhiro Matsumoto)
7803Files: src/fileio.c
7804
7805Patch 6.1.211
7806Problem: The message "use ! to override" is confusing.
7807Solution: Make it "add ! to override".
7808Files: src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
7809 src/globals.h
7810
7811Patch 6.1.212
7812Problem: When Vim was started with "-R" ":new" creates a buffer
7813 'noreadonly' while ":enew" has 'readonly' set. (Preben Guldberg)
7814Solution: Don't set 'readonly in a new empty buffer for ":enew".
7815Files: src/ex_docmd.c
7816
7817Patch 6.1.213
7818Problem: Using CTRL-W H may cause a big gap to appear below the last
7819 window. (Aric Blumer)
7820Solution: Don't set the window height when there is a vertical split.
7821 (Yasuhiro Matsumoto)
7822Files: src/window.c
7823
7824Patch 6.1.214
7825Problem: When installing Vim and the runtime files were checked out from
7826 CVS the CVS directories will also be installed.
7827Solution: Avoid installing the CVS dirs and their contents.
7828Files: src/Makefile
7829
7830Patch 6.1.215
7831Problem: Win32: ":pwd" uses backslashes even when 'shellslash' is set.
7832 (Xiangjiang Ma)
7833Solution: Adjust backslashes before printing the message.
7834Files: src/ex_docmd.c
7835
7836Patch 6.1.216
7837Problem: When dynamically loading the iconv library, the error codes may be
7838 confused.
7839Solution: Use specific error codes for iconv and redefine them for dynamic
7840 loading. (Yasuhiro Matsumoto)
7841Files: src/fileio.c, src/mbyte.c, src/vim.h
7842
7843Patch 6.1.217
7844Problem: When sourcing the same Vim script using a different name (symbolic
7845 link or MS-Windows 8.3 name) it is listed twice with
7846 ":scriptnames". (Tony Mechelynck)
7847Solution: Turn the script name into a full path before using it. On Unix
7848 compare inode/device numbers.
7849Files: src/ex_cmds2.c
7850
7851Patch 6.1.218
7852Problem: No error message for using the function argument "5+". (Servatius
7853 Brandt)
7854Solution: Give an error message if a function or variable is expected but is
7855 not found.
7856Files: src/eval.c
7857
7858Patch 6.1.219
7859Problem: When using ":amenu :b 1<CR>" with a Visual selection and
7860 'insertmode' is set, Vim does not return to Insert mode. (Mickael
7861 Marchand)
7862Solution: Add the command CTRL-\ CTRL-G that goes to Insert mode if
7863 'insertmode' is set and to Normal mode otherwise. Append this to
7864 menus defined with ":amenu".
7865Files: src/edit.c, src/ex_getln.c, src/normal.c
7866
7867Patch 6.1.220
7868Problem: When using a BufReadPost autocommand that changes the line count,
7869 e.g., "$-1join", reloading a file that was changed outside Vim
7870 does not work properly. (Alan G Isaac)
7871Solution: Make the buffer empty before reading the new version of the file.
7872 Save the lines in a dummy buffer, so that they can be put back
7873 when reading the file fails.
7874Files: src/buffer.c, src/ex_cmds.c, src/fileio.c, src/globals.h,
7875 src/proto/buffer.pro
7876
7877Patch 6.1.221
7878Problem: Changing case may not work properly, depending on the current
7879 locale.
7880Solution: Add the 'casemap' option to let the user chose how changing case
7881 is to be done.
7882 Also fix lowering case when an UTF-8 character doesn't keep the
7883 same byte length.
7884Files: runtime/doc/options.txt, src/ascii.h, src/auto/configure,
7885 src/buffer.c, src/charset.c, src/config.h.in, src/configure.in,
7886 src/diff.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
7887 src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/gui_amiga.c
7888 src/gui_mac.c, src/gui_photon.c, src/gui_w48.c, src/gui_beos.cc,
7889 src/macros.h, src/main.c, src/mbyte.c, src/menu.c, src/message.c,
7890 src/misc1.c, src/misc2.c, src/option.c, src/os_msdos.c,
7891 src/os_mswin.c, src/proto/charset.pro, src/regexp.c, src/option.h,
7892 src/syntax.c
7893
7894Patch 6.1.222 (depends on 6.1.219)
7895Problem: Patch 6.1.219 was incomplete.
7896Solution: Add the changes for ":amenu".
7897Files: src/menu.c
7898
7899Patch 6.1.223 (extra)
7900Problem: Win32: When IME is activated 'iminsert' is set, but it might never
7901 be reset when IME is disabled. (Muraoka Taro)
7902 All systems: 'iminsert' is set to 2 when leaving Insert mode, even
7903 when langmap is being used. (Peter Valach)
7904Solution: Don't set "b_p_iminsert" in _OnImeNotify(). (Muraoka Taro)
7905 Don't store the status of the input method in 'iminsert' when
7906 'iminsert' is one. Also for editing the command line and for
7907 arguments to Normal mode commands.
7908Files: src/edit.c, src/ex_getln.c, src/gui_w32.c, src/normal.c
7909
7910Patch 6.1.224
7911Problem: "expand('$VAR')" returns an empty string when the expanded $VAR
7912 is not an existing file. (Aric Blumer)
7913Solution: Included non-existing files, as documented.
7914Files: src/eval.c
7915
7916Patch 6.1.225
7917Problem: Using <C-O><C-^> in Insert mode has a delay when starting "vim -u
7918 NONE" and ":set nocp hidden". (Emmanuel) do_ecmd() uses
7919 fileinfo(), the redraw is done after a delay to give the user time
7920 to read the message.
7921Solution: Put the message from fileio() in "keep_msg", so that the redraw is
7922 done before the delay (still needed to avoid the mode message
7923 overwrites the fileinfo() message).
7924Files: src/buffer.c
7925
7926Patch 6.1.226
7927Problem: Using ":debug" with a ":normal" command may cause a hang. (Colin
7928 Keith)
7929Solution: Save the typeahead buffer when obtaining a debug command.
7930Files: src/ex_cmds2.c, src/getchar.c, src/proto/getchar.pro
7931
7932Patch 6.1.227
7933Problem: It is possible to use a variable name "asdf:asdf" and ":let j:asdf
7934 = 5" does not give an error message. (Mikolaj Machowski)
7935Solution: Check for a ":" inside the variable name.
7936Files: src/eval.c
7937
7938Patch 6.1.228 (extra)
7939Problem: Win32: The special output function for Hangul is used too often,
7940 causing special handling for other situations to be skipped.
7941 bInComposition is always FALSE, causing ImeGetTempComposition()
7942 always to return NULL.
7943Solution: Remove HanExtTextOut(). Delete the dead code around
7944 bInComposition and ImeGetTempComposition().
7945Files: src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
7946
7947Patch 6.1.229
7948Problem: Win32: Conversion to/from often used codepages requires the iconv
7949 library, which is not always available.
7950Solution: Use standard MS-Windows functions for the conversion when
7951 possible. (mostly by Glenn Maynard)
7952 Also fixes missing declaration for patch 6.1.220.
7953Files: src/fileio.c
7954
7955Patch 6.1.230 (extra)
7956Problem: Win16: building doesn't work.
7957Solution: Exclude the XBUTTON handling. (Vince Negri)
7958Files: src/gui_w48.c
7959
7960Patch 6.1.231
7961Problem: Double clicking with the mouse to select a word does not work for
7962 multi-byte characters.
7963Solution: Use vim_iswordc() instead of vim_isIDc(). This means 'iskeyword'
Bram Moolenaar69a7cb42004-06-20 12:51:53 +00007964 is used instead of 'isident'. Also fix that mixing ASCII with
Bram Moolenaar071d4272004-06-13 20:20:40 +00007965 multi-byte word characters doesn't work, the mouse class for
7966 punctuation and word characters was mixed up.
7967Files: src/normal.c
7968
7969Patch 6.1.232 (depends on 6.1.226)
7970Problem: Using ex_normal_busy while it might not be available. (Axel
7971 Kielhorn)
7972Solution: Only use ex_normal_busy when FEAT_EX_EXTRA is defined.
7973Files: src/ex_cmds2.c
7974
7975Patch 6.1.233
7976Problem: ":help expr-||" does not work.
7977Solution: Don't use the '|' as a command separator
7978Files: src/ex_cmds.c
7979
7980Patch 6.1.234 (depends on 6.1.217)
7981Problem: Get a warning for using a negative value for st_dev.
7982Solution: Don't assign a negative value to st_dev.
7983Files: src/ex_cmds2.c
7984
7985Patch 6.1.235 (depends on 6.1.223)
7986Problem: 'iminsert' is changed from 1 to 2 when leaving Insert mode. (Peter
7987 Valach)
7988Solution: Check "State" before resetting it to NORMAL.
7989Files: src/edit.c
7990
7991Patch 6.1.236
7992Problem: Memory leaks when appending lines for ":diffget" or ":diffput" and
7993 when reloading a changed buffer.
7994Solution: Free a line after calling ml_append().
7995Files: src/diff.c, src/fileio.c
7996
7997Patch 6.1.237
7998Problem: Putting in Visual block mode does not work correctly when "$" was
7999 used or when the first line is short. (Christian Michon)
8000Solution: First delete the selected text and then put the new text. Save
8001 and restore registers as necessary.
8002Files: src/globals.h, src/normal.c, src/ops.c, src/proto/ops.pro,
8003 src/vim.h
8004
8005Patch 6.1.238 (extra)
8006Problem: Win32: The "icon=" argument for the ":menu" command does not
8007 search for the bitmap file.
8008Solution: Expand environment variables and search for the bitmap file.
8009 (Vince Negri)
8010 Make it consistent, use the same mechanism for X11 and GTK.
8011Files: src/gui.c src/gui_gtk.c, src/gui_w32.c, src/gui_x11.c,
8012 src/proto/gui.pro
8013
8014Patch 6.1.239
8015Problem: Giving an error for missing :endif or :endwhile when being
8016 interrupted.
8017Solution: Don't give these messages when interrupted.
8018Files: src/ex_docmd.c, src/os_unix.c
8019
8020Patch 6.1.240 (extra)
8021Problem: Win32 with BCC 5: CPU may be defined in the environment, which
8022 causes a wrong argument for the compiler. (Walter Briscoe)
8023Solution: Use CPUNR instead of CPU.
8024Files: src/Make_bc5.mak
8025
8026Patch 6.1.241
8027Problem: Something goes wrong when drawing or undrawing the cursor.
8028Solution: Remember when the cursor invalid in a better way.
8029Files: src/gui.c
8030
8031Patch 6.1.242
8032Problem: When pasting a large number of lines on the command line it is not
8033 possible to interrupt. (Jean Jordaan)
8034Solution: Check for an interrupt after each pasted line.
8035Files: src/ops.c
8036
8037Patch 6.1.243 (extra)
8038Problem: Win32: When the OLE version is started and wasn't registered, a
8039 message pops up to suggest registering, even when this isn't
8040 possible (when the registry is not writable).
8041Solution: Check if registering is possible before asking whether it should
8042 be done. (Walter Briscoe)
8043 Also avoid restarting Vim after registering.
8044Files: src/if_ole.cpp
8045
8046Patch 6.1.244
8047Problem: Patch 6.1.237 was missing the diff for vim.h. (Igor Goldenberg)
8048Solution: Include it here.
8049Files: src/vim.h
8050
8051Patch 6.1.245
8052Problem: Comparing with ignored case does not work properly for Unicode
8053 with a locale where case folding an ASCII character results in a
8054 multi-byte character. (Glenn Maynard)
8055Solution: Handle ignore-case compare for Unicode differently.
8056Files: src/mbyte.c
8057
8058Patch 6.1.246
8059Problem: ":blast" goes to the first buffer if the last one is unlisted.
8060 (Andrew Stryker)
8061Solution: From the last buffer search backwards for the first listed buffer
8062 instead of forwards.
8063Files: src/ex_docmd.c
8064
8065Patch 6.1.247
8066Problem: ACL support doesn't always work properly.
8067Solution: Add a configure argument to disable ACL "--disable-acl". (Thierry
8068 Vignaud)
8069Files: src/auto/configure, src/configure.in
8070
8071Patch 6.1.248
8072Problem: Typing 'q' at the more-prompt for ":let" does not quit the
8073 listing. (Hari Krishna Dara)
8074Solution: Quit the listing when got_int is set.
8075Files: src/eval.c
8076
8077Patch 6.1.249
8078Problem: Can't expand a path on the command line if it includes a "|" as a
8079 trail byte of a multi-byte character.
8080Solution: Check for multi-byte characters. (Yasuhiro Matsumoto)
8081Files: src/ex_docmd.c
8082
8083Patch 6.1.250
8084Problem: When changing the value of 'lines' inside the expression set with
8085 'diffexpr' Vim might crash. (Dave Fishburn)
8086Solution: Don't allow changing the screen size while updating the screen.
8087Files: src/globals.h, src/option.c, src/screen.c
8088
8089Patch 6.1.251
8090Problem: Can't use completion for ":lcd" and ":lchdir" like ":cd".
8091Solution: Expand directory names for these commands. (Servatius Brandt)
8092Files: src/ex_docmd.c
8093
8094Patch 6.1.252
8095Problem: "vi}" does not include a line break when the "}" is at the start
8096 of a following line. (Kamil Burzynski)
8097Solution: Include the line break.
8098Files: src/search.c
8099
8100Patch 6.1.253 (extra)
8101Problem: Win32 with Cygwin: Changes the path of arguments in a wrong way.
8102 (Xiangjiang Ma)
8103Solution: Don't use cygwin_conv_to_posix_path() for the Win32 version.
8104 Update the Cygwin makefile to support more features. (Dan Sharp)
8105Files: src/Make_cyg.mak, src/if_ole.cpp, src/main.c
8106
8107Patch 6.1.254
8108Problem: exists("foo{bar}") does not work. ':unlet v{"a"}r' does not work.
8109 ":let v{a}r1 v{a}r2" does not work. ":func F{(1)}" does not work.
8110 ":delfunc F{" does not give an error message. ':delfunc F{"F"}'
8111 does not work.
8112Solution: Support magic braces for the exists() argument. (Vince Negri)
8113 Check for trailing comments explicitly for ":unlet". Add support
8114 for magic braces in further arguments of ":let". Look for a
8115 parenthesis only after the function name. (Servatius Brandt)
8116 Also expand magic braces for "exists('*expr')". Give an error
8117 message for an invalid ":delfunc" argument. Allow quotes in the
8118 ":delfunc" argument.
8119Files: src/eval.c, src/ex_cmds.h, src/ex_docmd.c
8120
8121Patch 6.1.255 (depends on 6.1.254)
8122Problem: Crash when loading menu.vim a second time. (Christian Robinson)
8123 ":unlet garbage foo" tries unletting "foo" after an error message.
8124 (Servatius Brandt)
8125 Very long function arguments cause very long messages when
8126 'verbose' is 14 or higher.
8127Solution: Avoid reading from uninitialized memory.
8128 Break out of a loop after an invalid argument for ":unlet".
8129 Truncate long function arguments to 80 characters.
8130Files: src/eval.c
8131
8132Patch 6.1.256 (depends on 6.1.255)
8133Problem: Defining a function after ":if 0" could still cause an error
8134 message for an existing function.
8135 Leaking memory when there are trailing characters for ":delfunc".
8136Solution: Check the "skip" flag. Free the memory. (Servatius Brandt)
8137Files: src/eval.c
8138
8139Patch 6.1.257
8140Problem: ":cwindow" always sets the previous window to the last but one
8141 window. (Benji Fisher)
8142Solution: Set the previous window properly.
8143Files: src/globals.c, src/quickfix.c, src/window.c
8144
8145Patch 6.1.258
8146Problem: Buffers menu doesn't work properly for multibyte buffer names.
8147Solution: Use a pattern to get the left and right part of the name.
8148 (Yasuhiro Matsumoto)
8149Files: runtime/menu.vim
8150
8151Patch 6.1.259 (extra)
8152Problem: Mac: with 'patchmode' is used filenames are truncated.
8153Solution: Increase the BASENAMELEN for Mac OS X. (Ed Ralston)
8154Files: src/os_mac.h
8155
8156Patch 6.1.260 (depends on 6.1.104)
8157Problem: GCC 3.2 still seems to have an optimizer problem. (Zvi Har'El)
8158Solution: Use the same configure check as used for GCC 3.1.
8159Files: src/auto/configure, src/configure.in
8160
8161Patch 6.1.261
8162Problem: When deleting a line in a buffer which is not the current buffer,
8163 using the Perl interface Delete(), the cursor in the current
8164 window may move. (Chris Houser)
8165Solution: Don't adjust the cursor position when changing another buffer.
8166Files: src/if_perl.xs
8167
8168Patch 6.1.262
8169Problem: When jumping over folds with "z[", "zj" and "zk" the previous
8170 position is not remembered. (Hari Krishna Dara)
8171Solution: Set the previous context mark before jumping.
8172Files: src/fold.c
8173
8174Patch 6.1.263
8175Problem: When typing a multi-byte character that triggers an abbreviation
8176 it is not inserted properly.
8177Solution: Handle adding the typed multi-byte character. (Yasuhiro Matsumoto)
8178Files: src/getchar.c
8179
8180Patch 6.1.264 (depends on patch 6.1.254)
8181Problem: exists() does not work for built-in functions. (Steve Wall)
8182Solution: Don't check for the function name to start with a capital.
8183Files: src/eval.c
8184
8185Patch 6.1.265
8186Problem: libcall() can be used in 'foldexpr' to call any system function.
8187 rename(), delete() and remote_send() can also be used in
8188 'foldexpr'. These are security problems. (Georgi Guninski)
8189Solution: Don't allow using libcall(), rename(), delete(), remote_send() and
8190 similar functions in the sandbox.
8191Files: src/eval.c
8192
8193Patch 6.1.266 (depends on 6.1.265)
8194Problem: Win32: compile error in eval.c. (Bill McCarthy)
8195Solution: Move a variable declaration.
8196Files: src/eval.c
8197
8198Patch 6.1.267
8199Problem: Using "p" to paste into a Visual selected area may cause a crash.
8200Solution: Allocate enough memory for saving the register contents. (Muraoka
8201 Taro)
8202Files: src/ops.c
8203
8204Patch 6.1.268
8205Problem: When triggering an abbreviation with a multi-byte character, this
8206 character is not correctly inserted after expanding the
8207 abbreviation. (Taro Muraoka)
8208Solution: Add ABBR_OFF to all characters above 0xff.
8209Files: src/edit.c, src/ex_getln.c, src/getchar.c
8210
8211Patch 6.1.269
8212Problem: After using input() text written with ":redir" gets extra indent.
8213 (David Fishburn)
8214Solution: Restore msg_col after using input().
8215Files: src/ex_getln.c
8216
8217Patch 6.1.270 (depends on 6.1.260)
8218Problem: GCC 3.2.1 still seems to have an optimizer problem.
8219Solution: Use the same configure check as used for GCC 3.1.
8220Files: src/auto/configure, src/configure.in
8221
8222Patch 6.1.271
8223Problem: When compiling without the +syntax feature there are errors.
8224Solution: Don't use some code for syntax highlighting. (Roger Cornelius)
8225 Make test 45 work without syntax highlighting.
8226 Also fix an error in a pattern matching: "\%(" was not supported.
8227Files: src/ex_cmds2.c, src/regexp.c, src/testdir/test45.in
8228
8229Patch 6.1.272
8230Problem: After using ":set define<" a crash may happen. (Christian Robinson)
8231Solution: Make a copy of the option value in allocated memory.
8232Files: src/option.c
8233
8234Patch 6.1.273
8235Problem: When the cursor doesn't blink, redrawing an exposed area may hide
8236 the cursor.
8237Solution: Always draw the cursor, also when it didn't move. (Muraoka Taro)
8238Files: src/gui.c
8239
8240Patch 6.1.274 (depends on 6.1.210)
8241Problem: Resetting the iconv() state after each error is wrong for an
8242 incomplete sequence.
8243Solution: Don't reset the iconv() state.
8244Files: src/fileio.c
8245
8246Patch 6.1.275
8247Problem: When using "v" in a startup script, get warning message that
8248 terminal cannot highlight. (Charles Campbell)
8249Solution: Only give the message after the terminal has been initialized.
8250Files: src/normal.c
8251
8252Patch 6.1.276
8253Problem: "gvim --remote file" doesn't prompt for an encryption key.
8254Solution: The further characters the client sends to the server are used.
8255 Added inputsave() and inputrestore() to allow prompting the
8256 user directly and not using typeahead.
8257 Also fix possible memory leak for ":normal".
8258Files: src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c,
8259 src/main.c, src/proto/getchar.pro, src/proto/ui.pro,
8260 src/runtime/doc/eval.txt, src/structs.h, src/ui.c, src/vim.h
8261
8262Patch 6.1.277 (depends on 6.1.276)
8263Problem: Compilation error when building with small features.
8264Solution: Define trash_input_buf() when needed. (Kelvin Lee)
8265Files: src/ui.c
8266
8267Patch 6.1.278
8268Problem: When using signs the line number of a closed fold doesn't line up
8269 with the other line numbers. (Kamil Burzynski)
8270Solution: Insert two spaces for the sign column.
8271Files: src/screen.c
8272
8273Patch 6.1.279
8274Problem: The prototype for smsg() and smsg_attr() do not match the function
8275 definition. This may cause trouble for some compilers. (Nix)
8276Solution: Use va_list for systems that have stdarg.h. Use "int" instead of
8277 "void" for the return type.
8278Files: src/auto/configure, src/config.h.in, src/configure.in,
8279 src/proto.h, src/message.c
8280
8281Patch 6.1.280
8282Problem: It's possible to use an argument "firstline" or "lastline" for a
8283 function but using "a:firstline" or "a:lastline" in the function
8284 won't work. (Benji Fisher)
8285Solution: Give an error message for these arguments.
8286 Also avoid that the following function body causes a whole row of
8287 errors, skip over it after an error in the first line.
8288Files: src/eval.c
8289
8290Patch 6.1.281
8291Problem: In Insert mode CTRL-X CTRL-G leaves the cursor after the ruler.
8292Solution: Set the cursor position before waiting for the argument of CTRL-G.
8293 (Yasuhiro Matsumoto)
8294Files: src/edit.c
8295
8296Patch 6.1.282
8297Problem: Elvis uses "se" in a modeline, Vim doesn't recognize this.
8298Solution: Also accept "se " where "set " is accepted in a modeline.
8299 (Yasuhiro Matsumoto)
8300Files: src/buffer.c
8301
8302Patch 6.1.283
8303Problem: For ":sign" the icon file name cannot contain a space.
8304Solution: Handle backslashes in the file name. (Yasuhiro Matsumoto)
8305Files: src/ex_cmds.c
8306
8307Patch 6.1.284
8308Problem: On Solaris there is a warning for "struct utimbuf".
8309Solution: Move including "utime.h" to outside the function. (Derek Wyatt)
8310Files: src/fileio.c
8311
8312Patch 6.1.285
8313Problem: Can't wipe out a buffer with 'bufhide' option.
8314Solution: Add "wipe" value to 'bufhide'. (Yegappan Lakshmanan)
8315Files: runtime/doc/options.txt, src/buffer.c, src/option.c,
8316 src/quickfix.c
8317
8318Patch 6.1.286
8319Problem: 'showbreak' cannot contain multi-byte characters.
8320Solution: Allow using all printable characters for 'showbreak'.
8321Files: src/charset.c, src/move.c, src/option.c
8322
8323Patch 6.1.287 (depends on 6.1.285)
8324Problem: Effect of "delete" and "wipe" in 'bufhide' were mixed up.
8325Solution: Wipe out when wiping out is asked for.
8326Files: src/buffer.c
8327
8328Patch 6.1.288
8329Problem: ":silent function F" hangs. (Hari Krishna Dara)
8330Solution: Don't use msg_col, it is not incremented when using ":silent".
8331 Also made the function output look a bit better. Don't translate
8332 "function".
8333Files: src/eval.c
8334
8335Patch 6.1.289 (depends on 6.1.278)
8336Problem: Compiler warning for pointer. (Axel Kielhorn)
8337Solution: Add a typecast for " ".
8338Files: src/screen.c
8339
8340Patch 6.1.290 (extra)
8341Problem: Truncating long text for message box may break multi-byte
8342 character.
8343Solution: Adjust to start of multi-byte character. (Yasuhiro Matsumoto)
8344Files: src/os_mswin.c
8345
8346Patch 6.1.291 (extra)
8347Problem: Win32: CTRL-@ doesn't work. Don't even get a message for it.
8348Solution: Recognize the keycode for CTRL-@. (Yasuhiro Matsumoto)
8349Files: src/gui_w48.c
8350
8351Patch 6.1.292 (extra, depends on 6.1.253)
8352Problem: Win32: Can't compile with new MingW compiler.
8353 Borland 5 makefile doesn't generate pathdef.c.
8354Solution: Remove -wwide-multiply argument. (Rene de Zwart)
8355 Various fixes for other problems in Win32 makefiles. (Dan Sharp)
8356Files: src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
8357 src/Make_mvc.mak
8358
8359Patch 6.1.293
8360Problem: byte2line() returns a wrong result for some values.
8361Solution: Change ">=" to ">" in ml_find_line_or_offset(). (Bradford C Smith)
8362 Add one to the line number when at the end of a block.
8363Files: src/memline.c
8364
8365Patch 6.1.294
8366Problem: Can't include a multi-byte character in a string by its hex value.
8367 (Benji Fisher)
8368Solution: Add "\u....": a character specified with up to four hex numbers
8369 and stored according to the value of 'encoding'.
8370Files: src/eval.c
8371
8372Patch 6.1.295 (extra)
8373Problem: Processing the cs.po file generates an error. (Rahul Agrawal)
8374Solution: Fix the printf format characters in the translation.
8375Files: src/po/cs.po
8376
8377Patch 6.1.296
8378Problem: Win32: When cancelling the font dialog 'guifont' remains set to
8379 "*".
8380Solution: Restore the old value of 'guifont' (Yasuhiro Matsumoto)
8381Files: src/option.c
8382
8383Patch 6.1.297
8384Problem: "make test" fails in test6 in an UTF-8 environment. (Benji Fisher)
8385Solution: Before executing the BufReadPost autocommands save the current
8386 fileencoding, so that the file isn't marked changed.
8387Files: src/fileio.c
8388
8389Patch 6.1.298
8390Problem: When using signs and the first line of a closed fold has a sign
8391 it can be redrawn as if the fold was open. (Kamil Burzynski)
8392Solution: Don't redraw a sign inside a closed fold.
8393Files: src/screen.c
8394
8395Patch 6.1.299
8396Problem: ":edit +set\ ro file" doesn't work.
8397Solution: Halve the number of backslashes in the "+cmd" argument.
8398Files: src/ex_docmd.c
8399
8400Patch 6.1.300 (extra)
8401Problem: Handling of ETO_IGNORELANGUAGE is confusing.
8402Solution: Clean up the handling of ETO_IGNORELANGUAGE. (Glenn Maynard)
8403Files: src/gui_w32.c
8404
8405Patch 6.1.301 (extra)
8406Problem: French translation of file-save dialog doesn't show file name.
8407Solution: Insert a star in the printf string. (Francois Terrot)
8408Files: src/po/fr.po
8409
8410Patch 6.1.302
8411Problem: Counting lines of the Visual area is incorrect for closed folds.
8412 (Mikolaj Machowski)
8413Solution: Correct the start and end for the closed fold.
8414Files: src/normal.c
8415
8416Patch 6.1.303 (extra)
8417Problem: The Top/Bottom/All text does not always fit in the ruler when
8418 translated to Japanese. Problem with a character being wider when
8419 in a bold font.
8420Solution: Use ETO_PDY to specify the width of each character. (Yasuhiro
8421 Matsumoto)
8422Files: src/gui_w32.c
8423
8424Patch 6.1.304 (extra, depends on 6.1.292)
8425Problem: Win32: Postscript is always enabled in the MingW Makefile.
8426 Pathdef.c isn't generated properly with Make_bc5.mak. (Yasuhiro
8427 Matsumoto)
8428Solution: Change an ifdef to an ifeq. (Madoka Machitani)
8429 Use the Borland make redirection to generate pathdef.c. (Maurice
8430 Barnum)
8431Files: src/Make_bc5.mak, src/Make_ming.mak
8432
8433Patch 6.1.305
8434Problem: When 'verbose' is 14 or higher, a function call may cause reading
8435 uninitialized data. (Walter Briscoe)
8436Solution: Check for end-of-string in trunc_string().
8437Files: src/message.c
8438
8439Patch 6.1.306
8440Problem: The AIX VisualAge cc compiler doesn't define __STDC__.
8441Solution: Use __EXTENDED__ like __STDC__. (Jess Thrysoee)
8442Files: src/os_unix.h
8443
8444Patch 6.1.307
8445Problem: When a double-byte character has an illegal tail byte the display
8446 is messed up. (Yasuhiro Matsumoto)
8447Solution: Draw "XX" instead of the wrong character.
8448Files: src/screen.c
8449
8450Patch 6.1.308
8451Problem: Can't reset the Visual mode returned by visualmode().
8452Solution: Use an optional argument to visualmode(). (Charles Campbell)
8453Files: runtime/doc/eval.txt, src/eval.c, src/normal.c,
8454 src/structs.h
8455
8456Patch 6.1.309
8457Problem: The tutor doesn't select German if the locale name is
8458 "German_Germany.1252". (Joachim Hofmann)
8459Solution: Check for "German" in the locale name. Also check for
8460 ".ge". And include the German and Greek tutors.
8461Files: runtime/tutor/tutor.de, runtime/tutor/tutor.vim,
8462 runtime/tutor/tutor.gr, runtime/tutor/tutor.gr.cp737
8463
8464Patch 6.1.310 (depends on 6.1.307)
8465Problem: All double-byte characters are displayed as "XX".
8466Solution: Use ">= 32" instead of "< 32". (Yasuhiro Matsumoto)
8467Files: src/screen.c
8468
8469Patch 6.1.311 (extra)
8470Problem: VMS: path in window title doesn't include necessary separator.
8471 file version doesn't always work properly with Unix.
8472 Crashes because of memory overwrite in GUI.
8473 Didn't always handle files with lowercase and correct path.
8474Solution: Fix the problems. Remove unnecessary file name translations.
8475 (Zoltan Arpadffy)
8476Files: src/buffer.c, src/ex_cmds2.c, src/fileio.c, src/memline.c,
8477 src/misc1.c, src/misc2.c, src/os_unix.c, src/os_vms.c, src/tag.c
8478
8479Patch 6.1.312
8480Problem: When using ":silent" debugging is also done silently.
8481Solution: Disable silence while at the debug prompt.
8482Files: src/ex_cmds2.c
8483
8484Patch 6.1.313
8485Problem: When a ":drop fname" command is used and "fname" is open in
8486 another window, it is also opened in the current window.
8487Solution: Change to the window with "fname" instead.
8488 Don't redefine the argument list when dropping only one file.
8489Files: runtime/doc/windows.txt, src/ex_cmds2.c, src/ex_cmds.c,
8490 src/ex_docmd.c, src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro
8491
8492Patch 6.1.314 (depends on 6.1.126)
8493Problem: Missing backslash in "Generic Config file" syntax menu.
8494Solution: Insert the backslash. (Zak Beck)
8495Files: runtime/makemenu.vim, runtime/synmenu.vim
8496
8497Patch 6.1.315 (extra)
8498Problem: A very long hostname may lead to an unterminated string. Failing
8499 to obtain a hostname may result in garbage. (Walter Briscoe)
8500Solution: Add a NUL at the end of the hostname buffer.
8501Files: src/os_mac.c, src/os_msdos.c, src/os_unix.c, src/os_win16.c,
8502 src/os_win32.c
8503
8504Patch 6.1.316
8505Problem: When exiting with "wq" and there is a hidden buffer, after the
8506 "file changed" dialog there is a warning for a changed buffer.
8507 (Ajit Thakkar)
8508Solution: Do update the buffer timestamps when exiting.
8509Files: src/fileio.c
8510
8511Patch 6.1.317
8512Problem: Closing a window may cause some of the remaining windows to be
8513 positioned wrong if there is a mix of horizontal and vertical
8514 splits. (Stefan Ingi Valdimarsson)
8515Solution: Update the frame sizes before updating the window positions.
8516Files: src/window.c
8517
8518Patch 6.1.318
8519Problem: auto/pathdef.c can include wrong quotes when a compiler flag
8520 includes quotes.
8521Solution: Put a backslash before the quotes in compiler flags. (Shinra Aida)
8522Files: src/Makefile
8523
8524Patch 6.1.319 (depends on 6.1.276)
8525Problem: Using "--remote +cmd file" does not execute "cmd".
8526Solution: Call inputrestore() in the same command line as inputsave(),
8527 otherwise it will never get executed.
8528Files: src/main.c
8529
8530Patch 6.1.320 (depends on 6.1.313)
8531Problem: When a ":drop one\ file" command is used the file "one\ file" is
8532 opened, the backslash is not removed. (Taro Muraoka)
8533Solution: Handle backslashes correctly. Always set the argument list to
8534 keep it simple.
8535Files: runtime/doc/windows.txt, src/ex_cmds.c
8536
8537Patch 6.1.321
8538Problem: When 'mouse' includes 'n' but not 'v', don't allow starting Visual
8539 mode with the mouse.
8540Solution: Don't use MOUSE_MAY_VIS when there is no 'v' in 'mouse'. (Flemming
8541 Madsen)
8542Files: src/normal.c
8543
8544Patch 6.1.322 (extra, depends on 6.1.315)
8545Problem: Win32: The host name is always "PC " plus the real host name.
8546Solution: Don't insert "PC " before the host name.
8547Files: src/os_win32.c
8548
8549Patch 6.1.323
8550Problem: ":registers" doesn't stop listing for a "q" at the more prompt.
8551 (Hari Krishna Dara)
8552Solution: Check for interrupt and got_int.
8553Files: src/ops.c, src/proto/ops.pro
8554
8555Patch 6.1.324
8556Problem: Crash when dragging a vertical separator when <LeftMouse> is
8557 remapped to jump to another window.
8558Solution: Pass the window pointer to the function doing the dragging instead
8559 of always using the current window. (Daniel Elstner)
8560 Also fix that starting a drag changes window focus.
8561Files: src/normal.c, src/proto/window.pro, src/ui.c, src/vim.h,
8562 src/window.c
8563
8564Patch 6.1.325
8565Problem: Shift-Tab is not automatically recognized in an xterm.
8566Solution: Add <Esc>[Z as the termcap code. (Andrew Pimlott)
8567Files: src/term.c
8568
8569Patch 6.1.326
8570Problem: Using a search pattern may read from uninitialized data (Yasuhiro
8571 Matsumoto)
8572Solution: Initialize pointers to NULL.
8573Files: src/regexp.c
8574
8575Patch 6.1.327
8576Problem: When opening the "mbyte.txt" help file the utf-8 characters are
8577 unreadable, because the fileencoding is forced to be latin1.
8578Solution: Check for utf-8 encoding first in help files. (Daniel Elstner)
8579Files: runtime/doc/mbyte.txt, src/fileio.c
8580
8581Patch 6.1.328
8582Problem: Prototype for enc_canon_search() is missing.
8583Solution: Add the prototype. (Walter Briscoe)
8584Files: src/mbyte.c
8585
8586Patch 6.1.329
8587Problem: When editing a file "a b c" replacing "%" in ":Cmd %" or ":next %"
8588 does not work properly. (Hari Krishna Dara)
8589Solution: Always escape spaces when expanding "%". Don't split argument for
8590 <f-args> in a user command when only one argument is used.
8591Files: src/ex_docmd.c
8592
8593Patch 6.1.330
8594Problem: GTK, Motif and Athena: Keypad keys produce the same code as
8595 non-keypad keys, making it impossible to map them separately.
8596Solution: Use different termcap codes for the keypad keys. (Neil Bird)
8597Files: src/gui_gtk_x11.c, src/gui_x11.c
8598
8599Patch 6.1.331
8600Problem: When translating the help files, "LOCAL ADDITIONS" no longer marks
8601 the spot where help files from plugins are to be listed.
8602Solution: Add a "local-additions" tag and use that to find the right spot.
8603Files: runtime/doc/help.txt, src/ex_cmds.c
8604
8605Patch 6.1.332 (extra)
8606Problem: Win32: Loading Perl dynamically doesn't work with Perl 5.8.
8607 Perl 5.8 also does not work with Cygwin and Ming.
8608Solution: Adjust the function calls. (Taro Muraoka)
8609 Adjust the cyg and ming makefiles. (Dan Sharp)
8610Files: src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
8611 src/if_perl.xs
8612
8613Patch 6.1.333 (extra)
8614Problem: Win32: Can't handle Unicode text on the clipboard.
8615 Can't pass NUL byte, it becomes a line break. (Bruce DeVisser)
8616Solution: Support Unicode for the clipboard (Ron Aaron and Glenn Maynard)
8617 Also support copy/paste of NUL bytes.
8618Files: src/os_mswin.c, src/os_win16.c src/os_win32.c
8619
8620Patch 6.1.334 (extra, depends on 6.1.303)
8621Problem: Problem with drawing Hebrew characters.
8622Solution: Only use ETO_PDY for Windows NT and the like. (Yasuhiro Matsumoto)
8623Files: src/gui_w32.c
8624
8625Patch 6.1.335 (extra)
8626Problem: Failure of obtaining the cursor position and window size is
8627 ignored.
8628Solution: Remove a semicolon after an "if". (Walter Briscoe)
8629Files: src/gui_w32.c
8630
8631Patch 6.1.336 (extra)
8632Problem: Warning for use of function prototypes of smsg().
8633Solution: Define HAVE_STDARG_H. (Walter Briscoe)
8634Files: src/os_win32.h
8635
8636Patch 6.1.337
8637Problem: When using "finish" in debug mode in function B() for ":call
8638 A(B())" does not stop after B() is finished.
8639Solution: Increase debug_level while evaluating a function.
8640Files: src/ex_docmd.c
8641
8642Patch 6.1.338
8643Problem: When using a menu that checks out the current file from Insert
8644 mode, there is no warning for the changed file until exiting
8645 Insert mode. (Srikanth Sankaran)
8646Solution: Add a check for need_check_timestamps in the Insert mode loop.
8647Files: src/edit.c
8648
8649Patch 6.1.339
8650Problem: Completion doesn't allow "g:" in ":let g:did_<Tab>". (Benji
8651 Fisher)
8652Solution: Return "g:var" for global variables when that is what is being
8653 expanded. (Flemming Madsen)
8654Files: src/eval.c
8655
8656Patch 6.1.340 (extra, depends on 6.1.332)
8657Problem: Win32: Can't compile the Perl interface with nmake.
8658Solution: Don't compare the version number as a string but as a number.
8659 (Juergen Kraemer)
8660Files: src/Make_mvc.mak
8661
8662Patch 6.1.341
8663Problem: In Insert mode with 'rightleft' set the cursor is drawn halfway a
8664 double-wide character. For CTRL-R and CTRL-K in Insert mode the "
8665 or ? is not displayed.
8666Solution: Draw the cursor in the next character cell. Display the " or ?
8667 over the right half of the double-wide character. (Yasuhiro
8668 Matsumoto) Also fix that cancelling a digraph doesn't redraw
8669 a double-byte character correctly.
8670Files: src/edit.c, src/gui.c, src/mbyte.c
8671
8672Patch 6.1.342 (depends on 6.1.341)
8673Problem: With 'rightleft' set typing "c" on a double-wide character causes
8674 the cursor to be displayed one cell to the left.
8675Solution: Draw the cursor in the next character cell. (Yasuhiro Matsumoto)
8676Files: src/gui.c
8677
8678Patch 6.1.343 (depends on 6.1.342)
8679Problem: Cannot compile with the +multi_byte feature but without +rightleft.
8680 Cannot compile without the GUI.
8681Solution: Fix the #ifdefs. (partly by Nam SungHyun)
8682Files: src/gui.c, src/mbyte.c, src/ui.c
8683
8684Patch 6.1.344
8685Problem: When using ":silent filetype" the output is still put in the
8686 message history. (Hari Krishna Dara)
8687Solution: Don't add messages in the history when ":silent" is used.
8688Files: src/message.c
8689
8690Patch 6.1.345 (extra)
8691Problem: Win32: 'imdisable' doesn't work.
8692Solution: Make 'imdisable' work. (Yasuhiro Matsumoto)
8693Files: src/gui_w32.c
8694
8695Patch 6.1.346
8696Problem: The scroll wheel can only scroll the current window.
8697Solution: Make the scroll wheel scroll the window that the mouse points to.
8698 (Daniel Elstner)
8699Files: src/edit.c, src/gui.c, src/normal.c, src/term.c
8700
8701Patch 6.1.347
8702Problem: When using cscope to list matching tags, the listed number is
8703 sometimes not equal to what cscope uses. (Vihren Milev)
8704Solution: For cscope tags use only one table, don't give tags in the current
8705 file a higher priority.
8706Files: src/tag.c
8707
8708Patch 6.1.348
8709Problem: Wildmode with wildmenu: ":set wildmode=list,full", ":colorscheme
8710 <tab>" results in "zellner" instead of the first entry. (Anand
8711 Hariharan)
8712Solution: Don't call ExpandOne() from globpath(). (Flemming Madsen)
8713Files: src/ex_getln.c
8714
8715Patch 6.1.349
8716Problem: "vim --serverlist" when no server was ever started gives an error
8717 message without "\n".
8718 "vim --serverlist" doesn't exit when the X server can't be
8719 contacted, it starts Vim unexpectedly. (Ricardo Signes)
8720Solution: Don't give an error when no Vim server was ever started.
8721 Treat failing of opening the display equal to errors inside the
8722 remote*() functions. (Flemming Madsen)
8723Files: src/if_xcmdsrv.c, src/main.c
8724
8725Patch 6.1.350
8726Problem: When entering a buffer with ":bnext" for the first time, using an
8727 autocommand to restore the last used cursor position doesn't work.
8728 (Paolo Giarusso)
8729Solution: Don't use the last known cursor position of the current Vim
8730 invocation if an autocommand changed the position.
8731Files: src/buffer.c
8732
8733Patch 6.1.351 (depends on 6.1.349)
8734Problem: Crash when starting Vim the first time in an X server. (John
8735 McGowan)
8736Solution: Don't call xFree() with a fixed string.
8737Files: src/if_xcmdsrv.c
8738
8739Patch 6.1.352 (extra, depends on 6.1.345)
8740Problem: Win32: Crash when setting "imdisable" in _vimrc.
8741Solution: Don't call IME functions when imm32.dll was not loaded (yet).
8742 Also add typecasts to avoid Compiler warnings for
8743 ImmAssociateContext() argument.
8744Files: src/gui_w32.c
8745
8746Patch 6.1.353 (extra, depends on 6.1.334)
8747Problem: Problem with drawing Arabic characters.
8748Solution: Don't use ETO_PDY, do use padding.
8749Files: src/gui_w32.c
8750
8751Patch 6.1.354 (extra, depends on 6.1.333)
8752Problem: MS-Windows 98: Notepad can't paste text copied from Vim when
8753 'encoding' is "utf-8".
8754Solution: Also make CF_TEXT available on the clipboard. (Ron Aaron)
8755Files: src/os_mswin.c
8756
8757Patch 6.1.355
8758Problem: In a regexp '\n' will never match anything in a string.
8759Solution: Make '\n' match a newline character.
8760Files: src/buffer.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
8761 src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/misc1.c,
8762 src/option.c, src/os_mac.c, src/os_unix.c, src/quickfix.c,
8763 src/regexp.c, src/search.c, src/syntax.c, src/tag.c, src/vim.h
8764
8765Patch 6.1.356 (extra, depends on, well, eh, several others)
8766Problem: Compiler warnings for using convert_setup() and a few other
8767 things.
8768Solution: Add typecasts.
8769Files: src/mbyte.c, src/os_mswin.c, src/proto/os_win32.pro, src/os_win32.c
8770
8771Patch 6.1.357
8772Problem: CR in the quickfix window jumps to the error under the cursor, but
8773 this doesn't work in Insert mode. (Srikanth Sankaran)
8774Solution: Handle CR in Insert mode in the quickfix window.
8775Files: src/edit.c
8776
8777Patch 6.1.358
8778Problem: The tutor doesn't select another locale version properly.
8779Solution: Insert the "let" command. (Yasuhiro Matsumoto)
8780Files: runtime/tutor/tutor.vim
8781
8782Patch 6.1.359 (extra)
8783Problem: Mac Carbon: Vim doesn't get focus when started from the command
8784 line. Crash when using horizontal scroll bar.
8785Solution: Set Vim as the frontprocess. Fix scrolling. (Peter Cucka)
8786Files: src/gui_mac.c
8787
8788Patch 6.1.360 (depends on 6.1.341)
8789Problem: In Insert mode CTRL-K ESC messes up a multi-byte character.
8790 (Anders Helmersson)
8791Solution: Save all bytes of a character when displaying a character
8792 temporarily.
8793Files: src/edit.c, src/proto/screen.pro, src/screen.c
8794
8795Patch 6.1.361
8796Problem: Cannot jump to a file mark with ":'M".
8797Solution: Allow jumping to another file for a mark in an Ex address when it
8798 is the only thing in the command line.
8799Files: src/ex_docmd.c
8800
8801Patch 6.1.362
8802Problem: tgetent() may return zero for success. tgetflag() may return -1
8803 for an error.
8804Solution: Check tgetflag() for returning a positive value. Add an autoconf
8805 check for the value that tgetent() returns.
8806Files: src/auto/configure, src/config.h.in, src/configure.in, src/term.c
8807
8808Patch 6.1.363
8809Problem: byte2line() can return one more than the number of lines.
8810Solution: Return -1 if the offset is one byte past the end.
8811Files: src/memline.c
8812
8813Patch 6.1.364
8814Problem: That the FileChangedShell autocommand event never nests makes it
8815 difficult to reload a file in a normal way.
8816Solution: Allow nesting for the FileChangedShell event but do not allow
8817 triggering itself again.
8818 Also avoid autocommands for the cmdline window in rare cases.
8819Files: src/ex_getln.c, src/fileio.c, src/window.c
8820
8821Patch 6.1.365 (depends on 6.1.217)
8822Problem: Setting a breakpoint in a sourced file with a relative path name
8823 doesn't work. (Servatius Brandt)
8824Solution: Expand the file name to a full path.
8825Files: src/ex_cmds2.c
8826
8827Patch 6.1.366
8828Problem: Can't use Vim with Netbeans.
8829Solution: Add the Netbeans interface. Includes support for sign icons and
8830 "-fg" and "-bg" arguments for GTK. Add the 'autochdir'
8831 option. (Gordon Prieur, George Hernandez, Dave Weatherford)
8832 Make it possible to display both a sign with a text and one with
8833 line highlighting in the same line.
8834 Add support for Agide, interface version 2.1.
8835 Also fix that when 'iskeyword' includes '?' the "*" command
8836 doesn't work properly on a word that includes "?" (Bill McCarthy):
8837 Don't escape "?" to "\?" when searching forward.
8838Files: runtime/doc/Makefile, runtime/doc/netbeans.txt,
8839 runtime/doc/options.txt, runtime/doc/various.txt,
8840 src/Makefile, src/auto/configure, src/buffer.c, src/config.h.in,
8841 src/config.mk.in, src/configure.in, src/edit.c, src/ex_cmds.c,
8842 src/ex_docmd.c, src/feature.h, src/fileio.c, src/globals.h,
8843 src/gui.c, src/gui_beval.c, src/gui_gtk_x11.c, src/gui_x11.c,
8844 src/main.c, src/memline.c, src/misc1.c, src/misc2.c, src/move.c,
8845 src/nbdebug.c, src/nbdebug.h, src/netbeans.c, src/normal.c,
8846 src/ops.c, src/option.c, src/option.h, src/proto/buffer.pro,
8847 src/proto/gui_beval.pro, src/proto/gui_gtk_x11.pro,
8848 src/proto/gui_x11.pro, src/proto/misc2.pro,
8849 src/proto/netbeans.pro, src/proto/normal.pro, src/proto/ui.pro,
8850 src/proto.h, src/screen.c, src/structs.h, src/ui.c, src/undo.c,
8851 src/vim.h, src/window.c, src/workshop.c
8852
8853Patch 6.1.367 (depends on 6.1.365)
8854Problem: Setting a breakpoint in a function doesn't work. For a sourced
8855 file it doesn't work when symbolic links are involved. (Servatius
8856 Brandt)
8857Solution: Expand the file name in the same way as do_source() does. Don't
8858 prepend the path to a function name.
8859Files: src/ex_cmds2.c
8860
8861Patch 6.1.368
8862Problem: Completion for ":map" does not include <silent> and <script>.
8863 ":mkexrc" do not save the <silent> attribute of mappings.
8864Solution: Add "<silent>" to the generated map commands when appropriate.
8865 (David Elstner)
8866 Add <silent> and <script> to command line completion.
8867Files: src/getchar.c
8868
8869Patch 6.1.369 (extra)
8870Problem: VMS: Vim hangs when attempting to edit a read-only file in the
8871 terminal. Problem with VMS filenames for quickfix.
8872Solution: Rewrite low level input. Remove version number from file name in
8873 a couple more places. Fix crash after patch 6.1.362. Correct
8874 return code for system(). (Zoltan Arpadffy, Tomas Stehlik)
8875Files: src/misc1.c, src/os_unix.c, src/os_vms.c, src/proto/os_vms.pro,
8876 src/os_vms_conf.h, src/quickfix.c, src/ui.c
8877
8878Patch 6.1.370
8879Problem: #ifdef nesting is unclear.
8880Solution: Insert spaces to indicate the nesting.
8881Files: src/os_unix.c
8882
8883Patch 6.1.371
8884Problem: "%V" in 'statusline' doesn't show "0-1" in an empty line.
8885Solution: Add one to the column when comparing with virtual column (Andrew
8886 Pimlott)
8887Files: src/buffer.c
8888
8889Patch 6.1.372
8890Problem: With 16 bit ints there are compiler warnings. (Walter Briscoe)
8891Solution: Change int into long.
8892Files: src/structs.h, src/syntax.c
8893
8894Patch 6.1.373
8895Problem: The default page header for printing is not translated.
8896Solution: Add _() around the two places where "Page" is used. (Mike
8897 Williams) Translate the default value of the 'titleold' and
8898 'printheader' options.
8899Files: src/ex_cmds2.c, src/option.c
8900
8901Patch 6.1.374 (extra)
8902Problem: MS-Windows: Cannot build GvimExt with MingW or Cygwin.
8903Solution: Add makefile and modified resource files. (Rene de Zwart)
8904 Also support Cygwin. (Alejandro Lopez_Valencia)
8905Files: GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile,
8906 GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc
8907
8908Patch 6.1.375
8909Problem: MS-Windows: ':!dir "%"' does not work for a file name with spaces.
8910 (Xiangjiang Ma)
8911Solution: Don't insert backslashes for spaces in a shell command.
8912Files: src/ex_docmd.c
8913
8914Patch 6.1.376
8915Problem: "vim --version" and "vim --help" have a non-zero exit code.
8916 That is unusual. (Petesea)
8917Solution: Use a zero exit code.
8918Files: src/main.c
8919
8920Patch 6.1.377
8921Problem: Can't add words to 'lispwords' option.
8922Solution: Add P_COMMA and P_NODUP flags. (Haakon Riiser)
8923Files: src/option.c
8924
8925Patch 6.1.378
8926Problem: When two buffer-local user commands are ambiguous, a full match
8927 with a global user command isn't found. (Hari Krishna Dara)
8928Solution: Detect this situation and accept the global command.
8929Files: src/ex_docmd.c
8930
8931Patch 6.1.379
8932Problem: Linux with kernel 2.2 can't use the alternate stack in combination
8933 with threading, causes an infinite loop.
8934Solution: Don't use the alternate stack in this situation.
8935Files: src/os_unix.c
8936
8937Patch 6.1.380
8938Problem: When 'winminheight' is zero and the quickfix window is zero lines,
8939 entering the window doesn't make it higher. (Christian J.
8940 Robinson)
8941Solution: Make sure the current window is at least one line high.
8942Files: src/window.c
8943
8944Patch 6.1.381
8945Problem: When a BufWriteCmd is used and it leaves the buffer modified, the
8946 window may still be closed. (Hari Krishna Dara)
8947Solution: Return FAIL from buf_write() when the buffer is still modified
8948 after a BufWriteCmd autocommand was used.
8949Files: src/fileio.c
8950
8951Patch 6.1.382 (extra)
8952Problem: Win32 GUI: When using two monitors, the code that checks/fixes the
8953 window size and position (e.g. when a font changes) doesn't work
8954 properly. (George Reilly)
8955Solution: Handle a double monitor situation. (Helmut Stiegler)
8956Files: src/gui_w32.c
8957
8958Patch 6.1.383
8959Problem: The filling of the status line doesn't work properly for
8960 multi-byte characters. (Nam SungHyun)
8961 There is no check for going past the end of the buffer.
8962Solution: Properly distinguish characters and bytes. Properly check for
8963 running out of buffer space.
8964Files: src/buffer.c, src/ex_cmds2.c, src/proto/buffer.pro, src/screen.c
8965
8966Patch 6.1.384
8967Problem: It is not possible to find if a certain patch has been included.
8968 (Lubomir Host)
8969Solution: Support using has() to check if a patch was included.
8970Files: runtime/doc/eval.txt, src/eval.c, src/proto/version.pro,
8971 src/version.c
8972
8973Patch 6.1.385 (depends on 6.1.383)
8974Problem: Can't compile without the multi-byte feature.
8975Solution: Move an #ifdef. (Christian J. Robinson)
8976Files: src/buffer.c
8977
8978Patch 6.1.386
8979Problem: Get duplicate tags when running ":helptags".
8980Solution: Do the other halve of moving a section to another help file.
8981Files: runtime/tagsrch.txt
8982
8983Patch 6.1.387 (depends on 6.1.373)
8984Problem: Compiler warning for pointer cast.
8985Solution: Add (char_u *).
8986Files: src/option.c
8987
8988Patch 6.1.388 (depends on 6.1.384)
8989Problem: Compiler warning for pointer cast.
8990Solution: Add (char *). Only include has_patch() when used.
8991Files: src/eval.c, src/version.c
8992
8993Patch 6.1.389 (depends on 6.1.366)
8994Problem: Balloon evaluation doesn't work for GTK.
8995 has("balloon_eval") doesn't work.
8996Solution: Add balloon evaluation for GTK. Also improve displaying of signs.
8997 (Daniel Elstner)
8998 Also make ":gui" start the netbeans connection and avoid using
8999 netbeans functions when the connection is not open.
9000Files: src/Makefile, src/feature.h, src/gui.c, src/gui.h,
9001 src/gui_beval.c, src/gui_beval.h, src/gui_gtk.c,
9002 src/gui_gtk_x11.c, src/eval.c, src/memline.c, src/menu.c,
9003 src/netbeans.c, src/proto/gui_beval.pro, src/proto/gui_gtk.pro,
9004 src/structs.h, src/syntax.c, src/ui.c, src/workshop.c
9005
9006Patch 6.1.390 (depends on 6.1.389)
9007Problem: It's not possible to tell Vim to save and exit through the
9008 Netbeans interface. Would still try to send balloon eval text
9009 after the connection is closed.
9010 Can't use Unicode characters for sign text.
9011Solution: Add functions "saveAndExit" and "getModified". Check for a
9012 working connection before sending a balloonText event.
9013 various other cleanups.
9014 Support any character for sign text. (Daniel Elstner)
9015Files: runtime/doc/netbeans.txt, runtime/doc/sign.txt, src/ex_cmds.c,
9016 src/netbeans.c, src/screen.c
9017
9018Patch 6.1.391
9019Problem: ml_get() error when using virtualedit. (Charles Campbell)
9020Solution: Get a line from a specific window, not the current one.
9021Files: src/charset.c
9022
9023Patch 6.1.392 (depends on 6.1.383)
9024Problem: Highlighting in the 'statusline' is in the wrong position when an
9025 item is truncated. (Zak Beck)
9026Solution: Correct the start of 'statusline' items properly for a truncated
9027 item.
9028Files: src/buffer.c
9029
9030Patch 6.1.393
9031Problem: When compiled with Python and threads, detaching the terminal may
9032 cause Vim to loop forever.
9033Solution: Add -pthread to $CFLAGS when using Python and gcc. (Daniel
9034 Elstner)
9035Files: src/auto/configure,, src/configure.in
9036
9037Patch 6.1.394 (depends on 6.1.390)
9038Problem: The netbeans interface doesn't recognize multibyte glyph names.
9039Solution: Check the number of cells rather than bytes to decide
9040 whether a glyph name is not a filename. (Daniel Elstner)
9041Files: src/netbeans.c
9042
9043Patch 6.1.395 (extra, depends on 6.1.369)
9044Problem: VMS: OLD_VMS is never defined. Missing function prototype.
9045Solution: Define OLD_VMS in Make_vms.mms. Add vms_sys_status() to
9046 os_vms.pro. (Zoltan Arpadffy)
9047Files: src/Make_vms.mms, src/proto/os_vms.pro
9048
9049Patch 6.1.396 (depends on 6.1.330)
9050Problem: Compiler warnings for using enum.
9051Solution: Add typecast to char_u.
9052Files: src/gui_gtk_x11.c, src/gui_x11.c
9053
9054Patch 6.1.397 (extra)
9055Problem: The install program may use a wrong path for the diff command if
9056 there is a space in the install directory path.
9057Solution: Use double quotes around the path if necessary. (Alejandro
9058 Lopez-Valencia) Also use double quotes around the file name
9059 arguments.
9060Files: src/dosinst.c
9061
9062Patch 6.1.398
9063Problem: Saving the typeahead for debug mode causes trouble for a test
9064 script. (Servatius Brandt)
9065Solution: Add the ":debuggreedy" command to avoid saving the typeahead.
9066Files: runtime/doc/repeat.txt, src/ex_cmds.h, src/ex_cmds2.c,
9067 src/ex_docmd.c, src/proto/ex_cmds2.pro
9068
9069Patch 6.1.399
9070Problem: Warning for unused variable.
9071Solution: Remove the variable two_or_more.
9072Files: src/ex_cmds.c
9073
9074Patch 6.1.400 (depends on 6.1.381)
9075Problem: When a BufWriteCmd wipes out the buffer it may still be accessed.
9076Solution: Don't try accessing a buffer that has been wiped out.
9077Files: src/fileio.c
9078
9079Patch 6.1.401 (extra)
9080Problem: Building the Win16 version with Borland 5.01 doesn't work.
9081 "make test" doesn't work with Make_dos.mak. (Walter Briscoe)
9082Solution: Various fixes to the w16 makefile. (Walter Briscoe)
9083 Don't use deltree. Use "mkdir \tmp" instead of "mkdir /tmp".
9084Files: src/Make_w16.mak, src/testdir/Make_dos.mak
9085
9086Patch 6.1.402
9087Problem: When evaluating a function name with curly braces, an error
9088 is not handled consistently.
9089Solution: Accept the result of an curly braces expression when an
9090 error was encountered. Skip evaluating an expression in curly
9091 braces when skipping. (Servatius Brandt)
9092Files: src/eval.c
9093
9094Patch 6.1.403 (extra)
9095Problem: MS-Windows 16 bit: compiler warnings.
9096Solution: Add typecasts. (Walter Briscoe)
9097Files: src/ex_cmds2.c, src/gui_w48.c, src/os_mswin.c, src/os_win16.c,
9098 src/syntax.c
9099
9100Patch 6.1.404 (extra)
9101Problem: Various small problems.
9102Solution: Fix comments. Various small additions, changes in indent, removal
9103 of unused items and fixes.
9104Files: Makefile, README.txt, runtime/menu.vim, runtime/vimrc_example.vim,
9105 src/INSTALL, src/INSTALLole.txt, src/Make_bc5.mak,
9106 src/Make_cyg.mak, src/Make_ming.mak, src/Makefile,
9107 src/config.h.in, src/edit.c, src/eval.c, src/ex_cmds2.c,
9108 src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/getchar.c,
9109 src/gui.c, src/gui_gtk.c, src/gui_photon.c, src/if_cscope.c,
9110 src/if_python.c, src/keymap.h, src/mark.c, src/mbyte.c,
9111 src/message.c, src/misc1.c, src/misc2.c, src/normal.c,
9112 src/option.c, src/os_os2_cfg.h, src/os_win32.c,
9113 src/proto/getchar.pro, src/proto/message.pro,
9114 src/proto/regexp.pro, src/screen.c, src/structs.h, src/syntax.c,
9115 src/term.c, src/testdir/test15.in, src/testdir/test15.ok,
9116 src/vim.rc, src/xxd/Make_cyg.mak, src/xxd/Makefile
9117
9118Patch 6.1.405
9119Problem: A few files are missing from the toplevel Makefile.
9120Solution: Add the missing files.
9121Files: Makefile
9122
9123Patch 6.1.406 (depends on 6.1.392)
9124Problem: When a statusline item doesn't fit arbitrary text appears.
9125 (Christian J. Robinson)
9126Solution: When there is just enough room but not for the "<" truncate the
9127 statusline item like there is no room.
9128Files: src/buffer.c
9129
9130Patch 6.1.407
9131Problem: ":set scrollbind | help" scrollbinds the help window. (Andrew
9132 Pimlott)
9133Solution: Reset 'scrollbind' when opening a help window.
9134Files: src/ex_cmds.c
9135
9136Patch 6.1.408
9137Problem: When 'rightleft' is set unprintable character 0x0c is displayed as
9138 ">c0<".
9139Solution: Reverse the text of the hex character.
9140Files: src/screen.c
9141
9142Patch 6.1.409
9143Problem: Generating tags for the help doesn't work for some locales.
9144Solution: Set LANG=C LC_ALL=C in the environment for "sort". (Daniel
9145 Elstner)
9146Files: runtime/doc/Makefile
9147
9148Patch 6.1.410 (depends on 6.1.390)
9149Problem: Linking error when compiling with Netbeans but without sign icons.
9150 (Malte Neumann)
9151Solution: Don't define buf_signcount() when sign icons are unavailable.
9152Files: src/buffer.c
9153
9154Patch 6.1.411
9155Problem: When 'virtualedit' is set, highlighting a Visual block beyond the
9156 end of a line may be wrong.
9157Solution: Correct the virtual column when the end of the line is before the
9158 displayed part of the line. (Muraoka Taro)
9159Files: src/screen.c
9160
9161Patch 6.1.412
9162Problem: When swapping terminal screens and using ":gui" to start the GUI,
9163 the shell prompt may be after a hit-enter prompt.
9164Solution: Output a newline in the terminal when starting the GUI and there
9165 was a hit-enter prompt..
9166Files: src/gui.c
9167
9168Patch 6.1.413
9169Problem: When 'clipboard' contains "unnamed", "p" in Visual mode doesn't
9170 work correctly.
9171Solution: Save the register before overwriting it and put the resulting text
9172 on the clipboard afterwards. (Muraoka Taro)
9173Files: src/normal.c, src/ops.c
9174
9175Patch 6.1.414 (extra, depends on 6.1.369)
9176Problem: VMS: Vim busy waits when waiting for input.
9177Solution: Delay for a short while before getting another character. (Zoltan
9178 Arpadffy)
9179Files: src/os_vms.c
9180
9181Patch 6.1.415
9182Problem: When there is a vertical split and a quickfix window, reducing the
9183 size of the Vim window may result in a wrong window layout and a
9184 crash.
9185Solution: When reducing the window size and there is not enough space for
9186 'winfixheight' set the frame height to the larger height, so that
9187 there is a retry while ignoring 'winfixheight'. (Yasuhiro
9188 Matsumoto)
9189Files: src/window.c
9190
9191Patch 6.1.416 (depends on 6.1.366)
9192Problem: When using the Netbeans interface, a line with a sign cannot be
9193 changed.
9194Solution: Respect the GUARDEDOFFSET for sign IDs when checking for a guarded
9195 area.
9196Files: src/netbeans.c
9197
9198Patch 6.1.417
9199Problem: Unprintable multi-byte characters are not handled correctly.
9200 Multi-byte characters above 0xffff are displayed as another
9201 character.
9202Solution: Handle unprintable multi-byte characters. Display multi-byte
9203 characters above 0xffff with a marker. Recognize UTF-16 words and
9204 BOM words as unprintable. (Daniel Elstner)
9205Files: src/charset.c, src/mbyte.c, src/screen.c
9206
9207Patch 6.1.418
9208Problem: The result of strftime() is in the current locals. Need to
9209 convert it to 'encoding'.
9210Solution: Obtain the current locale and convert the argument for strftime()
9211 to it and the result back to 'encoding'. (Daniel Elstner)
9212Files: src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/mbyte.c,
9213 src/proto/mbyte.pro, src/option.c, src/os_mswin.c
9214
9215Patch 6.1.419
9216Problem: Vim doesn't compile on AIX 5.1.
9217Solution: Don't define _NO_PROTO on this system. (Uribarri)
9218Files: src/auto/configure, src/configure.in
9219
9220Patch 6.1.420 (extra)
9221Problem: convert_input() has an unnecessary STRLEN().
9222 Conversion from UCS-2 to a codepage uses word count instead of
9223 byte count.
9224Solution: Remove the STRLEN() call. (Daniel Elstner)
9225 Always use byte count for string_convert().
9226Files: src/gui_w32.c, src/mbyte.c
9227
9228Patch 6.1.421 (extra, depends on 6.1.354)
9229Problem: MS-Windows 9x: When putting text on the clipboard it can be in
9230 the wrong encoding.
9231Solution: Convert text to the active codepage for CF_TEXT. (Glenn Maynard)
9232Files: src/os_mswin.c
9233
9234Patch 6.1.422
9235Problem: Error in .vimrc doesn't cause hit-enter prompt when swapping
9236 screens. (Neil Bird)
9237Solution: Set msg_didany also when sending a message to the terminal
9238 directly.
9239Files: src/message.c
9240
9241Patch 6.1.423
9242Problem: Can't find arbitrary text in help files.
9243Solution: Added the ":helpgrep" command.
9244Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
9245 src/proto/quickfix.pro, src/quickfix.c
9246
9247Patch 6.1.424 (extra)
9248Problem: Win32: Gvim compiled with VC++ 7.0 run on Windows 95 does not show
9249 menu items.
9250Solution: Define $WINVER to avoid an extra item is added to MENUITEMINFO.
9251 (Muraoka Taro)
9252Files: src/Make_mvc.mak
9253
9254Patch 6.1.425
9255Problem: ":helptags $VIMRUNTIME/doc" does not add the "help-tags" tag.
9256Solution: Do add the "help-tags" tag for that specific directory.
9257Files: src/ex_cmds.c
9258
9259Patch 6.1.426
9260Problem: "--remote-wait +cmd file" waits forever. (Valery Kondakoff)
9261Solution: Don't wait for the "+cmd" argument to have been edited.
9262Files: src/main.c
9263
9264Patch 6.1.427
9265Problem: Several error messages for regexp patterns are not translated.
9266Solution: Use _() properly. (Muraoka Taro)
9267Files: src/regexp.c
9268
9269Patch 6.1.428
9270Problem: FreeBSD: wait() may hang when compiled with Python support and
9271 doing a system() call in a startup script.
9272Solution: Use waitpid() instead of wait() and poll every 10 msec, just like
9273 what is done in the GUI.
9274Files: src/os_unix.c
9275
9276Patch 6.1.429 (depends on 6.1.390)
9277Problem: Crash when using showmarks.vim plugin. (Charles Campbell)
9278Solution: Check for sign_get_text() returning a NULL pointer.
9279Files: src/screen.c
9280
9281Patch 6.1.430
9282Problem: In Lisp code backslashed parens should be ignored for "%". (Dorai)
9283Solution: Skip over backslashed parens.
9284Files: src/search.c
9285
9286Patch 6.1.431
9287Problem: Debug commands end up in redirected text.
9288Solution: Disable redirection while handling debug commands.
9289Files: src/ex_cmds2.c
9290
9291Patch 6.1.432 (depends on 6.1.375)
9292Problem: MS-Windows: ":make %:p" inserts extra backslashes. (David Rennalls)
9293Solution: Don't add backslashes, handle it like ":!cmd".
9294Files: src/ex_docmd.c
9295
9296Patch 6.1.433
9297Problem: ":popup" only works for Win32.
9298Solution: Add ":popup" support for GTK. (Daniel Elstner)
9299Files: runtime/doc/gui.txt, src/ex_docmd.c, src/gui_gtk.c, src/menu.c,
9300 src/proto/gui_gtk.pro
9301
9302Patch 6.1.434 (extra)
9303Problem: Win32: When there are more than 32767 lines, the scrollbar has a
9304 roundoff error.
9305Solution: Make a click on an arrow move one line. Also move the code to
9306 gui_w48.c, there is hardly any difference between the 16 bit and
9307 32 bit versions. (Walter Briscoe)
9308Files: src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
9309
9310Patch 6.1.435
9311Problem: ":winsize x" resizes the Vim window to the minimal size. (Andrew
9312 Pimlott)
9313Solution: Give an error message for wrong arguments of ":winsize" and
9314 ":winpos".
9315Files: src/ex_docmd.c
9316
9317Patch 6.1.436
9318Problem: When a long UTF-8 file contains an illegal byte it's hard to find
9319 out where it is. (Ron Aaron)
9320Solution: Add the line number to the error message.
9321Files: src/fileio.c
9322
9323Patch 6.1.437 (extra, depends on 6.1.421)
9324Problem: Using multi-byte functions when they are not available.
9325Solution: Put the clipboard conversion inside an #ifdef. (Vince Negri)
9326 Also fix a pointer type mistake. (Walter Briscoe)
9327Files: src/os_mswin.c
9328
9329Patch 6.1.438
9330Problem: When Perl has thread support Vim cannot use the Perl interface.
9331Solution: Add a configure check and disable Perl when it will not work.
9332 (Aron Griffis)
9333Files: src/auto/configure, src/configure.in
9334
9335Patch 6.1.439
9336Problem: Netbeans: A "create" function doesn't actually create a buffer,
9337 following functions may fail.
9338Solution: Create a Vim buffer without a name when "create" is called.
9339 (Gordon Prieur)
9340Files: runtime/doc/netbeans.txt, src/netbeans.c
9341
9342Patch 6.1.440
9343Problem: The "@*" command doesn't obtain the actual contents of the
9344 clipboard. (Hari Krishna Dara)
9345Solution: Obtain the clipboard text before executing the command.
9346Files: src/ops.c
9347
9348Patch 6.1.441
9349Problem: "zj" and "zk" cannot be used as a motion command after an
9350 operator. (Ralf Hetzel)
9351Solution: Accept these commands as motion commands.
9352Files: src/normal.c
9353
9354Patch 6.1.442
9355Problem: Unicode 3.2 defines more space and punctuation characters.
9356Solution: Add the new characters to the Unicode tables. (Raphael Finkel)
9357Files: src/mbyte.c
9358
9359Patch 6.1.443 (extra)
9360Problem: Win32: The gvimext.dll build with Borland 5.5 requires another
9361 DLL.
9362Solution: Build a statically linked version by default. (Dan Sharp)
9363Files: GvimExt/Make_bc5.mak
9364
9365Patch 6.1.444 (extra)
9366Problem: Win32: Enabling a build with gettext support is not consistent.
9367Solution: Use "GETTEXT" for Borland and msvc makefiles. (Dan Sharp)
9368Files: src/Make_bc5.mak, src/Make_mvc.mak
9369
9370Patch 6.1.445 (extra)
9371Problem: DJGPP: get warning for argument of putenv()
9372Solution: Define HAVE_PUTENV to use DJGPP's putenv(). (Walter Briscoe)
9373Files: src/os_msdos.h
9374
9375Patch 6.1.446 (extra)
9376Problem: Win32: The MingW makefile uses a different style of arguments than
9377 other makefiles.
9378 Dynamic IME is not supported for Cygwin.
9379Solution: Use "no" and "yes" style arguments. Remove the use of the
9380 dyn-ming.h include file. (Dan Sharp)
9381 Do not include the ime.h file and adjust the makefile. (Alejandro
9382 Lopez-Valencia)
9383Files: src/Make_cyg.mak, src/Make_ming.mak, src/gui_w32.c,
9384 src/if_perl.xs, src/if_python.c, src/if_ruby.c, src/os_win32.c
9385
9386Patch 6.1.447
9387Problem: "make install" uses "make" directly for generating help tags.
9388Solution: Use $(MAKE) instead of "make". (Tim Mooney)
9389Files: src/Makefile
9390
9391Patch 6.1.448
9392Problem: 'titlestring' has a default maximum width of 50 chars per item.
9393Solution: Remove the default maximum (also for 'statusline').
9394Files: src/buffer.c
9395
9396Patch 6.1.449
9397Problem: When "1" and "a" are in 'formatoptions', auto-formatting always
9398 moves a newly added character to the next line. (Servatius Brandt)
9399Solution: Don't move a single character to the next line when it was just
9400 typed.
9401Files: src/edit.c
9402
9403Patch 6.1.450
9404Problem: Termcap entry "kB" for back-tab is not recognized.
9405Solution: Use back-tab as the shift-tab code.
9406Files: src/keymap.h, src/misc2.c, src/term.c
9407
9408Patch 6.1.451
9409Problem: GUI: When text in the find dialog contains a slash, a backslash is
9410 inserted the next time it is opened. (Mezz)
9411Solution: Remove escaped backslashes and question marks. (Daniel Elstner)
9412Files: src/gui.c
9413
9414Patch 6.1.452 (extra, after 6.1.446)
9415Problem: Win32: IME support doesn't work for MSVC.
9416Solution: Use _MSC_VER instead of __MSVC. (Alejandro Lopez-Valencia)
9417Files: src/gui_w32.c
9418
9419Patch 6.1.453 (after 6.1.429)
9420Problem: When compiled without sign icons but with sign support, adding a
9421 sign may cause a crash.
9422Solution: Check for the text sign to exist before using it. (Kamil
9423 Burzynski)
9424Files: src/screen.c
9425
9426Patch 6.1.454 (extra)
9427Problem: Win32: pasting Russian text in Vim with 'enc' set to cp1251
9428 results in utf-8 bytes. (Perelyubskiy)
9429 Conversion from DBCS to UCS2 does not work when 'encoding' is not
9430 the active codepage.
9431Solution: Introduce enc_codepage and use it for conversion to 'encoding'
9432 (Glenn Maynard)
9433 Use MultiByteToWideChar() and WideCharToMultiByte() instead of
9434 iconv(). Should do most needed conversions without iconv.dll.
9435Files: src/globals.h, src/gui_w32.c, src/mbyte.c, src/os_mswin.c,
9436 src/proto/mbyte.pro, src/proto/os_mswin.pro, src/structs.h
9437
9438Patch 6.1.455
9439Problem: Some Unicode characters can be one or two character cells wide.
9440Solution: Add the 'ambiwidth' option to tell Vim how to display these
9441 characters. (Jungshik Shin)
9442 Also reset the script ID when setting an option to its default
9443 value, so that ":verbose set" won't give wrong info.
9444Files: runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h
9445
9446Patch 6.1.456 (extra, after 6.1.454)
9447Problem: Win32: IME doesn't work.
9448Solution: ImmGetCompositionStringW() returns the size in bytes, not words.
9449 (Yasuhiro Matsumoto) Also fix typecast problem.
9450Files: src/gui_w32.c, src/os_mswin.c
9451
9452Patch 6.1.457
9453Problem: An empty register in viminfo causes conversion to fail.
9454Solution: Don't convert an empty string. (Yasuhiro Matsumoto)
9455Files: src/ex_cmds.c, src/mbyte.c
9456
9457Patch 6.1.458
9458Problem: Compiler warning for pointer.
9459Solution: Add a typecast.
9460Files: src/ex_cmds.c
9461
9462Patch 6.1.459 (extra)
9463Problem: Win32: libcall() may return an invalid pointer and cause Vim to
9464 crash.
9465Solution: Add a strict check for the returned pointer. (Bruce Mellows)
9466Files: src/os_mswin.c
9467
9468Patch 6.1.460
9469Problem: GTK: after scrolling the text one line with a key, clicking the
9470 arrow of the scrollbar does not always work. (Nam SungHyun)
9471Solution: Always update the scrollbar thumb when the value changed, even
9472 when it would not move, like for RISCOS. (Daniel Elstner)
9473Files: src/gui.c, src/gui.h
9474
9475Patch 6.1.461
9476Problem: When a keymap is active, typing a character in Select mode does
9477 not use it. (Benji Fisher)
9478Solution: Apply Insert mode mapping to the character typed in Select mode.
9479Files: src/normal.c
9480
9481Patch 6.1.462
9482Problem: When autocommands wipe out a buffer, a crash may happen. (Hari
9483 Krishna Dara)
9484Solution: Don't decrement the window count of a buffer before calling the
9485 autocommands for it. When re-using the current buffer, watch out
9486 for autocommands changing the current buffer.
9487Files: src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro
9488
9489Patch 6.1.463
9490Problem: When writing a compressed file, the file name that gzip stores in
9491 the file is the weird temporary file name. (David Rennalls)
9492Solution: Use the real file name when possible.
9493Files: runtime/plugin/gzip.vim
9494
9495Patch 6.1.464
9496Problem: Crash when using C++ syntax highlighting. (Gerhard Hochholzer)
9497Solution: Check for a negative index.
9498Files: src/syntax.c
9499
9500Patch 6.1.465 (after 6.1.454)
9501Problem: Compile error when using cygwin.
9502Solution: Change #ifdef WIN32 to #ifdef WIN3264. (Alejandro Lopez-Valencia)
9503 Undefine WIN32 after including windows.h
9504Files: src/mbyte.c
9505
9506Patch 6.1.466
9507Problem: The "-f" argument is a bit obscure.
9508Solution: Add the "--nofork" argument. Improve the help text a bit.
9509Files: runtime/doc/starting.txt, src/main.c
9510
9511Patch 6.1.467
9512Problem: Setting the window title doesn't work for Chinese.
9513Solution: Use an X11 function to convert text to a text property. (Kentaro
9514 Nakazawa)
9515Files: src/os_unix.c
9516
9517Patch 6.1.468
9518Problem: ":mksession" also stores folds for buffers which will not be
9519 restored.
9520Solution: Only store folds for a buffer with 'buftype' empty and help files.
9521Files: src/ex_docmd.c
9522
9523Patch 6.1.469
9524Problem: 'listchars' cannot contain multi-byte characters.
9525Solution: Handle multi-byte UTF-8 list characters. (Matthew Samsonoff)
9526Files: src/message.c, src/option.c, src/screen.c
9527
9528Patch 6.1.470 (lang)
9529Problem: Polish messages don't show up correctly on MS-Windows.
9530Solution: Convert messages to cp1250. (Mikolaj Machowski)
9531 Also add English message translations, because it got in the way
9532 of the patch.
9533Files: Makefile, src/po/Makefile, src/po/en_gb.po, src/po/pl.po
9534
9535Patch 6.1.471
9536Problem: ":jumps" output continues after pressing "q" at the more-prompt.
9537 (Hari Krishna Dara)
9538Solution: Check for "got_int" being set.
9539Files: src/mark.c
9540
9541Patch 6.1.472
9542Problem: When there is an authentication error when connecting to the X
9543 server Vim exits.
9544Solution: Use XSetIOErrorHandler() to catch the error and longjmp() to avoid
9545 the exit. Also do this in the main loop, so that when the X
9546 server exits a Vim running in a console isn't killed.
9547Files: src/globals.h, src/main.c, src/os_unix.c
9548
9549Patch 6.1.473
9550Problem: Referring to $curwin or $curbuf in Perl 5.6 causes a crash.
9551Solution: Add "pTHX_" to cur_val(). (Yasuhiro Matsumoto)
9552Files: src/if_perl.xs
9553
9554Patch 6.1.474
9555Problem: When opening the command-line window in Ex mode it's impossible to
9556 go back. (Pavol Juhas)
9557Solution: Reset "exmode_active" and restore it when the command-line window
9558 is closed.
9559Files: src/ex_getln.c
9560
9561
9562Patch 6.2f.001
9563Problem: The configure check for Ruby didn't work properly for Ruby 1.8.0.
9564Solution: Change the way the Ruby check is done. (Aron Griffis)
9565Files: src/auto/configure, src/configure.in
9566
9567Patch 6.2f.002
9568Problem: The output of ":ls" doesn't show whether a buffer had read errors.
9569Solution: Add the "x" flag in the ":ls" output.
9570Files: runtime/doc/windows.txt, src/buffer.c
9571
9572Patch 6.2f.003
9573Problem: Test49 doesn't properly test the behavior of ":catch" without an
9574 argument.
9575Solution: Update test49. (Servatius Brandt)
9576Files: src/testdir/test49.ok, src/testdir/test49.vim
9577
9578Patch 6.2f.004
9579Problem: "vim --version" always uses CR/LF in the output.
9580Solution: Omit the CR.
9581Files: src/message.c, src/os_unix.c
9582
9583Patch 6.2f.005
9584Problem: Two error messages without a colon after the number.
9585Solution: Add the colon. (Taro Muraoka)
9586Files: src/if_cscope.c
9587
9588Patch 6.2f.006
9589Problem: When saving a file takes a while and Vim regains focus this can
9590 result in a "file changed outside of Vim" warning and ml_get()
9591 errors. (Mike Williams)
9592Solution: Add the "b_saving" flag to avoid checking the timestamp while the
9593 buffer is being saved. (Michael Schaap)
9594Files: src/fileio.c, src/structs.h
9595
9596Patch 6.2f.007
9597Problem: Irix compiler complains about multiple defined symbols.
9598 vsnprintf() is not available. (Charles Campbell)
9599Solution: Insert EXTERN for variables in globals.h. Change the configure
9600 check for vsnprintf() from compiling to linking.
9601Files: src/auto/configure, src/configure.in, src/globals.h
9602
9603Patch 6.2f.008
9604Problem: The Aap recipe doesn't work with Aap 0.149.
9605Solution: Change targetarg to TARGETARG. Update the mysign file.
9606Files: src/main.aap, src/mysign
9607
9608Patch 6.2f.009 (extra)
9609Problem: Small problem when building with Borland 5.01.
9610Solution: Use mkdir() instead of _mkdir(). (Walter Briscoe)
9611Files: src/dosinst.h
9612
9613Patch 6.2f.010
9614Problem: Warning for missing prototypes.
9615Solution: Add missing prototypes. (Walter Briscoe)
9616Files: src/if_cscope.c
9617
9618Patch 6.2f.011
9619Problem: The configure script doesn't work with autoconf 2.5x.
9620Solution: Add square brackets around a header check. (Aron Griffis)
9621 Note: touch src/auto/configure after applying this patch.
9622Files: src/configure.in
9623
9624Patch 6.2f.012
9625Problem: ":echoerr" doesn't work correctly inside try/endtry.
9626Solution: Don't reset did_emsg inside a try/endtry. (Servatius Brandt)
9627Files: src/eval.c
9628
9629Patch 6.2f.013 (extra)
9630Problem: Macintosh: Compiler warning for a trigraph.
9631Solution: Insert a backslash before each question mark. (Peter Cucka)
9632Files: src/os_mac.h
9633
9634Patch 6.2f.014 (extra)
9635Problem: Macintosh: ex_eval is not included in the project file.
9636Solution: Add ex_eval. (Dany St-Amant)
9637Files: src/os_mac.pbproj/project.pbxproj
9638
9639Patch 6.2f.015 (extra)
9640Problem: Win32: When changing header files not all source files involved
9641 are recompiled.
9642Solution: Improve the dependency rules. (Dan Sharp)
9643Files: src/Make_cyg.mak, src/Make_ming.mak
9644
9645Patch 6.2f.016
9646Problem: "vim --version > ff" on non-Unix systems results in a file with a
9647 missing line break at the end. (Bill McCArthy)
9648Solution: Add a line break.
9649Files: src/main.c
9650
9651Patch 6.2f.017
9652Problem: Unix: starting Vim in the background and then bringing it to the
9653 foreground may cause the terminal settings to be wrong.
9654Solution: Check for tcsetattr() to return an error, retry when it does.
9655 (Paul Tapper)
9656Files: src/os_unix.c
9657
9658Patch 6.2f.018
9659Problem: Mac OS X 10.2: OK is defined to zero in cursus.h while Vim uses
9660 one. Redefining it causes a warning message.
9661Solution: Undefine OK before defining it to one. (Taro Muraoka)
9662Files: src/vim.h
9663
9664Patch 6.2f.019
9665Problem: Mac OS X 10.2: COLOR_BLACK and COLOR_WHITE are defined in
9666 curses.h.
9667Solution: Rename them to PRCOLOR_BLACK and PRCOLOR_WHITE.
9668Files: src/ex_cmds2.c
9669
9670Patch 6.2f.020
9671Problem: Win32: test50 produces beeps and fails with some versions of diff.
9672Solution: Remove empty lines and convert the output to dos fileformat.
9673Files: src/testdir/test50.in
9674
9675Patch 6.2f.021
9676Problem: Running configure with "--enable-netbeans" disables Netbeans.
9677 (Gordon Prieur)
9678Solution: Fix the tests in configure.in where the default is to enable a
9679 feature. Fix that "--enable-acl" reported "yes" confusingly.
9680Files: src/auto/configure, src/configure.in, src/mysign
9681
9682Patch 6.2f.022
9683Problem: A bogus value for 'foldmarker' is not rejected, possibly causing a
9684 hang. (Derek Wyatt)
9685Solution: Check for a non-empty string before and after the comma.
9686Files: src/option.c
9687
9688Patch 6.2f.023
9689Problem: When the help files are not in $VIMRUNTIME but 'helpfile' is
9690 correct Vim still can't find the help files.
9691Solution: Also look for a tags file in the directory of 'helpfile'.
9692Files: src/tag.c
9693
9694Patch 6.2f.024
9695Problem: When 'delcombine' is set and a character has more than two
9696 composing characters "x" deletes them all.
9697Solution: Always delete only the last composing character.
9698Files: src/misc1.c
9699
9700Patch 6.2f.025
9701Problem: When reading a file from stdin that has DOS line endings but a
9702 missing end-of-line for the last line 'fileformat' becomes "unix".
9703 (Bill McCarthy)
9704Solution: Don't add the missing line break when re-reading the text from the
9705 buffer.
9706Files: src/fileio.c
9707
9708Patch 6.2f.026
9709Problem: When typing new text at the command line, old composing characters
9710 may be displayed.
9711Solution: Don't read composing characters from after the end of the
9712 text to be displayed.
9713Files: src/ex_getln.c, src/mbyte.c, src/message.c, src/proto/mbyte.pro,
9714 src/screen.c
9715
9716Patch 6.2f.027
9717Problem: Compiler warnings for unsigned char pointers. (Tony Leneis)
9718Solution: Add typecasts to char pointer.
9719Files: src/quickfix.c
9720
9721Patch 6.2f.028
9722Problem: GTK: When 'imactivatekey' is empty and XIM is inactive it can't be
9723 made active again. Cursor isn't updated immediately when changing
9724 XIM activation. Japanese XIM may hang when using 'imactivatekey'.
9725 Can't activate XIM after typing fFtT command or ":sh".
9726Solution: Properly set the flag that indicates the IM is active. Update the
9727 cursor right away. Do not send a key-release event. Handle
9728 Normal mode and running an external command differently.
9729 (Yasuhiro Matsumoto)
9730Files: src/mbyte.c
9731
9732Patch 6.2f.029
9733Problem: Mixing use of int and enum.
9734Solution: Adjust argument type of cs_usage_msg(). Fix wrong typedef.
9735Files: src/if_cscope.c, src/if_cscope.h
9736
9737Patch 6.2f.030 (after 6.2f.028)
9738Problem: Cursor moves up when using XIM.
9739Solution: Reset im_preedit_cursor. (Yasuhiro Matsumoto)
9740Files: src/mbyte.c
9741
9742Patch 6.2f.031
9743Problem: Crash when listing a function argument in the debugger. (Ron Aaron)
9744Solution: Init the name field of an argument to NULL.
9745Files: src/eval.c
9746
9747Patch 6.2f.032
9748Problem: When a write fails for a ":silent!" while inside try/endtry the
9749 BufWritePost autocommands are not triggered.
9750Solution: Check the emsg_silent flag in should_abort(). (Servatius Brandt)
9751Files: src/ex_eval.c, src/testdir/test49.ok, src/testdir/test49.vim
9752
9753Patch 6.2f.033
9754Problem: Cscope: re-entrance problem for ":cscope" command. Checking for
9755 duplicate database didn't work well for Win95. Didn't check for
9756 duplicate databases after an empty entry.
9757Solution: Don't set postponed_split too early. Remember first empty
9758 database entry. (Sergey Khorev)
9759Files: src/if_cscope.c
9760
9761Patch 6.2f.034
9762Problem: The netbeans interface cannot be used on systems without
9763 vsnprintf(). (Tony Leneis)
9764Solution: Use EMSG(), EMSGN() and EMSG2() instead.
9765Files: src/auto/configure, src/configure.in, src/netbeans.c
9766
9767Patch 6.2f.035
9768Problem: The configure check for the netbeans interface doesn't work if the
9769 socket and nsl libraries are required.
9770Solution: Check for the socket and nsl libraries before the netbeans check.
9771Files: src/auto/configure, src/configure.in
9772
9773Patch 6.2f.036
9774Problem: Moving leftwards over text with an illegal UTF-8 byte moves one
9775 byte instead of one character.
9776Solution: Ignore an illegal byte after the cursor position.
9777Files: src/mbyte.c
9778
9779Patch 6.2f.037
9780Problem: When receiving a Netbeans command at the hit-enter or more prompt
9781 the screen is redrawn but Vim is still waiting at the prompt.
9782Solution: Quit the prompt like a CTRL-C was typed.
9783Files: src/netbeans.c
9784
9785Patch 6.2f.038
9786Problem: The dependency to run autoconf causes a patch for configure.in
9787 to run autoconf, even though the configure script was updated as
9788 well.
9789Solution: Only run autoconf with "make autoconf".
9790Files: src/Makefile
9791
9792Patch 6.2f.039
9793Problem: CTRL-W K makes the new top window very high.
9794Solution: When 'equalalways' is set equalize the window heights.
9795Files: src/window.c
9796
9797
9798==============================================================================
9799VERSION 6.3 *version-6.3*
9800
9801This section is about improvements made between version 6.2 and 6.3.
9802
9803This is mainly a bug-fix release. There are also a few new features.
9804The major number of new items is in the runtime files and translations.
9805
9806
9807Changed *changed-6.3*
9808-------
9809
9810The intro message also displays a note about sponsoring Vim, mixed randomly
9811with the message about helping children in Uganda.
9812
9813Included the translated menus, keymaps and tutors with the normal runtime
9814files. The separate "lang" archive now only contains translated messages.
9815
9816Made the translated menu file names a bit more consistent. Use "latin1" for
9817"iso_8859-1" and "iso_8859-15".
9818
9819Removed the "file_select.vim" script from the distribution. It's not more
9820useful than other scripts that can be downloaded from www.vim.org.
9821
9822The "runtime/doc/tags" file is now always in unix fileformat. On MS-Windows
9823it used to be dos fileformat, but ":helptags" generates a unix format file.
9824
9825
9826Added *added-6.3*
9827-----
9828
9829New commands:
9830 :cNfile go to last error in previous file
9831 :cpfile idem
9832 :changes print the change list
9833 :keepmarks following command keeps marks where they are
9834 :keepjumps following command keeps jumplist and marks
9835 :lockmarks following command keeps marks where they are
9836 :redrawstatus force a redraw of the status line(s)
9837
9838New options:
9839 'antialias' Mac OS X: use smooth, antialiased fonts
9840 'helplang' preferred help languages
9841
9842Syntax files:
9843 Arch inventory (Nikolai Weibull)
9844 Calendar (Nikolai Weibull)
9845 Ch (Wayne Cheng)
9846 Controllable Regex Mutilator (Nikolai Weibull)
9847 D (Jason Mills)
9848 Desktop (Mikolaj Machowski)
9849 Dircolors (Nikolai Weibull)
9850 Elinks configuration (Nikolai Weibull)
9851 FASM (Ron Aaron)
9852 GrADS scripts (Stefan Fronzek)
9853 Icewm menu (James Mahler)
9854 LDIF (Zak Johnson)
9855 Locale input, fdcc. (Dwayne Bailey)
9856 Pinfo config (Nikolai Weibull)
9857 Pyrex (Marco Barisione)
9858 Relax NG Compact (Nikolai Weibull)
9859 Slice (Morel Bodin)
9860 VAX Macro Assembly (Tom Uijldert)
9861 grads (Stefan Fronzek)
9862 libao (Nikolai Weibull)
9863 mplayer (Nikolai Weibull)
9864 rst (Nikolai Weibull)
9865 tcsh (Gautam Iyer)
9866 yaml (Nikolai Weibull)
9867
9868Compiler plugins:
9869 ATT dot (Marcos Macedo)
9870 Apple Project Builder (Alexander von Below)
9871 Intel (David Harrison)
9872 bdf (Nikolai Weibull)
9873 icc (Peter Puck)
9874 javac (Doug Kearns)
9875 neato (Marcos Macedo)
9876 onsgmls (Robert B. Rowsome)
9877 perl (Christian J. Robinson)
9878 rst (Nikolai Weibull)
9879 se (SmartEiffel) (Doug Kearns)
9880 tcl (Doug Kearns)
9881 xmlwf (Robert B. Rowsome)
9882
9883Filetype plugins:
9884 Aap (Bram Moolenaar)
9885 Ch (Wayne Cheng)
9886 Css (Nikolai Weibull)
9887 Pyrex (Marco Barisione)
9888 Rst (Nikolai Weibull)
9889
9890Indent scripts:
9891 Aap (Bram Moolenaar)
9892 Ch (Wayne Cheng)
9893 DocBook (Nikolai Weibull)
9894 MetaPost (Eugene Minkovskii)
9895 Objective-C (Kazunobu Kuriyama)
9896 Pyrex (Marco Barisione)
9897 Rst (Nikolai Weibull)
9898 Tcsh (Gautam Iyer)
9899 XFree86 configuration file (Nikolai Weibull)
9900 Zsh (Nikolai Weibull)
9901
9902Keymaps:
9903 Greek for cp1253 (Panagiotis Louridas)
9904 Hungarian (Magyar) (Laszlo Zavaleta)
9905 Persian-Iranian (Behnam Esfahbod)
9906
9907Message translations:
9908 Catalan (Ernest Adrogue)
9909 Russian (Vassily Ragosin)
9910 Swedish (Johan Svedberg)
9911
9912Menu translations:
9913 Catalan (Ernest Adrogue)
9914 Russian (Tim Alexeevsky)
9915 Swedish (Johan Svedberg)
9916
9917Tutor translations:
9918 Catalan (Ernest Adrogue)
9919 Russian in cp1251 (Alexey Froloff)
9920 Slovak in cp1251 and iso8859-2 (Lubos Celko)
9921 Swedish (Johan Svedberg)
9922 Korean (Kee-Won Seo)
9923 UTF-8 version of the Japanese tutor (Yasuhiro Matsumoto) Use this as
9924 the original, create the other Japanese tutor by conversion.
9925
9926Included "russian.txt" help file. (Vassily Ragosin)
9927
9928Include Encapsulated PostScript and PDF versions of the Vim logo in the extra
9929archive.
9930
9931The help highlighting finds the highlight groups and shows them in the color
9932that is actually being used. (idea from Yakov Lerner)
9933
9934The big Win32 version is now compiled with Ruby interface, version 1.8. For
9935Python version 2.3 is used. For Perl version 5.8 is used.
9936
9937The "ftdetect" directory is mentioned in the documentation. The DOS install
9938program creates it.
9939
9940
9941Fixed *fixed-6.3*
9942-----
9943
9944Test 42 failed on MS-Windows. Set and reset 'fileformat' and 'binary' options
9945here and there. (Walter Briscoe)
9946
9947The explorer plugin didn't work for double-byte 'encoding's.
9948
9949Use "copy /y" in Make_bc5.mak to avoid a prompt for overwriting.
9950
9951Patch 6.2.001
9952Problem: The ":stopinsert" command doesn't have a help tag.
9953Solution: Add the tag. (Antoine J. Mechelynck)
9954Files: runtime/doc/insert.txt, runtime/doc/tags
9955
9956Patch 6.2.002
9957Problem: When compiled with the +multi_byte feature but without +eval,
9958 displaying UTF-8 characters may cause a crash. (Karsten Hopp)
9959Solution: Also set the default for 'ambiwidth' when compiled without the
9960 +eval feature.
9961Files: src/option.c
9962
9963Patch 6.2.003
9964Problem: GTK 2: double-wide characters below 256 are not displayed
9965 correctly.
9966Solution: Check the cell width for characters above 127. (Yasuhiro
9967 Matsumoto)
9968Files: src/gui_gtk_x11.c
9969
9970Patch 6.2.004
9971Problem: With a line-Visual selection at the end of the file a "p" command
9972 puts the text one line upwards.
9973Solution: Detect that the last line was deleted and put forward. (Taro
9974 Muraoka)
9975Files: src/normal.c
9976
9977Patch 6.2.005
9978Problem: GTK: the "Find" and "Find and Replace" tools don't work. (Aschwin
9979 Marsman)
9980Solution: Show the dialog after creating it. (David Necas)
9981Files: src/gui_gtk.c
9982
9983Patch 6.2.006
9984Problem: The Netbeans code contains an obsolete function that uses "vim61"
9985 and sets the fall-back value for $VIMRUNTIME.
9986Solution: Delete the obsolete function.
9987Files: src/main.c, src/netbeans.c, src/proto/netbeans.pro
9988
9989Patch 6.2.007
9990Problem: Listing tags for Cscope doesn't always work.
9991Solution: Avoid using smgs_attr(). (Sergey Khorev)
9992Files: src/if_cscope.c
9993
9994Patch 6.2.008
9995Problem: XIM with GTK 2: After backspacing preedit characters are wrong.
9996Solution: Reset the cursor position. (Yasuhiro Matsumoto)
9997Files: src/mbyte.c
9998
9999Patch 6.2.009
10000Problem: Win32: The self-installing executable "Full" selection only
10001 selects some of the items to install. (Salman Mohsin)
10002Solution: Change commas to spaces in between section numbers.
10003Files: nsis/gvim.nsi
10004
10005Patch 6.2.010
10006Problem: When 'virtualedit' is effective and a line starts with a
10007 multi-byte character, moving the cursor right doesn't work.
10008Solution: Obtain the right character to compute the column offset. (Taro
10009 Muraoka)
10010Files: src/charset.c
10011
10012Patch 6.2.011
10013Problem: Alpha OSF1: stat() is a macro and doesn't allow an #ifdef halfway.
10014 (Moshe Kaminsky)
10015Solution: Move the #ifdef outside of stat().
10016Files: src/os_unix.c
10017
10018Patch 6.2.012
10019Problem: May hang when polling for a character.
10020Solution: Break the wait loop when not waiting for a character.
10021Files: src/os_unix.c
10022
10023Patch 6.2.013 (extra)
10024Problem: Win32: The registry key for uninstalling GvimExt still uses "6.1".
10025Solution: Change the version number to "6.2". (Ajit Thakkar)
10026Files: src/GvimExt/GvimExt.reg
10027
10028Patch 6.2.014 (after 6.2.012)
10029Problem: XSMP doesn't work when using poll().
10030Solution: Use xsmp_idx instead of gpm_idx. (Neil Bird)
10031Files: src/os_unix.c
10032
10033Patch 6.2.015
10034Problem: The +xsmp feature is never enabled.
10035Solution: Move the #define for USE_XSMP to below where WANT_X11 is defined.
10036 (Alexey Froloff)
10037Files: src/feature.h
10038
10039Patch 6.2.016
10040Problem: Using ":scscope find" with 'cscopequickfix' does not always split
10041 the window. (Gary Johnson)
10042 Win32: ":cscope add" could make the script that contains it
10043 read-only until the corresponding ":cscope kill".
10044 Errors during ":cscope add" may not be handled properly.
10045Solution: When using the quickfix window may need to split the window.
10046 Avoid file handle inheritance for the script.
10047 Check for a failed connection and/or process. (Sergey Khorev)
10048Files: src/ex_cmds2.c, src/if_cscope.c
10049
10050Patch 6.2.017
10051Problem: Test11 sometimes prompts the user, because a file would have been
10052 changed outside of Vim. (Antonio Colombo)
10053Solution: Add a FileChangedShell autocommand to avoid the prompt.
10054Files: src/testdir/test11.in
10055
10056Patch 6.2.018
10057Problem: When using the XSMP protocol and reading from stdin Vim may wait
10058 for a key to be pressed.
10059Solution: Avoid that RealWaitForChar() is used recursively.
10060Files: src/os_unix.c
10061
10062Patch 6.2.019 (lang)
10063Problem: Loading the Portuguese menu causes an error message.
10064Solution: Join two lines. (Jose Pedro Oliveira, José de Paula)
10065Files: runtime/lang/menu_pt_br.vim
10066
10067Patch 6.2.020
10068Problem: The "Syntax/Set syntax only" menu item causes an error message.
10069 (Oyvind Holm)
10070Solution: Set the script-local variable in a function. (Benji Fisher)
10071Files: runtime/synmenu.vim
10072
10073Patch 6.2.021
10074Problem: The user manual section on exceptions contains small mistakes.
10075Solution: Give a good example of an error that could be missed and other
10076 improvements. (Servatius Brandt)
10077Files: runtime/doc/usr_41.txt
10078
10079Patch 6.2.022 (extra)
10080Problem: Win32: After deleting a menu item it still appears in a tear-off
10081 window.
10082Solution: Set the mode to zero for the deleted item. (Yasuhiro Matsumoto)
10083Files: src/gui_w32.c
10084
10085Patch 6.2.023 (extra)
10086Problem: Win32: Make_ivc.mak does not clean everything.
10087Solution: Delete more files in the clean rule. (Walter Briscoe)
10088Files: src/Make_ivc.mak
10089
10090Patch 6.2.024 (extra)
10091Problem: Win32: Compiler warnings for typecasts.
10092Solution: Use DWORD instead of WORD. (Walter Briscoe)
10093Files: src/gui_w32.c
10094
10095Patch 6.2.025
10096Problem: Missing prototype for sigaltstack().
10097Solution: Add the prototype when it is not found in a header file.
10098Files: src/os_unix.c
10099
10100Patch 6.2.026
10101Problem: Warning for utimes() argument.
10102Solution: Add a typecast.
10103Files: src/fileio.c
10104
10105Patch 6.2.027
10106Problem: Warning for uninitialized variable.
10107Solution: Set mb_l to one when not using multi-byte characters.
10108Files: src/message.c
10109
10110Patch 6.2.028
10111Problem: Cscope connection may kill Vim process and others.
10112Solution: Check for pid being larger than one. (Khorev Sergey)
10113Files: src/if_cscope.c
10114
10115Patch 6.2.029
10116Problem: When using the remote server functionality Vim may leak memory.
10117 (Srikanth Sankaran)
10118Solution: Free the result of XListProperties().
10119Files: src/if_xcmdsrv.c
10120
10121Patch 6.2.030
10122Problem: Mac: Warning for not being able to use precompiled header files.
10123Solution: Don't redefine select. Use -no-cpp-precomp for compiling, so that
10124 function prototypes are still found.
10125Files: src/os_unix.c, src/osdef.sh
10126
10127Patch 6.2.031
10128Problem: The langmenu entry in the options window doesn't work. (Rodolfo
10129 Lima)
10130 With GTK 1 the ":options" command causes an error message.
10131 (Michael Naumann)
10132Solution: Change "lmenu" to "langmenu". Only display the 'tbis' option for
10133 GTK 2.
10134Files: runtime/optwin.vim
10135
10136Patch 6.2.032
10137Problem: The lpc filetype is never recognized. (Shizhu Pan)
10138Solution: Check for g:lpc_syntax_for_c instead of the local variable
10139 lpc_syntax_for_c. (Benji Fisher)
10140Files: runtime/filetype.vim
10141
10142Patch 6.2.033 (extra)
10143Problem: Mac: Various compiler warnings.
10144Solution: Don't include Classic-only headers in Unix version.
10145 Remove references to several unused variables. (Ben Fowler)
10146 Fix double definition of DEFAULT_TERM.
10147 Use int instead of unsigned short for pixel values, so that the
10148 negative error values are recognized.
10149Files: src/gui_mac.c, src/term.c
10150
10151Patch 6.2.034
10152Problem: Mac: Compiler warning for redefining DEFAULT_TERM.
10153Solution: Fix double definition of DEFAULT_TERM.
10154Files: src/term.c
10155
10156Patch 6.2.035
10157Problem: Mac: Compiler warnings in Python interface.
10158Solution: Make a difference between pure Mac and Unix-Mac. (Peter Cucka)
10159Files: src/if_python.c
10160
10161Patch 6.2.036 (extra)
10162Problem: Mac Unix version: If foo is a directory, then ":e f<Tab>" should
10163 expand to ":e foo/" instead of ":e foo" . (Vadim Zeitlin)
10164Solution: Define DONT_ADD_PATHSEP_TO_DIR only for pure Mac. (Benji Fisher)
10165Files: src/os_mac.h
10166
10167Patch 6.2.037
10168Problem: Win32: converting an encoding name to a codepage could result in
10169 an arbitrary number.
10170Solution: make encname2codepage() return zero if the encoding name doesn't
10171 contain a codepage number.
10172Files: src/mbyte.c
10173
10174Patch 6.2.038 (extra)
10175Problem: Warning messages when using the MingW compiler. (Bill McCarthy)
10176 Can't compile console version without +mouse feature.
10177Solution: Initialize variables, add parenthesis.
10178 Add an #ifdef around g_nMouseClick. (Ajit Thakkar)
10179Files: src/eval.c, src/os_win32.c, src/gui_w32.c, src/dosinst.c
10180
10181Patch 6.2.039 (extra)
10182Problem: More warning messages when using the MingW compiler.
10183Solution: Initialize variables. (Bill McCarthy)
10184Files: src/os_mswin.c
10185
10186Patch 6.2.040
10187Problem: FreeBSD: Crash while starting up when compiled with +xsmp feature.
10188Solution: Pass a non-NULL argument to IceAddConnectionWatch().
10189Files: src/os_unix.c
10190
10191Patch 6.2.041 (extra, after 6.2.033)
10192Problem: Mac: Compiler warnings for conversion types, missing prototype,
10193 missing return type.
10194Solution: Change sscanf "%hd" to "%d", the argument is an int now. Add
10195 gui_mch_init_check() prototype. Add "int" to termlib functions.
10196Files: src/gui_mac.c, src/proto/gui_mac.pro, src/termlib.c.
10197
10198Patch 6.2.042 (extra)
10199Problem: Cygwin: gcc 3.2 has an optimizer problem, sometimes causing a
10200 crash.
10201Solution: Add -fno-strength-reduce to the compiler arguments. (Dan Sharp)
10202Files: src/Make_cyg.mak
10203
10204Patch 6.2.043
10205Problem: Compiling with both netbeans and workshop doesn't work.
10206Solution: Move the shellRectangle() function to gui_x11.c. (Gordon Prieur)
10207Files: src/gui_x11.c, src/integration.c, src/netbeans.c,
10208 src/proto/netbeans.pro
10209
10210Patch 6.2.044
10211Problem: ":au filetypedetect" gives an error for a non-existing event name,
10212 but it's actually a non-existing group name. (Antoine Mechelynck)
10213Solution: Make the error message clearer.
10214Files: src/fileio.c
10215
10216Patch 6.2.045
10217Problem: Obtaining the '( mark changes the '' mark. (Gary Holloway)
10218Solution: Don't set the '' mark when searching for the start/end of the
10219 current sentence/paragraph.
10220Files: src/mark.c
10221
10222Patch 6.2.046
10223Problem: When evaluating an argument of a function throws an exception the
10224 function is still called. (Hari Krishna Dara)
10225Solution: Don't call the function when an exception was thrown.
10226Files: src/eval.c
10227
10228Patch 6.2.047 (extra)
10229Problem: Compiler warnings when using MingW. (Bill McCarthy)
10230Solution: Give the s_dwLastClickTime variable a type. Initialize dwEndTime.
10231Files: src/os_win32.c
10232
10233Patch 6.2.048
10234Problem: The Python interface doesn't compile with Python 2.3 when
10235 dynamically loaded.
10236Solution: Use dll_PyObject_Malloc and dll_PyObject_Free. (Paul Moore)
10237Files: src/if_python.c
10238
10239Patch 6.2.049
10240Problem: Using a "-range=" argument with ":command" doesn't work and
10241 doesn't generate an error message.
10242Solution: Generate an error message.
10243Files: src/ex_docmd.c
10244
10245Patch 6.2.050
10246Problem: Test 32 didn't work on MS-Windows.
10247Solution: Write the temp file in Unix fileformat. (Walter Briscoe)
10248Files: src/testdir/test32.in
10249
10250Patch 6.2.051
10251Problem: When using "\=submatch(0)" in a ":s" command, line breaks become
10252 NUL characters.
10253Solution: Change NL to CR characters, so that they become line breaks.
10254Files: src/regexp.c
10255
10256Patch 6.2.052
10257Problem: A few messages are not translated.
10258Solution: Add _() to the messages. (Muraoka Taro)
10259Files: src/ex_cmds.c
10260
10261Patch 6.2.053
10262Problem: Prototype for bzero() doesn't match most systems.
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000010263Solution: Use "void *" instead of "char *" and "size_t" instead of "int".
Bram Moolenaar071d4272004-06-13 20:20:40 +000010264Files: src/osdef1.h.in
10265
10266Patch 6.2.054
10267Problem: A double-byte character with a second byte that is a backslash
10268 causes problems inside a string.
10269Solution: Skip over multi-byte characters in a string properly. (Yasuhiro
10270 Matsumoto)
10271Files: src/eval.c
10272
10273Patch 6.2.055
10274Problem: Using col('.') from CTRL-O in Insert mode does not return the
10275 correct value for multi-byte characters.
10276Solution: Correct the cursor position when it is necessary, move to the
10277 first byte of a multi-byte character. (Yasuhiro Matsumoto)
10278Files: src/edit.c
10279
10280Patch 6.2.056 (extra)
10281Problem: Building with Sniff++ doesn't work.
10282Solution: Use the multi-threaded libc when needed. (Holger Ditting)
10283Files: src/Make_mvc.mak
10284
10285Patch 6.2.057 (extra)
10286Problem: Mac: With -DMACOS_X putenv() is defined twice, it is in a system
10287 library. Get a warning for redefining OK. Unused variables in
10288 os_mac.c
10289Solution: Define HAVE_PUTENV. Undefine OK after including curses.h.
10290 Remove declarations for unused variables.
10291Files: src/os_mac.c, src/os_mac.h, src/vim.h
10292
10293Patch 6.2.058
10294Problem: When 'autochdir' is set ":bnext" to a buffer without a name causes
10295 a crash.
10296Solution: Don't call vim_chdirfile() when the file name is NULL. (Taro
10297 Muraoka)
10298Files: src/buffer.c
10299
10300Patch 6.2.059
10301Problem: When 'scrolloff' is a large number and listing completion results
10302 on the command line, then executing a command that jumps close to
10303 where the cursor was before, part of the screen is not updated.
10304 (Yakov Lerner)
10305Solution: Don't skip redrawing part of the window when it was scrolled.
10306Files: src/screen.c
10307
10308Patch 6.2.060 (extra)
10309Problem: Win32: When 'encoding' is set to "iso-8859-7" copy/paste to/from
10310 the clipboard gives a lalloc(0) error. (Kriton Kyrimis)
10311Solution: When the string length is zero allocate one byte. Also fix that
10312 when the length of the Unicode text is zero (conversion from
10313 'encoding' to UCS-2 was not possible) the normal text is used.
10314Files: src/os_mswin.c
10315
10316Patch 6.2.061
10317Problem: GUI: Using the left mouse button with the shift key should work
10318 like "*" but it scrolls instead. (Martin Beller)
10319Solution: Don't recognize an rxvt scroll wheel event when using the GUI.
10320Files: src/term.c
10321
10322Patch 6.2.062
10323Problem: When one buffer uses a syntax with "containedin" and another
10324 buffer does not, redrawing depends on what the current buffer is.
10325 (Brett Pershing Stahlman)
10326Solution: Use "syn_buf" instead of "curbuf" to get the b_syn_containedin
10327 flag.
10328Files: src/syntax.c
10329
10330Patch 6.2.063
10331Problem: When using custom completion end up with no matches.
10332Solution: Make cmd_numfiles and cmd_files local to completion to avoid that
10333 they are overwritten when ExpandOne() is called recursively by
10334 f_glob().
10335Files: src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/proto/ex_getln.pro,
10336 src/misc1.c, src/structs.h, src/tag.c
10337
10338Patch 6.2.064
10339Problem: resolve() only handles one symbolic link, need to repeat it to
10340 resolve all of them. Then need to simplify the file name.
10341Solution: Make resolve() resolve all symbolic links and simplify the result.
10342 Add simplify() to just simplify a file name. Fix that test49
10343 doesn't work if /tmp is a symbolic link. (Servatius Brandt)
10344Files: runtime/doc/eval.txt, src/eval.c, src/tag.c,
10345 src/testdir/test49.vim
10346
10347Patch 6.2.065
10348Problem: ":windo 123" only updates other windows when entering them.
10349 (Walter Briscoe)
10350Solution: Update the topline before going to the next window.
10351Files: src/ex_cmds2.c
10352
10353Patch 6.2.066 (extra)
10354Problem: Ruby interface doesn't work with Ruby 1.8.0.
10355Solution: Change "defout" to "stdout". (Aron Grifis)
10356 Change dynamic loading. (Taro Muraoka)
10357Files: src/if_ruby.c, src/Make_mvc.mak
10358
10359Patch 6.2.067
10360Problem: When searching for a string that starts with a composing character
10361 the command line isn't drawn properly.
10362Solution: Don't count the space to draw the composing character on and
10363 adjust the cursor column after drawing the string.
10364Files: src/message.c
10365
10366Patch 6.2.068
10367Problem: Events for the netbeans interface that include a file name with
10368 special characters don't work properly.
10369Solution: Use nb_quote() on the file name. (Sergey Khorev)
10370Files: src/netbeans.c
10371
10372Patch 6.2.069 (after 6.2.064)
10373Problem: Unused variables "limit" and "new_st" and unused label "fail" in
10374 some situation. (Bill McCarthy)
10375Solution: Put the declarations inside an #ifdef. (Servatius Brandt)
10376Files: src/eval.c, src/tag.c
10377
10378Patch 6.2.070 (after 6.2.069)
10379Problem: Still unused variable "new_st". (Bill McCarthy)
10380Solution: Move the declaration to the right block this time.
10381Files: src/tag.c
10382
10383Patch 6.2.071
10384Problem: 'statusline' can only contain 50 % items. (Antony Scriven)
10385Solution: Allow 80 items and mention it in the docs.
10386Files: runtime/doc/option.txt, src/vim.h
10387
10388Patch 6.2.072
10389Problem: When using expression folding, foldexpr() mostly returns -1 for
10390 the previous line, which makes it difficult to write a fold
10391 expression.
10392Solution: Make the level of the previous line available while still looking
10393 for the end of a fold.
10394Files: src/fold.c
10395
10396Patch 6.2.073
10397Problem: When adding detection of a specific filetype for a plugin you need
10398 to edit "filetype.vim".
10399Solution: Source files from the "ftdetect" directory, so that a filetype
10400 detection plugin only needs to be dropped in a directory.
10401Files: runtime/doc/filetype.txt, runtime/doc/usr_05.txt,
10402 runtime/doc/usr_41.txt, runtime/filetype.vim
10403
10404Patch 6.2.074
10405Problem: Warnings when compiling the Python interface. (Ajit Thakkar)
10406Solution: Use ANSI function declarations.
10407Files: src/if_python.c
10408
10409Patch 6.2.075
10410Problem: When the temp file for writing viminfo can't be used "NULL"
10411 appears in the error message. (Ben Lavender)
10412Solution: Print the original file name when there is no temp file name.
10413Files: src/ex_cmds.c
10414
10415Patch 6.2.076
10416Problem: The tags listed for cscope are in the wrong order. (Johannes
10417 Stezenbach)
10418Solution: Remove the reordering of tags for the current file. (Sergey
10419 Khorev)
10420Files: src/if_cscope.c
10421
10422Patch 6.2.077
10423Problem: When a user function specifies custom completion, the function
10424 gets a zero argument instead of an empty string when there is no
10425 word before the cursor. (Preben Guldberg)
10426Solution: Don't convert an empty string to a zero.
10427Files: src/eval.c
10428
10429Patch 6.2.078
10430Problem: "make test" doesn't work if Vim wasn't compiled yet. (Ed Avis)
10431Solution: Build Vim before running the tests.
10432Files: src/Makefile
10433
10434Patch 6.2.079
10435Problem: ":w ++enc=utf-8 !cmd" doesn't work.
10436Solution: Check for the "++" argument before the "!".
10437Files: src/ex_docmd.c
10438
10439Patch 6.2.080
10440Problem: When 't_ti' is not empty but doesn't swap screens, using "ZZ" in
10441 an unmodified file doesn't clear the last line.
10442Solution: Call msg_clr_eos() when needed. (Michael Schroeder)
10443Files: src/os_unix.c
10444
10445Patch 6.2.081
10446Problem: Problem when using a long multibyte string for the statusline.
10447Solution: Use the right pointer to get the cell size. (Taro Muraoka)
10448Files: src/buffer.c
10449
10450Patch 6.2.082
10451Problem: Can't compile with Perl 5.8.1.
10452Solution: Rename "e_number" to "e_number_exp". (Sascha Blank)
10453Files: src/digraph.c, src/globals.h
10454
10455Patch 6.2.083
10456Problem: When a compiler uses ^^^^ to mark a word the information is not
10457 visible in the quickfix window. (Srikanth Sankaran)
10458Solution: Don't remove the indent for a line that is not recognized as an
10459 error message.
10460Files: src/quickfix.c
10461
10462Patch 6.2.084
10463Problem: "g_" in Visual mode always goes to the character after the line.
10464 (Jean-Rene David)
10465Solution: Ignore the NUL at the end of the line.
10466Files: src/normal.c
10467
10468Patch 6.2.085
10469Problem: ":verbose set ts" doesn't say an option was set with a "-c" or
10470 "--cmd" argument.
10471Solution: Remember the option was set from a Vim argument.
10472Files: src/main.c, src/ex_cmds2.c, src/vim.h
10473
10474Patch 6.2.086
10475Problem: "{" and "}" stop inside a closed fold.
10476Solution: Only stop once inside a closed fold. (Stephen Riehm)
10477Files: src/search.c
10478
10479Patch 6.2.087
10480Problem: CTRL-^ doesn't use the 'confirm' option. Same problem with
10481 ":bnext". (Yakov Lerner)
10482Solution: Put up a dialog for a changed file when 'confirm' is set in more
10483 situations.
10484Files: src/buffer.c, src/ex_cmds.c
10485
10486Patch 6.2.088
10487Problem: When 'sidescrolloff' is set 'showmatch' doesn't work correctly if
10488 the match is less than 'sidescrolloff' off from the side of the
10489 window. (Roland Stahn)
10490Solution: Set 'sidescrolloff' to zero while displaying the match.
10491Files: src/search.c
10492
10493Patch 6.2.089
10494Problem: ":set isk+=" adds a comma. (Mark Waggoner)
10495Solution: Don't add a comma when the added value is empty.
10496Files: src/option.c
10497
10498Patch 6.2.090 (extra)
10499Problem: Win32: MingW compiler complains about #pragmas. (Bill McCarthy)
10500Solution: Put an #ifdef around the #pragmas.
10501Files: src/os_win32.c
10502
10503Patch 6.2.091
10504Problem: When an autocommand is triggered when a file is dropped on Vim and
10505 it produces output, messages from a following command may be
10506 scrolled unexpectedly. (David Rennalls)
10507Solution: Save and restore msg_scroll in handle_drop().
10508Files: src/ex_docmd.c
10509
10510Patch 6.2.092
10511Problem: Invalid items appear in the help file tags. (Antonio Colombo)
10512Solution: Only accept tags with white space before the first "*".
10513Files: runtime/doc/doctags.c, src/ex_cmds.c
10514
10515Patch 6.2.093
10516Problem: ":nnoremenu" also defines menu for Visual mode. (Klaus Bosau)
10517Solution: Check the second command character for an "o", not the third.
10518Files: src/menu.c
10519
10520Patch 6.2.094
10521Problem: Can't compile with GTK and tiny features.
10522Solution: Include handle_drop() and vim_chdirfile() when FEAT_DND is defined.
10523 Do not try to split the window.
10524Files: src/ex_docmd.c, src/misc2.c
10525
10526Patch 6.2.095
10527Problem: The message "Cannot go to buffer x" is confusing for ":buf 6".
10528 (Frans Englich)
10529Solution: Make it "Buffer x does not exist".
10530Files: src/buffer.c
10531
10532Patch 6.2.096
10533Problem: Win32: ":let @* = ''" put a newline on the clipboard. (Klaus
10534 Bosau)
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000010535Solution: Put zero bytes on the clipboard for an empty string.
Bram Moolenaar071d4272004-06-13 20:20:40 +000010536Files: src/ops.c
10537
10538Patch 6.2.097
10539Problem: Setting or resetting 'insertmode' in a BufEnter autocommand
10540 doesn't always have immediate effect. (Nagger)
10541Solution: When 'insertmode' is set, set need_start_insertmode, when it's
10542 reset set stop_insert_mode.
10543Files: src/option.c
10544
10545Patch 6.2.098 (after 6.2.097)
10546Problem: Can't build Vim with tiny features. (Christian J. Robinson)
10547Solution: Declare stop_insert_mode always.
10548Files: src/edit.c, src/globals.h
10549
10550Patch 6.2.099 (extra)
10551Problem: Test 49 fails. (Mikolaj Machowski)
10552Solution: The Polish translation must not change "E116" to "R116".
10553Files: src/po/pl.po
10554
10555Patch 6.2.100
10556Problem: "make proto" fails when compiled with the Perl interface.
10557Solution: Remove "-fno.*" from PERL_CFLAGS, cproto sees it as its option.
10558Files: src/auto/configure, src/configure.in
10559
10560Patch 6.2.101
10561Problem: When using syntax folding, opening a file slows down a lot when
10562 it's size increases by only 20%. (Gary Johnson)
10563Solution: The array with cached syntax states is leaking entries. After
10564 cleaning up the list obtain the current entry again.
10565Files: src/syntax.c
10566
10567Patch 6.2.102
10568Problem: The macros equal() and CR conflict with a Carbon header file.
10569Solution: Rename equal() to equalpos(). Rename CR to CAR.
10570 Do this in the non-extra files only.
10571Files: src/ascii.h, src/buffer.c, src/charset.c, src/edit.c, src/eval.c,
10572 src/ex_cmds.c, src/ex_cmds2.c, src/ex_getln.c, src/fileio.c,
10573 src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk_x11.c,
10574 src/gui_motif.c, src/macros.h, src/mark.c, src/message.c,
10575 src/misc1.c, src/misc2.c, src/normal.c, src/ops.c, src/os_unix.c,
10576 src/regexp.c, src/search.c, src/ui.c, src/workshop.c
10577
10578Patch 6.2.103 (extra)
10579Problem: The macros equal() and CR conflict with a Carbon header file.
10580Solution: Rename equal() to equalpos(). Rename CR to CAR.
10581 Do this in the extra files only.
10582Files: src/gui_photon.c, src/gui_w48.c
10583
10584Patch 6.2.104
10585Problem: Unmatched braces in the table with options.
10586Solution: Move the "}," outside of the #ifdef. (Yakov Lerner)
10587Files: src/option.c
10588
10589Patch 6.2.105
10590Problem: When the cursor is past the end of the line when calling
10591 get_c_indent() a crash might occur.
10592Solution: Don't look past the end of the line. (NJ Verenini)
10593Files: src/misc1.c
10594
10595Patch 6.2.106
10596Problem: Tag searching gets stuck on a very long line in the tags file.
10597Solution: When skipping back to search the first matching tag remember the
10598 offset where searching started looking for a line break.
10599Files: src/tag.c
10600
10601Patch 6.2.107 (extra)
10602Problem: The NetBeans interface cannot be used on Win32.
10603Solution: Add support for the NetBeans for Win32. Add support for reading
10604 XPM files on Win32. Also fixes that a sign icon with a space in
10605 the file name did not work through the NetBeans interface.
10606 (Sergey Khorev)
10607 Also: avoid repeating error messages when the connection is lost.
10608Files: Makefile, runtime/doc/netbeans.txt, src/Make_bc5.mak,
10609 src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
10610 src/bigvim.bat, src/feature.h, src/gui_beval.c, src/gui_beval.h,
10611 src/gui_w32.c, src/gui_w48.c, src/menu.c, src/nbdebug.c,
10612 src/nbdebug.h, src/netbeans.c, src/os_mswin.c, src/os_win32.h,
10613 src/proto/gui_beval.pro, src/proto/gui_w32.pro,
10614 src/proto/netbeans.pro, src/proto.h, src/version.c, src/vim.h,
10615 src/xpm_w32.c, src/xpm_w32.h
10616
10617Patch 6.2.108
10618Problem: Crash when giving a message about ignoring case in a tag. (Manfred
10619 Kuehn)
10620Solution: Use a longer buffer for the message.
10621Files: src/tag.c
10622
10623Patch 6.2.109
10624Problem: Compiler warnings with various Amiga compilers.
10625Solution: Add typecast, prototypes, et al. that are also useful for other
10626 systems. (Flavio Stanchina)
10627Files: src/eval.c, src/ops.c
10628
10629Patch 6.2.110
10630Problem: When $LANG includes the encoding, a menu without an encoding name
10631 is not found.
10632Solution: Also look for a menu file without any encoding.
10633Files: runtime/menu.vim
10634
10635Patch 6.2.111
10636Problem: Encoding "cp1251" is not recognized.
10637Solution: Add "cp1251" to the table of encocings. (Alexey Froloff)
10638Files: src/mbyte.c
10639
10640Patch 6.2.112
10641Problem: After applying patches test32 fails. (Antonio Colombo)
10642Solution: Have "make clean" in the testdir delete *.rej and *.orig files.
10643 Use this when doing "make clean" in the src directory.
10644Files: src/Makefile, src/testdir/Makefile
10645
10646Patch 6.2.113
10647Problem: Using ":startinsert" after "$" works like "a" instead of "i".
10648 (Ajit Thakkar)
10649Solution: Reset "w_curswant" for ":startinsert" and reset o_eol in edit().
10650Files: src/edit.c, src/ex_docmd.c
10651
10652Patch 6.2.114
10653Problem: When stdout is piped through "tee", the size of the screen may not
10654 be correct.
10655Solution: Use stdin instead of stdout for ioctl() when stdin is a tty and
10656 stdout isn't.
10657Files: src/os_unix.c
10658
10659Patch 6.2.115 (extra)
10660Problem: Compiler warnings with various Amiga compilers.
10661Solution: Add typecast, prototypes, et al. Those changes that are
10662 Amiga-specific. (Flavio Stanchina)
10663Files: src/fileio.c, src/memfile.c, src/os_amiga.c, src/os_amiga.h,
10664 src/vim.h
10665
10666Patch 6.2.116 (extra)
10667Problem: German keyboard with Numlock set different from system startup
10668 causes problems.
10669Solution: Ignore keys with code 0xff. (Helmut Stiegler)
10670Files: src/gui_w48.c
10671
10672Patch 6.2.117
10673Problem: Breakpoints in loops of sourced files and functions are not
10674 detected. (Hari Krishna Dara)
10675Solution: Check for breakpoints when using lines that were previously read.
10676 (Servatius Brandt)
10677Files: src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/proto/eval.pro,
10678 src/proto/ex_cmds2.pro
10679
10680Patch 6.2.118 (extra)
10681Problem: Mac: Compiling is done in a non-standard way.
10682Solution: Use the Unix method for Mac OS X, with autoconf. Add "CARBONGUI"
10683 to Makefile and configure. (Eric Kow)
10684 Move a few prototypes from os_mac.pro to gui_mac.pro.
10685Files: src/Makefile, src/auto/configure, src/configure.in,
10686 src/config.mk.in, src/gui_mac.c, src/os_mac.h, src/os_macosx.c,
10687 src/proto/gui_mac.pro, src/proto/os_mac.pro,
10688 src/infplist.xml, src/vim.h
10689
10690Patch 6.2.119 (after 6.2.107)
10691Problem: When packing the MS-Windows archives a few files are missing.
10692 (Guopeng Wen)
10693Solution: Add gui_beval.* to the list of generic source files.
10694Files: Makefile
10695
10696Patch 6.2.120
10697Problem: Win32 GUI: The console dialogs are not supported on MS-Windows,
10698 disabling the 'c' flag of 'guioptions'. (Servatius Brandt)
10699Solution: Define FEAT_CON_DIALOG also for GUI-only builds.
10700Files: src/feature.h
10701
10702Patch 6.2.121 (after 6.2.118)
10703Problem: Not all make programs support "+=". (Charles Campbell)
10704Solution: Use a normal assignment.
10705Files: src/Makefile
10706
10707Patch 6.2.122 (after 6.2.119)
10708Problem: Not all shells can expand [^~]. File missing. (Guopeng Wen)
10709Solution: Use a simpler pattern. Add the Aap recipe for the maze program
10710 and a clean version of the source code.
10711Files: Makefile, runtime/macros/maze/Makefile,
10712 runtime/macros/maze/README.txt, runtime/macros/maze/main.aap,
10713 runtime/macros/maze/mazeclean.c
10714
10715Patch 6.2.123 (after 6.2.118)
10716Problem: Running configure fails. (Tony Leneis)
10717Solution: Change "==" to "=" for a test.
10718Files: src/auto/configure, src/configure.in
10719
10720Patch 6.2.124 (after 6.2.121)(extra)
10721Problem: Mac: Recursive use of M4FLAGS causes problems. When running Vim
10722 directly it can't find the runtime files. (Emily Jackson)
10723 Using GNU constructs causes warnings with other make programs.
10724 (Ronald Schild)
10725Solution: Use another name for the M4FLAGS variable.
10726 Don't remove "Vim.app" from the path.
10727 Update the explanation for compiling on the Mac. (Eric Kow)
10728 Don't use $(shell ) and $(addprefix ).
10729Files: src/INSTALLmac.txt, src/Makefile, src/misc1.c
10730
10731Patch 6.2.125 (after 6.2.107)
10732Problem: The "winsock2.h" file isn't always available.
10733Solution: Don't include this header file.
10734Files: src/netbeans.c
10735
10736Patch 6.2.126
10737Problem: Typing CTRL-C at a confirm() prompt doesn't throw an exception.
10738Solution: Reset "mapped_ctrl_c" in get_keystroke(), so that "got_int" is set
10739 in _OnChar().
10740Files: src/misc1.c
10741
10742Patch 6.2.127 (extra)
10743Problem: Win32 console: Typing CTRL-C doesn't throw an exception.
10744Solution: Set got_int immediately when CTRL-C is typed, don't wait for
10745 mch_breakcheck() being called.
10746Files: src/os_win32.c
10747
10748Patch 6.2.128 (after 6.2.118)
10749Problem: src/auto/configure is not consistent with src/configure.in.
10750Solution: Use the newly generated configure script.
10751Files: src/auto/configure
10752
10753Patch 6.2.129
10754Problem: When 'number' is set 'wrapmargin' does not work Vi-compatible.
10755 (Yasuhiro Matsumoto)
10756Solution: Reduce the textwidth when 'number' is set. Also for 'foldcolumn'
10757 and similar things.
10758Files: src/edit.c
10759
10760Patch 6.2.130 (extra)
10761Problem: Win32 console: When 'restorescreen' is not set exiting Vim causes
10762 the screen to be cleared. (Michael A. Mangino)
10763Solution: Don't clear the screen when exiting and 'restorescreen' isn't set.
10764Files: src/os_win32.c
10765
10766Patch 6.2.131 (extra)
10767Problem: Win32: Font handles are leaked.
10768Solution: Free italic, bold and bold-italic handles before overwriting them.
10769 (Michael Wookey)
10770Files: src/gui_w48.c
10771
10772Patch 6.2.132 (extra)
10773Problem: Win32: console version doesn't work on latest Windows Server 2003.
10774Solution: Copy 12000 instead of 15000 cells at a time to avoid running out
10775 of memory.
10776Files: src/os_win32.c
10777
10778Patch 6.2.133
10779Problem: When starting the GUI a bogus error message about 'imactivatekey'
10780 may be given.
10781Solution: Only check the value of 'imactivatekey' when the GUI is running.
10782Files: src/gui.c, src/option.c
10783
10784Patch 6.2.134 (extra)
10785Problem: Win32: When scrolling parts of the window are redrawn when this
10786 isn't necessary.
10787Solution: Only invalidate parts of the window when they are obscured by
10788 other windows. (Michael Wookey)
10789Files: src/gui_w48.c
10790
10791Patch 6.2.135
10792Problem: An item <> in the ":command" argument is interpreted as <args>.
10793Solution: Avoid that <> is recognized as <args>.
10794Files: src/ex_docmd.c
10795
10796Patch 6.2.136
10797Problem: ":e ++enc=latin1 newfile" doesn't set 'fenc' when the file doesn't
10798 exist. (Miroslaw Dobrzanski-Neumann)
10799Solution: Set 'fileencoding' to the specified encoding when editing a file
10800 that does not exist.
10801Files: src/fileio.c
10802
10803Patch 6.2.137
10804Problem: "d:cmd<CR>" cannot be repeated with ".". Breaks repeating "d%"
10805 when using the matchit plugin.
10806Solution: Store the command to be repeated. This is restricted to
10807 single-line commands.
10808Files: src/ex_docmd.c, src/globals.h, src/normal.c, src/vim.h
10809
10810Patch 6.2.138 (extra)
10811Problem: Compilation problem on VMS with dynamic buffer on the stack.
10812Solution: Read one byte less than the size of the buffer, so that we can
10813 check for the string length without an extra buffer.
10814Files: src/os_vms.c
10815
10816Patch 6.2.139
10817Problem: Code is repeated in the two Perl files.
10818Solution: Move common code from if_perl.xs and if_perlsfio.c to vim.h.
10819 Also fix a problem with generating prototypes.
10820Files: src/if_perl.xs, src/if_perlsfio.c, src/vim.h
10821
10822Patch 6.2.140 (after 6.2.121)
10823Problem: Mac: Compiling with Python and Perl doesn't work.
10824Solution: Adjust the configure check for Python to use "-framework Python"
10825 for Python 2.3 on Mac OS/X.
10826 Move "-ldl" after "DynaLoader.a" in the link command.
10827 Change "perllibs" to "PERL_LIBS".
10828Files: src/auto/configure, src/configure.in, src/config.mk.in
10829
10830Patch 6.2.141 (extra)
10831Problem: Mac: The b_FSSpec field is sometimes unused.
10832Solution: Change the #ifdef to FEAT_CW_EDITOR and defined it in feature.h
10833Files: src/fileio.c, src/gui_mac.c, src/structs.h, src/feature.h
10834
10835Patch 6.2.142 (after 6.2.124)
10836Problem: Mac: building without GUI through configure doesn't work.
10837 When the system is slow, unpacking the resource file takes too
10838 long.
10839Solution: Don't always define FEAT_GUI_MAC when MACOS is defined, define it
10840 in the Makefile.
10841 Add a configure option to skip Darwin detection.
10842 Use a Python script to unpack the resources to avoid a race
10843 condition. (Taro Muraoka)
10844Files: Makefile, src/Makefile, src/auto/configure, src/configure.in,
10845 src/dehqx.py, src/vim.h
10846
10847Patch 6.2.143
10848Problem: Using "K" on Visually selected text doesn't work if it ends in
10849 a multi-byte character.
10850Solution: Include all the bytes of the last character. (Taro Muraoka)
10851Files: src/normal.c
10852
10853Patch 6.2.144
10854Problem: When "g:html_use_css" is set the HTML header generated by the
10855 2html script is wrong.
10856Solution: Add the header after adding HREF for links.
10857 Also use ":normal!" instead of ":normal" to avoid mappings
10858 getting in the way.
10859Files: runtime/syntax/2html.vim
10860
10861Patch 6.2.145 (after 6.2.139)
10862Problem: Undefining "bool" doesn't work for older systems. (Wojtek Pilorz)
10863Solution: Only undefine "bool" on Mac OS.
10864Files: src/vim.h
10865
10866Patch 6.2.146
10867Problem: On some systems the prototype for iconv() is wrong, causing a
10868 warning message.
10869Solution: Use a cast (void *) to avoid the warning. (Charles Campbell)
10870Files: src/fileio.c, src/mbyte.c
10871
10872Patch 6.2.147
10873Problem: ":s/pat/\=col('.')" always replaces with "1".
10874Solution: Set the cursor to the start of the match before substituting.
10875 (Helmut Stiegler)
10876Files: src/ex_cmds.c
10877
10878Patch 6.2.148
10879Problem: Can't break an Insert into several undoable parts.
10880Solution: Add the CTRL-G u command.
10881Files: runtime/doc/insert.txt, src/edit.c
10882
10883Patch 6.2.149
10884Problem: When the cursor is on a line past 21,474,748 the indicated
10885 percentage of the position is invalid. With that many lines
10886 "100%" causes a negative cursor line number, resulting in a crash.
10887 (Daniel Goujot)
10888Solution: Divide by 100 instead of multiplying. Avoid overflow when
10889 computing the line number for "100%".
10890Files: src/buffer.c, src/ex_cmds2.c, src/normal.c
10891
10892Patch 6.2.150
10893Problem: When doing "vim - < file" lines are broken at NUL chars.
10894 (Daniel Goujot)
10895Solution: Change NL characters back to NUL when reading from the temp
10896 buffer.
10897Files: src/fileio.c
10898
10899Patch 6.2.151
10900Problem: When doing "vim --remote +startinsert file" some commands are
10901 inserted as text. (Klaus Bosau)
10902Solution: Put all the init commands in one Ex line, not using a <CR>, so
10903 that Insert mode isn't started too early.
10904Files: src/main.c
10905
10906Patch 6.2.152
10907Problem: The cursor() function doesn't reset the column offset for
10908 'virtualedit'.
10909Solution: Reset the offset to zero. (Helmut Stiegler)
10910Files: src/eval.c
10911
10912Patch 6.2.153
10913Problem: Win32: ":lang german" doesn't use German messages.
10914Solution: Add a table to translate the Win32 language names to two-letter
10915 language codes.
10916Files: src/ex_cmds2.c
10917
10918Patch 6.2.154
10919Problem: Python bails out when giving a warning message. (Eugene
10920 Minkovskii)
10921Solution: Set sys.argv[] to an empty string.
10922Files: src/if_python.c
10923
10924Patch 6.2.155
10925Problem: Win32: Using ":tjump www" in a help file gives two results.
10926 (Dave Roberts)
10927Solution: Ignore differences between slashes and backslashes when checking
10928 for identical tag matches.
10929Files: src/tag.c
10930
10931Patch 6.2.156 (after 6.2.125)
10932Problem: Win32: Netbeans fails to build, EINTR is not defined.
10933Solution: Redefine EINTR to WSAEINTR. (Mike Williams)
10934Files: src/netbeans.c
10935
10936Patch 6.2.157
10937Problem: Using "%p" in 'errorformat' gives a column number that is too
10938 high.
10939Solution: Set the flag to use the number as a virtual column. (Lefteris
10940 Koutsoloukas)
10941Files: src/quickfix.c
10942
10943Patch 6.2.158
10944Problem: The sed command on Solaris and HPUX doesn't work for a line that
10945 doesn't end in a newline.
10946Solution: Add a newline when feeding text to sed. (Mark Waggoner)
10947Files: src/configure.in, src/auto/configure
10948
10949Patch 6.2.159
10950Problem: When using expression folding and 'foldopen' is "undo" an undo
10951 command doesn't always open the fold.
10952Solution: Save and restore the KeyTyped variable when evaluating 'foldexpr'.
10953 (Taro Muraoka)
10954Files: src/fold.c
10955
10956Patch 6.2.160
10957Problem: When 'virtualedit' is "all" and 'selection is "exclusive",
10958 selecting a double-width character below a single-width character
10959 may cause a crash.
10960Solution: Avoid overflow on unsigned integer decrement. (Taro Muraoka)
10961Files: src/normal.c
10962
10963Patch 6.2.161 (extra)
10964Problem: VMS: Missing header file. Reading input busy loops.
10965Solution: Include termdef.h. Avoid the use of a wait function in
10966 vms_read(). (Frank Ries)
10967Files: src/os_unix.h, src/os_vms.c
10968
10969Patch 6.2.162
10970Problem: ":redraw" doesn't always display the text that includes the cursor
10971 position, e.g. after ":call cursor(1, 0)". (Eugene Minkovskii)
10972Solution: Call update_topline() before redrawing.
10973Files: src/ex_docmd.c
10974
10975Patch 6.2.163
10976Problem: "make install" may also copy AAPDIR directories.
10977Solution: Delete AAPDIR directories, just like CVS directories.
10978Files: src/Makefile
10979
10980Patch 6.2.164 (after 6.2.144)
10981Problem: When "g:html_use_css" is set the HTML header generated by the
10982 2html script is still wrong.
10983Solution: Search for a string instead of jumping to a fixed line number.
10984 Go to the start of the line before inserting the header.
10985 (Jess Thrysoee)
10986Files: runtime/syntax/2html.vim
10987
10988Patch 6.2.165
10989Problem: The configure checks hang when using autoconf 2.57.
10990Solution: Invoke AC_PROGRAM_EGREP to set $EGREP. (Aron Griffis)
10991Files: src/auto/configure, src/configure.in
10992
10993Patch 6.2.166
10994Problem: When $GZIP contains "-N" editing compressed files doesn't work
10995 properly.
10996Solution: Add "-n" to "gzip -d" to avoid restoring the file name. (Oyvind
10997 Holm)
10998Files: runtime/plugin/gzip.vim
10999
11000Patch 6.2.167
11001Problem: The Python interface leaks memory when assigning lines to a
11002 buffer. (Sergey Khorev)
11003Solution: Do not copy the line when calling ml_replace().
11004Files: src/if_python.c
11005
11006Patch 6.2.168
11007Problem: Python interface: There is no way to get the indices from a range
11008 object.
11009Solution: Add the "start" and "end" attributes. (Maurice S. Barnum)
11010Files: src/if_python.c, runtime/doc/if_pyth.txt
11011
11012Patch 6.2.169
11013Problem: The prototype for _Xmblen() appears in a recent XFree86 header
11014 file, causing a warning for our prototype. (Hisashi T Fujinaka)
11015Solution: Move the prototype to an osdef file, so that it's filtered out.
11016Files: src/mbyte.c, src/osdef2.h.in
11017
11018Patch 6.2.170
11019Problem: When using Sun WorkShop the current directory isn't changed to
11020 where the file is.
11021Solution: Set the 'autochdir' option when using WorkShop. And avoid using
11022 the basename when 'autochdir' is not set.
11023Files: src/gui_x11.c, src/ex_cmds.c
11024
11025Patch 6.2.171 (after 6.2.163)
11026Problem: The "-or" argument of "find" doesn't work for SysV systems.
11027Solution: Use "-o" instead. (Gordon Prieur)
11028Files: src/Makefile
11029
11030Patch 6.2.172 (after 6.2.169)
11031Problem: The prototype for _Xmblen() still causes trouble.
11032Solution: Include the X11 header file that defines the prototype.
11033Files: src/osdef2.h.in, src/osdef.sh
11034
11035Patch 6.2.173 (extra)
11036Problem: Win32: Ruby interface doesn't work with Ruby 1.8.0 for other
11037 compilers than MSVC.
11038Solution: Fix the BC5, Cygwin and Mingw makefiles. (Dan Sharp)
11039Files: src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak
11040
11041Patch 6.2.174
11042Problem: After the ":intro" message only a mouse click in the last line
11043 gets past the hit-return prompt.
11044Solution: Accept a click at or below the hit-return prompt.
11045Files: src/gui.c, src/message.c
11046
11047Patch 6.2.175
11048Problem: Changing 'backupext' in a *WritePre autocommand doesn't work.
11049 (William Natter)
11050Solution: Move the use of p_bex to after executing the *WritePre
11051 autocommands. Also avoids reading allocated memory after freeing.
11052Files: src/fileio.c
11053
11054Patch 6.2.176
11055Problem: Accented characters in translated help files are not handled
11056 correctly. (Fabien Vayssiere)
11057Solution: Include "192-255" in 'iskeyword' for the help window.
11058Files: src/ex_cmds.c
11059
11060Patch 6.2.177 (extra)
11061Problem: VisVim: Opening a file with a space in the name doesn't work. (Rob
11062 Retter) Arbitrary commands are being executed. (Neil Bird)
11063Solution: Put a backslash in front of every space in the file name.
11064 (Gerard Blais) Terminate the CTRL-\ CTRL-N command with a NUL.
11065Files: src/VisVim/Commands.cpp, src/VisVim/VisVim.rc
11066
11067Patch 6.2.178
11068Problem: People who don't know how to exit Vim try pressing CTRL-C.
11069Solution: Give a message how to exit Vim when CTRL-C is pressed and it
11070 doesn't cancel anything.
11071Files: src/normal.c
11072
11073Patch 6.2.179 (extra)
11074Problem: The en_gb messages file isn't found on case sensitive systems.
11075Solution: Rename en_gb to en_GB. (Mike Williams)
11076Files: src/po/en_gb.po, src/po/en_GB.po, src/po/Make_ming.mak,
11077 src/po/Make_mvc.mak, src/po/Makefile, src/po/README_mvc.txt
11078
11079Patch 6.2.180
11080Problem: Compiling with GTK2 on Win32 doesn't work.
11081Solution: Include gdkwin32.h instead of gdkx.h. (Srinath Avadhanula)
11082Files: src/gui_gtk.c, src/gui_gtk_f.c, src/gui_gtk_x11.c, src/mbyte.c
11083
11084Patch 6.2.181 (after 6.2.171)
11085Problem: The "-o" argument of "find" has lower priority than the implied
11086 "and" with "-print".
11087Solution: Add parenthesis around the "-o" expression. (Gordon Prieur)
11088Files: src/Makefile
11089
11090Patch 6.2.182 (after 6.2.094)
11091Problem: Compilation with tiny features fails because of missing
11092 get_past_head() function.
11093Solution: Adjust the #ifdef for get_past_head().
11094Files: src/misc1.c
11095
11096Patch 6.2.183 (after 6.2.178)
11097Problem: Warning for char/unsigned char mixup.
11098Solution: Use MSG() instead of msg(). (Tony Leneis)
11099Files: src/normal.c
11100
11101Patch 6.2.184
11102Problem: With 'formatoptions' set to "1aw" inserting text may cause the
11103 paragraph to be ended. (Alan Schmitt)
11104Solution: Temporarily add an extra space to make the paragraph continue
11105 after moving the word after the cursor to the next line.
11106 Also format when pressing Esc.
11107Files: src/edit.c, src/normal.c, src/proto/edit.pro
11108
11109Patch 6.2.185
11110Problem: Restoring a session with zero-height windows does not work
11111 properly. (Charles Campbell)
11112Solution: Accept a zero argument to ":resize" as intended. Add a window
11113 number argument to ":resize" to be able to set the size of other
11114 windows, because the current window cannot be zero-height.
11115 Fix the explorer plugin to avoid changing the window sizes. Add
11116 the winrestcmd() function for this.
11117Files: runtime/doc/eval.txt, runtime/plugin/explorer.vim, src/eval.c,
11118 src/ex_cmds.h, src/ex_docmd.c, src/proto/window.pro, src/window.c
11119
11120Patch 6.2.186 (after 6.2.185)
11121Problem: Documentation file eval.txt contains examples without indent.
11122Solution: Insert the indent. Also fix other mistakes.
11123Files: runtime/doc/eval.txt
11124
11125Patch 6.2.187
11126Problem: Using Insure++ reveals a number of bugs. (Dominuque Pelle)
11127Solution: Initialize variables where needed. Free allocated memory to avoid
11128 leaks. Fix comparing tags to avoid reading past allocated memory.
11129Files: src/buffer.c, src/diff.c, src/fileio.c, src/mark.c, src/misc1.c,
11130 src/misc2.c, src/ops.c, src/option.c, src/tag.c, src/ui.c
11131
11132Patch 6.2.188 (extra)
11133Problem: MS-Windows: Multi-byte characters in a filename cause trouble for
11134 the window title.
11135Solution: Return when the wide function for setting the title did its work.
11136Files: src/gui_w48.c
11137
11138Patch 6.2.189
11139Problem: When setting 'viminfo' after editing a new buffer its marks are
11140 not stored. (Keith Roberts)
11141Solution: Set the "b_marks_read" flag when skipping to read marks from the
11142 viminfo file.
11143Files: src/fileio.c
11144
11145Patch 6.2.190
11146Problem: When editing a compressed files, marks are lost.
11147Solution: Add the ":lockmarks" modifier and use it in the gzip plugin.
11148 Make exists() also check for command modifiers, so that the
11149 existence of ":lockmarks" can be checked for.
11150 Also add ":keepmarks" to avoid that marks are deleted when
11151 filtering text.
11152 When deleting lines put marks 'A - 'Z and '0 - '9 at the first
11153 deleted line instead of clearing the mark. They were kept in the
11154 viminfo file anyway.
11155 Avoid that the gzip plugin puts deleted text in registers.
11156Files: runtime/doc/motion.txt, runtime/plugin/gzip.vim, src/ex_cmds.c,
11157 src/ex_docmd.c, src/mark.c, src/structs.h
11158
11159Patch 6.2.191
11160Problem: The intro message is outdated. Information about sponsoring and
11161 registering is missing.
11162Solution: Show info about sponsoring and registering Vim in the intro
11163 message now and then. Add help file about sponsoring.
11164Files: runtime/doc/help.txt, runtime/doc/sponsor.txt, runtime/doc/tags,
11165 runtime/menu.vim, src/version.c
11166
11167Patch 6.2.192
11168Problem: Using CTRL-T and CTRL-D with "gR" messes up the text. (Jonahtan
11169 Hankins)
11170Solution: Avoid calling change_indent() recursively.
11171Files: src/edit.c
11172
11173Patch 6.2.193
11174Problem: When recalling a search pattern from the history from a ":s,a/c,"
11175 command the '/' ends the search string. (JC van Winkel)
11176Solution: Store the separator character with the history entries. Escape
11177 characters when needed, replace the old separator with the new one.
11178 Also fixes that recalling a "/" search for a "?" command messes up
11179 trailing flags.
11180Files: src/eval.c, src/ex_getln.c, src/normal.c, src/proto/ex_getln.pro,
11181 src/search.c, src/tag.c
11182
11183Patch 6.2.194 (after 6.2.068)
11184Problem: For NetBeans, instead of writing the file and sending an event
11185 about it, tell NetBeans to write the file.
11186Solution: Add the "save" command, "netbeansBuffer" command and
11187 "buttonRelease" event to the netbeans protocol. Updated the
11188 interface to version 2.2. (Gordon Prieur)
11189 Also: open a fold when the cursor has been positioned.
11190 Also: fix memory leak, free result of nb_quote().
11191Files: runtime/doc/netbeans.txt, src/fileio.c, src/netbeans.c,
11192 src/normal.c, src/proto/netbeans.pro, src/structs.h
11193
11194Patch 6.2.195 (after 6.2.190)
11195Problem: Compiling fails for missing CPO_REMMARK symbol.
11196Solution: Add the patch I forgot to include...
11197Files: src/option.h
11198
11199Patch 6.2.196 (after 6.2.191)
11200Problem: Rebuilding the documentation doesn't use the sponsor.txt file.
11201Solution: Add sponsor.txt to the Makefile. (Christian J. Robinson)
11202Files: runtime/doc/Makefile
11203
11204Patch 6.2.197
11205Problem: It is not possible to force a redraw of status lines. (Gary
11206 Johnson)
11207Solution: Add the ":redrawstatus" command.
11208Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
11209 src/screen.c
11210
11211Patch 6.2.198
11212Problem: A few messages are not translated. (Ernest Adrogue)
11213Solution: Mark the messages to be translated.
11214Files: src/ex_cmds.c
11215
11216Patch 6.2.199 (after 6.2.194)
11217Problem: Vim doesn't work perfectly well with NetBeans.
11218Solution: When NetBeans saves the file, reset the timestamp to avoid "file
11219 changed" warnings. Close a buffer in a proper way. Don't try
11220 giving a debug message with an invalid pointer. Send a
11221 newDotAndMark message when needed. Report a change by the "r"
11222 command to NetBeans. (Gordon Prieur)
11223Files: src/netbeans.c, src/normal.c
11224
11225Patch 6.2.200
11226Problem: When recovering a file, 'fileformat' is always the default, thus
11227 writing the file may result in differences. (Penelope Fudd)
11228Solution: Before recovering the file try reading the original file to obtain
11229 the values of 'fileformat', 'fileencoding', etc.
11230Files: src/memline.c
11231
11232Patch 6.2.201
11233Problem: When 'autowriteall' is set ":qall" still refuses to exit if there
11234 is a modified buffer. (Antoine Mechelynck)
11235Solution: Attempt writing modified buffers as intended.
11236Files: src/ex_cmds2.c
11237
11238Patch 6.2.202
11239Problem: Filetype names of CHILL and ch script are confusing.
11240Solution: Rename "ch" to "chill" and "chscript" to "ch".
11241Files: runtime/filetype.vim, runtime/makemenu.vim, runtime/synmenu.vim
11242 runtime/syntax/ch.vim, runtime/syntax/chill.vim
11243
11244Patch 6.2.203
11245Problem: With characterwise text that has more than one line, "3P" works
11246 wrong. "3p" has the same problem. There also is a display
11247 problem. (Daniel Goujot)
11248Solution: Perform characterwise puts with a count in the right position.
11249Files: src/ops.c
11250
11251Patch 6.2.204 (after 6.2.086)
11252Problem: "]]" in a file with closed folds moves to the end of the file.
11253 (Nam SungHyun)
11254Solution: Find one position in each closed fold, then move to after the fold.
11255Files: src/search.c
11256
11257Patch 6.2.205 (extra)
11258Problem: MS-Windows: When the taskbar is at the left or top of the screen,
11259 the Vim window placement is wrong.
11260Solution: Compute the size and position of the window correctly. (Taro
11261 Muraoka)
11262Files: src/gui_w32.c, src/gui_w48.c
11263
11264Patch 6.2.206
11265Problem: Multi-byte characters cannot be used as hotkeys in a console
11266 dialog. (Mattias Erkisson)
11267Solution: Handle multi-byte characters properly. Also put () or [] around
11268 default hotkeys.
11269Files: src/message.c, src/macros.h
11270
11271Patch 6.2.207
11272Problem: When 'encoding' is a multi-byte encoding, expanding an
11273 abbreviation that starts where insertion started results in
11274 characters before the insertion to be deleted. (Xiangjiang Ma)
11275Solution: Stop searching leftwards for the start of the word at the position
11276 where insertion started.
11277Files: src/getchar.c
11278
11279Patch 6.2.208
11280Problem: When using fold markers, three lines in a row have the start
11281 marker and deleting the first one with "dd", a nested fold is not
11282 deleted. (Kamil Burzynski)
11283 Using marker folding, a level 1 fold doesn't stop when it is
11284 followed by "{{{2", starting a level 2 fold.
11285Solution: Don't stop updating folds at the end of a change when the nesting
11286 level of folds is larger than the fold level.
11287 Correctly compute the number of folds that start at "{{{2".
11288 Also avoid a crash for a NULL pointer.
11289Files: src/fold.c
11290
11291Patch 6.2.209
11292Problem: A bogus fold is created when using "P" while the cursor is in the
11293 middle of a closed fold. (Kamil Burzynski)
11294Solution: Correct the line number where marks are modified for closed folds.
11295Files: src/ops.c
11296
11297Patch 6.2.210 (extra)
11298Problem: Mac OSX: antialiased fonts are not supported.
11299Solution: Add the 'antialias' option to switch on antialiasing on Mac OSX
11300 10.2 and later. (Peter Cucka)
11301Files: runtime/doc/options.txt, src/gui_mac.c, src/option.h, src/option.c
11302
11303Patch 6.2.211 (extra)
11304Problem: Code for handling file dropped on Vim is duplicated.
11305Solution: Move the common code to gui_handle_drop().
11306 Add code to drop the files in the window under the cursor.
11307 Support drag&drop on the Macintosh. (Taro Muraoka)
11308 When dropping a directory name edit that directory (using the
11309 explorer plugin)
11310 Fix that changing directory with Shift pressed didn't work for
11311 relative path names.
11312Files: src/fileio.c, src/gui.c, src/gui_gtk_x11.c, src/gui_mac.c,
11313 src/gui_w48.c, src/proto/fileio.pro, src/proto/gui.pro
11314
11315Patch 6.2.212 (after 6.2.199)
11316Problem: NetBeans: Replacing with a count is not handled correctly.
11317Solution: Move reporting the change outside of the loop for the count.
11318 (Gordon Prieur)
11319Files: src/normal.c
11320
11321Patch 6.2.213 (after 6.2.208)
11322Problem: Using marker folding, "{{{1" doesn't start a new fold when already
11323 at fold level 1. (Servatius Brandt)
11324Solution: Correctly compute the number of folds that start at "{{{1".
11325Files: src/fold.c
11326
11327Patch 6.2.214 (after 6.2.211) (extra)
11328Problem: Warning for an unused variable.
11329Solution: Delete the declaration. (Bill McCarthy)
11330Files: src/gui_w48.c
11331
11332Patch 6.2.215
11333Problem: NetBeans: problems saving an unmodified file.
11334Solution: Add isNetbeansModified() function. Disable netbeans_unmodified().
11335 (Gordon Prieur)
11336Files: src/fileio.c, src/netbeans.c, src/proto/netbeans.pro,
11337 runtime/doc/netbeans.txt, runtime/doc/tags
11338
11339Patch 6.2.216 (after 6.2.206)
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000011340Problem: Multi-byte characters still cannot be used as hotkeys in a console
Bram Moolenaar071d4272004-06-13 20:20:40 +000011341 dialog. (Mattias Erkisson)
11342Solution: Make get_keystroke() handle multi-byte characters.
11343Files: src/misc1.c
11344
11345Patch 6.2.217
11346Problem: GTK: setting the title doesn't always work correctly.
11347Solution: Invoke gui_mch_settitle(). (Tomas Stehlik)
11348Files: src/os_unix.c
11349
11350Patch 6.2.218
11351Problem: Warning for function without prototype.
11352Solution: Add argument types to the msgCB field of the BalloonEval struct.
11353Files: src/gui_beval.h
11354
11355Patch 6.2.219
11356Problem: Syntax highlighting hangs on an empty match of an item with a
11357 nextgroup. (Charles Campbell)
11358Solution: Remember that the item has already matched and don't match it
11359 again at the same position.
11360Files: src/syntax.c
11361
11362Patch 6.2.220
11363Problem: When a Vim server runs in a console a remote command isn't handled
11364 before a key is typed. (Joshua Neuheisel)
11365Solution: Don't try reading more input when a client-server command has been
11366 received.
11367Files: src/os_unix.c
11368
11369Patch 6.2.221
11370Problem: No file name completion for ":cscope add".
11371Solution: Add the XFILE flag to ":cscope". (Gary Johnson)
11372Files: src/ex_cmds.h
11373
11374Patch 6.2.222
11375Problem: Using "--remote" several times on a row only opens some of the
11376 files. (Dany St-Amant)
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000011377Solution: Don't delete all typeahead when the server receives a command from
Bram Moolenaar071d4272004-06-13 20:20:40 +000011378 a client, only delete typed characters.
11379Files: src/main.c
11380
11381Patch 6.2.223
11382Problem: Cscope: Avoid a hang when cscope waits for a response while Vim
11383 waits for a prompt.
11384 Error messages from Cscope mess up the display.
11385Solution: Detect the hit-enter message and respond by sending a return
11386 character to cscope. (Gary Johnson)
11387 Use EMSG() and strerror() when possible. Replace perror() with
11388 PERROR() everywhere, add emsg3().
11389Files: src/diff.c, src/if_cscope.c, src/integration.c, src/message.c,
11390 src/proto/message.pro, src/misc2.c, src/netbeans.c, src/vim.h
11391
11392Patch 6.2.224
11393Problem: Mac: Can't compile with small features. (Axel Kielhorn)
11394Solution: Also include vim_chdirfile() when compiling for the Mac.
11395Files: src/misc2.c
11396
11397Patch 6.2.225
11398Problem: NetBeans: Reported modified state isn't exactly right.
11399Solution: Report a file being modified in the NetBeans way.
11400Files: src/netbeans.c
11401
11402Patch 6.2.226 (after 6.2.107) (extra)
11403Problem: The "ws2-32.lib" file isn't always available.
11404Solution: Use "WSock32.lib" instead. (Taro Muraoka, Dan Sharp)
11405Files: src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak
11406
11407Patch 6.2.227 (extra)
11408Problem: The "PC" symbol is defined but not used anywhere.
11409Solution: Remove "-DPC" from the makefiles.
11410Files: src/Make_bc3.mak, src/Make_bc5.mak, src/Make_cyg.mak,
11411 src/Make_ming.mak
11412
11413Patch 6.2.228
11414Problem: Receiving CTRL-\ CTRL-N after typing "f" or "m" doesn't switch Vim
11415 back to Normal mode. Same for CTRL-\ CTRL-G.
11416Solution: Check if the character typed after a command is CTRL-\ and obtain
11417 another character to check for CTRL-N or CTRL-G, waiting up to
11418 'ttimeoutlen' msec.
11419Files: src/normal.c
11420
11421Patch 6.2.229
11422Problem: ":function" with a name that uses magic curlies does not work
11423 inside a function. (Servatius Brandt)
11424Solution: Skip over the function name properly.
11425Files: src/eval.c
11426
11427Patch 6.2.230 (extra)
11428Problem: Win32: a complex pattern may cause a crash.
11429Solution: Use __try and __except to catch the exception and handle it
11430 gracefully, when possible. Add myresetstkoflw() to reset the
11431 stack overflow. (Benjamin Peterson)
11432Files: src/Make_bc5.mak, src/os_mswin.c src/os_win32.c, src/os_win32.h,
11433 src/proto/os_win32.pro, src/regexp.c
11434
11435Patch 6.2.231 (after 6.2.046)
11436Problem: Various problems when an error exception is raised from within a
11437 builtin function. When it is invoked while evaluating arguments
11438 to a function following arguments are still evaluated. When
11439 invoked with a line range it will be called for remaining lines.
11440Solution: Update "force_abort" also after calling a builtin function, so
11441 that aborting() always returns the correct value. (Servatius
11442 Brandt)
11443Files: src/eval.c, src/ex_eval.c, src/proto/ex_eval.pro,
11444 src/testdir/test49.ok, src/testdir/test49.vim
11445
11446Patch 6.2.232
11447Problem: ":python vim.command('python print 2*2')" crashes Vim. (Eugene
11448 Minkovskii)
11449Solution: Disallow executing a Python command recursively and give an error
11450 message.
11451Files: src/if_python.c
11452
11453Patch 6.2.233
11454Problem: On Mac OSX adding -pthread for Python only generates a warning.
11455 The test for Perl threads rejects Perl while it's OK.
11456 Tcl doesn't work at all.
11457 The test for Ruby fails if ruby exists but there are no header
11458 files. The Ruby library isn't detected properly
11459Solution: Avoid adding -pthread on Mac OSX. Accept Perl threads when it's
11460 not the 5.5 threads.
11461 Use the Tcl framework for header files. For Ruby rename cWindow
11462 to cVimWindow to avoid a name clash. (Ken Scott)
11463 Only enable Ruby when the header files can be found. Use "-lruby"
11464 instead of "libruby.a" when it can't be found.
11465Files: src/auto/configure, src/configure.in, src/if_ruby.c
11466
11467Patch 6.2.234
11468Problem: GTK 2 GUI: ":sp" and the ":q" leaves the cursor on the command
11469 line.
11470Solution: Flush output before removing scrollbars. Also do this in other
11471 places where gui_mch_*() functions are invoked.
11472Files: src/ex_cmds.c, src/option.c, src/window.c
11473
11474Patch 6.2.235 (extra)
11475Problem: Win32: Cursor isn't removed with a 25x80 window and doing:
11476 "1830ia<Esc>400a-<Esc>0w0". (Yasuhiro Matsumoto)
11477Solution: Remove the call to gui_undraw_cursor() from gui_mch_insert_lines().
11478Files: src/gui_w48.c
11479
11480Patch 6.2.236
11481Problem: Using gvim with Agide gives "connection lost" error messages.
11482Solution: Only give the "connection lost" message when the buffer was once
11483 owned by NetBeans.
11484Files: src/netbeans.c, src/structs.h
11485
11486Patch 6.2.237
11487Problem: GTK 2: Thai text is drawn wrong. It changes when moving the
11488 cursor over it.
11489Solution: Disable the shaping engine, it moves combining characters to a
11490 wrong position and combines characters, while drawing the cursor
11491 doesn't combine characters.
11492Files: src/gui_gtk_x11.c
11493
11494Patch 6.2.238 (after 6.2.231)
11495Problem: ":function" does not work inside a while loop. (Servatius Brandt)
11496Solution: Add get_while_line() and pass it to do_one_cmd() when in a while
11497 loop, so that all lines are stored and can be used again when
11498 repeating the loop.
11499 Adjust test 49 so that it checks for the fixed problems.
11500 (Servatius Brandt)
11501Files: src/digraph.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
11502 src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro,
11503 src/testdir/test49.in, src/testdir/test49.ok,
11504 src/testdir/test49.vim
11505
11506Patch 6.2.239
11507Problem: GTK 2: With closed folds the arrow buttons of a vertical scrollbar
11508 often doesn't scroll. (Moshe Kaminsky)
11509Solution: Hackish solution: Detect that the button was pressed from the
11510 mouse pointer position.
11511Files: src/gui_gtk.c, src/gui.c
11512
11513Patch 6.2.240
11514Problem: GTK 2: Searching for bitmaps for the toolbar doesn't work as with
11515 other systems. Need to explicitly use "icon=name". (Ned Konz,
11516 Christian J. Robinson)
11517Solution: Search for icons like done for Motif.
11518Files: src/gui_gtk.c
11519
11520Patch 6.2.241
11521Problem: GTK 2: Search and Search/Replace dialogs are synced, that makes no
11522 sense. Buttons are sometimes greyed-out. (Jeremy Messenger)
11523Solution: Remove the code to sync the two dialogs. Adjust the code to react
11524 to an empty search string to also work for GTK2. (David Necas)
11525Files: src/gui_gtk.c
11526
11527Patch 6.2.242
11528Problem: Gnome: "vim --help" only shows the Gnome arguments, not the Vim
11529 arguments.
11530Solution: Don't let the Gnome code remove the "--help" argument and don't
11531 exit at the end of usage().
11532Files: src/gui_gtk_x11.c, src/main.c
11533
11534Patch 6.2.243 (extra)
11535Problem: Mac: Dropping a file on a Vim icon causes a hit-enter prompt.
11536Solution: Move the dropped files to the global argument list, instead of the
11537 usual drop handling. (Eckehard Berns)
11538Files: src/main.c, src/gui_mac.c
11539
11540Patch 6.2.244
11541Problem: ':echo "\xf7"' displays the illegal byte as if it was a character
11542 and leaves "cho" after it.
11543Solution: When checking the length of a UTF-8 byte sequence and it's shorter
11544 than the number of bytes available, assume it's an illegal byte.
11545Files: src/mbyte.c
11546
11547Patch 6.2.245
11548Problem: Completion doesn't work for ":keepmarks" and ":lockmarks".
11549Solution: Add the command modifiers to the table of commands. (Madoka
11550 Machitani)
11551Files: src/ex_cmds.h, src/ex_docmd.c
11552
11553Patch 6.2.246
11554Problem: Mac: Starting Vim from Finder doesn't show error messages.
11555Solution: Recognize that output is being displayed by stderr being
11556 "/dev/console". (Eckehard Berns)
11557Files: src/main.c, src/message.c
11558
11559Patch 6.2.247 (after 6.2.193)
11560Problem: When using a search pattern from the viminfo file the last
11561 character is replaced with a '/'.
11562Solution: Store the separator character in the right place. (Kelvin Lee)
11563Files: src/ex_getln.c
11564
11565Patch 6.2.248
11566Problem: GTK: When XIM is enabled normal "2" and keypad "2" cannot be
11567 distinguished.
11568Solution: Detect that XIM changes the keypad key to the expected ASCII
11569 character and fall back to the non-XIM code. (Neil Bird)
11570Files: src/gui_gtk_x11.c, src/mbyte.c, src/proto/mbyte.pro
11571
11572Patch 6.2.249
11573Problem: ":cnext" moves to the error in the next file, but there is no
11574 method to go back.
11575Solution: Add ":cpfile" and ":cNfile".
11576Files: src/ex_cmds.h, src/quickfix.c, src/vim.h, runtime/doc/quickfix.txt
11577
11578Patch 6.2.250
11579Problem: Memory leaks when using signs. (Xavier de Gaye)
11580Solution: Delete the list of signs when unloading a buffer.
11581Files: src/buffer.c
11582
11583Patch 6.2.251
11584Problem: GTK: The 'v' flag in 'guioptions' doesn't work. (Steve Hall)
11585 Order of buttons is reversed for GTK 2.2.4. Don't always get
11586 focus back after handling a dialog.
11587Solution: Make buttons appear vertically when desired. Reverse the order in
11588 which buttons are added to a dialog. Move mouse pointer around
11589 when the dialog is done and we don't have focus.
11590Files: src/gui_gtk.c
11591
11592Patch 6.2.252 (extra, after 6.2.243)
11593Problem: Mac: Dropping a file on a Vim icon causes a hit-enter prompt for
11594 Mac OS classic.
11595Solution: Remove the #ifdef from the code that fixes it for Mac OSX.
11596Files: src/gui_mac.c
11597
11598Patch 6.2.253
11599Problem: When 'tagstack' is not set a ":tag id" command does not work after
11600 a ":tjump" command.
11601Solution: Set "new_tag" when 'tagstack' isn't set. (G. Narendran)
11602Files: src/tag.c
11603
11604Patch 6.2.254
11605Problem: May run out of space for error messages.
11606Solution: Keep room for two more bytes.
11607Files: src/quickfix.c
11608
11609Patch 6.2.255
11610Problem: GTK: A new item in the popup menu is put just after instead of
11611 just before the right item. (Gabriel Zachmann)
11612Solution: Don't increment the menu item index.
11613Files: src/gui_gtk.c
11614
11615Patch 6.2.256
11616Problem: Mac: "macroman" encoding isn't recognized, need to use
11617 "8bit-macroman.
11618Solution: Recognize "macroman" with an alias "mac". (Eckehard Berns)
11619Files: src/mbyte.c
11620
11621Patch 6.2.257 (after 6.2.250)
11622Problem: Signs are deleted for ":bdel", but they could still be useful.
11623Solution: Delete signs only for ":bwipe".
11624Files: src/buffer.c
11625
11626Patch 6.2.258
11627Problem: GUI: can't disable (grey-out) a popup menu item. (Ajit Thakkar)
11628Solution: Loop over the popup menus for all modes.
11629Files: src/menu.c
11630
11631Patch 6.2.259
11632Problem: If there are messages when exiting, on the console there is a
11633 hit-enter prompt while the message can be read; in the GUI the
11634 message may not be visible.
11635Solution: Use the hit-enter prompt when there is an error message from
11636 writing the viminfo file or autocommands, or when there is any
11637 output in the GUI and 'verbose' is set. Don't use a hit-enter
11638 prompt for the non-GUI version unless there is an error message.
11639Files: src/main.c
11640
11641Patch 6.2.260
11642Problem: GTK 2: Can't quit a dialog with <Esc>.
11643 GTK 1 and 2: <Enter> always gives a result, even when the default
11644 button has been disabled.
11645Solution: Handle these keys explicitly. When no default button is specified
11646 use the first one (works mostly like it was before).
11647Files: src/gui_gtk.c
11648
11649Patch 6.2.261
11650Problem: When 'autoindent' and 'cindent' are set and a line is recognized
11651 as a comment, starting a new line won't do 'cindent' formatting.
11652Solution: Also use 'cindent' formatting for lines that are used as a
11653 comment. (Servatius Brandt)
11654Files: src/misc1.c
11655
11656Patch 6.2.262
11657Problem: 1 CTRL-W w beeps, even though going to the first window is
11658 possible. (Charles Campbell)
11659Solution: Don't beep.
11660Files: src/window.c
11661
11662Patch 6.2.263
11663Problem: Lint warnings: Duplicate function prototypes, duplicate macros,
11664 use of a zero character instead of a zero pointer, unused
11665 variable. Clearing allocated memory in a complicated way.
11666Solution: Remove the function prototypes from farsi.h. Remove the
11667 duplicated lines in keymap.h. Change getvcol() argument from NUL
11668 to NULL. Remove the "col" variable in regmatch(). Use
11669 lalloc_clear() instead of lalloc(). (Walter Briscoe)
11670Files: src/farsi.h, src/keymap.h, src/ops.c, src/regexp.c, src/search.c
11671
11672Patch 6.2.264 (after 6.2.247)
11673Problem: Writing past allocated memory when using a command line from the
11674 viminfo file.
11675Solution: Store the NUL in the right place.
11676Files: src/ex_getln.c
11677
11678Patch 6.2.265
11679Problem: Although ":set" is not allowed in the sandbox, ":let &opt = val"
11680 works.
11681Solution: Do allow changing options in the sandbox, but not the ones that
11682 can't be changed from a modeline.
11683Files: src/ex_cmds.h, src/options.c
11684
11685Patch 6.2.266
11686Problem: When redirecting output and using ":silent", line breaks are
11687 missing from output of ":map" and ":tselect". Alignment of
11688 columns is wrong.
11689Solution: Insert a line break where "msg_didout" was tested. Update msg_col
11690 when redirecting and using ":silent".
11691Files: src/getchar.c, src/message.c
11692
11693Patch 6.2.267 (extra)
11694Problem: Win32: "&&" in a tearoff menu is not shown. (Luc Hermitte)
11695Solution: Use the "name" item from the menu instead of the "dname" item.
11696Files: src/gui_w32.c, src/menu.c
11697
11698Patch 6.2.268
11699Problem: GUI: When changing 'guioptions' part of the window may be off
11700 screen. (Randall Morris)
11701Solution: Adjust the size of the window when changing 'guioptions', but only
11702 when adding something.
11703Files: src/gui.c
11704
11705Patch 6.2.269
11706Problem: Diff mode does not highlight a change in a combining character.
11707 (Raphael Finkel)
11708Solution: Make diff_find_change() multi-byte aware: find the start byte of
11709 a character that contains a change.
11710Files: src/diff.c
11711
11712Patch 6.2.270
11713Problem: Completion in Insert mode, then repeating with ".", doesn't handle
11714 composing characters in the completed text. (Raphael Finkel)
11715Solution: Don't skip over composing chars when adding completed text to the
11716 redo buffer.
11717Files: src/getchar.c
11718
11719Patch 6.2.271
11720Problem: NetBeans: Can't do "tail -f" on the log. Passing socket info with
11721 an argument or environment variable is not secure.
11722Solution: Wait after initializing the log. Allow passing the socket info
11723 through a file. (Gordon Prieur)
11724Files: runtime/doc/netbeans.txt, src/main.c, src/netbeans.c
11725
11726Patch 6.2.272
11727Problem: When the "po" directory exists, but "po/Makefile" doesn't,
11728 building fails. Make loops when the "po" directory has been
11729 deleted after running configure.
11730Solution: Check for the "po/Makefile" instead of just the "po" directory.
11731 Check this again before trying to run make with that Makefile.
11732Files: src/auto/configure, src/configure.in, src/Makefile
11733
11734Patch 6.2.273
11735Problem: Changing the sort order in an explorer window for an empty
11736 directory produces error messages. (Doug Kearns)
11737Solution: When an invalid range is used for a function that is not going to
11738 be executed, skip over the arguments anyway.
11739Files: src/eval.c
11740
11741Patch 6.2.274
11742Problem: ":print" skips empty lines when 'list' is set and there is no
11743 "eol" in 'listchars'. (Yakov Lerner)
11744Solution: Skip outputting a space for an empty line only when 'list' is set
11745 and the end-of-line character is not empty.
11746Files: src/message.c
11747
11748Patch 6.2.275 (extra, after 6.2.267)
11749Problem: Warning for uninitialized variable when using gcc.
11750Solution: Initialize "acLen" to zero. (Bill McCarthy)
11751Files: src/gui_w32.c
11752
11753Patch 6.2.276
11754Problem: ":echo X()" does not put a line break between the message that X()
11755 displays and the text that X() returns. (Yakov Lerner)
11756Solution: Invoke msg_start() after evaluating the argument.
11757Files: src/eval.c
11758
11759Patch 6.2.277
11760Problem: Vim crashes when a ":runtime ftplugin/ada.vim" causes a recursive
11761 loop. (Robert Nowotniak)
11762Solution: Restore "msg_list" before returning from do_cmdline().
11763Files: src/ex_docmd.c
11764
11765Patch 6.2.278
11766Problem: Using "much" instead of "many".
11767Solution: Correct the error message.
11768Files: src/eval.c
11769
11770Patch 6.2.279
11771Problem: There is no default choice for a confirm() dialog, now that it is
11772 possible not to have a default choice.
11773Solution: Make the first choice the default choice.
11774Files: runtime/doc/eval.txt, src/eval.c
11775
11776Patch 6.2.280
11777Problem: "do" and ":diffget" don't work in the first line and the last line
11778 of a buffer. (Aron Griffis)
11779Solution: Find a difference above the first line and below the last line.
11780 Also fix a few display updating bugs.
11781Files: src/diff.c, src/fold.c, src/move.c
11782
11783Patch 6.2.281
11784Problem: PostScript printing doesn't work on Mac OS X 10.3.2.
11785Solution: Adjust the header file. (Mike Williams)
11786Files: runtime/print/prolog.ps
11787
11788Patch 6.2.282
11789Problem: When using CTRL-O to go back to a help file, it becomes listed.
11790 (Andrew Nesbit)
11791 Using ":tag" or ":tjump" in a help file doesn't keep the help file
11792 settings (e.g. for 'iskeyword').
11793Solution: Don't mark a buffer as listed when its help flag is set. Put all
11794 the option settings for a help buffer together in do_ecmd().
11795Files: src/ex_cmds.c
11796
11797Patch 6.2.283
11798Problem: The "local additions" in help.txt are used without conversion,
11799 causing latin1 characters showing up wrong when 'enc' is utf-8.
11800 (Antoine J. Mechelynck)
11801Solution: Convert the text to 'encoding'.
11802Files: src/ex_cmds.c
11803
11804Patch 6.2.284
11805Problem: Listing a function puts "endfunction" in the message history.
11806 Typing "q" at the more prompt isn't handled correctly when listing
11807 variables and functions. (Hara Krishna Dara)
11808Solution: Don't use msg() for "endfunction". Check "got_int" regularly.
11809Files: src/eval.c
11810
11811Patch 6.2.285
11812Problem: GUI: In a single wrapped line that fills the window, "gj" in the
11813 last screen line leaves the cursor behind. (Ivan Tarasov)
11814Solution: Undraw the cursor before scrolling the text up.
11815Files: src/gui.c
11816
11817Patch 6.2.286
11818Problem: When trying to rename a file and it doesn't exist, the destination
11819 file is deleted anyway. (Luc Deux)
11820Solution: Don't delete the destination when the source doesn't exist. (Taro
11821 Muraoka)
11822Files: src/fileio.c
11823
11824Patch 6.2.287 (after 6.2.264)
11825Problem: Duplicate lines are added to the viminfo file.
11826Solution: Compare with existing entries without an offset. Also fixes
11827 reading very long history lines from viminfo.
11828Files: src/ex_getln.c
11829
11830Patch 6.2.288 (extra)
11831Problem: Mac: An external program can't be interrupted.
11832Solution: Don't use the 'c' key for backspace. (Eckehard Berns)
11833Files: src/gui_mac.c
11834
11835Patch 6.2.289
11836Problem: Compiling the Tcl interface with thread support causes ":make" to
11837 fail. (Juergen Salk)
11838Solution: Use $TCL_DEFS from the Tcl config script to obtain the required
11839 compile flags for using the thread library.
11840Files: src/auto/configure, src/configure.in
11841
11842Patch 6.2.290 (extra)
11843Problem: Mac: The mousewheel doesn't work.
11844Solution: Add mousewheel support. Also fix updating the thumb after a drag
11845 and then using another way to scroll. (Eckehard Berns)
11846Files: src/gui_mac.c
11847
11848Patch 6.2.291 (extra)
11849Problem: Mac: the plus button and close button don't do anything.
11850Solution: Make the plus button maximize the window and the close button
11851 close Vim. (Eckehard Berns)
11852Files: src/gui.c, src/gui_mac.c
11853
11854Patch 6.2.292
11855Problem: Motif: When removing GUI arguments from argv[] a "ps -ef" shows
11856 the last argument repeated.
11857Solution: Set argv[argc] to NULL. (Michael Jarvis)
11858Files: src/gui_x11.c
11859
11860Patch 6.2.293 (after 6.2.255)
11861Problem: GTK: A new item in a menu is put before the tearoff item.
11862Solution: Do increment the menu item index for non-popup menu items.
11863Files: src/gui_gtk.c
11864
11865Patch 6.2.294 (extra)
11866Problem: Mac: Cannot use modifiers with Space, Tab, Enter and Escape.
11867Solution: Handle all modifiers for these keys. (Eckehard Berns)
11868Files: src/gui_mac.c
11869
11870Patch 6.2.295
11871Problem: When in debug mode, receiving a message from a remote client
11872 causes a crash. Evaluating an expression causes Vim to wait for
11873 "cont" to be typed, without a prompt. (Hari Krishna Dara)
11874Solution: Disable debugging when evaluating an expression for a client.
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000011875 (Michael Geddes) Don't try reading into the typeahead buffer when
Bram Moolenaar071d4272004-06-13 20:20:40 +000011876 it may have been filled in another way.
11877Files: src/ex_getln.c, src/getchar.c, src/if_xcmdsrv.c, src/main.c,
11878 src/misc1.c, src/proto/getchar.pro, src/proto/main.pro,
11879 src/proto/os_unix.pro, src/proto/ui.pro, src/structs.h,
11880 src/os_unix.c, src/ui.c
11881
11882Patch 6.2.296 (extra)
11883Problem: Same as 6.2.295.
11884Solution: Extra files for patch 6.2.295.
11885Files: src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_win32.c,
11886 src/proto/os_amiga.pro, src/proto/os_msdos.pro,
11887 src/proto/os_riscos.pro, src/proto/os_win32.pro
11888
11889Patch 6.2.297 (after 6.2.232)
11890Problem: Cannot invoke Python commands recursively.
11891Solution: With Python 2.3 and later use the available mechanisms to invoke
11892 Python recursively. (Matthew Mueller)
11893Files: src/if_python.c
11894
11895Patch 6.2.298
11896Problem: A change always sets the '. mark and an insert always sets the '^
11897 mark, even when this is not wanted.
11898 Cannot go back to the position of older changes without undoing
11899 those changes.
11900Solution: Add the ":keepjumps" command modifier.
11901 Add the "g," and "g;" commands.
11902Files: runtime/doc/motion.txt, src/ex_cmds.h, src/ex_docmd.c, src/edit.c,
11903 src/mark.c, src/misc1.c, src/normal.c, src/proto/mark.pro,
11904 src/structs.h, src/undo.c
11905
11906Patch 6.2.299
11907Problem: Can only use one language for help files.
11908Solution: Add the 'helplang' option to select the preferred language(s).
11909 Make ":helptags" generate tags files for all languages.
11910Files: runtime/doc/options.txt, runtime/doc/various.txt, src/Makefile,
11911 src/ex_cmds.c, src/ex_cmds2.c, src/ex_cmds.h, src/ex_getln.c,
11912 src/normal.c, src/option.c, src/option.h, src/proto/ex_cmds.pro,
11913 src/proto/ex_cmds2.pro, src/proto/option.pro, src/structs.h,
11914 src/tag.c, src/vim.h
11915
11916Patch 6.2.300 (after 6.2.297)
11917Problem: Cannot build Python interface with Python 2.2 or earlier.
11918Solution: Add a semicolon.
11919Files: src/if_python.c
11920
11921Patch 6.2.301
11922Problem: The "select all" item from the popup menu doesn't work for Select
11923 mode.
11924Solution: Use the same commands as for the "Edit.select all" menu.
11925 (Benji Fisher)
11926Files: runtime/menu.vim
11927
11928Patch 6.2.302
11929Problem: Using "CTRL-O ." in Insert mode doesn't work properly. (Benji
11930 Fisher)
11931Solution: Restore "restart_edit" after an insert command that was not typed.
11932 Avoid waiting with displaying the mode when there is no text to be
11933 overwritten.
11934 Fix that "CTRL-O ." sometimes doesn't put the cursor back after
11935 the end-of-line. Only reset the flag that CTRL-O was used past
11936 the end of the line when restarting editing. Update "o_lnum"
11937 number when inserting text and "o_eol" is set.
11938Files: src/edit.c, src/normal.c
11939
11940Patch 6.2.303
11941Problem: Cannot use Unicode digraphs while 'encoding' is not Unicode.
11942Solution: Convert the character from Unicode to 'encoding' when needed.
11943 Use the Unicode digraphs for the Macintosh. (Eckehard Berns)
11944Files: src/digraph.c
11945
11946Patch 6.2.304 (extra, after 6.2.256)
11947Problem: Mac: No proper support for 'encoding'. Conversion without iconv()
11948 is not possible.
11949Solution: Convert input from 'termencoding' to 'encoding'. Add
11950 mac_string_convert(). Convert text for the clipboard when needed.
11951 (Eckehard Berns)
11952Files: src/gui_mac.c, src/mbyte.c, src/structs.h, src/vim.h
11953
11954Patch 6.2.305 (after 6.2.300)
11955Problem: Win32: Cannot build Python interface with Python 2.3. (Ajit
11956 Thakkar)
11957Solution: Add two functions to the dynamic loading feature.
11958Files: src/if_python.c
11959
11960Patch 6.2.306 (extra)
11961Problem: Win32: Building console version with BCC 5.5 gives a warning for
11962 get_cmd_args() prototype missing. (Ajit Thakkar)
11963Solution: Don't build os_w32exe.c for the console version.
11964Files: src/Make_bc5.mak
11965
11966Patch 6.2.307 (after 6.2.299)
11967Problem: Installing help files fails.
11968Solution: Expand wildcards for translated help files separately.
11969Files: src/Makefile
11970
11971Patch 6.2.308
11972Problem: Not all systems have "whoami", resulting in an empty user name.
11973Solution: Use "logname" when possible, "whoami" otherwise. (David Boyce)
11974Files: src/Makefile
11975
11976Patch 6.2.309
11977Problem: "3grx" waits for two ESC to be typed. (Jens Paulus)
11978Solution: Append the ESC to the stuff buffer when redoing the "gr" insert.
11979Files: src/edit.c
11980
11981Patch 6.2.310
11982Problem: When setting 'undolevels' to -1, making a change and setting
11983 'undolevels' to a positive value an "undo list corrupt" error
11984 occurs. (Madoka Machitani)
11985Solution: Sync undo before changing 'undolevels'.
11986Files: src/option.c
11987
11988Patch 6.2.311 (after 6.2.298)
11989Problem: When making several changes in one line the changelist grows
11990 quickly. There is no error message for reaching the end of the
11991 changelist. Reading changelist marks from viminfo doesn't work
11992 properly.
11993Solution: Only make a new entry in the changelist when making a change in
11994 another line or 'textwidth' columns away. Add E662, E663 and E664
11995 error messages. Put a changelist mark from viminfo one position
11996 before the end.
11997Files: runtime/doc/motion.txt, src/mark.c, src/misc1.c, src/normal.c
11998
11999Patch 6.2.312 (after 6.2.299)
12000Problem: "make install" clears the screen when installing the docs.
12001Solution: Execute ":helptags" in silent mode.
12002Files: runtime/doc/Makefile
12003
12004Patch 6.2.313
12005Problem: When opening folds in a diff window, other diff windows no longer
12006 show the same text.
12007Solution: Sync the folds in diff windows.
12008Files: src/diff.c, src/fold.c, src/move.c, src/proto/diff.pro,
12009 src/proto/move.pro
12010
12011Patch 6.2.314
12012Problem: When 'virtualedit' is set "rx" may cause a crash with a blockwise
12013 selection and using "$". (Moritz Orbach)
12014Solution: Don't try replacing chars in a line that has no characters in the
12015 block.
12016Files: src/ops.c
12017
12018Patch 6.2.315
12019Problem: Using CTRL-C in a Visual mode mapping while 'insertmode' is set
12020 stops Vim from returning to Insert mode.
12021Solution: Don't reset "restart_edit" when a CTRL-C is found and 'insertmode'
12022 is set.
12023Files: src/normal.c
12024
12025Patch 6.2.316 (after 6.2.312)
12026Problem: "make install" tries connecting to the X server when installing
12027 the docs. (Stephen Thomas)
12028Solution: Add the "-X" argument.
12029Files: runtime/doc/Makefile
12030
12031Patch 6.2.317 (after 6.2.313)
12032Problem: When using "zi" in a diff window, other diff windows are not
12033 adjusted. (Richard Curnow)
12034Solution: Distribute a change in 'foldenable' to other diff windows.
12035Files: src/normal.c
12036
12037Patch 6.2.318
12038Problem: When compiling with _THREAD_SAFE external commands don't echo
12039 typed characters.
12040Solution: Don't set the terminal mode to TMODE_SLEEP when it's already at
12041 TMODE_COOK.
12042Files: src/os_unix.c
12043
12044Patch 6.2.319 (extra)
12045Problem: Building gvimext.dll with Mingw doesn't work properly.
12046Solution: Use gcc instead of dllwrap. Use long option names. (Alejandro
12047 Lopez-Valencia)
12048Files: src/GvimExt/Make_ming.mak
12049
12050Patch 6.2.320
12051Problem: Win32: Adding and removing the menubar resizes the Vim window.
12052 (Jonathon Merz)
12053Solution: Don't let a resize event change 'lines' unexpectedly.
12054Files: src/gui.c
12055
12056Patch 6.2.321
12057Problem: When using modeless selection, wrapping lines are not recognized,
12058 a line break is always inserted.
12059Solution: Add LineWraps[] to remember whether a line wrapped or not.
12060Files: src/globals.h, src/screen.c, src/ui.c
12061
12062Patch 6.2.322
12063Problem: With 'showcmd' set, after typing "dd" the next "d" may not be
12064 displayed. (Jens Paulus)
12065Solution: Redraw the command line after updating the screen, scrolling may
12066 have set "clear_cmdline".
12067Files: src/screen.c
12068
12069Patch 6.2.323
12070Problem: Win32: expanding "~/file" in an autocommand pattern results in
12071 backslashes, while this pattern should only have forward slashes.
12072Solution: Make expanding environment variables respect 'shellslash' and set
12073 p_ssl when expanding the autocommand pattern.
12074Files: src/fileio.c, src/misc1.c, src/proto/fileio.pro
12075
12076Patch 6.2.324 (extra)
12077Problem: Win32: when "vimrun.exe" has a path with white space, such as
12078 "Program Files", executing external commands may fail.
12079Solution: Put double quotes around the path to "vimrun".
12080Files: src/os_win32.c
12081
12082Patch 6.2.325
12083Problem: When $HOME includes a space, doing ":set tags=~/tags" doesn't
12084 work, the space is used to separate file names. (Brett Stahlman)
12085Solution: Escape the space with a backslash.
12086Files: src/option.c
12087
12088Patch 6.2.326
12089Problem: ":windo set syntax=foo" doesn't work. (Tim Chase)
12090Solution: Don't change 'eventignore' for ":windo".
12091Files: src/ex_cmds2.c
12092
12093Patch 6.2.327
12094Problem: When formatting text all marks in the formatted lines are lost.
12095 A word is not joined to a previous line when this would be
12096 possible. (Mikolaj Machowski)
12097Solution: Try to keep marks in the same position as much as possible.
12098 Also keep mark positions when joining lines.
12099 Start auto-formatting in the previous line when appropriate.
12100 Add the "gw" operator: Like "gq" but keep the cursor where it is.
12101Files: runtime/doc/change.txt, src/edit.c, src/globals.h, src/mark.c,
12102 src/misc1.c, src/normal.c, src/ops.c, src/proto/edit.pro,
12103 src/proto/mark.pro, src/proto/ops.pro, src/structs.h, src/vim.h
12104
12105Patch 6.2.328
12106Problem: XIM with GTK: It is hard to understand what XIM is doing.
12107Solution: Add xim_log() to log XIM events and help with debugging.
12108Files: src/mbyte.c
12109
12110Patch 6.2.329
12111Problem: ":=" does not work Vi compatible. (Antony Scriven)
12112Solution: Print the last line number instead of the current line. Don't
12113 print "line".
12114Files: src/ex_cmds.h, src/ex_docmd.c
12115
12116Patch 6.2.330 (extra, after 6.2.267)
12117Problem: Win32: Crash when tearing off a menu.
12118Solution: Terminate a string with a NUL. (Yasuhiro Matsumoto)
12119Files: src/gui_w32.c
12120
12121Patch 6.2.331 (after 6.2.327)
12122Problem: "gwap" leaves cursor in the wrong line.
12123Solution: Remember the cursor position before finding the ends of the
12124 paragraph.
12125Files: src/normal.c, src/ops.c, src/structs.h
12126
12127Patch 6.2.332 (extra)
12128Problem: Amiga: Compile error for string array. Compiling the Amiga GUI
12129 doesn't work.
12130Solution: Use a char pointer instead. Move including "gui_amiga.h" to after
12131 including "vim.h". Add a semicolon. (Ali Akcaagac)
12132Files: src/gui_amiga.c, src/os_amiga.c
12133
12134Patch 6.2.333 (extra)
12135Problem: Win32: printing doesn't work with specified font charset.
12136Solution: Use the specified font charset. (Mike Williams)
12137Files: src/os_mswin.c
12138
12139Patch 6.2.334 (extra, after 6.2.296)
12140Problem: Win32: evaluating client expression in debug mode requires typing
12141 "cont".
12142Solution: Use eval_client_expr_to_string().
12143Files: src/os_mswin.c
12144
12145Patch 6.2.335
12146Problem: The ":sign" command cannot be followed by another command.
12147Solution: Add TRLBAR to the command flags.
12148Files: src/ex_cmds.h
12149
12150Patch 6.2.336 (after 6.2.327)
12151Problem: Mixup of items in an expression.
12152Solution: Move "== NUL" to the right spot.
12153Files: src/edit.c
12154
12155Patch 6.2.337 (extra, after 6.2.319)
12156Problem: Building gvimext.dll with Mingw doesn't work properly.
12157Solution: Fix white space and other details. (Alejandro Lopez-Valencia)
12158Files: src/GvimExt/Make_ming.mak
12159
12160Patch 6.2.338 (after 6.2.331)
12161Problem: When undoing "gwap" the cursor is always put at the start of the
12162 paragraph. When undoing auto-formatting the cursor may be above
12163 the change.
12164Solution: Try to move the cursor back to where it was or to the first line
12165 that actually changed.
12166Files: src/normal.c, src/ops.c, src/undo.c
12167
12168Patch 6.2.339
12169Problem: Crash when using many different highlight groups and a User
12170 highlight group. (Juergen Kraemer)
12171Solution: Do not use the sg_name_u pointer when it is NULL. Also simplify
12172 use of the highlight group table.
12173Files: src/syntax.c
12174
12175Patch 6.2.340
12176Problem: ":reg" doesn't show the actual contents of the clipboard if it was
12177 filled outside of Vim. (Stuart MacDonald)
12178Solution: Obtain the clipboard contents before displaying it.
12179Files: src/ops.c
12180
12181Patch 6.2.341 (extra)
12182Problem: Win32: When the path to diff.exe contains a space and using the
12183 vimrc generated by the install program, diff mode does not work.
12184Solution: Put the first double quote just before the space instead of before
12185 the path.
12186Files: src/dosinst.c
12187
12188Patch 6.2.342 (extra)
12189Problem: Win32: macros are not always used as expected.
12190Solution: Define WINVER to 0x0400 instead of 0x400. (Alejandro
12191 Lopez-Valencia)
12192Files: src/Make_bc5.mak, src/Make_cyg.mak, src/Make_mvc.mak
12193
12194Patch 6.2.343
12195Problem: Title doesn't work with some window managers. X11: Setting the
12196 text property for the window title is hard coded.
12197Solution: Use STRING format when possible. Use the UTF-8 function when
12198 it's available and 'encoding' is utf-8. Use
12199 XStringListToTextProperty(). Do the same for the icon name.
12200 (David Harrison)
12201Files: src/os_unix.c
12202
12203Patch 6.2.344 (extra, after 6.2.337)
12204Problem: Cannot build gvimext.dll with MingW on Linux.
12205Solution: Add support for cross compiling. (Ronald Hoellwarth)
12206Files: src/GvimExt/Make_ming.mak
12207
12208Patch 6.2.345 (extra)
12209Problem: Win32: Copy/paste between two Vims fails if 'encoding' is not set
12210 properly or there are illegal bytes.
12211Solution: Use a raw byte format. Always set it when copying. When pasting
12212 use the raw format if 'encoding' is the same.
12213Files: src/os_mswin.c, src/os_win16.c, src/os_win32.c, src/vim.h
12214
12215Patch 6.2.346
12216Problem: Win32 console: After using "chcp" Vim does not detect the
12217 different codepage.
12218Solution: Use GetConsoleCP() and when it is different from GetACP() set
12219 'termencoding'.
12220Files: src/option.c
12221
12222Patch 6.2.347 (extra)
12223Problem: Win32: XP theme support is missing.
12224Solution: Add a manifest and refer to it from the resource file. (Michael
12225 Wookey)
12226Files: Makefile, src/gvim.exe.mnf, src/vim.rc
12227
12228Patch 6.2.348
12229Problem: Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
12230 default value doesn't contain parenthesis.
12231Solution: Temporarily add '(' and ')' to 'isfname' when expanding file name
12232 arguments.
12233Files: src/main.c
12234
12235Patch 6.2.349
12236Problem: Finding a match using 'matchpairs' may cause a crash.
12237 'matchpairs' is not used for 'showmatch'.
12238Solution: Don't look past the NUL in 'matchpairs'. Use 'matchpairs' for
12239 'showmatch'. (Dave Olszewkski)
12240Files: src/misc1.c, src/normal.c, src/proto/search.pro, src/search.c
12241
12242Patch 6.2.350
12243Problem: Not enough info about startup timing.
12244Solution: Add a few more TIME_MSG() calls.
12245Files: src/main.c
12246
12247Patch 6.2.351
12248Problem: Win32: $HOME may be set to %USERPROFILE%.
12249Solution: Expand %VAR% at the start of $HOME.
12250Files: src/misc1.c
12251
12252Patch 6.2.352 (after 6.2.335)
12253Problem: ":sign texthl=||" does not work.
12254Solution: Remove the check for a following command. Give an error for extra
12255 arguments after "buff=1".
12256Files: src/ex_cmds.c, src/ex_cmds.h
12257
12258Patch 6.2.353 (extra)
12259Problem: Win32: Supported server name length is limited. (Paul Bossi)
12260Solution: Use MAX_PATH instead of 25.
12261Files: src/os_mswin.c
12262
12263Patch 6.2.354 (extra)
12264Problem: Win32: When the mouse pointer is on a tear-off menu it is hidden
12265 when typing but is not redisplayed when moved. (Markx Hackmann)
12266Solution: Handle the pointer move event for the tear-off menu window.
12267Files: src/gui_w32.c
12268
12269Patch 6.2.355 (after 6.2.303)
12270Problem: When 'encoding' is a double-byte encoding different from the
12271 current locale, the width of characters is not correct.
12272 Possible failure and memory leak when using iconv, Unicode
12273 digraphs and 'encoding' is not "utf-8".
12274Solution: Use iconv() to discover the actual width of characters.
12275 Add the "vc_fail" field to vimconv_T.
12276 When converting a digraph, init the conversion type to NONE and
12277 cleanup afterwards.
12278Files: src/digraph.c, src/mbyte.c, src/structs.h
12279
12280Patch 6.2.356
12281Problem: When using a double-byte 'encoding' and 'selection' is
12282 "exclusive", "vy" only yanks the first byte of a double-byte
12283 character. (Xiangjiang Ma)
12284Solution: Correct the column in unadjust_for_sel() to position on the first
12285 byte, always include the trailing byte of the selected text.
12286Files: src/normal.c
12287
12288Patch 6.2.357 (after 6.2.321)
12289Problem: Memory leak when resizing the Vim window.
12290Solution: Free the LineWraps array.
12291Files: src/screen.c
12292
12293Patch 6.2.358 (after 6.2.299)
12294Problem: Memory leak when using ":help" and the language doesn't match.
12295Solution: Free the array with matching tags.
12296Files: src/ex_cmds.c
12297
12298Patch 6.2.359 (after 6.2.352)
12299Problem: Compiler warning for long to int type cast.
12300Solution: Add explicit type cast.
12301Files: src/ex_cmds.c
12302
12303Patch 6.2.360
12304Problem: "100|" in an empty line results in a ruler "1,0-100". (Pavol
12305 Juhas)
12306Solution: Recompute w_virtcol if the target column was not reached.
12307Files: src/misc2.c
12308
12309Patch 6.2.361 (extra)
12310Problem: Win32: Run gvim, ":set go-=m", use Alt-Tab, keep Alt pressed while
12311 pressing Esc, then release Alt: Cursor disappears and typing a key
12312 causes a beep. (Hari Krishna Dara)
12313Solution: Don't ignore the WM_SYSKEYUP event when the menu is disabled.
12314Files: src/gui_w32.c
12315
12316Patch 6.2.362 (extra, after 6.2.347)
12317Problem: Win32: The manifest causes Gvim not to work. (Dave Roberts)
12318Solution: Change "x86" to "X86". (Serge Pirotte)
12319Files: src/gvim.exe.mnf
12320
12321Patch 6.2.363
12322Problem: In an empty file with 'showmode' off, "i" doesn't change the ruler
12323 from "0-1" to "1". Typing "x<BS>" does show "1", but then <Esc>
12324 doesn't make it "0-1" again. Same problem for ruler in
12325 statusline. (Andrew Pimlott)
12326Solution: Remember the "empty line" flag with Insert mode and'ed to it.
12327Files: src/screen.c
12328
12329Patch 6.2.364
12330Problem: HTML version of the documentation doesn't mention the encoding,
12331 which is a problem for mbyte.txt.
12332Solution: Adjust the awk script. (Ilya Sher)
12333Files: runtime/doc/makehtml.awk
12334
12335Patch 6.2.365
12336Problem: The configure checks for Perl and Python may add compile and link
12337 arguments that break building Vim.
12338Solution: Do a sanity check: try building with the arguments.
12339Files: src/auto/configure, src/configure.in
12340
12341Patch 6.2.366
12342Problem: When the GUI can't start because no valid font is found, there is
12343 no error message. (Ugen)
12344Solution: Add an error message.
12345Files: src/gui.c
12346
12347Patch 6.2.367
12348Problem: Building the help tags file while installing may fail if there is
12349 another Vim in $PATH.
12350Solution: Specify the just installed Vim executable. (Gordon Prieur)
12351Files: src/Makefile
12352
12353Patch 6.2.368
12354Problem: When 'autochdir' is set, closing a window doesn't change to the
12355 directory of the new current window. (Salman Halim)
12356Solution: Handle 'autochdir' always when a window becomes the current one.
12357Files: src/window.c
12358
12359Patch 6.2.369
12360Problem: Various memory leaks: when using globpath(), when searching for
12361 help tags files, when defining a function inside a function, when
12362 giving an error message through an exception, for the final "."
12363 line in ":append", in expression "cond ? a : b" that fails and for
12364 missing ")" in an expression. Using NULL pointer when adding
12365 first user command and for pointer computations with regexp.
12366 (tests by Dominique Pelle)
12367Solution: Fix the leaks by freeing the allocated memory. Don't use the
12368 array of user commands when there are no entries. Use a macro
12369 instead of a function call for saving and restoring regexp states.
12370Files: src/eval.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
12371 src/misc2.c, src/regexp.c, src/screen.c, src/tag.c
12372
12373Patch 6.2.370 (extra, after6.2.341)
12374Problem: Win32: When the path to diff.exe contains a space and using the
12375 vimrc generated by the install program, diff mode may not work.
12376 (Alejandro Lopez-Valencia)
12377Solution: Do not use double quotes for arguments that do not have a space.
12378Files: src/dosinst.c
12379
12380Patch 6.2.371
12381Problem: When 'virtualedit' is set and there is a Tab before the next "x",
12382 "dtx" does not delete the whole Tab. (Ken Hashishi)
12383Solution: Move the cursor to the last position of the Tab. Also for
12384 "df<Tab>".
12385Files: src/normal.c
12386
12387Patch 6.2.372
12388Problem: When using balloon evaluation, no value is displayed for members
12389 of structures and items of an array.
12390Solution: Include "->", "." and "[*]" in the expression.
12391Files: src/gui_beval.c, src/normal.c, src/vim.h
12392
12393Patch 6.2.373
12394Problem: When 'winminheight' is zero and a window is reduced to zero
12395 height, the ruler always says "Top" instead of the cursor
12396 position. (Antoine J. Mechelynck)
12397Solution: Don't recompute w_topline for a zero-height window.
12398Files: src/window.c
12399
12400Patch 6.2.374
12401Problem: ":echo "hello" | silent normal n" removes the "hello" message.
12402 (Servatius Brandt)
12403Solution: Don't echo the search string when ":silent" was used. Also don't
12404 show the mode. In general: don't clear to the end of the screen.
12405Files: src/gui.c, src/message.c, src/os_unix.c, src/proto/message.pro,
12406 src/screen.c, src/search.c, src/window.c
12407
12408Patch 6.2.375
12409Problem: When changing 'guioptions' the hit-enter prompt may be below the
12410 end of the Vim window.
12411Solution: Call screen_alloc() before showing the prompt.
12412Files: src/message.c
12413
12414Patch 6.2.376
12415Problem: Win32: Ruby interface cannot be dynamically linked with Ruby 1.6.
12416Solution: Add #ifdefs around use of rb_w32_snprintf(). (Benoît Cerrina)
12417Files: src/if_ruby.c
12418
12419Patch 6.2.377 (after 6.2.372)
12420Problem: Compiler warnings for signed/unsigned compare. (Michael Wookey)
12421Solution: Add type cast.
12422Files: src/normal.c
12423
12424Patch 6.2.378 (extra, after 6.2.118)
12425Problem: Mac: cannot build with Project Builder.
12426Solution: Add remove_tail_with_ext() to locate and remove the "build"
12427 directory from the runtime path. Include os_unix.c when needed.
12428 (Dany St Amant)
12429Files: src/misc1.c, src/os_macosx.c, src/vim.h
12430
12431Patch 6.2.379
12432Problem: Using ":mkvimrc" in the ":options" window sets 'bufhidden' to
12433 "delete". (Michael Naumann)
12434Solution: Do not add buffer-specific option values to a global vimrc file.
12435Files: src/option.c
12436
12437Patch 6.2.380 (extra)
12438Problem: DOS: "make test" fails when running it again. Can't "make test"
12439 with Borland C.
12440Solution: Make sure ".out" files are deleted when they get in the way. Add
12441 a "test" target to the Borland C Makefile.
12442Files: src/Make_bc5.mak, src/testdir/Make_dos.mak
12443
12444Patch 6.2.381
12445Problem: Setting 'fileencoding' to a comma separated list (confusing it
12446 with 'fileencodings') does not result in an error message.
12447 Setting 'fileencoding' in an empty file marks it as modified.
12448 There is no "+" in the title after setting 'fileencoding'.
12449Solution: Check for a comma in 'fileencoding'. Only consider a non-empty
12450 file modified by changing 'fileencoding'. Update the title after
12451 changing 'fileencoding'.
12452Files: src/option.c
12453
12454Patch 6.2.382
12455Problem: Running "make test" puts marks from test files in viminfo.
12456Solution: Specify a different viminfo file to use.
12457Files: src/testdir/test15.in, src/testdir/test49.in
12458
12459Patch 6.2.383
12460Problem: ":hi foo term='bla" crashes Vim. (Antony Scriven)
12461Solution: Check that the closing ' is there.
12462Files: src/syntax.c
12463
12464Patch 6.2.384
12465Problem: ":menu a.&b" ":unmenu a.b" only works if "&b" isn't translated.
12466Solution: Also compare the names without '&' characters.
12467Files: src/menu.c
12468
12469Patch 6.2.385 (extra)
12470Problem: Win32: forward_slash() and trash_input_buf() are undefined when
12471 compiling with small features. (Ajit Thakkar)
12472Solution: Change the #ifdefs for forward_slash(). Don't call
12473 trash_input_buf() if the input buffer isn't used.
12474Files: src/fileio.c, src/os_win32.c
12475
12476Patch 6.2.386
12477Problem: Wasting time trying to read marks from the viminfo file for a
12478 buffer without a name.
12479Solution: Skip reading marks when the buffer has no name.
12480Files: src/fileio.c
12481
12482Patch 6.2.387
12483Problem: There is no highlighting of translated items in help files.
12484Solution: Search for a "help_ab.vim" syntax file when the help file is
12485 called "*.abx". Also improve the help highlighting a bit.
12486Files: runtime/syntax/help.vim
12487
12488Patch 6.2.388
12489Problem: GTK: When displaying some double-width characters they are drawn
12490 as single-width, because of conversion to UTF-8.
12491Solution: Check the width that GTK uses and add a space if it's one instead
12492 of two.
12493Files: src/gui_gtk_x11.c
12494
12495Patch 6.2.389
12496Problem: When working over a slow connection, it's very annoying that the
12497 last line is partly drawn and then cleared for every change.
12498Solution: Don't redraw the bottom line if no rows were inserted or deleted.
12499 Don't draw the line if we know "@" lines will be used.
12500Files: src/screen.c
12501
12502Patch 6.2.390
12503Problem: Using "r*" in Visual mode on multi-byte characters only replaces
12504 every other character. (Tyson Roberts)
12505Solution: Correct the cursor position after replacing each character.
12506Files: src/ops.c
12507
12508Patch 6.2.391 (extra)
12509Problem: The ":highlight" command is not tested.
12510Solution: Add a test script for ":highlight".
12511Files: src/testdir/Makefile, src/testdir/Make_amiga.mak,
12512 src/testdir/Make_dos.mak, src/testdir/Make_os2.mak,
12513 src/testdir/Make_vms.mms, src/testdir/test51.in,
12514 src/testdir/test51.ok
12515
12516Patch 6.2.392 (after 6.2.384)
12517Problem: Unused variable.
12518Solution: Remove "dlen".
12519Files: src/menu.c
12520
12521Patch 6.2.393
12522Problem: When using very long lines the viminfo file can become very big.
12523Solution: Add the "s" flag to 'viminfo': skip registers with more than the
12524 specified Kbyte of text.
12525Files: runtime/doc/options.txt, src/ops.c, src/option.c
12526
12527Patch 6.2.394 (after 6.2.391)
12528Problem: Test 51 fails on a terminal with 8 colors. (Tony Leneis)
12529Solution: Use "DarkBlue" instead of "Blue" to avoid the "bold" attribute.
12530Files: src/testdir/test51.in
12531
12532Patch 6.2.395
12533Problem: When using ":tag" or ":pop" the previous matching tag is used.
12534 But since the current file is different, the ordering of the tags
12535 may change.
12536Solution: Remember what the current buffer was for when re-using cur_match.
12537Files: src/edit.c, src/ex_cmds.c, src/proto/tag.pro, src/structs.h,
12538 src/tag.c
12539
12540Patch 6.2.396
12541Problem: When CTRL-T jumps to another file and an autocommand moves the
12542 cursor to the '" mark, don't end up on the right line. (Michal
12543 Malecki)
12544Solution: Set the line number after loading the file.
12545Files: src/tag.c
12546
12547Patch 6.2.397
12548Problem: When using a double-byte 'encoding' mapping <M-x> doesn't work.
12549 (Yasuhiro Matsumoto)
12550Solution: Do not set the 8th bit of the character but use a modifier.
12551Files: src/gui_gtk_x11.c, src/gui_x11.c, src/misc2.c
12552
12553Patch 6.2.398 (extra)
12554Problem: Win32 console: no extra key modifiers are supported.
12555Solution: Encode the modifiers into the input stream. Also fix that special
12556 keys are converted and stop working when 'tenc' is set. Also fix
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000012557 that when 'tenc' is initialized the input and output conversion is
Bram Moolenaar071d4272004-06-13 20:20:40 +000012558 not setup properly until 'enc' or 'tenc' is set.
12559Files: src/getchar.c, src/option.c, src/os_win32.c
12560
12561Patch 6.2.399
12562Problem: A ":set" command that fails still writes a message when it is
12563 inside a try/catch block.
12564Solution: Include all the text of the message in the error message.
12565Files: src/charset.c, src/option.c
12566
12567Patch 6.2.400
12568Problem: Can't compile if_xcmdsrv.c on HP-UX 11.0.
12569Solution: Include header file poll.h. (Malte Neumann)
12570Files: src/if_xcmdsrv.c
12571
12572Patch 6.2.401
12573Problem: When opening a buffer that was previously opened, Vim does not
12574 restore the cursor position if the first line starts with white
12575 space. (Gregory Margo)
12576Solution: Don't skip restoring the cursor position if it is past the blanks
12577 in the first line.
12578Files: src/buffer.c
12579
12580Patch 6.2.402
12581Problem: Mac: "make install" doesn't generate help tags. (Benji Fisher)
12582Solution: Generate help tags before copying the runtime files.
12583Files: src/Makefile
12584
12585Patch 6.2.403
12586Problem: ":@y" checks stdin if there are more commands to execute. This
12587 fails if stdin is not connected, e.g., when starting the GUI from
12588 KDE. (Ned Konz)
12589Solution: Only check for a next command if there still is typeahead.
12590Files: src/ex_docmd.c
12591
12592Patch 6.2.404
12593Problem: Our own function to determine width of Unicode characters may get
12594 outdated. (Markus Kuhn)
12595Solution: Use wcwidth() when it is available. Also use iswprint().
12596Files: src/auto/configure, src/configure.in, src/config.h.in, src/mbyte.c
12597
12598Patch 6.2.405
12599Problem: Cannot map zero without breaking the count before a command.
12600 (Benji Fisher)
12601Solution: Disable mapping zero when entering a count.
12602Files: src/getchar.c, src/globals.h, src/normal.c
12603
12604Patch 6.2.406
12605Problem: ":help \zs", ":help \@=" and similar don't find useful help.
12606Solution: Prepend "/\" to the arguments to find the desired help tag.
12607Files: src/ex_cmds.c
12608
12609Patch 6.2.407 (after 6.2.299)
12610Problem: ":help \@<=" doesn't find help.
12611Solution: Avoid that ":help \@<=" searches for the "<=" language.
12612Files: src/tag.c
12613
12614Patch 6.2.408
12615Problem: ":compiler" is not consistent: Sets local options and a global
12616 variable. (Douglas Potts) There is no error message when a
12617 compiler is not supported.
12618Solution: Use ":compiler!" to set a compiler globally, otherwise it's local
12619 to the buffer and "b:current_compiler" is used. Give an error
12620 when no compiler script could be found.
12621 Note: updated compiler plugins can be found at
12622 ftp://ftp.vim.org/pub/vim/runtime/compiler/
12623Files: runtime/compiler/msvc.vim, runtime/doc/quickfix.txt, src/eval.c,
12624 src/ex_cmds2.c
12625
12626Patch 6.2.409
12627Problem: The cursor ends up in the last column instead of after the line
12628 when doing "i//<Esc>o" with 'indentexpr' set to "cindent(v:lnum)".
12629 (Toby Allsopp)
12630Solution: Adjust the cursor as if in Insert mode.
12631Files: src/misc1.c
12632
12633Patch 6.2.410 (after 6.2.389)
12634Problem: In diff mode, when there are more filler lines than fit in the
12635 window, they are not drawn.
12636Solution: Check for filler lines when skipping to draw a line that doesn't
12637 fit.
12638Files: src/screen.c
12639
12640Patch 6.2.411
12641Problem: A "\n" inside a string is not seen as a line break by the regular
12642 expression matching. (Hari Krishna Dara)
12643Solution: Add the vim_regexec_nl() function for strings where "\n" is to be
12644 matched with a line break.
12645Files: src/eval.c, src/ex_eval.c, src/proto/regexp.c, src/regexp.c
12646
12647Patch 6.2.412
12648Problem: Ruby: "ruby << EOF" inside a function doesn't always work. Also
12649 for ":python", ":tcl" and ":perl".
12650Solution: Check for "<< marker" and skip until "marker" before checking for
12651 "endfunction".
12652Files: src/eval.c
12653
12654Patch 6.2.413 (after 6.2.411)
12655Problem: Missing prototype for vim_regexec_nl(). (Marcel Svitalsky)
12656Solution: Now really include the prototype.
12657Files: src/proto/regexp.pro
12658
12659Patch 6.2.414
12660Problem: The function used for custom completion of user commands cannot
12661 have <SID> to make it local. (Hari Krishna Dara)
12662Solution: Pass the SID of the script where the user command was defined on
12663 to the completion. Also clean up #ifdefs.
12664Files: src/ex_docmd.c, src/eval.c, src/ex_getln.c, src/structs.h
12665
12666Patch 6.2.415
12667Problem: Vim may crash after a sequence of events that change the window
12668 size. The window layout assumes a larger window than is actually
12669 available. (Servatius Brandt)
12670Solution: Invoke win_new_shellsize() from screenalloc() instead of from
12671 set_shellsize().
12672Files: src/screen.c, src/term.c
12673
12674Patch 6.2.416
12675Problem: Compiler warning for incompatible pointer.
12676Solution: Remove the "&" in the call to poll(). (Xavier de Gaye)
12677Files: src/os_unix.c
12678
12679Patch 6.2.417 (after 6.2.393)
12680Problem: Many people forget that the '"' item in 'viminfo' needs to be
12681 preceded with a backslash,
12682Solution: Add '<' as an alias for the '"' item.
12683Files: runtime/doc/options.txt, src/ops.c, src/option.c
12684
12685Patch 6.2.418
12686Problem: Using ":nnoremap <F12> :echo "cheese" and ":cabbr cheese xxx":
12687 when pressing <F12> still uses the abbreviation. (Hari Krishna)
12688Solution: Also apply "noremap" to abbreviations.
12689Files: src/getchar.c
12690
12691Patch 6.2.419 (extra)
12692Problem: Win32: Cannot open the Vim window inside another application.
12693Solution: Add the "-P" argument to specify the window title of the
12694 application to run inside. (Zibo Zhao)
12695Files: runtime/doc/starting.txt, src/main.c, src/gui_w32.c,
12696 src/gui_w48.c, src/if_ole.cpp, src/os_mswin.c,
12697 src/proto/gui_w32.pro
12698
12699Patch 6.2.420
12700Problem: Cannot specify a file to be edited in binary mode without setting
12701 the global value of the 'binary' option.
12702Solution: Support ":edit ++bin file".
12703Files: runtime/doc/editing.txt, src/buffer.c, src/eval.c, src/ex_cmds.h,
12704 src/ex_docmd.c, src/fileio.c, src/misc2.c
12705
12706Patch 6.2.421
12707Problem: Cannot set the '[ and '] mark, which may be necessary when an
12708 autocommand simulates reading a file.
12709Solution: Allow using "m[" and "m]".
12710Files: runtime/doc/motion.txt, src/mark.c
12711
12712Patch 6.2.422
12713Problem: In CTRL-X completion messages the "/" makes them less readable.
12714Solution: Remove the slashes. (Antony Scriven)
12715Files: src/edit.c
12716
12717Patch 6.2.423
12718Problem: ":vertical wincmd ]" does not split vertically.
12719Solution: Add "postponed_split_flags".
12720Files: src/ex_docmd.c, src/globals.h, src/if_cscope.c, src/tag.c
12721
12722Patch 6.2.424
12723Problem: A BufEnter autocommand that sets an option stops 'mousefocus' from
12724 working in Insert mode (Normal mode is OK). (Gregory Seidman)
12725Solution: In the Insert mode loop invoke gui_mouse_correct() when needed.
12726Files: src/edit.c
12727
12728Patch 6.2.425
12729Problem: Vertical split and command line window: can only drag status line
12730 above the cmdline window on the righthand side, not lefthand side.
12731Solution: Check the status line row instead of the window pointer.
12732Files: src/ui.c
12733
12734Patch 6.2.426
12735Problem: A syntax region end match with a matchgroup that includes a line
12736 break only highlights the last line with matchgroup. (Gary
12737 Holloway)
12738Solution: Also use the line number of the position where the region
12739 highlighting ends.
12740Files: src/syntax.c
12741
12742Patch 6.2.427 (extra)
12743Problem: When pasting a lot of text in a multi-byte encoding, conversion
12744 from 'termencoding' to 'encoding' may fail for some characters.
12745 (Kuang-che Wu)
12746Solution: When there is an incomplete byte sequence at the end of the read
12747 text keep it for the next time.
12748Files: src/mbyte.c, src/os_amiga.c, src/os_mswin.c, src/proto/mbyte.pro,
12749 src/proto/os_mswin.pro, src/ui.c
12750
12751Patch 6.2.428
12752Problem: The X11 clipboard supports the Vim selection for char/line/block
12753 mode, but since the encoding is not included can't copy/paste
12754 between two Vims with a different 'encoding'.
12755Solution: Add a new selection format that includes the 'encoding'. Perform
12756 conversion when necessary.
12757Files: src/gui_gtk_x11.c, src/ui.c, src/vim.h
12758
12759Patch 6.2.429
12760Problem: Unix: glob() doesn't work for a directory with a single quote in
12761 the name. (Nazri Ramliy)
12762Solution: When using the shell to expand, only put double quotes around
12763 spaces and single quotes, not the whole thing.
12764Files: src/os_unix.c
12765
12766Patch 6.2.430
12767Problem: BOM at start of a vim script file is not recognized and causes an
12768 error message.
12769Solution: Detect the BOM and skip over it. Also fix that after using
12770 ":scriptencoding" the iconv() file descriptor was not closed
12771 (memory leak).
12772Files: src/ex_cmds2.c
12773
12774Patch 6.2.431
12775Problem: When using the horizontal scrollbar, the scrolling is limited to
12776 the length of the cursor line.
12777Solution: Make the scroll limit depend on the longest visible line. The
12778 cursor is moved when necessary. Including the 'h' flag in
12779 'guioptions' disables this.
12780Files: runtime/doc/gui.txt, runtime/doc/options.txt, src/gui.c,
12781 src/misc2.c, src/option.h
12782
12783Patch 6.2.432 (after 6.2.430 and 6.2.431)
12784Problem: Lint warnings.
12785Solution: Add type casts.
12786Files: src/ex_cmds2.c, src/gui.c
12787
12788Patch 6.2.433
12789Problem: Translating "VISUAL" and "BLOCK" separately doesn't give a good
12790 result. (Alejandro Lopez Valencia)
12791Solution: Use a string for each combination.
12792Files: src/screen.c
12793
12794Patch 6.2.434 (after 6.2.431)
12795Problem: Compiler warning. (Salman Halim)
12796Solution: Add type casts.
12797Files: src/gui.c
12798
12799Patch 6.2.435
12800Problem: When there are vertically split windows the minimal Vim window
12801 height is computed wrong.
12802Solution: Use frame_minheight() to correctly compute the minimal height.
12803Files: src/window.c
12804
12805Patch 6.2.436
12806Problem: Running the tests changes the user's viminfo file.
12807Solution: In test 49 tell the extra Vim to use the test viminfo file.
12808Files: src/testdir/test49.vim
12809
12810Patch 6.2.437
12811Problem: ":mksession" always puts "set nocompatible" in the session file.
12812 This changes option settings. (Ron Aaron)
12813Solution: Add an "if" to only change 'compatible' when needed.
12814Files: src/ex_docmd.c
12815
12816Patch 6.2.438
12817Problem: When the 'v' flag is present in 'cpoptions', backspacing and then
12818 typing text again: one character too much is overtyped before
12819 inserting is done again.
12820Solution: Set "dollar_vcol" to the right column.
12821Files: src/edit.c
12822
12823Patch 6.2.439
12824Problem: GTK 2: Changing 'lines' may cause a mismatch between the window
12825 layout and the size of the window.
12826Solution: Disable the hack with force_shell_resize_idle().
12827Files: src/gui_gtk_x11.c
12828
12829Patch 6.2.440
12830Problem: When 'lazyredraw' is set the window title is still updated.
12831 The size of the Visual area and the ruler are displayed too often.
12832Solution: Postpone redrawing the window title. Only show the Visual area
12833 size when waiting for a character. Don't draw the ruler
12834 unnecessary.
12835Files: src/buffer.c, src/normal.c, src/screen.c
12836
12837Patch 6.2.441
12838Problem: ":unabbreviate foo " doesn't work, because of the trailing space,
12839 while an abbreviation with a trailing space is not possible. (Paul
12840 Jolly)
12841Solution: Accept a match with the lhs of an abbreviation without the
12842 trailing space.
12843Files: src/getchar.c
12844
12845Patch 6.2.442
12846Problem: Cannot manipulate the command line from a function.
12847Solution: Add getcmdline(), getcmdpos() and setcmdpos() functions and the
12848 CTRL-\ e command.
12849Files: runtime/doc/cmdline.txt, runtime/doc/eval.txt, src/eval.c
12850 src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
12851 src/proto/ops.pro
12852
12853Patch 6.2.443
12854Problem: With ":silent! echoerr something" you don't get the position of
12855 the error. emsg() only writes the message itself and returns.
12856Solution: Also redirect the position of the error.
12857Files: src/message.c
12858
12859Patch 6.2.444
12860Problem: When adding the 'c' flag to a ":substitute" command it may replace
12861 more times than without the 'c' flag. Happens for a match that
12862 starts with "\ze" (Marcel Svitalsk) and when using "\@<=" (Klaus
12863 Bosau).
12864Solution: Correct "prev_matchcol" when replacing the line. Don't replace
12865 the line when the pattern uses look-behind matching.
12866Files: src/ex_cmds.c, src/proto/regexp.pro, src/regexp.c
12867
12868Patch 6.2.445
12869Problem: Copying vimtutor to /tmp/something is not secure, a symlink may
12870 cause trouble.
12871Solution: Create a directory and create the file in it. Use "umask" to
12872 create the directory with mode 700. (Stefan Nordhausen)
12873Files: src/vimtutor
12874
12875Patch 6.2.446 (after 6.2.404)
12876Problem: Using library functions wcwidth() and iswprint() results in
12877 display problems for Hebrew characters. (Ron Aaron)
12878Solution: Disable the code to use the library functions, use our own.
12879Files: src/mbyte.c
12880
12881Patch 6.2.447 (after 6.2.440)
12882Problem: Now that the title is only updated when redrawing, it is no longer
12883 possible to show it while executing a function. (Madoka Machitani)
12884Solution: Make ":redraw" also update the title.
12885Files: src/ex_docmd.c
12886
12887Patch 6.2.448 (after 6.2.427)
12888Problem: Mac: conversion done when 'termencoding' differs from 'encoding'
12889 fails when pasting a longer text.
12890Solution: Check for an incomplete sequence at the end of the chunk to be
12891 converted. (Eckehard Berns)
12892Files: src/mbyte.c
12893
12894Patch 6.2.449 (after 6.2.431)
12895Problem: Get error messages when switching files.
12896Solution: Check for a valid line number when calculating the width of the
12897 horizontal scrollbar. (Helmut Stiegler)
12898Files: src/gui.c
12899
12900Patch 6.2.450
12901Problem: " #include" and " #define" are not recognized with the default
12902 option values for 'include' and 'defined'. (RG Kiran)
12903Solution: Adjust the default values to allow white space before the #.
12904Files: runtime/doc/options.txt, src/option.c
12905
12906Patch 6.2.451
12907Problem: GTK: when using XIM there are various problems, including setting
12908 'modified' and breaking undo at the wrong moment.
12909Solution: Add "xim_changed_while_preediting", "preedit_end_col" and
12910 im_is_preediting(). (Yasuhiro Matsumoto)
12911Files: src/ex_getln.c, src/globals.h, src/gui_gtk.c, src/gui_gtk_x11.c,
12912 src/mbyte.c, src/misc1.c, src/proto/mbyte.pro, src/screen.c,
12913 src/undo.c
12914
12915Patch 6.2.452
12916Problem: In diff mode, when DiffAdd and DiffText highlight settings are
12917 equal, an added line is highlighted with DiffChange. (Tom Schumm)
12918Solution: Remember the diff highlight type instead of the attributes.
12919Files: src/screen.c
12920
12921Patch 6.2.453
12922Problem: ":s/foo\|\nbar/x/g" does not replace two times in "foo\nbar".
12923 (Pavel Papushev)
12924Solution: When the pattern can match a line break also try matching at the
12925 NUL at the end of a line.
12926Files: src/ex_cmds.c, src/regexp.c
12927
12928Patch 6.2.454
12929Problem: ":let b:changedtick" doesn't work. (Alan Schmitt) ":let
12930 b:changedtick = 99" does not give an error message.
12931Solution: Add code to recognize ":let b:changedtick".
12932Files: src/eval.c
12933
12934Patch 6.2.455 (after 6.2.297)
12935Problem: In Python commands the current locale changes how certain Python
12936 functions work. (Eugene M. Minkovskii)
12937Solution: Set the LC_NUMERIC locale to "C" while executing a Python command.
12938Files: src/if_python.c
12939
12940Patch 6.2.456 (extra)
12941Problem: Win32: Editing a file by its Unicode name (dropping it on Vim or
12942 using the file selection dialog) doesn't work. (Yakov Lerner, Alex
12943 Jakushev)
12944Solution: Use wide character functions when file names are involved and
12945 convert from/to 'encoding' where needed.
12946Files: src/gui_w48.c, src/macros.h, src/memfile.c, src/memline.c,
12947 src/os_mswin.c, src/os_win32.c
12948
12949Patch 6.2.457 (after 6.2.244)
12950Problem: When 'encoding' is "utf-8" and writing text with chars above 0x80
12951 in latin1, conversion is wrong every 8200 bytes. (Oyvind Holm)
12952Solution: Correct the utf_ptr2len_check_len() function and fix the problem
12953 of displaying 0xf7 in utfc_ptr2len_check_len().
12954Files: src/mbyte.c
12955
12956Patch 6.2.458
12957Problem: When 'virtualedit' is set "$" doesn't move to the end of an
12958 unprintable character, causing "y$" not to include that character.
12959 (Fred Ma)
12960Solution: Set "coladd" to move the cursor to the end of the character.
12961Files: src/misc2.c
12962
12963Patch 6.2.459 (after 6.2.454)
12964Problem: Variable "b" cannot be written. (Salman Halim)
12965Solution: Compare strings properly.
12966Files: src/eval.c
12967
12968Patch 6.2.460 (extra, after 6.2.456)
12969Problem: Compiler warnings for missing prototypes.
12970Solution: Include the missing prototypes.
12971Files: src/proto/os_win32.pro
12972
12973Patch 6.2.461
12974Problem: After using a search command "x" starts putting single characters
12975 in the numbered registers.
12976Solution: Reset "use_reg_one" at the right moment.
12977Files: src/normal.c
12978
12979Patch 6.2.462
12980Problem: Finding a matching parenthesis does not correctly handle a
12981 backslash in a trailing byte.
12982Solution: Handle multi-byte characters correctly. (Taro Muraoka)
12983Files: src/search.c
12984
12985Patch 6.2.463 (extra)
12986Problem: Win32: An NTFS file system may contain files with extra info
12987 streams. The current method to copy them creates one and then
12988 deletes it again. (Peter Toennies) Also, only three streams with
12989 hard coded names are copied.
12990Solution: Use BackupRead() to check which info streams the original file
12991 contains and only copy these streams.
12992Files: src/os_win32.c
12993
12994Patch 6.2.464 (extra, after 6.2.427)
12995Problem: Amiga: Compilation error with gcc. (Ali Akcaagac)
12996Solution: Move the #ifdef outside of Read().
12997Files: src/os_amiga.c
12998
12999Patch 6.2.465
13000Problem: When resizing the GUI window the window manager sometimes moves it
13001 left of or above the screen. (Michael McCarty)
13002Solution: Check the window position after resizing it and move it onto the
13003 screen when it isn't.
13004Files: src/gui.c
13005
13006Patch 6.2.466 (extra, after 6.2.456)
13007Problem: Win32: Compiling with Borland C fails, and an un/signed warning.
13008Solution: Redefine wcsicmp() to wcscmpi() and add type casts. (Yasuhiro
13009 Matsumoto)
13010Files: src/os_win32.c
13011
13012Patch 6.2.467 (extra, after 6.2.463)
13013Problem: Win32: can't compile without multi-byte feature. (Ajit Thakkar)
13014Solution: Add #ifdefs around the info stream code.
13015Files: src/os_win32.c
13016
13017Patch 6.2.468
13018Problem: Compiler warnings for shadowed variables. (Matthias Mohr)
13019Solution: Delete superfluous variables and rename others.
13020Files: src/eval.c, src/ex_docmd.c, src/ex_eval.c, src/if_cscope.c,
13021 src/fold.c, src/option.c, src/os_unix.c, src/quickfix.c,
13022 src/regexp.c
13023
13024Patch 6.2.469 (extra, after 6.2.456)
13025Problem: Win32: Can't create swap file when 'encoding' differs from the
13026 active code page. (Kriton Kyrimis)
13027Solution: In enc_to_ucs2() terminate the converted string with a NUL
13028Files: src/os_mswin.c
13029
13030Patch 6.2.470
13031Problem: The name returned by tempname() may be equal to the file used for
13032 shell output when ignoring case.
13033Solution: Skip 'O' and 'I' in tempname().
13034Files: src/eval.c
13035
13036Patch 6.2.471
13037Problem: "-L/usr/lib" is used in the link command, even though it's
13038 supposed to be filtered out. "-lw" and "-ldl" are not
13039 automatically added when needed for "-lXmu". (Antonio Colombo)
13040Solution: Check for a space after the argument instead of before. Also
13041 remove "-R/usr/lib" if it's there. Check for "-lw" and "-ldl"
13042 before trying "-lXmu".
13043Files: src/auto/configure, src/configure.in, src/link.sh
13044
13045Patch 6.2.472
13046Problem: When using a FileChangedShell autocommand that changes the current
13047 buffer, a buffer exists that can't be wiped out.
13048 Also, Vim sometimes crashes when executing an external command
13049 that changes the buffer and a FileChangedShell autocommand is
13050 used. (Hari Krishna Dara)
13051 Users are confused by the warning for a file being changed outside
13052 of Vim.
13053Solution: Avoid that the window counter for a buffer is incremented twice.
13054 Avoid that buf_check_timestamp() is used recursively.
13055 Add a hint to look in the help for more info.
13056Files: src/ex_cmds.c, src/fileio.c
13057
13058Patch 6.2.473
13059Problem: Using CTRL-] in a help buffer without a name causes a crash.
13060Solution: Check for name to be present before using it. (Taro Muraoka)
13061Files: src/tag.c
13062
13063Patch 6.2.474 (extra, after 6.2.456)
13064Problem: When Vim is starting up conversion is done unnecessarily. Failure
13065 to find the runtime files on Windows 98. (Randall W. Morris)
13066Solution: Init enc_codepage negative, only use it when not negative.
13067 Don't use GetFileAttributesW() on Windows 98 or earlier.
13068Files: src/globals.h, src/gui_w32.c, src/gui_w48.c, src/os_mswin.c,
13069 src/os_win32.c
13070
13071Patch 6.2.475
13072Problem: Commands after "perl <<EOF" are parsed as Vim commands when they
13073 are not executed.
13074Solution: Properly skip over the perl commands.
13075Files: src/ex_docmd.c, src/ex_getln.c, src/if_perl.xs, src/if_python.c,
13076 src/if_ruby.c, src/if_tcl.c, src/misc2.c
13077
13078Patch 6.2.476
13079Problem: When reloading a hidden buffer changed outside of Vim and the
13080 current buffer is read-only, the reloaded buffer becomes
13081 read-only. (Hari Krishna Dara)
Bram Moolenaar69a7cb42004-06-20 12:51:53 +000013082Solution: Save the 'readonly' flag of the reloaded buffer instead of the
Bram Moolenaar071d4272004-06-13 20:20:40 +000013083 current buffer.
13084Files: src/fileio.c
13085
13086Patch 6.2.477
13087Problem: Using remote_send(v:servername, "\<C-V>") causes Vim to hang.
13088 (Yakov Lerner)
13089Solution: When the resulting string is empty don't set received_from_client.
13090Files: src/main.c
13091
13092Patch 6.2.478
13093Problem: Win32: "--remote file" fails changing directory if the current
13094 directory name starts with a single quote. (Iestyn Walters)
13095Solution: Add a backslash where it will be removed later.
13096Files: src/main.c, src/misc2.c, src/proto/misc2.pro
13097
13098Patch 6.2.479
13099Problem: The error message for errors during recovery goes unnoticed.
13100Solution: Avoid that the hit-enter prompt overwrites the message. Add a few
13101 lines to make the error stand out.
13102Files: src/main.c, src/message.c, src/memline.c
13103
13104Patch 6.2.480
13105Problem: NetBeans: Using negative index in array. backslash at end of
13106 message may cause Vim to crash. (Xavier de Gaye)
13107Solution: Initialize buf_list_used to zero. Check for trailing backslash.
13108Files: src/netbeans.c
13109
13110Patch 6.2.481
13111Problem: When writing a file it is not possible to specify that hard and/or
13112 symlinks are to be broken instead of preserved.
13113Solution: Add the "breaksymlink" and "breakhardlink" values to 'backupcopy'.
13114 (Simon Ekstrand)
13115Files: runtime/doc/options.txt, src/fileio.c, src/option.c, src/option.h
13116
13117Patch 6.2.482
13118Problem: Repeating insert of CTRL-K 1 S doesn't work. The superscript 1 is
13119 considered to be a digit. (Juergen Kraemer)
13120Solution: In vim_isdigit() only accept '0' to '9'. Use VIM_ISDIGIT() for
13121 speed where possible. Also add vim_isxdigit().
13122Files: src/buffer.c, src/charset.c, src/diff.c, src/digraph.c,
13123 src/edit.c, src/eval.c,, src/ex_cmds.c, src/ex_cmds2.c,
13124 src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c,
13125 src/if_xcmdsrv.c, src/farsi.c, src/fileio.c, src/fold.c,
13126 src/getchar.c, src/gui.c, src/if_cscope.c, src/macros.h,
13127 src/main.c, src/mark.c, src/mbyte.c, src/menu.c, src/misc1.c,
13128 src/misc2.c, src/normal.c, src/ops.c, src/option.c,
13129 src/proto/charset.pro, src/regexp.c, src/screen.c, src/search.c,
13130 src/syntax.c, src/tag.c, src/term.c, src/termlib.c
13131
13132Patch 6.2.483 (extra, after 6.2.482)
13133Problem: See 6.2.482.
13134Solution: Extra part of patch 6.2.482.
13135Files: src/gui_photon.c, src/gui_w48.c, src/os_msdos.c, src/os_mswin.c
13136
13137Patch 6.2.484
13138Problem: MS-Windows: With the included diff.exe, differences after a CTRL-Z
13139 are not recognized. (Peter Keresztes)
13140Solution: Write the files with unix fileformat and invoke diff with --binary
13141 if possible.
13142Files: src/diff.c
13143
13144Patch 6.2.485
13145Problem: A BufWriteCmd autocommand cannot know if "!" was used or not.
13146 (Hari Krishna Dara)
13147Solution: Add the v:cmdbang variable.
13148Files: runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
13149 src/fileio.c, src/vim.h
13150
13151Patch 6.2.486 (6.2.482)
13152Problem: Diff for eval.c is missing.
13153Solution: Addition to patch 6.2.482.
13154Files: src/eval.c
13155
13156Patch 6.2.487 (extra, after 6.2.456)
13157Problem: Compiler warnings for wrong prototype. (Alejandro Lopez Valencia)
13158Solution: Delete the prototype for Handle_WM_Notify().
13159Files: src/proto/gui_w32.pro
13160
13161Patch 6.2.488
13162Problem: Missing ")" in *.ch filetype detection.
13163Solution: Add the ")". (Ciaran McCreesh)
13164Files: runtime/filetype.vim
13165
13166Patch 6.2.489
13167Problem: When accidentally opening a session in Vim which has already been
13168 opened in another Vim there is a long row of ATTENTION prompts.
13169 Need to quit each of them to get out. (Robert Webb)
13170Solution: Add the "Abort" alternative to the dialog.
13171Files: src/memline.c
13172
13173Patch 6.2.490
13174Problem: With 'paragraph' it is not possible to use a single dot as a
13175 paragraph boundary. (Dorai Sitaram)
13176Solution: Allow using " " (two spaces) in 'paragraph' to match ".$" or
13177 ". $"
13178Files: src/search.c
13179
13180Patch 6.2.491
13181Problem: Decrementing a position doesn't take care of multi-byte chars.
13182Solution: Adjust the column for multi-byte characters. Remove mb_dec().
13183 (Yasuhiro Matsumoto)
13184Files: src/mbyte.c, src/misc2.c, src/proto/mbyte.pro
13185
13186Patch 6.2.492
13187Problem: When using ":redraw" while there is a message, the next ":echo"
13188 still causes text to scroll. (Yasuhiro Matsumoto)
13189Solution: Reset msg_didout and msg_col, so that after ":redraw" the next
13190 message overwrites an existing one.
13191Files: src/ex_docmd.c
13192
13193Patch 6.2.493
13194Problem: "@x" doesn't work when 'insertmode' is set. (Benji Fisher)
13195Solution: Put "restart_edit" in the typeahead buffer, so that it's used
13196 after executing the register contents.
13197Files: src/ops.c
13198
13199Patch 6.2.494
13200Problem: Using diff mode with two windows, when moving horizontally in
13201 inserted lines, a fold in the other window may open.
13202Solution: Compute the line number in the other window correctly.
13203Files: src/diff.c
13204
13205Patch 6.2.495 (extra, after 6.2.456)
13206Problem: Win32: The file dialog doesn't work on Windows 95.
13207Solution: Put the wide code of gui_mch_browse() in gui_mch_browseW() and use
13208 it only on Windows NT/2000/XP.
13209Files: src/gui_w32.c, src/gui_w48.c
13210
13211Patch 6.2.496
13212Problem: FreeBSD 4.x: When compiled with the pthread library (Python) a
13213 complicated pattern may cause Vim to crash. Catching the signal
13214 doesn't work.
13215Solution: When compiled with threads, instead of using the normal stacksize
13216 limit, use the size of the initial stack.
13217Files: src/auto/configure, src/config.h.in, src/configure.in,
13218 src/os_unix.c
13219
13220Patch 6.2.497 (extra)
13221Problem: Russian messages are only available in one encoding.
13222Solution: Convert the messages to MS-Windows codepages. (Vassily Ragosin)
13223Files: src/po/Makefile
13224
13225Patch 6.2.498
13226Problem: Non-latin1 help files are not properly supported.
13227Solution: Support utf-8 help files and convert them to 'encoding' when
13228 needed.
13229Files: src/fileio.c
13230
13231Patch 6.2.499
13232Problem: When writing a file and halting the system, the file might be lost
13233 when using a journalling file system.
13234Solution: Use fsync() to flush the file data to disk after writing a file.
13235 (Radim Kolar)
13236Files: src/fileio.c
13237
13238Patch 6.2.500 (extra)
13239Problem: The DOS/MS-Windows the installer doesn't use the --binary flag for
13240 diff.
13241Solution: Add --binary to the diff argument in MyDiff(). (Alejandro Lopez-
13242 Valencia)
13243Files: src/dosinst.c
13244
13245Patch 6.2.501
13246Problem: Vim does not compile with MorphOS.
13247Solution: Add a Makefile and a few changes to make Vim work with MorphOS.
13248 (Ali Akcaagac)
13249Files: runtime/doc/os_amiga.txt, src/INSTALLami.txt,
13250 src/Make_morphos.mak, src/memfile.c, src/term.c
13251
13252Patch 6.2.502
13253Problem: Building fails for generating message files.
13254Solution: Add dummy message files.
13255Files: src/po/ca.po, src/po/ru.po, src/po/sv.po
13256
13257Patch 6.2.503
13258Problem: Mac: Can't compile MacRoman conversions without the GUI.
13259Solution: Also link with the Carbon framework for the terminal version, for
13260 the MacRoman conversion functions. (Eckehard Berns)
13261 Remove -ltermcap from the GUI link command, it is not needed.
13262Files: src/auto/configure, src/Makefile, src/configure.in
13263
13264Patch 6.2.504
13265Problem: Various problems with 'cindent', among which that a
13266 list of variable declarations is not indented properly.
13267Solution: Fix the wrong indenting. Improve indenting of C++ methods.
13268 Add the 'i', 'b' and 'W' options to 'cinoptions'. (mostly by
13269 Helmut Stiegler)
13270 Improve indenting of preprocessor-continuation lines.
13271Files: runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
13272 src/testdir/test3.ok
13273
13274Patch 6.2.505
13275Problem: Help for -P argument is missing. (Ronald Hoellwarth)
13276Solution: Add the patch that was missing in 6.2.419.
13277Files: runtime/doc/starting.txt
13278
13279Patch 6.2.506 (extra)
13280Problem: Win32: When 'encoding' is a codepage then reading a utf-8 file
13281 only works when iconv is available. Writing a file in another
13282 codepage uses the wrong kind of conversion.
13283Solution: Use internal conversion functions. Enable reading and writing
13284 files with 'fileencoding' different from 'encoding' for all valid
13285 codepages and utf-8 without the need for iconv.
13286Files: src/fileio.c, src/testdir/Make_dos.mak, src/testdir/test52.in,
13287 src/testdir/test52.ok
13288
13289Patch 6.2.507
13290Problem: The ownership of the file with the password for the NetBeans
13291 connection is not checked. "-nb={file}" doesn't work for GTK.
13292Solution: Only accept the file when owned by the user and not accessible by
13293 others. Detect "-nb=" for GTK.
13294Files: src/netbeans.c, src/gui_gtk_x11.c
13295
13296Patch 6.2.508
13297Problem: Win32: "v:lang" does not show the current language for messages if
13298 it differs from the other locale settings.
13299Solution: Use the value of the $LC_MESSAGES environment variable.
13300Files: src/ex_cmds2.c
13301
13302Patch 6.2.509 (after 6.2.508)
13303Problem: Crash when $LANG is not set.
13304Solution: Add check for NULL pointer. (Ron Aaron)
13305Files: src/ex_cmds2.c
13306
13307Patch 6.2.510 (after 6.2.507)
13308Problem: Warning for pointer conversion.
13309Solution: Add a type cast.
13310Files: src/gui_gtk_x11.c
13311
13312Patch 6.2.511
13313Problem: Tags in Russian help files are in utf-8 encoding, which may be
13314 different from 'encoding'.
13315Solution: Use the "TAG_FILE_ENCODING" field in the tags file to specify the
13316 encoding of the tags. Convert help tags from 'encoding' to the
13317 tag file encoding when searching for matches, do the reverse when
13318 listing help tags.
13319Files: runtime/doc/tagsrch.txt, src/ex_cmds.c, src/tag.c
13320
13321Patch 6.2.512
13322Problem: Translating "\"\n" is useless. (Gerfried Fuchs)
13323Solution: Remove the _() around it.
13324Files: src/main.c, src/memline.c
13325
13326Patch 6.2.513 (after 6.2.507)
13327Problem: NetBeans: the check for owning the connection info file can be
13328 simplified. (Nikolay Molchanov)
13329Solution: Only check if the access mode is right.
13330Files: src/netbeans.c
13331
13332Patch 6.2.514
13333Problem: When a highlight/syntax group name contains invalid characters
13334 there is no warning.
13335Solution: Add an error for unprintable characters and a warning for other
13336 invalid characters.
13337Files: src/syntax.c
13338
13339Patch 6.2.515
13340Problem: When using the options window 'swapfile' is reset.
13341Solution: Use ":setlocal" instead of ":set".
13342Files: runtime/optwin.vim
13343
13344Patch 6.2.516
13345Problem: The sign column cannot be seen, looks like there are two spaces
13346 before the text. (Rob Retter)
13347Solution: Add the SignColumn highlight group.
13348Files: runtime/doc/options.txt, runtime/doc/sign.txt, src/option.c,
13349 src/screen.c, src/syntax.c, src/vim.h
13350
13351Patch 6.2.517
13352Problem: Using "r*" in Visual mode on multi-byte characters replaces
13353 too many characters. In Visual Block mode replacing with a
13354 multi-byte character doesn't work.
13355Solution: Adjust the operator end for the difference in byte length of the
13356 original and the replaced character. Insert all bytes of a
13357 multi-byte character, take care of double-wide characters.
13358Files: src/ops.c
13359
13360Patch 6.2.518
13361Problem: Last line of a window is not updated after using "J" and then "D".
13362 (Adri Verhoef)
13363Solution: When no line is found below a change that doesn't need updating,
13364 update all lines below the change.
13365Files: src/screen.c
13366
13367Patch 6.2.519
13368Problem: Mac: cannot read/write files in MacRoman format.
13369Solution: Do internal conversion from/to MacRoman to/from utf-8 and latin1.
13370 (Eckehard Berns)
13371Files: src/fileio.c
13372
13373Patch 6.2.520 (extra)
13374Problem: The NSIS installer is outdated.
13375Solution: Make it work with NSIS 2.0. Also include console executables for
13376 Win 95/98/ME and Win NT/2000/XP. Use LZWA compression. Use
13377 "/oname" to avoid having to rename files before running NSIS.
13378Files: Makefile, nsis/gvim.nsi
13379
13380Patch 6.2.521
13381Problem: When using silent Ex mode the "changing a readonly file" warning
13382 is omitted but the one second wait isn't. (Yakov Lerner)
13383Solution: Skip the delay when "silent_mode" is set.
13384Files: src/misc1.c
13385
13386Patch 6.2.522
13387Problem: GUI: when changing 'cmdheight' in the gvimrc file the window
13388 layout is messed up. (Keith Dart)
13389Solution: Skip updating the window layout when changing 'cmdheight' while
13390 still starting up.
13391Files: src/option.c
13392
13393Patch 6.2.523
13394Problem: When loading a session and aborting when a swap file already
13395 exists, the user is left with useless windows. (Robert Webb)
13396Solution: Load one file before creating the windows.
13397Files: src/ex_docmd.c
13398
13399Patch 6.2.524 (extra, after 6.2.520)
13400Problem: Win32: (un)installing gvimext.dll may fail if it was used.
13401 The desktop and start menu links are created for the current user
13402 instead of all users.
13403 Using the home directory as working directory for the links is a
13404 bad idea for multi-user systems.
13405 Cannot use Vim from the "Open With..." menu.
13406Solution: Force a reboot if necessary. (Alejandro Lopez-Valencia) Also use
13407 macros for the directory of the source and runtime files. Use
13408 "CSIDL_COMMON_*" instead of "CSIDL_*" when possible.
13409 Do not specify a working directory in the links.
13410 Add Vim to the "Open With..." menu. (Giuseppe Bilotta)
13411Files: nsis/gvim.nsi, src/dosinst.c, src/dosinst.h, src/uninstal.c
13412
13413Patch 6.2.525
13414Problem: When the history contains a very long line ":history" causes a
13415 crash. (Volker Kiefel)
13416Solution: Shorten the history entry to fit it in one line.
13417Files: src/ex_getln.c
13418
13419Patch 6.2.526
13420Problem: When s:lang is "ja" the Japanese menus are not used.
13421Solution: Add 'encoding' to the language when there is no charset.
13422Files: runtime/menu.vim
13423
13424Patch 6.2.527
13425Problem: The 2html script uses ":wincmd p", which breaks when using some
13426 autocommands.
13427Solution: Remember the window numbers and jump to them with ":wincmd w".
13428 Also add XHTML support. (Panagiotis Issaris)
13429Files: runtime/syntax/2html.vim
13430
13431Patch 6.2.528
13432Problem: NetBeans: Changes of the "~" command are not reported.
13433Solution: Call netbeans_inserted() after performing "~". (Gordon Prieur)
13434 Also change NetBeans debugging to append to the log file.
13435 Also fix that "~" in Visual block mode changes too much if there
13436 are multi-byte characters.
13437Files: src/nbdebug.c, src/normal.c, src/ops.c
13438
13439Patch 6.2.529 (extra)
13440Problem: VisVim only works for Admin. Doing it for one user doesn't work.
13441 (Alexandre Gouraud)
13442Solution: When registering the module fails, simply continue.
13443Files: src/VisVim/VisVim.cpp
13444
13445Patch 6.2.530
13446Problem: Warning for missing prototype on the Amiga.
13447Solution: Include time.h
13448Files: src/version.c
13449
13450Patch 6.2.531
13451Problem: In silent ex mode no messages are given, which makes debugging
13452 very difficult.
13453Solution: Do output messages when 'verbose' is set.
13454Files: src/message.c, src/ui.c
13455
13456Patch 6.2.532 (extra)
13457Problem: Compiling for Win32s with VC 4.1 doesn't work.
13458Solution: Don't use CP_UTF8 if it's not defined. Don't use CSIDL_COMMON*
13459 when not defined.
13460Files: src/dosinst.h, src/fileio.c
13461
13462Win32 console: After patch 6.2.398 Ex mode did not work. (Yasuhiro Matsumoto)
13463
13464Patch 6.3a.001
13465Problem: Win32: if testing for the "--binary" option fails, diff isn't used
13466 at all.
13467Solution: Handle the "ok" flag properly. (Yasuhiro Matsumoto)
13468Files: src/diff.c
13469
13470Patch 6.3a.002
13471Problem: NetBeans: An insert command from NetBeans beyond the end of a
13472 buffer crashes Vim. (Xavier de Gaye)
13473Solution: Use a local pos_T structure for the position.
13474Files: src/netbeans.c
13475
13476Patch 6.3a.003
13477Problem: E315 error with auto-formatting comments. (Henry Van Roessel)
13478Solution: Pass the line number to same_leader().
13479Files: src/ops.c
13480
13481Patch 6.3a.004
13482Problem: Test32 fails on Windows XP for the DJGPP version. Renaming
13483 test11.out fails.
13484Solution: Don't try renaming, create new files to use for the test.
13485Files: src/testdir/test32.in, src/testdir/test32.ok
13486
13487Patch 6.3a.005
13488Problem: ":checkpath!" does not use 'includeexpr'.
13489Solution: Use a file name that was found directly. When a file was not
13490 found and the located name is empty, use the rest of the line.
13491Files: src/search.c
13492
13493Patch 6.3a.006
13494Problem: "yip" moves the cursor to the first yanked line, but not to the
13495 first column. Looks like not all text was yanked. (Jens Paulus)
13496Solution: Move the cursor to the first column.
13497Files: src/search.c
13498
13499Patch 6.3a.007
13500Problem: 'cindent' recognizes "enum" but not "typedef enum".
13501Solution: Skip over "typedef" before checking for "enum". (Helmut Stiegler)
13502 Also avoid that searching for this item goes too far back.
13503Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
13504
13505Patch 6.3a.008 (extra)
13506Problem: Windows 98: Some of the wide functions are not implemented,
13507 resulting in file I/O to fail. This depends on what Unicode
13508 support is installed.
13509Solution: Handle the failure and fall back to non-wide functions.
13510Files: src/os_win32.c
13511
13512Patch 6.3a.009
13513Problem: Win32: Completion of filenames does not work properly when
13514 'encoding' differs from the active code page.
13515Solution: Use wide functions for expanding wildcards when appropriate.
13516Files: src/misc1.c
13517
13518Patch 6.3a.010 (extra)
13519Problem: Win32: Characters in the window title that do not appear in the
13520 active codepage are replaced by a question mark.
13521Solution: Use DefWindowProcW() instead of DefWindowProc() when possible.
13522Files: src/glbl_ime.cpp, src/globals.h, src/proto/gui_w16.pro,
13523 src/proto/gui_w32.pro, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c
13524
13525Patch 6.3a.011
13526Problem: Using the explorer plugin changes a local directory to the global
13527 directory.
13528Solution: Don't use ":chdir" to restore the current directory. Make
13529 "expand('%:p')" remove "/../" and "/./" items from the path.
13530Files: runtime/plugin/explorer.vim, src/eval.c, src/os_unix.c
13531
13532Patch 6.3a.012 (extra)
13533Problem: On Windows 98 the installer doesn't work, don't even get the "I
13534 agree" button. The check for the path ending in "vim" makes the
13535 browse dialog hard to use. The default path when no previous Vim
13536 is installed is "c:\vim" instead of "c:\Program Files\Vim".
13537Solution: Remove the background gradient command. Change the
13538 .onVerifyInstDir function to a leave function for the directory
13539 page. Don't let the install program default to c:\vim when no
13540 path could be found.
13541Files: nsis/gvim.nsi, src/dosinst.c
13542
13543Patch 6.3a.013 (extra)
13544Problem: Win32: Characters in the menu that are not in the active codepage
13545 are garbled.
13546Solution: Convert menu strings from 'encoding' to the active codepage.
13547Files: src/gui_w32.c, src/gui_w48.c
13548
13549Patch 6.3a.014
13550Problem: Using multi-byte text and highlighting in a statusline causes gaps
13551 to appear. (Helmut Stiegler)
13552Solution: Advance the column by text width instead of number of bytes. Add
13553 the vim_strnsize() function.
13554Files: src/charset.c, src/proto/charset.pro, src/screen.c
13555
13556Patch 6.3a.015
13557Problem: Using the "select all" menu item when 'insertmode' is set and
13558 clicking the mouse button doesn't return to Insert mode. The
13559 Buffers/Delete menu doesn't offer a choice to abandon a changed
13560 buffer. (Jens Paulus)
13561Solution: Don't use CTRL-\ CTRL-N. Add ":confirm" for the Buffers menu
13562 items.
13563Files: runtime/menu.vim
13564
13565Patch 6.3a.016
13566Problem: After cancelling the ":confirm" dialog the error message and
13567 hit-enter prompt may not be displayed properly.
13568Solution: Flush output after showing the dialog.
13569Files: src/message.c
13570
13571Patch 6.3a.017
13572Problem: servername() doesn't work when Vim was started with the "-X"
13573 argument or when the "exclude" in 'clipboard' matches the terminal
13574 name. (Robert Nowotniak)
13575Solution: Force connecting to the X server when using client-server
13576 commands.
13577Files: src/eval.c, src/globals.h, src/os_unix.c
13578
13579Patch 6.3a.018 (after 6.3a.017)
13580Problem: Compiler warning for return value of make_connection().
13581Solution: Use void return type.
13582Files: src/eval.c
13583
13584Patch 6.3a.019 (extra)
13585Problem: Win32: typing non-latin1 characters doesn't work.
13586Solution: Invoke _OnChar() directly to avoid that the argument is truncated
13587 to a byte. Convert the UTF-16 character to bytes according to
13588 'encoding' and ignore 'termencoding'. Same for _OnSysChar().
13589Files: src/gui_w32.c, src/gui_w48.c
13590
13591Patch 6.3a.020 (extra)
13592Problem: Missing support for AROS (AmigaOS reimplementation). Amiga GUI
13593 doesn't work.
13594Solution: Add AROS support. (Adam Chodorowski)
13595 Fix Amiga GUI problems. (Georg Steger, Ali Akcaagac)
13596Files: Makefile, src/Make_aros.mak, src/gui_amiga.c, src/gui_amiga.h,
13597 src/memfile.c, src/os_amiga.c, src/term.c
13598
13599Patch 6.3a.021 (after 6.3a.017)
13600Problem: Can't compile with X11 but without GUI.
13601Solution: Put use of "gui.in_use" inside an #ifdef.
13602Files: src/eval.c
13603
13604Patch 6.3a.022
13605Problem: When typing Tabs when 'softtabstop' is used and 'list' is set a
13606 tab is counted for two spaces.
13607Solution: Use the "L" flag in 'cpoptions' to tell whether a tab is counted
13608 as two spaces or as 'tabstop'. (Antony Scriven)
13609Files: runtime/doc/options.txt, src/edit.c
13610
13611Patch 6.3a.023
13612Problem: Completion on the command line doesn't handle backslashes
13613 properly. Only the tail of matches is shown, even when not
13614 completing filenames.
13615Solution: When turning the string into a pattern double backslashes. Don't
13616 omit the path when not expanding files or directories.
13617Files: src/ex_getln.c
13618
13619Patch 6.3a.024
13620Problem: The "save all" toolbar item fails for buffers that don't have a
13621 name. When using ":wa" or closing the Vim window and there are
13622 nameless buffers, browsing for a name may cause the name being
13623 given to the wrong buffer or not stored properly. ":browse" only
13624 worked for one file.
13625Solution: Use ":confirm browse" for "save all".
13626 Pass buffer argument to setfname(). Restore "browse" flag and
13627 "forceit" after doing the work for one file.
13628Files: runtime/menu.vim, src/buffer.c, src/ex_cmds.c, src/ex_cmds2.c,
13629 src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/memline.c,
13630 src/message.c, src/window.c, src/proto/buffer.pro,
13631 src/proto/ex_cmds2.pro, src/proto/memline.pro
13632
13633Patch 6.3a.025
13634Problem: Setting 'virtualedit' moves the cursor. (Benji Fisher)
13635Solution: Update the virtual column before using it.
13636Files: src/option.c
13637
13638Patch 6.3a.026 (extra, after 6.3a.008)
13639Problem: Editing files on Windows 98 doesn't work when 'encoding' is
13640 "utf-8" (Antoine Mechelynck)
13641 Warning for missing function prototype.
13642Solution: For all wide functions check if it failed because it is not
13643 implemented. Use ANSI function declaration for char_to_string().
13644Files: src/gui_w48.c, src/os_mswin.c, src/os_win32.c
13645
13646Patch 6.3a.027 (extra, after 6.3a.026)
13647Problem: Compiler warning for function argument.
13648Solution: Declare both char and WCHAR arrays.
13649Files: src/gui_w48.c
13650
13651Patch 6.3a.028
13652Problem: ":normal ." doesn't work inside a function, because redo is saved
13653 and restored. (Benji Fisher)
13654Solution: Make a copy of the redo buffer when executing a function.
13655Files: src/getchar.c
13656
13657Patch 6.3b.001 (extra)
13658Problem: Bcc 5: The generated auto/pathdef can't be compiled.
13659Solution: Fix the way quotes and backslashes are escaped.
13660Files: src/Make_bc5.mak
13661
13662Patch 6.3b.002
13663Problem: Win32: conversion during file write fails when a double-byte
13664 character is split over two writes.
13665Solution: Fix the conversion retry without a trailing byte. (Taro Muraoka)
13666Files: src/fileio.c
13667
13668Patch 6.3b.003 (extra)
13669Problem: Win32: When compiling with Borland C 5.5 and 'encoding' is "utf-8"
13670 then Vim can't open files under MS-Windows 98. (Antoine J.
13671 Mechelynck)
13672Solution: Don't use _wstat(), _wopen() and _wfopen() in this situation.
13673Files: src/os_mswin.c, src/os_win32.c
13674
13675Patch 6.3b.004
13676Problem: ":helpgrep" includes a trailing CR in the text line.
13677Solution: Remove the CR.
13678Files: src/quickfix.c
13679
13680Patch 6.3b.005
13681Problem: ":echo &g:ai" results in the local option value. (Salman Halim)
13682Solution: Pass the flags from find_option_end() to get_option_value().
13683Files: src/eval.c
13684
13685Patch 6.3b.006
13686Problem: When using "mswin.vim", CTRL-V in Insert mode leaves cursor before
13687 last pasted character. (Mathew Davis)
13688Solution: Use the same Paste() function as in menu.vim.
13689Files: runtime/mswin.vim
13690
13691Patch 6.3b.007
13692Problem: Session file doesn't restore view on windows properly. (Robert
13693 Webb)
13694Solution: Restore window sizes both before and after restoring the view, so
13695 that the view, cursor position and size are restored properly.
13696Files: src/ex_docmd.c
13697
13698Patch 6.3b.008
13699Problem: Using ":finally" in a user command doesn't always work. (Hari
13700 Krishna Dara)
13701Solution: Don't assume that using getexline() means the command was typed.
13702Files: src/ex_docmd.c
13703
13704Patch 6.3b.009 (extra)
13705Problem: Win32: When the -P argument is not found in a window title, there
13706 is no error message.
13707Solution: When the window can't be found give an error message and exit.
13708 Also use try/except to catch failing to open the MDI window.
13709 (Michael Wookey)
13710Files: src/gui_w32.c
13711
13712Patch 6.3b.010
13713Problem: Win32: Using the "-D" argument and expanding arguments may cause a
13714 hang, because the terminal isn't initialized yet. (Vince Negri)
13715Solution: Don't go into debug mode before the terminal is initialized.
13716Files: src/main.c
13717
13718Patch 6.3b.011
13719Problem: Using CTRL-\ e while obtaining an expression aborts the command
13720 line. (Hari Krishna Dara)
13721Solution: Insert the CTRL-\ e as typed.
13722Files: src/ex_getln.c
13723
13724Patch 6.3b.012 (after 6.3b.010)
13725Problem: Can't compile with tiny features. (Norbert Tretkowski)
13726Solution: Add #ifdefs.
13727Files: src/main.c
13728
13729Patch 6.3b.013
13730Problem: Loading a session file results in editing the wrong file in the
13731 first window when this is not the file at the current position in
13732 the argument list. (Robert Webb)
13733Solution: Check w_arg_idx_invalid to decide whether to edit a file.
13734Files: src/ex_docmd.c
13735
13736Patch 6.3b.014
13737Problem: ":runtime! foo*.vim" may using freed memory when a sourced script
13738 changes the value of 'runtimepath'.
13739Solution: Make a copy of 'runtimepath' when looping over the matches.
13740Files: src/ex_cmds2.c
13741
13742Patch 6.3b.015
13743Problem: Get lalloc(0) error when using "p" in Visual mode while
13744 'clipboard' contains "autoselect,unnamed". (Mark Wagonner)
13745Solution: Avoid allocating zero bytes. Obtain the clipboard when necessary.
13746Files: src/ops.c
13747
13748Patch 6.3b.016
13749Problem: When 'virtualedit' is used "x" doesn't delete the last character
13750 of a line that has as many characters as 'columns'. (Yakov Lerner)
13751Solution: When the cursor isn't moved let oneright() return FAIL.
13752Files: src/edit.c
13753
13754Patch 6.3b.017
13755Problem: Win32: "vim --remote-wait" doesn't exit when the server finished
13756 editing the file. (David Fishburn)
13757Solution: In the rrhelper plugin change backslashes to forward slashes and
13758 escape special characters.
13759Files: runtime/plugin/rrhelper.vim
13760
13761Patch 6.3b.018
13762Problem: The list of help files in the "local additions" table doesn't
13763 recognize utf-8 encoding. (Yasuhiro Matsumoto)
13764Solution: Recognize utf-8 characters.
13765Files: src/ex_cmds.c
13766
13767Patch 6.3b.019
13768Problem: When $VIMRUNTIME is not a full path name the "local additions"
13769 table lists all the help files.
13770Solution: Use fullpathcmp() instead of fnamecmp() to compare the directory
13771 names.
13772Files: src/ex_cmds.c
13773
13774Patch 6.3b.020
13775Problem: When using CTRL-^ when entering a search string, the item in the
13776 statusline that indicates the keymap is not updated. (Ilya
13777 Dogolazky)
13778Solution: Mark the statuslines for updating.
13779Files: src/ex_getln.c
13780
13781Patch 6.3b.021
13782Problem: The swapfile is not readable for others, the ATTENTION prompt does
13783 not show all info when someone else is editing the same file.
13784 (Marcel Svitalsky)
13785Solution: Use the protection of original file for the swapfile and set it
13786 after creating the swapfile.
13787Files: src/fileio.c
13788
13789Patch 6.3b.022
13790Problem: Using "4v" to select four times the old Visual area may put the
13791 cursor beyond the end of the line. (Jens Paulus)
13792Solution: Correct the cursor column.
13793Files: src/normal.c
13794
13795Patch 6.3b.023
13796Problem: When "3dip" starts in an empty line, white lines after the
13797 non-white lines are not deleted. (Jens Paulus)
13798Solution: Include the white lines.
13799Files: src/search.c
13800
13801Patch 6.3b.024
13802Problem: "2daw" does not delete leading white space like "daw" does. (Jens
13803 Paulus)
13804Solution: Include the white space when a count is used.
13805Files: src/search.c
13806
13807Patch 6.3b.025
13808Problem: Percentage in ruler isn't updated when a line is deleted. (Jens
13809 Paulus)
13810Solution: Check for a change in line count when deciding to update the ruler.
13811Files: src/screen.c, src/structs.h
13812
13813Patch 6.3b.026
13814Problem: When selecting "abort" at the ATTENTION prompt for a file that is
13815 already being edited Vim crashes.
13816Solution: Don't abort creating a new buffer when we really need it.
13817Files: src/buffer.c, src/vim.h
13818
13819Patch 6.3b.027
13820Problem: Win32: When enabling the menu in a maximized window, Vim uses more
13821 lines than what is room for. (Shizhu Pan)
13822Solution: When deciding to call shell_resized(), also compare the text area
13823 size with Rows and Columns, not just with screen_Rows and
13824 screen_Columns.
13825Files: src/gui.c
13826
13827Patch 6.3b.028
13828Problem: When in diff mode, setting 'rightleft' causes a crash. (Eddine)
13829Solution: Check for last column differently when 'rightleft' is set.
13830Files: src/screen.c
13831
13832Patch 6.3b.029
13833Problem: Win32: warning for uninitialized variable.
13834Solution: Initialize to zero.
13835Files: src/misc1.c
13836
13837Patch 6.3b.030
13838Problem: After Visually selecting four characters, changing it to other
13839 text, Visually selecting and yanking two characters: "." changes
13840 four characters, another "." changes two characters. (Robert Webb)
13841Solution: Don't store the size of the Visual area when redo is active.
13842Files: src/normal.c
13843
13844 vim:tw=78:ts=8:ft=help:norl: