blob: a5460771f58f1f66168b4c0344749c031e17cbef [file] [log] [blame]
Christian Brabandtb4ddc6c2024-01-02 16:51:11 +01001*version7.txt* For Vim version 9.1. Last change: 2021 May 17
Bram Moolenaar071d4272004-06-13 20:20:40 +00002
3
4 VIM REFERENCE MANUAL by Bram Moolenaar
5
Bram Moolenaar7a329912010-05-21 12:05:36 +02006 *vim7* *version-7.0* *version7.0*
Bram Moolenaar071d4272004-06-13 20:20:40 +00007Welcome to Vim 7! A large number of features has been added. This file
8mentions all the new items, changes to existing features and bug fixes
Bram Moolenaar8ea91232006-04-28 22:41:43 +00009since Vim 6.x. Use this command to see the version you are using: >
Bram Moolenaarb2956cd2005-01-27 14:42:53 +000010 :version
Bram Moolenaar071d4272004-06-13 20:20:40 +000011
12See |vi_diff.txt| for an overview of differences between Vi and Vim 7.0.
13See |version4.txt| for differences between Vim 3.x and Vim 4.x.
14See |version5.txt| for differences between Vim 4.x and Vim 5.x.
15See |version6.txt| for differences between Vim 5.x and Vim 6.x.
16
17INCOMPATIBLE CHANGES |incompatible-7|
18
19NEW FEATURES |new-7|
20
Bram Moolenaarbac234e2005-01-17 22:21:07 +000021Vim script enhancements |new-vim-script|
Bram Moolenaar60c78922005-03-20 22:40:14 +000022Spell checking |new-spell|
Bram Moolenaarf75a9632005-09-13 21:20:47 +000023Omni completion |new-omni-completion|
Bram Moolenaarfb670262005-06-05 22:06:27 +000024MzScheme interface |new-MzScheme|
Bram Moolenaar207f0092020-08-30 17:20:20 +020025Printing multibyte text |new-print-multibyte|
Bram Moolenaar17be7e62006-03-12 22:13:45 +000026Tab pages |new-tab-pages|
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +000027Undo branches |new-undo-branches|
Bram Moolenaar362e1a32006-03-06 23:29:24 +000028Extended Unicode support |new-more-unicode|
Bram Moolenaar17be7e62006-03-12 22:13:45 +000029More highlighting |new-more-highlighting|
Bram Moolenaar293ee4d2004-12-09 21:34:53 +000030Translated manual pages |new-manpage-trans|
Bram Moolenaar8fc061c2004-12-29 21:03:02 +000031Internal grep |new-vimgrep|
Bram Moolenaar87e25fd2005-07-27 21:13:01 +000032Scroll back in messages |new-scroll-back|
Bram Moolenaarea0cd362006-03-16 21:46:52 +000033Cursor past end of the line |new-onemore|
Bram Moolenaar4399ef42005-02-12 14:29:27 +000034POSIX compatibility |new-posix|
Bram Moolenaare2ac10d2005-03-07 23:26:06 +000035Debugger support |new-debug-support|
Bram Moolenaar0be6e642005-08-04 21:32:22 +000036Remote file explorer |new-netrw-explore|
Bram Moolenaar900b4d72005-12-12 22:05:50 +000037Define an operator |new-define-operator|
Bram Moolenaarade00832006-03-10 21:46:58 +000038Mapping to an expression |new-map-expression|
Bram Moolenaarb3656ed2006-03-20 21:59:49 +000039Visual and Select mode mappings |new-map-select|
Bram Moolenaar17c7c012006-01-26 22:25:15 +000040Location list |new-location-list|
Bram Moolenaar071d4272004-06-13 20:20:40 +000041Various new items |new-items-7|
42
43IMPROVEMENTS |improvements-7|
44
45COMPILE TIME CHANGES |compile-changes-7|
46
47BUG FIXES |bug-fixes-7|
48
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000049VERSION 7.1 |version-7.1|
50Changed |changed-7.1|
51Added |added-7.1|
52Fixed |fixed-7.1|
53
Bram Moolenaar8c8de832008-06-24 22:58:06 +000054VERSION 7.2 |version-7.2|
55Changed |changed-7.2|
56Added |added-7.2|
57Fixed |fixed-7.2|
58
Bram Moolenaar00a927d2010-05-14 23:24:24 +020059VERSION 7.3 |version-7.3|
Bram Moolenaar6df6f472010-07-18 18:04:50 +020060
61Persistent undo |new-persistent-undo|
62More encryption |new-more-encryption|
63Conceal text |new-conceal|
64Lua interface |new-lua|
65Python3 interface |new-python3|
66
Bram Moolenaar00a927d2010-05-14 23:24:24 +020067Changed |changed-7.3|
68Added |added-7.3|
69Fixed |fixed-7.3|
70
Bram Moolenaar913df812013-07-06 15:44:11 +020071VERSION 7.4 |version-7.4|
72New regexp engine |new-regexp-engine|
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020073Better Python interface |better-python-interface|
Bram Moolenaar913df812013-07-06 15:44:11 +020074Changed |changed-7.4|
75Added |added-7.4|
76Fixed |fixed-7.4|
77
78
Bram Moolenaar071d4272004-06-13 20:20:40 +000079==============================================================================
80INCOMPATIBLE CHANGES *incompatible-7*
81
82These changes are incompatible with previous releases. Check this list if you
Bram Moolenaarb2956cd2005-01-27 14:42:53 +000083run into a problem when upgrading from Vim 6.x to 7.0.
84
85A ":write file" command no longer resets the 'modified' flag of the buffer,
86unless the '+' flag is in 'cpoptions' |cpo-+|. This was illogical, since the
87buffer is still modified compared to the original file. And when undoing
88all changes the file would actually be marked modified. It does mean that
89":quit" fails now.
Bram Moolenaar071d4272004-06-13 20:20:40 +000090
Bram Moolenaarf4b8e572004-06-24 15:53:16 +000091":helpgrep" now uses a help window to display a match.
92
Bram Moolenaar1cd871b2004-12-19 22:46:22 +000093In an argument list double quotes could be used to include spaces in a file
94name. This caused a difference between ":edit" and ":next" for escaping
95double quotes and it is incompatible with some versions of Vi.
96 Command Vim 6.x file name Vim 7.x file name ~
Bram Moolenaarc9b4b052006-04-30 18:54:39 +000097 :edit foo\"888 foo"888 foo"888
98 :next foo\"888 foo888 foo"888
99 :next a\"b c\"d ab cd a"b and c"d
Bram Moolenaar1cd871b2004-12-19 22:46:22 +0000100
Bram Moolenaar8c711452005-01-14 21:53:12 +0000101In a |literal-string| a single quote can be doubled to get one.
102":echo 'a''b'" would result in "a b", but now that two quotes stand for one it
103results in "a'b".
104
Bram Moolenaar04a09c12005-08-01 22:02:32 +0000105When overwriting a file with ":w! fname" there was no warning for when "fname"
106was being edited by another Vim. Vim now gives an error message |E768|.
107
Bram Moolenaar241a8aa2005-12-06 20:04:44 +0000108The support for Mac OS 9 has been removed.
109
Bram Moolenaard2cec5b2006-03-28 21:08:56 +0000110Files ending in .tex now have 'filetype' set to "context", "plaintex", or
111"tex". |ft-tex-plugin|
112
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000113
114Minor incompatibilities:
115
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000116For filetype detection: For many types, use */.dir/filename instead of
117~/.dir/filename, so that it also works for other user's files.
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000118
Bram Moolenaar910f66f2006-04-05 20:41:53 +0000119For quite a few filetypes the indent settings have been moved from the
120filetype plugin to the indent plugin. If you used: >
121 :filetype plugin on
122Then some indent settings may be missing. You need to use: >
123 :filetype plugin indent on
124
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000125":0verbose" now sets 'verbose' to zero instead of one.
126
127Removed the old and incomplete "VimBuddy" code.
128
129Buffers without a name report "No Name" instead of "No File". It was
130confusing for buffers with a name and 'buftype' set to "nofile".
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131
Bram Moolenaar7b0294c2004-10-11 10:16:09 +0000132When ":file xxx" is used in a buffer without a name, the alternate file name
Bram Moolenaar54a709e2006-05-04 21:57:11 +0000133isn't set. This avoids creating buffers without a name, they are not useful.
Bram Moolenaar7b0294c2004-10-11 10:16:09 +0000134
135The "2html.vim" script now converts closed folds to HTML. This means the HTML
Bram Moolenaar54a709e2006-05-04 21:57:11 +0000136looks like it's displayed, with the same folds open and closed. Use "zR", or
Bram Moolenaarf4630b62005-05-20 21:31:17 +0000137"let html_ignore_folding=1", if no folds should appear in the HTML. (partly by
138Carl Osterwisch)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000139Diff mode is now also converted to HTML as it is displayed.
Bram Moolenaar7b0294c2004-10-11 10:16:09 +0000140
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000141Win32: The effect of the <F10> key depended on 'winaltkeys'. Now it depends
142on whether <F10> has been mapped or not. This allows mapping <F10> without
143changing 'winaltkeys'.
144
Bram Moolenaar8c711452005-01-14 21:53:12 +0000145When 'octal' is in 'nrformats' and using CTRL-A on "08" it became "018", which
146is illogical. Now it becomes "9". The leading zero(s) is(are) removed to
147avoid the number becoming octal after incrementing "009" to "010".
Bram Moolenaar1cd871b2004-12-19 22:46:22 +0000148
149When 'encoding' is set to a Unicode encoding, the value for 'fileencodings'
150now includes "default" before "latin1". This means that for files with 8-bit
151encodings the default is to use the encoding specified by the environment, if
152possible. Previously latin1 would always be used, which is wrong in a
153non-latin1 environment, such as Russian.
154
Bram Moolenaard438e912005-01-31 19:21:46 +0000155Previously Vim would exit when there are two windows, both of them displaying
156a help file, and using ":quit". Now only the window is closed.
157
Bram Moolenaar4399ef42005-02-12 14:29:27 +0000158"-w {scriptout}" only works when {scriptout} doesn't start with a digit.
159Otherwise it's used to set the 'window' option.
160
Bram Moolenaar8bf59b92005-03-06 23:40:56 +0000161Previously <Home> and <xHome> could be mapped separately. This had the
162disadvantage that all mappings (with modifiers) had to be duplicated, since
163you can't be sure what the keyboard generates. Now all <xHome> are internally
164translated to <Home>, both for the keys and for mappings. Also for <xEnd>,
165<xF1>, etc.
166
Bram Moolenaar13fcaaf2005-04-15 21:13:42 +0000167":put" now leaves the cursor on the last inserted line.
168
Bram Moolenaar7fae6362005-06-30 22:06:41 +0000169When a .gvimrc file exists then 'compatible' is off, just like when a ".vimrc"
170file exists.
171
Bram Moolenaara2036d22005-08-23 21:04:20 +0000172When making a string upper-case with "vlllU" or similar then the German sharp
173s is replaced with "SS". This does not happen with "~" to avoid backwards
174compatibility problems and because "SS" can't be changed back to a sharp s.
175
Bram Moolenaardd2436f2005-09-05 22:14:46 +0000176"gd" previously found the very first occurrence of a variable in a function,
177that could be the function argument without type. Now it finds the position
178where the type is given.
179
Bram Moolenaare224ffa2006-03-01 00:01:28 +0000180The line continuation in functions was not taken into account, line numbers in
181errors were logical lines, not lines in the sourced file. That made it
182difficult to locate errors. Now the line number in the sourced file is
183reported, relative to the function start. This also means that line numbers
184for ":breakadd func" are different.
185
Bram Moolenaarb3656ed2006-03-20 21:59:49 +0000186When defining a user command with |:command| the special items could be
187abbreviated. This caused unexpected behavior, such as <li> being recognized
188as <line1>. The items can no longer be abbreviated.
189
Bram Moolenaar910f66f2006-04-05 20:41:53 +0000190When executing a FileChangedRO autocommand it is no longer allowed to switch
191to another buffer or edit another file. This is to prevent crashes (the event
192is triggered deep down in the code where changing buffers is not anticipated).
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000193It is still possible to reload the buffer.
194
195At the |more-prompt| and the |hit-enter-prompt|, when the 'more' option is
196set, the 'k', 'u', 'g' and 'b' keys are now used to scroll back to previous
197messages. Thus they are no longer used as typeahead.
Bram Moolenaar910f66f2006-04-05 20:41:53 +0000198
Bram Moolenaar071d4272004-06-13 20:20:40 +0000199==============================================================================
200NEW FEATURES *new-7*
201
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000202Vim script enhancements *new-vim-script*
203-----------------------
Bram Moolenaar071d4272004-06-13 20:20:40 +0000204
205In Vim scripts the following types have been added:
206
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000207 |List| ordered list of items
208 |Dictionary| associative array of items
209 |Funcref| reference to a function
Bram Moolenaar071d4272004-06-13 20:20:40 +0000210
211Many functions and commands have been added to support the new types.
212
Bram Moolenaar31c67ef2005-01-11 21:34:41 +0000213The |string()| function can be used to get a string representation of a
214variable. Works for Numbers, Strings and composites of them. Then |eval()|
215can be used to turn the string back into the variable value.
216
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000217The |:let| command can now use "+=", "-=" and ".=": >
218 :let var += expr " works like :let var = var + expr
219 :let var -= expr " works like :let var = var - expr
220 :let var .= string " works like :let var = var . string
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000221
Bram Moolenaar038eb0e2005-02-27 22:43:26 +0000222With the |:profile| command you can find out where your function or script
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000223is wasting time.
Bram Moolenaar038eb0e2005-02-27 22:43:26 +0000224
Bram Moolenaarb71eaae2006-01-20 23:10:18 +0000225In the Python interface vim.eval() also handles Dictionaries and Lists.
226|python-eval| (G. Sumner Hayes)
227
Bram Moolenaare580b0c2006-03-21 21:33:03 +0000228The |getscript| plugin was added as a convenient way to update scripts from
229www.vim.org automatically. (Charles Campbell)
230
231The |vimball| plugin was added as a convenient way to distribute a set of
232files for a plugin (plugin file, autoload script, documentation). (Charles
233Campbell)
234
Bram Moolenaar843ee412004-06-30 16:16:41 +0000235
Bram Moolenaar60c78922005-03-20 22:40:14 +0000236Spell checking *new-spell*
237--------------
238
239Spell checking has been integrated in Vim. There were a few implementations
240with scripts, but they were slow and/or required an external program.
241
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000242The 'spell' option is used to switch spell checking on or off
243The 'spelllang' option is used to specify the accepted language(s)
244The 'spellfile' option specifies where new words are added
Bram Moolenaar7fae6362005-06-30 22:06:41 +0000245The 'spellsuggest' option specifies the methods used for making suggestions
Bram Moolenaar9ba0eb82005-06-13 22:28:56 +0000246
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +0100247The |]s| and |[s| commands can be used to move to the next or previous error
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000248The |zg| and |zw| commands can be used to add good and wrong words
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000249The |z=| command can be used to list suggestions and correct the word
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000250The |:mkspell| command is used to generate a Vim spell file from word lists
Bram Moolenaar60c78922005-03-20 22:40:14 +0000251
252The "undercurl" highlighting attribute was added to nicely point out spelling
253mistakes in the GUI (based on patch from Marcin Dalecki).
254The "guisp" color can be used to give it a color different from foreground and
255background.
256The number of possible different highlight attributes was raised from about
257220 to over 30000. This allows for the attributes of spelling to be combined
Bram Moolenaar75c50c42005-06-04 22:06:24 +0000258with syntax highlighting attributes. This is also used for syntax
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000259highlighting and marking the Visual area.
Bram Moolenaar60c78922005-03-20 22:40:14 +0000260
261Much more info here: |spell|.
262
263
Bram Moolenaarf75a9632005-09-13 21:20:47 +0000264Omni completion *new-omni-completion*
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000265---------------
Bram Moolenaarf75a9632005-09-13 21:20:47 +0000266
267This could also be called "intellisense", but that is a trademark. It is a
268smart kind of completion. The text in front of the cursor is inspected to
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000269figure out what could be following. This may suggest struct and class
270members, system functions, etc.
Bram Moolenaarf75a9632005-09-13 21:20:47 +0000271
272Use CTRL-X CTRL-O in Insert mode to start the completion. |i_CTRL-X_CTRL-O|
273
274The 'omnifunc' option is set by filetype plugins to define the function that
275figures out the completion.
276
Bram Moolenaar07d4d732005-10-03 22:04:08 +0000277Currently supported languages:
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000278 C |ft-c-omni|
279 (X)HTML with CSS |ft-html-omni|
280 JavaScript |ft-javascript-omni|
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000281 PHP |ft-php-omni|
Bram Moolenaar9e54a0e2006-04-14 20:42:25 +0000282 Python
Bram Moolenaarfc1421e2006-04-20 22:17:20 +0000283 Ruby |ft-ruby-omni|
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000284 SQL |ft-sql-omni|
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000285 XML |ft-xml-omni|
Bram Moolenaarc236c162008-07-13 17:41:49 +0000286 any language with syntax highlighting |ft-syntax-omni|
Bram Moolenaar07d4d732005-10-03 22:04:08 +0000287
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000288You can add your own omni completion scripts.
289
Bram Moolenaar07d4d732005-10-03 22:04:08 +0000290When the 'completeopt' option contains "menu" then matches for Insert mode
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000291completion are displayed in a (rather primitive) popup menu.
Bram Moolenaarf75a9632005-09-13 21:20:47 +0000292
293
Bram Moolenaar325b7a22004-07-05 15:58:32 +0000294MzScheme interface *new-MzScheme*
295------------------
296
297The MzScheme interpreter is supported. |MzScheme|
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000298
299The |:mzscheme| command can be used to execute MzScheme commands
300The |:mzfile| command can be used to execute an MzScheme script file
301
302This depends on Vim being compiled with the |+mzscheme| feature.
Bram Moolenaar325b7a22004-07-05 15:58:32 +0000303
Bram Moolenaar31c67ef2005-01-11 21:34:41 +0000304
Bram Moolenaar207f0092020-08-30 17:20:20 +0200305Printing multibyte text *new-print-multibyte*
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000306------------------------
Bram Moolenaar8299df92004-07-10 09:47:34 +0000307
Bram Moolenaar207f0092020-08-30 17:20:20 +0200308The |:hardcopy| command now supports printing multibyte characters when using
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000309PostScript.
310
Bram Moolenaar8299df92004-07-10 09:47:34 +0000311The 'printmbcharset' and 'printmbfont' options are used for this.
312Also see |postscript-cjk-printing|. (Mike Williams)
313
Bram Moolenaar325b7a22004-07-05 15:58:32 +0000314
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000315Tab pages *new-tab-pages*
316---------
317
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +0200318A tab page is a page with one or more windows with a label (aka tab) at the top.
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000319By clicking on the label you can quickly switch between the tab pages. And
320with the keyboard, using the |gt| (Goto Tab) command. This is a convenient
321way to work with many windows.
322
323To start Vim with each file argument in a separate tab page use the |-p|
324argument. The maximum number of pages can be set with 'tabpagemax'.
325
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000326The line with tab labels is either made with plain text and highlighting or
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000327with a GUI mechanism. The GUI labels look better but are only available on a
Bram Moolenaar57657d82006-04-21 22:12:41 +0000328few systems. The line can be customized with 'tabline', 'guitablabel' and
329'guitabtooltip'. Whether it is displayed is set with 'showtabline'. Whether
330to use the GUI labels is set with the "e" flag in 'guioptions'.
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000331
332The |:tab| command modifier can be used to have most commands that open a new
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000333window open a new tab page instead.
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000334
Bram Moolenaar0ce29932006-03-13 22:18:45 +0000335The |--remote-tab| argument can be used to edit a file in a new tab page in an
336already running Vim server.
337
Bram Moolenaar910f66f2006-04-05 20:41:53 +0000338Variables starting with "t:" are local to a tab page.
339
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000340More info here: |tabpage|
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000341Most of the GUI stuff was implemented by Yegappan Lakshmanan.
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000342
343
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +0000344Undo branches *new-undo-branches*
345-------------
346
347Previously there was only one line of undo-redo. If, after undoing a number
348of changes, a new change was made all the undone changes were lost. This
Bram Moolenaarea0cd362006-03-16 21:46:52 +0000349could lead to accidentally losing work.
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +0000350
351Vim now makes an undo branch in this situation. Thus you can go back to the
352text after any change, even if they were undone. So long as you do not run
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000353into 'undolevels', when undo information is freed up to limit the memory used.
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +0000354
355To be able to navigate the undo branches each change is numbered sequentially.
356The commands |g-| and |:earlier| go back in time, to older changes. The
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000357commands |g+| and |:later| go forward in time, to newer changes.
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +0000358
359The changes are also timestamped. Use ":earlier 10m" to go to the text as it
360was about ten minutes earlier.
361
Bram Moolenaarea0cd362006-03-16 21:46:52 +0000362The |:undolist| command can be used to get an idea of which undo branches
363exist. The |:undo| command now takes an argument to directly jump to a
Bram Moolenaarca003e12006-03-17 23:19:38 +0000364specific position in this list. The |changenr()| function can be used to
365obtain the change number.
Bram Moolenaarea0cd362006-03-16 21:46:52 +0000366
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +0000367There is no graphical display of the tree with changes, navigation can be
368quite confusing.
369
370
Bram Moolenaar362e1a32006-03-06 23:29:24 +0000371Extended Unicode support *new-more-unicode*
372------------------------
373
374Previously only two combining characters were displayed. The limit is now
375raised to 6. This can be set with the 'maxcombine' option. The default is
376still 2.
377
378|ga| now shows all combining characters, not just the first two.
379
380Previously only 16 bit Unicode characters were supported for displaying. Now
381the full 32 bit character set can be used. Unless manually disabled at
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000382compile time to save a bit of memory.
Bram Moolenaar362e1a32006-03-06 23:29:24 +0000383
384For pattern matching it is now possible to search for individual composing
385characters. |patterns-composing|
386
Bram Moolenaarca003e12006-03-17 23:19:38 +0000387The |8g8| command searches for an illegal UTF-8 byte sequence.
388
Bram Moolenaar362e1a32006-03-06 23:29:24 +0000389
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000390More highlighting *new-more-highlighting*
391-----------------
392
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000393Highlighting matching parens:
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +0000394
395When moving the cursor through the text and it is on a paren, then the
396matching paren can be highlighted. This uses the new |CursorMoved|
397autocommand event.
398
Bram Moolenaarc1e37902006-04-18 21:55:01 +0000399This means some commands are executed every time you move the cursor. If this
400slows you down too much switch it off with: >
401 :NoMatchParen
402
Bram Moolenaar261bfea2006-03-01 22:12:31 +0000403See |matchparen| for more information.
404
405The plugin uses the |:match| command. It now supports three match patterns.
406The plugin uses the third one. The first one is for the user and the second
407one can be used by another plugin.
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +0000408
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000409Highlighting the cursor line and column:
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000410
411The 'cursorline' and 'cursorcolumn' options have been added. These highlight
412the screen line and screen column of the cursor. This makes the cursor
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000413position easier to spot. 'cursorcolumn' is also useful to align text. This
414may make screen updating quite slow. The CursorColumn and CursorLine
415highlight groups allow changing the colors used. |hl-CursorColumn|
416|hl-CursorLine|
417
418The number of possible different highlight attributes was raised from about
419220 to over 30000. This allows for the attributes of spelling to be combined
420with syntax highlighting attributes. This is also used for syntax
421highlighting, marking the Visual area, CursorColumn, etc.
Bram Moolenaar17be7e62006-03-12 22:13:45 +0000422
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +0000423
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000424Translated manual pages *new-manpage-trans*
425-----------------------
426
427The manual page of Vim and associated programs is now also available in
Bram Moolenaar4ad237d2005-03-11 22:49:40 +0000428several other languages.
429
Bram Moolenaar13fcaaf2005-04-15 21:13:42 +0000430French - translated by David Blanchet
Bram Moolenaar4ad237d2005-03-11 22:49:40 +0000431Italian - translated by Antonio Colombo
432Russian - translated by Vassily Ragosin
Bram Moolenaar899dddf2006-03-26 21:06:50 +0000433Polish - translated by Mikolaj Machowski
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000434
Bram Moolenaar13fcaaf2005-04-15 21:13:42 +0000435The Unix Makefile installs the Italian manual pages in .../man/it/man1/,
436.../man/it.ISO8859-1/man1/ and .../man/it.UTF-8/man1/. There appears to be no
437standard for what encoding goes in the "it" directory, the 8-bit encoded file
438is used there as a best guess.
439Other languages are installed in similar places.
Bram Moolenaar67fe1a12005-05-22 22:12:58 +0000440The translated pages are not automatically installed when Vim was configured
441with "--disable-nls", but "make install-languages install-tool-languages" will
442do it anyway.
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +0000443
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000444
Bram Moolenaar8fc061c2004-12-29 21:03:02 +0000445Internal grep *new-vimgrep*
446-------------
447
448The ":vimgrep" command can be used to search for a pattern in a list of files.
449This is like the ":grep" command, but no external program is used. Besides
450better portability, handling of different file encodings and using multi-line
451patterns, this also allows grepping in compressed and remote files.
452|:vimgrep|.
453
Bram Moolenaar05159a02005-02-26 23:04:13 +0000454If you want to use the search results in a script you can use the
Bram Moolenaar2641f772005-03-25 21:58:17 +0000455|getqflist()| function.
Bram Moolenaar05159a02005-02-26 23:04:13 +0000456
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000457To grep files in various directories the "**" pattern can be used. It expands
458into an arbitrary depth of directories. "**" can be used in all places where
459file names are expanded, thus also with |:next| and |:args|.
Bram Moolenaar231334e2005-07-25 20:46:57 +0000460
Bram Moolenaar8fc061c2004-12-29 21:03:02 +0000461
Bram Moolenaar87e25fd2005-07-27 21:13:01 +0000462Scroll back in messages *new-scroll-back*
463-----------------------
464
465When displaying messages, at the |more-prompt| and the |hit-enter-prompt|, The
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000466'k', 'u', 'g' and 'b' keys can be used to scroll back to previous messages.
467This is especially useful for commands such as ":syntax", ":autocommand" and
Bram Moolenaar87e25fd2005-07-27 21:13:01 +0000468":highlight". This is implemented in a generic way thus it works for all
469commands and highlighting is kept. Only works when the 'more' option is set.
470Previously it only partly worked for ":clist".
471
Bram Moolenaar661b1822005-07-28 22:36:45 +0000472The |g<| command can be used to see the last page of messages after you have
473hit <Enter> at the |hit-enter-prompt|. Then you can scroll further back.
474
Bram Moolenaar87e25fd2005-07-27 21:13:01 +0000475
Bram Moolenaarea0cd362006-03-16 21:46:52 +0000476Cursor past end of the line *new-onemore*
477---------------------------
478
479When the 'virtualedit' option contains "onemore" the cursor can move just past
480the end of the line. As if it's on top of the line break.
481
482This makes some commands more consistent. Previously the cursor was always
483past the end of the line if the line was empty. But it is far from Vi
484compatible. It may also break some plugins or Vim scripts. Use with care!
485
486The patch was provided by Mattias Flodin.
487
488
Bram Moolenaar4399ef42005-02-12 14:29:27 +0000489POSIX compatibility *new-posix*
490-------------------
491
492The POSIX test suite was used to verify POSIX compatibility. A number of
493problems have been fixed to make Vim more POSIX compatible. Some of them
494conflict with traditional Vi or expected behavior. The $VIM_POSIX environment
495variable can be set to get POSIX compatibility. See |posix|.
496
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000497Items that were fixed for both Vi and POSIX compatibility:
Bram Moolenaar4399ef42005-02-12 14:29:27 +0000498- repeating "R" with a count only overwrites text once; added the 'X' flag to
499 'cpoptions' |cpo-X|
500- a vertical movement command that moves to a non-existing line fails; added
501 the '-' flag to 'cpoptions' |cpo--|
502- when preserving a file and doing ":q!" the file can be recovered; added the
503 '&' flag to 'cpoptions' |cpo-&|
504- The 'window' option is partly implemented. It specifies how much CTRL-F and
505 CTRL-B scroll when there is one window. The "-w {number}" argument is now
506 accepted. "-w {scriptout}" only works when {scriptout} doesn't start with a
507 digit.
508- Allow "-c{command}" argument, no space between "-c" and {command}.
509- When writing a file with ":w!" don't reset 'readonly' when 'Z' is present in
510 'cpoptions'.
Bram Moolenaar5313dcb2005-02-22 08:56:13 +0000511- Allow 'l' and '#' flags for ":list", ":print" and ":number".
512- Added the '.' flag to 'cpoptions': ":cd" fails when the buffer is modified.
513- In Ex mode with an empty buffer ":read file" doesn't keep an empty line
514 above or below the new lines.
515- Remove a backslash before a NL for the ":global" command.
516- When ":append", ":insert" or ":change" is used with ":global", get the
517 inserted lines from the command. Can use backslash-NL to separate lines.
518- Can use ":global /pat/ visual" to execute Normal mode commands at each
519 matched line. Use "Q" to continue and go to the next line.
520- The |:open| command has been partially implemented. It stops Ex mode, but
521 redraws the whole screen, not just one line as open mode is supposed to do.
522- Support using a pipe to read the output from and write input to an external
523 command. Added the 'shelltemp' option and has("filterpipe").
524- In ex silent mode the ":set" command output is displayed.
525- The ":@@" and ":**" give an error message when no register was used before.
526- The search pattern "[]-`]" matches ']', '^', '_' and '`'.
527- Autoindent for ":insert" is using the line below the insert.
528- Autoindent for ":change" is using the first changed line.
529- Editing Ex command lines is not done in cooked mode, because CTRL-D and
530 CTRL-T cannot be handled then.
Bram Moolenaar45eeb132005-06-06 21:59:07 +0000531- In Ex mode, "1,3" prints three lines. "%" prints all lines.
532- In Ex mode "undo" would undo all changes since Ex mode was started.
Bram Moolenaar5313dcb2005-02-22 08:56:13 +0000533- Implemented the 'prompt' option.
Bram Moolenaar4399ef42005-02-12 14:29:27 +0000534
535
Bram Moolenaare2ac10d2005-03-07 23:26:06 +0000536Debugger support *new-debug-support*
537----------------
538
539The 'balloonexpr' option has been added. This is a generic way to implement
540balloon functionality. You can use it to show info for the word under the
541mouse pointer.
542
543
Bram Moolenaar0be6e642005-08-04 21:32:22 +0000544Remote file explorer *new-netrw-explore*
545--------------------
546
547The netrw plugin now also supports viewing a directory, when "scp://" is used.
548Deleting and renaming files is possible.
549
550To avoid duplicating a lot of code, the previous file explorer plugin has been
551integrated in the netrw plugin. This means browsing local and remote files
552works the same way.
553
554":browse edit" and ":browse split" use the netrw plugin when it's available
555and a GUI dialog is not possible.
556
557The netrw plugin is maintained by Charles Campbell.
558
559
Bram Moolenaar900b4d72005-12-12 22:05:50 +0000560Define an operator *new-define-operator*
561------------------
562
563Previously it was not possible to define your own operator; a command that is
564followed by a {motion}. Vim 7 introduces the 'operatorfunc' option and the
565|g@| operator. This makes it possible to define a mapping that works like an
566operator. The actual work is then done by a function, which is invoked
567through the |g@| operator.
568
569See |:map-operator| for the explanation and an example.
570
Bram Moolenaar9f2c6e12006-02-04 22:45:44 +0000571
Bram Moolenaarade00832006-03-10 21:46:58 +0000572Mapping to an expression *new-map-expression*
573------------------------
574
575The {rhs} argument of a mapping can be an expression. That means the
576resulting characters can depend on the context. Example: >
577 :inoremap <expr> . InsertDot()
578Here the dot will be mapped to whatever InsertDot() returns.
579
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000580This also works for abbreviations. See |:map-<expr>| for the details.
Bram Moolenaarade00832006-03-10 21:46:58 +0000581
582
Bram Moolenaarb3656ed2006-03-20 21:59:49 +0000583Visual and Select mode mappings *new-map-select*
584-------------------------------
585
586Previously Visual mode mappings applied both to Visual and Select mode. With
587a trick to have the mappings work in Select mode like they would in Visual
588mode.
589
590Commands have been added to define mappings for Visual and Select mode
591separately: |:xmap| and |:smap|. With the associated "noremap" and "unmap"
592commands.
593
594The same is done for menus: |:xmenu|, |:smenu|, etc.
595
596
Bram Moolenaar17c7c012006-01-26 22:25:15 +0000597Location list *new-location-list*
598-------------
599
600The support for a per-window quickfix list (location list) is added. The
601location list can be displayed in a location window (similar to the quickfix
Bram Moolenaar8ea91232006-04-28 22:41:43 +0000602window). You can open more than one location list window. A set of commands
Bram Moolenaar17c7c012006-01-26 22:25:15 +0000603similar to the quickfix commands are added to browse the location list.
Bram Moolenaar9f2c6e12006-02-04 22:45:44 +0000604(Yegappan Lakshmanan)
605
Bram Moolenaar900b4d72005-12-12 22:05:50 +0000606
Bram Moolenaar071d4272004-06-13 20:20:40 +0000607Various new items *new-items-7*
608-----------------
609
610Normal mode commands: ~
611
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000612a", a' and a` New text objects to select quoted strings. |a'|
Bram Moolenaarac6e65f2005-08-29 22:25:38 +0000613i", i' and i` (Taro Muraoka)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000614
Bram Moolenaar05159a02005-02-26 23:04:13 +0000615CTRL-W <Enter> In the quickfix window: opens a new window to show the
616 location of the error under the cursor.
617
Bram Moolenaarff6f0612005-07-19 22:21:12 +0000618|at| and |it| text objects select a block of text between HTML or XML tags.
619
Bram Moolenaarbca84a12005-12-14 22:08:35 +0000620<A-LeftMouse> ('mousemodel' "popup" or "popup-setpos")
621<A-RightMouse> ('mousemodel' "extend")
622 Make a blockwise selection. |<A-LeftMouse>|
Bram Moolenaarff6f0612005-07-19 22:21:12 +0000623
Bram Moolenaard1f56e62006-02-22 21:25:37 +0000624gF Start editing the filename under the cursor and jump
625 to the line number following the file name.
626 (Yegappan Lakshmanan)
627
628CTRL-W F Start editing the filename under the cursor in a new
629 window and jump to the line number following the file
630 name. (Yegappan Lakshmanan)
631
Bram Moolenaar488c6512005-08-11 20:09:58 +0000632Insert mode commands: ~
633
634CTRL-\ CTRL-O Execute a Normal mode command. Like CTRL-O but
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000635 without moving the cursor. |i_CTRL-\_CTRL-O|
Bram Moolenaar488c6512005-08-11 20:09:58 +0000636
Bram Moolenaar071d4272004-06-13 20:20:40 +0000637Options: ~
638
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000639'balloonexpr' expression for text to show in evaluation balloon
640'completefunc' The name of the function used for user-specified
641 Insert mode completion. CTRL-X CTRL-U can be used in
642 Insert mode to do any kind of completion. (Taro
643 Muraoka)
644'completeopt' Enable popup menu and other settings for Insert mode
645 completion.
646'cursorcolumn' highlight column of the cursor
647'cursorline' highlight line of the cursor
Bram Moolenaar1d2ba7f2006-02-14 22:29:30 +0000648'formatexpr' expression for formatting text with |gq| and when text
649 goes over 'textwidth' in Insert mode.
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000650'formatlistpat' pattern to recognize a numbered list for formatting.
651 (idea by Hugo Haas)
652'fsync' Whether fsync() is called after writing a file.
653 (Ciaran McCreesh)
654'guitablabel' expression for text to display in GUI tab page label
655'guitabtooltip' expression for text to display in GUI tab page tooltip
656'macatsui' Mac: use ATSUI text display functions
657'maxcombine' maximum number of combining characters displayed
658'maxmempattern' maximum amount of memory to use for pattern matching
659'mkspellmem' parameters for |:mkspell| memory use
660'mzquantum' Time in msec to schedule MzScheme threads.
Bram Moolenaar64486672010-05-16 15:46:46 +0200661'numberwidth' Minimal width of the space used for the 'number' and
662 'relativenumber' option. (Emmanuel Renieris)
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000663'omnifunc' The name of the function used for omni completion.
664'operatorfunc' function to be called for |g@| operator
665'printmbcharset' CJK character set to be used for :hardcopy
666'printmbfont' font names to be used for CJK output of :hardcopy
667'pumheight' maximum number of items to show in the popup menu
668'quoteescape' Characters used to escape quotes inside a string.
669 Used for the a", a' and a` text objects. |a'|
670'shelltemp' whether to use a temp file or pipes for shell commands
671'showtabline' whether to show the tab pages line
Bram Moolenaar60c78922005-03-20 22:40:14 +0000672'spell' switch spell checking on/off
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000673'spellcapcheck' pattern to locate the end of a sentence
674'spellfile' file where good and wrong words are added
Bram Moolenaar60c78922005-03-20 22:40:14 +0000675'spelllang' languages to check spelling for
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000676'spellsuggest' methods for spell suggestions
Bram Moolenaar3b56eb32005-07-11 22:40:32 +0000677'synmaxcol' maximum column to look for syntax items; avoids very
678 slow redrawing when there are very long lines
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000679'tabline' expression for text to display in the tab pages line
680'tabpagemax' maximum number of tab pages to open for |-p|
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000681'verbosefile' Log messages in a file.
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000682'wildoptions' "tagfile" value enables listing the file name of
683 matching tags for CTRL-D command line completion.
684 (based on an idea from Yegappan Lakshmanan)
Bram Moolenaar97b2ad32006-03-18 21:40:56 +0000685'winfixwidth' window with fixed width, similar to 'winfixheight'
Bram Moolenaar86b68352004-12-27 21:59:20 +0000686
Bram Moolenaar071d4272004-06-13 20:20:40 +0000687
688Ex commands: ~
689
Bram Moolenaar843ee412004-06-30 16:16:41 +0000690Win32: The ":winpos" command now also works in the console. (Vipin Aravind)
691
Bram Moolenaar8299df92004-07-10 09:47:34 +0000692|:startreplace| Start Replace mode. (Charles Campbell)
Bram Moolenaarbca84a12005-12-14 22:08:35 +0000693|:startgreplace| Start Virtual Replace mode.
Bram Moolenaar325b7a22004-07-05 15:58:32 +0000694
Bram Moolenaar8299df92004-07-10 09:47:34 +0000695|:0file| Removes the name of the buffer. (Charles Campbell)
Bram Moolenaar325b7a22004-07-05 15:58:32 +0000696
Bram Moolenaar2df6dcc2004-07-12 15:53:54 +0000697|:diffoff| Switch off diff mode in the current window or in all
698 windows.
699
Bram Moolenaarc0197e22004-09-13 20:26:32 +0000700|:delmarks| Delete marks.
701
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +0000702|:exusage| Help for Ex commands (Nvi command).
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +0000703|:viusage| Help for Vi commands (Nvi command).
704
Bram Moolenaar67fe1a12005-05-22 22:12:58 +0000705|:sort| Sort lines in the buffer without depending on an
Bram Moolenaar4c3f5362006-04-11 21:38:50 +0000706 external command. (partly by Bryce Wagner)
Bram Moolenaar67fe1a12005-05-22 22:12:58 +0000707
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000708|:vimgrep| Internal grep command, search for a pattern in files.
709|:vimgrepadd| Like |:vimgrep| but don't make a new list.
710
Bram Moolenaar87e25fd2005-07-27 21:13:01 +0000711|:caddfile| Add error messages to an existing quickfix list
712 (Yegappan Lakshmanan).
Bram Moolenaardb552d602006-03-23 22:59:57 +0000713|:cbuffer| Read error lines from a buffer. (partly by Yegappan
714 Lakshmanan)
715|:cgetbuffer| Create a quickfix list from a buffer but don't jump to
716 the first error.
Bram Moolenaar9f2c6e12006-02-04 22:45:44 +0000717|:caddbuffer| Add errors from the current buffer to the quickfix
718 list.
Bram Moolenaardb552d602006-03-23 22:59:57 +0000719|:cexpr| Read error messages from a Vim expression (Yegappan
720 Lakshmanan).
721|:caddexpr| Add error messages from a Vim expression to an
722 existing quickfix list. (Yegappan Lakshmanan).
723|:cgetexpr| Create a quickfix list from a Vim expression, but
724 don't jump to the first error. (Yegappan Lakshmanan).
Bram Moolenaar4770d092006-01-12 23:22:24 +0000725
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000726|:lfile| Like |:cfile| but use the location list.
727|:lgetfile| Like |:cgetfile| but use the location list.
728|:laddfile| Like |:caddfile| but use the location list.
729|:lbuffer| Like |:cbuffer| but use the location list.
Bram Moolenaar76b92b22006-03-24 22:46:53 +0000730|:lgetbuffer| Like |:cgetbuffer| but use the location list.
Bram Moolenaar9f2c6e12006-02-04 22:45:44 +0000731|:laddbuffer| Like |:caddbuffer| but use the location list.
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000732|:lexpr| Like |:cexpr| but use the location list.
Bram Moolenaar76b92b22006-03-24 22:46:53 +0000733|:lgetexpr| Like |:cgetexpr| but use the location list.
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000734|:laddexpr| Like |:caddexpr| but use the location list.
735|:ll| Like |:cc| but use the location list.
736|:llist| Like |:clist| but use the location list.
737|:lnext| Like |:cnext| but use the location list.
Bram Moolenaarf52c7252006-02-10 23:23:57 +0000738|:lprevious| Like |:cprevious| but use the location list.
Bram Moolenaar8b6144b2006-02-08 09:20:24 +0000739|:lNext| Like |:cNext| but use the location list.
740|:lfirst| Like |:cfirst| but use the location list.
741|:lrewind| Like |:crewind| but use the location list.
742|:llast| Like |:clast| but use the location list.
743|:lnfile| Like |:cnfile| but use the location list.
744|:lpfile| Like |:cpfile| but use the location list.
745|:lNfile| Like |:cNfile| but use the location list.
746|:lolder| Like |:colder| but use the location list.
747|:lnewer| Like |:cnewer| but use the location list.
748|:lwindow| Like |:cwindow| but use the location list.
749|:lopen| Like |:copen| but use the location list.
750|:lclose| Like |:cclose| but use the location list.
Bram Moolenaarf52c7252006-02-10 23:23:57 +0000751|:lmake| Like |:make| but use the location list.
752|:lgrep| Like |:grep| but use the location list.
753|:lgrepadd| Like |:grepadd| but use the location list.
754|:lvimgrep| Like |:vimgrep| but use the location list.
755|:lvimgrepadd| Like |:vimgrepadd| but use the location list.
756|:lhelpgrep| Like |:helpgrep| but use the location list.
757|:lcscope| Like |:cscope| but use the location list.
758|:ltag| Jump to a tag and add matching tags to a location list.
Bram Moolenaar1ef15e32006-02-01 21:56:25 +0000759
Bram Moolenaare224ffa2006-03-01 00:01:28 +0000760|:undojoin| Join a change with the previous undo block.
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000761|:undolist| List the leafs of the undo tree.
Bram Moolenaare224ffa2006-03-01 00:01:28 +0000762
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000763|:earlier| Go back in time for changes in the text.
764|:later| Go forward in time for changes in the text.
765
766|:for| Loop over a |List|.
767|:endfor|
768
769|:lockvar| Lock a variable, prevents it from being changed.
770|:unlockvar| Unlock a locked variable.
771
772|:mkspell| Create a Vim spell file.
773|:spellgood| Add a word to the list of good words.
774|:spellwrong| Add a word to the list of bad words
775|:spelldump| Dump list of good words.
776|:spellinfo| Show information about the spell files used.
777|:spellrepall| Repeat a spelling correction for the whole buffer.
778|:spellundo| Remove a word from list of good and bad words.
779
780|:mzscheme| Execute MzScheme commands.
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000781|:mzfile| Execute an MzScheme script file.
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000782
783|:nbkey| Pass a key to NetBeans for processing.
784
785|:profile| Commands for Vim script profiling.
786|:profdel| Stop profiling for specified items.
787
788|:smap| Select mode mapping.
789|:smapclear|
790|:snoremap|
791|:sunmap|
792
793|:xmap| Visual mode mapping, not used for Select mode.
794|:xmapclear|
795|:xnoremap|
796|:xunmap|
797
798|:smenu| Select mode menu.
799|:snoremenu|
800|:sunmenu|
801
802|:xmenu| Visual mode menu, not used for Select mode.
803|:xnoremenu|
804|:xunmenu|
805
806|:tabclose| Close the current tab page.
807|:tabdo| Perform a command in every tab page.
808|:tabedit| Edit a file in a new tab page.
809|:tabnew| Open a new tab page.
810|:tabfind| Search for a file and open it in a new tab page.
811|:tabnext| Go to the next tab page.
812|:tabprevious| Go to the previous tab page.
813|:tabNext| Go to the previous tab page.
814|:tabfirst| Go to the first tab page.
815|:tabrewind| Go to the first tab page.
816|:tablast| Go to the last tab page.
817|:tabmove| Move the current tab page elsewhere.
818|:tabonly| Close all other tab pages.
819|:tabs| List the tab pages and the windows they contain.
Bram Moolenaarbca84a12005-12-14 22:08:35 +0000820
Bram Moolenaar63a121b2005-12-11 21:36:39 +0000821Ex command modifiers: ~
822
823|:keepalt| Do not change the alternate file.
824
825|:noautocmd| Do not trigger autocommand events.
826
827|:sandbox| Execute a command in the sandbox.
828
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000829|:tab| When opening a new window create a new tab page.
830
Bram Moolenaar67fe1a12005-05-22 22:12:58 +0000831
Bram Moolenaarb2c2efa2005-12-13 20:09:08 +0000832Ex command arguments: ~
833
834|++bad| Specify what happens with characters that can't be
835 converted and illegal bytes. (code example by Yasuhiro
836 Matsumoto)
837 Also, when a conversion error occurs or illegal bytes
838 are found include the line number in the error
839 message.
840
841
Bram Moolenaara5792f52005-11-23 21:25:05 +0000842New and extended functions: ~
Bram Moolenaar071d4272004-06-13 20:20:40 +0000843
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000844|add()| append an item to a List
845|append()| append List of lines to the buffer
Bram Moolenaare2f98b92006-03-29 21:18:24 +0000846|argv()| without an argument return the whole argument list
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000847|browsedir()| dialog to select a directory
Bram Moolenaarbd404142006-03-25 22:05:04 +0000848|bufnr()| takes an extra argument: create buffer
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000849|byteidx()| index of a character (Ilya Sher)
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000850|call()| call a function with List as arguments
Bram Moolenaarbd404142006-03-25 22:05:04 +0000851|changenr()| number of current change
852|complete()| set matches for Insert mode completion
Bram Moolenaar572cb562005-08-05 21:35:02 +0000853|complete_add()| add match for 'completefunc'
854|complete_check()| check for key pressed, for 'completefunc'
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000855|copy()| make a shallow copy of a List or Dictionary
856|count()| count nr of times a value is in a List or Dictionary
Bram Moolenaar8fd89f02006-03-02 22:51:05 +0000857|cursor()| also accepts an offset for 'virtualedit', and
858 the first argument can be a list: [lnum, col, off]
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000859|deepcopy()| make a full copy of a List or Dictionary
Bram Moolenaarbd404142006-03-25 22:05:04 +0000860|diff_filler()| returns number of filler lines above line {lnum}.
861|diff_hlID()| returns the highlight ID for diff mode
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000862|empty()| check if List or Dictionary is empty
Bram Moolenaarbd404142006-03-25 22:05:04 +0000863|eval()| evaluate {string} and return the result
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000864|extend()| append one List to another or add items from one
865 Dictionary to another
Bram Moolenaarf9393ef2006-04-24 19:47:27 +0000866|feedkeys()| put characters in the typeahead buffer
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000867|filter()| remove selected items from a List or Dictionary
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000868|finddir()| find a directory in 'path'
869|findfile()| find a file in 'path' (Johannes Zellner)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000870|foldtextresult()| the text displayed for a closed fold at line "lnum"
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000871|function()| make a Funcref out of a function name
Bram Moolenaarbd404142006-03-25 22:05:04 +0000872|garbagecollect()| cleanup unused |Lists| and |Dictionaries| with circular
873 references
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000874|get()| get an item from a List or Dictionary
Bram Moolenaar342337a2005-07-21 21:11:17 +0000875|getbufline()| get a list of lines from a specified buffer
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000876 (Yegappan Lakshmanan)
Bram Moolenaarbfd8fc02005-09-20 23:22:24 +0000877|getcmdtype()| return the current command-line type
878 (Yegappan Lakshmanan)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000879|getfontname()| get actual font name being used
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000880|getfperm()| get file permission string (Nikolai Weibull)
881|getftype()| get type of file (Nikolai Weibull)
882|getline()| with second argument: get List with buffer lines
Bram Moolenaarbd404142006-03-25 22:05:04 +0000883|getloclist()| list of location list items (Yegappan Lakshmanan)
Bram Moolenaar8fd89f02006-03-02 22:51:05 +0000884|getpos()| return a list with the position of cursor, mark, etc.
Bram Moolenaarbd404142006-03-25 22:05:04 +0000885|getqflist()| list of quickfix errors (Yegappan Lakshmanan)
886|getreg()| get contents of a register
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000887|gettabwinvar()| get variable from window in specified tab page.
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000888|has_key()| check whether a key appears in a Dictionary
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000889|haslocaldir()| check if current window used |:lcd|
Bram Moolenaarbd404142006-03-25 22:05:04 +0000890|hasmapto()| check for a mapping to a string
Bram Moolenaarbd404142006-03-25 22:05:04 +0000891|index()| index of item in List
892|inputlist()| prompt the user to make a selection from a list
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000893|insert()| insert an item somewhere in a List
Bram Moolenaarbd404142006-03-25 22:05:04 +0000894|islocked()| check if a variable is locked
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000895|items()| get List of Dictionary key-value pairs
896|join()| join List items into a String
897|keys()| get List of Dictionary keys
898|len()| number of items in a List or Dictionary
899|map()| change each List or Dictionary item
Bram Moolenaarbd404142006-03-25 22:05:04 +0000900|maparg()| extra argument: use abbreviation
901|mapcheck()| extra argument: use abbreviation
902|match()| extra argument: count
Bram Moolenaar910f66f2006-04-05 20:41:53 +0000903|matcharg()| return arguments of |:match| command
Bram Moolenaarbd404142006-03-25 22:05:04 +0000904|matchend()| extra argument: count
Bram Moolenaar2a8d1f82005-02-05 21:43:56 +0000905|matchlist()| list with match and submatches of a pattern in a string
Bram Moolenaarbd404142006-03-25 22:05:04 +0000906|matchstr()| extra argument: count
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000907|max()| maximum value in a List or Dictionary
908|min()| minimum value in a List or Dictionary
Bram Moolenaar5313dcb2005-02-22 08:56:13 +0000909|mkdir()| create a directory
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000910|pathshorten()| reduce directory names to a single character
Bram Moolenaar4be06f92005-07-29 22:36:03 +0000911|printf()| format text
Bram Moolenaarbd404142006-03-25 22:05:04 +0000912|pumvisible()| check whether the popup menu is displayed
913|range()| generate a List with numbers
Bram Moolenaar2a8d1f82005-02-05 21:43:56 +0000914|readfile()| read a file into a list of lines
Bram Moolenaare580b0c2006-03-21 21:33:03 +0000915|reltime()| get time value, possibly relative
916|reltimestr()| turn a time value into a string
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000917|remove()| remove one or more items from a List or Dictionary
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000918|repeat()| repeat "expr" "count" times (Christophe Poucet)
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000919|reverse()| reverse the order of a List
Bram Moolenaarbd404142006-03-25 22:05:04 +0000920|search()| extra argument:
Bram Moolenaarf75a9632005-09-13 21:20:47 +0000921|searchdecl()| search for declaration of variable
Bram Moolenaarbd404142006-03-25 22:05:04 +0000922|searchpair()| extra argument: line to stop searching
Bram Moolenaar1d2ba7f2006-02-14 22:29:30 +0000923|searchpairpos()| return a List with the position of the match
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000924|searchpos()| return a List with the position of the match
Bram Moolenaar17c7c012006-01-26 22:25:15 +0000925|setloclist()| modify a location list (Yegappan Lakshmanan)
Bram Moolenaarbd404142006-03-25 22:05:04 +0000926|setpos()| set cursor or mark to a position
Bram Moolenaar17c7c012006-01-26 22:25:15 +0000927|setqflist()| modify a quickfix list (Yegappan Lakshmanan)
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000928|settabwinvar()| set variable in window of specified tab page
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000929|sort()| sort a List
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000930|soundfold()| get the sound-a-like equivalent of a word
Bram Moolenaar42eeac32005-06-29 22:40:58 +0000931|spellbadword()| get a badly spelled word
932|spellsuggest()| get suggestions for correct spelling
Bram Moolenaarbd404142006-03-25 22:05:04 +0000933|split()| split a String into a List
Bram Moolenaar887c1fe2016-01-02 17:56:35 +0100934|str2nr()| convert a string to a number, base 2, 8, 10 or 16
Bram Moolenaarbd404142006-03-25 22:05:04 +0000935|stridx()| extra argument: start position
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000936|strridx()| extra argument: start position
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000937|string()| string representation of a List or Dictionary
Bram Moolenaarbd404142006-03-25 22:05:04 +0000938|system()| extra argument: filters {input} through a shell command
939|tabpagebuflist()| List of buffers in a tab page
940|tabpagenr()| number of current or last tab page
941|tabpagewinnr()| window number in a tab page
942|tagfiles()| List with tags file names
Bram Moolenaar87b774d2005-07-20 22:04:36 +0000943|taglist()| get list of matching tags (Yegappan Lakshmanan)
944|tr()| translate characters (Ron Aaron)
Bram Moolenaar327aa022014-03-25 18:24:23 +0100945|uniq()| remove copies of repeated adjacent list items
Bram Moolenaarbac234e2005-01-17 22:21:07 +0000946|values()| get List of Dictionary values
Bram Moolenaarbd404142006-03-25 22:05:04 +0000947|winnr()| takes an argument: what window to use
Bram Moolenaar768b8c42006-03-04 21:58:33 +0000948|winrestview()| restore the view of the current window
949|winsaveview()| save the view of the current window
Bram Moolenaar2a8d1f82005-02-05 21:43:56 +0000950|writefile()| write a list of lines into a file
Bram Moolenaar8299df92004-07-10 09:47:34 +0000951
Bram Moolenaarbee0c5b2005-02-07 22:03:36 +0000952User defined functions can now be loaded automatically from the "autoload"
953directory in 'runtimepath'. See |autoload-functions|.
954
Bram Moolenaar071d4272004-06-13 20:20:40 +0000955
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000956New Vim variables: ~
957
958|v:insertmode| used for |InsertEnter| and |InsertChange| autocommands
959|v:val| item value in a |map()| or |filter()| function
960|v:key| item key in a |map()| or |filter()| function
961|v:profiling| non-zero after a ":profile start" command
Bram Moolenaarc9b4b052006-04-30 18:54:39 +0000962|v:fcs_reason| the reason why |FileChangedShell| was triggered
963|v:fcs_choice| what should happen after |FileChangedShell|
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000964|v:beval_bufnr| buffer number for 'balloonexpr'
965|v:beval_winnr| window number for 'balloonexpr'
966|v:beval_lnum| line number for 'balloonexpr'
967|v:beval_col| column number for 'balloonexpr'
968|v:beval_text| text under the mouse pointer for 'balloonexpr'
969|v:scrollstart| what caused the screen to be scrolled up
970|v:swapname| name of the swap file for the |SwapExists| event
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000971|v:swapchoice| what to do for an existing swap file
Bram Moolenaarc93b83a2006-04-29 22:02:36 +0000972|v:swapcommand| command to be executed after handling |SwapExists|
973|v:char| argument for evaluating 'formatexpr'
974
975
Bram Moolenaar071d4272004-06-13 20:20:40 +0000976New autocommand events: ~
977
Bram Moolenaar8299df92004-07-10 09:47:34 +0000978|ColorScheme| after loading a color scheme
Bram Moolenaar1f35bf92006-03-07 22:38:47 +0000979
Bram Moolenaar3d0a6032006-02-09 23:54:54 +0000980|CursorHoldI| the user doesn't press a key for a while in Insert mode
981|CursorMoved| the cursor was moved in Normal mode
982|CursorMovedI| the cursor was moved in Insert mode
983
Bram Moolenaarbd404142006-03-25 22:05:04 +0000984|FileChangedShellPost| after handling a file changed outside of Vim
985
986|InsertEnter| starting Insert or Replace mode
987|InsertChange| going from Insert to Replace mode or back
988|InsertLeave| leaving Insert or Replace mode
989
990|MenuPopup| just before showing popup menu
991
992|QuickFixCmdPre| before :make, :grep et al. (Ciaran McCreesh)
993|QuickFixCmdPost| after :make, :grep et al. (Ciaran McCreesh)
994
995|SessionLoadPost| after loading a session file. (Yegappan Lakshmanan)
996
997|ShellCmdPost| after executing a shell command
998|ShellFilterPost| after filtering with a shell command
999
1000|SourcePre| before sourcing a Vim script
1001
1002|SpellFileMissing| when a spell file can't be found
1003
1004|SwapExists| found existing swap file when editing a file
1005
1006|TabEnter| just after entering a tab page
1007|TabLeave| just before leaving a tab page
1008
1009|VimResized| after the Vim window size changed (Yakov Lerner)
1010
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +00001011
Bram Moolenaar96351572006-05-05 21:16:59 +00001012New highlight groups: ~
1013
1014Pmenu Popup menu: normal item |hl-Pmenu|
1015PmenuSel Popup menu: selected item |hl-PmenuSel|
1016PmenuThumb Popup menu: scrollbar |hl-PmenuThumb|
1017PmenuSbar Popup menu: Thumb of the scrollbar |hl-PmenuSbar|
1018
1019TabLine tab pages line, inactive label |hl-TabLine|
1020TabLineSel tab pages line, selected label |hl-TabLineSel|
1021TabLineFill tab pages line, filler |hl-TabLineFill|
1022
1023SpellBad badly spelled word |hl-SpellBad|
1024SpellCap word with wrong caps |hl-SpellCap|
1025SpellRare rare word |hl-SpellRare|
1026SpellLocal word only exists in other region |hl-SpellLocal|
1027
1028CursorColumn 'cursorcolumn' |hl-CursorColumn|
1029CursorLine 'cursorline' |hl-CursorLine|
1030
1031MatchParen matching parens |pi_paren.txt| |hl-MatchParen|
1032
1033
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001034New items in search patterns: ~
1035|/\%d| \%d123 search for character with decimal number
Bram Moolenaar49325942007-05-10 19:19:59 +00001036|/\]| [\d123] idem, in a collection
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001037|/\%o| \%o103 search for character with octal number
Bram Moolenaar49325942007-05-10 19:19:59 +00001038|/\]| [\o1o3] idem, in a collection
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001039|/\%x| \%x1a search for character with 2 pos. hex number
Bram Moolenaar49325942007-05-10 19:19:59 +00001040|/\]| [\x1a] idem, in a collection
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001041|/\%u| \%u12ab search for character with 4 pos. hex number
Bram Moolenaar49325942007-05-10 19:19:59 +00001042|/\]| [\u12ab] idem, in a collection
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001043|/\%U| \%U1234abcd search for character with 8 pos. hex number
Bram Moolenaar49325942007-05-10 19:19:59 +00001044|/\]| [\U1234abcd] idem, in a collection
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001045 (The above partly by Ciaran McCreesh)
Bram Moolenaar33aec762006-01-22 23:30:12 +00001046
Bram Moolenaar13fcaaf2005-04-15 21:13:42 +00001047|/[[=| [[=a=]] an equivalence class (only for latin1 characters)
1048|/[[.| [[.a.]] a collation element (only works with single char)
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001049
Bram Moolenaar33aec762006-01-22 23:30:12 +00001050|/\%'m| \%'m match at mark m
1051|/\%<'m| \%<'m match before mark m
1052|/\%>'m| \%>'m match after mark m
1053|/\%V| \%V match in Visual area
1054
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001055Nesting |/multi| items no longer is an error when an empty match is possible.
1056
1057It is now possible to use \{0}, it matches the preceding atom zero times. Not
1058useful, just for compatibility.
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001059
1060
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +00001061New Syntax/Indent/FTplugin files: ~
1062
Bram Moolenaarb982ca52005-03-28 21:02:15 +00001063Moved all the indent settings from the filetype plugin to the indent file.
1064Implemented b:undo_indent to undo indent settings when setting 'filetype' to a
1065different value.
1066
Bram Moolenaarbd404142006-03-25 22:05:04 +00001067a2ps syntax and ftplugin file. (Nikolai Weibull)
1068ABAB/4 syntax file. (Marius van Wyk)
1069alsaconf ftplugin file. (Nikolai Weibull)
1070AppendMatchGroup ftplugin file. (Dave Silvia)
1071arch ftplugin file. (Nikolai Weibull)
1072asterisk and asteriskvm syntax file. (Tilghman Lesher)
1073BDF ftplugin file. (Nikolai Weibull)
1074BibTeX indent file. (Dorai Sitaram)
Bram Moolenaar437df8f2006-04-27 21:47:44 +00001075BibTeX Bibliography Style syntax file. (Tim Pope)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001076BTM ftplugin file. (Bram Moolenaar)
1077calendar ftplugin file. (Nikolai Weibull)
1078Changelog indent file. (Nikolai Weibull)
Bram Moolenaar57657d82006-04-21 22:12:41 +00001079ChordPro syntax file. (Niels Bo Andersen)
Bram Moolenaarc1e37902006-04-18 21:55:01 +00001080Cmake indent and syntax file. (Andy Cedilnik)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001081conf ftplugin file. (Nikolai Weibull)
1082context syntax and ftplugin file. (Nikolai Weibull)
1083CRM114 ftplugin file. (Nikolai Weibull)
1084cvs RC ftplugin file. (Nikolai Weibull)
1085D indent file. (Jason Mills)
Bram Moolenaard2cec5b2006-03-28 21:08:56 +00001086Debian Sources.list syntax file. (Matthijs Mohlmann)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001087dictconf and dictdconf syntax, indent and ftplugin files. (Nikolai Weibull)
1088diff ftplugin file. (Bram Moolenaar)
1089dircolors ftplugin file. (Nikolai Weibull)
1090django and htmldjango syntax file. (Dave Hodder)
Bram Moolenaar8cacf352006-04-15 20:27:24 +00001091doxygen syntax file. (Michael Geddes)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001092elinks ftplugin file. (Nikolai Weibull)
1093eterm ftplugin file. (Nikolai Weibull)
1094eviews syntax file. (Vaidotas Zemlys)
1095fetchmail RC ftplugin file. (Nikolai Weibull)
Bram Moolenaar437df8f2006-04-27 21:47:44 +00001096FlexWiki syntax and ftplugin file. (George Reilly)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001097Generic indent file. (Dave Silvia)
1098gpg ftplugin file. (Nikolai Weibull)
1099gretl syntax file. (Vaidotas Zemlys)
1100groovy syntax file. (Alessio Pace)
1101group syntax and ftplugin file. (Nikolai Weibull)
1102grub ftplugin file. (Nikolai Weibull)
1103Haskell ftplugin file. (Nikolai Weibull)
1104help ftplugin file. (Nikolai Weibull)
1105indent ftplugin file. (Nikolai Weibull)
1106Javascript ftplugin file. (Bram Moolenaar)
Bram Moolenaar4c3f5362006-04-11 21:38:50 +00001107Kconfig ftplugin and syntax file. (Nikolai Weibull)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001108ld syntax, indent and ftplugin file. (Nikolai Weibull)
1109lftp ftplugin file. (Nikolai Weibull)
1110libao config ftplugin file. (Nikolai Weibull)
1111limits syntax and ftplugin file. (Nikolai Weibull)
1112Lisp indent file. (Sergey Khorev)
1113loginaccess and logindefs syntax and ftplugin file. (Nikolai Weibull)
1114m4 ftplugin file. (Nikolai Weibull)
Bram Moolenaar899dddf2006-03-26 21:06:50 +00001115mailaliases syntax file. (Nikolai Weibull)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001116mailcap ftplugin file. (Nikolai Weibull)
1117manconf syntax and ftplugin file. (Nikolai Weibull)
1118matlab ftplugin file. (Jake Wasserman)
Bram Moolenaar779b74b2006-04-10 14:55:34 +00001119Maxima syntax file. (Robert Dodier)
Bram Moolenaar2a3f7ee2006-02-23 21:34:44 +00001120MGL syntax file. (Gero Kuhlmann)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001121modconf ftplugin file. (Nikolai Weibull)
1122mplayer config ftplugin file. (Nikolai Weibull)
Bram Moolenaar437df8f2006-04-27 21:47:44 +00001123Mrxvtrc syntax and ftplugin file. (Gautam Iyer)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001124MuPAD source syntax, indent and ftplugin. (Dave Silvia)
1125mutt RC ftplugin file. (Nikolai Weibull)
1126nanorc syntax and ftplugin file. (Nikolai Weibull)
1127netrc ftplugin file. (Nikolai Weibull)
1128pamconf syntax and ftplugin file. (Nikolai Weibull)
1129Pascal indent file. (Neil Carter)
1130passwd syntax and ftplugin file. (Nikolai Weibull)
1131PHP compiler plugin. (Doug Kearns)
1132pinfo ftplugin file. (Nikolai Weibull)
Bram Moolenaard2cec5b2006-03-28 21:08:56 +00001133plaintex syntax and ftplugin files. (Nikolai Weibull, Benji Fisher)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001134procmail ftplugin file. (Nikolai Weibull)
1135prolog ftplugin file. (Nikolai Weibull)
1136protocols syntax and ftplugin file. (Nikolai Weibull)
1137quake ftplugin file. (Nikolai Weibull)
1138racc syntax and ftplugin file. (Nikolai Weibull)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001139readline ftplugin file. (Nikolai Weibull)
1140rhelp syntax file. (Johannes Ranke)
Bram Moolenaarc1e37902006-04-18 21:55:01 +00001141rnoweb syntax file. (Johannes Ranke)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001142Relax NG compact ftplugin file. (Nikolai Weibull)
1143Scheme indent file. (Sergey Khorev)
1144screen ftplugin file. (Nikolai Weibull)
1145sensors syntax and ftplugin file. (Nikolai Weibull)
1146services syntax and ftplugin file. (Nikolai Weibull)
1147setserial syntax and ftplugin file. (Nikolai Weibull)
1148sieve syntax and ftplugin file. (Nikolai Weibull)
Bram Moolenaar61660ea2006-04-07 21:40:07 +00001149SiSU syntax file (Ralph Amissah)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001150Sive syntax file. (Nikolai Weibull)
1151slp config, reg and spi syntax and ftplugin files. (Nikolai Weibull)
1152SML indent file. (Saikat Guha)
1153SQL anywhere syntax and indent file. (David Fishburn)
1154SQL indent file.
1155SQL-Informix syntax file. (Dean L Hill)
1156SQL: Handling of various variants. (David Fishburn)
1157sshconfig ftplugin file. (Nikolai Weibull)
Bram Moolenaar8cacf352006-04-15 20:27:24 +00001158Stata and SMCL syntax files. (Jeff Pitblado)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001159sudoers ftplugin file. (Nikolai Weibull)
1160sysctl syntax and ftplugin file. (Nikolai Weibull)
1161terminfo ftplugin file. (Nikolai Weibull)
1162trustees syntax file. (Nima Talebi)
Bram Moolenaarc1e37902006-04-18 21:55:01 +00001163Vera syntax file. (David Eggum)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001164udev config, permissions and rules syntax and ftplugin files. (Nikolai Weibull)
1165updatedb syntax and ftplugin file. (Nikolai Weibull)
1166VHDL indent file (Gerald Lai)
1167WSML syntax file. (Thomas Haselwanter)
1168Xdefaults ftplugin file. (Nikolai Weibull)
1169XFree86 config ftplugin file. (Nikolai Weibull)
1170xinetd syntax, indent and ftplugin file. (Nikolai Weibull)
1171xmodmap ftplugin file. (Nikolai Weibull)
1172Xquery syntax file. (Jean-Marc Vanel)
1173xsd (XML schema) indent file.
1174YAML ftplugin file. (Nikolai Weibull)
1175Zsh ftplugin file. (Nikolai Weibull)
1176
Bram Moolenaar261bfea2006-03-01 22:12:31 +00001177
Bram Moolenaar47136d72004-10-12 20:02:24 +00001178New Keymaps: ~
1179
1180Sinhala (Sri Lanka) (Harshula Jayasuriya)
Bram Moolenaar238a5642006-02-21 22:12:05 +00001181Tamil in TSCII encoding (Yegappan Lakshmanan)
Bram Moolenaarbd404142006-03-25 22:05:04 +00001182Greek in cp737 (Panagiotis Louridas)
1183Polish-slash (HS6_06)
1184Ukrainian-jcuken (Anatoli Sakhnik)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00001185Kana (Edward L. Fox)
Bram Moolenaar238a5642006-02-21 22:12:05 +00001186
Bram Moolenaar47136d72004-10-12 20:02:24 +00001187
Bram Moolenaar15d0a8c2004-09-06 17:44:46 +00001188New message translations: ~
1189
Bram Moolenaar8c8de832008-06-24 22:58:06 +00001190The Ukrainian messages are now also available in cp1251.
Bram Moolenaar05159a02005-02-26 23:04:13 +00001191Vietnamese message translations and menu. (Phan Vinh Thinh)
1192
Bram Moolenaar071d4272004-06-13 20:20:40 +00001193
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001194Others: ~
1195
Bram Moolenaar910f66f2006-04-05 20:41:53 +00001196The |:read| command has the |++edit| argument. This means it will use the
1197detected 'fileformat', 'fileencoding' and other options for the buffer. This
1198also fixes the problem that editing a compressed file didn't set these
1199options.
1200
Bram Moolenaar1f35bf92006-03-07 22:38:47 +00001201The Netbeans interface was updated for Sun Studio 10. The protocol number
1202goes from 2.2 to 2.3. (Gordon Prieur)
1203
Bram Moolenaar1056d982006-03-09 22:37:52 +00001204Mac: When starting up Vim will load the $VIMRUNTIME/macmap.vim script to
Bram Moolenaar34e9e2f2006-03-14 23:07:19 +00001205define default command-key mappings. (mostly by Benji Fisher)
Bram Moolenaar1056d982006-03-09 22:37:52 +00001206
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001207Mac: Add the selection type to the clipboard, so that Block, line and
1208character selections can be used between two Vims. (Eckehard Berns)
1209Also fixes the problem that setting 'clipboard' to "unnamed" breaks using
1210"yyp".
Bram Moolenaar071d4272004-06-13 20:20:40 +00001211
Bram Moolenaara5792f52005-11-23 21:25:05 +00001212Mac: GUI font selector. (Peter Cucka)
Bram Moolenaar592e0a22004-07-03 16:05:59 +00001213
Bram Moolenaar207f0092020-08-30 17:20:20 +02001214Mac: support for multibyte characters. (Da Woon Jung)
Bram Moolenaarf9393ef2006-04-24 19:47:27 +00001215This doesn't always work properly. If you see text drawing problems try
1216switching the 'macatsui' option off.
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001217
Bram Moolenaar900b4d72005-12-12 22:05:50 +00001218Mac: Support the xterm mouse in the non-GUI version.
Bram Moolenaar567e4de2004-12-31 21:01:02 +00001219
Bram Moolenaar46c9c732004-12-12 11:37:09 +00001220Mac: better integration with Xcode. Post a fake mouse-up event after the odoc
1221event and the drag receive handler to work around a stall after Vim loads a
1222file. Fixed an off-by-one line number error. (Da Woon Jung)
1223
Bram Moolenaard2cec5b2006-03-28 21:08:56 +00001224Mac: When started from Finder change directory to the file being edited or the
1225user home directory.
1226
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00001227Added the t_SI and t_EI escape sequences for starting and ending Insert mode.
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001228To be used to set the cursor shape to a bar or a block. No default values,
1229they are not supported by termcap/terminfo.
1230
Bram Moolenaar900b4d72005-12-12 22:05:50 +00001231GUI font selector for Motif. (Marcin Dalecki)
1232
1233Nicer toolbar buttons for Motif. (Marcin Dalecki)
1234
1235Mnemonics for the Motif find/replace dialog. (Marcin Dalecki)
1236
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001237Included a few improvements for Motif from Marcin Dalecki. Draw label
1238contents ourselves to make them handle fonts in a way configurable by Vim and
1239a bit less dependent on the X11 font management.
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00001240
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +00001241Autocommands can be defined local to a buffer. This means they will also work
1242when the buffer does not have a name or no specific name. See
1243|autocmd-buflocal|. (Yakov Lerner)
1244
Bram Moolenaar19a09a12005-03-04 23:39:37 +00001245For xterm most combinations of modifiers with function keys are recognized.
1246|xterm-modifier-keys|
1247
Bram Moolenaarae5bce12005-08-15 21:41:48 +00001248When 'verbose' is set the output of ":highlight" will show where a highlight
1249item was last set.
Bram Moolenaare344bea2005-09-01 20:46:49 +00001250When 'verbose' is set the output of the ":map", ":abbreviate", ":command",
1251":function" and ":autocmd" commands will show where it was last defined.
1252(Yegappan Lakshmanan)
Bram Moolenaarae5bce12005-08-15 21:41:48 +00001253
Bram Moolenaardd2436f2005-09-05 22:14:46 +00001254":function /pattern" lists functions matching the pattern.
1255
Bram Moolenaarf75a9632005-09-13 21:20:47 +00001256"1gd" can be used like "gd" but ignores matches in a {} block that ends before
1257the cursor position. Likewise for "1gD" and "gD".
1258
Bram Moolenaar4463f292005-09-25 22:20:24 +00001259'scrolljump' can be set to a negative number to scroll a percentage of the
1260window height.
1261
Bram Moolenaar06b5d512010-05-22 15:37:44 +02001262The |v:scrollstart| variable has been added to help find the location in
Bram Moolenaar07d4d732005-10-03 22:04:08 +00001263your script that causes the hit-enter prompt.
1264
Bram Moolenaar63a121b2005-12-11 21:36:39 +00001265To make it possible to handle the situation that a file is being edited that
1266is already being edited by another Vim instance, the |SwapExists| event has
1267been added. The |v:swapname|, |v:swapchoice| and |v:swapcommand| variables
1268can be used, for example to use the |client-server| functionality to bring the
1269other Vim to the foreground.
Bram Moolenaar146522e2005-12-16 21:55:46 +00001270When starting Vim with a "-t tag" argument, there is an existing swapfile and
1271the user selects "quit" or "abort" then exit Vim.
Bram Moolenaar63a121b2005-12-11 21:36:39 +00001272
Bram Moolenaareddf53b2006-02-27 00:11:10 +00001273Undo now also restores the '< and '> marks. "gv" selects the same area as
1274before the change and undo.
1275
Bram Moolenaarea0cd362006-03-16 21:46:52 +00001276When editing a search pattern for a "/" or "?" command and 'incsearch' is set
1277CTRL-L can be used to add a character from the current match. CTRL-R CTRL-W
1278will add a word, but exclude the part of the word that was already typed.
1279
Bram Moolenaar97b2ad32006-03-18 21:40:56 +00001280Ruby interface: add line number methods. (Ryan Paul)
1281
Bram Moolenaar910f66f2006-04-05 20:41:53 +00001282The $MYVIMRC environment variable is set to the first found vimrc file.
1283The $MYGVIMRC environment variable is set to the first found gvimrc file.
1284
Bram Moolenaar071d4272004-06-13 20:20:40 +00001285==============================================================================
1286IMPROVEMENTS *improvements-7*
1287
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001288":helpgrep" accepts a language specifier after the pattern: "pat@it".
1289
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001290Moved the help for printing to a separate help file. It's quite a lot now.
Bram Moolenaar8299df92004-07-10 09:47:34 +00001291
Bram Moolenaar1f35bf92006-03-07 22:38:47 +00001292When doing completion for ":!cmd", ":r !cmd" or ":w !cmd" executable files are
Bram Moolenaar551dbcc2006-04-25 22:13:59 +00001293found in $PATH instead of looking for ordinary files in the current directory.
Bram Moolenaar1f35bf92006-03-07 22:38:47 +00001294
Bram Moolenaara5792f52005-11-23 21:25:05 +00001295When ":silent" is used and a backwards range is given for an Ex command the
1296range is swapped automatically instead of asking if that is OK.
1297
Bram Moolenaar8bf59b92005-03-06 23:40:56 +00001298The pattern matching code was changed from a recursive function to an
1299iterative mechanism. This avoids out-of-stack errors. State is stored in
1300allocated memory, running out of memory can always be detected. Allows
1301matching more complex things, but Vim may seem to hang while doing that.
1302
Bram Moolenaarb71eaae2006-01-20 23:10:18 +00001303Previously some options were always evaluated in the |sandbox|. Now that only
1304happens when the option was set from a modeline or in secure mode. Applies to
1305'balloonexpr', 'foldexpr', 'foldtext' and 'includeexpr'. (Sumner Hayes)
1306
1307Some commands and expressions could have nasty side effects, such as using
1308CTRL-R = while editing a search pattern and the expression invokes a function
1309that jumps to another window. The |textlock| has been added to prevent this
1310from happening.
1311
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001312":breakadd here" and ":breakdel here" can be used to set or delete a
1313breakpoint at the cursor.
1314
Bram Moolenaar997fb4b2006-02-17 21:53:23 +00001315It is now possible to define a function with: >
1316 :exe "func Test()\n ...\n endfunc"
1317
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001318The tutor was updated to make it simpler to use and text was added to explain
1319a few more important commands. Used ideas from Gabriel Zachmann.
Bram Moolenaar071d4272004-06-13 20:20:40 +00001320
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +00001321Unix: When libcall() fails obtain an error message with dlerror() and display
1322it. (Johannes Zellner)
1323
Bram Moolenaarcc016f52005-12-10 20:23:46 +00001324Mac and Cygwin: When editing an existing file make the file name the same case
1325of the edited file. Thus when typing ":e os_UNIX.c" the file name becomes
1326"os_unix.c".
1327
Bram Moolenaar592e0a22004-07-03 16:05:59 +00001328Added "nbsp" in 'listchars'. (David Blanchet)
1329
Bram Moolenaar21cf8232004-07-16 20:18:37 +00001330Added the "acwrite" value for the 'buftype' option. This is for a buffer that
Bram Moolenaara5792f52005-11-23 21:25:05 +00001331does not have a name that refers to a file and is written with BufWriteCmd
Bram Moolenaar21cf8232004-07-16 20:18:37 +00001332autocommands.
1333
Bram Moolenaar325b7a22004-07-05 15:58:32 +00001334For lisp indenting and matching parenthesis: (Sergey Khorev)
1335- square brackets are recognized properly
1336- #\(, #\), #\[ and #\] are recognized as character literals
1337- Lisp line comments (delimited by semicolon) are recognized
1338
Bram Moolenaar89cb5e02004-07-19 20:55:54 +00001339Added the "count" argument to match(), matchend() and matchstr(). (Ilya Sher)
1340
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001341winnr() takes an optional "$" or "#" argument. (Nikolai Weibull, Yegappan
Bram Moolenaar5eb86f92004-07-26 12:53:41 +00001342Lakshmanan)
1343
Bram Moolenaar768b8c42006-03-04 21:58:33 +00001344Added 's' flag to search(): set ' mark if cursor moved. (Yegappan Lakshmanan)
Bram Moolenaar5eb86f92004-07-26 12:53:41 +00001345Added 'n' flag to search(): don't move the cursor. (Nikolai Weibull)
Bram Moolenaar768b8c42006-03-04 21:58:33 +00001346Added 'c' flag to search(): accept match at the cursor.
1347Added 'e' flag to search(): move to end of the match. (Benji Fisher)
1348Added 'p' flag to search(): return number of sub-pattern. (Benji Fisher)
1349These also apply to searchpos(), searchpair() and searchpairpos().
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001350
Bram Moolenaar768b8c42006-03-04 21:58:33 +00001351The search() and searchpair() functions have an extra argument to specify
1352where to stop searching. Speeds up searches that should not continue too far.
Bram Moolenaar5eb86f92004-07-26 12:53:41 +00001353
Bram Moolenaard4755bb2004-09-02 19:12:26 +00001354When uncompressing fails in the gzip plugin, give an error message but don't
1355delete the raw text. Helps if the file has a .gz extension but is not
1356actually compressed. (Andrew Pimlott)
1357
1358When C, C++ or IDL syntax is used, may additionally load doxygen syntax.
Bram Moolenaard4755bb2004-09-02 19:12:26 +00001359(Michael Geddes)
1360
Bram Moolenaar97b2ad32006-03-18 21:40:56 +00001361Support setting 'filetype' and 'syntax' to "aaa.bbb" for "aaa" plus "bbb"
1362filetype or syntax.
1363
Bram Moolenaar207f0092020-08-30 17:20:20 +02001364The ":registers" command now displays multibyte characters properly.
Bram Moolenaard4755bb2004-09-02 19:12:26 +00001365
1366VMS: In the usage message mention that a slash can be used to make a flag
1367upper case. Add color support to the builtin vt320 terminal codes.
1368(Zoltan Arpadffy)
1369
Bram Moolenaar15d0a8c2004-09-06 17:44:46 +00001370For the '%' item in 'viminfo', allow a number to set a maximum for the number
1371of buffers.
1372
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001373For recognizing the file type: When a file looks like a shell script, check
1374for an "exec" command that starts the tcl interpreter. (suggested by Alexios
1375Zavras)
Bram Moolenaar3fdfa4a2004-10-07 21:02:47 +00001376
1377Support conversion between utf-8 and latin9 (iso-8859-15) internally, so that
1378digraphs still work when iconv is not available.
1379
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00001380When a session file is loaded while editing an unnamed, empty buffer that
1381buffer is wiped out. Avoids that there is an unused buffer in the buffer
1382list.
1383
1384Win32: When libintl.dll supports bind_textdomain_codeset(), use it.
1385(NAKADAIRA Yukihiro)
1386
Bram Moolenaare224ffa2006-03-01 00:01:28 +00001387Win32: Vim was not aware of hard links on NTFS file systems. These are
1388detected now for when 'backupcopy' is "auto". Also fixed a bogus "file has
1389been changed since reading it" error for links.
1390
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00001391When foldtext() finds no text after removing the comment leader, use the
1392second line of the fold. Helps for C-style /* */ comments where the first
1393line is just "/*".
1394
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00001395When editing the same file from two systems (e.g., Unix and MS-Windows) there
1396mostly was no warning for an existing swap file, because the name of the
1397edited file differs (e.g., y:\dir\file vs /home/me/dir/file). Added a flag to
1398the swap file to indicate it is in the same directory as the edited file. The
1399used path then doesn't matter and the check for editing the same file is much
1400more reliable.
1401
Bram Moolenaar900b4d72005-12-12 22:05:50 +00001402Unix: When editing a file through a symlink the swap file would use the name
1403of the symlink. Now use the name of the actual file, so that editing the same
1404file twice is detected. (suggestions by Stefano Zacchiroli and James Vega)
1405
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00001406Client-server communication now supports 'encoding'. When setting 'encoding'
1407in a Vim server to "utf-8", and using "vim --remote fname" in a console,
1408"fname" is converted from the console encoding to utf-8. Also allows Vims
1409with different 'encoding' settings to exchange messages.
1410
Bram Moolenaar86b68352004-12-27 21:59:20 +00001411Internal: Changed ga_room into ga_maxlen, so that it doesn't need to be
1412incremented/decremented each time.
1413
Bram Moolenaar49cd9572005-01-03 21:06:01 +00001414When a register is empty it is not stored in the viminfo file.
1415
Bram Moolenaar8c711452005-01-14 21:53:12 +00001416Removed the tcltags script, it's obsolete.
1417
Bram Moolenaar67fe1a12005-05-22 22:12:58 +00001418":redir @*>>" and ":redir @+>>" append to the clipboard. Better check for
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001419invalid characters after the register name. |:redir|
1420
1421":redir => variable" and ":redir =>> variable" write or append to a variable.
1422(Yegappan Lakshmanan) |:redir|
Bram Moolenaardcaf10e2005-01-21 11:55:25 +00001423
Bram Moolenaar231334e2005-07-25 20:46:57 +00001424":redir @{a-z}>>" appends to register a to z. (Yegappan Lakshmanan)
Bram Moolenaar67fe1a12005-05-22 22:12:58 +00001425
Bram Moolenaar54ee7752005-05-31 22:22:17 +00001426The 'verbosefile' option can be used to log messages in a file. Verbose
1427messages are not displayed then. The "-V{filename}" argument can be used to
1428log startup messages.
1429
Bram Moolenaardcaf10e2005-01-21 11:55:25 +00001430":let g:" lists global variables.
1431":let b:" lists buffer-local variables.
1432":let w:" lists window-local variables.
1433":let v:" lists Vim variables.
1434
Bram Moolenaard438e912005-01-31 19:21:46 +00001435The stridx() and strridx() functions take a third argument, where to start
1436searching. (Yegappan Lakshmanan)
Bram Moolenaarb71ec9f2005-01-25 22:22:02 +00001437
Bram Moolenaar67fe1a12005-05-22 22:12:58 +00001438The getreg() function takes an extra argument to be able to get the expression
1439for the '=' register instead of the result of evaluating it.
1440
1441The setline() function can take a List argument to set multiple lines. When
1442the line number is just below the last line the line is appended.
1443
Bram Moolenaarbee0c5b2005-02-07 22:03:36 +00001444g CTRL-G also shows the number of characters if it differs from the number of
1445bytes.
1446
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001447Completion for ":debug" and entering an expression for the '=' register. Skip
Bram Moolenaar3df01732017-02-17 22:47:16 +01001448":" between range and command name. (Peter Winters)
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001449
1450CTRL-Q in Insert mode now works like CTRL-V by default. Previously it was
1451ignored.
1452
1453When "beep" is included in 'debug' a function or script that causes a beep
1454will result in a message with the source of the error.
1455
Bram Moolenaar05159a02005-02-26 23:04:13 +00001456When completing buffer names, match with "\(^\|[\/]\)" instead of "^", so that
1457":buf stor<Tab>" finds both "include/storage.h" and "storage/main.c".
1458
1459To count items (pattern matches) without changing the buffer the 'n' flag has
1460been added to |:substitute|. See |count-items|.
1461
Bram Moolenaarea0cd362006-03-16 21:46:52 +00001462In a |:substitute| command the \u, \U, \l and \L items now also work for
Bram Moolenaar207f0092020-08-30 17:20:20 +02001463multibyte characters.
Bram Moolenaarea0cd362006-03-16 21:46:52 +00001464
Bram Moolenaar038eb0e2005-02-27 22:43:26 +00001465The "screen.linux" $TERM name is recognized to set the default for
Bram Moolenaar482aaeb2005-09-29 18:26:07 +00001466'background' to "dark". (Ciaran McCreesh) Also for "cygwin" and "putty".
Bram Moolenaar19a09a12005-03-04 23:39:37 +00001467
1468The |FileChangedShell| autocommand event can now use the |v:fcs_reason|
1469variable that specifies what triggered the event. |v:fcs_choice| can be used
1470to reload the buffer or ask the user what to do.
Bram Moolenaar038eb0e2005-02-27 22:43:26 +00001471
Bram Moolenaar8bf59b92005-03-06 23:40:56 +00001472Not all modifiers were recognized for xterm function keys. Added the
1473possibility in term codes to end in ";*X" or "O*X", where X is any character
1474and the * stands for the modifier code.
1475Added the <xUp>, <xDown>, <xLeft> and <xRight> keys, to be able to recognize
1476the two forms that xterm can send their codes in and still handle all possible
1477modifiers.
1478
Bram Moolenaarc0761132005-03-18 20:30:32 +00001479getwinvar() now also works to obtain a buffer-local option from the specified
1480window.
1481
Bram Moolenaarb982ca52005-03-28 21:02:15 +00001482Added the "%s" item to 'errorformat'. (Yegappan Lakshmanan)
Bram Moolenaarb3656ed2006-03-20 21:59:49 +00001483Added the "%>" item to 'errorformat'.
1484
1485For 'errorformat' it was not possible to have a file name that contains the
1486character that follows after "%f". For example, in "%f:%l:%m" the file name
1487could not contain ":". Now include the first ":" where the rest of the
1488pattern matches. In the example a ":" not followed by a line number is
1489included in the file name. (suggested by Emanuele Giaquinta)
Bram Moolenaarb982ca52005-03-28 21:02:15 +00001490
Bram Moolenaar34cdc3e2005-05-18 22:24:46 +00001491GTK GUI: use the GTK file dialog when it's available. Mix from patches by
1492Grahame Bowland and Evan Webb.
1493
Bram Moolenaar9ba0eb82005-06-13 22:28:56 +00001494Added ":scriptnames" to bugreport.vim, so that we can see what plugins were
1495used.
1496
Bram Moolenaar520470a2005-06-16 21:59:56 +00001497Win32: If the user changes the setting for the number of lines a scroll wheel
1498click scrolls it is now used immediately. Previously Vim would need to be
1499restarted.
1500
Bram Moolenaarb2ec3072005-06-17 22:02:20 +00001501When using @= in an expression the value is expression @= contains. ":let @=
1502= value" can be used to set the register contents.
1503
Bram Moolenaar51bab742005-07-08 22:31:03 +00001504A ! can be added to ":popup" to have the popup menu appear at the mouse
1505pointer position instead of the text cursor.
1506
Bram Moolenaard8e9bb22005-07-09 21:14:46 +00001507The table with encodings has been expanded with many MS-Windows codepages,
1508such as cp1250 and cp737, so that these can also be used on Unix without
1509prepending "8bit-".
Bram Moolenaarae5bce12005-08-15 21:41:48 +00001510When an encoding name starts with "microsoft-cp" ignore the "microsoft-" part.
Bram Moolenaard8e9bb22005-07-09 21:14:46 +00001511
1512Added the "customlist" completion argument to a user-defined command. The
1513user-defined completion function should return the completion candidates as a
Bram Moolenaar231334e2005-07-25 20:46:57 +00001514Vim List and the returned results are not filtered by Vim. (Yegappan
1515Lakshmanan)
Bram Moolenaard8e9bb22005-07-09 21:14:46 +00001516
Bram Moolenaar342337a2005-07-21 21:11:17 +00001517Win32: Balloons can have multiple lines if common controls supports it.
1518(Sergey Khorev)
1519
Bram Moolenaar90cfdbe2005-08-12 19:59:19 +00001520For command-line completion the matches for various types of arguments are now
1521sorted: user commands, variables, syntax names, etc.
1522
Bram Moolenaara2036d22005-08-23 21:04:20 +00001523When no locale is set, thus using the "C" locale, Vim will work with latin1
Bram Moolenaara5792f52005-11-23 21:25:05 +00001524characters, using its own isupper()/toupper()/etc. functions.
Bram Moolenaara2036d22005-08-23 21:04:20 +00001525
Bram Moolenaarac6e65f2005-08-29 22:25:38 +00001526When using an rxvt terminal emulator guess the value of 'background' using the
1527COLORFGBG environment variable. (Ciaran McCreesh)
1528
1529Also support t_SI and t_EI on Unix with normal features. (Ciaran McCreesh)
1530
Bram Moolenaardcca87b2005-09-10 19:24:59 +00001531When 'foldcolumn' is one then put as much info in it as possible. This allows
1532closing a fold with the mouse by clicking on the '-'.
1533
Bram Moolenaarbfd8fc02005-09-20 23:22:24 +00001534input() takes an optional completion argument to specify the type of
1535completion supported for the input. (Yegappan Lakshmanan)
1536
Bram Moolenaar4463f292005-09-25 22:20:24 +00001537"dp" works with more than two buffers in diff mode if there is only one where
1538'modifiable' is set.
1539
Bram Moolenaar27dc1952006-03-15 23:06:44 +00001540The 'diffopt' option has three new values: "horizontal", "vertical" and
1541"foldcolumn".
1542
Bram Moolenaar69e0ff92005-09-30 21:23:56 +00001543When the 'include' option contains \zs the file name found is what is being
1544matched from \zs to the end or \ze. Useful to pass more to 'includeexpr'.
1545
Bram Moolenaar07d4d732005-10-03 22:04:08 +00001546Loading plugins on startup now supports subdirectories in the plugin
1547directory. |load-plugins|
1548
Bram Moolenaard5cdbeb2005-10-10 20:59:28 +00001549In the foldcolumn always show the '+' for a closed fold, so that it can be
1550opened easily. It may overwrite another character, esp. if 'foldcolumn' is 1.
1551
1552It is now possible to get the W10 message again by setting 'readonly'. Useful
1553in the FileChangedRO autocommand when checking out the file fails.
1554
Bram Moolenaar784c6142005-10-11 20:34:58 +00001555Unix: When open() returns EFBIG give an appropriate message.
1556
Bram Moolenaar241a8aa2005-12-06 20:04:44 +00001557":mksession" sets the SessionLoad variable to notify plugins. A modeline is
1558added to the session file to set 'filetype' to "vim".
1559
Bram Moolenaard5bc83f2005-12-07 21:07:59 +00001560In the ATTENTION prompt put the "Delete it" choice before "Quit" to make it
1561more logical. (Robert Webb)
1562
Bram Moolenaar63a121b2005-12-11 21:36:39 +00001563When appending to a file while the buffer has no name the name of the appended
1564file would be used for the current buffer. But the buffer contents is
1565actually different from the file content. Don't set the file name, unless the
1566'P' flag is present in 'cpoptions'.
1567
Bram Moolenaar900b4d72005-12-12 22:05:50 +00001568When starting to edit a new file and the directory for the file doesn't exist
1569then Vim will report "[New DIRECTORY]" instead of "[New File] to give the user
1570a hint that something might be wrong.
1571
Bram Moolenaarbca84a12005-12-14 22:08:35 +00001572Win32: Preserve the hidden attribute of the viminfo file.
1573
Bram Moolenaar146522e2005-12-16 21:55:46 +00001574In Insert mode CTRL-A didn't keep the last inserted text when using CTRL-O and
1575then a cursor key. Now keep the previously inserted text if nothing is
1576inserted after the CTRL-O. Allows using CTRL-O commands to move the cursor
1577without losing the last inserted text.
Bram Moolenaarbca84a12005-12-14 22:08:35 +00001578
Bram Moolenaarf4cd3e82005-12-22 22:47:02 +00001579The exists() function now supports checking for autocmd group definition
Bram Moolenaarcc984262005-12-23 22:19:46 +00001580and for supported autocommand events. (Yegappan Lakshmanan)
Bram Moolenaara9b1e742005-12-19 22:14:58 +00001581
Bram Moolenaar4770d092006-01-12 23:22:24 +00001582Allow using ":global" in the sandbox, it doesn't do anything harmful by
1583itself.
1584
Bram Moolenaarb71eaae2006-01-20 23:10:18 +00001585":saveas asdf.c" will set 'filetype' to c when it's empty. Also for ":w
1586asdf.c" when it sets the filename for the buffer.
1587
Bram Moolenaar1d2ba7f2006-02-14 22:29:30 +00001588Insert mode completion for whole lines now also searches unloaded buffers.
Bram Moolenaarb71eaae2006-01-20 23:10:18 +00001589
Bram Moolenaarf740b292006-02-16 22:11:02 +00001590The colortest.vim script can now be invoked directly with ":source" or
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001591":runtime syntax/colortest.vim".
Bram Moolenaarf740b292006-02-16 22:11:02 +00001592
Bram Moolenaard1f56e62006-02-22 21:25:37 +00001593The 'statusline' option can be local to the window, so that each window can
1594have a different value. (partly by Yegappan Lakshmanan)
1595
Bram Moolenaar238a5642006-02-21 22:12:05 +00001596The 'statusline' option and other options that support the same format can now
1597use these new features:
1598- When it starts with "%!" the value is first evaluated as an expression
1599 before parsing the value.
1600- "%#HLname#" can be used to start highlighting with HLname.
1601
Bram Moolenaard1f56e62006-02-22 21:25:37 +00001602When 'statusline' is set to something that causes an error message then it is
1603made empty to avoid an endless redraw loop. Also for other options, such at
Bram Moolenaarea0cd362006-03-16 21:46:52 +00001604'tabline' and 'titlestring'. ":verbose set statusline" will mention that it
1605was set in an error handler.
Bram Moolenaard1f56e62006-02-22 21:25:37 +00001606
Bram Moolenaar32466aa2006-02-24 23:53:04 +00001607When there are several matching tags, the ":tag <name>" and CTRL-] commands
1608jump to the [count] matching tag. (Yegappan Lakshmanan)
1609
Bram Moolenaar97b2ad32006-03-18 21:40:56 +00001610Win32: In the batch files generated by the install program, use $VIMRUNTIME or
1611$VIM if it's set. Example provided by Mathias Michaelis.
1612Also create a vimtutor.bat batch file.
Bram Moolenaar32466aa2006-02-24 23:53:04 +00001613
Bram Moolenaarb3656ed2006-03-20 21:59:49 +00001614The 'balloonexpr' option is now |global-local|.
1615
Bram Moolenaare580b0c2006-03-21 21:33:03 +00001616The system() function now runs in cooked mode, thus can be interrupted by
1617CTRL-C.
1618
Bram Moolenaar071d4272004-06-13 20:20:40 +00001619==============================================================================
1620COMPILE TIME CHANGES *compile-changes-7*
1621
Bram Moolenaar2079a602005-01-04 21:43:22 +00001622Dropped the support for the BeOS and Amiga GUI. They were not maintained and
1623probably didn't work. If you want to work on this: get the Vim 6.x version
1624and merge it back in.
1625
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001626When running the tests and one of them fails to produce "test.out" the
1627following tests are still executed. This helps when running out of memory.
1628
Bram Moolenaar34401cc2014-08-29 15:12:19 +02001629When compiling with EXITFREE defined and the ccmalloc library, it is possible
1630to detect memory leaks. Some memory will always be reported as leaked, such
1631as allocated by X11 library functions and the memory allocated in
1632alloc_cmdbuff() to store the ":quit" command.
Bram Moolenaarf461c8e2005-06-25 23:04:51 +00001633
Bram Moolenaar231334e2005-07-25 20:46:57 +00001634Moved the code for printing to src/hardcopy.c.
1635
1636Moved some code from main() to separate functions to make it easier to see
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00001637what is being done. Using a structure to avoid a lot of arguments to the
Bram Moolenaar231334e2005-07-25 20:46:57 +00001638functions.
1639
1640Moved unix_expandpath() to misc1.c, so that it can also be used by os_mac.c
1641without copying the code.
1642
Bram Moolenaar362e1a32006-03-06 23:29:24 +00001643--- Mac ---
1644
1645"make" now creates the Vim.app directory and "make install" copies it to its
1646final destination. (Raf)
1647
Bram Moolenaar27dc1952006-03-15 23:06:44 +00001648Put the runtime directory not directly in Vim.app but in
1649Vim.app/Contents/Resources/vim, so that it's according to Mac specs.
1650
Bram Moolenaar362e1a32006-03-06 23:29:24 +00001651Made it possible to compile with Motif, Athena or GTK without tricks and still
1652being able to use the MacRoman conversion. Added the os_mac_conv.c file.
1653
1654When running "make install" the runtime files are installed as for Unix.
Bram Moolenaare344bea2005-09-01 20:46:49 +00001655Avoids that too many files are copied. When running "make" a link to the
1656runtime files is created to avoid a recursive copy that takes much time.
1657
Bram Moolenaar362e1a32006-03-06 23:29:24 +00001658Configure will attempt to build Vim for both Intel and PowerPC. The
Bram Moolenaareddf53b2006-02-27 00:11:10 +00001659--with-mac-arch configure argument can change it.
1660
Bram Moolenaar362e1a32006-03-06 23:29:24 +00001661--- Win32 ---
1662
1663The Make_mvc.mak file was adjusted to work with the latest MS compilers,
1664including the free version of Visual Studio 2005. (George Reilly)
1665
1666INSTALLpc.txt was updated for the recent changes. (George Reilly)
1667
1668The distributed executable is now produced with the free Visual C++ Toolkit
16692003 and other free SDK chunks. msvcsetup.bat was added to support this.
1670
1671Also generate the .pdb file that can be used to generate a useful crash report
1672on MS-Windows. (George Reilly)
1673
Bram Moolenaar071d4272004-06-13 20:20:40 +00001674==============================================================================
1675BUG FIXES *bug-fixes-7*
1676
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001677When using PostScript printing on MS-DOS the default 'printexpr' used "lpr"
1678instead of "copy". When 'printdevice' was empty the copy command did not
1679work. Use "LPT1" then.
1680
1681The GTK font dialog uses a font size zero when the font name doesn't include a
1682size. Use a default size of 10.
1683
Bram Moolenaar03413f42016-04-12 21:07:15 +02001684This example in the documentation didn't work: >
Bram Moolenaar166af9b2010-11-16 20:34:40 +01001685 :e `=foo . ".c"`
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001686Skip over the expression in `=expr` when looking for comments, |, % and #.
1687
1688When ":helpgrep" doesn't find anything there is no error message.
1689
1690"L" and "H" did not take closed folds into account.
1691
1692Win32: The "-P title" argument stopped at the first title that matched, even
1693when it doesn't support MDI.
1694
1695Mac GUI: CTRL-^ and CTRL-@ did not work.
1696
1697"2daw" on "word." at the end of a line didn't include the preceding white
1698space.
1699
1700Win32: Using FindExecutable() doesn't work to find a program. Use
1701SearchPath() instead. For executable() use $PATHEXT when the program searched
1702for doesn't have an extension.
1703
1704When 'virtualedit' is set, moving the cursor up after appending a character
1705may move it to a different column. Was caused by auto-formatting moving the
1706cursor and not putting it back where it was.
1707
1708When indent was added automatically and then moving the cursor, the indent was
1709not deleted (like when pressing ESC). The "I" flag in 'cpoptions' can be used
1710to make it work the old way.
1711
Bram Moolenaarf4b8e572004-06-24 15:53:16 +00001712When opening a command-line window, 'textwidth' gets set to 78 by the Vim
1713filetype plugin. Reset 'textwidth' to 0 to avoid lines are broken.
1714
1715After using cursor(line, col) moving up/down doesn't keep the same column.
1716
1717Win32: Borland C before 5.5 requires using ".u." for LowPart and HighPart
1718fields. (Walter Briscoe)
Bram Moolenaar071d4272004-06-13 20:20:40 +00001719
Bram Moolenaar843ee412004-06-30 16:16:41 +00001720On Sinix SYS_NMLN isn't always defined. Define it ourselves. (Cristiano De
1721Michele)
1722
Bram Moolenaar325b7a22004-07-05 15:58:32 +00001723Printing with PostScript may keep the printer waiting for more. Append a
1724CTRL-D to the printer output. (Mike Williams)
1725
Bram Moolenaar2df6dcc2004-07-12 15:53:54 +00001726When converting a string with a hex or octal number the leading '-' was
1727ignored. ":echo '-05' + 0" resulted in 5 instead of -5.
1728
1729Using "@:" to repeat a command line didn't work when it contains control
Bram Moolenaar90cfdbe2005-08-12 19:59:19 +00001730characters. Also remove "'<,'>" when in Visual mode to avoid that it appears
1731twice.
Bram Moolenaar2df6dcc2004-07-12 15:53:54 +00001732
Bram Moolenaar21cf8232004-07-16 20:18:37 +00001733When using file completion for a user command, it would not expand environment
1734variables like for a regular command with a file argument.
1735
1736'cindent': When the argument of a #define looks like a C++ class the next line
1737is indented too much.
1738
Bram Moolenaar207f0092020-08-30 17:20:20 +02001739When 'comments' includes multibyte characters inserting the middle part and
Bram Moolenaar21cf8232004-07-16 20:18:37 +00001740alignment may go wrong. 'cindent' also suffers from this for right-aligned
1741items.
1742
Bram Moolenaar05159a02005-02-26 23:04:13 +00001743Win32: when 'encoding' is set to "utf-8" getenv() still returns strings in the
1744active codepage. Convert to utf-8. Also for $HOME.
1745
Bram Moolenaarab79bcb2004-07-18 21:34:53 +00001746The default for 'helplang' was "zh" for both "zh_cn" and "zh_tw". Now use
1747"cn" or "tw" as intended.
1748
Bram Moolenaar5eb86f92004-07-26 12:53:41 +00001749When 'bin' is set and 'eol' is not set then line2byte() added the line break
1750after the last line while it's not there.
1751
1752Using foldlevel() in a WinEnter autocommand may not work. Noticed when
1753resizing the GUI shell upon startup.
1754
1755Python: Using buffer.append(f.readlines()) didn't work. Allow appending a
1756string with a trailing newline. The newline is ignored.
1757
Bram Moolenaar269ec652004-07-29 08:43:53 +00001758When using the ":saveas f2" command for buffer "f1", the Buffers menu would
1759contain "f2" twice, one of them leading to "f1". Also trigger the BufFilePre
1760and BufFilePost events for the alternate buffer that gets the old name.
1761
Bram Moolenaard4755bb2004-09-02 19:12:26 +00001762strridx() did not work well when the needle is empty. (Ciaran McCreesh)
1763
1764GTK: Avoid a potential hang in gui_mch_wait_for_chars() when input arrives
1765just before it is invoked
1766
1767VMS: Occasionally CR characters were inserted in the file. Expansion of
1768environment variables was not correct. (Zoltan Arpadffy)
1769
1770UTF-8: When 'delcombine' is set "dw" only deleted the last combining character
1771from the first character of the word.
1772
1773When using ":sball" in an autocommand only the filetype in one buffer was
1774detected. Reset did_filetype in enter_buffer().
1775
1776When using ":argdo" and the window already was at the first argument index,
1777but not actually editing it, the current buffer would be used instead.
1778
Bram Moolenaar15d0a8c2004-09-06 17:44:46 +00001779When ":next dir/*" includes many matches, adding the names to the argument
1780list may take an awful lot of time and can't be interrupted. Allow
1781interrupting this.
1782
1783When editing a file that was already loaded in a buffer, modelines were not
1784used. Now window-local options in the modeline are set. Buffer-local options
1785and global options remain unmodified.
1786
1787Win32: When 'encoding' is set to "utf-8" in the vimrc file, files from the
1788command line with non-ASCII characters are not used correctly. Recode the
1789file names when 'encoding' is set, using the Unicode command line.
1790
Bram Moolenaarc0197e22004-09-13 20:26:32 +00001791Win32 console: When the default for 'encoding' ends up to be "latin1", the
1792default value of 'isprint' was wrong.
1793
1794When an error message is given while waiting for a character (e.g., when an
1795xterm reports the number of colors), the hit-enter prompt overwrote the last
1796line. Don't reset msg_didout in normal_cmd() for K_IGNORE.
1797
Bram Moolenaar3fdfa4a2004-10-07 21:02:47 +00001798Mac GUI: Shift-Tab didn't work.
1799
1800When defining tooltip text, don't translate terminal codes, since it's not
1801going to be used like a command.
1802
1803GTK 2: Check the tooltip text for valid utf-8 characters to avoid getting a
1804GTK error. Invalid characters may appear when 'encoding' is changed.
1805
1806GTK 2: Add a safety check for invalid utf-8 sequences, they can crash pango.
1807
1808Win32: When 'encoding' is changed while starting up, use the Unicode command
1809line to convert the file arguments to 'encoding'. Both for the GUI and the
1810console version.
1811
1812Win32 GUI: latin9 text (iso-8859-15) was not displayed correctly, because
1813there is no codepage for latin9. Do our own conversion from latin9 to UCS2.
1814
Bram Moolenaar7b0294c2004-10-11 10:16:09 +00001815When two versions of GTK+ 2 are installed it was possible to use the header
1816files from one and the library from the other. Use GTK_LIBDIR to put the
1817directory for the library early in the link flags.
1818
1819With the GUI find/replace dialog a replace only worked if the pattern was
1820literal text. Now it works for any pattern.
1821
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00001822When 'equalalways' is set and 'eadirection' is "hor", ":quit" would still
1823cause equalizing window heights in the vertical direction.
1824
1825When ":emenu" is used in a startup script the command was put in the typeahead
1826buffer, causing a prompt for the crypt key to be messed up.
1827
1828Mac OS/X: The default for 'isprint' included characters 128-160, causes
1829problems for Terminal.app.
1830
1831When a syntax item with "containedin" is used, it may match in the start or
1832end of a region with a matchgroup, while this doesn't happen for a "contains"
1833argument.
1834
1835When a transparent syntax items matches in another item where the highlighting
1836has already stopped (because of a he= argument), the highlighting would come
1837back.
1838
1839When cscope is used to set the quickfix error list, it didn't get set if there
1840was only one match. (Sergey Khorev)
1841
1842When 'confirm' is set and using ":bdel" in a modified buffer, then selecting
1843"cancel", would still give an error message.
1844
1845The PopUp menu items that started Visual mode didn't work when not in Normal
1846mode. Switching between selecting a word and a line was not possible.
1847
1848Win32: The keypad decimal point always resulted in a '.', while on some
1849keyboards it's a ','. Use MapVirtualKey(VK_DECIMAL, 2).
1850
1851Removed unused function DisplayCompStringOpaque() from gui_w32.c
1852
1853In Visual mode there is not always an indication whether the line break is
1854selected or not. Highlight the character after the line when the line break
1855is included, e.g., after "v$o".
1856
1857GTK: The <F10> key can't be mapped, it selects the menu. Disable that with a
1858GTK setting and do select the menu when <F10> isn't mapped. (David Necas)
1859
1860After "Y" '[ and '] were not at start/end of the yanked text.
1861
1862When a telnet connection is dropped Vim preserves files and exits. While
Bram Moolenaar8ea91232006-04-28 22:41:43 +00001863doing that a SIGHUP may arrive and disturb us, thus ignore it. (Scott
Bram Moolenaar46c9c732004-12-12 11:37:09 +00001864Anderson) Also postpone SIGHUP, SIGQUIT and SIGTERM until it's safe to
1865handle. Added handle_signal().
1866
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00001867When completing a file name on the command line backslashes are required for
1868white space. Was only done for a space, not for a Tab.
1869
1870When configure could not find a terminal library, compiling continued for a
1871long time before reporting the problem. Added a configure check for tgetent()
1872being found in a library.
1873
1874When the cursor is on the first char of the last line a ":g/pat/s///" command
1875may cause the cursor to be displayed below the text.
1876
1877Win32: Editing a file with non-ASCII characters doesn't work when 'encoding'
1878is "utf-8". use _wfullpath() instead of _fullpath(). (Yu-sung Moon)
1879
1880When recovering the 'fileformat' and 'fileencoding' were taken from the
1881original file instead of from the swapfile. When the file didn't exist, was
1882empty or the option was changed (e.g., with ":e ++fenc=cp123 file") it could
1883be wrong. Now store 'fileformat' and 'fileencoding' in the swapfile and use
1884the values when recovering.
1885
1886":bufdo g/something/p" overwrites each last printed text line with the file
1887message for the next buffer. Temporarily clear 'shortmess' to avoid that.
1888
Bram Moolenaarb5bf5b82004-12-24 14:35:23 +00001889Win32: Cannot edit a file starting with # with --remote. Do escape % and #
1890when building the ":drop" command.
1891
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01001892A comment or | just after an expression-backtick argument was not recognized.
Bram Moolenaar86b68352004-12-27 21:59:20 +00001893E.g. in :e `="foo"`"comment.
1894
Bram Moolenaar567e4de2004-12-31 21:01:02 +00001895"(" does not stop at an empty sentence (single dot and white space) while ")"
1896does. Also breaks "das" on that dot.
1897
1898When doing "yy" with the cursor on a TAB the ruler could be wrong and "k"
1899moved the cursor to another column.
1900
1901When 'commentstring' is '"%s' and there is a double quote in the line a double
1902quote before the fold marker isn't removed in the text displayed for a closed
1903fold.
1904
1905In Visual mode, when 'bin' and 'eol' set, g CTRL-G counted the last line
1906break, resulting in "selected 202 of 201 bytes".
1907
Bram Moolenaar2079a602005-01-04 21:43:22 +00001908Motif: fonts were not used for dialog components. (Marcin Dalecki)
Bram Moolenaar567e4de2004-12-31 21:01:02 +00001909
Bram Moolenaar49cd9572005-01-03 21:06:01 +00001910Motif: After using a toolbar button the keyboard focus would be on the toolbar
Bram Moolenaar2079a602005-01-04 21:43:22 +00001911(Lesstif problem). (Marcin Dalecki)
Bram Moolenaar49cd9572005-01-03 21:06:01 +00001912
Bram Moolenaar1c2fda22005-01-02 11:43:19 +00001913When using "y<C-V>`x" where mark x is in the first column, the last line was
1914not included.
1915
1916Not all test scripts work properly on MS-Windows when checked out from CVS.
1917Use a Vim command to fix all fileformats to dos before executing the tests.
1918
1919When using ":new" and the file fits in the window, lines could still be above
1920the window. Now remove empty lines instead of keeping the relative position.
1921
Bram Moolenaar3d60ec22005-01-05 22:19:46 +00001922Cmdline completion didn't work after ":let var1 var<Tab>".
1923
Bram Moolenaarb7d6e722005-01-09 21:22:45 +00001924When using ":startinsert" or ":startreplace" when already in Insert mode
1925(possible when using CTRL-R =), pressing Esc would directly restart Insert
1926mode. (Peter Winters)
1927
Bram Moolenaar31c67ef2005-01-11 21:34:41 +00001928"2daw" didn't work at end of file if the last word is a single character.
1929
Bram Moolenaar8c711452005-01-14 21:53:12 +00001930Completion for ":next a'<Tab>" put a backslash before single quote, but it was
1931not removed when editing a file. Now halve backslashes in save_patterns().
Bram Moolenaar798c5a72005-01-16 22:06:30 +00001932Also fix expanding a file name with the shell that contains "\'".
Bram Moolenaar8c711452005-01-14 21:53:12 +00001933
Bram Moolenaarb71ec9f2005-01-25 22:22:02 +00001934When doing "1,6d|put" only "fewer lines" was reported. Now a following "more
1935lines" overwrites the message.
1936
1937Configure could not handle "-Dfoo=long\ long" in the TCL config output.
1938
Bram Moolenaarb2956cd2005-01-27 14:42:53 +00001939When searching backwards, using a pattern that matches a newline and uses \zs
1940after that, didn't find a match. Could also get a hang or end up in the right
1941column in the wrong line.
1942
Bram Moolenaard438e912005-01-31 19:21:46 +00001943When $LANG is "sl" for slovenian, the slovak menu was used, since "slovak"
1944starts with "sl".
1945
1946When 'paste' is set in the GUI the Paste toolbar button doesn't work. Clear
1947'paste' when starting the GUI.
1948
Bram Moolenaarf5836682005-02-02 23:09:45 +00001949A message about a wrong viminfo line included the trailing NL.
1950
Bram Moolenaar2a8d1f82005-02-05 21:43:56 +00001951When 'paste' is set in the GUI the toolbar button doesn't work in Insert mode.
1952Use ":exe" in menu.vim to avoid duplicating the commands, instead of using a
1953mapping.
1954
1955Treat "mlterm" as an xterm-like terminal. (Seiichi Sato)
1956
1957":z.4" and ":z=4" didn't work Vi compatible.
1958
Bram Moolenaarbee0c5b2005-02-07 22:03:36 +00001959When sourcing a file, editing it and sourcing it again, it could appear twice
1960in ":scriptnames" and get a new <SID>, because the inode has changed.
1961
1962When $SHELL is set but empty the 'shell' option would be empty. Don't use an
1963empty $SHELL value.
1964
1965A command "w! file" in .vimrc or $EXINIT didn't work. Now it writes an empty
1966file.
1967
1968When a CTRL-F command at the end of the file failed, the cursor was still
1969moved to the start of the line. Now it remains where it is.
1970
1971When using ":s" or "&" to repeat the last substitute and "$" was used to put
1972the cursor in the last column, put the cursor in the last column again. This
1973is Vi compatible.
1974
Bram Moolenaar4399ef42005-02-12 14:29:27 +00001975Vim is not fully POSIX compliant but sticks with traditional Vi behavior.
1976Added a few flags in 'cpoptions' to behave the POSIX way when wanted. The
1977$VIM_POSIX environment variable is checked to set the default.
1978
1979Appending to a register didn't insert a line break like Vi. Added the '>'
1980flag to 'cpoptions' for this.
1981
1982Using "I" in a line with only blanks appended to the line. This is not Vi
Bram Moolenaar6dc819b2018-07-03 16:42:19 +02001983compatible. Added the 'H' flag in 'cpoptions' for this.
Bram Moolenaar4399ef42005-02-12 14:29:27 +00001984
1985When joining multiple lines the cursor would be at the last joint, but Vi
1986leaves it at the position where "J" would put it. Added the 'q' flag in
1987'cpoptions' for this.
1988
1989Autoindent didn't work for ":insert" and ":append".
1990
1991Using ":append" in an empty buffer kept the dummy line. Now it's deleted to
1992be Vi compatible.
1993
1994When reading commands from a file and stdout goes to a terminal, would still
1995request the xterm version. Vim can't read it, thus the output went to the
1996shell and caused trouble there.
1997
Bram Moolenaar5313dcb2005-02-22 08:56:13 +00001998When redirecting to a register with an invalid name the redirection would
1999still be done (after an error message). Now reset "redir_reg". (Yegappan
2000Lakshmanan)
2001
2002It was not possible to use a NL after a backslash in Ex mode. This is
2003sometimes used to feed multiple lines to a shell command.
2004
Bram Moolenaar05159a02005-02-26 23:04:13 +00002005When 'cmdheight' is set to 2 in .vimrc and the GUI uses the number of lines
2006from the terminal we actually get 3 lines for the cmdline in gvim.
2007
2008When setting $HOME allocated memory would leak.
2009
Bram Moolenaar19a09a12005-03-04 23:39:37 +00002010Win32: bold characters may sometimes write in another character cell. Use
2011unicodepdy[] as for UTF-8. (Taro Muraoka)
2012
2013":w fname" didn't work for files with 'buftype' set to "nofile".
2014
Bram Moolenaare2ac10d2005-03-07 23:26:06 +00002015The method used to locate user commands for completion differed from when they
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002016are executed. Ambiguous command names were not completed properly.
Bram Moolenaare2ac10d2005-03-07 23:26:06 +00002017
Bram Moolenaar9062a9d2005-03-08 22:46:26 +00002018Incremental search may cause a crash when there is a custom statusline that
2019indirectly invokes ":normal".
2020
2021Diff mode failed when $DIFF_OPTIONS was set in the environment. Unset it
2022before invoking "diff".
2023
Bram Moolenaar4ad237d2005-03-11 22:49:40 +00002024Completion didn't work after ":argdo", ":windo" and ":bufdo". Also for ":set
2025&l:opt" and ":set &g:opt". (Peter Winters)
2026
2027When setting 'ttymouse' to "dec" in an xterm that supports the DEC mouse
2028locator it doesn't work. Now switch off the mouse before selecting another
2029mouse model.
2030
Bram Moolenaarfb269802005-03-15 22:46:30 +00002031When the CursorHold event is triggered and the commands peek for typed
2032characters the typeahead buffer may be messed up, e.g., when a mouse-up event
2033is received. Avoid invoking the autocommands from the function waiting for a
2034character, let it put K_CURSORHOLD in the input buffer.
2035
2036Removed the "COUNT" flag from ":argadd", to avoid ":argadd 1*" to be used like
Bram Moolenaarc0761132005-03-18 20:30:32 +00002037":1argadd *". Same for ":argdelete" and ":argedit".
Bram Moolenaarfb269802005-03-15 22:46:30 +00002038
2039Avoid that $LANG is used for the menus when LC_MESSAGES is "en_US".
2040
Bram Moolenaar34401cc2014-08-29 15:12:19 +02002041Added backslashes before dashes in the vim.1 manual page to make them appear
Bram Moolenaar3a991dd2014-10-02 01:41:41 +02002042as real dashes. (Pierre Habouzit)
Bram Moolenaarc0761132005-03-18 20:30:32 +00002043
2044Where "gq" left the cursor depended on the value of 'formatprg'. Now "gq"
2045always leaves the cursor at the last line of the formatted text.
2046
2047When editing a compressed file, such as "changelog.Debian.gz" file, filetype
2048detection may try to check the contents of the file while it's still
2049compressed. Skip setting 'filetype' for compressed files until they have been
2050decompressed. Required for patterns that end in a "*".
2051
Bram Moolenaar34401cc2014-08-29 15:12:19 +02002052Starting with an argument "+cmd" or "-S script" causes the cursor to be moved
Bram Moolenaarc0761132005-03-18 20:30:32 +00002053to the first line. That breaks a BufReadPost autocommand that uses g`".
2054Don't move the cursor if it's somewhere past the first line.
2055
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002056"gg=G" while 'modifiable' is off was uninterruptible.
Bram Moolenaarc0761132005-03-18 20:30:32 +00002057
Bram Moolenaar60c78922005-03-20 22:40:14 +00002058When 'encoding' is "sjis" inserting CTRL-V u d800 a few times causes a crash.
2059Don't insert a DBCS character with a NUL second byte.
2060
Bram Moolenaar2641f772005-03-25 21:58:17 +00002061In Insert mode CTRL-O <Home> didn't move the cursor. Made "ins_at_eol" global
2062and reset it in nv_home().
2063
Bram Moolenaarb982ca52005-03-28 21:02:15 +00002064Wildcard expansion failed: ":w /tmp/$$.`echo test`". Don't put quotes around
2065spaces inside backticks.
2066
Bram Moolenaar13fcaaf2005-04-15 21:13:42 +00002067After this sequence of commands: Y V p gv: the wrong line is selected. Now
2068let "gv" select the text that was put, since the original text is deleted.
2069This should be the most useful thing to do.
2070
2071":sleep 100u" sleeps for 100 seconds, not 100 usec as one might expect. Give
2072an error message when the argument isn't recognized.
2073
2074In gui_mch_draw_string() in gui_w32.c "unibuflen" wasn't static, resulting in
2075reallocating the buffer every time. (Alexei Alexandrov)
2076
Bram Moolenaar0e21a3f2005-04-17 20:28:32 +00002077When using a Python "atexit" function it was not invoked when Vim exits. Now
2078call Py_Finalize() for that. (Ugo Di Girolamo)
Bram Moolenaar9ba0eb82005-06-13 22:28:56 +00002079This breaks the thread stuff though, fixed by Ugo.
Bram Moolenaar0e21a3f2005-04-17 20:28:32 +00002080
Bram Moolenaardba8a912005-04-24 22:08:39 +00002081GTK GUI: using a .vimrc with "set cmdheight=2 lines=43" and ":split" right
2082after startup, the window layout is messed up. (Michael Schaap) Added
2083win_new_shellsize() call in gui_init() to fix the topframe size.
2084
2085Trick to get ...MOUSE_NM not used when there are vertical splits. Now pass
2086column -1 for the left most window and add MOUSE_COLOFF for others. Limits
2087mouse column to 10000.
2088
2089searchpair() may hang when the end pattern has "\zs" at the end. Check that
2090we find the same position again and advance one character.
2091
2092When in diff mode and making a change that causes the "changed" highlighting
2093to disappear or reappear, it was still highlighted in another window.
2094
Bram Moolenaar34cdc3e2005-05-18 22:24:46 +00002095When a ":next" command fails because the user selects "Abort" at the ATTENTION
2096prompt the argument index was advanced anyway.
2097
2098When "~" is in 'iskeyword' the "gd" doesn't work, it's used for the previous
2099substitute pattern. Put "\V" in the pattern to avoid that.
2100
Bram Moolenaar555b2802005-05-19 21:08:39 +00002101Use of sprintf() sometimes didn't check properly for buffer overflow. Also
2102when using smsg(). Included code for snprintf() to avoid having to do size
2103checks where invoking them
2104
Bram Moolenaarf4630b62005-05-20 21:31:17 +00002105":help \=<Tab>" didn't find "sub-replace-\=". Wild menu for help tags didn't
2106show backslashes. ":he :s\=" didn't work.
2107
2108When reading an errorfile "~/" in a file name was not expanded.
2109
2110GTK GUI: When adding a scrollbar (e.g. when using ":vsplit") in a script or
2111removing it the window size may change. GTK sends us resize events when we
2112change the window size ourselves, but they may come at an unexpected moment.
2113Peek for a character to get any window resize events and fix 'columns' and
2114'lines' to undo this.
2115
Bram Moolenaarb3656ed2006-03-20 21:59:49 +00002116When using the GTK plug mechanism, resizing and focus was not working
2117properly. (Neil Bird)
2118
Bram Moolenaar67fe1a12005-05-22 22:12:58 +00002119After deleting files from the argument list a session file generated with
2120":mksession" may contain invalid ":next" commands.
2121
2122When 'shortmess' is empty and 'keymap' set to accents, in Insert mode CTRL-N
2123may cause the hit-enter prompt. Typing 'a then didn't result in the accented
2124character. Put the character typed at the prompt back in the typeahead buffer
2125so that mapping is done in the right mode.
2126
Bram Moolenaarb2ec3072005-06-17 22:02:20 +00002127setbufvar() and setwinvar() did not give error messages.
2128
2129It was possible to set a variable with an illegal name, e.g. with setbufvar().
Bram Moolenaard857f0e2005-06-21 22:37:39 +00002130It was possible to define a function with illegal name, e.t. ":func F{-1}()"
2131
2132CTRL-W F and "gf" didn't use the same method to get the file name.
Bram Moolenaarb2ec3072005-06-17 22:02:20 +00002133
Bram Moolenaar42eeac32005-06-29 22:40:58 +00002134When reporting a conversion error the line number of the last error could be
2135given. Now report the first encountered error.
2136
2137When using ":e ++enc=name file" and iconv() was used for conversion an error
Bram Moolenaar63a121b2005-12-11 21:36:39 +00002138caused a fall-back to no conversion. Now replace a character with '?' and
Bram Moolenaar42eeac32005-06-29 22:40:58 +00002139continue.
2140
Bram Moolenaar51bab742005-07-08 22:31:03 +00002141When opening a new buffer the local value of 'bomb' was not initialized from
2142the global value.
2143
Bram Moolenaare759a7a2005-07-12 22:50:18 +00002144Win32: When using the "Edit with Vim" entry the file name was limited to about
2145200 characters.
2146
Bram Moolenaar342337a2005-07-21 21:11:17 +00002147When using command line completion for ":e *foo" and the file "+foo" exists
2148the resulting command ":e +foo" doesn't work. Now insert a backslash: ":e
2149\+foo".
2150
Bram Moolenaar87e25fd2005-07-27 21:13:01 +00002151When the translation of "-- More --" was not 10 characters long the following
2152message would be in the wrong position.
2153
2154At the more-prompt the last character in the last line wasn't drawn.
2155
2156When deleting non-existing text while 'virtualedit' is set the '[ and '] marks
2157were not set.
2158
Bram Moolenaar0be6e642005-08-04 21:32:22 +00002159Win32: Could not use "**/" in 'path', it had to be "**\".
2160
Bram Moolenaarae5bce12005-08-15 21:41:48 +00002161The search pattern "\n" did not match at the end of the last line.
2162
2163Searching for a pattern backwards, starting on the NUL at the end of the line
2164and 'encoding' is "utf-8" would match the pattern just before it incorrectly.
2165Affected searchpair('/\*', '', '\*/').
2166
Bram Moolenaar5b8d8fd2005-08-16 23:01:50 +00002167For the Find/Replace dialog it was possible that not finding the text resulted
2168in an error message while redrawing, which cleared the syntax highlighting
2169while it was being used, resulting in a crash. Now don't clear syntax
2170highlighting, disable it with b_syn_error.
2171
Bram Moolenaar6e7c7f32005-08-24 22:16:11 +00002172Win32: Combining UTF-8 characters were drawn on the previous character.
2173Could be noticed with a Thai font.
2174
Bram Moolenaarcafda4f2005-09-06 19:25:11 +00002175Output of ":function" could leave some of the typed text behind. (Yegappan
2176Lakshmanan)
2177
Bram Moolenaarcaa0fcf2005-09-07 21:21:14 +00002178When the command line history has only a few lines the command line window
2179would be opened with these lines above the first window line.
2180
2181When using a command line window for search strings ":qa" would result in
2182searching for "qa" instead of quitting all windows.
2183
Bram Moolenaardcca87b2005-09-10 19:24:59 +00002184GUI: When scrolling with the scrollbar and there is a line that doesn't fit
2185redrawing may fail. Make sure w_skipcol is valid before redrawing.
2186
Bram Moolenaar482aaeb2005-09-29 18:26:07 +00002187Limit the values of 'columns' and 'lines' to avoid an overflow in Rows *
2188Columns. Fixed bad effects when running out of memory (command line would be
2189reversed, ":qa!" resulted in ":!aq").
2190
Bram Moolenaara5792f52005-11-23 21:25:05 +00002191Motif: "gvim -iconic" opened the window anyway. (David Harrison)
2192
2193There is a tiny chance that a symlink gets created between checking for an
2194existing file and creating a file. Use the O_NOFOLLOW for open() if it's
2195available.
2196
2197In an empty line "ix<CTRL-O>0" moved the cursor to after the line instead of
2198sticking to the first column.
2199
Bram Moolenaar943d2b52005-12-02 00:50:49 +00002200When using ":wq" and a BufWriteCmd autocmd uses inputsecret() the text was
2201echoed anyway. Set terminal to raw mode in getcmdline().
2202
Bram Moolenaard5bc83f2005-12-07 21:07:59 +00002203Unix: ":w a;b~c" caused an error in expanding wildcards.
2204
Bram Moolenaar63a121b2005-12-11 21:36:39 +00002205When appending to a file with ":w >>fname" in a buffer without a name, causing
2206the buffer to use "fname", the modified flag was reset.
2207
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002208When appending to the current file the "not edited" flag would be reset.
Bram Moolenaar63a121b2005-12-11 21:36:39 +00002209":w" would overwrite the file accidentally.
2210
Bram Moolenaar900b4d72005-12-12 22:05:50 +00002211Unix: When filtering text with an external command Vim would still read input,
2212causing text typed for the command (e.g., a password) to be eaten and echoed.
2213Don't read input when the terminal is in cooked mode.
2214
Bram Moolenaar146522e2005-12-16 21:55:46 +00002215The Cygwin version of xxd used CR/LF line separators. (Corinna Vinschen)
2216
2217Unix: When filtering text through a shell command some resulting text may be
2218dropped. Now after detecting that the child has exited try reading some more
2219of its output.
2220
Bram Moolenaar3b181812005-12-17 22:10:02 +00002221When inside input(), using "CTRL-R =" and the expression throws an exception
2222the command line was not abandoned but it wasn't used either. Now abandon
2223typing the command line.
2224
Bram Moolenaare3226be2005-12-18 22:10:00 +00002225'delcombine' was also used in Visual and Select mode and for commands like
2226"cl". That was illogical and has been disabled.
2227
2228When recording while a CursorHold autocommand was defined special keys would
2229appear in the register. Now the CursorHold event is not triggered while
2230recording.
2231
Bram Moolenaarf4cd3e82005-12-22 22:47:02 +00002232Unix: the src/configure script used ${srcdir-.}, not all shells understand
2233that. Use ${srcdir:-.} instead.
2234
Bram Moolenaarcc984262005-12-23 22:19:46 +00002235When editing file "a" which is a symlink to file "b" that doesn't exist,
2236writing file "a" to create "b" and then ":split b" resulted in two buffers on
2237the same file with two different swapfile names. Now set the inode in the
2238buffer when creating a new file.
2239
Bram Moolenaarebefac62005-12-28 22:39:57 +00002240When 'esckeys' is not set don't send the xterm code to request the version
2241string, because it may cause trouble in Insert mode.
2242
2243When evaluating an expression for CTRL-R = on the command line it was possible
Bram Moolenaar8ada17c2006-01-19 22:16:24 +00002244to call a function that opens a new window, resulting in errors for
Bram Moolenaarb71eaae2006-01-20 23:10:18 +00002245incremental search, and many other nasty things were possible. Now use the
2246|textlock| to disallow changing the buffer or jumping to another window
Bram Moolenaar4770d092006-01-12 23:22:24 +00002247to protect from unexpected behavior. Same for CTRL-\ e.
Bram Moolenaarebefac62005-12-28 22:39:57 +00002248
2249"d(" deleted the character under the cursor, while the documentation specified
2250an exclusive motion. Vi also doesn't delete the character under the cursor.
2251
2252Shift-Insert in Insert mode could put the cursor before the last character
2253when it just fits in the window. In coladvance() don't stop at the window
2254edge when filling with spaces and when in Insert mode. In mswin.vim avoid
2255getting a beep from the "l" command.
2256
Bram Moolenaar4770d092006-01-12 23:22:24 +00002257Win32 GUI: When Alt-F4 is used to close the window and Cancel is selected in
2258the dialog then Vim would insert <M-F4> in the text. Now it's ignored.
2259
2260When ":silent! {cmd}" caused the swap file dialog, which isn't displayed,
2261there would still be a hit-enter prompt.
2262
Bram Moolenaara40ceaf2006-01-13 22:35:40 +00002263Requesting the termresponse (|t_RV|) early may cause problems with "-c"
2264arguments that invoke an external command or even "-c quit". Postpone it
2265until after executing "-c" arguments.
2266
2267When typing in Insert mode so that a new line is started, using CTRL-G u to
2268break undo and start a new change, then joining the lines with <BS> caused
2269undo info to be missing. Now reset the insertion start point.
2270
2271Syntax HL: When a region start match has a matchgroup and an offset that
2272happens to be after the end of the line then it continued in the next line and
2273stopped at the region end match, making the region continue after that.
2274Now check for the column being past the end of the line in syn_add_end_off().
2275
Bram Moolenaarc32840f2006-01-14 21:23:38 +00002276When changing a file, setting 'swapfile' off and then on again, making another
2277change and killing Vim, then some blocks may be missing from the swapfile.
2278When 'swapfile' is switched back on mark all blocks in the swapfile as dirty.
2279Added mf_set_dirty().
2280
2281Expanding wildcards in a command like ":e aap;<>!" didn't work. Put
2282backslashes before characters that are special to the shell. (Adri Verhoef)
2283
Bram Moolenaar8ada17c2006-01-19 22:16:24 +00002284A CursorHold autocommand would cause a message to be cleared. Don't show the
2285special key for the event for 'showcmd'.
2286
2287When expanding a file name for a shell command, as in "!cmd foo<Tab>" or ":r
2288!cmd foo<Tab>" also escape characters that are special for the shell:
2289"!;&()<>".
2290
Bram Moolenaarb71eaae2006-01-20 23:10:18 +00002291When the name of the buffer was set by a ":r fname" command |cpo-f| no
2292autocommands were triggered to notify about the change in the buffer list.
2293
2294In the quickfix buffer 'bufhidden' was set to "delete", which caused closing
2295the quickfix window to leave an unlisted "No Name" buffer behind every time.
2296
Bram Moolenaar0ac93792006-01-21 22:16:51 +00002297Win32: when using two screens of different size, setting 'lines' to a large
2298value didn't fill the whole screen. (SungHyun Nam)
2299
Bram Moolenaar33aec762006-01-22 23:30:12 +00002300Win32 installer: The generated _vimrc contained an absolute path to diff.exe.
2301After upgrading it becomes invalid. Now use $VIMRUNTIME instead.
2302
Bram Moolenaardad44732021-03-31 20:07:33 +02002303The command line was cleared too often when 'showmode' was set and ":silent
Bram Moolenaard12f5c12006-01-25 22:10:52 +00002304normal vy" was used. Don't clear the command line unless the mode was
2305actually displayed. Added the "mode_displayed" variable.
2306
Bram Moolenaar280f1262006-01-30 00:14:18 +00002307The "load session" toolbar item could not handle a space or other special
2308characters in v:this_session.
2309
2310":set sta ts=8 sw=4 sts=2" deleted 4 spaces halfway a line instead of 2.
2311
Bram Moolenaar207f0092020-08-30 17:20:20 +02002312In a multibyte file the foldmarker could be recognized in the trail byte.
Bram Moolenaar1ef15e32006-02-01 21:56:25 +00002313(Taro Muraoka)
2314
Bram Moolenaar0e5bd962006-02-04 00:59:56 +00002315Pasting with CTRL-V and menu didn't work properly when some commands are
2316mapped. Use ":normal!" instead of ":normal". (Tony Apuzzo)
2317
2318Crashed when expanding a file name argument in backticks.
2319
Bram Moolenaarf52c7252006-02-10 23:23:57 +00002320In some situations the menu and scrollbar didn't work, when the value contains
2321a CSI byte. (Yukihiro Nakadaira)
2322
Bram Moolenaar1d2ba7f2006-02-14 22:29:30 +00002323GTK GUI: When drawing the balloon focus changes and we might get a key release
2324event that removed the balloon again. Ignore the key release event.
2325
2326'titleold' was included in ":mkexrc" and ":mksession" files.
2327
Bram Moolenaarf740b292006-02-16 22:11:02 +00002328":set background&" didn't use the same logic as was used when starting up.
2329
Bram Moolenaar997fb4b2006-02-17 21:53:23 +00002330When "umask" is set such that nothing is writable then the viminfo file would
2331be written without write permission. (Julian Bridle)
2332
Bram Moolenaar7e8fd632006-02-18 22:14:51 +00002333Motif: In diff mode dragging one scrollbar didn't update the scrollbar of the
2334other diff'ed window.
2335
Bram Moolenaar238a5642006-02-21 22:12:05 +00002336When editing in an xterm with a different number of colors than expected the
2337screen would be cleared and redrawn, causing the message about the edited file
2338to be cleared. Now set "keep_msg" to redraw the last message.
2339
Bram Moolenaard1f56e62006-02-22 21:25:37 +00002340For a color terminal: When the Normal HL uses bold, possibly to make the color
2341lighter, and another HL group specifies a color it might become light as well.
2342Now reset bold if a HL group doesn't specify bold itself.
2343
Bram Moolenaar32466aa2006-02-24 23:53:04 +00002344When using 256 color xterm the color 255 would show up as color 0. Use a
2345short instead of a char to store the color number.
2346
2347ml_get errors when searching for "\n\zs" in an empty file.
2348
Bram Moolenaara5621492006-02-25 21:55:24 +00002349When selecting a block and using "$" to select until the end of every line and
2350not highlighting the character under the cursor the first character of the
2351block could be unhighlighted.
2352
2353When counting words for the Visual block area and using "$" to select until
2354the end of every line only up to the length of the last line was counted.
2355
Bram Moolenaareddf53b2006-02-27 00:11:10 +00002356"dip" in trailing empty lines left one empty line behind.
2357
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +00002358The script ID was only remembered globally for each option. When a buffer- or
2359window-local option was set the same "last set" location was changed for all
2360buffers and windows. Now remember the script ID for each local option
2361separately.
2362
2363GUI: The "Replace All" button didn't handle backslashes in the replacement in
2364the same way as "Replace". Escape backslashes so that they are taken
2365literally.
2366
Bram Moolenaare224ffa2006-03-01 00:01:28 +00002367When using Select mode from Insert mode and typing a key, causing lines to be
2368deleted and a message displayed, delayed the effect of inserting the key.
2369Now overwrite the message without delay.
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +00002370
Bram Moolenaar362e1a32006-03-06 23:29:24 +00002371When 'whichwrap' includes "l" then "dl" and "yl" on a single letter line
2372worked differently. Now recognize all operators when using "l" at the end of
2373a line.
2374
2375GTK GUI: when the font selector returned a font name with a comma in it then
2376it would be handled like two font names. Now put a backslash before the
2377comma.
2378
2379MS-DOS, Win32: When 'encoding' defaults to "latin1" then the value for
2380'iskeyword' was still for CPxxx. And when 'nocompatible' was set 'isprint'
2381would also be the wrong value.
2382
Bram Moolenaar1f35bf92006-03-07 22:38:47 +00002383When a command was defined not to take arguments and no '|' no warning message
2384would be given for using a '|'. Also with ":loadkeymap".
2385
Bram Moolenaara3227e22006-03-08 21:32:40 +00002386Motif: When using a fontset and 'encoding' is "utf-8" and sizeof(wchar_t) !=
2387sizeof(XChar2b) then display was wrong. (Yukihiro Nakadaira)
2388
Bram Moolenaareb94e552006-03-11 21:35:11 +00002389":all" always set the current window to the first window, even when it
2390contains a buffer that is not in the argument list (can't be closed because it
2391is modified). Now go to the window that has the first item of the argument
2392list.
2393
Bram Moolenaar17be7e62006-03-12 22:13:45 +00002394GUI: To avoid left-over pixels from bold text all characters after a character
2395with special attributes were redrawn. Now only do this for characters that
2396actually are bold. Speeds up displaying considerably.
2397
2398When only highlighting changes and the text is scrolled at the same time
Bram Moolenaarbaca7f72013-09-22 14:42:24 +02002399everything is redrawn instead of using a scroll and updating the changed text.
Bram Moolenaar17be7e62006-03-12 22:13:45 +00002400E.g., when using ":match" to highlight a paren that the cursor landed on.
2401Added SOME_VALID: Redraw the whole window but also try to scroll to minimize
2402redrawing.
2403
Bram Moolenaarca003e12006-03-17 23:19:38 +00002404Win32: When using Korean IME making it active didn't work properly. (Moon,
2405Yu-sung, 2005 March 21)
2406
Bram Moolenaar97b2ad32006-03-18 21:40:56 +00002407Ruby interface: when inserting/deleting lines display wasn't updated. (Ryan
2408Paul)
Bram Moolenaarca003e12006-03-17 23:19:38 +00002409
Bram Moolenaar910f66f2006-04-05 20:41:53 +00002410--- fixes since Vim 7.0b ---
Bram Moolenaarbd404142006-03-25 22:05:04 +00002411
2412Getting the GCC version in configure didn't work with Solaris sed. First
2413strip any "darwin." and then get the version number.
2414
2415The "autoload" directory was missing from the self-installing executable for
2416MS-Windows.
2417
2418The MS-Windows install program would find "vimtutor.bat" in the install
2419directory. After changing to "c:" also change to "\" to avoid looking in the
2420install directory.
2421
2422To make the 16 bit DOS version compile exclude not used highlight
2423initializations and build a tiny instead of small version.
2424
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002425finddir() and findfile() accept a negative count and return a List then.
Bram Moolenaar899dddf2006-03-26 21:06:50 +00002426
2427The Python indent file contained a few debugging statements, removed.
2428
2429Expanding {} for a function name, resulting in a name starting with "s:" was
2430not handled correctly.
2431
2432Spelling: renamed COMPOUNDMAX to COMPOUNDWORDMAX. Added several items to be
2433able to handle the new Hungarian dictionary.
2434
2435Mac: Default to building for the current platform only, that is much faster
2436than building a universal binary. Also, using Perl/Python/etc. only works for
2437the current platform.
2438
Bram Moolenaar3991dab2006-03-27 17:01:56 +00002439The time on undo messages disappeared for someone. Using %T for strftime()
2440apparently doesn't work everywhere. Use %H:%M:%S instead.
2441
2442Typing BS at the "z=" prompt removed the prompt.
Bram Moolenaar899dddf2006-03-26 21:06:50 +00002443
Bram Moolenaar779b74b2006-04-10 14:55:34 +00002444--- fixes and changes since Vim 7.0c ---
Bram Moolenaar04a9d452006-03-27 21:03:26 +00002445
2446When jumping to another tab page the Vim window size was always set, even when
2447nothing in the layout changed.
2448
2449Win32 GUI tab pages line wasn't always enabled. Do a proper check for the
2450compiler version.
2451
2452Win32: When switching between tab pages the Vim window was moved when part of
2453it was outside of the screen. Now only do that in the direction of a size
2454change.
2455
2456Win32: added menu to GUI tab pages line. (Yegappan Lakshmanan)
2457
Bram Moolenaard2cec5b2006-03-28 21:08:56 +00002458Mac: Added document icons. (Benji Fisher)
2459
2460Insert mode completion: Using Enter to accept the current match causes
2461confusion. Use CTRL-Y instead. Also, use CTRL-E to go back to the typed
2462text.
2463
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00002464GUI: When there are left and right scrollbars, ":tabedit" kept them instead of
Bram Moolenaard2cec5b2006-03-28 21:08:56 +00002465using the one that isn't needed.
Bram Moolenaar04a9d452006-03-27 21:03:26 +00002466
Bram Moolenaare2f98b92006-03-29 21:18:24 +00002467Using "gP" to replace al the text could leave the cursor below the last line,
2468causing ml_get errors.
2469
2470When 'cursorline' is set don't use the highlighting when Visual mode is
2471active, otherwise it's difficult to see the selected area.
2472
2473The matchparen plugin restricts the search to 100 lines, to avoid a long delay
2474when there are closed folds.
2475
2476Sometimes using CTRL-X s to list spelling suggestions used text from another
2477line.
2478
2479Win32: Set the default for 'isprint' back to the wrong default "@,~-255",
2480because many people use Windows-1252 while 'encoding' is "latin1".
2481
Bram Moolenaar910f66f2006-04-05 20:41:53 +00002482GTK: Added a workaround for gvim crashing when used over an untrusted ssh
2483link, caused by GTK doing something nasty. (Ed Catmur)
2484
2485Win32: The font used for the tab page labels is too big. Use the system menu
2486font. (George Reilly)
2487
2488Win32: Adjusting the window position and size to keep it on the screen didn't
2489work properly when the taskbar is on the left or top of the screen.
2490
2491The installman.sh and installml.sh scripts use ${10}, that didn't work with
2492old shells. And use "test -f" instead of "test -e".
2493
2494Win32: When 'encoding' was set in the vimrc then a directory argument for diff
2495mode didn't work.
2496
2497GUI: at the inputlist() prompt the cursorshape was adjusted as if the windows
2498were still at their old position.
2499
2500The parenmatch plugin didn't remember the highlighting per window.
2501
2502Using ":bd" for a buffer that's the current window in another tab page caused
2503a crash.
2504
2505For a new tab page the 'scroll' option wasn't set to a good default.
2506
Bram Moolenaar207f0092020-08-30 17:20:20 +02002507Using an end offset for a search "/pat/e" didn't work properly for multibyte
Bram Moolenaar910f66f2006-04-05 20:41:53 +00002508text. (Yukihiro Nakadaira)
2509
2510":s/\n/,/" doubled the text when used on the last line.
2511
2512When "search" is in 'foldopen' "[s" and "]s" now open folds.
2513
2514When using a numbered function "dict" can be omitted, but "self" didn't work
2515then. Always add FC_DICT to the function flags when it's part of a
2516dictionary.
2517
2518When "--remote-tab" executes locally it left an empty tab page.
2519
2520"gvim -u NONE", ":set cursorcolumn", "C" in the second line didn't update
2521text. Do update further lines even though the "$" is displayed.
2522
2523VMS: Support GTK better, also enable +clientserver. (Zoltan Arpadffy)
2524
2525When highlighting of statusline or tabline is changed there was no redraw to
2526show the effect.
2527
2528Mac: Added "CFBundleIdentifier" to infplist.xml.
2529
2530Added tabpage-local variables t:var.
2531
2532Win32: Added double-click in tab pages line creates new tab. (Yegappan
2533Lakshmanan)
2534
2535Motif: Added GUI tab pages line. (Yegappan Lakshmanan)
2536
2537Fixed crash when 'lines' was set to 1000 in a modeline.
2538
2539When init_spellfile() finds a writable directory in 'runtimepath' but it
2540doesn't contain a "spell" directory, create one.
2541
2542Win32: executable() also finds "xxd" in the directory where Vim was started,
2543but "!xxd" doesn't work. Append the Vim starting directory to $PATH.
2544
2545The tab page labels are shortened, directory names are reduced to a single
2546letter by default. Added the pathshorten() function to allow a user to do the
2547same.
2548
2549":saveas" now resets 'readonly' if the file was successfully written.
2550
2551Set $MYVIMRC file to the first found .vimrc file.
2552Set $MYGVIMRC file to the first found .gvimrc file.
2553Added menu item "Startup Settings" that edits the $MYVIMRC file
2554
2555Added matcharg().
2556
2557Error message E745 appeared twice. Renamed one to E786.
2558
2559Fixed crash when using "au BufRead * Sexplore" and doing ":help". Was wiping
2560out a buffer that's still in a window.
2561
2562":hardcopy" resulted in an error message when 'encoding' is "utf-8" and
2563'printencoding' is empty. Now it assumes latin1. (Mike Williams)
2564
2565The check for the toolbar feature for Motif, depending on certain included
2566files, wasn't detailed enough, causing building to fail in gui_xmebw.c.
2567
2568Using CTRL-E in Insert mode completion after CTRL-P inserted the first match
2569instead of the original text.
2570
2571When displaying a UTF-8 character with a zero lower byte Vim might think the
2572previous character is double-wide.
2573
2574The "nbsp" item of 'listchars' didn't work when 'encoding' was utf-8.
2575
2576Motif: when Xm/xpm.h is missing gui_xmebw.c would not compile.
2577HAVE_XM_UNHIGHLIGHTT_H was missing a T.
2578
2579Mac: Moved the .icns files into src/os_mac_rsrc, so that they can all be
2580copied at once. Adjusted the Info.plist file for three icons.
2581
2582When Visual mode is active while switching to another tabpage could get ml_get
2583errors.
2584
2585When 'list' is set, 'nowrap' the $ in the first column caused 'cursorcolumn'
2586to move to the right.
2587
2588When a line wraps, 'cursorcolumn' was never displayed past the end of the
2589line.
2590
Bram Moolenaar7b89edc2006-04-06 20:21:51 +00002591'autochdir' was only available when compiled with NetBeans and GUI. Now it's
2592a separate feature, also available in the "big" version.
2593
2594Added CTRL-W gf: open file under cursor in new tab page.
2595
2596When using the menu in the tab pages line, "New Tab" opens the new tab before
2597where the click was. Beyond the labels the new tab appears at the end instead
2598of after the current tab page.
2599
Bram Moolenaar61660ea2006-04-07 21:40:07 +00002600Inside a mapping with an expression getchar() could not be used.
2601
2602When vgetc is used recursively vgetc_busy protects it from being used
2603recursively. But after a ":normal" command the protection was reset.
2604
2605":s/a/b/n" didn't work when 'modifiable' was off.
2606
Bram Moolenaar207f0092020-08-30 17:20:20 +02002607When $VIMRUNTIME includes a multibyte character then rgb.txt could not be
Bram Moolenaar61660ea2006-04-07 21:40:07 +00002608found. (Yukihiro Nakadaira)
2609
2610":mkspell" didn't work correctly for non-ASCII affix flags when conversion is
2611needed on the spell file.
2612
2613glob('/dir/\$ABC/*') didn't work.
2614
Bram Moolenaarc6fe9192006-04-09 21:54:49 +00002615When using several tab pages and changing 'cmdheight' the display could become
2616messed up. Now store the value of 'cmdheight' separately for each tab page.
2617
Bram Moolenaar779b74b2006-04-10 14:55:34 +00002618The user of the Enter key while the popup menu is visible was still confusing.
2619Now use Enter to select the match after using a cursor key.
2620
2621Added "usetab" to 'switchbuf'.
2622
Bram Moolenaar4c3f5362006-04-11 21:38:50 +00002623
2624--- fixes and changes since Vim 7.0d ---
2625
2626Added CTRL-W T: move a window to a new tab page.
2627
2628Using CTRL-X s in Insert mode to complete spelling suggestions and using BS
2629deleted characters before the bad word.
2630
2631A few small fixes for the VMS makefile. (Zoltan Arpadffy)
2632
2633With a window of 91 lines 45 cols, ":vsp" scrolled the window. Copy w_wrow
2634when splitting a window and skip setting the height when it's already at the
2635right value.
2636
2637Using <silent> in a mapping with a shell command and the GUI caused redraw
2638to use wrong attributes.
2639
2640Win32: Using MSVC 4.1 for install.exe resulted in the start menu items to be
2641created in the administrator directory instead of "All Users". Define the
2642CSIDL_ items if they are missing.
2643
Bram Moolenaar18144c82006-04-12 21:52:12 +00002644Motif: The GUI tabline did not use the space above the right scrollbar. Work
2645around a bug in the Motif library. (Yegappan Lakshmanan)
2646
2647The extra files for XML Omni completion are now also installed.
2648|xml-omni-datafile|
2649
2650GTK GUI: when 'm' is missing from 'guioptions' during startup and pressing
2651<F10> GTK produced error messages. Now do create the menu but disable it just
2652after the first gui_mch_update().
2653
2654":mkspell" doesn't work well with the Hungarian dictionary from the Hunspell
2655project. Back to the Myspell dictionary.
2656
2657In help files hide the | used around tags.
2658
2659Renamed pycomplete to pythoncomplete.
2660
2661Added "tabpages" to 'sessionoptions'.
2662
2663When 'guitablabel' is set the effect wasn't visible right away.
2664
2665Fixed a few 'cindent' errors.
2666
Bram Moolenaar7fc904b2006-04-13 20:37:35 +00002667When completing menu names, e.g., after ":emenu", don't sort the entries but
2668keep them in the original order.
2669
2670Fixed a crash when editing a directory in diff mode. Don't trigger
2671autocommands when executing the diff command.
2672
Bram Moolenaar207f0092020-08-30 17:20:20 +02002673Getting a keystroke could get stuck if 'encoding' is a multibyte encoding and
Bram Moolenaar7fc904b2006-04-13 20:37:35 +00002674typing a special key.
2675
2676When 'foldignore' is set the folds were not updated right away.
Bram Moolenaar4c3f5362006-04-11 21:38:50 +00002677
Bram Moolenaar9e54a0e2006-04-14 20:42:25 +00002678When a list is indexed with [a : b] and b was greater than the length an error
Bram Moolenaarb21e5842006-04-16 18:30:08 +00002679message was given. Now silently truncate the result.
Bram Moolenaar9e54a0e2006-04-14 20:42:25 +00002680
2681When using BS during Insert mode completion go back to the original text, so
2682that CTRL-N selects the first matching entry.
2683
Bram Moolenaarb21e5842006-04-16 18:30:08 +00002684Added the 'M' flag to 'cinoptions'.
Bram Moolenaar9e54a0e2006-04-14 20:42:25 +00002685
2686Win32: Make the "gvim --help" window appear in the middle of the screen
2687instead of at an arbitrary position. (Randall W. Morris)
2688
Bram Moolenaar8cacf352006-04-15 20:27:24 +00002689Added gettabwinvar() and settabwinvar().
2690
2691Command line completion: pressing <Tab> after ":e /usr/*" expands the whole
2692tree, because it becomes ":e /usr/**". Don't add a star if there already is
2693one.
2694
Bram Moolenaarb21e5842006-04-16 18:30:08 +00002695Added grey10 to grey90 to all GUIs, so that they can all be used for
2696initializing highlighting. Use grey40 for CursorColumn and CursorLine when
2697'background' is "dark".
2698
2699When reading a file and using iconv for conversion, an incomplete byte
2700sequence at the end caused problems. (Yukihiro Nakadaira)
2701
2702
2703--- fixes and changes since Vim 7.0e ---
2704
2705Default color for MatchParen when 'background' is "dark" is now DarkCyan.
2706
2707":syn off" had to be used twice in a file that sets 'syntax' in a modeline.
2708(Michael Geddes)
2709
2710When using ":vsp" or ":sp" the available space wasn't used equally between
2711windows. (Servatius Brandt)
2712
Bram Moolenaara93fa7e2006-04-17 22:14:47 +00002713Expanding <cWORD> on a trailing blank resulted in the first word in the line
Bram Moolenaar207f0092020-08-30 17:20:20 +02002714if 'encoding' is a multibyte encoding.
Bram Moolenaara93fa7e2006-04-17 22:14:47 +00002715
2716Spell checking: spellbadword() didn't see a missing capital in the first word
2717of a line. Popup menu now only suggest the capitalized word when appropriate.
2718
Bram Moolenaarf9393ef2006-04-24 19:47:27 +00002719When using whole line completion CTRL-L moves through the matches but it
Bram Moolenaarc1e37902006-04-18 21:55:01 +00002720didn't work when at the original text.
2721
2722When completion finds the longest match, don't go to the first match but stick
2723at the original text, so that CTRL-N selects the first one.
2724
2725Recognize "zsh-beta" like "zsh" for setting the 'shellpipe' default. (James
2726Vega)
2727
2728When using ":map <expr>" and the expression results in something with a
2729special byte (NUL or CSI) then it didn't work properly. Now escape special
2730bytes.
2731
2732The default Visual highlighting for a color xterm with 8 colors was a magenta
2733background, which made magenta text disappear. Now use reverse in this
2734specific situation.
2735
2736After completing the longest match "." didn't insert the same text. Repeating
Bram Moolenaar207f0092020-08-30 17:20:20 +02002737also didn't work correctly for multibyte text.
Bram Moolenaarc1e37902006-04-18 21:55:01 +00002738
2739When using Insert mode completion and BS the whole word that was completed
2740would result in all possible matches. Now stop completion. Also fixes that
2741for spell completion the previous word was deleted.
2742
2743GTK: When 'encoding' is "latin1" and using non-ASCII characters in a file name
2744the tab page label was wrong and an error message would be given.
2745
2746The taglist() function could hang on a tags line with a non-ASCII character.
2747
Bram Moolenaar8424a622006-04-19 21:23:36 +00002748Win32: When 'encoding' differs from the system encoding tab page labels with
2749non-ASCII characters looked wrong. (Yegappan Lakshmanan)
2750
Bram Moolenaarfc1421e2006-04-20 22:17:20 +00002751Motif: building failed when Xm/Notebook.h doesn't exist. Added a configure
2752check, disable GUI tabline when it's missing.
2753
Bram Moolenaar207f0092020-08-30 17:20:20 +02002754Mac: When compiled without multibyte feature the clipboard didn't work.
Bram Moolenaarfc1421e2006-04-20 22:17:20 +00002755
2756It was possible to switch to another tab page when the cmdline window is open.
2757
2758Completion could hang when 'lines' is 6 and a preview window was opened.
2759
Bram Moolenaar57657d82006-04-21 22:12:41 +00002760Added CTRL-W gF: open file under cursor in new tab page and jump to the line
2761number following the file name.
Bram Moolenaareb3593b2006-04-22 22:33:57 +00002762Added 'guitabtooltip'. Implemented for Win32 (Yegappan Lakshmanan).
Bram Moolenaar57657d82006-04-21 22:12:41 +00002763
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002764Added "throw" to 'debug' option: throw an exception for error messages even
Bram Moolenaar3d1cde82020-08-15 18:55:18 +02002765when they would otherwise be ignored.
Bram Moolenaar57657d82006-04-21 22:12:41 +00002766
2767When 'keymap' is set and a line contains an invalid entry could get a "No
2768mapping found" warning instead of a proper error message.
2769
2770Motif: default to using XpmAttributes instead of XpmAttributes_21.
2771
Bram Moolenaareb3593b2006-04-22 22:33:57 +00002772A few more changes for 64 bit MS-Windows. (George Reilly)
2773
2774Got ml_get errors when doing "o" and selecting in other window where there are
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02002775less lines shorter than the cursor position in the other window. ins_mouse()
Bram Moolenaareb3593b2006-04-22 22:33:57 +00002776was using position in wrong window.
2777
2778Win32 GUI: Crash when giving a lot of messages during startup. Allocate twice
2779as much memory for the dialog template.
2780
2781Fixed a few leaks and wrong pointer use reported by coverity.
2782
2783When showing menus the mode character was sometimes wrong.
Bram Moolenaarfc1421e2006-04-20 22:17:20 +00002784
Bram Moolenaarf9393ef2006-04-24 19:47:27 +00002785Added feedkeys(). (Yakov Lerner)
2786
2787Made matchlist() always return all submatches.
2788
2789Moved triggering QuickFixCmdPost to before jumping to the first location.
2790
2791Mac: Added the 'macatsui' option as a temporary work around for text drawing
2792problems.
2793
2794Line completion on "/**" gave error messages when scanning an unloaded buffer.
Bram Moolenaar4a85b412006-04-23 22:40:29 +00002795
Bram Moolenaar551dbcc2006-04-25 22:13:59 +00002796--- fixes and changes since Vim 7.0f ---
2797
2798Win32: The height of the tab page labels is now adjusted to the font height.
2799(Yegappan Lakshmanan)
2800
2801Win32: selecting the tab label was off by one. (Yegappan Lakshmanan)
Bram Moolenaar4a85b412006-04-23 22:40:29 +00002802
Bram Moolenaar437df8f2006-04-27 21:47:44 +00002803Added tooltips for Motif and GTK tab page labels. (Yegappan Lakshmanan)
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002804
2805When 'encoding' is "utf-8" then ":help spell" would report an illegal byte and
2806the file was not converted from latin1 to utf-8. Now retry with latin1 if
2807reading the file as utf-8 results in illegal bytes.
2808
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002809Escape the argument of feedkeys() before putting it in the typeahead buffer.
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002810(Yukihiro Nakadaira)
2811
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002812Added the v:char variable for evaluating 'formatexpr'. (Yukihiro Nakadaira)
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002813
2814With 8 colors Search highlighting combined with Statement highlighted text
2815made the text disappear.
2816
2817VMS: avoid warnings for redefining MAX and MIN. (Zoltan Arpadffy)
2818
2819When 'virtualedit' includes "onemore", stopping Visual selection would still
2820move the cursor left.
2821
2822Prevent that using CTRL-R = in Insert mode can start Visual mode.
2823
Bram Moolenaar49325942007-05-10 19:19:59 +00002824Fixed a crash that occurred when in Insert mode with completion active and a
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002825mapping caused edit() to be called recursively.
2826
2827When using CTRL-O in Insert mode just after the last character while
2828'virtualedit' is "all", then typing CR moved the last character to the next
2829line. Call coladvance() before starting the new line.
2830
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002831When using |:shell| ignore clicks on the tab page labels. Also when using the
2832command line window.
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002833
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002834When 'eventignore' is "all" then adding more to ignoring some events, e.g.,
2835for ":vimgrep", would actually trigger more events.
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002836
2837Win32: When a running Vim uses server name GVIM1 then "gvim --remote fname"
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002838didn't find it. When looking for a server name that doesn't end in a digit
2839and it is not found then use another server with that name and a number (just
2840like on Unix).
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002841
2842When using "double" in 'spellsuggest' when the language doesn't support sound
2843folding resulted in too many suggestions.
2844
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00002845Win32: Dropping a shortcut on the Vim icon didn't edit the referred file like
Bram Moolenaarf193fff2006-04-27 00:02:13 +00002846editing it in another way would. Use fname_expand() in buf_set_name() instead
2847of simply make the file name a full path.
2848
Bram Moolenaar437df8f2006-04-27 21:47:44 +00002849Using feedkeys() could cause Vim to hang.
2850
2851When closing another tab page from the tabline menu in Insert mode the tabline
2852was not updated right away.
2853
2854The syntax menu didn't work in compatible mode.
2855
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002856After using ":tag id" twice with the same "id", ":ts" and then ":pop" a ":ts"
Bram Moolenaar437df8f2006-04-27 21:47:44 +00002857reported no matching tag. Clear the cached tag name.
2858
2859In Insert mode the matchparen plugin highlighted the wrong paren when there is
2860a string just next to a paren.
2861
Bram Moolenaar8ea91232006-04-28 22:41:43 +00002862GTK: After opening a new tab page the text was sometimes not drawn correctly.
2863Flush output and catch up with events when updating the tab page labels.
2864
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002865In the GUI, using CTRL-W q to close the last window of a tab page could cause
2866a crash.
Bram Moolenaar8ea91232006-04-28 22:41:43 +00002867
2868GTK: The tab pages line menu was not converted from 'encoding' to utf-8.
2869
Bram Moolenaar207f0092020-08-30 17:20:20 +02002870Typing a multibyte character or a special key at the hit-enter prompt did not
Bram Moolenaarc93b83a2006-04-29 22:02:36 +00002871work.
2872
2873When 'virtualedit' contains "onemore" CTRL-O in Insert mode still moved the
2874cursor left when it was after the end of the line, even though it's allowed to
2875be there.
2876
Bram Moolenaarc9b4b052006-04-30 18:54:39 +00002877Added test for using tab pages.
2878
2879towupper() and towlower() were not used, because of checking for
2880__STDC__ISO_10646__ instead of __STDC_ISO_10646__. (sertacyildiz)
2881
2882For ":map <expr>" forbid changing the text, jumping to another buffer and
2883using ":normal" to avoid nasty side effects.
2884
Bram Moolenaard68071d2006-05-02 22:08:30 +00002885--- fixes and changes since Vim 7.0g ---
2886
2887Compilation error on HP-UX, use of "dlerr" must be inside a #ifdef.
2888(Gary Johnson)
2889
2890Report +reltime feature in ":version" output.
2891
2892The tar and zip plugins detect failure to get the contents of the archive and
2893edit the file as-is.
2894
2895When the result of 'guitablabel' is empty fall back to the default label.
2896
2897Fixed crash when using ":insert" in a while loop and missing "endwhile".
2898
2899"gt" and other commands could move to another window when |textlock| active
2900and when the command line window was open.
2901
2902Spell checking a file with syntax highlighting and a bad word at the end of
2903the line is ignored could make "]s" hang.
2904
2905Mac: inputdialog() didn't work when compiled with big features.
2906
2907Interrupting ":vimgrep" while it is busy loading a file left a modified and
2908hidden buffer behind. Use enter_cleanup() and leave_cleanup() around
2909wipe_buffer().
2910
2911When making 'keymap' empty the b:keymap_name variable wasn't deleted.
2912
2913Using CTRL-N that searches a long time, pressing space to interrupt the
2914searching and accept the first match, the popup menu was still displayed
2915briefly.
2916
2917When setting the Vim window height with -geometry the 'window' option could be
2918at a value that makes CTRL-F behave differently.
2919
Bram Moolenaar8b2d9c42006-05-03 21:28:47 +00002920When opening a quickfix window in two tabs they used different buffers,
2921causing redrawing problems later. Now use the same buffer for all quickfix
2922windows. (Yegappan Lakshmanan)
2923
2924When 'mousefocus' is set moving the mouse to the text tab pages line would
2925move focus to the first window. Also, the mouse pointer would jump to the
2926active window.
2927
2928In a session file, when an empty buffer is wiped out, do this silently.
2929
2930When one window has the cursor on the last line and another window is resized
2931to make that window smaller, the cursor line could go below the displayed
2932lines. In win_new_height() subtract one from the available space.
2933Also avoid that using "~" lines makes the window scroll down.
2934
2935Mac: When sourcing the "macmap.vim" script and then finding a .vimrc file the
2936'cpo' option isn't set properly, because it was already set and restored.
2937Added the <special> argument to ":map", so that 'cpo' doesn't need to be
2938changed to be able to use <> notation. Also do this for ":menu" for
2939consistency.
2940
2941When using "/encoding=abc" in a spell word list, only "bc" was used.
2942
Bram Moolenaar54a709e2006-05-04 21:57:11 +00002943When 'encoding' and 'printencoding' were both "utf-8" then ":hardcopy" didn't
2944work. (Mike Williams)
2945
2946Mac: When building with "--disable-gui" the install directory would still be
2947"/Applications" and Vim.app would be installed. Now install in /usr/local as
2948usual for a console application.
2949
2950GUI: when doing completion and there is one match and still searching for
2951another, the cursor was displayed at the end of the line instead of after the
2952match. Now show the cursor after the match while still searching for matches.
2953
2954GUI: The mouse shape changed on the statusline even when 'mouse' was empty and
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02002955they can't be dragged.
Bram Moolenaar54a709e2006-05-04 21:57:11 +00002956
2957GTK2: Selecting a button in the confirm() dialog with Tab or cursor keys and
2958hitting Enter didn't select that button. Removed GTK 1 specific code. (Neil
2959Bird)
2960
2961When evaluating 'balloonexpr' takes a long time it could be called
2962recursively, which could cause a crash.
2963
2964exists() could not be used to detect whether ":2match" is supported. Added a
2965check for it specifically.
2966
Bram Moolenaar96351572006-05-05 21:16:59 +00002967GTK1: Tab page labels didn't work. (Yegappan Lakshmanan)
2968
2969Insert mode completion: When finding matches use 'ignorecase', but when adding
2970matches to the list don't use it, so that all words with different case are
2971added, "word", "Word" and "WORD".
2972
2973When 'cursorline' and 'hlsearch' are set and the search pattern is "x\n"
2974the rest of the line was highlighted as a match.
2975
2976Cursor moved while evaluating 'balloonexpr' that invokes ":isearch" and
2977redirects the output. Don't move the cursor to the command line if msg_silent
2978is set.
2979
2980exists() ignored text after a function name and option name, which could
2981result in false positives.
2982
2983exists() ignored characters after the recognized word, which can be wrong when
2984using a name with non-keyword characters. Specifically, these calls no longer
2985allow characters after the name: exists('*funcname') exists('*funcname(...')
2986exists('&option') exists(':cmd') exists('g:name') exists('g:name[n]')
2987exists('g:name.n')
2988
Bram Moolenaar2f567ab2006-05-06 21:47:30 +00002989Trigger the TabEnter autocommand only after entering the current window of the
2990tab page, otherwise the commands are executed with an invalid current window.
2991
2992Win32: When using two monitors and Vim is on the second monitor, changing the
2993width of the Vim window could make it jump to the first monitor.
2994
2995When scrolling back at the more prompt and the quitting a line of text would
2996be left behind when 'cmdheight' is 2 or more.
2997
Bram Moolenaar1423b9d2006-05-07 15:16:06 +00002998Fixed a few things for Insert mode completion, especially when typing BS,
2999CTRL-N or a printable character while still searching for matches.
3000
Bram Moolenaarf193fff2006-04-27 00:02:13 +00003001
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003002==============================================================================
Bram Moolenaar7a329912010-05-21 12:05:36 +02003003VERSION 7.1 *version-7.1* *version7.1*
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003004
3005This section is about improvements made between version 7.0 and 7.1.
3006
3007This is a bug-fix release, there are no fancy new features.
3008
3009
3010Changed *changed-7.1*
3011-------
3012
3013Added setting 'mouse' in vimrc_example.vim.
3014
3015When building with MZscheme also look for include files in the "plt"
3016subdirectory. That's where they are for FreeBSD.
3017
Bram Moolenaar49325942007-05-10 19:19:59 +00003018The Ruby interface module is now called "Vim" instead of "VIM". But "VIM" is
3019an alias, so it's backwards compatible. (Tim Pope)
3020
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003021
3022Added *added-7.1*
3023-----
3024
3025New syntax files:
Bram Moolenaar49325942007-05-10 19:19:59 +00003026 /var/log/messages (Yakov Lerner)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00003027 Autohotkey (Nikolai Weibull)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003028 AutoIt v3 (Jared Breland)
3029 Bazaar commit file "bzr". (Dmitry Vasiliev)
Bram Moolenaar49325942007-05-10 19:19:59 +00003030 Cdrdao TOC (Nikolai Weibull)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003031 Cmusrc (Nikolai Weibull)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00003032 Conary recipe (rPath Inc)
3033 Framescript (Nikolai Weibull)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003034 FreeBasic (Mark Manning)
3035 Hamster (David Fishburn)
3036 IBasic (Mark Manning)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00003037 Initng (Elan Ruusamae)
Bram Moolenaar49325942007-05-10 19:19:59 +00003038 Ldapconf (Nikolai Weibull)
3039 Litestep (Nikolai Weibull)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00003040 Privoxy actions file (Doug Kearns)
3041 Streaming Descriptors "sd" (Puria Nafisi Azizi)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003042
3043New tutor files:
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003044 Czech (Lubos Turek)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00003045 Hungarian (Arpad Horvath)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003046 Turkish (Serkan kkk)
3047 utf-8 version of Greek tutor.
3048 utf-8 version of Russian tutor.
3049 utf-8 version of Slowak tutor.
3050
3051New filetype plugins:
3052 Bst (Tim Pope)
3053 Cobol (Tim Pope)
3054 Fvwm (Gautam Iyer)
3055 Hamster (David Fishburn)
3056 Django HTML template (Dave Hodder)
3057
3058New indent files:
3059 Bst (Tim Pope)
3060 Cobol (Tim Pope)
3061 Hamster (David Fishburn)
3062 Django HTML template (Dave Hodder)
3063 Javascript
3064 JSP (David Fishburn)
3065
3066New keymap files:
3067 Bulgarian (Boyko Bantchev)
3068 Mongolian (Natsagdorj Shagdar)
3069 Thaana (Ibrahim Fayaz)
3070 Vietnamese (Samuel Thibault)
3071
3072Other new runtime files:
3073 Ada support files. (Neil Bird, Martin Krischik)
3074 Slovenian menu translations (Mojca Miklavec)
3075 Mono C# compiler plugin (Jarek Sobiecki)
3076
3077
3078Fixed *fixed-7.1*
3079-----
3080
3081Could not build the Win32s version. Added a few structure definitions in
3082src/gui_w32.c
3083
3084
3085Patch 7.0.001
3086Problem: ":set spellsuggest+=10" does not work. (Suresh Govindachar)
3087Solution: Add P_COMMA to the 'spellsuggest' flags.
3088Files: src/option.c
3089
3090Patch 7.0.002
3091Problem: C omni completion has a problem with tags files with a path
3092 containing "#" or "%".
3093Solution: Escape these characters. (Sebastian Baberowski)
3094Files: runtime/autoload/ccomplete.vim
3095
3096Patch 7.0.003
3097Problem: GUI: clicking in the lower part of a label in the tab pages line
3098 while 'mousefocus' is set may warp the mouse pointer. (Robert
3099 Webb)
3100Solution: Check for a negative mouse position.
3101Files: src/gui.c
3102
3103Patch 7.0.004
3104Problem: Compiler warning for debug_saved used before set. (Todd Blumer)
3105Solution: Remove the "else" for calling save_dbg_stuff().
3106Files: src/ex_docmd.c
3107
3108Patch 7.0.005 (extra)
3109Problem: Win32: The installer doesn't remove the "autoload" and "spell"
3110 directories. (David Fishburn)
3111Solution: Add the directories to the list to be removed.
3112Files: nsis/gvim.nsi
3113
3114Patch 7.0.006
3115Problem: Mac: "make shadow" doesn't make a link for infplist.xml. (Axel
3116 Kielhorn)
3117Solution: Make the link.
3118Files: src/Makefile
3119
3120Patch 7.0.007
3121Problem: AIX: compiling fails for message.c. (Ruediger Hornig)
3122Solution: Move the #if outside of memchr().
3123Files: src/message.c
3124
3125Patch 7.0.008
3126Problem: Can't call a function that uses both <SID> and {expr}. (Thomas)
3127Solution: Check both the expanded and unexpanded name for <SID>.
3128Files: src/eval.c
3129
3130Patch 7.0.009
3131Problem: ml_get errors with both 'sidescroll' and 'spell' set.
3132Solution: Use ml_get_buf() instead of ml_get(), get the line from the right
3133 buffer, not the current one.
3134Files: src/spell.c
3135
3136Patch 7.0.010
3137Problem: The spellfile plugin required typing login name and password.
3138Solution: Use "anonymous" and "vim7user" by default. No need to setup a
3139 .netrc file.
3140Files: runtime/autoload/spellfile.vim
3141
3142Patch 7.0.011
3143Problem: Can't compile without the folding and with the eval feature.
3144Solution: Add an #ifdef. (Vallimar)
3145Files: src/option.c
3146
3147Patch 7.0.012
3148Problem: Using the matchparen plugin, moving the cursor in Insert mode to a
3149 shorter line that ends in a brace, changes the preferred column
3150Solution: Use winsaveview()/winrestview() instead of getpos()/setpos().
3151Files: runtime/plugin/matchparen.vim
3152
3153Patch 7.0.013
3154Problem: Insert mode completion: using CTRL-L to add an extra character
3155 also deselects the current match, making it impossible to use
3156 CTRL-L a second time.
3157Solution: Keep the current match. Also make CTRL-L work at the original
3158 text, using the first displayed match.
3159Files: src/edit.c
3160
3161Patch 7.0.014
3162Problem: Compiling gui_xmebw.c fails on Dec Alpha Tru64. (Rolfe)
3163Solution: Disable some code for Motif 1.2 and older.
3164Files: src/gui_xmebw.c
3165
3166Patch 7.0.015
3167Problem: Athena: compilation problems with modern compiler.
3168Solution: Avoid type casts for lvalue. (Alexey Froloff)
3169Files: src/gui_at_fs.c
3170
3171Patch 7.0.016
3172Problem: Printing doesn't work for "dec-mcs" encoding.
3173Solution: Add "dec-mcs", "mac-roman" and "hp-roman8" to the list of
3174 recognized 8-bit encodings. (Mike Williams)
3175Files: src/mbyte.c
3176
3177Patch 7.0.017 (after 7.0.014)
3178Problem: Linking gui_xmebw.c fails on Dec Alpha Tru64. (Rolfe)
3179Solution: Adjust defines for Motif 1.2 and older.
3180Files: src/gui_xmebw.c
3181
3182Patch 7.0.018
3183Problem: VMS: plugins are not loaded on startup.
3184Solution: Remove "**" from the path. (Zoltan Arpadffy)
3185Files: src/main.c
3186
3187Patch 7.0.019
3188Problem: Repeating "VjA789" may cause a crash. (James Vega)
3189Solution: Check the cursor column after moving it to another line.
3190Files: src/ops.c
3191
3192Patch 7.0.020
3193Problem: Crash when using 'mousefocus'. (William Fulton)
3194Solution: Make buffer for mouse coordinates 2 bytes longer. (Juergen Weigert)
3195Files: src/gui.c
3196
3197Patch 7.0.021
3198Problem: Crash when using "\\[" and "\\]" in 'errorformat'. (Marc Weber)
3199Solution: Check for valid submatches after matching the pattern.
3200Files: src/quickfix.c
3201
3202Patch 7.0.022
3203Problem: Using buffer.append() in Ruby may append the line to the wrong
3204 buffer. (Alex Norman)
3205Solution: Properly switch to the buffer to do the appending. Also for
3206 buffer.delete() and setting a buffer line.
3207Files: src/if_ruby.c
3208
3209Patch 7.0.023
3210Problem: Crash when doing spell completion in an empty line and pressing
3211 CTRL-E.
3212Solution: Check for a zero pointer. (James Vega)
3213 Also handle a situation without a matching pattern better, report
3214 "No matches" instead of remaining in undefined CTRL-X mode. And
3215 get out of CTRL-X mode when typing a letter.
3216Files: src/edit.c
3217
3218Patch 7.0.024
3219Problem: It is possible to set arbitrary "v:" variables.
3220Solution: Disallow setting "v:" variables that are not predefined.
3221Files: src/eval.c
3222
3223Patch 7.0.025
3224Problem: Crash when removing an element of a:000. (Nikolai Weibull)
3225Solution: Mark the a:000 list with VAR_FIXED.
3226Files: src/eval.c
3227
3228Patch 7.0.026
3229Problem: Using libcall() may show an old error.
3230Solution: Invoke dlerror() to clear a previous error. (Yukihiro Nakadaira)
3231Files: src/os_unix.c
3232
3233Patch 7.0.027 (extra)
3234Problem: Win32: When compiled with SNIFF gvim may hang on exit.
3235Solution: Translate and dispatch the WM_USER message. (Mathias Michaelis)
3236Files: src/gui_w48.c
3237
3238Patch 7.0.028 (extra)
3239Problem: OS/2: Vim doesn't compile with gcc 3.2.1.
3240Solution: Add argument to after_pathsep(), don't define vim_handle_signal(),
3241 define HAVE_STDARG_H. (David Sanders)
3242Files: src/os_unix.c, src/vim.h, src/os_os2_cfg.h
3243
3244Patch 7.0.029
3245Problem: getchar() may not position the cursor after a space.
3246Solution: Position the cursor explicitly.
3247Files: src/eval.c
3248
3249Patch 7.0.030
3250Problem: The ":compiler" command can't be used in a FileChangedRO event.
3251 (Hari Krishna Dara)
3252Solution: Add the CMDWIN flag to the ":compiler" command.
3253Files: src/ex_cmds.h
3254
3255Patch 7.0.031
3256Problem: When deleting a buffer the buffer-local mappings for Select mode
3257 remain.
3258Solution: Add the Select mode bit to MAP_ALL_MODES. (Edwin Steiner)
3259Files: src/vim.h
3260
3261Patch 7.0.032 (extra, after 7.0.027)
3262Problem: Missing semicolon.
3263Solution: Add the semicolon.
3264Files: src/gui_w48.c
3265
3266Patch 7.0.033
3267Problem: When pasting text, with the menu or CTRL-V, autoindent is removed.
3268Solution: Use "x<BS>" to avoid indent to be removed. (Benji Fisher)
3269Files: runtime/autoload/paste.vim
3270
3271Patch 7.0.034
3272Problem: After doing completion and typing more characters or using BS
3273 repeating with "." didn't work properly. (Martin Stubenschrott)
3274Solution: Don't put BS and other characters in the redo buffer right away,
3275 do this when finishing completion.
3276Files: src/edit.c
3277
3278Patch 7.0.035
3279Problem: Insert mode completion works when typed but not when replayed from
3280 a register. (Hari Krishna Dara)
3281 Also: Mappings for Insert mode completion don't always work.
3282Solution: When finding a non-completion key in the input don't interrupt
3283 completion when it wasn't typed.
3284 Do use mappings when checking for typeahead while still finding
3285 completions. Avoids that completion is interrupted too soon.
3286 Use "compl_pending" in a different way.
3287Files: src/edit.c
3288
3289Patch 7.0.036
3290Problem: Can't compile with small features and syntax highlighting or the
3291 diff feature.
3292Solution: Define LINE_ATTR whenever syntax highlighting or the diff feature
3293 is enabled.
3294Files: src/screen.c
3295
3296Patch 7.0.037
3297Problem: Crash when resizing the GUI window vertically when there is a line
3298 that doesn't fit.
3299Solution: Don't redraw while the screen data is invalid.
3300Files: src/screen.c
3301
3302Patch 7.0.038
3303Problem: When calling complete() from an Insert mode expression mapping
3304 text could be inserted in an improper way.
3305Solution: Make undo_allowed() global and use it in complete().
3306Files: src/undo.c, src/proto/undo.pro, src/eval.c
3307
3308Patch 7.0.039
3309Problem: Calling inputdialog() with a third argument in the console doesn't
3310 work.
3311Solution: Make a separate function for input() and inputdialog(). (Yegappan
3312 Lakshmanan)
3313Files: src/eval.c
3314
3315Patch 7.0.040
3316Problem: When 'cmdheight' is larger than 1 using inputlist() or selecting
3317 a spell suggestion with the mouse gets the wrong entry.
3318Solution: Start listing the first alternative on the last line of the screen.
3319Files: src/eval.c, src/spell.c
3320
3321Patch 7.0.041
3322Problem: cursor([1, 1]) doesn't work. (Peter Hodge)
3323Solution: Allow leaving out the third item of the list and use zero for the
3324 virtual column offset.
3325Files: src/eval.c
3326
3327Patch 7.0.042
3328Problem: When pasting a block of text in Insert mode Vim hangs or crashes.
3329 (Noam Halevy)
3330Solution: Avoid that the cursor is positioned past the NUL of a line.
3331Files: src/ops.c
3332
3333Patch 7.0.043
3334Problem: Using "%!" at the start of 'statusline' doesn't work.
3335Solution: Recognize the special item when the option is being set.
3336Files: src/option.c
3337
3338Patch 7.0.044
3339Problem: Perl: setting a buffer line in another buffer may result in
3340 changing the current buffer.
3341Solution: Properly change to the buffer to be changed.
3342Files: src/if_perl.xs
3343
3344Patch 7.0.045 (extra)
3345Problem: Win32: Warnings when compiling OLE version with MSVC 2005.
3346Solution: Move including vim.h to before windows.h. (Ilya Bobir)
3347Files: src/if_ole.cpp
3348
3349Patch 7.0.046
3350Problem: The matchparen plugin ignores parens in strings, but not in single
3351 quotes, often marked with "character".
3352Solution: Also ignore parens in syntax items matching "character".
3353Files: runtime/plugin/matchparen.vim
3354
3355Patch 7.0.047
3356Problem: When running configure the exit status is wrong.
3357Solution: Handle the exit status properly. (Matthew Woehlke)
3358Files: configure, src/configure
3359
3360Patch 7.0.048
3361Problem: Writing a compressed file fails when there are parens in the name.
3362 (Wang Jian)
3363Solution: Put quotes around the temp file name.
3364Files: runtime/autoload/gzip.vim
3365
3366Patch 7.0.049
3367Problem: Some TCL scripts are not recognized. (Steven Atkinson)
3368Solution: Check for "exec wish" in the file.
3369Files: runtime/scripts.vim
3370
3371Patch 7.0.050
3372Problem: After using the netbeans interface close command a stale pointer
3373 may be used.
Bram Moolenaar3df01732017-02-17 22:47:16 +01003374Solution: Clear the pointer to the closed buffer. (Xavier de Gaye)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003375Files: src/netbeans.c
3376
3377Patch 7.0.051 (after 7.0.44)
3378Problem: The Perl interface doesn't compile or doesn't work properly.
3379Solution: Remove the spaces before #ifdef and avoid an empty line above it.
3380Files: src/if_perl.xs
3381
3382Patch 7.0.052
3383Problem: The user may not be aware that the Vim server allows others more
3384 functionality than desired.
3385Solution: When running Vim as root don't become a Vim server without an
3386 explicit --servername argument.
3387Files: src/main.c
3388
3389Patch 7.0.053
Bram Moolenaar207f0092020-08-30 17:20:20 +02003390Problem: Shortening a directory name may fail when there are multibyte
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003391 characters.
3392Solution: Copy the correct bytes. (Titov Anatoly)
3393Files: src/misc1.c
3394
3395Patch 7.0.054
3396Problem: Mac: Using a menu name that only has a mnemonic or accelerator
3397 causes a crash. (Elliot Shank)
3398Solution: Check for an empty menu name. Also delete empty submenus that
3399 were created before detecting the error.
3400Files: src/menu.c
3401
3402Patch 7.0.055
3403Problem: ":startinsert" in a CmdwinEnter autocommand doesn't take immediate
3404 effect. (Bradley White)
3405Solution: Put a NOP key in the typeahead buffer. Also avoid that using
3406 CTRL-C to go back to the command line moves the cursor left.
3407Files: src/edit.c, src/ex_getln.c
3408
3409Patch 7.0.056
3410Problem: "#!something" gives an error message.
3411Solution: Ignore this line, so that it can be used in an executable Vim
3412 script.
3413Files: src/ex_docmd.c
3414
3415Patch 7.0.057 (extra, after 7.0.45)
3416Problem: Win32: Compilation problem with Borland C 5.5.
3417Solution: Include vim.h as before. (Mark S. Williams)
3418Files: src/if_ole.cpp
3419
3420Patch 7.0.058
Bram Moolenaarc236c162008-07-13 17:41:49 +00003421Problem: The gbk and gb18030 encodings are not recognized.
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003422Solution: Add aliases to cp936. (Edward L. Fox)
3423Files: src/mbyte.c
3424
3425Patch 7.0.059
3426Problem: The Perl interface doesn't compile with ActiveState Perl 5.8.8.
3427Solution: Remove the __attribute__() items. (Liu Yubao)
3428Files: src/if_perl.xs
3429
3430Patch 7.0.060 (after 7.0.51)
3431Problem: Code for temporarily switching to another buffer is duplicated in
3432 quite a few places.
3433Solution: Use aucmd_prepbuf() and aucmd_restbuf() also when FEAT_AUTOCMD is
3434 not defined.
3435Files: src/buffer.c, src/eval.c, src/fileio.c, src/if_ruby.c,
3436 src/if_perl.xs, src/quickfix.c, src/structs.h
3437
3438Patch 7.0.061
3439Problem: Insert mode completion for Vim commands may crash if there is
3440 nothing to complete.
3441Solution: Instead of freeing the pattern make it empty, so that a "not
3442 found" error is given. (Yukihiro Nakadaira)
3443Files: src/edit.c
3444
3445Patch 7.0.062
3446Problem: Mac: Crash when using the popup menu for spell correction. The
3447 popup menu appears twice when letting go of the right mouse button
3448 early.
3449Solution: Don't show the popup menu on the release of the right mouse
3450 button. Also check that a menu pointer is actually valid.
3451Files: src/proto/menu.pro, src/menu.c, src/normal.c, src/term.c
3452
3453Patch 7.0.063
3454Problem: Tiny chance for a memory leak. (coverity)
3455Solution: Free pointer when next memory allocation fails.
3456Files: src/eval.c
3457
3458Patch 7.0.064
3459Problem: Using uninitialized variable. (Tony Mechelynck)
3460Solution: When not used set "temp" to zero. Also avoid a warning for
3461 "files" in ins_compl_dictionaries().
3462Files: src/edit.c
3463
3464Patch 7.0.065 (extra)
3465Problem: Mac: left-right movement of the scrollwheel causes up-down
3466 scrolling.
3467Solution: Ignore mouse wheel events that are not up-down. (Nicolas Weber)
3468Files: src/gui_mac.c
3469
3470Patch 7.0.066
3471Problem: After the popup menu for Insert mode completion overlaps the tab
3472 pages line it is not completely removed.
3473Solution: Redraw the tab pages line after removing the popup menu. (Ori
3474 Avtalion)
3475Files: src/popupmnu.c
3476
3477Patch 7.0.067
3478Problem: Undo doesn't always work properly when using "scim" input method.
3479 Undo is split up when using preediting.
3480Solution: Reset xim_has_preediting also when preedit_start_col is not
3481 MAXCOL. Don't split undo when <Left> is used while preediting.
3482 (Yukihiro Nakadaira)
3483Files: src/edit.c, src/mbyte.c
3484
3485Patch 7.0.068
3486Problem: When 'ignorecase' is set and using Insert mode completion,
3487 typing characters to change the list of matches, case is not
3488 ignored. (Hugo Ahlenius)
3489Solution: Store the 'ignorecase' flag with the matches where needed.
3490Files: src/edit.c, src/search.c, src/spell.c
3491
3492Patch 7.0.069
3493Problem: Setting 'guitablabel' to %!expand(\%) causes Vim to free an
3494 invalid pointer. (Kim Schulz)
3495Solution: Don't try freeing a constant string pointer.
3496Files: src/buffer.c
3497
3498Patch 7.0.070
3499Problem: Compiler warnings for shadowed variables and uninitialized
3500 variables.
3501Solution: Rename variables such as "index", "msg" and "dup". Initialize
3502 variables.
3503Files: src/edit.c, src/eval.c, src/ex_cmds.c, src/ex_cmds2.c,
3504 src/ex_docmd.c, src/gui_beval.c, src/gui_gtk.c, src/gui_gtk_x11.c,
3505 src/hardcopy.c, src/if_cscope.c, src/main.c, src/mbyte.c,
3506 src/memline.c, src/netbeans.c, src/normal.c, src/option.c,
3507 src/os_unix.c, src/quickfix.c, src/regexp.c, src/screen.c,
3508 src/search.c, src/spell.c, src/ui.c, src/undo.c, src/window.c,
3509 src/version.c
3510
3511Patch 7.0.071
3512Problem: Using an empty search pattern may cause a crash.
3513Solution: Avoid using a NULL pointer.
3514Files: src/search.c
3515
3516Patch 7.0.072
3517Problem: When starting the GUI fails there is no way to adjust settings or
3518 do something else.
3519Solution: Add the GUIFailed autocommand event.
3520Files: src/fileio.c, src/gui.c, src/vim.h
3521
3522Patch 7.0.073
3523Problem: Insert mode completion: Typing <CR> sometimes selects the original
3524 text instead of keeping what was typed. (Justin Constantino)
3525Solution: Don't let <CR> select the original text if there is no popup menu.
3526Files: src/edit.c
3527
3528Patch 7.0.074 (extra)
3529Problem: Win32: tooltips were not converted from 'encoding' to Unicode.
3530Solution: Set the tooltip to use Unicode and do the conversion. Also
3531 cleanup the code for the tab pages tooltips. (Yukihiro Nakadaira)
3532Files: src/gui_w32.c, src/gui_w48.c
3533
3534Patch 7.0.075
3535Problem: winsaveview() did not store the actual value of the desired cursor
3536 column. This could move the cursor in the matchparen plugin.
3537Solution: Call update_curswant() before using the value w_curswant.
3538Files: src/eval.c
3539
3540Patch 7.0.076 (after 7.0.010)
3541Problem: Automatic downloading of spell files only works for ftp.
3542Solution: Don't add login and password for non-ftp URLs. (Alexander Patrakov)
3543Files: runtime/autoload/spellfile.vim
3544
3545Patch 7.0.077
3546Problem: ":unlet v:this_session" causes a crash. (Marius Roets)
3547Solution: When trying to unlet a fixed variable give an error message.
3548Files: src/eval.c
3549
3550Patch 7.0.078
3551Problem: There are two error messages E46.
3552Solution: Change the number for the sandbox message to E794.
3553Files: src/globals.h
3554
3555Patch 7.0.079
3556Problem: Russian tutor doesn't work when 'encoding' is "utf-8".
3557Solution: Use tutor.ru.utf-8 as the master, and generate the other encodings
3558 from it. Select the right tutor depending on 'encoding'. (Alexey
3559 Froloff)
3560Files: runtime/tutor/Makefile, runtime/tutor/tutor.vim,
3561 runtime/tutor/tutor.ru.utf-8
3562
3563Patch 7.0.080
3564Problem: Generating auto/pathdef.c fails for CFLAGS with a backslash.
3565Solution: Double backslashes in the string. (Alexey Froloff)
3566Files: src/Makefile
3567
3568Patch 7.0.081
3569Problem: Command line completion doesn't work for a shell command with an
3570 absolute path.
3571Solution: Don't use $PATH when there is an absolute path.
3572Files: src/ex_getln.c
3573
3574Patch 7.0.082
3575Problem: Calling a function that waits for input may cause List and
3576 Dictionary arguments to be freed by the garbage collector.
3577Solution: Keep a list of all arguments to internal functions.
3578Files: src/eval.c
3579
3580Patch 7.0.083
3581Problem: Clicking with the mouse on an item for inputlist() doesn't work
3582 when 'compatible' is set and/or when 'cmdheight' is more than one.
3583 (Christian J. Robinson)
3584Solution: Also decrement "lines_left" when 'more' isn't set. Set
3585 "cmdline_row" to zero to get all mouse events.
3586Files: src/message.c, src/misc1.c
3587
3588Patch 7.0.084
3589Problem: The garbage collector may do its work while some Lists or
3590 Dictionaries are used internally, e.g., by ":echo" that runs into
3591 the more-prompt or ":echo [garbagecollect()]".
3592Solution: Only do garbage collection when waiting for a character at the
3593 toplevel. Let garbagecollect() set a flag that is handled at the
3594 toplevel before waiting for a character.
3595Files: src/eval.c, src/getchar.c, src/globals.h, src/main.c
3596
3597Patch 7.0.085
3598Problem: When doing "make test" the viminfo file is modified.
Bram Moolenaar9b451252012-08-15 17:43:31 +02003599Solution: Use another viminfo file after setting 'compatible'.
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003600Files: src/testdir/test56.in
3601
3602Patch 7.0.086
3603Problem: getqflist() returns entries for pattern and text with the number
3604 zero. Passing these to setqflist() results in the string "0".
3605Solution: Use an empty string instead of the number zero.
3606Files: src/quickfix.c
3607
3608Patch 7.0.087
3609Problem: After ":file fname" and ":saveas fname" the 'autochdir' option
3610 does not take effect. (Yakov Lerner)
3611 Commands for handling 'autochdir' are repeated many times.
3612Solution: Add the DO_AUTOCHDIR macro and do_autochdir(). Use it for
3613 ":file fname" and ":saveas fname".
3614Files: src/proto/buffer.pro, src/buffer.c, src/ex_cmds.c, src/macros.h,
3615 src/netbeans.c, src/option.c, src/window.c
3616
3617Patch 7.0.088
3618Problem: When compiled with Perl the generated prototypes have "extern"
3619 unnecessarily added.
3620Solution: Remove the "-pipe" argument from PERL_CFLAGS.
3621Files: src/auto/configure, src/configure.in
3622
3623Patch 7.0.089
Bram Moolenaar207f0092020-08-30 17:20:20 +02003624Problem: "ga" does not work properly for a non-Unicode multibyte encoding.
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003625Solution: Only check for composing chars for utf-8. (Taro Muraoka)
3626Files: src/ex_cmds.c
3627
3628Patch 7.0.090
3629Problem: Cancelling the conform() dialog on the console with Esc requires
3630 typing it twice. (Benji Fisher)
3631Solution: When the start of an escape sequence is found use 'timeoutlen' or
3632 'ttimeoutlen'.
3633Files: src/misc1.c
3634
3635Patch 7.0.091
3636Problem: Using winrestview() while 'showcmd' is set causes the cursor to be
3637 displayed in the wrong position. (Yakov Lerner)
3638Solution: Set the window topline properly.
3639Files: src/eval.c
3640
3641Patch 7.0.092 (after 7.0.082 and 7.0.084)
3642Problem: The list of internal function arguments is obsolete now that
3643 garbage collection is only done at the toplevel.
3644Solution: Remove the list of all arguments to internal functions.
3645Files: src/eval.c
3646
3647Patch 7.0.093
3648Problem: The matchparen plugin can't handle a 'matchpairs' value where a
3649 colon is matched.
3650Solution: Change the split() that is used to change 'matchpairs' into a
3651 List.
3652Files: runtime/plugin/matchparen.vim
3653
3654Patch 7.0.094
3655Problem: When a hidden buffer is made the current buffer and another file
3656 edited later, the file message will still be given. Using
3657 ":silent" also doesn't prevent the file message. (Marvin Renich)
3658Solution: Reset the need_fileinfo flag when reading a file. Don't set
3659 need_fileinfo when msg_silent is set.
3660Files: src/buffer.c, src/fileio.c
3661
3662Patch 7.0.095
3663Problem: The Greek tutor is not available in utf-8. "el" is used for the
3664 language, only "gr" for the country is recognized.
3665Solution: Add the utf-8 Greek tutor. Use it for conversion to iso-8859-7
3666 and cp737. (Lefteris Dimitroulakis)
3667Files: runtime/tutor/Makefile, runtime/tutor/tutor.gr.utf-8,
3668 runtime/tutor/tutor.vim
3669
3670Patch 7.0.096
3671Problem: taglist() returns the filename relative to the tags file, while
3672 the directory of the tags file is unknown. (Hari Krishna Dara)
3673Solution: Expand the file name. (Yegappan Lakshmanan)
3674Files: src/tag.c
3675
3676Patch 7.0.097
3677Problem: ":tabclose N" that closes another tab page does not remove the tab
3678 pages line. Same problem when using the mouse.
3679Solution: Adjust the tab pages line when needed in tabpage_close_other().
3680Files: src/ex_docmd.c
3681
3682Patch 7.0.098
3683Problem: Redirecting command output in a cmdline completion function
3684 doesn't work. (Hari Krishna Dara)
3685Solution: Enable redirection when redirection is started.
3686Files: src/ex_docmd.c, src/ex_getln.c
3687
3688Patch 7.0.099
3689Problem: GUI: When the popup menu is visible using the scrollbar messes up
3690 the display.
3691Solution: Disallow scrolling the current window. Redraw the popup menu
3692 after scrolling another window.
3693Files: src/gui.c
3694
3695Patch 7.0.100
3696Problem: "zug" may report the wrong filename. (Lawrence Kesteloot)
3697Solution: Call home_replace() to fill NameBuff[].
3698Files: src/spell.c
3699
3700Patch 7.0.101
3701Problem: When the "~/.vim/spell" directory does not exist "zg" may create
3702 a wrong directory. "zw" doesn't work.
3703Solution: Use the directory of the file name instead of NameBuff. For "zw"
3704 not only remove a good word but also add the word with "!".
3705Files: src/spell.c
3706
3707Patch 7.0.102
3708Problem: Redrawing cmdline is not correct when using SCIM.
3709Solution: Don't call im_get_status(). (Yukihiro Nakadaira)
3710Files: src/ex_getln.c
3711
3712Patch 7.0.103 (after 7.0.101)
3713Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
3714Solution: Init variable.
3715Files: src/spell.c
3716
3717Patch 7.0.104
3718Problem: The CursorHoldI event only triggers once in Insert mode. It also
3719 triggers after CTRL-V and other two-key commands.
3720Solution: Set "did_cursorhold" before getting a second key. Reset
3721 "did_cursorhold" after handling a command.
3722Files: src/edit.c, src/fileio.c
3723
3724Patch 7.0.105
3725Problem: When using incremental search the statusline ruler isn't updated.
3726 (Christoph Koegl)
3727Solution: Update the statusline when it contains the ruler.
3728Files: src/ex_getln.c
3729
3730Patch 7.0.106
3731Problem: The spell popup menu uses ":amenu", triggering mappings. Other
3732 PopupMenu autocommands are removed. (John Little)
3733Solution: Use ":anoremenu" and use an autocmd group.
3734Files: runtime/menu.vim
3735
3736Patch 7.0.107
3737Problem: Incremental search doesn't redraw the text tabline. (Ilya Bobir)
3738 Also happens in other situations with one window in a tab page.
3739Solution: Redraw the tabline after clearing the screen.
3740Files: src/screen.c
3741
3742Patch 7.0.108 (extra)
3743Problem: Amiga: Compilation problem.
3744Solution: Have mch_mkdir() return a failure flag. (Willy Catteau)
3745Files: src/os_amiga.c, src/proto/os_amiga.pro
3746
3747Patch 7.0.109
3748Problem: Lisp indenting is confused by escaped quotes in strings. (Dorai
3749 Sitaram)
3750Solution: Check for backslash inside strings. (Sergey Khorev)
3751Files: src/misc1.c
3752
3753Patch 7.0.110
3754Problem: Amiga: Compilation problems when not using libnix.
3755Solution: Change a few #ifdefs. (Willy Catteau)
3756Files: src/memfile.c
3757
3758Patch 7.0.111
3759Problem: The gzip plugin can't handle filenames with single quotes.
3760Solution: Add and use the shellescape() function. (partly by Alexey Froloff)
3761Files: runtime/autoload/gzip.vim, runtime/doc/eval.txt, src/eval.c,
3762 src/mbyte.c, src/misc2.c, src/proto/misc2.pro
3763
3764Patch 7.0.112
3765Problem: Python interface does not work with Python 2.5.
3766Solution: Change PyMem_DEL() to Py_DECREF(). (Sumner Hayes)
3767Files: src/if_python.c
3768
3769Patch 7.0.113
3770Problem: Using CTRL-L in Insert completion when there is no current match
3771 may cause a crash. (Yukihiro Nakadaira)
3772Solution: Check for compl_leader to be NULL
3773Files: src/edit.c
3774
3775Patch 7.0.114
3776Problem: When aborting an insert with CTRL-C an extra undo point is
3777 created in the GUI. (Yukihiro Nakadaira)
3778Solution: Call gotchars() only when advancing.
3779Files: src/getchar.c
3780
3781Patch 7.0.115
3782Problem: When 'ignorecase' is set, Insert mode completion only adds "foo"
3783 and not "Foo" when both are found.
3784 A found match isn't displayed right away when 'completeopt' does
3785 not have "menu" or "menuone".
3786Solution: Do not ignore case when checking if a completion match already
3787 exists. call ins_compl_check_keys() also when not using a popup
3788 menu. (Yukihiro Nakadaira)
3789Files: src/edit.c
3790
3791Patch 7.0.116
3792Problem: 64 bit Windows version reports "32 bit" in the ":version" output.
3793 (M. Veerman)
3794Solution: Change the text for Win64.
3795Files: src/version.c
3796
3797Patch 7.0.117
3798Problem: Using "extend" on a syntax item inside a region with "keepend", an
3799 intermediate item may be truncated.
3800 When applying the "keepend" and there is an offset to the end
3801 pattern the highlighting of a contained item isn't adjusted.
3802Solution: Use the seen_keepend flag to remember when to apply the "keepend"
3803 flag. Adjust the keepend highlighting properly. (Ilya Bobir)
3804Files: src/syntax.c
3805
3806Patch 7.0.118
3807Problem: printf() does not do zero padding for strings.
3808Solution: Do allow zero padding for strings.
3809Files: src/message.c
3810
3811Patch 7.0.119
3812Problem: When going back from Insert to Normal mode the CursorHold event
3813 doesn't trigger. (Yakov Lerner)
3814Solution: Reset "did_cursorhold" when leaving Insert mode.
3815Files: src/edit.c
3816
3817Patch 7.0.120
3818Problem: Crash when using CTRL-R = at the command line and entering
3819 "getreg('=')". (James Vega)
3820Solution: Avoid recursiveness of evaluating the = register.
3821Files: src/ops.c
3822
3823Patch 7.0.121
3824Problem: GUI: Dragging the last status line doesn't work when there is a
3825 text tabline. (Markus Wolf)
3826Solution: Take the text tabline into account when deciding to start modeless
3827 selection.
3828Files: src/gui.c
3829
3830Patch 7.0.122
3831Problem: GUI: When clearing after a bold, double-wide character half a
3832 character may be drawn.
3833Solution: Check for double-wide character and redraw it. (Yukihiro Nakadaira)
3834Files: src/screen.c
3835
3836Patch 7.0.123
3837Problem: On SCO Openserver configure selects the wrong terminal library.
3838Solution: Put terminfo before the other libraries. (Roger Cornelius)
3839 Also fix a small problem compiling on Mac without Darwin.
3840Files: src/configure.in, src/auto/configure
3841
3842Patch 7.0.124
3843Problem: getwinvar() obtains a dictionary with window-local variables, but
3844 it's always for the current window.
3845Solution: Get the variables of the specified window. (Geoff Reedy)
3846Files: src/eval.c
3847
3848Patch 7.0.125
3849Problem: When "autoselect" is in the 'clipboard' option then the '< and '>
3850 marks are set while Visual mode is still active.
3851Solution: Don't set the '< and '> marks when yanking the selected area for
3852 the clipboard.
3853Files: src/normal.c
3854
3855Patch 7.0.126
3856Problem: When 'formatexpr' uses setline() and later internal formatting is
3857 used undo information is not correct. (Jiri Cerny, Benji Fisher)
3858Solution: Set ins_need_undo after using 'formatexpr'.
3859Files: src/edit.c
3860
3861Patch 7.0.127
Bram Moolenaar3d1cde82020-08-15 18:55:18 +02003862Problem: Crash when swap file has invalid timestamp.
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00003863Solution: Check return value of ctime() for being NULL.
3864Files: src/memline.c
3865
3866Patch 7.0.128
3867Problem: GUI: when closing gvim is cancelled because there is a changed
3868 buffer the screen isn't updated to show the changed buffer in the
3869 current window. (Krzysztof Kacprzak)
3870Solution: Redraw when closing gvim is cancelled.
3871Files: src/gui.c
3872
3873Patch 7.0.129
3874Problem: GTK GUI: the GTK file dialog can't handle a relative path.
3875Solution: Make the initial directory a full path before passing it to GTK.
3876 (James Vega) Also postpone adding the default file name until
3877 after setting the directory.
3878Files: src/gui_gtk.c
3879
3880Patch 7.0.130 (extra)
3881Problem: Win32: Trying to edit or write devices may cause Vim to get stuck.
3882Solution: Add the 'opendevice' option, default off. Disallow
3883 reading/writing from/to devices when it's off.
3884 Also detect more devices by the full name starting with "\\.\".
3885Files: runtime/doc/options.txt, src/fileio.c, src/option.c, src/option.h,
3886 src/os_win32.c
3887
3888Patch 7.0.131
3889Problem: Win32: "vim -r" does not list all the swap files.
3890Solution: Also check for swap files starting with a dot.
3891Files: src/memline.c
3892
3893Patch 7.0.132 (after 7.0.130)
3894Problem: Win32: Crash when Vim reads from stdin.
3895Solution: Only use mch_nodetype() when there is a file name.
3896Files: src/fileio.c
3897
3898Patch 7.0.133
3899Problem: When searching included files messages are added to the history.
3900Solution: Set msg_hist_off for messages about scanning included files.
3901 Set msg_silent to avoid message about wrapping around.
3902Files: src/edit.c, src/globals.h, src/message.c, src/search.c
3903
3904Patch 7.0.134
3905Problem: Crash when comparing a recursively looped List or Dictionary.
3906Solution: Limit recursiveness for comparing to 1000.
3907Files: src/eval.c
3908
3909Patch 7.0.135
3910Problem: Crash when garbage collecting list or dict with loop.
3911Solution: Don't use DEL_REFCOUNT but don't recurse into Lists and
3912 Dictionaries when freeing them in the garbage collector.
3913 Also add allocated Dictionaries to the list of Dictionaries to
3914 avoid leaking memory.
3915Files: src/eval.c, src/proto/eval.pro, src/tag.c
3916
3917Patch 7.0.136
3918Problem: Using "O" while matching parens are highlighted may not remove the
3919 highlighting. (Ilya Bobir)
3920Solution: Also trigger CursorMoved when a line is inserted under the cursor.
3921Files: src/misc1.c
3922
3923Patch 7.0.137
3924Problem: Configure check for big features is wrong.
3925Solution: Change "==" to "=". (Martti Kuparinen)
3926Files: src/auto/configure, src/configure.in
3927
3928Patch 7.0.138 (extra)
3929Problem: Mac: modifiers don't work with function keys.
3930Solution: Use GetEventParameter() to obtain modifiers. (Nicolas Weber)
3931Files: src/gui_mac.c
3932
3933Patch 7.0.139
3934Problem: Using CTRL-PageUp or CTRL-PageDown in Insert mode to go to another
3935 tab page does not prepare for undo properly. (Stefano Zacchiroli)
3936Solution: Call start_arrow() before switching tab page.
3937Files: src/edit.c
3938
3939Patch 7.0.140 (after 7.0.134)
3940Problem: Comparing recursively looped List or Dictionary doesn't work well.
3941Solution: Detect comparing a List or Dictionary with itself.
3942Files: src/eval.c
3943
3944Patch 7.0.141
3945Problem: When pasting a while line on the command line an extra CR is added
3946 literally.
3947Solution: Don't add the trailing CR when pasting with the mouse.
3948Files: src/ex_getln.c, src/proto/ops.pro, src/ops.c
3949
3950Patch 7.0.142
3951Problem: Using the middle mouse button in Select mode to paste text results
3952 in an extra "y". (Kriton Kyrimis)
3953Solution: Let the middle mouse button replace the selected text with the
3954 contents of the clipboard.
3955Files: src/normal.c
3956
3957Patch 7.0.143
3958Problem: Setting 'scroll' to its default value was not handled correctly.
3959Solution: Compare the right field to PV_SCROLL.
3960Files: src/option.c
3961
3962Patch 7.0.144
3963Problem: May compare two unrelated pointers when matching a pattern against
3964 a string. (Dominique Pelle)
3965Solution: Avoid calling reg_getline() when REG_MULTI is false.
3966Files: src/regexp.c
3967
3968Patch 7.0.145 (after 7.0.142)
3969Problem: Compiler warning.
3970Solution: Add type cast.
3971Files: src/normal.c
3972
3973Patch 7.0.146
3974Problem: When 'switchbuf' is set to "usetab" and the current tab has only a
3975 quickfix window, jumping to an error always opens a new window.
3976 Also, when the buffer is open in another tab page it's not found.
3977Solution: Check for the "split" value of 'switchbuf' properly. Search in
3978 other tab pages for the desired buffer. (Yegappan Lakshmanan)
3979Files: src/buffer.c, src/quickfix.c
3980
3981Patch 7.0.147
3982Problem: When creating a session file and there are several tab pages and
3983 some windows have a local directory a short file name may be used
3984 when it's not valid. (Marius Roets)
3985 A session with multiple tab pages may result in "No Name" buffers.
3986 (Bill McCarthy)
3987Solution: Don't enter tab pages when going through the list, only use a
3988 pointer to the first window in each tab page.
3989 Use "tabedit" instead of "tabnew | edit" when possible.
3990Files: src/ex_docmd.c
3991
3992Patch 7.0.148
3993Problem: When doing "call a.xyz()" and "xyz" does not exist in dictionary
3994 "a" there is no error message. (Yegappan Lakshmanan)
3995Solution: Add the error message.
3996Files: src/eval.c
3997
3998Patch 7.0.149
3999Problem: When resizing a window that shows "~" lines the text sometimes
4000 jumps down.
4001Solution: Remove code that uses "~" lines in some situations. Fix the
4002 computation of the screen line of the cursor. Also set w_skipcol
4003 to handle very long lines.
4004Files: src/misc1.c, src/window.c
4005
4006Patch 7.0.150
4007Problem: When resizing the Vim window scrollbinding doesn't work. (Yakov
4008 Lerner)
4009Solution: Do scrollbinding in set_shellsize().
4010Files: src/term.c
4011
4012Patch 7.0.151
4013Problem: Buttons in file dialog are not according to Gnome guidelines.
4014Solution: Swap Cancel and Open buttons. (Stefano Zacchiroli)
4015Files: src/gui_gtk.c
4016
4017Patch 7.0.152
4018Problem: Crash when using lesstif 2.
4019Solution: Fill in the extension field. (Ben Hutchings)
4020Files: src/gui_xmebw.c
4021
4022Patch 7.0.153
4023Problem: When using cscope and opening the temp file fails Vim crashes.
4024 (Kaya Bekiroglu)
4025Solution: Check for NULL pointer returned from mch_open().
4026Files: src/if_cscope.c
4027
4028Patch 7.0.154
Bram Moolenaar09521312016-08-12 22:54:35 +02004029Problem: When 'foldnestmax' is negative Vim can hang. (James Vega)
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004030Solution: Avoid the fold level becoming negative.
4031Files: src/fold.c, src/syntax.c
4032
4033Patch 7.0.155
4034Problem: When getchar() returns a mouse button click there is no way to get
4035 the mouse coordinates.
4036Solution: Add v:mouse_win, v:mouse_lnum and v:mouse_col.
4037Files: runtime/doc/eval.txt, src/eval.c, src/vim.h
4038
4039Patch 7.0.156 (extra)
4040Problem: Vim doesn't compile for Amiga OS 4.
4041Solution: Various changes for Amiga OS4. (Peter Bengtsson)
4042Files: src/feature.h, src/mbyte.c, src/memfile.c, src/memline.c,
4043 src/os_amiga.c, src/os_amiga.h, src/pty.c
4044
4045Patch 7.0.157
4046Problem: When a function is used recursively the profiling information is
4047 invalid. (Mikolaj Machowski)
4048Solution: Put the start time on the stack instead of in the function.
4049Files: src/eval.c
4050
4051Patch 7.0.158
4052Problem: In a C file with ":set foldmethod=syntax", typing {<CR> on the
4053 last line results in the cursor being in a closed fold. (Gautam
4054 Iyer)
4055Solution: Open fold after inserting a new line.
4056Files: src/edit.c
4057
4058Patch 7.0.159
4059Problem: When there is an I/O error in the swap file the cause of the error
4060 cannot be seen.
4061Solution: Use PERROR() instead of EMSG() where possible.
4062Files: src/memfile.c
4063
4064Patch 7.0.160
4065Problem: ":@a" echoes the command, Vi doesn't do that.
4066Solution: Set the silent flag in the typeahead buffer to avoid echoing the
4067 command.
4068Files: src/ex_docmd.c, src/normal.c, src/ops.c, src/proto/ops.pro
4069
4070Patch 7.0.161
4071Problem: Win32: Tab pages line popup menu isn't using the right encoding.
4072 (Yongwei Wu)
4073Solution: Convert the text when necessary. Also fixes the Find/Replace
4074 dialog title. (Yegappan Lakshmanan)
4075Files: src/gui_w48.c
4076
4077Patch 7.0.162
4078Problem: "vim -o a b" when file "a" triggers the ATTENTION dialog,
4079 selecting "Quit" exits Vim instead of editing "b" only.
4080 When file "b" triggers the ATTENTION dialog selecting "Quit" or
4081 "Abort" results in editing file "a" in that window.
4082Solution: When selecting "Abort" exit Vim. When selecting "Quit" close the
4083 window. Also avoid hit-enter prompt when selecting Abort.
4084Files: src/buffer.c, src/main.c
4085
4086Patch 7.0.163
4087Problem: Can't retrieve the position of a sign after it was set.
4088Solution: Add the netbeans interface getAnno command. (Xavier de Gaye)
4089Files: runtime/doc/netbeans.txt, src/netbeans.c
4090
4091Patch 7.0.164
4092Problem: ":redir @+" doesn't work.
4093Solution: Accept "@+" just like "@*". (Yegappan Lakshmanan)
4094Files: src/ex_docmd.c
4095
4096Patch 7.0.165
4097Problem: Using CTRL-L at the search prompt adds a "/" and other characters
4098 without escaping, causing the pattern not to match.
4099Solution: Escape special characters with a backslash.
4100Files: src/ex_getln.c
4101
4102Patch 7.0.166
4103Problem: Crash in cscope code when connection could not be opened.
4104 (Kaya Bekiroglu)
4105Solution: Check for the file descriptor to be NULL.
4106Files: src/if_cscope.c
4107
4108Patch 7.0.167
4109Problem: ":function" redefining a dict function doesn't work properly.
4110 (Richard Emberson)
4111Solution: Allow a function name to be a number when it's a function
4112 reference.
4113Files: src/eval.c
4114
4115Patch 7.0.168
4116Problem: Using uninitialized memory and memory leak. (Dominique Pelle)
4117Solution: Use alloc_clear() instead of alloc() for w_lines. Free
4118 b_ml.ml_stack after recovery.
4119Files: src/memline.c, src/window.c
4120
4121Patch 7.0.169
4122Problem: With a Visual block selection, with the cursor in the left upper
4123 corner, pressing "I" doesn't remove the highlighting. (Guopeng
4124 Wen)
4125Solution: When checking if redrawing is needed also check if Visual
4126 selection is still active.
4127Files: src/screen.c
4128
4129Patch 7.0.170 (extra)
4130Problem: Win32: Using "gvim --remote-tab foo" when gvim is minimized while
4131 it previously was maximized, un-maximizing doesn't work properly.
4132 And the labels are not displayed properly when 'encoding' is
4133 utf-8.
4134Solution: When minimized check for SW_SHOWMINIMIZED. When updating the tab
4135 pages line use TCM_SETITEMW instead of TCM_INSERTITEMW. (Liu
4136 Yubao)
4137Files: src/gui_w48.c
4138
4139Patch 7.0.171 (extra)
4140Problem: VMS: A file name with multiple paths is written in the wrong file.
4141Solution: Get the actually used file name. (Zoltan Arpadffy)
4142 Also add info to the :version command about compilation.
4143Files: src/Make_vms.mms, src/buffer.c, src/os_unix.c, src/version.c
4144
4145Patch 7.0.172
4146Problem: Crash when recovering and quitting at the "press-enter" prompt.
4147Solution: Check for "msg_list" to be NULL. (Liu Yubao)
4148Files: src/ex_eval.c
4149
4150Patch 7.0.173
4151Problem: ":call f().TT()" doesn't work. (Richard Emberson)
4152Solution: When a function returns a Dictionary or another composite continue
4153 evaluating what follows.
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02004154Files: src/eval.c
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004155
4156Patch 7.0.174
4157Problem: ":mksession" doesn't restore window layout correctly in tab pages
4158 other than the current one. (Zhibin He)
4159Solution: Use the correct topframe for producing the window layout commands.
4160Files: src/ex_docmd.c
4161
4162Patch 7.0.175
4163Problem: The result of tr() is missing the terminating NUL. (Ingo Karkat)
4164Solution: Add the NUL.
4165Files: src/eval.c
4166
4167Patch 7.0.176
4168Problem: ":emenu" isn't executed directly, causing the encryption key
4169 prompt to fail. (Life Jazzer)
4170Solution: Fix wrong #ifdef.
4171Files: src/menu.c
4172
4173Patch 7.0.177
4174Problem: When the press-enter prompt gets a character from a non-remappable
4175 mapping, it's put back in the typeahead buffer as remappable,
4176 which may cause an endless loop.
4177Solution: Restore the non-remappable flag and the silent flag when putting a
4178 char back in the typeahead buffer.
4179Files: src/getchar.c, src/message.c, src/normal.c
4180
4181Patch 7.0.178
4182Problem: When 'enc' is "utf-8" and 'ignorecase' is set the result of ":echo
4183 ("\xe4" == "\xe4")" varies.
4184Solution: In mb_strnicmp() avoid looking past NUL bytes.
4185Files: src/mbyte.c
4186
4187Patch 7.0.179
4188Problem: Using ":recover" or "vim -r" without a swapfile crashes Vim.
4189Solution: Check for "buf" to be unequal NULL. (Yukihiro Nakadaira)
4190Files: src/memline.c
4191
4192Patch 7.0.180 (extra, after 7.0.171)
4193Problem: VMS: build failed. Problem with swapfiles.
4194Solution: Add "compiled_arch". Always expand path and pass it to
4195 buf_modname(). (Zoltan Arpadffy)
4196Files: src/globals.h, src/memline.c, src/os_unix.c, runtime/menu.vim
4197
4198Patch 7.0.181
4199Problem: When reloading a file that starts with an empty line, the reloaded
4200 buffer has an extra empty line at the end. (Motty Lentzitzky)
4201Solution: Delete all lines, don't use bufempty().
4202Files: src/fileio.c
4203
4204Patch 7.0.182
4205Problem: When using a mix of undo and "g-" it may no longer be possible to
4206 go to every point in the undo tree. (Andy Wokula)
4207Solution: Correctly update pointers in the undo tree.
4208Files: src/undo.c
4209
4210Patch 7.0.183
4211Problem: Crash in ":let" when redirecting to a variable that's being
4212 displayed. (Thomas Link)
4213Solution: When redirecting to a variable only do the assignment when
4214 stopping redirection to avoid that setting the variable causes a
4215 freed string to be accessed.
4216Files: src/eval.c
4217
4218Patch 7.0.184
4219Problem: When the cscope program is called "mlcscope" the Cscope interface
4220 doesn't work.
4221Solution: Accept "\S*cscope:" instead of "cscope:". (Frodak D. Baksik)
4222Files: src/if_cscope.c
4223
4224Patch 7.0.185
4225Problem: Multi-byte characters in a message are displayed with attributes
4226 from what comes before it.
Bram Moolenaar207f0092020-08-30 17:20:20 +02004227Solution: Don't use the attributes for a multibyte character. Do use
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004228 attributes for special characters. (Yukihiro Nakadaira)
4229Files: src/message.c
4230
4231Patch 7.0.186
4232Problem: Get an ml_get error when 'encoding' is "utf-8" and searching for
4233 "/\_s*/e" in an empty buffer. (Andrew Maykov)
4234Solution: Don't try getting the line just below the last line.
4235Files: src/search.c
4236
4237Patch 7.0.187
4238Problem: Can't source a remote script properly.
4239Solution: Add the SourceCmd event. (Charles Campbell)
4240Files: runtime/doc/autocmd.txt, src/ex_cmds2.c, src/fileio.c, src/vim.h
4241
4242Patch 7.0.188 (after 7.0.186)
4243Problem: Warning for wrong pointer type.
4244Solution: Add a type cast.
4245Files: src/search.c
4246
4247Patch 7.0.189
4248Problem: Translated message about finding matches is truncated. (Yukihiro
4249 Nakadaira)
4250Solution: Enlarge the buffer. Also use vim_snprintf().
4251Files: src/edit.c
4252
4253Patch 7.0.190
4254Problem: "syntax spell default" results in an error message.
4255Solution: Change 4 to 7 for STRNICMP(). (Raul Nunez de Arenas Coronado)
4256Files: src/syntax.c
4257
4258Patch 7.0.191
4259Problem: The items used by getqflist() and setqflist() don't match.
4260Solution: Support the "bufnum" item for setqflist(). (Yegappan Lakshmanan)
4261Files: runtime/doc/eval.txt, src/quickfix.c
4262
4263Patch 7.0.192
4264Problem: When 'swapfile' is switched off in an empty file it is possible
4265 that not all blocks are loaded into memory, causing ml_get errors
4266 later.
4267Solution: Rename "dont_release" to "mf_dont_release" and also use it to
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02004268 avoid using the cached line and locked block.
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004269Files: src/globals.h, src/memfile.c, src/memline.c
4270
4271Patch 7.0.193
4272Problem: Using --remote or --remote-tab with an argument that matches
4273 'wildignore' causes a crash.
4274Solution: Check the argument count before using ARGLIST[0].
4275Files: src/ex_cmds.c
4276
4277Patch 7.0.194
4278Problem: Once an ml_get error is given redrawing part of the screen may
4279 cause it again, resulting in an endless loop.
4280Solution: Don't give the error message for a recursive call.
4281Files: src/memline.c
4282
4283Patch 7.0.195
4284Problem: When a buffer is modified and 'autowriteall' is set, ":quit"
4285 results in an endless loop when there is a conversion error while
4286 writing. (Nikolai Weibull)
4287Solution: Make autowrite() return FAIL if the buffer is still changed after
4288 writing it.
4289 /* put the cursor on the last char, for 'tw' formatting */
4290Files: src/ex_cmds2.c
4291
4292Patch 7.0.196
4293Problem: When using ":vert ball" the computation of the mouse pointer
4294 position may be off by one column. (Stefan Karlsson)
4295Solution: Recompute the frame width when moving the vertical separator from
4296 one window to another.
4297Files: src/window.c
4298
4299Patch 7.0.197 (extra)
4300Problem: Win32: Compiling with EXITFREE doesn't work.
4301Solution: Adjust a few #ifdefs. (Alexei Alexandrof)
4302Files: src/misc2.c, src/os_mswin.c
4303
4304Patch 7.0.198 (extra)
4305Problem: Win32: Compiler warnings. No need to generate gvim.exe.mnf.
4306Solution: Add type casts. Use "*" for processorArchitecture. (George Reilly)
4307Files: src/Make_mvc.mak, src/eval.c, src/gvim.exe.mnf, src/misc2.c
4308
4309Patch 7.0.199
Bram Moolenaar207f0092020-08-30 17:20:20 +02004310Problem: When using multibyte characters the combination of completion and
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004311 formatting may result in a wrong cursor position.
4312Solution: Don't decrement the cursor column, use dec_cursor(). (Yukihiro
4313 Nakadaira) Also check for the column to be zero.
4314Files: src/edit.c
4315
4316Patch 7.0.200
4317Problem: Memory leaks when out of memory.
4318Solution: Free the memory.
4319Files: src/edit.c, src/diff.c
4320
4321Patch 7.0.201
4322Problem: Message for ":diffput" about buffer not being in diff mode may be
4323 wrong.
4324Solution: Check for buffer in diff mode but not modifiable.
4325Files: src/diff.c
4326
4327Patch 7.0.202
4328Problem: Problems on Tandem systems while compiling and at runtime.
4329Solution: Recognize root uid is 65535. Check select() return value for it
4330 not being supported. Avoid wrong function prototypes. Mention
4331 use of -lfloss. (Matthew Woehlke)
4332Files: src/Makefile, src/ex_cmds.c, src/fileio.c, src/main.c,
4333 src/osdef1.h.in, src/osdef2.h.in, src/os_unix.c, src/pty.c,
4334 src/vim.h
4335
4336Patch 7.0.203
4337Problem: 0x80 characters in a register are not handled correctly for the
4338 "@" command.
4339Solution: Escape CSI and 0x80 characters. (Yukihiro Nakadaira)
4340Files: src/ops.c
4341
4342Patch 7.0.204
4343Problem: Cscope: Parsing matches for listing isn't done properly.
4344Solution: Check for line number being found. (Yu Zhao)
4345Files: src/if_cscope.c
4346
4347Patch 7.0.205 (after 7.0.203)
4348Problem: Can't compile.
4349Solution: Always include the vim_strsave_escape_csi function.
4350Files: src/getchar.c
4351
4352Patch 7.0.206 (after 7.0.058)
4353Problem: Some characters of the "gb18030" encoding are not handled
4354 properly.
4355Solution: Do not use "cp936" as an alias for "gb18030" encoding. Instead
4356 initialize 'encoding' to "cp936".
4357Files: src/mbyte.c, src/option.c
4358
4359Patch 7.0.207
4360Problem: After patch 2.0.203 CSI and K_SPECIAL characters are escaped when
4361 recorded and then again when the register is executed.
4362Solution: Remove escaping before putting the recorded characters in a
4363 register. (Yukihiro Nakadaira)
4364Files: src/getchar.c, src/ops.c, src/proto/getchar.pro
4365
4366Patch 7.0.208 (after 7.0.171 and 7.0.180)
4367Problem: VMS: changes to path handling cause more trouble than they solve.
4368Solution: Revert changes.
4369Files: src/buffer.c, src/memline.c, src/os_unix.c
4370
4371Patch 7.0.209
4372Problem: When replacing a line through Python the cursor may end up beyond
4373 the end of the line.
4374Solution: Check the cursor column after replacing the line.
4375Files: src/if_python.c
4376
4377Patch 7.0.210
4378Problem: ":cbuffer" and ":lbuffer" always fail when the buffer is modified.
4379 (Gary Johnson)
4380Solution: Support adding a !. (Yegappan Lakshmanan)
4381Files: runtime/doc/quickfix.txt, src/ex_cmds.h
4382
4383Patch 7.0.211
4384Problem: With ":set cindent noai bs=0" using CTRL-U in Insert mode will
4385 delete auto-indent. After ":set ai" it doesn't.
4386Solution: Also check 'cindent' being set. (Ryan Lortie)
4387Files: src/edit.c
4388
4389Patch 7.0.212
4390Problem: The GUI can't be terminated with SIGTERM. (Mark Logan)
4391Solution: Use the signal protection in the GUI as in the console, allow
4392 signals when waiting for 100 msec or longer.
4393Files: src/ui.c
4394
4395Patch 7.0.213
4396Problem: When 'spellfile' has two regions that use the same sound folding
4397 using "z=" will cause memory to be freed twice. (Mark Woodward)
4398Solution: Clear the hashtable properly so that the items are only freed once.
4399Files: src/spell.c
4400
4401Patch 7.0.214
4402Problem: When using <f-args> in a user command it's not possible to have an
4403 argument end in '\ '.
4404Solution: Change the handling of backslashes. (Yakov Lerner)
4405Files: runtime/doc/map.txt, src/ex_docmd.c
4406
4407Patch 7.0.215 (extra)
4408Problem: Mac: Scrollbar size isn't set. Context menu has disabled useless
4409 Help entry. Call to MoreMasterPointers() is ignored.
4410Solution: Call SetControlViewSize() in gui_mch_set_scrollbar_thumb(). Use
4411 kCMHelpItemRemoveHelp for ContextualMenuSelect(). Remove call to
4412 MoreMasterPointers(). (Nicolas Weber)
4413Files: src/gui_mac.c
4414
4415Patch 7.0.216
4416Problem: ":tab wincmd ]" does not open a tab page. (Tony Mechelynck)
4417Solution: Copy the cmdmod.tab value to postponed_split_tab and use it.
4418Files: src/globals.h, src/ex_docmd.c, src/if_cscope.c, src/window.c
4419
4420Patch 7.0.217
4421Problem: This hangs when pressing "n": ":%s/\n/,\r/gc". (Ori Avtalion)
4422Solution: Set "skip_match" to advance to the next line.
4423Files: src/ex_cmds.c
4424
4425Patch 7.0.218
4426Problem: "%B" in 'statusline' always shows zero in Insert mode. (DervishD)
4427Solution: Remove the exception for Insert mode, check the column for being
4428 valid instead.
4429Files: src/buffer.c
4430
4431Patch 7.0.219
4432Problem: When using the 'editexisting.vim' script and a file is being
4433 edited in another tab page the window is split. The "+123"
4434 argument is not used.
4435Solution: Make the tab page with the file the current tab page. Set
4436 v:swapcommand when starting up to the first "+123" or "-c" command
4437 line argument.
4438Files: runtime/macros/editexisting.vim, src/main.c
4439
4440Patch 7.0.220
4441Problem: Crash when using winnr('#') in a new tab page. (Andy Wokula)
4442Solution: Check for not finding the window.
4443Files: src/eval.c
4444
4445Patch 7.0.221
4446Problem: finddir() uses 'path' by default, where "." means relative to the
4447 current file. But it works relative to the current directory.
4448 (Tye Zdrojewski)
4449Solution: Add the current buffer name to find_file_in_path_option() for the
4450 relative file name.
4451Files: runtime/doc/eval.txt, src/eval.c
4452
4453Patch 7.0.222
4454Problem: Perl indenting using 'cindent' works almost right.
4455Solution: Recognize '#' to start a comment. (Alex Manoussakis) Added '#'
4456 flag in 'cinoptions'.
4457Files: runtime/doc/indent.txt, src/misc1.c
4458
4459Patch 7.0.223
4460Problem: Unprintable characters in completion text mess up the popup menu.
4461 (Gombault Damien)
4462Solution: Use strtrans() to make the text printable.
4463Files: src/charset.c, src/popupmnu.c
4464
4465Patch 7.0.224
4466Problem: When expanding "##" spaces are escaped twice. (Pavol Juhas)
4467Solution: Don't escape the spaces that separate arguments.
4468Files: src/eval.c, src/ex_docmd.c, src/proto/ex_docmd.pro
4469
4470Patch 7.0.225
4471Problem: When using setline() in an InsertEnter autocommand and doing "A"
4472 the cursor ends up on the last byte in the line. (Yukihiro
4473 Nakadaira)
4474Solution: Only adjust the column when using setline() for the cursor line.
4475 Move it back to the head byte if necessary.
4476Files: src/eval.c, src/misc2.c
4477
4478Patch 7.0.226
4479Problem: Display flickering when updating signs through the netbeans
4480 interface. (Xavier de Gaye)
4481Solution: Remove the redraw_later(CLEAR) call.
4482Files: src/netbeans.c
4483
4484Patch 7.0.227
4485Problem: Crash when closing a window in the GUI. (Charles Campbell)
4486Solution: Don't call out_flush() from win_free().
4487Files: src/window.c
4488
4489Patch 7.0.228
4490Problem: Cygwin: problem with symlink to DOS style path.
4491Solution: Invoke cygwin_conv_to_posix_path(). (Luca Masini)
4492Files: src/os_unix.c
4493
4494Patch 7.0.229
4495Problem: When 'pastetoggle' starts with Esc then pressing Esc in Insert
4496 mode will not time out. (Jeffery Small)
4497Solution: Use KL_PART_KEY instead of KL_PART_MAP, so that 'ttimeout' applies
4498 to the 'pastetoggle' key.
4499Files: src/getchar.c
4500
4501Patch 7.0.230
4502Problem: After using ":lcd" a script doesn't know how to restore the
4503 current directory.
4504Solution: Add the haslocaldir() function. (Bob Hiestand)
4505Files: runtime/doc/usr_41.txt, runtime/doc/eval.txt, src/eval.c
4506
4507Patch 7.0.231
4508Problem: When recovering from a swap file the page size is likely to be
4509 different from the minimum. The block used for the first page
4510 then has a buffer of the wrong size, causing a crash when it's
4511 reused later. (Zephaniah Hull)
4512Solution: Reallocate the buffer when the page size changes. Also check that
4513 the page size is at least the minimum value.
4514Files: src/memline.c
4515
4516Patch 7.0.232 (extra)
4517Problem: Mac: doesn't support GUI tab page labels.
4518Solution: Add GUI tab page labels. (Nicolas Weber)
4519Files: src/feature.h, src/gui.c, src/gui.h, src/gui_mac.c,
4520 src/proto/gui_mac.pro
4521
4522Patch 7.0.233 (extra)
4523Problem: Mac: code formatted badly.
4524Solution: Fix code formatting
4525Files: src/gui_mac.c
4526
4527Patch 7.0.234
4528Problem: It's possible to use feedkeys() from a modeline. That is a
4529 security issue, can be used for a trojan horse.
4530Solution: Disallow using feedkeys() in the sandbox.
4531Files: src/eval.c
4532
4533Patch 7.0.235
4534Problem: It is possible to use writefile() in the sandbox.
4535Solution: Add a few more checks for the sandbox.
4536Files: src/eval.c
4537
4538Patch 7.0.236
4539Problem: Linux 2.4 uses sysinfo() with a mem_unit field, which is not
4540 backwards compatible.
4541Solution: Add an autoconf check for sysinfo.mem_unit. Let mch_total_mem()
4542 return Kbyte to avoid overflow.
4543Files: src/auto/configure, src/configure.in, src/config.h.in,
4544 src/option.c, src/os_unix.c
4545
4546Patch 7.0.237
4547Problem: For root it is recommended to not use 'modeline', but in
4548 not-compatible mode the default is on.
4549Solution: Let 'modeline' default to off for root.
4550Files: runtime/doc/options.txt, src/option.c
4551
4552Patch 7.0.238
4553Problem: Crash when ":match" pattern runs into 'maxmempattern'. (Yakov
4554 Lerner)
4555Solution: Don't free the regexp program of match_hl.
4556Files: src/screen.c
4557
4558Patch 7.0.239
4559Problem: When using local directories and tab pages ":mksession" uses a
4560 short file name when it shouldn't. Window-local options from a
4561 modeline may be applied to the wrong window. (Teemu Likonen)
4562Solution: Add the did_lcd flag, use the full path when it's set. Don't use
4563 window-local options from the modeline when using the current
4564 window for another buffer in ":doautoall".
4565Files: src/fileio.c, src/ex_docmd.c
4566
4567Patch 7.0.240
4568Problem: Crash when splitting a window in the GUI. (opposite of 7.0.227)
4569Solution: Don't call out_flush() from win_alloc(). Also avoid this for
4570 win_delete(). Also block autocommands while the window structure
4571 is invalid.
4572Files: src/window.c
4573
4574Patch 7.0.241
4575Problem: ":windo throw 'foo'" loops forever. (Andy Wokula)
4576Solution: Detect that win_goto() doesn't work.
4577Files: src/ex_cmds2.c
4578
4579Patch 7.0.242 (extra)
4580Problem: Win32: Using "-register" in a Vim that does not support OLE causes
4581 a crash.
4582Solution: Don't use EMSG() but mch_errmsg(). Check p_go for being NULL.
4583 (partly by Michael Wookey)
4584Files: src/gui_w32.c
4585
4586Patch 7.0.243 (extra)
4587Problem: Win32: When GvimExt is built with MSVC 2005 or later, the "Edit
4588 with vim" context menu doesn't appear in the Windows Explorer.
4589Solution: Embed the linker manifest file into the resources of GvimExt.dll.
4590 (Mathias Michaelis)
4591Files: src/GvimExt/Makefile
4592
4593
Bram Moolenaar49325942007-05-10 19:19:59 +00004594Fixes after Vim 7.1a BETA:
4595
4596The extra archive had CVS directories included below "farsi" and
4597"runtime/icons". CVS was missing the farsi icon files.
4598
4599Fix compiling with Gnome 2.18, undefine bind_textdomain_codeset. (Daniel
4600Drake)
4601
4602Mac: "make install" didn't copy rgb.txt.
4603
4604When editing a compressed file while there are folds caused "ml_get" errors
4605and some lines could be missing. When decompressing failed option values were
4606not restored.
4607
4608
4609Patch 7.1a.001
4610Problem: Crash when downloading a spell file. (Szabolcs Horvat)
4611Solution: Avoid that did_set_spelllang() is used recursively when a new
4612 window is opened for the download.
4613 Also avoid wiping out the wrong buffer.
4614Files: runtime/autoload/spellfile.vim, src/buffer.c, src/ex_cmds.c,
4615 src/spell.c
4616
4617Patch 7.1a.002 (extra)
4618Problem: Compilation error with MingW.
4619Solution: Check for LPTOOLTIPTEXT to be defined.
4620Files: src/gui_w32.c
4621
4622
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00004623Fixes after Vim 7.1b BETA:
4624
4625Made the Mzscheme interface build both with old and new versions of Mzscheme,
4626using an #ifdef. (Sergey Khorev)
4627Mzscheme interface didn't link, missing function. Changed order of libraries
4628in the configure script.
4629
Lily Ballard21aaff32023-08-11 10:30:27 -07004630Ruby interface didn't compile on Mac. Changed #ifdef. (Lily Ballard)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00004631
4632Patch 7.1b.001 (extra)
4633Problem: Random text in a source file. No idea how it got there.
4634Solution: Delete the text.
4635Files: src/gui_w32.c
4636
4637Patch 7.1b.002
4638Problem: When 'maxmem' is large there can be an overflow in computations.
4639 (Thomas Wiegner)
4640Solution: Use the same mechanism as in mch_total_mem(): first reduce the
4641 multiplier as much as possible.
4642Files: src/memfile.c
4643
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004644==============================================================================
Bram Moolenaar7a329912010-05-21 12:05:36 +02004645VERSION 7.2 *version-7.2* *version7.2*
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004646
4647This section is about improvements made between version 7.1 and 7.2.
4648
4649This is mostly a bug-fix release. The main new feature is floating point
4650support. |Float|
4651
4652
4653Changed *changed-7.2*
4654-------
4655
4656Changed the command line buffer name from "command-line" to "[Command Line]".
4657
4658Removed optional ! for ":caddexpr", ":cgetexpr", ":cgetfile", ":laddexpr",
4659":lgetexpr" and ":lgetfile". They are not needed. (Yegappan Lakshmanan)
4660
4661An offset for syntax matches worked on bytes instead of characters. That is
4662inconsistent and can easily be done wrong. Use character offsets now.
4663(Yukihiro Nakadaira)
4664
4665The FileChangedShellPost event was also given when a file didn't change.
4666(John Little)
4667
4668When the current line is long (doesn't fit) the popup menu can't be seen.
4669Display it below the screen line instead of below the text line.
4670(Francois Ingelrest)
4671
4672Switched to autoconf version 2.62.
4673
4674Moved including fcntl.h to vim.h and removed it from all .c files.
4675
4676Introduce macro STRMOVE(d, s), like STRCPY() for overlapping strings.
4677Use it instead of mch_memmove(p, p + x, STRLEN(p + x) + 1).
4678
Bram Moolenaarc236c162008-07-13 17:41:49 +00004679Removed the bulgarian.vim keymap file, two more standard ones replace it.
4680(Boyko Bantchev)
4681
4682Increased the maximum number of tag matches for command line completion from
4683200 to 300.
4684
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004685Renamed help file sql.txt to ft_sql.txt and ada.txt to ft_ada.txt.
4686
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004687
4688Added *added-7.2*
4689-----
4690
4691New syntax files:
Bram Moolenaarc236c162008-07-13 17:41:49 +00004692 CUDA (Timothy B. Terriberry)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004693 Cdrdao config (Nikolai Weibull)
4694 Coco/R (Ashish Shukla)
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004695 Denyhosts config (Nikolai Weibull)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004696 Dtrace script (Nicolas Weber)
4697 Git output, commit, config, rebase, send-email (Tim Pope)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004698 HASTE and HastePreProc (M. Tranchero)
4699 Haml (Tim Pope)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004700 Host conf (Nikolai Weibull)
4701 Linden script (Timo Frenay)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004702 MS messages (Kevin Locke)
4703 PDF (Tim Pope)
4704 ProMeLa (Maurizio Tranchero)
4705 Reva Foth (Ron Aaron)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004706 Sass (Tim Pope)
4707 Symbian meta-makefile, MMP (Ron Aaron)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004708 VOS CM macro (Andrew McGill)
4709 XBL (Doug Kearns)
4710
4711New tutor files:
4712 Made UTF-8 versions of all the tutor files.
4713 Greek renamed from ".gr" to ".el" (Greek vs Greece).
4714 Esperanto (Dominique Pelle)
4715 Croatian (Paul B. Mahol)
4716
4717New filetype plugins:
4718 Cdrdao config (Nikolai Weibull)
4719 Debian control files (Debian Vim maintainers)
4720 Denyhosts (Nikolai Weibull)
4721 Dos .ini file (Nikolai Weibull)
4722 Dtrace script (Nicolas Weber)
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004723 FnameScript (Nikolai Weibull)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004724 Git, Git config, Git commit, Git rebase, Git send-email (Tim Pope)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004725 Haml (Tim Pope)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004726 Host conf (Nikolai Weibull)
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004727 Host access (Nikolai Weibull)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004728 Logtalk (Paulo Moura)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004729 MS messages (Kevin Locke)
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004730 NSIS script (Nikolai Weibull)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004731 PDF (Tim Pope)
4732 Reva Forth (Ron Aaron)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004733 Sass (Tim Pope)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004734
4735New indent files:
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004736 DTD (Nikolai Weibull)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004737 Dtrace script (Nicolas Weber)
4738 Erlang (Csaba Hoch)
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004739 FrameScript (Nikolai Weibull)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004740 Git config (Tim Pope)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004741 Haml (Tim Pope)
4742 Logtalk (Paulo Moura)
4743 Sass (Tim Pope)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004744 Tiny Fugue (Christian J. Robinson)
4745
Bram Moolenaarc236c162008-07-13 17:41:49 +00004746New compiler plugins:
4747 RSpec (Tim Pope)
4748
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004749New keymap files:
4750 Croatian (Paul B. Mahol)
4751 Russian Dvorak (Serhiy Boiko)
4752 Ukrainian Dvorak (Serhiy Boiko)
Bram Moolenaarc236c162008-07-13 17:41:49 +00004753 Removed plain Bulgarian, "bds" and phonetic are sufficient.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004754
4755Other new runtime files:
Bram Moolenaared39e1d2008-08-09 17:55:22 +00004756 Esperanto menu and message translations. (Dominique Pelle)
4757 Finnish menu and message translations. (Flammie Pirinen)
Bram Moolenaar6dfc28b2010-02-11 14:19:15 +01004758 Brazilian Portuguese message translations. (Eduardo Dobay)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004759
4760Added floating point support. |Float|
4761
4762Added argument to mode() to return a bit more detail about the current mode.
4763(Ben Schmidt)
4764
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01004765Added support for BSD console mouse: |sysmouse|. (Paul B. Mahol)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004766
4767Added the "newtab" value for the 'switchbuf' option. (partly by Yegappan
4768Lakshmanan)
4769
4770Improved error messages for the netbeans interface. (Philippe Fremy)
4771
4772Added support for using xterm mouse codes for screen. (Micah Cowan)
4773
4774Added support for cross compiling:
4775Adjusted configure.in and added INSTALLcross.txt. (Marc Haisenko) Fixed
4776mistakes in configure.in after that.
4777Don't use /usr/local/include and /usr/local/lib in configure. (Philip
4778Prindeville)
4779For cross compiling the Cygwin version on Unix, change VIM.TLB to vim.tlb in
4780src/vim.rc. (Tsuneo Nakagawa)
4781
4782Added v:searchforward variable: What direction we're searching in. (Yakov
4783Lerner)
4784
4785
4786Fixed *fixed-7.2*
4787-----
4788
4789Patch 7.1.001
4790Problem: Still can't build with Gnome libraries.
4791Solution: Fix typo in bind_textdomain_codeset. (Mike Kelly)
4792Files: src/gui_gtk.c, src/gui_gtk_x11.c
4793
4794Patch 7.1.002
4795Problem: Oracle Pro*C/C++ files are not detected.
4796Solution: Add the missing star. (Micah J. Cowan)
4797Files: runtime/filetype.vim
4798
4799Patch 7.1.003 (extra)
4800Problem: The "Tear off this menu" message appears in the message history
4801 when using a menu. (Yongwei Wu)
4802Solution: Disable message history when displaying the menu tip.
4803Files: src/gui_w32.c
4804
4805Patch 7.1.004
4806Problem: Crash when doing ":next directory". (Raphael Finkel)
4807Solution: Do not use "buf", it may be invalid after autocommands.
4808Files: src/ex_cmds.c
4809
4810Patch 7.1.005
4811Problem: "cit" used on <foo></foo> deletes <foo>. Should not delete
4812 anything and start insertion, like "ci'" does on "". (Michal
4813 Bozon)
4814Solution: Handle an empty object specifically. Made it work consistent for
4815 various text objects.
4816Files: src/search.c
4817
4818Patch 7.1.006
4819Problem: Resetting 'modified' in a StdinReadPost autocommand doesn't work.
4820Solution: Set 'modified' before the autocommands instead of after it.
4821Files: src/buffer.c
4822
4823Patch 7.1.007 (extra)
4824Problem: Mac: Context menu doesn't work on Intel Macs.
4825 Scrollbars are not dimmed when Vim is not the active application.
4826Solution: Remove the test whether context menus are supported. They are
4827 always there in OS/X. Handle the dimming. (Nicolas Weber)
4828Files: src/gui_mac.c, src/gui.h
4829
4830Patch 7.1.008
4831Problem: getfsize() returns a negative number for very big files.
4832Solution: Check for overflow and return -2.
4833Files: runtime/doc/eval.txt, src/eval.c
4834
4835Patch 7.1.009
4836Problem: In diff mode, displaying the difference between a tab and spaces
4837 is not highlighted correctly.
4838Solution: Only change highlighting at the end of displaying a tab.
4839Files: src/screen.c
4840
4841Patch 7.1.010
4842Problem: The Gnome session file doesn't restore tab pages.
4843Solution: Add SSOP_TABPAGES to the session flags. (Matias D'Ambrosio)
4844Files: src/gui_gtk_x11.c
4845
4846Patch 7.1.011
4847Problem: Possible buffer overflow when $VIMRUNTIME is very long. (Victor
4848 Stinner)
4849Solution: Use vim_snprintf().
4850Files: src/main.c
4851
4852Patch 7.1.012
4853Problem: ":let &shiftwidth = 'asdf'" doesn't produce an error message.
4854Solution: Check for a string argument. (Chris Lubinski)
4855Files: src/option.c
4856
4857Patch 7.1.013
4858Problem: ":syn include" only loads the first file, while it is documented
4859 as doing the equivalent of ":runtime!".
4860Solution: Change the argument to source_runtime(). (James Vega)
4861Files: src/syntax.c
4862
4863Patch 7.1.014
4864Problem: Crash when doing C indenting. (Chris Monson)
4865Solution: Obtain the current line again after invoking cin_islabel().
4866Files: src/edit.c
4867
4868Patch 7.1.015
4869Problem: MzScheme interface: current-library-collection-paths produces no
4870 list. Interface doesn't build on a Mac.
4871Solution: Use a list instead of a pair. (Bernhard Fisseni) Use "-framework"
4872 argument for MZSCHEME_LIBS in configure.
4873Files: src/configure.in, src/if_mzsch.c, src/auto/configure
4874
4875Patch 7.1.016 (after patch 7.1.012)
4876Problem: Error message about setting 'diff' to a string.
4877Solution: Don't pass an empty string to set_option_value() when setting
4878 'diff'.
4879Files: src/quickfix.c, src/popupmnu.c
4880
4881Patch 7.1.017
4882Problem: ":confirm w" does give a prompt when 'readonly' is set, but not
4883 when the file permissions are read-only. (Michael Schaap)
4884Solution: Provide a dialog in both situations. (Chris Lubinski)
4885Files: src/ex_cmds.c, src/fileio.c, src/proto/fileio.pro
4886
4887Patch 7.1.018
4888Problem: When 'virtualedit' is set a "p" of a block just past the end of
4889 the line inserts before the cursor. (Engelke)
4890Solution: Check for the cursor being just after the line (Chris Lubinski)
4891Files: src/ops.c
4892
4893Patch 7.1.019
4894Problem: ":py" asks for an argument, ":py asd" then gives the error that
4895 ":py" isn't implemented. Should already happen for ":py".
4896Solution: Compare with ex_script_ni. (Chris Lubinski)
4897Files: src/ex_docmd.c
4898
4899Patch 7.1.020
4900Problem: Reading from uninitialized memory when using a dialog. (Dominique
4901 Pelle)
4902Solution: In msg_show_console_dialog() append a NUL after every appended
4903 character.
4904Files: src/message.c
4905
4906Patch 7.1.021 (after 7.1.015)
4907Problem: Mzscheme interface doesn't compile on Win32.
4908Solution: Fix the problem that 7.1.015 fixed in a better way. (Sergey Khorev)
4909Files: src/if_mzsch.c
4910
4911Patch 7.1.022
4912Problem: When setting 'keymap' twice the b:keymap_name variable isn't set.
4913 (Milan Berta)
4914Solution: Don't unlet b:keymap_name for ":loadkeymap". (Martin Toft)
4915Files: src/digraph.c
4916
4917Patch 7.1.023
4918Problem: "dw" in a line with one character deletes the line. Vi and nvi
4919 don't do this. (Kjell Arne Rekaa)
4920Solution: Check for one-character words especially.
4921Files: src/search.c
4922
4923Patch 7.1.024
4924Problem: Using a pointer that has become invalid. (Chris Monson)
4925Solution: Obtain the line pointer again after we looked at another line.
4926Files: src/search.c
4927
4928Patch 7.1.025
4929Problem: search() and searchpos() don't use match under cursor at start of
4930 line when using 'bc' flags. (Viktor Kojouharov)
4931Solution: Don't go to the previous line when the 'c' flag is present.
4932 Also fix that "j" doesn't move the cursor to the right column.
4933Files: src/eval.c, src/search.c
4934
4935Patch 7.1.026
4936Problem: "[p" doesn't work in Visual mode. (David Brown)
4937Solution: Use checkclearop() instead of checkclearopq().
4938Files: src/normal.c
4939
4940Patch 7.1.027
4941Problem: On Sun systems opening /dev/fd/N doesn't work, and they are used
4942 by process substitutions.
4943Solution: Allow opening specific character special files for Sun systems.
4944 (Gary Johnson)
4945Files: src/fileio.c, src/os_unix.h
4946
4947Patch 7.1.028
4948Problem: Can't use last search pattern for ":sort". (Brian McKee)
Bram Moolenaar6dfc28b2010-02-11 14:19:15 +01004949Solution: When the pattern is empty use the last search pattern. (Martin
Bram Moolenaar8c8de832008-06-24 22:58:06 +00004950 Toft)
4951Files: runtime/doc/change.txt, src/ex_cmds.c
4952
4953Patch 7.1.029 (after 7.1.019)
4954Problem: Can't compile when all interfaces are used. (Taylor Venable)
4955Solution: Only check for ex_script_ni when it's defined.
4956Files: src/ex_docmd.c
4957
4958Patch 7.1.030
4959Problem: The "vimtutor" shell script checks for "vim6" but not for "vim7".
4960 (Christian Robinson)
4961Solution: Check for more versions, but prefer using "vim".
4962Files: src/vimtutor
4963
4964Patch 7.1.031
4965Problem: virtcol([123, '$']) doesn't work. (Michael Schaap)
4966Solution: When '$' is used for the column number get the last column.
4967Files: runtime/doc/eval.txt, src/eval.c
4968
4969Patch 7.1.032
4970Problem: Potential crash when editing a command line. (Chris Monson)
4971Solution: Check the position to avoid access before the start of an array.
4972Files: src/ex_getln.c
4973
4974Patch 7.1.033
4975Problem: A buffer is marked modified when it was first deleted and then
4976 added again using a ":next" command. (John Mullin)
4977Solution: When checking if a buffer is modified use the BF_NEVERLOADED flag.
4978Files: src/option.c
4979
4980Patch 7.1.034
4981Problem: Win64: A few compiler warnings. Problems with optimizer.
4982Solution: Use int instead of size_t. Disable the optimizer in one function.
4983 (George V. Reilly)
4984Files: src/eval.c, src/spell.c
4985
4986Patch 7.1.035
4987Problem: After ":s/./&/#" all listed lines have a line number. (Yakov
4988 Lerner)
4989Solution: Reset the line number flag when not using the "&" flag.
4990Files: src/ex_cmds.c
4991
4992Patch 7.1.036
4993Problem: Completing ":echohl" argument should include "None". (Ori
4994 Avtalion) ":match" should have "none" too.
4995Solution: Add flags to use expand_highlight(). Also fix that when disabling
4996 FEAT_CMDL_COMPL compilation fails. (Chris Lubinski)
4997Files: src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/proto/syntax.pro
4998 src/syntax.c
4999
5000Patch 7.1.037
5001Problem: strcpy() used for overlapping strings. (Chris Monson)
5002Solution: Use mch_memmove() instead.
5003Files: src/option.c
5004
5005Patch 7.1.038
5006Problem: When 'expandtab' is set then a Tab copied for 'copyindent' is
5007 expanded to spaces, even when 'preserveindent' is set. (Alexei
5008 Alexandrov)
5009Solution: Remove the check for 'expandtab'. Also fix that ">>" doesn't obey
5010 'preserveindent'. (Chris Lubinski)
5011Files: src/misc1.c
5012
5013Patch 7.1.039
5014Problem: A tag in a help file that starts with "help-tags" and contains a
5015 percent sign may make Vim crash. (Ulf Harnhammar)
5016Solution: Use puts() instead of fprintf().
5017Files: src/ex_cmds.c
5018
5019Patch 7.1.040
5020Problem: ":match" only supports three matches.
5021Solution: Add functions clearmatches(), getmatches(), matchadd(),
5022 matchdelete() and setmatches(). Changed the data structures for
5023 this. A small bug in syntax.c is fixed, so newly created
5024 highlight groups can have their name resolved correctly from their
5025 ID. (Martin Toft)
5026Files: runtime/doc/eval.txt, runtime/doc/pattern.txt,
5027 runtime/doc/usr_41.txt, src/eval.c, src/ex_docmd.c,
5028 src/proto/window.pro, src/screen.c, src/structs.h, src/syntax.c,
5029 src/testdir/Makefile, src/testdir/test63.in,
5030 src/testdir/test63.ok, src/window.c
5031
5032Patch 7.1.041 (extra, after 7.1.040)
5033Problem: Some changes for patch 7.1.040 are in extra files.
5034Solution: Update the extra files.
5035Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
5036 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
5037
5038Patch 7.1.042 (after 7.1.040)
5039Problem: Internal error when using matchadd(). (David Larson)
5040Solution: Check the third argument to be present before using the fourth
5041 argument. (Martin Toft)
5042Files: src/eval.c
5043
5044Patch 7.1.043
5045Problem: In Ex mode using CTRL-D twice may cause a crash. Cursor isn't
5046 positioned properly after CTRL-D.
5047Solution: Set prev_char properly. Position the cursor correctly. (Antony
5048 Scriven)
5049Files: src/ex_getln.c
5050
5051Patch 7.1.044
5052Problem: In Insert mode 0 CTRL-T deletes all indent, it should add indent.
5053 (Gautam Iyer)
5054Solution: Check for CTRL-D typed.
5055Files: src/edit.c
5056
5057Patch 7.1.045
5058Problem: Unnecessary screen redrawing. (Jjgod Jiang)
5059Solution: Reset "must_redraw" after clearing the screen.
5060Files: src/screen.c
5061
5062Patch 7.1.046
5063Problem: ":s" command removes combining characters. (Ron Aaron)
5064Solution: Copy composing characters individually. (Chris Lubinski)
5065Files: src/regexp.c
5066
5067Patch 7.1.047
5068Problem: vim_regcomp() called with invalid argument. (Xiaozhou Liu)
5069Solution: Change TRUE to RE_MAGIC + RE_STRING.
5070Files: src/ex_eval.c
5071
5072Patch 7.1.048
5073Problem: The matchparen plugin doesn't update the match when scrolling with
5074 the mouse wheel. (Ilya Bobir)
5075Solution: Set the match highlighting for text that can be scrolled into the
5076 viewable area without moving the cursor. (Chris Lubinski)
5077Files: runtime/plugin/matchparen.vim
5078
5079Patch 7.1.049
5080Problem: Cannot compile GTK2 version with Hangul input feature.
5081Solution: Don't define FEAT_XFONTSET when using GTK2.
5082Files: src/feature.h
5083
5084Patch 7.1.050
5085Problem: Possible crash when using C++ indenting. (Chris Monson)
5086Solution: Keep the line pointer to the line to compare with. Avoid going
5087 past the end of line.
5088Files: src/misc1.c
5089
5090Patch 7.1.051
5091Problem: Accessing uninitialized memory when finding spell suggestions.
5092Solution: Don't try swapping characters at the end of a word.
5093Files: src/spell.c
5094
5095Patch 7.1.052
5096Problem: When creating a new match not all fields are initialized, which
5097 may lead to unpredictable results.
5098Solution: Initialise rmm_ic and rmm_maxcol.
5099Files: src/window.c
5100
5101Patch 7.1.053
5102Problem: Accessing uninitialized memory when giving a message.
5103Solution: Check going the length before checking for a NUL byte.
5104Files: src/message.c
5105
5106Patch 7.1.054
5107Problem: Accessing uninitialized memory when displaying the fold column.
5108Solution: Add a NUL to the extra array. (Dominique Pelle). Also do this in
5109 a couple of other situations.
5110Files: src/screen.c
5111
5112Patch 7.1.055
5113Problem: Using strcpy() with arguments that overlap.
5114Solution: Use mch_memmove() instead.
5115Files: src/buffer.c, src/charset.c, src/eval.c, src/ex_getln.c,
5116 src/misc1.c, src/regexp.c, src/termlib.c
5117
5118Patch 7.1.056
5119Problem: More prompt does not behave correctly after scrolling back.
5120 (Randall W. Morris)
5121Solution: Avoid lines_left becomes negative. (Chris Lubinski) Don't check
5122 mp_last when deciding to show the more prompt. (Martin Toft)
5123Files: src/message.c
5124
5125Patch 7.1.057
5126Problem: Problem with CursorHoldI when using "r" in Visual mode (Max
5127 Dyckhoff)
5128Solution: Ignore CursorHold(I) when getting a second character for a Normal
5129 mode command. Also abort the "r" command in Visual when a special
5130 key is typed.
5131Files: src/normal.c
5132
5133Patch 7.1.058
5134Problem: When 'rightleft' is set the completion menu is positioned wrong.
5135 (Baha-Eddine MOKADEM)
5136Solution: Fix the completion menu. (Martin Toft)
5137Files: src/popupmnu.c, src/proto/search.pro, src/search.c
5138
5139Patch 7.1.059
5140Problem: When in Ex mode and doing "g/^/vi" and then pressing CTRL-C Vim
5141 hangs and beeps. (Antony Scriven)
5142Solution: Clear "got_int" in the main loop to avoid the hang. When typing
5143 CTRL-C twice in a row abort the ":g" command. This is Vi
5144 compatible.
5145Files: src/main.c
5146
5147Patch 7.1.060
5148Problem: Splitting quickfix window messes up window layout. (Marius
5149 Gedminas)
5150Solution: Compute the window size in a smarter way. (Martin Toft)
5151Files: src/window.c
5152
5153Patch 7.1.061
5154Problem: Win32: When 'encoding' is "latin1" 'ignorecase' doesn't work for
5155 characters with umlaut. (Joachim Hofmann)
5156Solution: Do not use islower()/isupper()/tolower()/toupper() but our own
5157 functions. (Chris Lubinski)
5158Files: src/mbyte.c, src/regexp.c, src/vim.h
5159
5160Patch 7.1.062 (after 7.1.038)
5161Problem: Indents of C comments can be wrong. (John Mullin)
5162Solution: Adjust ind_len. (Chris Lubinski)
5163Files: src/misc1.c
5164
5165Patch 7.1.063 (after 7.1.040)
Bram Moolenaarc236c162008-07-13 17:41:49 +00005166Problem: Warning for uninitialized variable.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005167Solution: Initialise it to NULL.
5168Files: src/ex_docmd.c
5169
5170Patch 7.1.064
5171Problem: On Interix some files appear not to exist.
5172Solution: Remove the top bit from st_mode. (Ligesh)
5173Files: src/os_unix.c
5174
5175Patch 7.1.065 (extra)
5176Problem: Win32: Compilation problem for newer version of w32api.
5177Solution: Only define __IID_DEFINED__ when needed. (Chris Sutcliffe)
5178Files: src/Make_ming.mak, src/iid_ole.c
5179
5180Patch 7.1.066
5181Problem: When 'bomb' is set or reset the file should be considered
5182 modified. (Tony Mechelynck)
5183Solution: Handle like 'endofline'. (Martin Toft)
5184Files: src/buffer.c, src/fileio.c, src/option.c, src/structs.h
5185
5186Patch 7.1.067
5187Problem: 'thesaurus' doesn't work when 'infercase' is set. (Mohsin)
5188Solution: Don't copy the characters being completed but check the case and
5189 apply it to the suggested word. Also fix that the first word in
5190 the thesaurus line is not used. (Martin Toft)
5191Files: src/edit.c
5192
5193Patch 7.1.068
5194Problem: When 'equalalways' is set and splitting a window, it's possible
5195 that another small window gets bigger.
5196Solution: Only equalize window sizes when after a split the windows are
5197 smaller than another window. (Martin Toft)
5198Files: runtime/doc/options.txt, runtime/doc/windows.txt, src/window.c
5199
5200Patch 7.1.069
5201Problem: GTK GUI: When using confirm() without a default button there still
5202 is a default choice.
5203Solution: Ignore Enter and Space when there is no default button. (Chris
5204 Lubinski)
5205Files: src/gui_gtk.c
5206
5207Patch 7.1.070 (extra)
5208Problem: Win32 GUI: When using confirm() without a default button there
5209 still is a default choice.
5210Solution: Set focus on something else than a button. (Chris Lubinski)
5211Files: src/gui_w32.c
5212
5213Patch 7.1.071 (after 7.1.040)
5214Problem: Regexp patterns are not tested.
5215Solution: Add a basic test, to be expanded later.
5216 Also add (commented-out) support for valgrind.
5217Files: src/testdir/Makefile, src/testdir/test64.in, src/testdir/test64.ok
5218
5219Patch 7.1.072 (extra, after 7.1.041 and 7.1.071)
5220Problem: Some changes for patch 7.1.071 are in extra files.
5221Solution: Update the extra files. Also fix a few warnings from the DOS test
5222 makefile.
5223Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
5224 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
5225
5226Patch 7.1.073 (after 7.1.062)
5227Problem: Wrong cursor position and crash when 'preserveindent' is set.
5228 (Charles Campbell)
5229Solution: Handle the situation that we start without indent. (Chris
5230 Lubinski)
5231Files: src/misc1.c
5232
5233Patch 7.1.074
Bram Moolenaarc236c162008-07-13 17:41:49 +00005234Problem: Crash when calling string() on a recursively nested List.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005235Solution: Check result value for being NULL. (Yukihiro Nakadaira)
5236Files: src/eval.c
5237
5238Patch 7.1.075
5239Problem: ":let v:statusmsg" reads memory already freed.
5240Solution: Don't set v:statusmsg when listing it.
5241Files: src/eval.c
5242
5243Patch 7.1.076
5244Problem: Another strcpy() with overlapping arguments.
5245Solution: Use mch_memmove(). (Dominique Pelle) And another one.
5246Files: src/ex_docmd.c, src/normal.c
5247
5248Patch 7.1.077
5249Problem: Using "can_spell" without initializing it. (Dominique Pelle)
5250Solution: Set a default for get_syntax_attr().
5251Files: src/syntax.c
5252
5253Patch 7.1.078
5254Problem: Dropping a file name on gvim that contains a CSI byte doesn't work
5255 when editing the command line.
5256Solution: Escape the CSI byte when inserting in the input buffer. (Yukihiro
5257 Nakadaira)
5258Files: src/gui.c, src/ui.c
5259
5260Patch 7.1.079
5261Problem: When the locale is "C" and 'encoding' is "latin1" then the "@"
5262 character in 'isfname', 'isprint', etc. doesn't pick up accented
5263 characters.
5264Solution: Instead of isalpha() use MB_ISLOWER() and MB_ISUPPER().
5265Files: src/charset.c, src/macros.h
5266
5267Patch 7.1.080 (extra)
5268Problem: Compiler warnings for using "const char *" for "char *".
5269Solution: Add type casts. (Chris Sutcliffe)
5270Files: src/GvimExt/gvimext.cpp
5271
5272Patch 7.1.081
5273Problem: Command line completion for a shell command: "cat </tmp/file<Tab>"
5274 doesn't work.
5275Solution: Start the file name at any character that can't be in a file name.
5276 (Martin Toft)
5277Files: src/ex_docmd.c
5278
5279Patch 7.1.082
5280Problem: After a ":split" the matchparen highlighting isn't there.
5281Solution: Install a WinEnter autocommand. Also fixes that after
5282 ":NoMatchParen" only the current window is updated. (Martin Toft)
5283Files: runtime/doc/pi_paren.txt, runtime/plugin/matchparen.vim
5284
5285Patch 7.1.083 (after 7.1.081)
5286Problem: Command line completion doesn't work with wildcards.
5287Solution: Add vim_isfilec_or_wc() and use it. (Martin Toft)
5288Files: src/charset.c, src/proto/charset.pro, src/ex_docmd.c
5289
5290Patch 7.1.084
5291Problem: Using the "-nb" argument twice causes netbeans not to get
5292 fileOpened events.
5293Solution: Change "&" to "&&". (Xavier de Gaye)
5294Files: src/ex_cmds.c
5295
5296Patch 7.1.085
5297Problem: ":e fold.c" then ":sp fold.c" results in folds of original window
5298 to disappear. (Akita Noek)
5299Solution: Invoke foldUpdateAll() for all windows of the changed buffer.
5300 (Martin Toft)
5301Files: src/ex_cmds.c
5302
5303Patch 7.1.086
5304Problem: Crash when using specific Python syntax highlighting. (Quirk)
5305Solution: Check for a negative index, coming from a keyword match at the
5306 start of a line from a saved state.
5307Files: src/syntax.c
5308
5309Patch 7.1.087
5310Problem: Reading past ":cscope find" command. Writing past end of a buffer.
5311Solution: Check length of the argument before using the pattern. Use
5312 vim_strncpy(). (Dominique Pelle)
5313Files: if_cscope.c
5314
5315Patch 7.1.088 (extra)
5316Problem: The coordinates used by ":winpos" differ from what getwinposx()
5317 and getwinposy() return.
5318Solution: Use MoveWindowStructure() instead of MoveWindow(). (Michael Henry)
5319Files: src/gui_mac.c
5320
5321Patch 7.1.089
5322Problem: ":let loaded_getscriptPlugin" doesn't clear to eol, result is
5323 "#1in".
5324Solution: Clear to the end of the screen after displaying the first variable
5325 value.
5326Files: src/eval.c
5327
5328Patch 7.1.090
5329Problem: Compiler warning on Mac OS X 10.5.
5330Solution: Don't redeclare sigaltstack(). (Hisashi T Fujinaka)
5331Files: src/os_unix.c
5332
5333Patch 7.1.091 (extra)
5334Problem: Win32: Can't embed Vim inside another application.
5335Solution: Add the --windowid argument. (Nageshwar)
5336Files: runtime/doc/gui_w32.txt, runtime/doc/starting.txt,
5337 runtime/doc/vi_diff.txt, src/globals.h, src/gui_w32.c, src/main.c
5338
5339Patch 7.1.092 (extra, after 7.1.088)
5340Problem: Wrong arguments for MoveWindowStructure().
5341Solution: Remove "TRUE". (Michael Henry)
5342Files: src/gui_mac.c
5343
5344Patch 7.1.093
5345Problem: Reading past end of a screen line when determining cell width.
5346 (Dominique Pelle)
5347Solution: Add an argument to mb_off2cells() for the maximum offset.
5348Files: src/globals.h, src/gui.c, src/mbyte.c, src/proto/mbyte.pro,
5349 src/screen.c
5350
5351Patch 7.1.094
5352Problem: When checking if syntax highlighting is present, looking in the
5353 current buffer instead of the specified one.
5354Solution: Use "buf" instead of "curbuf".
5355Files: src/syntax.c
5356
5357Patch 7.1.095
5358Problem: The FocusLost and FocusGained autocommands are triggered
5359 asynchronously in the GUI. This may cause arbitrary problems.
5360Solution: Put the focus event in the input buffer and handle it when ready
5361 for it.
5362Files: src/eval.c, src/getchar.c, src/gui.c, src/gui_gtk_x11.c,
5363 src/keymap.h
5364
5365Patch 7.1.096
5366Problem: Reading past end of a string when resizing Vim. (Dominique Pelle)
5367Solution: Check the string pointer before getting the char it points to.
5368Files: src/message.c
5369
5370Patch 7.1.097
5371Problem: ":setlocal stl=%!1+1" does not work.
5372Solution: Adjust check for pointer. (Politz)
5373Files: src/option.c
5374
5375Patch 7.1.098
5376Problem: ":call s:var()" doesn't work if "s:var" is a Funcref. (Andy Wokula)
5377Solution: Before converting "s:" into a script ID, check if it is a Funcref.
5378Files: src/eval.c
5379
5380Patch 7.1.099
5381Problem: When the 'keymap' and 'paste' options have a non-default value,
5382 ":mkexrc" and ":mksession" do not correctly set the options.
5383Solution: Set the options with side effects before other options.
5384Files: src/option.c
5385
5386Patch 7.1.100
5387Problem: Win32: Executing cscope doesn't always work properly.
5388Solution: Use another way to invoke cscope. (Mike Williams)
5389Files: src/if_cscope.c, src/if_cscope.h, src/main.c,
5390 src/proto/if_cscope.pro
5391
5392Patch 7.1.101
5393Problem: Ruby: The Buffer.line= method does not work.
5394Solution: Add the "self" argument to set_current_line(). (Jonathan Hankins)
5395Files: src/if_ruby.c
5396
5397Patch 7.1.102
5398Problem: Perl interface doesn't compile with new version of Perl.
5399Solution: Add two variables to the dynamic library loading. (Suresh
5400 Govindachar)
5401Files: src/if_perl.xs
5402
5403Patch 7.1.103
5404Problem: Using "dw" with the cursor past the end of the last line (using
5405 CTRL-\ CTRL-O from Insert mode) deletes a character. (Tim Chase)
5406Solution: Don't move the cursor back when the movement failed.
5407Files: src/normal.c
5408
5409Patch 7.1.104 (after 7.1.095)
5410Problem: When 'lazyredraw' is set a focus event causes redraw to be
5411 postponed until a key is pressed.
5412Solution: Instead of not returning from vgetc() when a focus event is
5413 encountered return K_IGNORE. Add plain_vgetc() for when the
5414 caller doesn't want to get K_IGNORE.
5415Files: src/digraph.c, src/edit.c, src/ex_cmds.c, src/ex_getln.c,
5416 src/getchar.c, src/normal.c, src/proto/getchar.pro, src/window.c
5417
5418Patch 7.1.105
5419Problem: Internal error when using "0 ? {'a': 1} : {}". (A.Politz)
5420Solution: When parsing a dictionary value without using the value, don't try
5421 obtaining the key name.
5422Files: src/eval.c
5423
5424Patch 7.1.106
5425Problem: ":messages" doesn't quit listing on ":".
5426Solution: Break the loop when "got_int" is set.
5427Files: src/message.c
5428
5429Patch 7.1.107
5430Problem: When doing a block selection and using "s" to change the text,
5431 while triggering auto-indenting, causes the wrong text to be
5432 repeated in other lines. (Adri Verhoef)
5433Solution: Compute the change of indent and compensate for that.
5434Files: src/ops.c
5435
5436Patch 7.1.108 (after 7.1.100)
5437Problem: Win32: Compilation problems in Cscope code. (Jeff Lanzarotta)
5438Solution: Use (long) instead of (intptr_t) when it's not defined.
5439Files: src/if_cscope.c
5440
5441Patch 7.1.109
5442Problem: GTK: when there are many tab pages, clicking on the arrow left of
5443 the labels moves to the next tab page on the right. (Simeon Bird)
5444Solution: Check the X coordinate of the click and pass -1 as value for the
5445 left arrow.
5446Files: src/gui_gtk_x11.c, src/term.c
5447
5448Patch 7.1.110 (after 7.1.102)
5449Problem: Win32: Still compilation problems with Perl.
5450Solution: Change the #ifdefs. (Suresh Govindachar)
5451Files: src/if_perl.xs
5452
5453Patch 7.1.111
5454Problem: When using ":vimgrep" with the "j" flag folds from another buffer
5455 may be displayed. (A.Politz)
5456Solution: When not jumping to another buffer update the folds.
5457Files: src/quickfix.c
5458
5459Patch 7.1.112
5460Problem: Using input() with a wrong argument may crash Vim. (A.Politz)
5461Solution: Init the input() return value to NULL.
5462Files: src/eval.c
5463
5464Patch 7.1.113
5465Problem: Using map() to go over an empty list causes memory to be freed
5466 twice. (A.Politz)
5467Solution: Don't clear the typeval in restore_vimvar().
5468Files: src/eval.c
5469
5470Patch 7.1.114
5471Problem: Memory leak in getmatches().
5472Solution: Don't increment the refcount twice.
5473Files: src/eval.c
5474
5475Patch 7.1.115 (after 7.1.105)
5476Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
5477Solution: Init variable to NULL.
5478Files: src/eval.c
5479
5480Patch 7.1.116
5481Problem: Cannot display Unicode characters above 0x10000.
5482Solution: Remove the replacement with a question mark when UNICODE16 is not
5483 defined. (partly by Nicolas Weber)
5484Files: src/screen.c
5485
5486Patch 7.1.117
Bram Moolenaar6dfc28b2010-02-11 14:19:15 +01005487Problem: Can't check whether Vim was compiled with Gnome. (Tony Mechelynck)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005488Solution: Add gui_gnome to the has() list.
5489Files: src/eval.c
5490
5491Patch 7.1.118 (after 7.1.107)
5492Problem: Compiler warning for Visual C compiler.
5493Solution: Add typecast. (Mike Williams)
5494Files: src/ops.c
5495
5496Patch 7.1.119
5497Problem: Crash when 'cmdheight' set to very large value. (A.Politz)
5498Solution: Limit 'cmdheight' to 'lines' minus one. Store right value of
5499 'cmdheight' when running out of room.
5500Files: src/option.c, src/window.c
5501
5502Patch 7.1.120
5503Problem: Can't properly check memory leaks while running tests.
5504Solution: Add an argument to garbagecollect(). Delete functions and
5505 variables in the test scripts.
5506Files: runtime/doc/eval.txt src/eval.c, src/globals.h, src/main.c,
5507 src/testdir/Makefile, src/testdir/test14.in,
5508 src/testdir/test26.in, src/testdir/test34.in,
5509 src/testdir/test45.in, src/testdir/test47.in,
5510 src/testdir/test49.in, src/testdir/test55.in,
5511 src/testdir/test56.in, src/testdir/test58.in,
5512 src/testdir/test59.in, src/testdir/test60.in,
5513 src/testdir/test60.vim, src/testdir/test62.in,
5514 src/testdir/test63.in, src/testdir/test64.in,
5515
5516Patch 7.1.121
5517Problem: Using ":cd %:h" when editing a file in the current directory
5518 results in an error message for using an empty string.
5519Solution: When "%:h" results in an empty string use ".".
5520Files: src/eval.c
5521
5522Patch 7.1.122
5523Problem: Mac: building Vim.app fails. Using wrong architecture.
5524Solution: Use line continuation for the gui_bundle dependency. Detect the
5525 system architecture with "uname -a".
5526Files: src/main.aap
5527
5528Patch 7.1.123
5529Problem: Win32: ":edit foo ~ foo" expands "~".
5530Solution: Change the call to expand_env().
5531Files: src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/option.c
5532
5533Patch 7.1.124 (extra)
5534Problem: Mac: When dropping a file on Vim.app that is already in the buffer
5535 list (from .viminfo) results in editing an empty, unnamed buffer.
5536 (Axel Kielhorn) Also: warning for unused variable.
Bram Moolenaarc236c162008-07-13 17:41:49 +00005537Solution: Move to the buffer of the first argument. Delete unused variable.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005538Files: src/gui_mac.c
5539
5540Patch 7.1.125
5541Problem: The TermResponse autocommand event is not always triggered. (Aron
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +02005542 Griffis)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005543Solution: When unblocking autocommands check if v:termresponse changed and
5544 trigger the event then.
5545Files: src/buffer.c, src/diff.c, src/ex_getln.c, src/fileio.c,
5546 src/globals.h, src/misc2.c, src/proto/fileio.pro, src/window.c
5547
5548Patch 7.1.126 (extra)
5549Problem: ":vimgrep */*" fails when a BufRead autocommand changes directory.
5550 (Bernhard Kuhn)
5551Solution: Change back to the original directory after loading a file.
5552 Also: use shorten_fname1() to avoid duplicating code.
5553Files: src/buffer.c, src/ex_docmd.c, src/fileio.c, src/gui_gtk.c,
5554 src/gui_w48.c, src/proto/ex_docmd.pro, src/proto/fileio.pro,
5555 src/quickfix.c
5556
5557Patch 7.1.127
5558Problem: Memory leak when doing cmdline completion. (Dominique Pelle)
5559Solution: Free "orig" argument of ExpandOne() when it's not used.
5560Files: src/ex_getln.c
5561
5562Patch 7.1.128 (extra)
5563Problem: Build problems with new version of Cygwin.
5564Solution: Remove -D__IID_DEFINED__, like with MingW. (Guopeng Wen)
5565Files: src/Make_cyg.mak
5566
5567Patch 7.1.129 (extra)
5568Problem: Win32: Can't get the user name when it is longer than 15
5569 characters.
5570Solution: Use UNLEN instead of MAX_COMPUTERNAME_LENGTH. (Alexei Alexandrov)
5571Files: src/os_win32.c
5572
5573Patch 7.1.130
5574Problem: Crash with specific order of undo and redo. (A.Politz)
5575Solution: Clear and adjust pointers properly. Add u_check() for debugging.
5576Files: src/undo.c, src/structs.h
5577
5578Patch 7.1.131
5579Problem: ":mksession" always adds ":setlocal autoread". (Christian J.
5580 Robinson)
5581Solution: Skip boolean global/local option using global value.
5582Files: src/option.c
5583
5584Patch 7.1.132
5585Problem: getpos("'>") may return a negative column number for a Linewise
5586 selection. (A.Politz)
5587Solution: Don't add one to MAXCOL.
5588Files: src/eval.c
5589
5590Patch 7.1.133 (after 7.1.126)
5591Problem: shorten_fname1() linked when it's not needed.
5592Solution: Add #ifdef.
5593Files: src/fileio.c
5594
5595Patch 7.1.134 (extra)
5596Problem: Win32: Can't build with VC8
5597Solution: Detect the MSVC version instead of using NMAKE_VER.
5598 (Mike Williams)
5599Files: src/Make_mvc.mak
5600
5601Patch 7.1.135
5602Problem: Win32: When editing a file c:\tmp\foo and c:\tmp\\foo we have two
5603 buffers for the same file. (Suresh Govindachar)
5604Solution: Invoke FullName_save() when a path contains "//" or "\\".
5605Files: src/buffer.c
5606
5607Patch 7.1.136
5608Problem: Memory leak when using Ruby syntax highlighting. (Dominique Pelle)
5609Solution: Free the contained-in list.
5610Files: src/syntax.c
5611
5612Patch 7.1.137
5613Problem: Build failure when using EXITFREE. (Dominique Pelle)
5614Solution: Add an #ifdef around using clip_exclude_prog.
5615Files: src/misc2.c
5616
5617Patch 7.1.138
5618Problem: The Perl Msg() function doesn't stop when "q" is typed at the more
5619 prompt. (Hari Krishna Dara)
5620Solution: Check got_int.
5621Files: src/if_perl.xs
5622
5623Patch 7.1.139
5624Problem: When using marker folding and ending Insert mode with CTRL-C the
5625 current fold is truncated. (Fred Kater)
5626Solution: Ignore got_int while updating folds.
5627Files: src/fold.c
5628
5629Patch 7.1.140
5630Problem: v:count is set only after typing a non-digit, that makes it
5631 difficult to make a nice mapping.
5632Solution: Set v:count while still typing the count.
5633Files: src/normal.c
5634
5635Patch 7.1.141
5636Problem: GTK: -geom argument doesn't support a negative offset.
5637Solution: Compute position from the right/lower corner.
5638Files: src/gui_gtk_x11.c
5639
5640Patch 7.1.142
5641Problem: ":redir @A>" doesn't work.
5642Solution: Ignore the extra ">" also when appending. (James Vega)
5643Files: src/ex_docmd.c
5644
5645Patch 7.1.143
5646Problem: Uninitialized memory read when diffing three files. (Dominique
5647 Pelle)
5648Solution: Remove "+ !notset" so that we don't use fields that were not
5649 computed.
5650Files: src/diff.c
5651
5652Patch 7.1.144
5653Problem: After ":diffup" cursor can be in the wrong position.
5654Solution: Force recomputing the cursor position.
5655Files: src/diff.c
5656
5657Patch 7.1.145
5658Problem: Insert mode completion: When using the popup menu, after
5659 completing a word and typing a non-word character Vim is still
5660 completing the same word, following CTRL-N doesn't work.
5661 Insert mode Completion: When using CTRL-X O and there is only
5662 "struct." before the cursor, typing one char to reduce the
5663 matches, then BS completion stops.
5664Solution: When typing a character that is not part of the item being
5665 completed, stop complete mode. For whole line completion also
5666 accept a space. For file name completion stop at a path
5667 separator.
5668 For omni completion stay in completion mode even if completing
5669 with empty string.
5670Files: src/edit.c
5671
5672Patch 7.1.146 (extra)
5673Problem: VMS: Files with a very rare record organization (VFC) cannot be
5674 properly written by Vim.
5675 On older VAX systems mms runs into a syntax error.
5676Solution: Check for this special situation. Do not wrap a comment, make it
5677 one long line. (Zoltan Arpadffy)
5678Files: src/fileio.c, src/Make_vms.mms
5679
5680Patch 7.1.147 (after 7.1.127)
5681Problem: Freeing memory already freed when completing user name. (Meino
5682 Cramer)
5683Solution: Use a flag to remember if "orig" needs to be freed.
5684Files: src/ex_getln.c
5685
5686Patch 7.1.148
5687Problem: Some types are not found by configure.
5688Solution: Test for the sys/types.h header file. (Sean Boudreau)
5689Files: src/configure.in, src/auto/configure
5690
5691Patch 7.1.149
5692Problem: GTK GUI: When the completion popup menu is used scrolling another
5693 window by the scrollbar is OK, but using the scroll wheel it
5694 behaves line <Enter>.
5695Solution: Ignore K_MOUSEDOWN and K_MOUSEUP. Fix redrawing the popup menu.
5696Files: src/edit.c, src/gui.c
5697
5698Patch 7.1.150
5699Problem: When 'clipboard' has "unnamed" using "p" in Visual mode doesn't
5700 work correctly. (Jianrong Yu)
5701Solution: When 'clipboard' has "unnamed" also obtain the selection when
5702 getting the default register.
5703Files: src/ops.c
5704
5705Patch 7.1.151
5706Problem: Using whole line completion with 'ignorecase' and 'infercase' set
5707 and the line is empty get an lalloc(0) error.
5708Solution: Don't try changing case for an empty match. (Matthew Wozniski)
5709Files: src/edit.c
5710
5711Patch 7.1.152
5712Problem: Display problem when 'hls' and 'cursorcolumn' are set and
5713 searching for "$". (John Mullin) Also when scrolling
5714 horizontally when 'wrap' is off.
5715Solution: Keep track of the column where highlighting was set. Check the
5716 column offset when skipping characters.
5717Files: src/screen.c
5718
5719Patch 7.1.153
5720Problem: Compiler warnings on SGI. Undefined XpmAllocColor (Charles
5721 Campbell)
5722Solution: Add type casts. Init st_dev and st_ino separately. Don't use
5723 type casts for vim_snprintf() when HAVE_STDARG_H is defined.
5724 Define XpmAllocColor when needed.
5725Files: src/eval.c, src/ex_cmds.c, src/fileio.c, src/misc2.c,
5726 src/gui_xmebw.c
5727
5728Patch 7.1.154
5729Problem: Compiler warning for signed/unsigned compare.
5730Solution: Add type cast.
5731Files: src/screen.c
5732
5733Patch 7.1.155
5734Problem: Crash when 'undolevels' is 0 and repeating "udd". (James Vega)
5735Solution: When there is only one branch use u_freeheader() to delete it.
5736Files: src/undo.c
5737
5738Patch 7.1.156
5739Problem: Overlapping arguments for strcpy() when expanding command line
5740 variables.
5741Solution: Use mch_memmove() instead of STRCPY(). Also fix a few typos.
5742 (Dominique Pelle)
5743Files: src/ex_docmd.c
5744
5745Patch 7.1.157
5746Problem: In Ex mode, :" gives an error at end-of-file. (Michael Hordijk)
5747Solution: Only give an error for an empty line, not for a comment.
5748Files: src/ex_docmd.c
5749
5750Patch 7.1.158 (extra)
5751Problem: Win32 console: When 'encoding' is "utf-8" and typing Alt-y the
5752 result is wrong. Win32 GUI: Alt-y results in "u" when 'encoding'
5753 is "cp1250" (Lukas Cerman)
5754Solution: For utf-8 don't set the 7th bit in a byte, convert to the correct
5755 byte sequence. For cp1250, when conversion to 'encoding' results
5756 in the 7th bit not set, set the 7th bit after conversion.
5757Files: src/os_win32.c, src/gui_w48.c
5758
5759Patch 7.1.159
5760Problem: strcpy() has overlapping arguments.
5761Solution: Use mch_memmove() instead. (Dominique Pelle)
5762Files: src/ex_cmds.c
5763
5764Patch 7.1.160
5765Problem: When a focus autocommand is defined, getting or losing focus
5766 causes the hit-enter prompt to be redrawn. (Bjorn Winckler)
5767Solution: Overwrite the last line.
5768Files: src/message.c
5769
5770Patch 7.1.161
5771Problem: Compilation errors with tiny features and EXITFREE.
5772Solution: Add #ifdefs. (Dominique Pelle)
5773Files: src/edit.c, src/misc2.c
5774
5775Patch 7.1.162
5776Problem: Crash when using a modifier before "while" or "for". (A.Politz)
5777Solution: Skip modifiers when checking for a loop command.
5778Files: src/proto/ex_docmd.pro, src/ex_docmd.c, src/ex_eval.c
5779
5780Patch 7.1.163
5781Problem: Warning for the unknown option 'bufsecret'.
5782Solution: Remove the lines .vim that use this option. (Andy Wokula)
5783Files: runtime/menu.vim
5784
5785Patch 7.1.164
5786Problem: Reading past end of regexp pattern. (Dominique Pelle)
5787Solution: Use utf_ptr2len().
5788Files: src/regexp.c
5789
5790Patch 7.1.165
5791Problem: Crash related to getting X window ID. (Dominique Pelle)
5792Solution: Don't trust the window ID that we got in the past, check it every
5793 time.
5794Files: src/os_unix.c
5795
5796Patch 7.1.166
5797Problem: Memory leak for using "gp" in Visual mode.
5798Solution: Free memory in put_register(). (Dominique Pelle)
5799Files: src/ops.c
5800
5801Patch 7.1.167
5802Problem: Xxd crashes when using "xxd -b -c 110". (Debian bug 452789)
5803Solution: Allocate more memory. Fix check for maximum number of columns.
5804Files: src/xxd/xxd.c
5805
5806Patch 7.1.168 (extra)
5807Problem: Win32 GUI: Since patch 7.1.095, when the Vim window does not have
5808 focus, clicking in it doesn't position the cursor. (Juergen
5809 Kraemer)
5810Solution: Don't reset s_button_pending just after receiving focus.
5811Files: src/gui_w48.c
5812
5813Patch 7.1.169
5814Problem: Using uninitialized variable when system() fails. (Dominique
5815 Pelle)
5816Solution: Let system() return an empty string when it fails.
5817Files: src/eval.c
5818
5819Patch 7.1.170
5820Problem: Valgrind warning for overlapping arguments for strcpy().
5821Solution: Use mch_memmove() instead. (Dominique Pelle)
5822Files: src/getchar.c
5823
5824Patch 7.1.171
5825Problem: Reading one byte before allocated memory.
5826Solution: Check index not to become negative. (Dominique Pelle)
5827Files: src/ex_getln.c
5828
5829Patch 7.1.172
5830Problem: When 'buftype' is "acwrite" Vim still checks if the file or
5831 directory exists before overwriting.
5832Solution: Don't check for overwriting when the buffer name is not a file
5833 name.
5834Files: src/ex_cmds.c
5835
5836Patch 7.1.173
5837Problem: Accessing freed memory. (Dominique Pelle)
5838Solution: Don't call reg_getline() to check if a line is the first in the
5839 file.
5840Files: src/regexp.c
5841
5842Patch 7.1.174
5843Problem: Writing NUL past end of a buffer.
5844Solution: Copy one byte less when using strncat(). (Dominique Pelle)
5845Files: src/ex_cmds.c, src/ex_docmd.c,
5846
5847Patch 7.1.175
5848Problem: <BS> doesn't work with some combination of 'sts', 'linebreak' and
5849 'backspace'. (Francois Ingelrest)
5850Solution: When adding white space results in not moving back delete one
5851 character.
5852Files: src/edit.c
5853
5854Patch 7.1.176
5855Problem: Building with Aap fails when the "compiledby" argument contains
5856 '<' or '>' characters. (Alex Yeh)
5857Solution: Change how quoting is done in the Aap recipe.
5858Files: src/main.aap
5859
5860Patch 7.1.177
5861Problem: Freeing memory twice when in debug mode while reading a script.
5862Solution: Ignore script input while in debug mode.
5863Files: src/ex_cmds2.c, src/getchar.c, src/globals.h
5864
5865Patch 7.1.178
5866Problem: "%" doesn't work on "/* comment *//* comment */".
5867Solution: Don't handle the "//" in "*//*" as a C++ comment. (Markus
5868 Heidelberg)
5869Files: src/search.c
5870
5871Patch 7.1.179
5872Problem: Need to check for TCL 8.5.
5873Solution: Adjust configure script. (Alexey Froloff)
5874Files: src/configure.in, src/auto/configure
5875
5876Patch 7.1.180
5877Problem: Regexp patterns not tested sufficiently.
5878Solution: Add more checks to the regexp test.
5879Files: src/testdir/test64.in, src/testdir/test64.ok
5880
5881Patch 7.1.181
5882Problem: Accessing uninitialized memory in Farsi mode. (Dominique Pelle)
5883Solution: Only invoke lrF_sub() when there is something to do.
5884Files: src/ex_cmds.c
5885
5886Patch 7.1.182
5887Problem: When using tab pages and an argument list the session file may
5888 contain wrong "next" commands. (Alexander Bluem)
5889Solution: Use "argu" commands and only when needed.
5890Files: src/ex_docmd.c
5891
5892Patch 7.1.183
5893Problem: "Internal error" for ":echo matchstr('a', 'a\%[\&]')" (Mitanu
5894 Paul)
5895Solution: Inside "\%[]" detect \&, \| and \) as an error.
5896Files: src/regexp.c
5897
5898Patch 7.1.184
5899Problem: Crash when deleting backwards over a line break in Insert mode.
5900Solution: Don't advance the cursor when it's already on the NUL after a
5901 line. (Matthew Wozniski)
5902Files: src/normal.c
5903
5904Patch 7.1.185
Bram Moolenaar207f0092020-08-30 17:20:20 +02005905Problem: Using "gR" with a multibyte encoding and typing a CR pushes
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005906 characters onto the replace stack incorrectly, resulting in BS
5907 putting back the wrong characters. (Paul B. Mahol)
Bram Moolenaar207f0092020-08-30 17:20:20 +02005908Solution: Push multibyte characters onto the replace stack in reverse byte
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005909 order. Add replace_push_mb().
5910Files: src/edit.c, src/misc1.c, src/proto/edit.pro
5911
5912Patch 7.1.186
5913Problem: "expand('<afile>')" returns a bogus value after changing
5914 directory. (Dave Fishburn)
5915Solution: Copy "autocmd_fname" to allocated memory and expand to full
5916 filename. Shorten the path when expanding <afile>.
5917Files: src/ex_docmd.c, src/fileio.c
5918
5919Patch 7.1.187
5920Problem: Win32 GUI: Custom completion using system() no longer works
5921 after patch 7.1.104. (Erik Falor)
5922Solution: Loop when safe_vgetc() returns K_IGNORE.
5923Files: src/ex_getln.c
5924
5925Patch 7.1.188
5926Problem: When 'showmode' is off the message for changing a readonly file is
Bram Moolenaar8f3f58f2010-01-06 20:52:26 +01005927 given in the second column instead of the first. (Payl B. Mahol)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00005928Solution: Put the W10 message in the first column.
5929Files: src/edit.c
5930
5931Patch 7.1.189 (after 7.1.104)
5932Problem: Patch 7.1.104 was incomplete.
5933Solution: Also call plain_vgetc() in ask_yesno().
5934Files: src/misc1.c
5935
5936Patch 7.1.190
5937Problem: Cursor after end-of-line: "iA sentence.<Esc>)"
5938Solution: Move cursor back and make motion inclusive.
5939Files: src/normal.c
5940
5941Patch 7.1.191
5942Problem: Win32 GUI: after patch 7.1.168 there is still a problem when
5943 clicking in a scrollbar. (Juergen Jottkaerr)
5944Solution: Don't check the input buffer when dragging the scrollbar.
5945Files: src/gui.c
5946
5947Patch 7.1.192
5948Problem: With Visual block selection, "s" and typing something, CTRL-C
5949 doesn't stop Vim from repeating the replacement in other lines,
5950 like happens for "I".
5951Solution: Check for "got_int" to be set.
5952Files: src/ops.c
5953
5954Patch 7.1.193
5955Problem: Some Vim 5.x digraphs are missing in Vim 7, even though the
5956 character pairs are not used. (Philippe de Muyter)
5957Solution: Add those Vim 5.x digraphs that don't conflict with others.
5958Files: src/digraph.c
5959
5960Patch 7.1.194
5961Problem: ":echo glob('~/{}')" results in /home/user//.
5962Solution: Don't add a slash if there already is one.
5963Files: src/os_unix.c
5964
5965Patch 7.1.195
5966Problem: '0 mark doesn't work for "~/foo ~ foo".
5967Solution: Don't expand the whole file name, only "~/".
5968Files: src/mark.c
5969
5970Patch 7.1.196 (extra)
5971Problem: Win32 GUI: "\n" in a tooltip doesn't cause a line break. (Erik
5972 Falor)
5973Solution: Use the TTM_SETMAXTIPWIDTH message.
5974Files: src/gui_w32.c
5975
5976Patch 7.1.197
5977Problem: Mac: "make install" doesn't work when prefix defined.
5978Solution: Pass different arguments to "make installruntime". (Jjgod Jiang)
5979Files: src/Makefile
5980
5981Patch 7.1.198
5982Problem: Hang when using ":s/\n//gn". (Burak Gorkemli)
5983Solution: Set "skip_match".
5984Files: src/ex_cmds.c
5985
5986Patch 7.1.199
5987Problem: Can't do command line completion for a specific file name
5988 extension.
5989Solution: When the pattern ends in "$" don't add a star for completion and
5990 remove the "$" before matching with file names.
5991Files: runtime/doc/cmdline.txt, src/ex_getln.c
5992
5993Patch 7.1.200 (after 7.1.177 and 7.1.182)
5994Problem: Compiler warnings for uninitialized variables.
5995Solution: Init variables.
5996Files: src/ex_cmds2.c, src/ex_docmd.c
5997
5998Patch 7.1.201
Bram Moolenaardd007ed2013-07-09 15:44:17 +02005999Problem: When reading stdin 'fenc' and 'ff' are not set.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006000Solution: Set the options after reading stdin. (Ben Schmidt)
6001Files: src/fileio.c
6002
6003Patch 7.1.202
6004Problem: Incomplete utf-8 byte sequence is not checked for validity.
6005Solution: Check the bytes that are present for being valid. (Ben Schmidt)
6006Files: src/mbyte.c
6007
6008Patch 7.1.203
6009Problem: When 'virtualedit' is "onemore" then "99|" works but ":normal 99|"
6010 doesn't. (Andy Wokula)
6011Solution: Check for "onemore" flag in check_cursor_col().
6012Files: src/misc2.c
6013
6014Patch 7.1.204 (extra)
6015Problem: Win32: Using the example at 'balloonexpr' the balloon disappears
6016 after four seconds and then comes back again. Also moves the
6017 mouse pointer a little bit. (Yongwei Wu)
6018Solution: Set the autopop time to 30 seconds (the max value). (Sergey
6019 Khorev) Move the mouse two pixels forward and one back to end up
6020 in the same position (really!).
6021Files: src/gui_w32.c
6022
6023Patch 7.1.205
6024Problem: Can't get the operator in an ":omap".
6025Solution: Add the "v:operator" variable. (Ben Schmidt)
6026Files: runtime/doc/eval.txt, src/eval.c, src/normal.c, src/vim.h
6027
6028Patch 7.1.206
6029Problem: Compiler warnings when using MODIFIED_BY.
6030Solution: Add type casts. (Ben Schmidt)
6031Files: src/version.c
6032
6033Patch 7.1.207
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02006034Problem: Netbeans: "remove" cannot delete one line.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006035Solution: Remove partial lines and whole lines properly. Avoid a memory
6036 leak. (Xavier de Gaye)
6037Files: src/netbeans.c
6038
6039Patch 7.1.208
6040Problem: On Alpha get an unaligned access error.
6041Solution: Store the dictitem pointer before using it. (Matthew Luckie)
6042Files: src/eval.c
6043
6044Patch 7.1.209
6045Problem: GTK: When using the netrw plugin and doing ":gui" Vim hangs.
6046Solution: Stop getting a selection after three seconds. This is a hack.
6047Files: src/gui_gtk_x11.c
6048
6049Patch 7.1.210
6050Problem: Listing mapping for 0xdb fails when 'encoding' is utf-8. (Tony
6051 Mechelynck)
6052Solution: Recognize K_SPECIAL KS_EXTRA KE_CSI as a CSI byte.
6053Files: src/mbyte.c
6054
6055Patch 7.1.211
6056Problem: The matchparen plugin may take an unexpected amount of time, so
6057 that it looks like Vim hangs.
6058Solution: Add a timeout to searchpair(), searchpairpos(), search() and
6059 searchpos(). Use half a second timeout in the plugin.
6060Files: runtime/doc/eval.txt, runtime/plugin/matchparen.vim, src/edit.c,
6061 src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/normal.c,
6062 src/proto/eval.pro, src/proto/ex_cmds2.pro, src/proto/search.pro,
6063 src/search.c
6064
6065Patch 7.1.212
6066Problem: Accessing a byte before a line.
6067Solution: Check that the column is 1 or more. (Dominique Pelle)
6068Files: src/edit.c
6069
6070Patch 7.1.213
6071Problem: A ":tabedit" command that results in the "swap file exists" dialog
6072 and selecting "abort" doesn't close the new tab. (Al Budden)
6073Solution: Pass "old_curwin" to do_exedit().
6074Files: src/ex_docmd.c
6075
6076Patch 7.1.214
6077Problem: ":1s/g\n\zs1//" deletes characters from the first line. (A Politz)
6078Solution: Start replacing in the line where the match starts.
6079Files: src/ex_cmds.c
6080
6081Patch 7.1.215
6082Problem: It is difficult to figure out what syntax items are nested at a
6083 certain position.
6084Solution: Add the synstack() function.
6085Files: runtime/doc/eval.txt, src/eval.c, src/proto/syntax.pro,
6086 src/syntax.c
6087
6088Patch 7.1.216
6089Problem: Variants of --remote-tab are not mentioned for "vim --help".
6090Solution: Display optional -wait and -silent.
6091Files: src/main.c
6092
6093Patch 7.1.217
6094Problem: The "help-tags" tag may be missing from runtime/doc/tags when it
6095 was generated during "make install".
6096Solution: Add the "++t" argument to ":helptags" to force adding the tag.
6097Files: runtime/doc/Makefile, runtime/doc/various.txt, src/ex_cmds.c,
6098 src/ex_cmds.h
6099
6100Patch 7.1.218
6101Problem: A syntax region without a "keepend", containing a region with
6102 "extend" could be truncated at the end of the containing region.
6103Solution: Do not call syn_update_ends() when there are no keepend items.
6104Files: src/syntax.c
6105
6106Patch 7.1.219 (after 7.1.215)
6107Problem: synstack() returns situation after the current character, can't
6108 see the state for a one-character region.
6109Solution: Don't update ending states in the requested column.
6110Files: runtime/doc/eval.txt, src/eval.c, src/hardcopy.c,
6111 src/proto/syntax.pro, src/screen.c, src/spell.c, src/syntax.c
6112
6113Patch 7.1.220
6114Problem: When a ")" or word movement command moves the cursor back from the
Bram Moolenaar207f0092020-08-30 17:20:20 +02006115 end of the line it may end up on the trail byte of a multibyte
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006116 character. It's also moved back when it isn't needed.
6117Solution: Add the adjust_cursor() function.
6118Files: src/normal.c
6119
6120Patch 7.1.221
6121Problem: When inserting a "(", triggering the matchparen plugin, the
6122 following highlighting may be messed up.
6123Solution: Before triggering the CursorMovedI autocommands update the display
6124 to update the stored syntax stacks for the change.
6125Files: src/edit.c
6126
6127Patch 7.1.222 (after 7.1.217)
6128Problem: Wildcards in argument of ":helptags" are not expanded. (Marcel
6129 Svitalsky)
6130Solution: Expand wildcards in the directory name.
6131Files: src/ex_cmds.c
6132
6133Patch 7.1.223
6134Problem: glob() doesn't work properly when 'shell' is "sh" or "bash" and
6135 the expanded name contains spaces, '~', single quotes and other
6136 special characters. (Adri Verhoef, Charles Campbell)
6137Solution: For Posix shells define a vimglob() function to list the matches
6138 instead of using "echo" directly.
6139Files: src/os_unix.c
6140
6141Patch 7.1.224
6142Problem: When using "vim -F -o file1 file2" only one window is
6143 right-to-left. Same for "-H". (Ben Schmidt)
6144Solution: use set_option_value() to set 'rightleft'.
6145Files: src/main.c
6146
6147Patch 7.1.225
Bram Moolenaarc236c162008-07-13 17:41:49 +00006148Problem: Using uninitialized value when XGetWMNormalHints() fails.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006149Solution: Check the return value. (Dominique Pelle)
6150Files: src/os_unix.c
6151
6152Patch 7.1.226
6153Problem: Command line completion doesn't work when a file name contains a
6154 '&' character.
6155Solution: Accept all characters in a file name, except ones that end a
6156 command or white space.
6157Files: src/ex_docmd.c
6158
6159Patch 7.1.227
6160Problem: Hang in syntax HL when moving over a ")". (Dominique Pelle)
6161Solution: Avoid storing a syntax state in the wrong position in the list of
6162 remembered states.
6163Files: src/syntax.c
6164
6165Patch 7.1.228
6166Problem: When 'foldmethod' is "indent" and a fold is created with ">>" it
6167 can't be closed with "zc". (Daniel Shahaf)
6168Solution: Reset the "small" flag of a fold when adding a line to it.
6169Files: src/fold.c
6170
6171Patch 7.1.229
6172Problem: A fold is closed when it shouldn't when 'foldmethod' is "indent"
6173 and backspacing a non-white character so that the indent increases.
6174Solution: Keep the fold open after backspacing a character.
6175Files: src/edit.c
6176
6177Patch 7.1.230
6178Problem: Memory leak when executing SourceCmd autocommands.
6179Solution: Free the memory. (Dominique Pelle)
6180Files: src/ex_cmds2.c
6181
6182Patch 7.1.231
6183Problem: When shifting lines the change is acted upon multiple times.
6184Solution: Don't have shift_line() call changed_bytes.
6185Files: src/edit.c, src/ops.c, src/proto/edit.pro, src/proto/ops.pro
6186
6187Patch 7.1.232 (after 7.1.207 and 7.1.211)
6188Problem: Compiler warnings with MSVC.
6189Solution: Add type casts. (Mike Williams)
6190Files: src/ex_cmds2.c, src/netbeans.c
6191
6192Patch 7.1.233
6193Problem: Crash when doing Insert mode completion for a user defined
6194 command. (Yegappan Lakshmanan)
6195Solution: Don't use the non-existing command line.
6196Files: src/ex_getln.c
6197
6198Patch 7.1.234
6199Problem: When diff'ing three files the third one isn't displayed correctly.
6200 (Gary Johnson)
6201Solution: Compute the size of diff blocks correctly when merging blocks.
6202 Compute filler lines correctly when scrolling.
6203Files: src/diff.c
6204
6205Patch 7.1.235
6206Problem: Pattern matching is slow when using a lot of simple patterns.
6207Solution: Avoid allocating memory by not freeing it when it's not so much.
6208 (Alexei Alexandrov)
6209Files: src/regexp.c
6210
6211Patch 7.1.236
6212Problem: When using 'incsearch' and 'hlsearch' a complicated pattern may
6213 make Vim hang until CTRL-C is pressed.
6214Solution: Add the 'redrawtime' option.
6215Files: runtime/doc/options.txt, src/ex_cmds.c, src/ex_docmd.c,
6216 src/ex_getln.c, src/gui.c, src/misc1.c, src/normal.c,
6217 src/option.c, src/quickfix.c, src/regexp.c, src/proto/regexp.pro,
6218 src/proto/search.pro, src/search.c, src/screen.c,
6219 src/option.h, src/spell.c, src/structs.h, src/syntax.c, src/tag.c,
6220 src/vim.h
6221
6222Patch 7.1.237
6223Problem: Compiler warning on an Alpha processor in Motif code.
6224Solution: Change a typecast. (Adri Verhoef)
6225Files: src/gui_motif.c
6226
6227Patch 7.1.238
6228Problem: Using the 'c' flag with searchpair() may cause it to fail. Using
6229 the 'r' flag doesn't work when 'wrapscan' is set. (A.Politz)
6230Solution: Only use the 'c' flag for the first search, not for repeating.
6231 When using 'r' imply 'W'. (Antony Scriven)
6232Files: src/eval.c
6233
6234Patch 7.1.239 (after 7.1.233)
6235Problem: Compiler warning for sprintf() argument.
6236Solution: Add a typecast. (Nico Weber)
6237Files: src/ex_getln.c
6238
6239Patch 7.1.240
6240Problem: When "gUe" turns a German sharp s into SS the operation stops
6241 before the end of the word. Latin2 has the same sharp s but it's
6242 not changed to SS there.
6243Solution: Make sure all the characters are operated upon. Detect the sharp
Bram Moolenaar207f0092020-08-30 17:20:20 +02006244 s in latin2. Also fixes that changing case of a multibyte
Bram Moolenaarc236c162008-07-13 17:41:49 +00006245 character that changes the byte count doesn't always work.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006246Files: src/ops.c
6247
6248Patch 7.1.241
6249Problem: Focus change events not always ignored. (Erik Falor)
6250Solution: Ignore K_IGNORE in Insert mode in a few more places.
6251Files: src/edit.c
6252
6253Patch 7.1.242 (after 7.1.005)
6254Problem: "cib" doesn't work properly on "(x)". (Tim Pope)
6255Solution: Use ltoreq() instead of lt(). Also fix "ciT" on "<a>x</a>".
6256Files: src/search.c
6257
6258Patch 7.1.243 (after 7.1.240)
6259Problem: "U" doesn't work on all text in Visual mode. (Adri Verhoef)
6260Solution: Loop over all the lines to be changed. Add tests for this.
6261Files: src/ops.c, src/testdir/test39.in, src/testdir/test39.ok
6262
6263Patch 7.1.244
6264Problem: GUI may have part of the command line cut off.
6265Solution: Don't round the number of lines up, always round down.
6266 (Tony Houghton, Scott Dillard)
6267Files: src/gui.c
6268
6269Patch 7.1.245
6270Problem: Pressing CTRL-\ three times causes Vim to quit. (Ranganath Rao).
6271 Also for f CTRL-\ CTRL-\.
6272Solution: When going to cooked mode in mch_delay() set a flag to ignore
6273 SIGQUIT.
6274Files: src/os_unix.c
6275
6276Patch 7.1.246
6277Problem: Configure hangs when the man pager is something strange. (lorien)
6278Solution: Set MANPAGER and PAGER to "cat". (Micah Cowan)
6279Files: src/auto/configure, src/configure.in
6280
6281Patch 7.1.247
6282Problem: When using Netbeans backspacing in Insert mode skips a character
6283 now and then. (Ankit Jain)
6284Solution: Avoid calling netbeans_removed(), it frees the line pointer.
6285 (partly by Dominique Pelle).
6286Files: src/misc1.c
6287
6288Patch 7.1.248
6289Problem: Can't set the '" mark. Can't know if setpos() was successful.
6290Solution: Allow setting the '" mark with setpos(). Have setpos() return a
6291 value indicating success/failure.
6292Files: runtime/doc/eval.txt, src/eval.c, src/mark.c
6293
6294Patch 7.1.249
6295Problem: After "U" the cursor can be past end of line. (Adri Verhoef)
6296Solution: Adjust the cursor position in u_undoline().
6297Files: src/undo.c
6298
6299Patch 7.1.250
6300Problem: ":setglobal fenc=anything" gives an error message in a buffer
6301 where 'modifiable' is off. (Ben Schmidt)
6302Solution: Don't give an error if 'modifiable' doesn't matter.
6303Files: src/option.c
6304
6305Patch 7.1.251
6306Problem: Using freed memory when spell checking enabled.
6307Solution: Obtain the current line again after calling spell_move_to().
6308 (Dominique Pelle)
6309Files: src/screen.c
6310
6311Patch 7.1.252 (after 7.1.243)
6312Problem: Test 39 fails when the environment has a utf-8 locale. (Dominique
6313 Pelle)
6314Solution: Force 'encoding' to be latin1.
6315Files: src/testdir/test39.in
6316
6317Patch 7.1.253
6318Problem: ":sort" doesn't work in a one line file. (Patrick Texier)
6319Solution: Don't sort if there is only one line. (Dominique Pelle)
6320Files: src/ex_cmds.c
6321
6322Patch 7.1.254
6323Problem: Tests 49 and 55 fail when the locale is French.
6324Solution: Using C messages for test 49. Filter the error message in test 55
6325 such that it works when the number is halfway the message.
6326Files: src/testdir/test49.in, src/testdir/test55.in
6327
6328Patch 7.1.255
6329Problem: Vim doesn't support utf-32. (Yongwei Wu)
6330Solution: Add aliases for utf-32, it's the same as ucs-4.
6331Files: src/mbyte.c
6332
6333Patch 7.1.256
6334Problem: findfile() also returns directories.
6335Solution: Cleanup the code for finding files and directories in a list of
6336 directories. Remove the ugly global ff_search_ctx.
6337Files: src/eval.c, src/misc2.c, src/vim.h, src/tag.c
6338
6339Patch 7.1.257
6340Problem: Configure can't always find the Tcl header files.
6341Solution: Also look in /usr/local/include/tcl$tclver and
6342 /usr/include/tcl$tclver (James Vega)
6343Files: src/auto/configure, src/configure.in
6344
6345Patch 7.1.258
6346Problem: Crash when doing "d/\n/e" and 'virtualedit' is "all". (Andy Wokula)
6347Solution: Avoid that the column becomes negative. Also fixes other problems
6348 with the end of a pattern match is in column zero. (A.Politz)
6349Files: src/search.c
6350
6351Patch 7.1.259
6352Problem: Cursor is in the wrong position when 'rightleft' is set,
6353 'encoding' is "utf-8" and on an illegal byte. (Dominique Pelle)
6354Solution: Only put the cursor in the first column when actually on a
6355 double-wide character. (Yukihiro Nakadaira)
6356Files: src/screen.c
6357
6358Patch 7.1.260
6359Problem: Cursor positioning problem after ^@ wrapping halfway when
6360 'encoding' is utf-8.
6361Solution: Only count a position for printable characters. (partly by
6362 Yukihiro Nakadaira)
6363Files: src/charset.c
6364
6365Patch 7.1.261
6366Problem: When a 2 byte BOM is detected Vim uses UCS-2, which doesn't work
6367 for UTF-16 text. (Tony Mechelynck)
6368Solution: Default to UTF-16.
6369Files: src/fileio.c, src/testdir/test42.ok
6370
6371Patch 7.1.262
6372Problem: Can't get the process ID of Vim.
6373Solution: Implement getpid().
6374Files: src/eval.c, runtime/doc/eval.txt
6375
6376Patch 7.1.263
6377Problem: The filetype can consist of two dot separated names. This works
6378 for syntax and ftplugin, but not for indent. (Brett Stahlman)
6379Solution: Use split() and loop over each dot separated name.
6380Files: runtime/indent.vim
6381
6382Patch 7.1.264
6383Problem: Crash when indenting lines. (Dominique Pelle)
6384Solution: Set the cursor column when changing the cursor line.
6385Files: src/ops.c, src/misc1.c
6386
6387Patch 7.1.265
6388Problem: When 'isfname' contains a space, cmdline completion can hang.
6389 (James Vega)
6390Solution: Reset the "len" variable.
6391Files: src/ex_docmd.c
6392
6393Patch 7.1.266
6394Problem: When the version string returned by the terminal contains
6395 unexpected characters, it is used as typed input. (James Vega)
6396Solution: Assume the escape sequence ends in a letter.
6397Files: src/term.c
6398
6399Patch 7.1.267
Bram Moolenaarc236c162008-07-13 17:41:49 +00006400Problem: When changing folds cursor may be positioned in the wrong place.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006401Solution: Call changed_window_setting_win() instead of
6402 changed_window_setting().
6403Files: src/fold.c
6404
6405Patch 7.1.268
6406Problem: Always shows "+" at end of screen line with: ":set
6407 listchars=eol:$,extends:+ nowrap list cursorline" (Gary Johnson)
6408Solution: Check for lcs_eol_one instead of lcs_eol.
6409Files: src/screen.c
6410
6411Patch 7.1.269
6412Problem: The matchparen plugin has an arbitrary limit for the number of
6413 lines to look for a match.
6414Solution: Rely on the searchpair() timeout.
6415Files: runtime/plugin/matchparen.vim
6416
6417Patch 7.1.270
6418Problem: ":?foo?" matches in current line since patch 7.1.025. (A.Politz)
6419Solution: Remove the SEARCH_START flag.
6420Files: src/ex_docmd.c, src/search.c
6421
6422Patch 7.1.271
6423Problem: In a Vim build without autocommands, checking a file that was
6424 changed externally causes the current buffer to be changed
6425 unexpectedly. (Karsten Hopp)
6426Solution: Store "curbuf" instead of "buf".
6427Files: src/fileio.c
6428
6429Patch 7.1.272
6430Problem: The special buffer name [Location List] is not used for a buffer
6431 displayed in another tab page.
6432Solution: Use FOR_ALL_TAB_WINDOWS instead of FOR_ALL_WINDOWS. (Hiroaki
6433 Nishihara)
6434Files: src/buffer.c
6435
6436Patch 7.1.273
6437Problem: When profiling on Linux Vim exits early. (Liu Yubao)
6438Solution: When profiling don't exit on SIGPROF.
6439Files: src/Makefile, src/os_unix.c
6440
6441Patch 7.1.274 (after 7.1.272)
6442Problem: Compiler warning for optimized build.
6443Solution: Init win to NULL.
6444Files: src/buffer.c
6445
6446Patch 7.1.275 (extra)
6447Problem: Mac: ATSUI and 'antialias' don't work properly together.
6448Solution: Fix this and the input method. (Jjgod Jiang)
6449Files: src/vim.h, src/gui_mac.c
6450
6451Patch 7.1.276
6452Problem: "gw" uses 'formatexpr', even though the docs say it doesn't.
6453Solution: Don't use 'formatexpr' for "gw".
6454Files: src/vim.h, src/edit.c, src/ops.c, src/proto/ops.pro
6455
6456Patch 7.1.277
6457Problem: Default for 'paragraphs' misses some items (Colin Watson)
6458Solution: Add TP, HP, Pp, Lp and It to 'paragraphs'. (James Vega)
6459Files: runtime/doc/options.txt, src/option.c
6460
6461Patch 7.1.278 (extra, after 7.1.275)
6462Problem: Build failure when USE_CARBONKEYHANDLER is not defined.
6463Solution: Remove #ifdef.
6464Files: src/gui_mac.c
6465
6466Patch 7.1.279
6467Problem: When using cscope temporary files are left behind.
6468Solution: Send the quit command to cscope and give it two seconds to exit
6469 nicely before killing it. (partly by Dominique Pelle)
6470Files: src/if_cscope.c
6471
6472Patch 7.1.280 (after 7.1.275)
6473Problem: Mac: build problems when not using multibyte feature. (Nicholas
6474 Stallard)
6475Solution: Don't define USE_IM_CONTROL when not using multibyte.
6476Files: src/vim.h
6477
6478Patch 7.1.281 (after 7.1.279)
6479Problem: sa.sa_mask is not initialized. Cscope may not exit.
6480Solution: Use sigemptyset(). Use SIGKILL instead of SIGTERM. (Dominique
6481 Pelle)
6482Files: src/if_cscope.c
6483
6484Patch 7.1.282 (extra)
6485Problem: Win64: Edit with Vim context menu isn't installed correctly.
6486 Compiler warnings and a few other things.
6487Solution: Add [ and ] to entry of class name. Use UINT_PTR instead of UINT.
Bram Moolenaar34401cc2014-08-29 15:12:19 +02006488 And fixes for other things. (George V. Reilly)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006489Files: src/GvimExt/Makefile, src/dosinst.c, src/if_ole.cpp, src/if_ole.h,
6490 src/if_ole.idl, src/INSTALLpc.txt, src/Make_mvc.mak,
6491 src/os_win32.c,
6492
6493Patch 7.1.283
6494Problem: Non-extra part for 7.1.282.
6495Solution: Various changes.
6496Files: src/ex_docmd.c, src/globals.h, src/if_cscope.c, src/main.c,
6497 src/mark.c, src/netbeans.c, src/popupmnu.c, src/vim.h,
6498 src/window.c
6499
6500Patch 7.1.284
6501Problem: Compiler warnings for functions without prototype.
6502Solution: Add the function prototypes. (Patrick Texier)
6503Files: src/eval.c, src/quickfix.c
6504
6505Patch 7.1.285 (extra)
6506Problem: Mac: dialog hotkeys don't work.
6507Solution: Add hotkey support. (Dan Sandler)
6508Files: src/gui_mac.c
6509
6510Patch 7.1.286 (after 7.1.103)
6511Problem: "w" at the end of the buffer moves the cursor past the end of the
6512 line. (Markus Heidelberg)
6513Solution: Move the cursor back from the NUL when it was moved forward.
6514Files: src/normal.c
6515
6516Patch 7.1.287
6517Problem: Crash when reversing a list after using it. (Andy Wokula)
6518Solution: Update the pointer to the last used element. (Dominique Pelle)
6519Files: src/eval.c
6520
6521Patch 7.1.288 (after 7.1.281)
6522Problem: Cscope still leaves behind temp files when using gvim.
6523Solution: When getting the ECHILD error loop for a while until cscope exits.
6524 (Dominique Pelle)
6525Files: if_cscope.c
6526
6527Patch 7.1.289
6528Problem: When EXITFREE is defined and 'acd' is set freed memory is used.
6529 (Dominique Pelle)
6530Solution: Reset p_acd before freeing all buffers.
6531Files: src/misc2.c
6532
6533Patch 7.1.290
6534Problem: Reading bytes that were not written when spell checking and a line
6535 has a very large indent.
6536Solution: Don't copy the start of the next line when it only contains
6537 spaces. (Dominique Pelle)
6538Files: src/spell.c
6539
6540Patch 7.1.291 (after 7.1.288)
6541Problem: Compiler warning.
6542Solution: Change 50 to 50L.
6543Files: src/if_cscope.c
6544
6545Patch 7.1.292
6546Problem: When using a pattern with "\@<=" the submatches can be wrong.
6547 (Brett Stahlman)
6548Solution: Save the submatches when attempting a look-behind match.
6549Files: src/regexp.c
6550
6551Patch 7.1.293
6552Problem: Spell checking considers super- and subscript characters as word
6553 characters.
6554Solution: Recognize the Unicode super and subscript characters.
6555Files: src/spell.c
6556
6557Patch 7.1.294
6558Problem: Leaking memory when executing a shell command.
6559Solution: Free memory when not able to save for undo. (Dominique Pelle)
6560Files: src/ex_cmds.c
6561
6562Patch 7.1.295
6563Problem: Vimtutor only works with vim, not gvim.
6564Solution: Add the -g flag to vimtutor. (Dominique Pelle) Add gvimtutor.
6565Files: src/Makefile, src/gvimtutor, src/vimtutor, runtime/doc/vimtutor.1
6566
6567Patch 7.1.296
6568Problem: SELinux is not supported.
6569Solution: Detect the selinux library and use mch_copy_sec(). (James Vega)
6570Files: src/auto/configure, src/config.h.in, src/configure.in,
6571 src/fileio.c, src/memfile.c, src/os_unix.c, src/proto/os_unix.pro
6572
6573Patch 7.1.297
6574Problem: When using the search/replace dialog the parenmatch highlighting
6575 can be wrong. (Tim Duncan)
6576Solution: In the GUI redraw function invoke the CursorMoved autocmd.
6577Files: src/gui.c
6578
6579Patch 7.1.298 (after 7.1.295)
6580Problem: src/gvimtutor is not distributed.
6581Solution: Add it to the list of distributed files.
6582Files: Filelist
6583
6584Patch 7.1.299
6585Problem: Filetype detection doesn't work properly for file names ending in
6586 a part that is ignored and contain a space or other special
6587 characters.
6588Solution: Escape the special characters using the new fnameescape function.
6589Files: runtime/doc/eval.txt, runtime/filetype.vim, src/eval.c,
6590 src/ex_getln.c, src/proto/ex_getln.pro, src/vim.h
6591
6592Patch 7.1.300
6593Problem: Value of asmsyntax argument isn't checked for valid characters.
6594Solution: Only accepts letters and digits.
6595Files: runtime/filetype.vim
6596
6597Patch 7.1.301
6598Problem: When the "File/Save" menu is used in Insert mode, a tab page label
6599 is not updated to remove the "+".
6600Solution: Call draw_tabline() from showruler(). (Bjorn Winckler)
6601Files: src/screen.c
6602
6603Patch 7.1.302 (after 7.1.299)
6604Problem: Compilation error on MS-Windows.
6605Solution: Don't use xp_shell when it's not defined.
6606Files: src/ex_getln.c
6607
6608Patch 7.1.303 (after 7.1.302)
6609Problem: Compilation error on MS-Windows, again.
6610Solution: Declare p.
6611Files: src/ex_getln.c
6612
6613Patch 7.1.304
6614Problem: Shortpath_for_invalid_fname() does not work correctly and is
6615 unnecessary complex.
6616Solution: Clean up shortpath_for_invalid_fname(). (mostly by Yegappan
6617 Lakshmanan)
6618Files: src/eval.c
6619
6620Patch 7.1.305
6621Problem: Editing a compressed file with special characters in the name
6622 doesn't work properly.
6623Solution: Escape special characters.
6624Files: runtime/autoload/gzip.vim
6625
6626Patch 7.1.306
6627Problem: Some Unicode characters are handled like word characters while
6628 they are symbols.
6629Solution: Adjust the table for Unicode classification.
6630Files: src/mbyte.c
6631
6632Patch 7.1.307
6633Problem: Many warnings when compiling with Python 2.5.
6634Solution: Use ssize_t instead of int for some types. (James Vega)
6635Files: src/if_python.c
6636
6637Patch 7.1.308
6638Problem: When in readonly mode ":options" produces an error.
6639Solution: Reset 'readonly'. (Gary Johnson)
6640Files: runtime/optwin.vim
6641
6642Patch 7.1.309
6643Problem: Installing and testing with a shadow directory doesn't work.
6644 (James Vega)
6645Solution: Add "po" to the list of directories to link. Also link the Vim
6646 scripts in testdir. And a few more small fixes.
6647Files: src/Makefile
6648
6649Patch 7.1.310
6650Problem: Incomplete utf-8 byte sequence at end of the file is not detected.
6651 Accessing memory that wasn't written.
6652Solution: Check the last bytes in the buffer for being a valid utf-8
6653 character. (mostly by Ben Schmidt)
6654 Also fix that the reported line number of the error was wrong.
6655Files: src/fileio.c
6656
6657Patch 7.1.311
6658Problem: Compiler warning for missing sentinel in X code.
6659Solution: Change 0 to NULL. (Markus Heidelberg)
6660Files: src/mbyte.c
6661
6662Patch 7.1.312
6663Problem: The .po files have mistakes in error numbers.
6664Solution: Search for these mistakes in the check script. (Dominique Pelle)
6665Files: src/po/check.vim
6666
6667Patch 7.1.313
6668Problem: When the netbeans interface setModified call is used the status
6669 lines and window title are not updated.
6670Solution: Redraw the status lines and title. (Philippe Fremy)
6671Files: src/netbeans.c
6672
6673Patch 7.1.314
6674Problem: The value of 'pastetoggle' is written to the session file without
6675 any escaping. (Randall Hansen)
6676Solution: Use put_escstr(). (Ben Schmidt)
6677Files: src/option.c
6678
6679Patch 7.1.315
6680Problem: Crash with specific search pattern using look-behind match.
6681 (Andreas Politz)
6682Solution: Also save the value of "need_clear_subexpr".
6683Files: src/regexp.c
6684
6685Patch 7.1.316
6686Problem: When 'cscopetag' is set ":tag" gives an error message instead of
6687 going to the next tag in the tag stack.
6688Solution: Don't call do_cstag() when there is no argument. (Mark Goldman)
6689Files: src/ex_docmd.c
6690
6691Patch 7.1.317
6692Problem: Compiler warnings in Motif calls.
6693Solution: Change zero to NULL. (Dominique Pelle)
6694Files: src/gui_motif.c
6695
6696Patch 7.1.318
6697Problem: Memory leak when closing xsmp connection. Crash on exit when
6698 using Lesstif.
6699Solution: Don't close the X display to work around a Lesstif bug. Free
6700 clientid. Also fix a leak for Motif and Athena. (Dominique Pelle)
6701Files: src/gui_x11.c, src/os_unix.c
6702
6703Patch 7.1.319
6704Problem: When a register has an illegal utf-8 sequence, pasting it on the
6705 command line causes an illegal memory access.
6706Solution: Use mb_cptr2char_adv(). (Dominique Pelle)
6707Files: src/ex_getln.c
6708
6709Patch 7.1.320 (extra)
6710Problem: Win64: Warnings while compiling Python interface.
6711Solution: Use PyInt in more places. Also update version message for the
6712 console. (George Reilly)
6713Files: src/if_python.c, src/version.c
6714
6715Patch 7.1.321 (extra)
6716Problem: Win32 / Win64: Install file is outdated.
6717Solution: Update the text for recent compiler. (George Reilly)
6718Files: src/INSTALLpc.txt
6719
6720Patch 7.1.322
6721Problem: Can't get start of Visual area in an <expr> mapping.
6722Solution: Add the 'v' argument to getpos().
6723Files: runtime/doc/eval.txt, src/eval.c
6724
6725Patch 7.1.323
Bram Moolenaarc236c162008-07-13 17:41:49 +00006726Problem: Test 19 fails with some termcaps. (Dominique Pelle)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006727Solution: Set the t_kb and t_kD termcap values.
6728Files: src/testdir/test19.in, src/testdir/test38.in
6729
6730Patch 7.1.324
6731Problem: File name path length on Unix is limited to 1024.
6732Solution: Use PATH_MAX when it's more than 1000.
6733Files: src/os_unix.h
6734
6735Patch 7.1.325
6736Problem: When editing a command line that's longer than available space in
6737 the window, the characters at the end are in reverse order.
6738Solution: Increment the insert position even when the command line doesn't
6739 fit. (Ingo Karkat)
6740Files: src/ex_getln.c
6741
6742Patch 7.1.326
6743Problem: ":s!from!to!" works, but ":smagic!from!to!" doesn't. It sees the
Bram Moolenaar996343d2010-07-04 22:20:21 +02006744 "!" as a flag to the command. Same for ":snomagic". (Johan Spetz)
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006745Solution: When checking for a forced command also ignore ":smagic" and
6746 ":snomagic". (Ian Kelling)
6747Files: src/ex_docmd.c
6748
6749Patch 7.1.327
6750Problem: The GUI tutor is installed when there is no GUI version.
6751Solution: Only install gvimtutor when building a GUI version.
6752Files: src/Makefile
6753
6754Patch 7.1.328
6755Problem: Crash when using Cygwin and non-posix path name in tags file.
6756Solution: Use separate buffer for posix path. (Ben Schmidt)
6757Files: src/os_unix.c
6758
6759Patch 7.1.329
Bram Moolenaar3d1cde82020-08-15 18:55:18 +02006760Problem: When the popup menu is removed a column of cells, the right half
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006761 of double-wide characters, may not be redrawn.
Bram Moolenaar3d1cde82020-08-15 18:55:18 +02006762Solution: Check if the right half of a character needs to be redrawn.
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006763 (Yukihiro Nakadaira)
6764Files: src/screen.c
6765
6766Patch 7.1.330
6767Problem: Reading uninitialized memory when using Del in replace mode.
6768Solution: Use utfc_ptr2len_len() instead of mb_ptr2len(). (Dominique Pelle)
6769Files: src/misc1.c
6770
6771
6772Warning for missing sentinel in gui_xmldlg.c. (Dominique Pelle)
6773
Bram Moolenaar207f0092020-08-30 17:20:20 +02006774A search offset from the end of a match didn't work properly for multibyte
Bram Moolenaar8c8de832008-06-24 22:58:06 +00006775characters. (Yukihiro Nakadaira)
6776
6777When displaying the value of 'key' don't show "*****" when the value is empty.
6778(Ben Schmidt)
6779
6780Internal error when compiled with EXITFREE and using the nerd_tree plugin.
6781Set last_msg_hist to NULL when history becomes empty. Call
6782free_all_functions() after garbage collection. (Dominique Pelle)
6783
6784GTK with XIM: <S-Space> does not work. (Yukihiro Nakadaira)
6785
6786Some shells do not support "echo -n", which breaks glob(). Use "echo" instead
6787of "echo -n $1; echo". (Gary Johnson)
6788
6789"echo 22,44" printed "22" on top of the command, the error messages caused
6790the rest not to be cleared. Added the need_clr_eos flag.
6791
6792Netbeans events are handled while updating the screen, causing a crash.
6793Change the moment when events are handled. Rename nb_parse_messages() to
6794netbeans_parse_messages(). (Xavier de Gaye)
6795
6796Test 11 was broken after patch 7.1.186 on Win32 console. (Daniel Shahaf)
6797Use shellescape() on the file name.
6798
6799IM was turned off in im_preedit_end_cb() for no good reason. (Takuhiro
6800Nishioka)
6801
6802A corrupted spell file could cause Vim to use lots of memory. Better
6803detection for running into the end of the file. (idea from James Vega)
6804
6805Mac: Included a patch to make it build with GTK. Moved language init to
6806mac_lang_init() function. (Ben Schmidt)
6807
6808Problem with 'wildmenu' after ":lcd", up/down arrows don't work. (Erik Falor)
6809
6810Fix configure.in to avoid "implicitly declared" warnings when running
6811configure.
6812
6813Fixed a memory leak when redefining a keymap. (Dominique Pelle)
6814
6815Setting 'pastetoggle' to "jj" didn't work.
6816
6817'ic' and 'smartcase' don't work properly when using \%V in a search pattern.
6818(Kana Natsuno)
Bram Moolenaarb2a460d2007-05-12 15:16:37 +00006819
Bram Moolenaarc236c162008-07-13 17:41:49 +00006820Patch 7.2a.001
6821Problem: On some systems X11/Xlib.h exists (from X11-dev package) but
6822 X11/Intrinsic.h does not (in Xt-dev package). This breaks the
6823 build. Also, on Solaris 9 sys/ptem.h isn't found.
6824Solution: Have configure only accept X11 when X11/Intrinsic.h exists.
6825 Check for sys/ptem.h while including sys/stream.h. (Vladimir
6826 Marek)
6827Files: src/auto/configure, src/configure.in
6828
6829Patch 7.2a.002
6830Problem: getbufvar(N, "") gets the dictionary of the current buffer instead
6831 of buffer N.
6832Solution: Set curbuf before calling find_var_in_ht(). (Kana Natsuno)
6833Files: src/eval.c
6834
6835Patch 7.2a.003
6836Problem: Leaking memory when using ":file name" and using access control
6837 lists.
6838Solution: Invoke mch_free_acl() in vim_rename(). (Dominique Pelle)
6839Files: src/fileio.c
6840
6841Patch 7.2a.004
6842Problem: Some systems can't get spell files by ftp.
6843Solution: Use http when it looks like it's possible. (James Vega)
6844Files: runtime/autoload/spellfile.vim
6845
6846Patch 7.2a.005
6847Problem: A few error messages use confusing names. Misspelling.
6848Solution: Change "dissallows" to "disallows". (Dominique Pelle) Change
6849 "number" to "Number".
6850Files: src/eval.c, src/fileio.c
6851
6852Patch 7.2a.006
6853Problem: Reading past NUL in a string.
6854Solution: Check for invalid utf-8 byte sequence. (Dominique Pelle)
6855Files: src/charset.c
6856
6857Patch 7.2a.007
6858Problem: ":let v = 1.2.3" was OK in Vim 7.1, now it gives an error.
6859Solution: Don't look for a floating point number after the "." operator.
6860Files: src/eval.c
6861
6862Patch 7.2a.008
6863Problem: printf("%g", 1) doesn't work.
6864Solution: Convert Number to Float when needed.
6865Files: src/message.c
6866
6867Patch 7.2a.009
6868Problem: cygwin_conv_to_posix_path() does not specify buffer size.
6869Solution: Use new Cygwin function: cygwin_conv_path(). (Corinna Vinschen)
6870Files: src/main.c, src/os_unix.c
6871
6872Patch 7.2a.010
6873Problem: When a file name has an illegal byte sequence Vim may read
6874 uninitialised memory.
6875Solution: Don't use UTF_COMPOSINGLIKE() on an illegal byte. In
6876 msg_outtrans_len_attr() use char2cells() instead of ptr2cells().
6877 In utf_ptr2char() don't check second byte when first byte is
Bram Moolenaare37d50a2008-08-06 17:06:04 +00006878 illegal. (Dominique Pelle)
Bram Moolenaarc236c162008-07-13 17:41:49 +00006879Files: src/mbyte.c, src/message.c
6880
6881Patch 7.2a.011
6882Problem: The Edit/Startup Settings menu doesn't work.
6883Solution: Expand environment variables. (Ben Schmidt)
6884Files: runtime/menu.vim
6885
6886Patch 7.2a.012
6887Problem: Compiler warnings for casting int to pointer.
6888Solution: Add cast to long in between. (Martin Toft)
6889Files: src/gui_gtk_x11.c
6890
6891Patch 7.2a.013
6892Problem: shellescape() does not escape "%" and "#" characters.
6893Solution: Add find_cmdline_var() and use it when the second argument to
6894 shellescape() is non-zero.
6895Files: runtime/doc/eval.txt, src/eval.c, src/ex_docmd.c,
6896 src/proto/ex_docmd.pro, src/proto/misc2.pro, src/misc2.c
6897
6898Patch 7.2a.014
6899Problem: Problem with % in message.
6900Solution: Put % in single quotes.
6901Files: src/eval.c
6902
6903Patch 7.2a.015 (after 7.2a.010)
6904Problem: Misaligned messages.
6905Solution: Compute length of unprintable chars correctly.
6906Files: src/message.c
6907
6908Patch 7.2a.016
6909Problem: Using CTRL-W v in the quickfix window results in two quickfix
6910 windows, which is not allowed. ":tab split" should be allowed to
6911 open a new quickfix window in another tab.
6912Solution: For CTRL-W v instead of splitting the window open a new one.
6913 When using ":tab" do allow splitting the quickfix window (was
6914 already included in patch 7.2a.013).
6915Files: src/window.c
6916
6917Patch 7.2a.017
6918Problem: ":doautoall" executes autocommands for all buffers instead of just
6919 for loaded buffers.
6920Solution: Change "curbuf" to "buf".
6921Files: src/fileio.c
6922
6923Patch 7.2a.018
6924Problem: Compiler warnings when compiling with Gnome. (Tony Mechelynck)
6925Solution: Add type casts.
6926Files: src/gui_gtk_x11.c
6927
6928Patch 7.2a.019
6929Problem: ":let &g:tw = 44" sets the local option value. (Cyril Slobin)
6930Solution: Use get_varp_scope() instead of get_varp(). (Ian Kelling)
6931Files: src/option.c
6932
6933There is no way to avoid adding /usr/local/{include|lib} to the build
6934commands. Add the --with-local-dir argument to configure. (Michael
6935Haubenwallner)
6936
6937When using CTRL-D after ":help", the number of matches could be thousands.
6938Restrict to TAG_MANY to avoid this taking too long. (Ian Kelling)
6939
6940The popup menu could be placed at a weird location. Caused by w_wcol computed
6941by curs_columns(). (Dominique Pelle)
6942
6943Overlapping STRCPY() arguments when using %r item in 'errorformat'. Use
6944STRMOVE() instead. (Ralf Wildenhues)
6945
6946Mac: On Leopard gvim, when using the mouse wheel nothing would happen until
Bram Moolenaare37d50a2008-08-06 17:06:04 +00006947another event occurs, such as moving the mouse. Then the recorded scrolling
Bram Moolenaarc236c162008-07-13 17:41:49 +00006948would take place all at once. (Eckehard Berns)
6949
6950Solution for cursor color not reflecting IM status for GTK 2. Add
6951preedit_is_active flag. (SungHyun Nam)
6952
6953filereadable() can hang on a FIFO on Linux. Use open() instead of fopen(),
6954with O_NONBLOCK. (suggested by Lars Kotthoff)
6955
6956Included patch to support Perl 5.10. (Yasuhiro Matsumoto)
6957
6958When files are dropped on gvim while the screen is being updated, ignore the
6959drop command to avoid freeing memory that is being used.
6960
6961In a terminal, when drawing the popup menu over double-wide characters, half
6962characters may not be cleared properly. (Yukihiro Nakadaira)
6963
6964The #ifdef for including "vimio.h" was inconsistent. In a few files it
6965depended on MSWIN, which isn't defined until later.
6966
Bram Moolenaare37d50a2008-08-06 17:06:04 +00006967Patch 7.2b.001
Bram Moolenaar207f0092020-08-30 17:20:20 +02006968Problem: Compilation problem: mb_fix_col() missing with multibyte feature
Bram Moolenaare37d50a2008-08-06 17:06:04 +00006969 but without GUI or clipboard.
6970Solution: Remove #ifdef.
6971Files: src/mbyte.c
6972
6973Patch 7.2b.002
6974Problem: Compiler warnings for signed/unsigned mismatch.
6975Solution: Add type casts.
6976Files: src/screen.c
6977
6978Patch 7.2b.003
6979Problem: Still a compilation problem, check_col() and check_row() missing.
6980Solution: Add FEAT_MBYTE to the #if.
6981Files: src/ui.c
6982
6983Patch 7.2b.004
6984Problem: Trying to free memory for a static string when using ":helpgrep".
6985 (George Reilly)
6986Solution: Set 'cpo' to empty_option instead of an empty string. Also for
6987 searchpair() and substitute().
6988Files: src/quickfix.c, src/eval.c
6989
6990Patch 7.2b.005
6991Problem: The special character "!" isn't handled properly in shellescape().
6992 (Jan Minar)
6993Solution: Escape "!" when using a "csh" like shell and with
6994 shellescape(s, 1). Twice for both. Also escape <NL>.
6995Files: src/misc2.c
6996
6997Patch 7.2b.006
6998Problem: Reading past end of string when reading info from tags line.
6999Solution: Break the loop when encountering a NUL. (Dominique Pelle)
7000Files: src/tag.c
7001
7002Patch 7.2b.007
7003Problem: Part of a message cannot be translated.
7004Solution: Put _() around the message.
7005Files: src/search.c
7006
7007Patch 7.2b.008
7008Problem: A few filetypes are not detected or not detected properly.
7009Solution: Add filetype detection patterns. (Nikolai Weibull)
7010Files: runtime/filetype.vim
7011
7012Patch 7.2b.009
7013Problem: Reading past end of screen line. (Epicurus)
7014Solution: Avoid going past the value of Columns.
7015Files: src/screen.c
7016
7017Patch 7.2b.010
7018Problem: ":mksession" doesn't work for ":map , foo", ":sunmap ,". (Ethan
7019 Mallove)
7020Solution: Check for "nxo", "nso" and other strange mapping combinations.
7021Files: src/getchar.c
7022
7023Patch 7.2b.011
7024Problem: Configure for TCL ends up with include file in compiler command.
7025 (Richard Hogg)
7026Solution: Delete items from $TCL_DEFS that do not start with a dash.
7027Files: src/auto/configure, src/configure.in
7028
7029Patch 7.2b.012
7030Problem: Build failure with +multi_byte but without +diff.
7031Solution: Add #ifdef. (Patrick Texier)
7032Files: src/main.c
7033
7034Patch 7.2b.013
7035Problem: Build fails with tiny features and Perl. (Dominique Pelle)
7036Solution: Define missing functions. Also when compiling Python.
7037Files: src/if_perl.xs, src/if_python.c
7038
7039Patch 7.2b.014
7040Problem: Configure uses an unsafe temp file to store commands.
7041Solution: Create the temp file in local directory.
7042Files: src/auto/configure, src/configure.in
7043
7044Patch 7.2b.015
7045Problem: Build fails on Mac when using Aap.
7046Solution: Fix typo in configure script.
7047Files: src/auto/configure, src/configure.in
7048
7049Patch 7.2b.016
7050Problem: Build fails with normal features but without +autocmd.
7051Solution: Fix #ifdefs. (Ian Kelling)
7052Files: src/eval.c, src/ex_cmds.c, src/quickfix.c, src/option.c,
7053 src/ex_docmd.c
7054
7055Patch 7.2b.017
7056Problem: "vim -O foo foo" results in only one window. (Zdenek Sekera)
7057Solution: Handle result of ATTENTION prompt properly. (Ian Kelling)
7058Files: src/main.c
7059
7060Patch 7.2b.018
7061Problem: When doing command line completion on a file name for a csh-like
7062 shell argument a '!' character isn't escaped properly.
7063Solution: Add another backslash.
7064Files: src/ex_getln.c, src/misc2.c, src/proto/misc2.pro, src/screen.c
7065
7066Patch 7.2b.019 (extra)
7067Problem: Win32: Various compiler warnings.
7068Solution: Use __w64 attribute. Comment-out unused parameters. Adjust a few
7069 #ifdefs. (George Reilly)
7070Files: src/gui_w48.c, src/GvimExt/gvimext.cpp, src/Make_mvc.mak,
7071 src/os_mswin.c, src/os_win32.c, src/vim.h
7072
7073Patch 7.2b.020
7074Problem: ":sort n" doesn't handle negative numbers. (James Vega)
7075Solution: Include '-' in the number.
7076Files: src/charset.c, src/ex_cmds.c
7077
7078Patch 7.2b.021
7079Problem: Reloading doesn't read the BOM correctly. (Steve Gardner)
7080Solution: Accept utf-8 BOM when specified file encoding is utf-8.
7081Files: src/fileio.c
7082
7083Patch 7.2b.022
7084Problem: When using ":normal" while updating the status line the count of
7085 an operator is lost. (Dominique Pelle)
7086Solution: Save and restore "opcount".
7087Files: src/ex_docmd.c, src/globals.h, src/normal.c
7088
7089Patch 7.2b.023
7090Problem: Crash when using the result of synstack(0,0). (Matt Wozniski)
7091Solution: Check for v_list to be NULL in a few more places.
7092Files: src/eval.c
7093
7094Patch 7.2b.024
7095Problem: Using ":gui" while the netrw plugin is active causes a delay in
7096 updating the display.
7097Solution: Don't check for terminal codes when starting the GUI.
7098Files: src/term.c
7099
7100Patch 7.2b.025
7101Problem: When the CursorHold event triggers a pending count is lost.
7102 (Juergen Kraemer)
7103Solution: Save the counts and restore them.
7104Files: src/normal.c, src/structs.h
7105
7106Patch 7.2b.026
7107Problem: The GTK 2 file chooser causes the ~/.recently-used.xbel file to be
7108 written over and over again. This may cause a significant
7109 slowdown. (Guido Berhoerster)
7110Solution: Don't use the GTK 2 file chooser.
7111Files: src/gui_gtk.c
7112
7113Patch 7.2b.027
7114Problem: Memory leak for Python, Perl, etc. script command with end marker.
7115Solution: Free the memory of the end marker. (Andy Kittner)
7116Files: src/ex_getln.c
7117
7118Patch 7.2b.028
7119Problem: Reading uninitialized memory when doing ":gui -f". (Dominique
7120 Pelle)
7121Solution: Don't position the cursor when the screen size is invalid.
7122Files: src/gui.c
7123
7124Patch 7.2b.029
7125Problem: ":help a" doesn't jump to "a" tag in docs. (Tony Mechelynck)
7126Solution: Get all tags and throw away more than TAG_MANY after sorting.
7127 When there is no argument find matches for "help" to avoid a long
7128 delay.
7129Files: src/ex_cmds.c, src/ex_getln.c
7130
7131Patch 7.2b.030
7132Problem: When changing the value of t_Co from 8 to 16 the Visual
7133 highlighting keeps both reverse and a background color.
7134Solution: Remove the attribute when setting the default highlight color.
7135 (Markus Heidelberg)
7136Files: src/syntax.c
7137
7138Error when cancelling completion menu and auto-formatting. (fixed by Ian
7139Kelling)
7140
Bram Moolenaared39e1d2008-08-09 17:55:22 +00007141Patch 7.2c.001
7142Problem: ":let x=[''] | let x += x" causes hang. (Matt Wozniski)
7143Solution: Only insert elements up to the original length of the List.
7144Files: runtime/doc/eval.txt, src/eval.c
7145
7146Patch 7.2c.002
7147Problem: fnameescape() doesn't handle a leading '+' or '>'. (Jan Minar)
7148Solution: Escape a leading '+' and '>'. And a single '-'.
7149Files: runtime/doc/eval.txt, src/ex_getln.c
7150
7151Patch 7.2c.003
7152Problem: Searching for "foo\%[bar]\+" gives a "Corrupted regexp program"
7153 error. (Joachim Hofmann)
7154Solution: Mark the \%[] item as not being simple.
7155Files: src/regexp.c
7156
7157On Vista access to system directories is virtualized. (Michael Mutschler)
7158Adjusted the manifest file to avoid this. (George Reilly)
7159
7160Memory leak when using CTRL-C to cancel listing the jump list. (Dominique
7161Pelle)
7162
7163Mac: Could not build with Perl interface.
7164
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007165==============================================================================
Bram Moolenaar7a329912010-05-21 12:05:36 +02007166VERSION 7.3 *version-7.3* *version7.3*
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007167
7168This section is about improvements made between version 7.2 and 7.3.
7169
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007170This release has hundreds of bug fixes and there are a few new features. The
7171most notable new features are:
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007172
7173
7174Persistent undo *new-persistent-undo*
7175---------------
7176
7177Store undo information in a file. Can undo to before when the file was read,
7178also for unloaded buffers. See |undo-persistence| (partly by Jordan Lewis)
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007179
7180Added the ":earlier 1f" and ":later 1f" commands.
7181Added file save counter to undo information.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007182Added the |undotree()| and |undofile()| functions.
7183
Bram Moolenaar59f931e2010-07-24 20:27:03 +02007184Also added the 'undoreload' option. This makes it possible to save the
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007185current text when reloading the buffer, so that the reload can be undone.
Bram Moolenaar59f931e2010-07-24 20:27:03 +02007186
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007187
7188More encryption *new-more-encryption*
7189---------------
7190
7191Support for Blowfish encryption. Added the 'cryptmethod' option.
Bram Moolenaar36782082013-11-28 13:53:34 +01007192Mostly by Mohsin Ahmed.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007193
7194Also encrypt the text in the swap file and the undo file.
7195
7196
7197Conceal text *new-conceal*
7198------------
7199
7200Added the |+conceal| feature. (Vince Negri)
7201This allows hiding stretches of text, based on syntax highlighting.
7202It also allows replacing a stretch of text by a character |:syn-cchar|.
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007203The 'conceallevel' option specifies what happens with text matching a syntax
7204item that has the conceal attribute.
7205The 'concealcursor' option specifies what happens in the cursor line.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007206
7207The help files conceal characters used to mark tags and examples.
7208
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007209Added the |synconcealed()| function and use it for :TOhtml. (Benjamin Fritz)
7210
Bram Moolenaarabf39e82010-08-14 21:57:32 +02007211Added the 'cursorbind' option, keeps the cursor in two windows with the same
7212text in sync.
7213
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007214
7215Lua interface *new-lua*
7216-------------
7217
7218Added the |Lua| interface. (Luis Carvalho)
7219
7220
7221Python3 interface *new-python3*
7222-----------------
7223
7224Added the Python3 interface. It exists next to Python 2.x, both can be used
Bram Moolenaar755bd262010-08-14 17:46:20 +02007225at the same time. See |python3| (Roland Puntaier)
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007226
7227
7228Changed *changed-7.3*
7229-------
7230
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007231The MS-Windows installer no longer requires the user to type anything in the
7232console windows. The installer now also works on 64 bit systems, including
7233the "Edit with Vim" context menu.
7234The gvim executable is 32 bits, the installed gvimext.dll is either a 32 or 64
7235bit version. (mostly by George Reilly)
7236Made the DOS installer work with more compilers.
Bram Moolenaar69154f22010-07-18 21:42:34 +02007237The MS-Windows big gvim is now built with Python 2.7 and 3.1.2, Perl 5.12 and
Bram Moolenaar44886d92010-08-01 19:06:10 +02007238Ruby 1.9.1. You need the matching .dll files to use them.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007239
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007240The extra and language files are no longer distributed separately.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007241The source files for all systems are included in one distribution.
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007242
Bram Moolenaarfc2d5bd2010-05-15 17:06:53 +02007243After using ":recover" or recovering a file in another way, ":x" and "ZZ"
Bram Moolenaar44886d92010-08-01 19:06:10 +02007244didn't save what you see. This could result in work being lost. Now the text
Bram Moolenaarfc2d5bd2010-05-15 17:06:53 +02007245after recovery is compared to the original file contents. When they differ
7246the buffer is marked as modified.
7247
Bram Moolenaar0e1e25f2010-05-28 21:07:08 +02007248When Vim is exiting because of a deadly signal, when v:dying is 2 or more,
7249VimLeavePre, VimLeave, BufWinLeave and BufUnload autocommands are not
7250executed.
7251
Bram Moolenaarccd9ccf2010-07-07 13:19:55 +02007252Removed support for GTK 1. It was no longer maintained and required a lot of
7253#ifdefs in the source code. GTK 2 should be available for every system.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007254(James Vega)
Bram Moolenaarccd9ccf2010-07-07 13:19:55 +02007255
Bram Moolenaar0ba04292010-07-14 23:23:17 +02007256It is no longer allowed to set the 'encoding' option from a modeline. It
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007257would corrupt the text. (Patrick Texier)
7258
7259Renamed runtime/spell/fixdup to runtime/spell/fixdup.vim.
7260
7261Removed obsolete Mac code.
7262
7263Updated spell files for Ubuntu locale names.
7264
7265Switched from autoconf 2.63 to 2.65.
Bram Moolenaar0ba04292010-07-14 23:23:17 +02007266
Bram Moolenaar44886d92010-08-01 19:06:10 +02007267Removed Mupad indent and ftplugin files, they are not useful.
7268
Bram Moolenaarabf39e82010-08-14 21:57:32 +02007269The maximum number of messages remembered in the history is now 200 (was 100).
7270
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007271
7272Added *added-7.3*
7273-----
7274
Bram Moolenaar67c53842010-05-22 18:28:27 +02007275Added the 'relativenumber' option. (Markus Heidelberg)
7276
Bram Moolenaar0ba04292010-07-14 23:23:17 +02007277Added the 'colorcolumn' option: highlight one or more columns in a window.
7278E.g. to highlight the column after 'textwidth'. (partly by Gregor Uhlenheuer)
7279
Bram Moolenaarb26e6322010-05-22 21:34:09 +02007280Added support for NetBeans in a terminal. Added |:nbstart| and |:nbclose|.
7281(Xavier de Gaye)
Bram Moolenaar67c53842010-05-22 18:28:27 +02007282
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007283More floating point functions: |acos()|, |asin()|, |atan2()|, |cosh()|,
7284|exp()|, |fmod()|, |log()|, |sinh()|, |tan()|, |tanh()|. (Bill McCarthy)
Bram Moolenaar67c53842010-05-22 18:28:27 +02007285
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007286Added the |gettabvar()| and |settabvar()| functions. (Yegappan Lakshmanan)
Bram Moolenaar67c53842010-05-22 18:28:27 +02007287
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007288Added the |strchars()|, |strwidth()| and |strdisplaywidth()| functions.
7289
7290Support GDK_SUPER_MASK for GTK on Mac. (Stephan Schulz)
7291
Bram Moolenaar49771f42010-07-20 17:32:38 +02007292Made CTRL and ALT modifier work for mouse wheel. (Benjamin Haskell)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007293
Bram Moolenaar44886d92010-08-01 19:06:10 +02007294Added support for horizontal scroll wheel. (Bjorn Winckler)
7295
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007296When the buffer is in diff mode, have :TOhtml create HTML to show the diff
7297side-by-side. (Christian Brabandt)
7298
7299Various improvements to ":TOhtml" and the 2html.vim script. (Benjamin Fritz)
7300
7301Add the 'L' item to 'cinoptions'. (Manuel Konig)
7302
7303Improve Javascript indenting. Add "J" flag to 'cinoptions'. (Hari Kumar G)
7304
7305Mac: Support disabling antialias. (LC Mi)
7306
7307Mac: Add clipboard support in the Mac console. (Bjorn Winckler)
7308
7309Make it possible to drag a tab page label to another position. (Paul B. Mahol)
7310
7311Better implementation of creating the Color Scheme menu. (Juergen Kraemer)
7312
7313In Visual mode with 'showcmd' display the number of bytes and characters.
7314
Bram Moolenaar4421d6a2010-08-14 13:33:56 +02007315Allow synIDattr() getting GUI attributes when built without GUI. (Matt
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007316Wozniski)
7317
Bram Moolenaar5eba45c2010-08-08 21:15:53 +02007318Support completion for ":find". Added test 73. (Nazri Ramliy)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007319
Bram Moolenaar44886d92010-08-01 19:06:10 +02007320Command line completion for :ownsyntax and :setfiletype. (Dominique Pelle)
7321
7322Command line completion for :lmap and :lunmap.
7323
7324Support syntax and filetype completion for user commands. (Christian Brabandt)
7325
Bram Moolenaar44886d92010-08-01 19:06:10 +02007326Avoid use of the GTK main_loop() so that the GtkFileChooser can be used.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007327(James Vega)
7328
7329When 'formatexpr' evaluates to non-zero fall back to internal formatting, also
7330for "gq". (James Vega)
7331
7332Support :browse for commands that use an error file argument. (Lech Lorens)
7333
7334Support wide file names in gvimext. (Szabolcs Horvat)
7335
7336Improve test for joining lines. (Milan Vancura)
7337Make joining a range of lines much faster. (Milan Vancura)
7338
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007339Add patch to improve support of z/OS (OS/390). (Ralf Schandl)
7340
7341Added the helphelp.txt file. Moved text from various.txt to it.
7342
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007343Added "q" item for 'statusline'. Added |w:quickfix_title|. (Lech Lorens)
7344
Bram Moolenaar44886d92010-08-01 19:06:10 +02007345Various improvements for VMS. (Zoltan Arpadffy)
Bram Moolenaar6fc45b52010-07-25 17:42:45 +02007346
7347
Bram Moolenaar44886d92010-08-01 19:06:10 +02007348New syntax files: ~
Bram Moolenaar69154f22010-07-18 21:42:34 +02007349Haskell Cabal build file (Vincent Berthoux)
7350ChaiScript (Jason Turner)
7351Cucumber (Tim Pope)
Bram Moolenaar90df5502010-08-01 21:48:21 +02007352Datascript (Dominique Pelle)
Bram Moolenaar69154f22010-07-18 21:42:34 +02007353Fantom (Kamil Toman)
7354Liquid (Tim Pope)
7355Markdown (Tim Pope)
7356wavefront's obj file (Vincent Berthoux)
7357Perl 6 (Andy Lester)
7358SDC - Synopsys Design Constraints (Maurizio Tranchero)
7359SVG - Scalable Vector Graphics (Vincent Berthoux)
7360task data (John Florian)
7361task 42 edit (John Florian)
Bram Moolenaar06b5d512010-05-22 15:37:44 +02007362
Bram Moolenaar44886d92010-08-01 19:06:10 +02007363New filetype plugins: ~
Bram Moolenaar69154f22010-07-18 21:42:34 +02007364Cucumber (Tim Pope)
7365Liquid (Tim Pope)
Bram Moolenaar755bd262010-08-14 17:46:20 +02007366Logcheck (Debian)
Bram Moolenaar69154f22010-07-18 21:42:34 +02007367Markdown (Tim Pope)
Bram Moolenaar755bd262010-08-14 17:46:20 +02007368Perl 6 (Andy Lester)
7369Quickfix window (Lech Lorens)
Bram Moolenaar69154f22010-07-18 21:42:34 +02007370Tcl (Robert L Hicks)
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007371
Bram Moolenaar44886d92010-08-01 19:06:10 +02007372New indent plugins: ~
Bram Moolenaar755bd262010-08-14 17:46:20 +02007373CUDA (Bram Moolenaar)
Bram Moolenaar69154f22010-07-18 21:42:34 +02007374ChaiScript (Jason Turner)
7375Cucumber (Tim Pope)
Bram Moolenaar69154f22010-07-18 21:42:34 +02007376LifeLines (Patrick Texier)
7377Liquid (Tim Pope)
7378Mail (Bram Moolenaar)
7379Perl 6 (Andy Lester)
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007380
Bram Moolenaar44886d92010-08-01 19:06:10 +02007381Other new runtime files: ~
Bram Moolenaar69154f22010-07-18 21:42:34 +02007382Breton spell file (Dominique Pelle)
Bram Moolenaar755bd262010-08-14 17:46:20 +02007383Dvorak keymap (Ashish Shukla)
7384Korean translations. (SungHyun Nam)
7385Python 3 completion (Aaron Griffin)
7386Serbian menu translations (Aleksandar Jelenak)
7387Tetum spell files
Bram Moolenaar69154f22010-07-18 21:42:34 +02007388Tutor Bairish (Sepp Hell)
7389Tutor in Esperanto. (Dominique Pellé)
Bram Moolenaarabf39e82010-08-14 21:57:32 +02007390Tutor in Portuguese.
7391Norwegian Tutor now also available as tutor.nb
Bram Moolenaar755bd262010-08-14 17:46:20 +02007392
7393Removed the Mupad runtime files, they were not maintained.
Bram Moolenaar06b5d512010-05-22 15:37:44 +02007394
Bram Moolenaar00a927d2010-05-14 23:24:24 +02007395
7396Fixed *fixed-7.3*
7397-----
7398
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007399Patch 7.2.001
7400Problem: Mac: pseudo-ttys don't work properly on Leopard, resulting in the
7401 shell not to have a prompt, CTRL-C not working, etc.
7402Solution: Don't use SVR4 compatible ptys, even though they are detected.
7403 (Ben Schmidt)
7404Files: src/pty.c
7405
7406Patch 7.2.002
7407Problem: Leaking memory when displaying menus.
7408Solution: Free allocated memory. (Dominique Pelle)
7409Files: src/menu.c
7410
7411Patch 7.2.003
7412Problem: Typo in translated message. Message not translated.
7413Solution: Correct spelling. Add _(). (Dominique Pelle)
7414Files: src/spell.c, src/version.c
7415
7416Patch 7.2.004
7417Problem: Cscope help message is not translated.
7418Solution: Put it in _(). (Dominique Pelle)
7419Files: src/if_cscope.c, src/if_cscope.h
7420
7421Patch 7.2.005
7422Problem: A few problems when profiling. Using flag pointer instead of flag
7423 value. Allocating zero bytes. Not freeing used memory.
7424Solution: Remove wrong '&' characters. Skip dumping when there is nothing
7425 to dump. Free used memory. (Dominique Pelle)
7426Files: src/eval.c
7427
7428Patch 7.2.006
7429Problem: HTML files are not recognized by contents.
7430Solution: Add a rule to the scripts file. (Nico Weber)
7431Files: runtime/scripts.vim
7432
7433Patch 7.2.007 (extra)
7434Problem: Minor issues for VMS.
7435Solution: Minor fixes for VMS. Add float support. (Zoltan Arpadffy)
7436Files: runtime/doc/os_vms.txt, src/os_vms_conf.h, src/Make_vms.mms,
7437 src/testdir/Make_vms.mms, src/testdir/test30.in,
7438 src/testdir/test54.in
7439
7440Patch 7.2.008
7441Problem: With a BufHidden autocommand that invokes ":bunload" the window
7442 count for a buffer can be wrong. (Bob Hiestand)
7443Solution: Don't call enter_buffer() when already in that buffer.
7444Files: src/buffer.c
7445
7446Patch 7.2.009
7447Problem: Can't compile with Perl 5.10 on MS-Windows. (Cesar Romani)
7448Solution: Add the Perl_sv_free2 function for dynamic loading. (Dan Sharp)
7449Files: src/if_perl.xs
7450
7451Patch 7.2.010
7452Problem: When using "K" in Visual mode not all characters are properly
7453 escaped. (Ben Schmidt)
7454Solution: Use a function with the functionality of shellescape(). (Jan
7455 Minar)
7456Files: src/mbyte.c, src/misc2.c, src/normal.c
7457
7458Patch 7.2.011
7459Problem: Get an error when inserting a float value from the expression
7460 register.
7461Solution: Convert the Float to a String automatically in the same place
7462 where a List would be converted to a String.
7463Files: src/eval.c
7464
7465Patch 7.2.012
7466Problem: Compiler warnings when building with startup timing.
7467Solution: Add type casts.
7468Files: src/ex_cmds2.c
7469
7470Patch 7.2.013
7471Problem: While waiting for the X selection Vim consumes a lot of CPU time
7472 and hangs until a response is received.
7473Solution: Sleep a bit when the selection event hasn't been received yet.
7474 Time out after a couple of seconds to avoid a hang when the
7475 selection owner isn't responding.
7476Files: src/ui.c
7477
7478Patch 7.2.014
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02007479Problem: synstack() doesn't work in an empty line.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007480Solution: Accept column zero as a valid position.
7481Files: src/eval.c
7482
7483Patch 7.2.015
7484Problem: "make all test install" doesn't stop when the test fails. (Daniel
7485 Shahaf)
7486Solution: When test.log contains failures exit with non-zero status.
7487Files: src/testdir/Makefile
7488
7489Patch 7.2.016
7490Problem: The pattern being completed may be in freed memory when the
7491 command line is being reallocated. (Dominique Pelle)
7492Solution: Keep a pointer to the expand_T in the command line structure.
7493 Don't use <S-Tab> as CTRL-P when there are no results. Clear the
7494 completion when using a command line from the history.
7495Files: src/ex_getln.c
7496
7497Patch 7.2.017
7498Problem: strlen() used on text that may not end in a NUL. (Dominique Pelle)
7499 Pasting a very big selection doesn't work.
7500Solution: Use the length passed to the XtSelectionCallbackProc() function.
7501 After getting the SelectionNotify event continue dispatching
7502 events until the callback is actually called. Also dispatch the
7503 PropertyNotify event.
7504Files: src/ui.c
7505
7506Patch 7.2.018
7507Problem: Memory leak when substitute is aborted.
7508Solution: Free the buffer allocated for the new text. (Dominique Pelle)
7509Files: src/ex_cmds.c
7510
7511Patch 7.2.019
7512Problem: Completion of ":noautocmd" doesn't work and exists(":noautocmd")
7513 returns zero. (Ben Fritz)
7514Solution: Add "noautocmd" to the list of modifiers and commands.
7515Files: src/ex_cmds.h, src/ex_docmd.c
7516
7517Patch 7.2.020
7518Problem: Starting the GUI when the executable starts with 'k', but the KDE
7519 version no longer exists.
7520Solution: Don't have "kvim" start the GUI.
7521Files: src/main.c
7522
7523Patch 7.2.021
7524Problem: When executing autocommands getting the full file name may be
7525 slow. (David Kotchan)
7526Solution: Postpone calling FullName_save() until autocmd_fname is used.
7527Files: src/ex_docmd.c, src/fileio.c, src/globals.h
7528
7529Patch 7.2.022 (extra)
7530Problem: Testing is not possible when compiling with MingW.
7531Solution: Add a MingW specific test Makefile. (Bill McCarthy)
7532Files: Filelist, src/testdir/Make_ming.mak
7533
7534Patch 7.2.023
7535Problem: 'cursorcolumn' is in the wrong place in a closed fold when the
7536 display is shifted left. (Gary Johnson)
7537Solution: Subtract w_skipcol or w_leftcol when needed.
7538Files: src/screen.c
7539
7540Patch 7.2.024
7541Problem: It's possible to set 'history' to a negative value and that causes
7542 an out-of-memory error.
7543Solution: Check that 'history' has a positive value. (Doug Kearns)
7544Files: src/option.c
7545
7546Patch 7.2.025
7547Problem: When a CursorHold event invokes system() it is retriggered over
7548 and over again.
7549Solution: Don't reset did_cursorhold when getting K_IGNORE.
7550Files: src/normal.c
7551
7552Patch 7.2.026 (after 7.2.010)
7553Problem: "K" doesn't use the length of the identifier but uses the rest of
7554 the line.
7555Solution: Copy the desired number of characters first.
7556Files: src/normal.c
7557
7558Patch 7.2.027
7559Problem: Can use cscope commands in the sandbox.
7560Solution: Disallow them, they might not be safe.
7561Files: src/ex_cmds.h
7562
7563Patch 7.2.028
7564Problem: Confusing error message for missing ().
7565Solution: Change "braces" to "parentheses". (Gary Johnson)
7566Files: src/eval.c
7567
7568Patch 7.2.029
7569Problem: No completion for ":doautoall".
7570Solution: Complete ":doautoall" like ":doautocmd". (Doug Kearns)
7571Files: src/ex_docmd.c
7572
7573Patch 7.2.030 (after 7.2.027)
7574Problem: Can't compile.
7575Solution: Remove prematurely added ex_oldfiles.
7576Files: src/ex_cmds.h
7577
7578Patch 7.2.031
7579Problem: Information in the viminfo file about previously edited files is
7580 not available to the user. There is no way to get a complete list
7581 of files edited in previous Vim sessions.
7582Solution: Add v:oldfiles and fill it with the list of old file names when
7583 first reading the viminfo file. Add the ":oldfiles" command,
7584 ":browse oldfiles" and the "#<123" special file name. Increase
7585 the default value for 'viminfo' from '20 to '100.
7586Files: runtime/doc/cmdline.txt, runtime/doc/eval.txt,
7587 runtime/doc/starting.txt, runtime/doc/usr_21.txt, src/eval.c,
7588 src/ex_cmds.c, src/ex_cmds.h, src/ex_docmd.c, src/feature.h,
7589 src/fileio.c, src/main.c, src/mark.c, src/misc1.c,
7590 src/proto/eval.pro, src/proto/ex_cmds.pro, src/proto/mark.pro,
7591 src/option.c, src/structs.h, src/vim.h
7592
7593Patch 7.2.032 (after 7.2.031)
7594Problem: Can't build with EXITFREE defined. (Dominique Pelle)
7595Solution: Change vv_string to vv_str.
7596Files: src/eval.c
7597
7598Patch 7.2.033
7599Problem: When detecting a little endian BOM "ucs-2le" is used, but the text
7600 might be "utf-16le".
7601Solution: Default to "utf-16le", it also works for "ucs-2le". (Jia Yanwei)
7602Files: src/fileio.c, src/testdir/test42.ok
7603
7604Patch 7.2.034
7605Problem: Memory leak in spell info when deleting buffer.
7606Solution: Free the memory. (Dominique Pelle)
7607Files: src/buffer.c
7608
7609Patch 7.2.035
7610Problem: Mismatches between alloc/malloc, free/vim_free,
7611 realloc/vim_realloc.
7612Solution: Use the right function. (Dominique Pelle)
7613Files: src/gui_x11.c, src/mbyte.c, src/misc2.c, src/os_unix.c
7614
7615Patch 7.2.036 (extra)
7616Problem: Mismatches between alloc/malloc, free/vim_free,
7617 realloc/vim_realloc.
7618Solution: Use the right function. (Dominique Pelle)
7619Files: src/gui_riscos.c, src/gui_w48.c, src/mbyte.c, src/os_vms.c,
7620 src/os_w32exe.c, src/os_win16.c
7621
7622Patch 7.2.037
7623Problem: Double free with GTK 1 and compiled with EXITFREE.
7624Solution: Don't close display. (Dominique Pelle)
7625Files: src/os_unix.c
7626
7627Patch 7.2.038
7628Problem: Overlapping arguments to memcpy().
7629Solution: Use mch_memmove(). (Dominique Pelle)
7630Files: src/if_xcmdsrv.c
7631
7632Patch 7.2.039
7633Problem: Accessing freed memory on exit when EXITFREE is defined.
7634Solution: Call hash_init() on the v: hash table.
7635Files: src/eval.c
7636
7637Patch 7.2.040
7638Problem: When using ":e ++ff=dos fname" and the file contains a NL without
7639 a CR before it and 'ffs' contains "unix" then the fileformat
7640 becomes unix.
7641Solution: Ignore 'ffs' when using the ++ff argument. (Ben Schmidt)
7642 Also remove unreachable code.
7643Files: src/fileio.c
7644
7645Patch 7.2.041
7646Problem: In diff mode, when using two tabs, each with two diffed buffers,
7647 editing a buffer of the other tab messes up the diff. (Matt
7648 Mzyzik)
7649Solution: Only copy options from a window where the buffer was edited that
7650 doesn't have 'diff' set or is for the current tab page.
7651 Also fix that window options for a buffer are stored with the
7652 wrong window.
7653Files: src/buffer.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
7654 src/ex_getln.c, src/if_sniff.c, src/main.c, src/netbeans.c,
7655 src/normal.c, src/popupmnu.c, src/proto/buffer.pro,
7656 src/proto/ex_cmds.pro src/quickfix.c, src/window.c
7657
7658Patch 7.2.042
7659Problem: When using winrestview() in a BufWinEnter autocommand the window
7660 is scrolled anyway. (Matt Zyzik)
7661Solution: Don't recompute topline when above 'scrolloff' from the bottom.
7662 Don't always put the cursor halfway when entering a buffer. Add
7663 "w_topline_was_set".
7664Files: src/buffer.c, src/move.c, src/structs.h
7665
7666Patch 7.2.043
7667Problem: VMS: Too many characters are escaped in filename and shell
7668 commands.
7669Solution: Escape fewer characters. (Zoltan Arpadffy)
7670Files: src/vim.h
7671
7672Patch 7.2.044
7673Problem: Crash because of STRCPY() being over protective of the destination
7674 size. (Dominique Pelle)
7675Solution: Add -D_FORTIFY_SOURCE=1 to CFLAGS. Use an intermediate variable
7676 for the pointer to avoid a warning.
7677Files: src/auto/configure, src/configure.in, src/eval.c
7678
7679Patch 7.2.045
7680Problem: The Python interface has an empty entry in sys.path.
7681Solution: Filter out the empty entry. (idea from James Vega)
7682Files: src/if_python.c
7683
7684Patch 7.2.046
7685Problem: Wrong check for filling buffer with encoding. (Danek Duvall)
7686Solution: Remove pointers. (Dominique Pelle)
7687Files: src/mbyte.c
7688
7689Patch 7.2.047
7690Problem: Starting Vim with the -nb argument while it's not supported causes
7691 the other side to hang.
7692Solution: When -nb is used while it's not supported exit Vim. (Xavier de
7693 Gaye)
7694Files: src/main.c, src/vim.h
7695
7696Patch 7.2.048
7697Problem: v:prevcount is changed too often. Counts are not multiplied when
7698 setting v:count.
7699Solution: Set v:prevcount properly. Multiply counts. (idea by Ben Schmidt)
7700Files: src/eval.c, src/normal.c, src/proto/eval.pro
7701
7702Patch 7.2.049 (extra)
7703Problem: Win32: the clipboard doesn't support UTF-16.
7704Solution: Change UCS-2 support to UTF-16 support. (Jia Yanwei)
7705Files: src/gui_w32.c, src/gui_w48.c, src/mbyte.c, src/misc1.c,
7706 src/os_mswin.c, src/os_win32.c, src/proto/os_mswin.pro
7707
7708Patch 7.2.050
7709Problem: Warnings for not checking return value of fwrite(). (Chip Campbell)
7710Solution: Use the return value.
7711Files: src/spell.c
7712
7713Patch 7.2.051
7714Problem: Can't avoid 'wildignore' and 'suffixes' for glob() and globpath().
7715Solution: Add an extra argument to these functions. (Ingo Karkat)
7716Files: src/eval.c, src/ex_getln.c, src/proto/ex_getln.pro,
7717 runtime/doc/eval.txt, runtime/doc/options.txt
7718
7719Patch 7.2.052
7720Problem: synIDattr() doesn't support "sp" for special color.
7721Solution: Recognize "sp" and "sp#". (Matt Wozniski)
7722Files: runtime/doc/eval.txt, src/eval.c
7723
7724Patch 7.2.053
7725Problem: Crash when using WorkShop command ":ws foo". (Dominique Pelle)
7726Solution: Avoid using a NULL pointer.
7727Files: src/workshop.c
7728
7729Patch 7.2.054
7730Problem: Compilation warnings for format in getchar.c.
7731Solution: Use fputs() instead of fprintf(). (Dominique Pelle)
7732Files: src/getchar.c
7733
7734Patch 7.2.055
7735Problem: Various compiler warnings with strict checking.
7736Solution: Avoid the warnings by using return values and renaming.
7737Files: src/diff.c, src/eval.c, src/ex_cmds.c, src/ex_docmd.c,
7738 src/fileio.c, src/fold.c, src/globals.h, src/gui.c,
7739 src/gui_at_sb.c, src/gui_gtk_x11.c, src/gui_xmdlg.c,
7740 src/gui_xmebw.c, src/main.c, src/mbyte.c, src/message.c,
7741 src/netbeans.c, src/option.c, src/os_unix.c, src/spell.c,
7742 src/ui.c, src/window.c
7743
7744Patch 7.2.056 (after 7.2.050)
7745Problem: Tests 58 and 59 fail.
7746Solution: Don't invoke fwrite() with a zero length. (Dominique Pelle)
7747Files: src/spell.c
7748
7749Patch 7.2.057 (after 7.2.056)
7750Problem: Combination of int and size_t may not work.
7751Solution: Use size_t for variable.
7752Files: src/spell.c
7753
7754Patch 7.2.058
7755Problem: Can't add a patch name to the ":version" output.
7756Solution: Add the extra_patches array.
7757Files: src/version.c
7758
7759Patch 7.2.059
7760Problem: Diff display is not always updated.
7761Solution: Update the display more often.
7762Files: src/diff.c
7763
7764Patch 7.2.060
7765Problem: When a spell files has many compound rules it may take a very long
7766 time making the list of suggestions. Displaying also can be slow
7767 when there are misspelled words.
7768 Can't parse some Hunspell .aff files.
7769Solution: Check if a compounding can possibly work before trying a
7770 combination, if the compound rules don't contain wildcards.
7771 Implement using CHECKCOMPOUNDPATTERN.
7772 Ignore COMPOUNDRULES. Ignore a comment after most items.
7773 Accept ONLYINCOMPOUND as an alias for NEEDCOMPOUND.
7774 Accept FORBIDDENWORD as an alias for BAD.
7775Files: runtime/doc/spell.txt, src/spell.c
7776
7777Patch 7.2.061
7778Problem: Can't create a funcref for an autoload function without loading
7779 the script first. (Marc Weber)
7780Solution: Accept autoload functions that don't exist yet in function().
7781Files: src/eval.c
7782
7783Patch 7.2.062
7784Problem: "[Scratch]" is not translated.
7785Solution: Mark the string for translation. (Dominique Pelle)
7786Files: src/buffer.c
7787
7788Patch 7.2.063
7789Problem: Warning for NULL argument of Perl_sys_init3().
7790Solution: Use Perl_sys_init() instead. (partly by Dominique Pelle)
7791Files: src/if_perl.xs
7792
7793Patch 7.2.064
7794Problem: Screen update bug when repeating "~" on a Visual block and the
7795 last line doesn't change.
7796Solution: Keep track of changes for all lines. (Moritz Orbach)
7797Files: src/ops.c
7798
7799Patch 7.2.065
7800Problem: GTK GUI: the cursor disappears when doing ":vsp" and the Vim
7801 window is maximized. (Dominique Pelle, Denis Smolyar)
7802Solution: Don't change "Columns" back to an old value at a wrong moment.
7803 Do change "Rows" when it should not be a problem.
7804Files: src/gui.c
7805
7806Patch 7.2.066
Bram Moolenaar207f0092020-08-30 17:20:20 +02007807Problem: It's not easy to see whether 'encoding' is a multibyte encoding.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007808Solution: Add has('multi_byte_encoding').
7809Files: runtime/doc/eval.txt, src/eval.c
7810
7811Patch 7.2.067
7812Problem: Session file can't load extra file when the path contains special
7813 characters.
7814Solution: Escape the file name. (Lech Lorens)
7815Files: src/ex_docmd.c
7816
7817Patch 7.2.068
7818Problem: Emacs tags file lines can be too long, resulting in an error
7819 message. (James Vega)
7820Solution: Ignore lines with errors if they are too long.
7821Files: src/tag.c
7822
7823Patch 7.2.069 (after 7.2.060)
7824Problem: Compiler warning for storing size_t in int.
7825Solution: Add type cast.
7826Files: src/spell.c
7827
7828Patch 7.2.070
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02007829Problem: Crash when a function returns a:000. (Matt Wozniski)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007830Solution: Don't put the function struct on the stack, allocate it. Free it
7831 only when nothing in it is used.
7832Files: src/eval.c
7833
7834Patch 7.2.071 (extra)
7835Problem: Win32: Handling netbeans events while Vim is busy updating the
7836 screen may cause a crash.
7837Solution: Like with GTK, only handle netbeans messages in the main loop.
7838 (Xavier de Gaye)
7839Files: src/gui_w48.c, src/netbeans.c
7840
7841Patch 7.2.072 (extra)
7842Problem: Compiler warning in Sniff code.
7843Solution: Use return value of pipe(). (Dominique Pelle)
7844Files: src/if_sniff.c
7845
7846Patch 7.2.073
7847Problem: ":set <xHome>" has the same output as ":set <Home>". (Matt
7848 Wozniski)
7849Solution: Don't translate "x" keys to its alternative for ":set".
7850Files: src/gui_mac.c, src/misc2.c, src/option.c, src/proto/misc2.pro
7851
7852Patch 7.2.074 (extra, after 7.2.073)
7853Problem: ":set <xHome>" has the same output as ":set <Home>". (Matt
7854 Wozniski)
7855Solution: Don't translate "x" keys to its alternative for ":set".
7856Files: src/gui_mac.c
7857
7858Patch 7.2.075 (after 7.2.058)
7859Problem: Explanation about making a diff for extra_patches is unclear.
7860Solution: Adjust comment.
7861Files: src/version.c
7862
7863Patch 7.2.076
7864Problem: rename(from, to) deletes the file if "from" and "to" are not equal
7865 but still refer to the same file. E.g., on a FAT32 filesystem
7866 under Unix.
7867Solution: Go through another file name.
7868Files: src/fileio.c
7869
7870Patch 7.2.077 (after 7.2.076)
7871Problem: rename(from, to) doesn't work if "from" and "to" differ only in
7872 case on a system that ignores case in file names.
7873Solution: Go through another file name.
7874Files: src/fileio.c
7875
7876Patch 7.2.078
7877Problem: When deleting a fold that is specified with markers the cursor
7878 position may be wrong. Folds may not be displayed properly after
7879 a delete. Wrong fold may be deleted.
7880Solution: Fix the problems. (mostly by Lech Lorens)
7881Files: src/fold.c
7882
7883Patch 7.2.079
7884Problem: "killed" netbeans events are not handled correctly.
7885Solution: A "killed" netbeans event is sent when the buffer is deleted or
7886 wiped out (in this case, the netbeans annotations in this buffer
7887 have been removed). A user can still remove a sign with the
7888 command ":sign unplace" and this does not trigger a "killed"
7889 event. (Xavier de Gaye)
7890Files: runtime/doc/netbeans.txt, src/buffer.c, src/globals.h,
7891 src/netbeans.c, src/proto/netbeans.pro
7892
7893Patch 7.2.080
7894Problem: When typing a composing character just after starting completion
7895 may access memory before its allocation point. (Dominique Pelle)
7896Solution: Don't delete before the completion start column. Add extra checks
7897 for the offset not being negative.
7898Files: src/edit.c
7899
7900Patch 7.2.081
7901Problem: Compiler warning for floating point overflow on VAX.
7902Solution: For VAX use a smaller number. (Zoltan Arpadffy)
7903Files: src/message.c
7904
7905Patch 7.2.082
7906Problem: When 'ff' is "mac" then "ga" on a ^J shows 0x0d instead of 0x0a.
7907 (Andy Wokula)
7908Solution: Use NL for this situation. (Lech Lorens)
7909Files: src/ex_cmds.c
7910
7911Patch 7.2.083
7912Problem: ":tag" does not return to the right tag entry from the tag stack.
7913Solution: Don't change the current match when there is no argument.
7914 (Erik Falor)
7915Files: src/tag.c
7916
7917Patch 7.2.084
7918Problem: Recursive structures are not handled properly in Python
7919 vim.eval().
7920Solution: Keep track of references in a better way. (Yukihiro Nakadaira)
7921Files: src/if_python.c
7922
7923Patch 7.2.085
7924Problem: ":set <M-b>=<Esc>b" does not work when 'encoding' is utf-8.
7925Solution: Put the <M-b> character in the input buffer as valid utf-8.
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02007926 (partly by Matt Wozniski)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007927Files: src/term.c
7928
7929Patch 7.2.086
7930Problem: Using ":diffget 1" in buffer 1 corrupts the text.
7931Solution: Don't do anything when source and destination of ":diffget" or
7932 ":diffput" is the same buffer. (Dominique Pelle)
7933Files: src/diff.c
7934
7935Patch 7.2.087
7936Problem: Adding URL to 'path' doesn't work to edit a file.
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02007937Solution: Skip simplify_filename() for URLs. (Matt Wozniski)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007938Files: src/misc2.c
7939
7940Patch 7.2.088 (extra)
7941Problem: OpenClipboard() may fail when another application is using the
7942 clipboard.
7943Solution: Retry OpenClipboard() a few times. (Jianrong Yu)
7944Files: src/os_mswin.c
7945
7946Patch 7.2.089 (extra)
7947Problem: Win32: crash when using Ultramon buttons.
7948Solution: Don't use a WM_OLE message of zero size. (Ray Megal)
7949Files: src/if_ole.cpp, src/gui_w48.c
7950
7951Patch 7.2.090
Bram Moolenaar207f0092020-08-30 17:20:20 +02007952Problem: User command containing 0x80 in multibyte character does not work
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007953 properly. (Yasuhiro Matsumoto)
7954Solution: Undo replacement of K_SPECIAL and CSI characters when executing
7955 the command.
7956Files: src/ex_docmd.c
7957
7958Patch 7.2.091
7959Problem: ":cs help" output is not aligned for some languages.
7960Solution: Compute character size instead of byte size. (Dominique Pelle)
7961Files: src/if_cscope.c
7962
7963Patch 7.2.092
7964Problem: Some error messages are not translated.
7965Solution: Add _() around the messages. (Dominique Pelle)
7966Files: src/eval.c
7967
7968Patch 7.2.093 (extra)
7969Problem: Win32: inputdialog() and find/replace dialogs can't handle
Bram Moolenaar207f0092020-08-30 17:20:20 +02007970 multibyte text.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007971Solution: Use the wide version of dialog functions when available. (Yanwei
7972 Jia)
7973Files: src/gui_w32.c, src/gui_w48.c
7974
7975Patch 7.2.094
7976Problem: Compiler warning for signed/unsigned compare.
7977Solution: Add type cast. Also fix a few typos.
7978Files: src/edit.c
7979
7980Patch 7.2.095
7981Problem: With Visual selection, "r" and then CTRL-C Visual mode is stopped
7982 but the highlighting is not removed.
7983Solution: Call reset_VIsual().
7984Files: src/normal.c
7985
7986Patch 7.2.096
7987Problem: After ":number" the "Press Enter" message may be on the wrong
7988 screen, if switching screens for shell commands.
7989Solution: Reset info_message. (James Vega)
7990Files: src/ex_cmds.c
7991
7992Patch 7.2.097
7993Problem: "!xterm&" doesn't work when 'shell' is "bash".
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02007994Solution: Ignore SIGHUP after calling setsid(). (Simon Schubert)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02007995Files: src/os_unix.c
7996
7997Patch 7.2.098
7998Problem: Warning for signed/unsigned pointer.
7999Solution: Add type cast.
8000Files: src/eval.c
8001
8002Patch 7.2.099
8003Problem: Changing GUI options causes an unnecessary redraw when the GUI
8004 isn't active.
8005Solution: Avoid the redraw. (Lech Lorens)
8006Files: src/option.c
8007
8008Patch 7.2.100
8009Problem: When using ":source" on a FIFO or something else that can't rewind
8010 the first three bytes are skipped.
8011Solution: Instead of rewinding read the first line and detect a BOM in that.
8012 (mostly by James Vega)
8013Files: src/ex_cmds2.c
8014
8015Patch 7.2.101 (extra)
8016Problem: MSVC version not recognized.
8017Solution: Add the version number to the list. (Zhong Zhang)
8018Files: src/Make_mvc.mak
8019
8020Patch 7.2.102 (after 7.2.100)
8021Problem: When 'encoding' is "utf-8" a BOM at the start of a Vim script is
8022 not removed. (Tony Mechelynck)
8023Solution: When no conversion is taking place make a copy of the line without
8024 the BOM.
8025Files: src/ex_cmds2.c
8026
8027Patch 7.2.103
8028Problem: When 'bomb' is changed the window title is updated to show/hide a
8029 "+", but the tab page label isn't. (Patrick Texier)
8030Solution: Set "redraw_tabline" in most places where "need_maketitle" is set.
8031 (partly by Lech Lorens)
8032Files: src/option.c
8033
8034Patch 7.2.104
8035Problem: When using ":saveas bar.c" the tab label isn't updated right away.
8036Solution: Set redraw_tabline. (Francois Ingelrest)
8037Files: src/ex_cmds.c
8038
8039Patch 7.2.105
8040Problem: Modeline setting for 'foldmethod' overrules diff options. (Ingo
8041 Karkat)
8042Solution: Don't set 'foldmethod' and 'wrap' from a modeline when 'diff' is
8043 on.
8044Files: src/option.c
8045
8046Patch 7.2.106
8047Problem: Endless loop when using "]s" in HTML when there are no
8048 misspellings. (Ingo Karkat)
8049Solution: Break the search loop. Also fix pointer alignment for systems
8050 with pointers larger than int.
8051Files: src/spell.c
8052
8053Patch 7.2.107
8054Problem: When using a GUI dialog and ":echo" commands the messages are
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02008055 deleted after the dialog. (Vincent Birebent)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008056Solution: Don't call msg_end_prompt() since there was no prompt.
8057Files: src/message.c
8058
8059Patch 7.2.108 (after 7.2.105)
8060Problem: Can't build without the diff feature.
8061Solution: Add #ifdef.
8062Files: src/option.c
8063
8064Patch 7.2.109
Bram Moolenaar207f0092020-08-30 17:20:20 +02008065Problem: 'langmap' does not work for multibyte characters.
8066Solution: Add a list of mapped multibyte characters. (based on work by
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008067 Konstantin Korikov, Agathoklis Hatzimanikas)
8068Files: runtime/doc/options.txt, src/edit.c, src/getchar.c, src/macros.h,
8069 src/normal.c, src/option.c, src/proto/option.pro, src/window.c
8070
8071Patch 7.2.110
8072Problem: Compiler warning for unused variable.
8073Solution: Init the variable.
8074Files: src/ex_docmd.c
8075
8076Patch 7.2.111
8077Problem: When using Visual block mode with 'cursorcolumn' it's unclear what
8078 is selected.
8079Solution: Don't use 'cursorcolumn' highlighting inside the Visual selection.
8080 (idea by Dominique Pelle)
8081Files: src/screen.c
8082
8083Patch 7.2.112
8084Problem: Cursor invisible in Visual mode when 'number' is set and cursor in
8085 first column. (Matti Niemenmaa, Renato Alves)
8086Solution: Check that vcol_prev is smaller than vcol.
8087Files: src/screen.c
8088
8089Patch 7.2.113
8090Problem: Crash for substitute() call using submatch(1) while there is no
8091 such submatch. (Yukihiro Nakadaira)
8092Solution: Also check the start of the submatch is set, it can be NULL when
8093 an attempted match didn't work out.
8094Files: src/regexp.c
8095
8096Patch 7.2.114
8097Problem: Using wrong printf format.
8098Solution: Use "%ld" instead of "%d". (Dominique Pelle)
8099Files: src/netbeans.c
8100
8101Patch 7.2.115
8102Problem: Some debugging code is never used.
8103Solution: Remove nbtrace() and nbprt(). (Dominique Pelle)
8104Files: src/nbdebug.c, src/nbdebug.h
8105
8106Patch 7.2.116
8107Problem: Not all memory is freed when EXITFREE is defined.
8108Solution: Free allocated memory on exit. (Dominique Pelle)
8109Files: src/ex_docmd.c, src/gui_gtk_x11.c, src/misc2.c, src/search.c,
8110 src/tag.c
8111
8112Patch 7.2.117
8113Problem: Location list incorrectly labelled "Quickfix List".
8114Solution: Break out of both loops for finding window for location list
8115 buffer. (Lech Lorens)
8116Files: src/buffer.c, src/quickfix.c, src/screen.c
8117
8118Patch 7.2.118
8119Problem: <PageUp> at the more prompt only does half a page.
8120Solution: Make <PageUp> go up a whole page. Also make 'f' go a page
8121 forward, but not quit the more prompt. (Markus Heidelberg)
8122Files: src/message.c
8123
8124Patch 7.2.119
8125Problem: Status line is redrawn too often.
Bram Moolenaardd60c362023-02-27 15:49:53 +00008126Solution: Check ScreenLinesUC[] properly. (Yukihiro Nakadaira)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008127Files: src/screen.c
8128
8129Patch 7.2.120
8130Problem: When opening the quickfix window or splitting the window and
8131 setting the location list, the location list is copied and then
8132 deleted, which is inefficient.
8133Solution: Don't copy the location list when not needed. (Lech Lorens)
8134Files: src/quickfix.c, src/vim.h, src/window.c
8135
8136Patch 7.2.121
8137Problem: In gvim "!grep a *.c" spews out a lot of text that can't be
8138 stopped with CTRL-C.
8139Solution: When looping to read and show text, do check for typed characters
8140 every two seconds.
8141Files: src/os_unix.c
8142
8143Patch 7.2.122
8144Problem: Invalid memory access when the VimResized autocommand changes
8145 'columns' and/or 'lines'.
8146Solution: After VimResized check for changed values. (Dominique Pelle)
8147Files: src/screen.c
8148
8149Patch 7.2.123
8150Problem: Typing 'q' at more prompt for ":map" output still displays another
8151 line, causing another more prompt. (Markus Heidelberg)
8152Solution: Quit listing maps when 'q' typed.
8153Files: src/getchar.c
8154
8155Patch 7.2.124
8156Problem: Typing 'q' at more prompt for ":tselect" output still displays
8157 more lines, causing another more prompt. (Markus Heidelberg)
8158Solution: Quit listing tags when 'q' typed.
8159Files: src/tag.c
8160
8161Patch 7.2.125
8162Problem: Leaking memory when reading XPM bitmap for a sign.
8163Solution: Don't allocate the memory twice. (Dominique Pelle)
8164Files: src/gui_x11.c
8165
8166Patch 7.2.126
8167Problem: When EXITFREE is defined signs are not freed.
8168Solution: Free all signs on exit. Also free keymaps. (Dominique Pelle)
8169Files: src/misc2.c, src/ex_cmds.c, src/proto/ex_cmds.pro
8170
8171Patch 7.2.127
8172Problem: When listing mappings and a wrapping line causes the more prompt,
8173 after typing 'q' there can be another more prompt. (Markus
8174 Heidelberg)
8175Solution: Set "lines_left" to allow more lines to be displayed.
8176Files: src/message.c
8177
8178Patch 7.2.128 (after 7.2.055)
8179Problem: Using ":lcd" makes session files not work.
8180Solution: Compare return value of mch_chdir() properly. (Andreas Bernauer)
8181Files: src/ex_docmd.c
8182
8183Patch 7.2.129
8184Problem: When opening a command window from input() it uses the search
8185 history.
8186Solution: Use get_cmdline_type(). (James Vega)
8187Files: src/ex_getln.c
8188
8189Patch 7.2.130
Bram Moolenaar483c5d82010-10-20 18:45:33 +02008190Problem: Vim may hang until CTRL-C is typed when using CTRL-Z.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008191Solution: Avoid using pause(). Also use "volatile" for variables used in
8192 signal functions. (Dominique Pelle)
8193Files: src/auto/configure, src/configure.in, src/config.h.in,
8194 src/globals.h, src/os_unix.c
8195
8196Patch 7.2.131
8197Problem: When 'keymap' is cleared may still use the cursor highlighting for
8198 when it's enabled.
8199Solution: Reset 'iminsert' and 'imsearch'. (partly by Dominique Pelle)
8200 Also avoid ":setlocal" for these options have a global effect.
8201Files: src/option.c
8202
8203Patch 7.2.132
8204Problem: When changing directory during a SwapExists autocmd freed memory
8205 may be accessed. (Dominique Pelle)
8206Solution: Add the allbuf_lock flag.
8207Files: src/ex_getln.c, src/globals.h, src/fileio.c,
8208 src/proto/ex_getln.pro
8209
8210Patch 7.2.133
8211Problem: ":diffoff!" changes settings in windows not in diff mode.
8212Solution: Only change settings in other windows when 'diff' is set, always
8213 do it for the current window. (Lech Lorens)
8214Files: src/diff.c
8215
8216Patch 7.2.134
8217Problem: Warning for discarding "const" from pointer.
8218Solution: Don't pass const pointer to mch_memmove().
8219Files: src/fileio.c
8220
8221Patch 7.2.135
8222Problem: Memory leak when redefining user command with complete argument.
8223Solution: Free the old complete argument. (Dominique Pelle)
8224Files: src/ex_docmd.c
8225
8226Patch 7.2.136 (after 7.2.132)
8227Problem: ":cd" is still possible in a SwapExists autocmd.
8228Solution: Check the allbuf_lock flag in ex_cd().
8229Files: src/ex_docmd.c
8230
8231Patch 7.2.137
8232Problem: When 'virtualedit' is set, a left shift of a blockwise selection
8233 that starts and ends inside a tab shifts too much. (Helmut
8234 Stiegler)
8235Solution: Redo the block left shift code. (Lech Lorens)
8236Files: src/ops.c, src/testdir/Makefile, src/testdir/test66.in,
8237 src/testdir/test66.ok
8238
8239Patch 7.2.138 (extra part of 7.2.137)
8240Problem: See 7.2.137.
8241Solution: See 7.2.137.
8242Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
8243 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
8244 src/testdir/Make_vms.mms
8245
8246Patch 7.2.139
8247Problem: Crash when 'virtualedit' is "all". (James Vega)
8248Solution: Avoid overflow when column is MAXCOL. (Dominique Pelle)
8249Files: src/misc2.c
8250
8251Patch 7.2.140
8252Problem: Diff highlighting isn't displayed before the Visual area if it
8253 starts at the cursor position. (Markus Heidelberg)
8254Solution: Also check fromcol_prev.
8255Files: src/screen.c
8256
8257Patch 7.2.141
8258Problem: When redrawing a character for bold spill this causes the next
8259 character to be redrawn as well.
8260Solution: Only redraw one extra character. (Yukihiro Nakadaira)
8261Files: src/screen.c
8262
8263Patch 7.2.142
8264Problem: Motif and Athena balloons don't use tooltip colors.
8265Solution: Set the colors. (Matt Wozniski)
8266Files: src/gui_beval.c
8267
8268Patch 7.2.143
8269Problem: No command line completion for ":cscope" command.
8270Solution: Add the completion for ":cscope". (Dominique Pelle)
8271Files: src/ex_docmd.c, src/ex_getln.c, src/if_cscope.c,
8272 src/proto/if_cscope.pro, src/vim.h
8273
8274Patch 7.2.144
8275Problem: When 't_Co' is set to the value it already had the color scheme is
8276 reloaded anyway.
8277Solution: Only load the colorscheme when the t_Co value changes. (Dominique
8278 Pelle)
8279Files: src/option.c
8280
8281Patch 7.2.145
8282Problem: White space in ":cscope find" is not ignored.
8283Solution: Ignore the white space, but not when the leading white space is
8284 useful for the argument.
8285Files: runtime/doc/if_scop.txt, src/if_cscope.c
8286
8287Patch 7.2.146
8288Problem: v:warningmsg isn't used for all warnings.
8289Solution: Set v:warningmsg for relevant warnings. (Ingo Karkat)
8290Files: src/fileio.c, src/misc1.c, src/option.c
8291
8292Patch 7.2.147
8293Problem: When compiled as small version and 'number' is on the cursor is
8294 displayed in the wrong position after a tab. (James Vega)
8295Solution: Don't increment vcol when still displaying the line number.
8296Files: src/screen.c
8297
8298Patch 7.2.148
8299Problem: When searching for "$" while 'hlsearch' is set, highlighting the
8300 character after the line does not work in the cursor column.
8301 Also highlighting for Visual mode after the line end when this
8302 isn't needed. (Markus Heidelberg)
8303Solution: Only compare the cursor column in the cursor line. Only highlight
8304 for Visual selection after the last character when it's needed to
8305 see where the Visual selection ends.
8306Files: src/screen.c
8307
8308Patch 7.2.149
8309Problem: Using return value of function that doesn't return a value results
8310 in reading uninitialized memory.
8311Solution: Set the default to return zero. Make cursor() return -1 on
8312 failure. Let complete() return an empty string in case of an
8313 error. (partly by Dominique Pelle)
8314Files: runtime/doc/eval.txt, src/eval.c
8315
8316Patch 7.2.150 (extra)
8317Problem: Can't use tab pages from VisVim.
8318Solution: Add tab page support to VisVim. (Adam Slater)
8319Files: src/VisVim/Commands.cpp, src/VisVim/Resource.h,
8320 src/VisVim/VisVim.rc
8321
8322Patch 7.2.151
8323Problem: ":hist a" doesn't work like ":hist all" as the docs suggest.
8324Solution: Make ":hist a" and ":hist al" work. (Dominique Pelle)
8325Files: src/ex_getln.c
8326
8327Patch 7.2.152
8328Problem: When using "silent echo x" inside ":redir" a next echo may start
8329 halfway the line. (Tony Mechelynck, Dennis Benzinger)
8330Solution: Reset msg_col after redirecting silently.
8331Files: src/ex_docmd.c, src/message.c, src/proto/message.pro
8332
8333Patch 7.2.153
8334Problem: Memory leak for ":recover empty_dir/".
8335Solution: Free files[] when it becomes empty. (Dominique Pelle)
8336Files: src/memline.c
8337
8338Patch 7.2.154 (after 7.2.132)
8339Problem: ":cd" is still possible in a SwapExists autocmd.
8340Solution: Set allbuf_lock in do_swapexists().
8341Files: src/memline.c
8342
8343Patch 7.2.155
8344Problem: Memory leak in ":function /pat".
8345Solution: Free the memory. (Dominique Pelle)
8346Files: src/eval.c
8347
8348Patch 7.2.156 (after 7.2.143)
8349Problem: No completion for :scscope and :lcscope commands.
8350Solution: Implement the completion. (Dominique Pelle)
8351Files: src/if_cscope.c, src/ex_docmd.c, src/proto/if_cscope.pro
8352
8353Patch 7.2.157
8354Problem: Illegal memory access when searching in path.
8355Solution: Avoid looking at a byte after end of a string. (Dominique Pelle)
8356Files: src/search.c
8357
8358Patch 7.2.158
8359Problem: Warnings from VisualC compiler.
8360Solution: Add type casts. (George Reilly)
8361Files: src/ops.c
8362
8363Patch 7.2.159
8364Problem: When $x_includes ends up being "NONE" configure fails.
8365Solution: Check for $x_includes not to be "NONE" (Rainer)
8366Files: src/auto/configure, src/configure.in
8367
8368Patch 7.2.160
8369Problem: Search pattern not freed on exit when 'rightleft' set.
8370Solution: Free mr_pattern_alloced.
8371Files: src/search.c
8372
8373Patch 7.2.161
8374Problem: Folds messed up in other tab page. (Vlad Irnov)
8375Solution: Instead of going over all windows in current tab page go over all
8376 windows in all tab pages. Also free memory for location lists in
8377 other tab pages when exiting. (Lech Lorens)
8378Files: src/fileio.c, src/mark.c, src/misc1.c, src/misc2.c
8379
8380Patch 7.2.162
8381Problem: The quickfix window may get wrong filetype.
8382Solution: Do not detect the filetype for the quickfix window. (Lech Lorens)
8383Files: src/quickfix.c
8384
8385Patch 7.2.163
8386Problem: The command line window may get folding.
8387Solution: Default to no/manual folding. (Lech Lorens)
8388Files: src/ex_getln.c
8389
8390Patch 7.2.164
8391Problem: When 'showbreak' is set the size of the Visual block may be
8392 reported wrong. (Eduardo Daudt Flach)
8393Solution: Temporarily make 'sbr' empty.
8394Files: src/normal.c, src/ops.c
8395
8396Patch 7.2.165
8397Problem: The argument for the FuncUndefined autocmd event is expanded like
8398 a file name.
8399Solution: Don't try expanding it. (Wang Xu)
8400Files: src/fileio.c
8401
8402Patch 7.2.166
8403Problem: No completion for ":sign" command.
8404Solution: Add ":sign" completion. (Dominique Pelle)
8405Files: src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/vim.h,
8406 src/proto/ex_cmds.pro
8407
8408Patch 7.2.167
8409Problem: Splint doesn't work well for checking the code.
8410Solution: Add splint arguments in the Makefile. Exclude some code from
8411 splint that it can't handle. Tune splint arguments to give
8412 reasonable errors. Add a filter for removing false warnings from
8413 splint output. Many small changes to avoid warnings. More to
8414 follow...
8415Files: Filelist, src/Makefile, src/buffer.c, src/charset.c,
8416 src/cleanlint.vim, src/digraph.c, src/edit.c, src/ex_cmds.c,
8417 src/globals.h, src/ops.c, src/os_unix.c, src/os_unix.h,
8418 src/proto/buffer.pro, src/proto/edit.pro, src/screen.c,
8419 src/structs.h
8420
8421Patch 7.2.168
8422Problem: When no ctags program can be found, "make tags" attempts to
8423 execute the first C file.
8424Solution: Default to "ctags" when no ctags program can be found.
8425Files: src/configure.in, src/auto/configure
8426
8427Patch 7.2.169
8428Problem: Splint complains about a lot of things.
8429Solution: Add type casts, #ifdefs and other changes to avoid warnings.
8430 Change colnr_T from unsigned to int. Avoids mistakes with
8431 subtracting columns.
8432Files: src/cleanlint.vim, src/diff.c, src/edit.c, src/ex_cmds.c,
8433 src/ex_cmds2.c, src/ex_docmd.c, src/proto/ex_cmds.pro,
8434 src/proto/spell.pro, src/quickfix.c, src/spell.c, src/structs.h,
8435 src/term.h, src/vim.h
8436
8437Patch 7.2.170
8438Problem: Using b_dev while it was not set. (Dominique Pelle)
8439Solution: Add the b_dev_valid flag.
8440Files: src/buffer.c, src/fileio.c, src/structs.h
8441
8442Patch 7.2.171 (after 7.2.169)
8443Problem: Compiler warnings. (Tony Mechelynck)
8444Solution: Add function prototype. (Patrick Texier) Init variable.
8445Files: src/ex_cmds.c
8446
8447Patch 7.2.172 (extra)
8448Problem: Compiler warning.
8449Solution: Adjust function prototype. (Patrick Texier)
8450Files: src/os_mswin.c
8451
8452Patch 7.2.173
8453Problem: Without lint there is no check for unused function arguments.
8454Solution: Use gcc -Wunused-parameter instead of lint. For a few files add
8455 attributes to arguments that are known not to be used.
8456Files: src/auto/configure, src/buffer.c, src/charset.c, src/diff.c,
8457 src/configure.in, src/config.h.in, src/edit.c, src/ex_cmds.c,
8458 src/ex_cmds2.c, src/version.c, src/vim.h
8459
8460Patch 7.2.174
8461Problem: Too many warnings from gcc -Wextra.
8462Solution: Change initializer. Add UNUSED. Add type casts.
8463Files: src/edit.c, src/eval.c, src/ex_cmds.c, src/ex_docmd.c,
8464 src/ex_getln.c, src/fileio.c, getchar.c, globals.h, main.c,
8465 memline.c, message.c, src/misc1.c, src/move.c, src/normal.c,
8466 src/option.c, src/os_unix.c, src/os_unix.h, src/regexp.c,
8467 src/search.c, src/tag.c
8468
8469Patch 7.2.175
8470Problem: Compiler warning in OpenBSD.
8471Solution: Add type cast for NULL. (Dasn)
8472Files: src/if_cscope.c
8473
8474Patch 7.2.176
8475Problem: Exceptions for splint are not useful.
8476Solution: Remove the S_SPLINT_S ifdefs.
8477Files: src/edit.c, src/ex_cmds.c, src/ex_docmd.c, src/os_unix.c,
8478 src/os_unix.h, src/os_unixx.h, src/structs.h, src/term.h
8479
8480Patch 7.2.177
8481Problem: Compiler warnings when using -Wextra
8482Solution: Add UNUSED and type casts.
8483Files: src/eval.c, src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c,
8484 src/fileio.c, src/hardcopy.c, src/if_cscope.c, src/if_xcmdsrv.c,
8485 src/farsi.c, src/mark.c, src/menu.c
8486
8487Patch 7.2.178
8488Problem: Using negative value for device number might not work.
8489Solution: Use a separate flag for whether ffv_dev was set.
8490Files: src/misc2.c
8491
8492Patch 7.2.179
8493Problem: Using negative value for device number might not work.
8494Solution: Use a separate flag for whether sn_dev was set.
8495Files: src/ex_cmds2.c
8496
8497Patch 7.2.180
8498Problem: Some more compiler warnings when using gcc -Wextra.
8499Solution: Add UNUSED and type casts.
8500Files: src/buffer.c, src/ex_cmds.c, src/macros.h, src/main.c,
8501 src/menu.c, src/message.c, src/misc1.c, src/mbyte.c,
8502 src/normal.c, src/option.c, src/os_unix.c, src/quickfix.c,
8503 src/screen.c, src/search.c, src/spell.c, src/syntax.c, src/tag.c,
8504 src/term.c, src/ui.c
8505
8506Patch 7.2.181
8507Problem: Some more compiler warnings when using gcc -Wextra.
8508Solution: Add UNUSED and type casts.
8509Files: src/if_mzsch.c, src/gui.c, src/gui_gtk.c, src/gui_gtk_x11.c,
8510 src/gui_gtk_f.c, src/gui_beval.c, src/netbeans.c
8511
8512Patch 7.2.182 (after 7.2.181)
8513Problem: Compilation problems after previous patch for Motif. Gvim with
8514 GTK crashes on startup.
8515Solution: Add comma. Init form structure to zeroes.
8516Files: src/netbeans.c, src/gui_gtk_f.c
8517
8518Patch 7.2.183
8519Problem: Configure problem for sys/sysctl.h on OpenBSD. (Dasn)
8520Solution: Add separate check for this header file. Also switch to newer
8521 version of autoconf.
8522Files: src/auto/configure, src/configure.in
8523
8524Patch 7.2.184
8525Problem: Some more compiler warnings when using gcc -Wextra.
8526Solution: Add UNUSED and type casts. Autoconf check for wchar_t.
8527Files: src/auto/configure, src/config.h.in, src/configure.in,
8528 src/gui_athena.c, src/gui_x11.c, src/gui.c, src/gui_beval.c,
8529 src/gui_at_sb.c, src/gui_at_fs.c, src/gui_motif.c,
8530 src/gui_xmdlg.c, src/gui_xmebw.c, src/if_python.c, src/window.c,
8531 src/workshop.c
8532
8533Patch 7.2.185
8534Problem: Some more compiler warnings when using gcc -Wextra.
8535Solution: Add UNUSED and type casts.
8536Files: src/Makefile, src/if_tlc.c, src/if_ruby.c
8537
8538Patch 7.2.186
8539Problem: Some more compiler warnings when using gcc -Wextra.
8540Solution: Now with the intended if_tcl.c changes.
8541Files: src/if_tcl.c
8542
8543Patch 7.2.187 (after 7.2.186)
8544Problem: Doesn't build with older versions of TCL. (Yongwei Wu)
8545Solution: Add #ifdefs. (Dominique Pelle)
8546Files: src/if_tcl.c
8547
8548Patch 7.2.188
8549Problem: Crash with specific use of function calls. (Meikel Brandmeyer)
8550Solution: Make sure the items referenced by a function call are not freed
8551 twice. (based on patch from Nico Weber)
8552Files: src/eval.c
8553
8554Patch 7.2.189
8555Problem: Possible hang for deleting auto-indent. (Dominique Pelle)
8556Solution: Make sure the position is not beyond the end of the line.
8557Files: src/edit.c
8558
8559Patch 7.2.190
8560Problem: The register executed by @@ isn't restored.
8561Solution: Mark the executable register in the viminfo file.
8562Files: src/ops.c
8563
8564Patch 7.2.191
8565Problem: Mzscheme interface doesn't work on Ubuntu.
8566Solution: Change autoconf rules. Define missing macro. Some changes to
8567 avoid gcc warnings. Remove per-buffer namespace. (Sergey Khorev)
8568Files: runtime/doc/if_mzsch.txt, src/Makefile, src/Make_ming.mak,
8569 src/Make_mvc.mak, src/auto/configure, src/configure.in,
8570 src/config.mk.in, src/eval.c, src/if_mzsch.c, src/if_mzsch.h,
8571 src/main.c, src/proto/if_mzsch.pro
8572
8573Patch 7.2.192 (after 7.2.188)
8574Problem: Still a crash in the garbage collector for a very rare situation.
8575Solution: Make sure current_copyID is always incremented correctly. (Kent
8576 Sibilev)
8577Files: src/eval.c
8578
8579Patch 7.2.193
8580Problem: Warning for uninitialized values.
8581Solution: Initialize all the struct items.
8582Files: src/eval.c
8583
8584Patch 7.2.194 (extra)
8585Problem: MSVC: rem commands are echoed.
8586Solution: Add commands to switch off echo. (Wang Xu)
8587Files: src/msvc2008.bat
8588
8589Patch 7.2.195
8590Problem: Leaking memory for the command Vim was started with.
8591Solution: Remember the pointer and free it.
8592Files: src/gui_gtk_x11.c
8593
8594Patch 7.2.196 (after 7.2.167)
8595Problem: Turns out splint doesn't work well enough to be usable.
8596Solution: Remove splint support.
8597Files: Filelist, src/cleanlint.vim
8598
8599Patch 7.2.197
8600Problem: Warning for uninitialized values.
8601Solution: Initialize all the struct items of typebuf.
8602Files: src/globals.h
8603
8604Patch 7.2.198
8605Problem: Size of buffer used for tgetent() may be too small.
8606Solution: Use the largest known size everywhere.
8607Files: src/vim.h
8608
8609Patch 7.2.199
8610Problem: Strange character in comment.
8611Solution: Change to "message". (Yongwei Wu)
8612Files: src/term.c
8613
8614Patch 7.2.200
8615Problem: Reading past end of string when navigating the menu bar or
8616 resizing the window.
8617Solution: Add and use mb_ptr2len_len(). (partly by Dominique Pelle)
8618 Also add mb_ptr2cells_len() to prevent more trouble.
8619Files: src/gui_gtk_x11.c, src/os_unix.c, src/globals.h, src/mbyte.c,
8620 src/proto/mbyte.pro
8621
8622Patch 7.2.201
8623Problem: Cannot copy/paste HTML to/from Firefox via the clipboard.
8624Solution: Implement this for GTK. Add the "html" value to 'clipboard'.
8625Files: runtime/doc/options.txt, src/globals.h, src/gui_gtk_x11.c,
8626 src/mbyte.c, src/proto/mbyte.pro, src/option.c
8627
8628Patch 7.2.202
8629Problem: BufWipeout autocommand that edits another buffer causes problems.
8630Solution: Check for the situation, give an error and quit the operation.
8631Files: src/fileio.c
8632
8633Patch 7.2.203
8634Problem: When reloading a buffer or doing anything else with a buffer that
8635 is not displayed in a visible window, autocommands may be applied
8636 to the current window, folds messed up, etc.
8637Solution: Instead of using the current window for the hidden buffer use a
8638 special window, splitting the current one temporarily.
8639Files: src/fileio.c, src/globals.h, src/gui.c, src/if_perl.xs,
8640 src/progo/gui.pro, src/proto/window.pro, src/screen.c,
8641 src/structs.h, src/window.c
8642
8643Patch 7.2.204 (extra)
8644Problem: Win32: Can't build with Visual Studio 2010 beta 1.
8645Solution: Fix the makefile. (George Reilly)
8646Files: src/Make_mvc.mak
8647
8648Patch 7.2.205 (extra)
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02008649Problem: Win32: No support for High DPI awareness.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008650Solution: Fix the manifest file. (George Reilly)
8651Files: src/Make_mvc.mak, src/gvim.exe.mnf
8652
8653Patch 7.2.206
8654Problem: Win32: Can't build netbeans interface with Visual Studio 2010.
8655Solution: Undefine ECONNREFUSED. (George Reilly)
8656Files: src/netbeans.c
8657
8658Patch 7.2.207
8659Problem: Using freed memory with ":redrawstatus" when it works recursively.
8660Solution: Prevent recursively updating the status line. (partly by Dominique
8661 Pelle)
8662Files: src/screen.c
8663
8664Patch 7.2.208
8665Problem: "set novice" gives an error message, it should be ignored.
8666Solution: Don't see "no" in "novice" as unsetting an option. (Patrick
8667 Texier)
8668Files: src/option.c
8669
8670Patch 7.2.209
8671Problem: For xxd setmode() is undefined on Cygwin.
8672Solution: Include io.h. (Dominique Pelle)
8673Files: src/xxd/xxd.c
8674
8675Patch 7.2.210
8676Problem: When a file that is being edited has its timestamp updated outside
8677 of Vim and ":checktime" is used still get a warning when writing
8678 the file. (Matt Mueller)
8679Solution: Store the timestamp in b_mtime_read when the timestamp is the only
8680 thing that changed.
8681Files: src/fileio.c
8682
8683Patch 7.2.211
8684Problem: Memory leak when expanding a series of file names.
8685Solution: Use ga_clear_strings() instead of ga_clear().
8686Files: src/misc1.c
8687
8688Patch 7.2.212 (extra)
8689Problem: Warnings for redefining SIG macros.
8690Solution: Don't define them if already defined. (Bjorn Winckler)
8691Files: src/os_mac.h
8692
8693Patch 7.2.213
8694Problem: Warning for using vsprintf().
8695Solution: Use vim_vsnprintf().
8696Files: src/netbeans.c
8697
8698Patch 7.2.214
8699Problem: Crash with complete function for user command. (Andy Wokula)
8700Solution: Avoid using a NULL pointer (Dominique Pelle)
8701Files: src/ex_getln.c
8702
8703Patch 7.2.215
8704Problem: ml_get error when using ":vimgrep".
8705Solution: Load the memfile for the hidden buffer before putting it in a
8706 window. Correct the order of splitting the window and filling
8707 the window and buffer with data.
8708Files: src/fileio.c, src/proto/window.pro, src/quickfix.c, src/window.c
8709
8710Patch 7.2.216
8711Problem: Two error messages have the same number E812.
8712Solution: Give one message a different number.
8713Files: runtime/doc/autocmd.txt, runtime/doc/if_mzsch.txt, src/if_mzsch.c
8714
8715Patch 7.2.217
8716Problem: Running tests with valgrind doesn't work as advertised.
8717Solution: Fix the line in the Makefile.
8718Files: src/testdir/Makefile
8719
8720Patch 7.2.218
8721Problem: Cannot build GTK with hangul_input feature. (Dominique Pelle)
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +02008722Solution: Adjust #ifdef. (SungHyun Nam)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008723Files: src/gui.c
8724
8725Patch 7.2.219 (extra)
8726Problem: Photon GUI is outdated.
8727Solution: Updates for QNX 6.4.0. (Sean Boudreau)
8728Files: src/gui_photon.c
8729
8730Patch 7.2.220 (after 7.2.215)
8731Problem: a BufEnter autocommand that changes directory causes problems.
8732 (Ajit Thakkar)
8733Solution: Disable autocommands when opening a hidden buffer in a window.
8734Files: src/fileio.c
8735
8736Patch 7.2.221
8737Problem: X cut_buffer0 text is used as-is, it may be in the wrong encoding.
8738Solution: Convert between 'enc' and latin1. (James Vega)
8739Files: src/gui_gtk_x11.c, src/message.c, src/ops.c, src/proto/ui.pro,
8740 src/ui.c
8741
8742Patch 7.2.222
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02008743Problem: ":mksession" doesn't work properly with 'acd' set.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008744Solution: Make it work. (Yakov Lerner)
8745Files: src/ex_docmd.c
8746
8747Patch 7.2.223
8748Problem: When a script is run with ":silent" it is not able to give warning
8749 messages.
8750Solution: Add the ":unsilent" command.
8751Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c
8752
8753Patch 7.2.224
8754Problem: Crash when using 'completefunc'. (Ingo Karkat)
8755Solution: Disallow entering edit() recursively when doing completion.
8756Files: src/edit.c
8757
8758Patch 7.2.225
8759Problem: When using ":normal" a saved character may be executed.
8760Solution: Also store old_char when saving typeahead.
8761Files: src/getchar.c, src/structs.h
8762
8763Patch 7.2.226
8764Problem: ml_get error after deleting the last line. (Xavier de Gaye)
8765Solution: When adjusting marks a callback may be invoked. Adjust the cursor
8766 position before invoking deleted_lines_mark().
8767Files: src/ex_cmds.c, src/ex_docmd.c, src/if_mzsch.c, src/if_python.c,
8768 src/if_perl.xs, src/misc1.c
8769
8770Patch 7.2.227
8771Problem: When using ":cd" in a script there is no way to track this.
8772Solution: Display the directory when 'verbose' is 5 or higher.
8773Files: src/ex_docmd.c
8774
8775Patch 7.2.228
8776Problem: Cscope is limited to 8 connections.
8777Solution: Allocated the connection array to handle any number of
8778 connections. (Dominique Pelle)
8779Files: runtime/doc/if_cscop.txt, src/if_cscope.h, src/if_cscope.c
8780
8781Patch 7.2.229
8782Problem: Warning for shadowed variable.
8783Solution: Rename "wait" to "wait_time".
8784Files: src/os_unix.c
8785
8786Patch 7.2.230
8787Problem: A few old lint-style ARGUSED comments.
8788Solution: Change to the new UNUSED style.
8789Files: src/getchar.c
8790
8791Patch 7.2.231
Bram Moolenaardd007ed2013-07-09 15:44:17 +02008792Problem: Warning for unreachable code.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008793Solution: Add #ifdef.
8794Files: src/if_perl.xs
8795
8796Patch 7.2.232
8797Problem: Cannot debug problems with being in a wrong directory.
8798Solution: When 'verbose' is 5 or higher report directory changes.
8799Files: src/os_unix.c, src/os_unix.h, src/proto/os_unix.pro
8800
8801Patch 7.2.233 (extra part of 7.2.232)
8802Problem: Cannot debug problems with being in a wrong directory.
8803Solution: When 'verbose' is 5 or higher report directory changes.
8804Files: src/os_msdos.c, src/os_mswin.c, src/os_riscos.c, src/os_mac.h
8805
8806Patch 7.2.234
8807Problem: It is not possible to ignore file names without a suffix.
8808Solution: Use an empty entry in 'suffixes' for file names without a dot.
8809Files: runtime/doc/cmdline.txt, src/misc1.c
8810
8811Patch 7.2.235
8812Problem: Using CTRL-O z= in Insert mode has a delay before redrawing.
8813Solution: Reset msg_didout and msg_scroll.
8814Files: src/misc1.c, src/spell.c
8815
8816Patch 7.2.236
8817Problem: Mac: Compiling with Ruby doesn't always work.
8818Solution: In configure filter out the --arch argument (Bjorn Winckler)
8819Files: src/configure.in, src/auto/configure
8820
8821Patch 7.2.237
8822Problem: Crash on exit when window icon not set.
8823Solution: Copy terminal name when using it for the icon name.
8824Files: src/os_unix.c
8825
8826Patch 7.2.238
8827Problem: Leaking memory when setting term to "builtin_dumb".
8828Solution: Free memory when resetting term option t_Co.
8829Files: src/option.c, src/proto/option.pro, src/term.c
8830
8831Patch 7.2.239
8832Problem: Using :diffpatch twice or when patching fails causes memory
8833 corruption and/or a crash. (Bryan Venteicher)
8834Solution: Detect missing output file. Avoid using non-existing buffer.
8835Files: src/diff.c
8836
8837Patch 7.2.240
8838Problem: Crash when using find/replace dialog repeatedly. (Michiel
8839 Hartsuiker)
8840Solution: Avoid doing the operation while busy or recursively. Also refuse
8841 replace when text is locked.
8842Files: src/gui.c
8843
8844Patch 7.2.241
8845Problem: When using a combination of ":bufdo" and "doautoall" we may end up
8846 in the wrong directory. (Ajit Thakkar)
8847 Crash when triggering an autocommand in ":vimgrep". (Yukihiro
8848 Nakadaira)
8849Solution: Clear w_localdir and globaldir when using the aucmd_win.
8850 Use a separate flag to decide aucmd_win needs to be restored.
8851Files: src/fileio.c, src/globals.h, src/structs.h
8852
8853Patch 7.2.242
8854Problem: Setting 'lazyredraw' causes the cursor column to be recomputed.
8855 (Tom Link)
8856Solution: Only recompute the cursor column for a boolean option if changes
8857 the cursor position.
8858Files: src/option.c
8859
8860Patch 7.2.243
8861Problem: Memory leak when using :vimgrep and resizing. (Dominique Pelle)
8862Solution: Free memory for aucmd_win when resizing and don't allocate it
8863 twice.
8864Files: src/screen.c
8865
8866Patch 7.2.244
8867Problem: When 'enc' is utf-8 and 'fenc' is latin1, writing a non-latin1
8868 character gives a conversion error without any hint what is wrong.
8869Solution: When known add the line number to the error message.
8870Files: src/fileio.c
8871
8872Patch 7.2.245
8873Problem: When 'enc' is "utf-16" and 'fenc' is "utf-8" writing a file does
8874 conversion while none should be done. (Yukihiro Nakadaira) When
8875 'fenc' is empty the file is written as utf-8 instead of utf-16.
8876Solution: Do proper comparison of encodings, taking into account that all
8877 Unicode values for 'enc' use utf-8 internally.
8878Files: src/fileio.c
8879
8880Patch 7.2.246
8881Problem: Cscope home page link is wrong.
8882Solution: Update the URL. (Sergey Khorev)
8883Files: runtime/doc/if_cscop.txt
8884
8885Patch 7.2.247
8886Problem: Mzscheme interface minor problem.
8887Solution: Better error message when build fails. (Sergey Khorev)
8888Files: src/if_mzsch.c
8889
8890Patch 7.2.248 (extra)
8891Problem: Mzscheme interface building minor problems.
8892Solution: Update Win32 makefiles. (Sergey Khorev)
8893Files: src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak
8894
8895Patch 7.2.249
8896Problem: The script to check .po files can't handle '%' in plural forms.
8897Solution: Remove "Plural-Forms:" from the checked string.
8898Files: src/po/check.vim
8899
8900Patch 7.2.250 (extra)
8901Problem: Possible buffer overflow.
8902Solution: Compute the remaining space. (Dominique Pelle)
8903Files: src/GvimExt/gvimext.cpp
8904
8905Patch 7.2.251 (after 7.2.044)
8906Problem: Compiler adds invalid memory bounds check.
8907Solution: Remove _FORTIFY_SOURCE=2 from CFLAGS. (Dominique Pelle)
8908Files: src/auto/configure, src/configure.in
8909
8910Patch 7.2.252
Bram Moolenaar207f0092020-08-30 17:20:20 +02008911Problem: When using a multibyte 'enc' the 'iskeyword' option cannot
Bram Moolenaar6df6f472010-07-18 18:04:50 +02008912 contain characters above 128.
8913Solution: Use mb_ptr2char_adv().
8914Files: src/charset.c
8915
8916Patch 7.2.253
8917Problem: Netbeans interface: getLength always uses current buffer.
8918Solution: Use ml_get_buf() instead of ml_get(). (Xavier de Gaye)
8919Files: src/netbeans.c
8920
8921Patch 7.2.254
8922Problem: Compiler warning for assigning size_t to int.
8923Solution: Use size_t for the variable. (George Reilly)
8924Files: src/fileio.c
8925
8926Patch 7.2.255 (after 7.2.242)
8927Problem: Setting 'rightleft', 'linebreak' and 'wrap' may cause cursor to be
8928 in wrong place.
8929Solution: Recompute the cursor column for these options.
8930Files: src/option.c
8931
8932Patch 7.2.256
8933Problem: When 'guifont' was not set GTK font dialog doesn't have a default.
8934 (Andreas Metzler)
8935Solution: Set default to DEFAULT_FONT. (James Vega)
8936Files: src/gui_gtk_x11.c
8937
8938Patch 7.2.257
8939Problem: With GTK 2.17 lots of assertion error messages.
8940Solution: Remove check for static gravity. (Sebastian Droege)
8941Files: src/gui_gtk_f.c
8942
8943Patch 7.2.258
8944Problem: v:beval_col and b:beval_text are wrong in UTF-8 text. (Tony
8945 Mechelynck)
8946Solution: Use byte number instead of character number for the column.
8947Files: src/ui.c
8948
8949Patch 7.2.259
8950Problem: exists() doesn't work properly for an empty aucmd group.
8951Solution: Change how au_exists() handles a missing pattern. Also add a
8952 test for this. (Bob Hiestand)
8953Files: src/fileio.c, src/testdir/Makefile, src/testdir/test67.in,
8954 src/testdir/test67.ok
8955
8956Patch 7.2.260 (extra part of 7.2.259)
8957Problem: exists() doesn't work properly for empty aucmd group.
8958Solution: Change how au_exists() handles a missing pattern. Also add a
8959 test for this. (Bob Hiestand)
8960Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
8961 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
8962 src/testdir/Make_vms.mms
8963
8964Patch 7.2.261
8965Problem: When deleting lines with a specific folding configuration E38 may
8966 appear. (Shahaf)
8967Solution: When adjusting nested folds for deleted lines take into account
8968 that they don't start at the top of the enclosing fold.
8969Files: src/fold.c
8970
8971Patch 7.2.262
8972Problem: When using custom completion for a user command the pattern string
8973 goes beyond the cursor position. (Hari Krishna Dara)
8974Solution: Truncate the string at the cursor position.
8975Files: src/ex_getln.c, src/structs.h
8976
8977Patch 7.2.263
8978Problem: GTK2: when using the -geom argument with an offset from the right
8979 edge and the size is smaller than the default, the Vim window is
8980 not positioned properly.
8981Solution: Use another function to set the size. (Vitaly Minko)
8982Files: src/gui_gtk_x11.c
8983
8984Patch 7.2.264
8985Problem: GTK2: When the Vim window is maximized setting 'columns' or
8986 'lines' doesn't work.
8987Solution: Unmaximize the window before setting the size. (Vitaly Minko)
8988Files: src/gui.c, src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro
8989
8990Patch 7.2.265
8991Problem: When using ":silent broken" inside try/catch silency may persist.
8992 (dr-dr xp)
8993Solution: Set msg_silent when there is an error and it's bigger than the
8994 saved value.
8995Files: src/ex_docmd.c
8996
8997Patch 7.2.266
8998Problem: When an expression abbreviation is triggered, the typed character
8999 is unknown.
9000Solution: Make the typed character available in v:char.
9001Files: runtime/doc/map.txt, src/eval.c, src/getchar.c, src/ops.c,
9002 src/proto/eval.pro
9003
9004Patch 7.2.267
9005Problem: Crash for narrow window and double-width character.
9006Solution: Check for zero width. (Taro Muraoka)
9007Files: src/charset.c
9008
9009Patch 7.2.268
9010Problem: Crash when using Python to set cursor beyond end of line.
9011 (winterTTr)
9012Solution: Check the column to be valid.
9013Files: src/if_python.c
9014
9015Patch 7.2.269
9016Problem: Many people struggle to find out why Vim startup is slow.
9017Solution: Add the --startuptime command line flag.
9018Files: runtime/doc/starting.txt, src/globals.h, src/feature.h,
9019 src/main.c, src/macros.h
9020
9021Patch 7.2.270
9022Problem: Using ":@c" when the c register contains a CR causes the rest to
9023 be executed later. (Dexter Douglas)
9024Solution: Don't check for typeahead to start with ':', keep executing
9025 commands until all added typeahead has been used.
9026Files: src/ex_docmd.c
9027
9028Patch 7.2.271
9029Problem: Using freed memory in Motif GUI version when making a choice.
9030Solution: Free memory only after using it. (Dominique Pelle)
9031Files: src/gui_xmdlg.c
9032
9033Patch 7.2.272
9034Problem: "_.svz" is not recognized as a swap file. (David M. Besonen)
9035Solution: Accept .s[uvw][a-z] as a swap file name extension.
9036Files: src/memline.c
9037
9038Patch 7.2.273
9039Problem: Crash with redir to unknown array. (Christian Brabandt)
9040Solution: Don't assign the redir result when there was an error.
9041Files: src/eval.c
9042
9043Patch 7.2.274
9044Problem: Syntax folding doesn't work properly when adding a comment.
9045Solution: Fix it and add a test. (Lech Lorens)
9046Files: src/fold.c, src/testdir/test45.in, src/testdir/test45.ok
9047
9048Patch 7.2.275
9049Problem: Warning for unused argument and comparing signed and unsigned.
9050Solution: Add type cast.
9051Files: src/memline.c
9052
9053Patch 7.2.276
9054Problem: Crash when setting 'isprint' to a small bullet. (Raul Coronado)
9055Solution: Check for the character to be < 256. Also make it possible to
Bram Moolenaar207f0092020-08-30 17:20:20 +02009056 specify a range of multibyte characters. (Lech Lorens)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009057Files: src/charset.c
9058
9059Patch 7.2.277
9060Problem: CTRL-Y in a diff'ed window may move the cursor outside of the
9061 window. (Lech Lorens)
9062Solution: Limit the number of filler lines to the height of the window.
9063 Don't reset filler lines to zero for an empty buffer.
9064Files: src/move.c
9065
9066Patch 7.2.278
9067Problem: Using magic number in the folding code.
9068Solution: Use the defined MAX_LEVEL.
9069Files: src/fold.c
9070
9071Patch 7.2.279
9072Problem: Invalid memory read with visual mode "r". (Dominique Pelle)
9073Solution: Make sure the cursor position is valid. Don't check the cursor
9074 position but the position being used. And make sure we get the
9075 right line.
9076Files: src/misc2.c, src/ops.c
9077
9078Patch 7.2.280
9079Problem: A redraw in a custom statusline with %! may cause a crash.
9080 (Yukihiro Nakadaira)
9081Solution: Make a copy of 'statusline'. Also fix typo in function name
Bram Moolenaarc8734422012-06-01 22:38:45 +02009082 redraw_custom_statusline. (partly by Dominique Pelle)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009083Files: src/screen.c
9084
9085Patch 7.2.281
9086Problem: 'cursorcolumn' highlighting is wrong in diff mode.
9087Solution: Adjust the column computation. (Lech Lorens)
9088Files: src/screen.c
9089
9090Patch 7.2.282
9091Problem: A fold can't be closed.
9092Solution: Initialize fd_small to MAYBE. (Lech Lorens)
9093Files: src/fold.c
9094
9095Patch 7.2.283
9096Problem: Changing font while the window is maximized doesn't keep the
9097 window maximized.
9098Solution: Recompute number of lines and columns after changing font. (James
9099 Vega)
9100Files: src/gui_gtk_x11.c
9101
9102Patch 7.2.284
9103Problem: When editing the same buffer in two windows, one with folding,
9104 display may be wrong after changes.
9105Solution: Call set_topline() to take care of side effects. (Lech Lorens)
9106Files: src/misc1.c
9107
9108Patch 7.2.285 (after 7.2.169)
9109Problem: CTRL-U in Insert mode also deletes indent. (Andrey Voropaev)
9110Solution: Fix mistake made in patch 7.2.169.
9111Files: src/edit.c
9112
9113Patch 7.2.286 (after 7.2.269)
9114Problem: The "--startuptime=<file>" argument is not consistent with other
9115 arguments.
9116Solution: Use "--startuptime <file>". Added the +startuptime feature.
9117Files: runtime/doc/eval.txt, runtime/doc/starting.txt,
9118 runtime/doc/various.txt, src/eval.c, src/main.c, src/version.c
9119
9120Patch 7.2.287
9121Problem: Warning from gcc 3.4 about uninitialized variable.
9122Solution: Move assignment outside of #ifdef.
9123Files: src/if_perl.xs
9124
9125Patch 7.2.288
9126Problem: Python 2.6 pyconfig.h redefines macros.
9127Solution: Undefine the macros before including pyconfig.h.
9128Files: src/if_python.c
9129
9130Patch 7.2.289
9131Problem: Checking wrong struct member.
9132Solution: Change tb_buf to tb_noremap. (Dominique Pelle)
9133Files: src/getchar.c
9134
9135Patch 7.2.290
9136Problem: Not freeing memory from ":lmap", ":xmap" and ":menutranslate".
9137Solution: Free the memory when exiting. (Dominique Pelle)
9138Files: src/misc2.c
9139
9140Patch 7.2.291
9141Problem: Reading uninitialised memory in arabic mode.
9142Solution: Use utfc_ptr2char_len() rather than utfc_ptr2char(). (Dominique
9143 Pelle)
9144Files: src/screen.c
9145
9146Patch 7.2.292
Bram Moolenaar207f0092020-08-30 17:20:20 +02009147Problem: Block right-shift doesn't work properly with multibyte encoding
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009148 and 'list' set.
9149Solution: Add the missing "else". (Lech Lorens)
9150Files: src/ops.c
9151
9152Patch 7.2.293
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +02009153Problem: When setting 'comments' option it may be used in a wrong way.
Bram Moolenaare2db6952013-07-24 19:53:36 +02009154Solution: Don't increment after skipping over digits. (Yukihiro Nakadaira)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009155Files: src/misc1.c
9156
9157Patch 7.2.294
9158Problem: When using TEMPDIRS dir name could get too long.
9159Solution: Overwrite tail instead of appending each time. Use mkdtemp() when
9160 available. (James Vega)
9161Files: src/auto/configure, src/config.h.in, src/configure.in, src/fileio.c
9162
9163Patch 7.2.295
9164Problem: When using map() on a List the index is not known.
9165Solution: Set v:key to the index. (Hari Krishna Dara)
9166Files: runtime/doc/eval.txt, src/eval.c
9167
9168Patch 7.2.296
9169Problem: Help message about startuptime is wrong. (Dominique Pelle)
9170Solution: Remove the equal sign.
9171Files: src/main.c
9172
9173Patch 7.2.297
9174Problem: Reading freed memory when writing ":reg" output to a register.
9175 (Dominique Pelle)
9176Solution: Skip the register being written to.
9177Files: src/ops.c
9178
9179Patch 7.2.298
9180Problem: ":vimgrep" crashes when there is an autocommand that sets a
9181 window-local variable.
9182Solution: Initialize the w: hashtab for re-use. (Yukihiro Nakadaira)
9183Files: src/fileio.c
9184
9185Patch 7.2.299
9186Problem: Crash when comment middle is longer than start.
9187Solution: Fix size computation. (Lech Lorens)
9188Files: src/misc1.c
9189
9190Patch 7.2.300
9191Problem: Vim doesn't close file descriptors when forking and executing
9192 another command, e.g., ":shell".
9193Solution: Use FD_CLOEXEC when available. (James Vega)
9194Files: auto/configure, src/config.h.in, src/configure.in,
9195 src/ex_cmdds2.c, src/fileio.c, src/memfile.c, src/memline.c
9196
9197Patch 7.2.301
9198Problem: Formatting is wrong when 'tw' is set to a small value.
9199Solution: Fix it and add tests. Also fix behavior of "1" in 'fo'. (Yukihiro
9200 Nakadaira)
9201Files: src/edit.c, src/testdir/Makefile, src/testdir/test68.in,
9202 src/testdir/test68.ok, src/testdir/test69.in,
9203 src/testdir/test69,ok
9204
9205Patch 7.2.302 (extra part of 7.2.301)
9206Problem: Formatting wrong with small 'tw' value.
9207Solution: Add build rules for tests.
9208Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
9209 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
9210 src/testdir/Make_vms.mms
9211
9212Patch 7.2.303 (after 7.2.294)
9213Problem: Can't build on MS-Windows.
9214Solution: Add #ifdef around vim_settempdir(). (James Vega)
9215Files: src/fileio.c
9216
9217Patch 7.2.304
9218Problem: Compiler warning for bad pointer cast.
9219Solution: Use another variable for int pointer.
9220Files: src/ops.c
9221
9222Patch 7.2.305
9223Problem: Recursively redrawing causes a memory leak. (Dominique Pelle)
9224Solution: Disallow recursive screen updating.
9225Files: src/screen.c
9226
9227Patch 7.2.306
9228Problem: shellescape("10%%", 1) only escapes first %. (Christian Brabandt)
9229Solution: Don't copy the character after the escaped one.
9230Files: src/misc2.c
9231
9232Patch 7.2.307
9233Problem: Crash with a very long syntax match statement. (Guy Gur Ari)
9234Solution: When the offset does not fit in the two bytes available give an
9235 error instead of continuing with invalid pointers.
9236Files: src/regexp.c
9237
9238Patch 7.2.308
9239Problem: When using a regexp in the "\=" expression of a substitute
9240 command, submatch() returns empty strings for further lines.
9241 (Clockwork Jam)
9242Solution: Save and restore the line number and line count when calling
9243 reg_getline().
9244Files: src/regexp.c
9245
9246Patch 7.2.309 (after 7.2.308)
9247Problem: Warning for missing function prototype. (Patrick Texier)
9248Solution: Add the prototype.
9249Files: src/regexp.c
9250
9251Patch 7.2.310
9252Problem: When a filetype plugin in ~/.vim/ftdetect uses ":setfiletype" and
9253 the file starts with a "# comment" it gets "conf" filetype.
9254Solution: Check for "conf" filetype after using ftdetect plugins.
9255Files: runtime/filetype.vim
9256
9257Patch 7.2.311
9258Problem: Can't compile with FreeMiNT.
9259Solution: Change #ifdef for limits.h. (Alan Hourihane)
9260Files: src/fileio.c
9261
9262Patch 7.2.312
9263Problem: iconv() returns an invalid character sequence when conversion
9264 fails. It should return an empty string. (Yongwei Wu)
9265Solution: Be more strict about invalid characters in the input.
9266Files: src/mbyte.c
9267
9268Patch 7.2.313
9269Problem: Command line completion doesn't work after "%:h" and similar.
9270Solution: Expand these items before doing the completion.
9271Files: src/ex_getln.c, src/misc1.c, src/proto/misc1.pro
9272
9273Patch 7.2.314
9274Problem: Missing function in small build.
9275Solution: Always include concat_str.
9276Files: src/misc1.c
9277
9278Patch 7.2.315
9279Problem: Python libs can't be found on 64 bit system.
9280Solution: Add lib64 to the list of directories. (Michael Henry)
9281Files: src/auto/configure, src/configure.in
9282
9283Patch 7.2.316
9284Problem: May get multiple _FORTIFY_SOURCE arguments. (Tony Mechelynck)
9285Solution: First remove all these arguments and then add the one we want.
9286 (Dominique Pelle)
9287Files: src/auto/configure, src/configure.in
9288
9289Patch 7.2.317
9290Problem: Memory leak when adding a highlight group with unprintable
9291 characters, resulting in E669.
9292Solution: Free the memory. And fix a few typos. (Dominique Pelle)
9293Files: src/syntax.c
9294
9295Patch 7.2.318
9296Problem: Wrong locale value breaks floating point numbers for gvim.
9297Solution: Set the locale again after doing GUI inits. (Dominique Pelle)
9298Files: src/main.c
9299
9300Patch 7.2.319
9301Problem: Motif: accessing freed memory when cancelling font dialog.
9302Solution: Destroy the widget only after accessing it. (Dominique Pelle)
9303Files: src/gui_xmdlg.c
9304
9305Patch 7.2.320
9306Problem: Unused function in Mzscheme interface.
9307Solution: Remove the function and what depends on it. (Dominique Pelle)
9308Files: src/if_mzsch.c, src/proto/if_mzsch.pro
9309
9310Patch 7.2.321
9311Problem: histadd() and searching with "*" fails to add entry to history
9312 when it is empty.
9313Solution: Initialize the history. (Lech Lorens)
9314Files: src/eval.c, src/normal.c
9315
9316Patch 7.2.322
9317Problem: Wrong indenting in virtual replace mode with CTRL-Y below a short
9318 line.
9319Solution: Check for character to be NUL. (suggested by Lech Lorens)
9320Files: src/edit.c
9321
9322Patch 7.2.323 (extra)
9323Problem: Balloon evaluation crashes on Win64.
9324Solution: Change pointer types. (Sergey Khorev)
9325Files: src/gui_w32.c
9326
9327Patch 7.2.324
9328Problem: A negative column argument in setpos() may cause a crash.
9329Solution: Check for invalid column number. (James Vega)
9330Files: src/eval.c, src/misc2.c
9331
9332Patch 7.2.325
9333Problem: A stray "w" in the startup vimrc file causes the edited file to be
9334 replaced with an empty file. (Stone Kang).
9335Solution: Do not write a buffer when it has never been loaded.
9336Files: src/fileio.c
9337
9338Patch 7.2.326
9339Problem: Win32: $HOME doesn't work when %HOMEPATH% is not defined.
9340Solution: Use "\" for %HOMEPATH% when it is not defined.
9341Files: src/misc1.c
9342
9343Patch 7.2.327
9344Problem: Unused functions in Workshop.
9345Solution: Add "#if 0" and minor cleanup. (Dominique Pelle)
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02009346Files: src/workshop.c, src/integration.c, src/integration.h
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009347
9348Patch 7.2.328
9349Problem: has("win64") does not return 1 on 64 bit MS-Windows version.
9350Solution: Also check for _WIN64 besides WIN64.
9351Files: src/eval.c
9352
9353Patch 7.2.329
9354Problem: "g_" doesn't position cursor correctly when in Visual mode and
9355 'selection' is "exclusive". (Ben Fritz)
9356Solution: Call adjust_for_sel().
9357Files: src/normal.c
9358
9359Patch 7.2.330
9360Problem: Tables for Unicode case operators are outdated.
9361Solution: Add a Vim script for generating the tables. Include tables for
9362 Unicode 5.2.
9363Files: runtime/tools/README.txt, runtime/tools/unicode.vim, src/mbyte.c
9364
9365Patch 7.2.331
9366Problem: Can't interrupt "echo list" for a very long list.
9367Solution: Call line_breakcheck() in list_join().
9368Files: src/eval.c
9369
9370Patch 7.2.332
9371Problem: Crash when spell correcting triggers an autocommand that reloads
9372 the buffer.
9373Solution: Make a copy of the line to be modified. (Dominique Pelle)
9374Files: src/spell.c
9375
9376Patch 7.2.333
9377Problem: Warnings from static code analysis.
9378Solution: Small changes to various lines. (Dominique Pelle)
9379Files: src/buffer.c, src/edit.c, src/ex_getln.c, src/fileio.c,
9380 src/if_cscope.c, src/netbeans.c, src/ops.c, src/quickfix.c,
9381 src/syntax.c, src/ui.c
9382
9383Patch 7.2.334
9384Problem: Postponing keys in Netbeans interface does not work properly.
9385Solution: Store the key string instead of the number. Avoid an infinite
9386 loop. (Mostly by Xavier de Gaye)
9387Files: src/netbeans.c, src/proto/netbeans.pro
9388
9389Patch 7.2.335
9390Problem: The CTRL-] command escapes too many characters.
9391Solution: Use a different list of characters to be escaped. (Sergey Khorev)
9392Files: src/normal.c
9393
9394Patch 7.2.336
9395Problem: MzScheme interface can't evaluate an expression.
9396Solution: Add mzeval(). (Sergey Khorev)
9397Files: runtime/doc/eval.txt, runtime/doc/if_mzsch.txt,
9398 runtime/doc/usr_41.txt, src/eval.c, src/if_mzsch.c,
9399 src/proto/eval.pro, src/proto/if_mzsch.pro,
9400 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
9401 src/testdir/Makefile, src/testdir/main.aap, src/testdir/test1.in,
9402 src/testdir/test70.in, src/testdir/test70.ok
9403
9404Patch 7.2.337
9405Problem: The :compiler command doesn't function properly when invoked in a
9406 function.
9407Solution: Add "g:" before "current_compiler". (Yukihiro Nakadaira)
9408Files: src/ex_cmds2.c
9409
9410Patch 7.2.338 (after 7.2.300)
9411Problem: Part of FD_CLOEXEC change is missing.
9412Solution: Include source file skipped because of typo.
9413Files: src/ex_cmds2.c
9414
9415Patch 7.2.339 (after 7.2.269)
9416Problem: Part of --startuptime patch is missing.
9417Solution: Add check for time_fd.
9418Files: src/ex_cmds2.c
9419
9420Patch 7.2.340
9421Problem: Gcc warning for condition that can never be true. (James Vega)
9422Solution: Use start_lvl instead flp->lvl.
9423Files: src/fold.c
9424
9425Patch 7.2.341
9426Problem: Popup menu wraps to next line when double-wide character doesn't
9427 fit. (Jiang Ma)
9428Solution: Display a ">" instead. (Dominique Pelle)
9429Files: src/screen.c
9430
9431Patch 7.2.342
9432Problem: Popup menu displayed wrong in 'rightleft' mode when there are
Bram Moolenaar207f0092020-08-30 17:20:20 +02009433 multibyte characters.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009434Solution: Adjust the column computations. (Dominique Pelle)
9435Files: src/popupmnu.c
9436
9437Patch 7.2.343 (after 7.2.338)
9438Problem: Can't compile on Win32.
9439Solution: Insert the missing '|'.
9440Files: src/ex_cmds2.c
9441
9442Patch 7.2.344 (after 7.2.343)
9443Problem: Can't compile on some systems
9444Solution: Move the #ifdef outside of the mch_open macro. (Patrick Texier)
9445Files: src/ex_cmds2.c
9446
9447Patch 7.2.345
9448Problem: Tab line is not updated when the value of 'bt' is changed.
9449Solution: Call redraw_titles(). (Lech Lorens)
9450Files: src/option.c
9451
9452Patch 7.2.346
9453Problem: Repeating a command with @: causes a mapping to be applied twice.
9454Solution: Do not remap characters inserted in the typeahead buffer. (Kana
9455 Natsuno)
9456Files: src/ops.c
9457
9458Patch 7.2.347
9459Problem: Crash when executing <expr> mapping redefines that same mapping.
9460Solution: Save the values used before evaluating the expression.
9461Files: src/getchar.c
9462
9463Patch 7.2.348 (after 7.2.330)
9464Problem: Unicode double-width characters are not up-to date.
9465Solution: Produce the double-width table like the others.
9466Files: runtime/tools/unicode.vim, src/mbyte.c
9467
9468Patch 7.2.349
9469Problem: CTRL-W gf doesn't put the new tab in the same place as "tab split"
9470 and "gf". (Tony Mechelynck)
9471Solution: Store the tab number in cmdmod.tab.
9472Files: src/window.c
9473
9474Patch 7.2.350
9475Problem: Win32: When changing font the window may jump from the secondary
9476 to the primary screen. (Michael Wookey)
9477Solution: When the screen position was negative don't correct it to zero.
9478Files: src/gui.c
9479
9480Patch 7.2.351 (after 7.2.347)
9481Problem: Can't build with some compilers.
9482Solution: Move the #ifdef outside of a macro. Cleanup the code.
9483Files: src/getchar.c
9484
9485Patch 7.2.352 (extra)
9486Problem: Win64: Vim doesn't work when cross-compiled with MingW libraries.
9487Solution: Always return TRUE for the WM_NCCREATE message. (Andy Kittner)
9488Files: src/gui_w48.c
9489
9490Patch 7.2.353
9491Problem: No command line completion for ":profile".
9492Solution: Complete the subcommand and file name.
9493Files: src/ex_docmd.c, src/ex_cmds2.c, src/ex_getln.c,
9494 src/proto/ex_cmds2.pro, src/vim.h
9495
9496Patch 7.2.354
9497Problem: Japanese single-width double-byte characters not handled correctly.
9498Solution: Put 0x8e in ScreenLines[] and the second byte in ScreenLines2[].
9499 (partly by Kikuchan)
9500Files: src/screen.c
9501
9502Patch 7.2.355
9503Problem: Computing the cursor column in validate_cursor_col() is wrong when
9504 line numbers are used and 'n' is not in 'cpoptions', causing the
9505 popup menu to be positioned wrong.
9506Solution: Correctly use the offset. (partly by Dominique Pelle)
9507Files: src/move.c
9508
9509Patch 7.2.356
9510Problem: When 'foldmethod' is changed not all folds are closed as expected.
9511Solution: In foldUpdate() correct the start position and reset fd_flags when
9512 w_foldinvalid is set. (Lech Lorens)
9513Files: src/fold.c
9514
9515Patch 7.2.357
9516Problem: When changing 'fileformat' from/to "mac" and there is a CR in the
9517 text the display is wrong.
9518Solution: Redraw the text when 'fileformat' is changed. (Ben Schmidt)
9519Files: src/option.c
9520
9521Patch 7.2.358
9522Problem: Compiler warnings on VMS. (Zoltan Arpadffy)
9523Solution: Pass array itself instead its address. Return a value.
9524Files: src/gui_gtk_x11.c, src/os_unix.c
9525
9526Patch 7.2.359
9527Problem: Crash when using the Netbeans join command.
9528Solution: Make sure the ml_flush_line() function is not used recursively.
9529 (Xavier de Gaye)
9530Files: src/memline.c
9531
9532Patch 7.2.360
9533Problem: Ruby on MS-Windows: can't use sockets.
9534Solution: Call NtInitialize() during initialization. (Ariya Mizutani)
9535Files: src/if_ruby.c
9536
9537Patch 7.2.361
9538Problem: Ruby 1.9 is not supported.
9539Solution: Add Ruby 1.9 support. (Masaki Suketa)
9540Files: src/Makefile, src/auto/configure, src/configure.in, src/if_ruby.c
9541
9542Patch 7.2.362 (extra, after 7.2.352)
9543Problem: Win64: Vim doesn't work when cross-compiled with MingW libraries.
9544Solution: Instead of handling WM_NCCREATE, create wide text area window
9545 class if the parent window iw side. (Sergey Khorev)
9546Files: src/gui_w32.c, src/gui_w48.c
9547
9548Patch 7.2.363
9549Problem: Can't dynamically load Perl 5.10.
9550Solution: Add the function Perl_croak_xs_usage. (Sergey Khorev)
9551Files: src/if_perl.xs
9552
9553Patch 7.2.364 (extra)
9554Problem: Can't build gvimext.dll on Win 7 x64 using MinGW (John Marriott)
9555Solution: Check if _MSC_VER is defined. (Andy Kittner)
9556Files: src/GvimExt/gvimext.h
9557
9558Patch 7.2.365 (extra)
9559Problem: MS-Windows with MingW: "File->Save As" does not work. (John
9560 Marriott)
9561Solution: Correctly fill in structure size. (Andy Kittner)
9562Files: src/gui_w48.c
9563
9564Patch 7.2.366
9565Problem: CTRL-B doesn't go back to the first line of the buffer.
9566Solution: Avoid an overflow when adding MAXCOL.
9567Files: src/move.c
9568
9569Patch 7.2.367
9570Problem: "xxd -r -p" doesn't work as documented.
9571Solution: Skip white space. (James Vega)
9572Files: src/xxd/xxd.c
9573
9574Patch 7.2.368 (after 7.2.361)
9575Problem: Ruby interface: Appending line doesn't work. (Michael Henry)
9576Solution: Reverse check for NULL line. (James Vega)
9577Files: src/if_ruby.c
9578
9579Patch 7.2.369
9580Problem: Error message is not easy to understand.
9581Solution: Add quotes. (SungHyun Nam)
9582Files: src/ex_cmds2.c
9583
9584Patch 7.2.370 (after 7.2.356)
9585Problem: A redraw may cause folds to be closed.
9586Solution: Revert part of the previous patch. Add a test. (Lech Lorens)
9587Files: src/diff.c, src/fold.c, src/option.c, src/testdir/test45.in,
9588 src/testdir/test45.ok
9589
9590Patch 7.2.371
9591Problem: Build problems on Tandem NonStop.
9592Solution: A few changes to #ifdefs (Joachim Schmitz)
9593Files: src/auto/configure, src/configure.in, src/config.h.in, src/vim.h,
9594 src/if_cscope.c, src/osdef1.h.in, src/tag.c
9595
9596Patch 7.2.372 (extra)
9597Problem: Cross-compiling GvimExt and xxd doesn't work.
9598Solution: Change the build files. (Markus Heidelberg)
9599Files: src/INSTALLpc.txt, src/GvimExt/Make_ming.mak, src/Make_cyg.mak,
9600 src/Make_ming.mak, src/xxd/Make_cyg.mak
9601
9602Patch 7.2.373
9603Problem: Gcc 4.5 adds more error messages. (Chris Indy)
9604Solution: Update default 'errorformat'.
9605Files: src/option.h
9606
9607Patch 7.2.374
9608Problem: Ruby eval() doesn't understand Vim types.
9609Solution: Add the vim_to_ruby() function. (George Gensure)
9610Files: src/eval.c, src/if_ruby.c
9611
9612Patch 7.2.375
9613Problem: ml_get errors when using ":bprevious" in a BufEnter autocmd.
9614 (Dominique Pelle)
9615Solution: Clear w_valid when entering another buffer.
9616Files: src/buffer.c
9617
9618Patch 7.2.376
9619Problem: ml_get error when using SiSU syntax. (Nathan Thomas)
9620Solution: If the match ends below the last line move it to the end of the
9621 last line.
9622Files: src/syntax.c
9623
9624Patch 7.2.377 (extra, after 7.2.372)
9625Problem: Misplaced assignment. Duplicate build line for gvimext.dll.
9626Solution: Move setting CROSS_COMPILE to before ifneq. Remove the wrong
9627 build line. (Markus Heidelberg)
9628Files: src/Make_ming.mak
9629
9630Patch 7.2.378
9631Problem: C function declaration indented too much. (Rui)
9632Solution: Don't see a line containing { or } as a type. (Matt Wozniski)
9633Files: src/misc1.c
9634
9635Patch 7.2.379
9636Problem: 'eventignore' is set to an invalid value inside ":doau". (Antony
9637 Scriven)
9638Solution: Don't include the leading comma when the option was empty.
9639Files: src/fileio.c
9640
9641Patch 7.2.380 (after 7.2.363)
9642Problem: Perl interface builds with 5.10.1 but not with 5.10.0.
9643Solution: Change the #ifdefs. (Sergey Khorev)
9644Files: src/if_perl.xs
9645
9646Patch 7.2.381
9647Problem: No completion for :behave.
9648Solution: Add :behave completion. Minor related fixes. (Dominique Pelle)
9649Files: src/ex_docmd.c, src/ex_getln.c, src/proto/ex_docmd.pro, src/vim.h
9650
9651Patch 7.2.382
9652Problem: Accessing freed memory when closing the cmdline window when
9653 'bufhide' is set to "wipe".
9654Solution: Check if the buffer still exists before invoking close_buffer()
9655 (Dominique Pelle)
9656Files: src/ex_getln.c
9657
9658Patch 7.2.383
9659Problem: Vim doesn't build cleanly with MSVC 2010.
9660Solution: Change a few types. (George Reilly)
9661Files: src/ex_cmds2.c, src/if_python.c, src/syntax.c
9662
9663Patch 7.2.384 (extra)
9664Problem: Vim doesn't build properly with MSVC 2010.
9665Solution: Add the nmake version to the build file. (George Reilly)
9666Files: src/Make_mvc.mak, src/testdir/Make_dos.mak
9667
9668Patch 7.2.385
9669Problem: When in the command line window dragging status line only works
9670 for last-but-one window. (Jean Johner)
9671Solution: Remove the code that disallows this.
9672Files: src/ui.c
9673
9674Patch 7.2.386
9675Problem: Focus hack for KDE 3.1 causes problems for other window managers.
9676Solution: Remove the hack. (forwarded by Joel Bradshaw)
9677Files: src/gui_gtk.c
9678
9679Patch 7.2.387
9680Problem: Ruby with MingW still doesn't build all versions.
9681Solution: More #ifdefs for the Ruby code. (Sergey Khorev)
9682Files: src/if_ruby.c
9683
9684Patch 7.2.388 (extra part of 7.2.387)
9685Problem: Ruby with MingW still doesn't build all versions.
9686Solution: Different approach to build file. (Sergey Khorev)
9687Files: src/Make_ming.mak
9688
9689Patch 7.2.389
9690Problem: synIDattr() cannot return the font.
9691Solution: Support the "font" argument. (Christian Brabandt)
9692Files: runtime/doc/eval.txt, src/eval.c, src/syntax.c
9693
9694Patch 7.2.390
9695Problem: In some situations the popup menu can be displayed wrong.
9696Solution: Remove the popup menu if the cursor moved. (Lech Lorens)
9697Files: src/edit.c
9698
9699Patch 7.2.391
9700Problem: Internal alloc(0) error when doing "CTRL-V $ c". (Martti Kuparinen)
9701Solution: Fix computations in getvcol(). (partly by Lech Lorens)
9702Files: src/charset.c, src/memline.c
9703
9704Patch 7.2.392
9705Problem: Netbeans hangs reading from a socket at the maximum block size.
9706Solution: Use select() or poll(). (Xavier de Gaye)
9707Files: src/vim.h, src/os_unixx.h, src/if_xcmdsrv.c, src/netbeans.c
9708
9709Patch 7.2.393
9710Problem: Mac: Can't build with different Xcode developer tools directory.
9711Solution: make "Developer" directory name configurable. (Rainer Muller)
9712Files: src/configure.in, src/auto/configure
9713
9714Patch 7.2.394
9715Problem: .lzma and .xz files are not supported.
9716Solution: Recognize .lzma and .xz files so that they can be edited.
9717Files: runtime/plugin/gzip.vim
9718
9719Patch 7.2.395
9720Problem: In help CTRL=] on g?g? escapes the ?, causing it to fail. (Tony
9721 Mechelynck)
9722Solution: Don't escape ? for a help command. (Sergey Khorev)
9723Files: src/normal.c
9724
9725Patch 7.2.396
9726Problem: Get E38 errors. (Dasn)
9727Solution: Set cursor to line 1 instead of 0. (Dominique Pelle)
9728Files: src/popupmnu.c
9729
9730Patch 7.2.397
9731Problem: Redundant check for w_lines_valid.
9732Solution: Remove the if. (Lech Lorens)
9733Files: src/fold.c
9734
9735Patch 7.2.398
9736Problem: When moving windows the cursor ends up in the wrong line.
9737Solution: Set the window width and height properly. (Lech Lorens)
9738Files: src/window.c
9739
9740Patch 7.2.399 (extra, after 7.2.388)
9741Problem: Cannot compile on MingW.
9742Solution: Move ifneq to separate line. (Vlad Sandrini, Dominique Pelle)
9743Files: src/Make_ming.mak
9744
9745Patch 7.2.400 (after 7.2.387)
9746Problem: Dynamic Ruby is not initialised properly for version 1.9.1.
9747 Ruby cannot create strings from NULL.
9748Solution: Cleanup #ifdefs. Handle NULL like an empty string. Add
9749 ruby_init_stack. (Sergey Khorev)
9750Files: src/if_ruby.c
9751
9752Patch 7.2.401
9753Problem: ":e dir<Tab>" with 'wildmode' set to "list" doesn't highlight
9754 directory names with a space. (Alexandre Provencio)
9755Solution: Remove the backslash before checking if the name is a directory.
9756 (Dominique Pelle)
9757Files: src/ex_getln.c
9758
9759Patch 7.2.402
9760Problem: This gives a #705 error: let X = function('haslocaldir')
9761 let X = function('getcwd')
9762Solution: Don't give E705 when the name is found in the hashtab. (Sergey
9763 Khorev)
9764Files: src/eval.c
9765
9766Patch 7.2.403 (after 7.2.400)
9767Problem: Compiler warning for pointer type. (Tony Mechelynck)
9768Solution: Move type cast to the right place.
9769Files: src/if_ruby.c
9770
9771Patch 7.2.404
9772Problem: Pointers for composing characters are not properly initialized.
9773Solution: Compute the size of the pointer, not what it points to. (Yukihiro
9774 Nakadaira)
9775Files: src/screen.c
9776
9777Patch 7.2.405
9778Problem: When built with small features the matching text is not
9779 highlighted for ":s/pat/repl/c".
9780Solution: Remove the #ifdef for IncSearch. (James Vega)
9781Files: src/syntax.c
9782
9783Patch 7.2.406
9784Problem: Patch 7.2.119 introduces uninit mem read. (Dominique Pelle)
Bram Moolenaardd60c362023-02-27 15:49:53 +00009785Solution: Only used ScreenLinesC when ScreenLinesUC is not zero. (Yukihiro
9786 Nakadaira) Also clear ScreenLinesC when allocating.
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009787Files: src/screen.c
9788
9789Patch 7.2.407
9790Problem: When using an expression in ":s" backslashes in the result are
9791 dropped. (Sergey Goldgaber, Christian Brabandt)
9792Solution: Double backslashes.
9793Files: src/regexp.c
9794
9795Patch 7.2.408
9796Problem: With ":g/the/s/foo/bar/" the '[ and '] marks can be set to a line
9797 that was not changed.
9798Solution: Only set '[ and '] marks when a substitution was done.
9799Files: src/ex_cmds.c
9800
9801Patch 7.2.409
9802Problem: Summary of number of substitutes is incorrect for ":folddo". (Jean
9803 Johner)
9804Solution: Reset sub_nsubs and sub_nlines in global_exe().
9805Files: src/ex_cmds.c
9806
9807Patch 7.2.410
9808Problem: Highlighting directories for completion doesn't work properly.
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +02009809Solution: Don't halve backslashes when not needed, expanded "~/".
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009810 (Dominique Pelle)
9811Files: src/ex_getln.c
9812
9813Patch 7.2.411
9814Problem: When parsing 'cino' a comma isn't skipped properly.
9815Solution: Skip the comma. (Lech Lorens)
9816Files: src/misc1.c
9817
9818Patch 7.2.412
9819Problem: [ or ] followed by mouse click doesn't work.
9820Solution: Reverse check for key being a mouse event. (Dominique Pelle)
9821Files: src/normal.c
9822
9823Patch 7.2.413
9824Problem: Large file support is incorrect.
9825Solution: Add AC_SYS_LARGEFILE to configure. (James Vega)
9826Files: src/configure.in, src/config.h.in, src/auto/configure
9827
9828Patch 7.2.414
Bram Moolenaar3ec32172021-05-16 12:39:47 +02009829Problem: CTRL-K <space> <space> does not produce 0xa0 as expected. (Tony
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009830 Mechelynck)
9831Solution: Remove the Unicode range 0xe000 - 0xefff from digraphs, these are
9832 not valid characters.
9833Files: src/digraph.c
9834
9835Patch 7.2.415
9836Problem: Win32: Can't open a remote file when starting Vim.
9837Solution: Don't invoke cygwin_conv_path() for URLs. (Tomoya Adachi)
9838Files: src/main.c
9839
9840Patch 7.2.416
9841Problem: Logtalk.dict is not installed.
9842Solution: Add it to the install target. (Markus Heidelberg)
9843Files: src/Makefile
9844
9845Patch 7.2.417
9846Problem: When 'shell' has an argument with a slash then 'shellpipe' is not
9847 set properly. (Britton Kerin)
9848Solution: Assume there are no spaces in the path, arguments follow.
9849Files: src/option.c
9850
9851Patch 7.2.418
9852Problem: Vim tries to set the background or foreground color in a terminal
9853 to -1. (Graywh) Happens with ":hi Normal ctermbg=NONE".
9854Solution: When resetting the foreground or background color don't set the
9855 color, let the clear screen code do that.
9856Files: src/syntax.c
9857
9858Patch 7.2.419
9859Problem: Memory leak in Motif when clicking on "Search Vim Help".
9860Solution: Free string returned by XmTextGetString(). (Dominique Pelle)
9861Files: src/gui_motif.c
9862
9863Patch 7.2.420
9864Problem: ":argedit" does not accept "++enc=utf8" as documented. (Dominique
9865 Pelle)
9866Solution: Add the ARGOPT flag to ":argedit".
9867Files: src/ex_cmds.h
9868
9869Patch 7.2.421
9870Problem: Folds are sometimes not updated properly and there is no way to
9871 force an update.
9872Solution: Make "zx" and "zX" recompute folds (suggested by Christian
9873 Brabandt)
9874Files: src/normal.c
9875
9876Patch 7.2.422
9877Problem: May get E763 when using spell dictionaries.
9878Solution: Avoid utf-8 case folded character to be truncated to 8 bits and
9879 differ from latin1. (Dominique Pelle)
9880Files: src/spell.c
9881
9882Patch 7.2.423
9883Problem: Crash when assigning s: to variable. (Yukihiro Nakadaira)
9884Solution: Make ga_scripts contain pointer to scriptvar_T instead of
9885 scriptvar_T itself. (Dominique Pelle)
9886Files: src/eval.c
9887
9888Patch 7.2.424
9889Problem: ":colorscheme" without an argument doesn't do anything.
9890Solution: Make it echo the current color scheme name. (partly by Christian
9891 Brabandt)
9892Files: runtime/doc/syntax.txt, src/ex_cmds.h, src/ex_docmd.c
9893
9894Patch 7.2.425
9895Problem: Some compilers complain about fourth EX() argument.
9896Solution: Add cast to long_u.
9897Files: src/ex_cmds.h
9898
9899Patch 7.2.426
9900Problem: Commas in 'langmap' are not always handled correctly.
9901Solution: Require commas to be backslash escaped. (James Vega)
9902Files: src/option.c
9903
9904Patch 7.2.427
9905Problem: The swapfile is created using the destination of a symlink, but
9906 recovery doesn't follow symlinks.
9907Solution: When recovering, resolve symlinks. (James Vega)
9908Files: src/memline.c
9909
9910Patch 7.2.428
9911Problem: Using setqflist([]) to clear the error list doesn't work properly.
9912Solution: Set qf_nonevalid to TRUE when appropriate. (Christian Brabandt)
9913Files: src/quickfix.c
9914
9915Patch 7.2.429
9916Problem: A file that exists but access is denied may result in a "new file"
9917 message. E.g. when its directory is unreadable.
9918Solution: Specifically check for ENOENT to decide a file doesn't exist.
9919 (partly by James Vega)
9920Files: src/fileio.c
9921
9922Patch 7.2.430
9923Problem: The ++bad argument is handled wrong, resulting in an invalid
9924 memory access.
9925Solution: Use the bad_char field only for the replacement character, add
9926 bad_char_idx to store the position. (Dominique Pelle)
9927Files: src/eval.c, src/ex_cmds.h, src/ex_docmd.c
9928
9929Patch 7.2.431
9930Problem: ":amenu" moves the cursor when in Insert mode.
9931Solution: Use CTRL-\ CTRL-O instead of CTRL-O. (Christian Brabandt)
9932Files: src/menu.c
9933
9934Patch 7.2.432
9935Problem: When menus are translated they can only be found by the translated
9936 name. That makes ":emenu" difficult to use.
9937Solution: Store the untranslated name and use it for completion and :emenu.
9938 (Liang Peng (Bezetek James), Edward L. Fox)
9939Files: src/menu.c, src/structs.h
9940
9941Patch 7.2.433
9942Problem: Can't use cscope with QuickFixCmdPre and QuickFixCmdPost.
9943Solution: Add cscope support for these autocmd events. (Bryan Venteicher)
9944Files: runtime/doc/autocmd.txt, src/if_cscope.c
9945
9946Patch 7.2.434 (after 7.2.432)
9947Problem: Compilation fails without the multi-lang feature.
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +02009948Solution: Add #ifdefs. (John Marriott)
Bram Moolenaar6df6f472010-07-18 18:04:50 +02009949Files: src/menu.c
9950
9951Patch 7.2.435 (after 7.2.430)
9952Problem: Crash when using bad_char_idx uninitialized. (Patrick Texier)
9953Solution: Don't use bad_char_idx, reproduce the ++bad argument from bad_char.
9954Files: src/eval.c, src/ex_cmds.h, src/ex_docmd.c
9955
9956Patch 7.2.436
9957Problem: Reproducible crash in syntax HL. (George Reilly, Dominique Pelle)
9958Solution: Make sst_stacksize an int instead of short. (Dominique Pelle)
9959Files: src/structs.h
9960
9961Patch 7.2.437 (after 7.2.407)
9962Problem: When "\\\n" appears in the expression result the \n doesn't result
9963 in a line break. (Andy Wokula)
9964Solution: Also replace a \n after a backslash into \r.
9965Files: src/regexp.c
9966
9967Patch 7.2.438 (after 7.2.427)
9968Problem: "vim -r" crashes.
9969Solution: Don't use NULL pointer argument.
9970Files: src/memline.c
9971
9972Patch 7.2.439
9973Problem: Invalid memory access when doing thesaurus completion and
9974 'infercase' is set.
9975Solution: Use the minimal length of completed word and replacement.
9976 (Dominique Pelle)
9977Files: src/edit.c
9978
9979Patch 7.2.440
9980Problem: Calling a function through a funcref, where the function deletes
9981 the funcref, leads to an invalid memory access.
9982Solution: Make a copy of the function name. (Lech Lorens)
9983Files: src/eval.c, src/testdir/test34.in, src/testdir/test34.ok
9984
9985Patch 7.2.441
9986Problem: When using ":earlier" undo information may be wrong.
9987Solution: When changing alternate branches also adjust b_u_oldhead.
9988Files: src/undo.c
9989
9990Patch 7.2.442 (after 7.2.201)
9991Problem: Copy/paste with OpenOffice doesn't work.
9992Solution: Do not offer the HTML target when it is not supported. (James
9993 Vega)
9994Files: src/gui_gtk_x11.c, src/option.c, src/proto/gui_gtk_x11.pro
9995
9996Patch 7.2.443
9997Problem: Using taglist() on a tag file with duplicate fields generates an
9998 internal error. (Peter Odding)
9999Solution: Check for duplicate field names.
10000Files: src/eval.c, src/proto/eval.pro, src/tag.c
10001
10002Patch 7.2.444 (after 7.2.442)
10003Problem: Can't build with GTK 1, gtk_selection_clear_targets() is not
10004 available. (Patrick Texier)
10005Solution: Don't change the targets for GTK 1, set them once.
10006Files: src/gui_gtk_x11.c, src/option.c
10007
10008Patch 7.2.445
10009Problem: Crash when using undo/redo and a FileChangedRO autocmd event that
10010 reloads the buffer. (Dominique Pelle)
10011Solution: Do not allow autocommands while performing and undo or redo.
10012Files: src/misc1.c, src/undo.c
10013
10014Patch 7.2.446
10015Problem: Crash in GUI when closing the last window in a tabpage. (ryo7000)
10016Solution: Remove the tabpage from the list before freeing the window.
10017Files: src/window.c
10018
Bram Moolenaar7a329912010-05-21 12:05:36 +020010019When writing a file, switching tab pages and selecting a word the file write
Bram Moolenaar6df6f472010-07-18 18:04:50 +020010020message would be displayed again. This happened in Insert mode and with
10021'cmdheight' set to 2.
Bram Moolenaar7a329912010-05-21 12:05:36 +020010022
10023When using ":lang" to set a locale that uses a comma for decimal separator and
10024using GTK floating point numbers stop working. Use gtk_disable_setlocale().
10025(James Vega)
Bram Moolenaar00a927d2010-05-14 23:24:24 +020010026
Bram Moolenaarb382ad12010-05-21 15:46:35 +020010027"g8" didn't produce the right value on a NUL. (Dominique Pelle)
10028
Bram Moolenaar06b5d512010-05-22 15:37:44 +020010029Use BASEMODLIBS instead of MODLIBS for Python configuration to pick up the
10030right compiler flags. (Michael Bienia)
10031
Bram Moolenaar6df6f472010-07-18 18:04:50 +020010032Window title was not updated after dropping a file on Vim. (Hari G)
Bram Moolenaarab8205e2010-07-07 15:14:03 +020010033
Bram Moolenaar0bc380a2010-07-10 13:52:13 +020010034synstack() did not return anything when just past the end of the line. Useful
10035when using the cursor position in Insert mode.
10036
Bram Moolenaar6df6f472010-07-18 18:04:50 +020010037When entering a digraph or special character after a line that fits the window
10038the '?' or '^' on the next line is not redrawn. (Ian Kelling)
10039
10040Composing characters in |:s| substitute text were dropped.
10041
10042|exists()| was causing an autoload script to be loaded.
10043
10044Filter out -pthread for cproto.
10045
10046Make CTRL-L in command line mode respect 'ignorecase' and 'smartcase'. (Martin
10047Toft)
10048
10049Spell menu moved the cursor, causing Copy not to work. Spell replacement
10050didn't work in 'compatible' mode.
10051
10052Various small fixes from Dominique Pelle.
10053
10054Fix that :mksession may generate "2argu" even though there is no such
10055argument. (Peter Odding)
10056
10057Fixes for time in clipboard request. Also fix ownership. (David Fries)
10058
10059Fixed completion of file names with '%' and '*'.
10060
10061Fixed MSVC makefile use of /Wp64 flag.
10062
10063Correct use of long instead of off_t for file size. (James Vega)
10064
Bram Moolenaarfcb7ab62010-07-20 11:16:17 +020010065Add a few #ifdefs to exclude functions that are not used. (Dominique Pelle)
Bram Moolenaar6df6f472010-07-18 18:04:50 +020010066
10067Remove old and unused method to allocate memory for undo.
10068
10069Fix definition of UINT_PTR for 64 bit systems.
10070
10071Some versions of Ruby redefine rb_str_new2 to rb_str_new_cstr.
10072
10073Window title not updated after file dropped.
10074
Bram Moolenaar49771f42010-07-20 17:32:38 +020010075Fixed crash for ":find" completion, might also happen in other path expansion
10076usage.
10077
Bram Moolenaar8d9b40e2010-07-25 15:49:07 +020010078When 'searchhl' causes a hang make CTRL-C disable 'searchhl'.
Bram Moolenaar49771f42010-07-20 17:32:38 +020010079
Bram Moolenaar6fc45b52010-07-25 17:42:45 +020010080When resetting both 'title' and 'icon' the title would be set after a shell
10081command.
10082
10083Reset 'title' and 'icon' in test47 to avoid the xterm title getting messed up.
10084
10085Fix for compiler warning about function prototype in pty.c.
10086
10087Added 'window' to the options window.
10088
10089Fixed: errors for allocating zero bytes when profiling an empty function.
10090
10091Remove -arch flag from build flags for Perl. (Bjorn Wickler)
10092
10093Fix 'autochdir' not showing up in :options window. (Dominique Pelle)
10094
Bram Moolenaar44886d92010-08-01 19:06:10 +020010095Fix: test 69 didn't work on MS-Windows. Test 72 beeped too often.
10096
10097Avoid illegal memory access in spell suggestion. (Dominique Pelle)
10098Fix: crash in spell checking with a 0x300 character.
10099
10100Avoid that running tests changes viminfo.
10101
10102Fix: changing case of a character removed combining characters.
10103Fixed: CTRL-R in Insert mode doesn't insert composing characters.
10104
10105Added the WOW64 flag to OLE registration, for 64 bit Windows systems.
10106
10107Various fixes for coverity warnings.
10108
10109Fix compile warnings, esp. for 64-bit systems. (Mike Williams)
10110
10111Fix: :redir to a dictionary that is changed before ":redir END" causes a
10112memory access error.
10113
Bram Moolenaar207f0092020-08-30 17:20:20 +020010114Fix: terminal title not properly restored when there are multibyte
Bram Moolenaar44886d92010-08-01 19:06:10 +020010115characters. (partly by James Vega)
Bram Moolenaar6fc45b52010-07-25 17:42:45 +020010116
Bram Moolenaar1affd722010-08-04 17:49:30 +020010117Set 'wrapscan' when checking the .po files. (Mike Williams)
10118
10119Win32: Put quotes around the gvim.exe path for the "Open with" menu entry.
10120
Bram Moolenaar5eba45c2010-08-08 21:15:53 +020010121On MS-Windows sometimes files with number 4913 or higher are left behind.
10122
10123'suffixesadd' was used for finding tags file.
10124
10125Removed unused code.
10126
10127Improved positioning of combining characters in GTK.
10128
10129Made test 11 pass when there is no gzip program. (John Beckett)
10130
10131Changed readfile() to ignore byte order marks, unless in binary mode.
10132
10133On MS-Windows completion of shell commands didn't work.
10134
Bram Moolenaar207f0092020-08-30 17:20:20 +020010135An unprintable multibyte character at the start of the screen line caused the
Bram Moolenaar5eba45c2010-08-08 21:15:53 +020010136following text to be drawn at the wrong position.
10137
10138Got ml_get errors when using undo with 'virtualedit'.
10139
10140Call gui_mch_update() before triggering GuiEnter autocmd. (Ron Aaron)
10141
10142Unix "make install" installed a few Amiga .info files.
10143
10144Disallow setting 'ambiwidth' to "double" when 'listchars' or 'fillchars'
10145contains a character that would become double width.
10146
10147Set 'wrapscan' when checking the .po files. (Mike Williams)
10148
Bram Moolenaarbfc8b972010-08-13 22:05:54 +020010149Fixed: using expression in command line may cause a crash.
10150
10151Avoid warnings from the clang compiler. (Dominique Pelle)
10152
10153Fix: Include wchar.h in charset.c for towupper().
10154
Bram Moolenaar755bd262010-08-14 17:46:20 +020010155Fixed: Using ":read file" in an empty buffer when 'compatible' is set caused
Bram Moolenaarabf39e82010-08-14 21:57:32 +020010156an error. Was caused by patch 7.2.132.
Bram Moolenaar755bd262010-08-14 17:46:20 +020010157
Bram Moolenaar7f036442010-08-15 15:24:20 +020010158Make the references to features in the help more consistent. (Sylvain Hitier)
10159
Bram Moolenaar913df812013-07-06 15:44:11 +020010160==============================================================================
Bram Moolenaar03413f42016-04-12 21:07:15 +020010161VERSION 7.4 *version-7.4* *version7.4* *vim-7.4*
Bram Moolenaar913df812013-07-06 15:44:11 +020010162
10163This section is about improvements made between version 7.3 and 7.4.
10164
10165This release has hundreds of bug fixes and there are a few new features. The
10166most notable new features are:
10167
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010168- New regexp engine |new-regexp-engine|
10169- A more pythonic Python interface |better-python-interface|
10170
Bram Moolenaar913df812013-07-06 15:44:11 +020010171
10172New regexp engine *new-regexp-engine*
10173-----------------
10174
10175What is now called the "old" regexp engine uses a backtracking algorithm. It
10176tries to match the pattern with the text in one way, and when that fails it
10177goes back and tries another way. This works fine for simple patterns, but
10178complex patterns can be very slow on longer text.
10179
10180The new engine uses a state machine. It tries all possible alternatives at
10181the current character and stores the possible states of the pattern. This is
10182a bit slower for simple patterns, but much faster for complex patterns and
10183long text.
10184
10185Most notably, syntax highlighting for Javascript and XML files with long lines
10186is now working fine. Previously Vim could get stuck.
10187
10188More information here: |two-engines|
10189
10190
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010191Better Python interface *better-python-interface*
10192-----------------------
10193
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010194Added |python-bindeval| function. Unlike |python-eval| this one returns
10195|python-Dictionary|, |python-List| and |python-Function| objects for
10196dictionaries lists and functions respectively in place of their Python
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010197built-in equivalents (or None if we are talking about function references).
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010198 For simple types this function returns Python built-in types and not only
10199Python `str()` like |python-eval| does. On Python 3 it will return `bytes()`
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010200objects in place of `str()` ones avoiding possibility of UnicodeDecodeError.
Bram Moolenaare2db6952013-07-24 19:53:36 +020010201 Interface of new objects mimics standard Python `dict()` and `list()`
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010202interfaces to some extent. Extent will be improved in the future.
10203
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010204Added special |python-vars| objects also available for |python-buffer| and
Bram Moolenaarb544f3c2017-02-23 19:03:28 +010010205|python-window|. They ease access to Vim script variables from Python.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010206
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010207Now you no longer need to alter `sys.path` to import your module: special
10208hooks are responsible for importing from {rtp}/python2, {rtp}/python3 and
10209{rtp}/pythonx directories (for Python 2, Python 3 and both respectively).
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010210See |python-special-path|.
10211
10212Added possibility to work with |tabpage|s through |python-tabpage| object.
10213
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010214Added automatic conversion of Vim errors and exceptions to Python
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010215exceptions.
10216
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010217Changed the behavior of the |python-buffers| object: it now uses buffer numbers
10218as keys in place of the index of the buffer in the internal buffer list.
10219This should not break anything as the only way to get this index was
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010220iterating over |python-buffers|.
10221
10222Added |:pydo| and |:py3do| commands.
10223
Bram Moolenaare2db6952013-07-24 19:53:36 +020010224Added the |pyeval()| and |py3eval()| functions.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010225
Bram Moolenaare2db6952013-07-24 19:53:36 +020010226Now in all places which previously accepted `str()` objects, `str()` and
10227`unicode()` (Python 2) or `bytes()` and `str()` (Python 3) are accepted.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010228
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010229|python-window| has gained `.col` and `.row` attributes that are currently
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010230the only way to get internal window positions.
10231
Bram Moolenaare2db6952013-07-24 19:53:36 +020010232Added or fixed support for `dir()` in Vim Python objects.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010233
10234
Bram Moolenaar913df812013-07-06 15:44:11 +020010235Changed *changed-7.4*
10236-------
10237
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010238Old Python versions (≤2.2) are no longer supported. Building with them did
Bram Moolenaare2db6952013-07-24 19:53:36 +020010239not work anyway.
10240
10241Options:
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010242 Added ability to automatically save the selection into the system
10243 clipboard when using non-GUI version of Vim (autoselectplus in
Bram Moolenaare2db6952013-07-24 19:53:36 +020010244 'clipboard'). Also added ability to use the system clipboard as
10245 default register (previously only primary selection could be used).
10246 (Ivan Krasilnikov, Christian Brabandt, Bram Moolenaar)
10247
10248 Added a special 'shiftwidth' value that makes 'sw' follow 'tabstop'.
10249 As indenting via 'indentexpr' became tricky |shiftwidth()| function
10250 was added. Also added equivalent special value to 'softtabstop'
10251 option. (Christian Brabandt, so8res)
10252
10253 Show absolute number in number column when 'relativenumber' option is
10254 on. Now there are four combinations with 'number' and
10255 'relativenumber'. (Christian Brabandt)
10256
10257Commands:
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010258 |:diffoff| now saves the local values of some settings and restores
10259 them in place of blindly resetting them to the defaults. (Christian
Bram Moolenaare2db6952013-07-24 19:53:36 +020010260 Brabandt)
10261
10262Other:
Bram Moolenaarcb80aa22020-10-26 21:12:46 +010010263 Lua interface now also uses userdata bound to Vim structures. (Taro
Bram Moolenaare2db6952013-07-24 19:53:36 +020010264 Muraoka, Luis Carvalho)
10265
Bram Moolenaar9d98fe92013-08-03 18:35:36 +020010266 glob() and autocommand patterns used to work with the undocumented
10267 "\{n,m\}" item from a regexp. "\{" is now used for a literal "{", as
10268 this is normal in shell file patterns. Now used "\\\{n,m\}" to get
10269 "\{n,m}" in the regexp pattern.
10270
Bram Moolenaare2db6952013-07-24 19:53:36 +020010271Added *added-7.4*
10272-----
10273
10274Various syntax, indent and other plugins were added.
10275
10276Added support for |Lists| and |Dictionaries| in |viminfo|. (Christian
10277Brabandt)
10278
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010279Functions:
Bram Moolenaare2db6952013-07-24 19:53:36 +020010280 Bitwise functions: |and()|, |or()|, |invert()|, |xor()|.
10281
10282 Added |luaeval()| function. (Taro Muraoka, Luis Carvalho)
10283
10284 Added |sha256()| function. (Tyru, Hirohito Higashi)
10285
10286 Added |wildmenumode()| function. (Christian Brabandt)
10287
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010288 Debugging functions: |screenattr()|, |screenchar()|, |screencol()|,
Bram Moolenaare2db6952013-07-24 19:53:36 +020010289 |screenrow()|. (Simon Ruderich, Bram Moolenaar)
10290
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010291 Added ability to use |Dictionary-function|s for |sort()|ing, via
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010292 optional third argument. (Nikolay Pavlov)
Bram Moolenaar913df812013-07-06 15:44:11 +020010293
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010294 Added special |expand()| argument that expands to the current line
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010295 number.
10296
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010297 Made it possible to force |char2nr()| to always give unicode codepoints
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010298 regardless of current encoding. (Yasuhiro Matsumoto)
10299
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010300 Made it possible for functions generating file list generate |List|
10301 and not NL-separated string. (e.g. |glob()|, |expand()|) (Christian
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010302 Brabandt)
10303
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010304 Functions that obtain variables from the specific window, tabpage or
10305 buffer scope dictionary can now return specified default value in
10306 place of empty string in case variable is not found. (|gettabvar()|,
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010307 |getwinvar()|, |getbufvar()|) (Shougo Matsushita, Hirohito Higashi)
10308
Bram Moolenaare2db6952013-07-24 19:53:36 +020010309Autocommands:
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010310 Added |InsertCharPre| event launched before inserting character.
Bram Moolenaare2db6952013-07-24 19:53:36 +020010311 (Jakson A. Aquino)
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010312
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010313 Added |CompleteDone| event launched after finishing completion in
Bram Moolenaare2db6952013-07-24 19:53:36 +020010314 insert mode. (idea by Florian Klein)
10315
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010316 Added |QuitPre| event launched when commands that can either close Vim
Bram Moolenaare2db6952013-07-24 19:53:36 +020010317 or only some window(s) are launched.
10318
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010319 Added |TextChanged| and |TextChangedI| events launched when text is
Bram Moolenaare2db6952013-07-24 19:53:36 +020010320 changed.
10321
10322Commands:
10323 |:syntime| command useful for debugging.
10324
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010325 Made it possible to remove all signs from the current buffer using
Bram Moolenaare2db6952013-07-24 19:53:36 +020010326 |:sign-unplace|. (Christian Brabandt)
10327
10328 Added |:language| autocompletion. (Dominique Pelle)
10329
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010330 Added more |:command-complete| completion types: |:behave| suboptions,
10331 color schemes, compilers, |:cscope| suboptions, files from 'path',
10332 |:history| suboptions, locale names, |:syntime| suboptions, user
Bram Moolenaare2db6952013-07-24 19:53:36 +020010333 names. (Dominique Pelle)
10334
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010335 Added |:map-nowait| creating mapping which when having lhs that is the
10336 prefix of another mapping’s lhs will not allow Vim to wait for user to
10337 type more characters to resolve ambiguity, forcing Vim to take the
Bram Moolenaare2db6952013-07-24 19:53:36 +020010338 shorter alternative: one with <nowait>.
10339
10340Options:
10341 Made it possible to ignore case when completing: 'wildignorecase'.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010342
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010343 Added ability to delete comment leader when using |J| by `j` flag in
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010344 'formatoptions' (|fo-table|). (Lech Lorens)
10345
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010346 Added ability to control indentation inside namespaces: |cino-N|.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010347 (Konstantin Lepa)
10348
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010349 Added ability to control alignment inside `if` condition separately
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010350 from alignment inside function arguments: |cino-k|. (Lech Lorens)
10351
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010352Other:
10353 Improved support for cmd.exe. (Ben Fritz, Bram Moolenaar)
10354
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020010355 Added |v:windowid| variable containing current window number in GUI
Bram Moolenaare2db6952013-07-24 19:53:36 +020010356 Vim. (Christian J. Robinson, Lech Lorens)
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020010357
Bram Moolenaar9d98fe92013-08-03 18:35:36 +020010358 Added rxvt-unicode and SGR mouse support. (Yiding Jia, Hayaki Saito)
Bram Moolenaar913df812013-07-06 15:44:11 +020010359
Bram Moolenaar913df812013-07-06 15:44:11 +020010360
Bram Moolenaare2db6952013-07-24 19:53:36 +020010361All changes in 7.4 *fixed-7.4*
10362------------------
Bram Moolenaar913df812013-07-06 15:44:11 +020010363
10364Patch 7.3.001
10365Problem: When editing "src/main.c" and 'path' set to "./proto",
10366 ":find e<C-D" shows ./proto/eval.pro instead of eval.pro.
10367Solution: Check for path separator when comparing names. (Nazri Ramliy)
10368Files: src/misc1.c
10369
10370Patch 7.3.002
10371Problem: ":find" completion doesn't work when halfway an environment
10372 variable. (Dominique Pelle)
10373Solution: Only use in-path completion when expanding file names. (Nazri
10374 Ramliy)
10375Files: src/ex_docmd.c
10376
10377Patch 7.3.003
10378Problem: Crash with specific BufWritePost autocmd. (Peter Odding)
10379Solution: Don't free the quickfix title twice. (Lech Lorens)
10380Files: src/quickfix.c
10381
10382Patch 7.3.004
10383Problem: Crash when using very long regexp. (Peter Odding)
10384Solution: Reset reg_toolong. (Carlo Teubner)
10385Files: src/regexp.c
10386
10387Patch 7.3.005
10388Problem: Crash when using undotree(). (Christian Brabandt)
10389Solution: Increase the list reference count. Add a test for undotree()
10390 (Lech Lorens)
10391Files: src/eval.c, src/testdir/Makefile, src/testdir/test61.in
10392
10393Patch 7.3.006
Bram Moolenaar207f0092020-08-30 17:20:20 +020010394Problem: Can't build some multibyte code with C89.
Bram Moolenaar913df812013-07-06 15:44:11 +020010395Solution: Move code to after declarations. (Joachim Schmitz)
10396Files: src/mbyte.c, src/spell.c
10397
10398Patch 7.3.007
10399Problem: Python code defines global "buffer". Re-implements a grow-array.
10400Solution: Use a grow-array instead of coding the same functionality. Handle
10401 out-of-memory situation properly.
10402Files: src/if_py_both.h
10403
10404Patch 7.3.008
10405Problem: 'cursorbind' is kept in places where 'scrollbind' is reset.
10406Solution: Reset 'cursorbind'.
10407Files: src/buffer.c, src/diff.c, src/ex_cmds.c, src/ex_cmds2.c,
10408 src/ex_docmd.c, src/ex_getln.c, src/if_cscope.c, src/macros.h,
10409 src/quickfix.c, src/search.c, src/tag.c, src/window.c
10410
10411Patch 7.3.009
10412Problem: Win32: Crash on Windows when using a bad argument for strftime().
10413 (Christian Brabandt)
10414Solution: Use the bad_param_handler(). (Mike Williams)
10415Files: src/os_win32.c
10416
10417Patch 7.3.010
10418Problem: Mac GUI: Missing break statements.
10419Solution: Add the break statements. (Dominique Pelle)
10420Files: src/gui_mac.c
10421
10422Patch 7.3.011
10423Problem: X11 clipboard doesn't work in Athena/Motif GUI. First selection
10424 after a shell command doesn't work.
10425Solution: When using the GUI use XtLastTimestampProcessed() instead of
10426 changing a property. (partly by Toni Ronkko)
10427 When executing a shell command disown the selection.
10428Files: src/ui.c, src/os_unix.c
10429
10430Patch 7.3.012
10431Problem: Problems building with MingW.
10432Solution: Adjust the MingW makefiles. (Jon Maken)
10433Files: src/Make_ming.mak, src/GvimExt/Make_ming.mak
10434
10435Patch 7.3.013
10436Problem: Dynamic loading with Ruby doesn't work for 1.9.2.
10437Solution: Handle rb_str2cstr differently. Also support dynamic loading on
10438 Unix. (Jon Maken)
10439Files: src/if_ruby.c
10440
10441Patch 7.3.014
10442Problem: Ending a line in a backslash inside an ":append" or ":insert"
10443 command in Ex mode doesn't work properly. (Ray Frush)
10444Solution: Halve the number of backslashes, only insert a NUL after an odd
10445 number of backslashes.
10446Files: src/ex_getln.c
10447
10448Patch 7.3.015
10449Problem: Test is using error message that no longer exists.
10450Solution: Change E106 to E121. (Dominique Pelle)
10451Files: src/testdir/test49.vim
10452
10453Patch 7.3.016
10454Problem: Netbeans doesn't work under Athena.
10455Solution: Support Athena, just like Motif. (Xavier de Gaye)
10456Files: runtime/doc/netbeans.txt, src/gui.c, src/main.c, src/netbeans.c
10457
10458Patch 7.3.017
10459Problem: smatch reports errors.
10460Solution: Fix the reported errors. (Dominique Pelle)
10461Files: src/spell.c, src/syntax.c
10462
10463Patch 7.3.018 (after 7.3.012)
10464Problem: Missing argument to windres in MingW makefiles.
10465Solution: Add the argument that was wrapped in the patch. (Jon Maken)
10466Files: src/Make_ming.mak, src/GvimExt/Make_ming.mak
10467
10468Patch 7.3.019
10469Problem: ":nbstart" can fail silently.
10470Solution: Give an error when netbeans is not supported by the GUI. (Xavier
10471 de Gaye)
10472Files: src/netbeans.c
10473
10474Patch 7.3.020
10475Problem: Cursor position wrong when joining multiple lines and
10476 'formatoptions' contains "a". (Moshe Kamensky)
10477Solution: Adjust cursor position for skipped indent. (Carlo Teubner)
10478Files: src/ops.c, src/testdir/test68.in, src/testdir/test68.ok
10479
10480Patch 7.3.021
10481Problem: Conflict for defining Boolean in Mac header files.
10482Solution: Define NO_X11_INCLUDES. (Rainer Muller)
10483Files: src/os_macosx.m, src/vim.h
10484
10485Patch 7.3.022
10486Problem: When opening a new window the 'spellcapcheck' option is cleared.
10487Solution: Copy the correct option value. (Christian Brabandt)
10488Files: src/option.c
10489
10490Patch 7.3.023
10491Problem: External program may hang when it tries to write to the tty.
10492Solution: Don't close the slave tty until after the child exits. (Nikola
10493 Knezevic)
10494Files: src/os_unix.c
10495
10496Patch 7.3.024
10497Problem: Named signs do not use a negative number as intended.
10498Solution: Fix the numbering of named signs. (Xavier de Gaye)
10499Files: src/ex_cmds.c
10500
10501Patch 7.3.025
10502Problem: ":mksession" does not square brackets escape file name properly.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020010503Solution: Improve escaping of file names. (partly by Peter Odding)
Bram Moolenaar913df812013-07-06 15:44:11 +020010504Files: src/ex_docmd.c
10505
10506Patch 7.3.026
10507Problem: CTRL-] in a help file doesn't always work. (Tony Mechelynck)
10508Solution: Don't escape special characters. (Carlo Teubner)
10509Files: src/normal.c
10510
10511Patch 7.3.027
10512Problem: Opening a file on a network share is very slow.
10513Solution: When fixing file name case append "\*" to directory, server and
10514 network share names. (David Anderson, John Beckett)
10515Files: src/os_win32.c
10516
10517Patch 7.3.028 (after 7.3.024)
10518Problem: Signs don't show up. (Charles Campbell)
10519Solution: Don't use negative numbers. Also assign a number to signs that
10520 have a name of all digits to avoid using a sign number twice.
10521Files: src/ex_cmds.c
10522
10523Patch 7.3.029
10524Problem: ":sort n" sorts lines without a number as number zero. (Beeyawned)
10525Solution: Make lines without a number sort before lines with a number. Also
10526 fix sorting negative numbers.
10527Files: src/ex_cmds.c, src/testdir/test57.in, src/testdir/test57.ok
10528
10529Patch 7.3.030
10530Problem: Cannot store Dict and List in viminfo file.
10531Solution: Add support for this. (Christian Brabandt)
10532Files: runtime/doc/options.txt, src/eval.c, src/testdir/Make_amiga.mak,
10533 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
10534 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
10535 src/testdir/Makefile, src/testdir/main.aap, src/testdir/test74.in,
10536 src/testdir/test74.ok
10537
10538Patch 7.3.031
10539Problem: Can't pass the X window ID to another application.
10540Solution: Add v:windowid. (Christian J. Robinson, Lech Lorens)
10541Files: runtime/doc/eval.txt, src/eval.c, src/gui.c, src/vim.h,
10542 src/os_unix.c
10543
10544Patch 7.3.032
10545Problem: maparg() doesn't return the flags, such as <buffer>, <script>,
10546 <silent>. These are needed to save and restore a mapping.
10547Solution: Improve maparg(). (also by Christian Brabandt)
10548Files: runtime/doc/eval.txt, src/eval.c, src/getchar.c, src/gui_w48.c,
10549 src/message.c, src/proto/getchar.pro, src/proto/message.pro,
10550 src/structs.h src/testdir/test75.in, src/testdir/test75.ok
10551
10552Patch 7.3.033 (after 7.3.032)
10553Problem: Can't build without FEAT_LOCALMAP.
10554Solution: Add an #ifdef. (John Marriott)
10555Files: src/getchar.c
10556
10557Patch 7.3.034
10558Problem: Win32: may be loading .dll from the wrong directory.
10559Solution: Go to the Vim executable directory when opening a library.
10560Files: src/gui_w32.c, src/if_lua.c, src/if_mzsch.c, src/if_perl.xs,
10561 src/if_python.c, src/if_python3.c, src/if_ruby.c, src/mbyte.c,
10562 src/os_mswin.c, src/os_win32.c, src/proto/os_win32.pro
10563
10564Patch 7.3.035 (after 7.3.034)
10565Problem: Stray semicolon after if statement. (Hari G)
10566Solution: Remove the semicolon.
10567Files: src/os_win32.c
10568
10569Patch 7.3.036
10570Problem: Win32 GUI: When building without menus, the font for dialogs and
10571 tab page headers also changes.
10572Solution: Define USE_SYSMENU_FONT always. (Harig G.)
10573Files: src/gui_w32.c
10574
10575Patch 7.3.037
10576Problem: Compiler warnings for loss of data. (Mike Williams)
10577Solution: Add type casts.
10578Files: src/if_py_both.h, src/getchar.c, src/os_win32.c
10579
10580Patch 7.3.038
10581Problem: v:windowid isn't set on MS-Windows.
10582Solution: Set it to the window handle. (Chris Sutcliffe)
10583Files: runtime/doc/eval.txt, src/gui_w32.c
10584
10585Patch 7.3.039
10586Problem: Crash when using skk.vim plugin.
10587Solution: Get length of expression evaluation result only after checking for
10588 NULL. (Noriaki Yagi, Dominique Pelle)
10589Files: src/ex_getln.c
10590
10591Patch 7.3.040
10592Problem: Comparing strings while ignoring case goes beyond end of the
10593 string when there are illegal bytes. (Dominique Pelle)
10594Solution: Explicitly check for illegal bytes.
10595Files: src/mbyte.c
10596
10597Patch 7.3.041
10598Problem: Compiler warning for accessing mediumVersion. (Tony Mechelynck)
10599Solution: Use the pointer instead of the array itself. (Dominique Pelle)
10600Files: src/version.c
10601
10602Patch 7.3.042
10603Problem: No spell highlighting when re-using an empty buffer.
10604Solution: Clear the spell checking info only when clearing the options for a
10605 buffer. (James Vega)
10606Files: src/buffer.c
10607
10608Patch 7.3.043
10609Problem: Can't load Ruby dynamically on Unix.
10610Solution: Adjust the configure script. (James Vega)
10611Files: src/Makefile, src/config.h.in, src/configure.in,
10612 src/auto/configure, src/if_ruby.c
10613
10614Patch 7.3.044
10615Problem: The preview window opened by the popup menu is larger than
10616 specified with 'previewheight'. (Benjamin Haskell)
10617Solution: Use 'previewheight' if it's set and smaller.
10618Files: src/popupmnu.c
10619
10620Patch 7.3.045
10621Problem: Compiler warning for uninitialized variable.
10622Solution: Initialize the variable always.
10623Files: src/getchar.c
10624
10625Patch 7.3.046 (after 7.3.043)
10626Problem: Can't build Ruby on MS-Windows.
10627Solution: Add #ifdef, don't use WIN3264 before including vim.h.
10628Files: src/if_ruby.c
10629
10630Patch 7.3.047 (after 7.3.032)
10631Problem: Missing makefile updates for test 75.
10632Solution: Update the makefiles.
10633Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
10634 src/testdir/Makefile, src/testdir/Make_ming.mak,
10635 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
10636
10637Patch 7.3.048
10638Problem: ":earlier 1f" doesn't work after loading undo file.
10639Solution: Set b_u_save_nr_cur when loading an undo file. (Christian
10640 Brabandt)
10641 Fix only showing time in ":undolist"
10642Files: src/undo.c
10643
10644Patch 7.3.049
10645Problem: PLT has rebranded their Scheme to Racket.
10646Solution: Add support for Racket 5.x. (Sergey Khorev)
10647Files: src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
10648 src/auto/configure, src/configure.in, src/if_mzsch.c
10649
10650Patch 7.3.050
10651Problem: The link script is clumsy.
10652Solution: Use the --as-needed linker option if available. (Kirill A.
10653 Shutemov)
10654Files: src/Makefile, src/auto/configure, src/config.mk.in,
10655 src/configure.in, src/link.sh
10656
10657Patch 7.3.051
10658Problem: Crash when $PATH is empty.
10659Solution: Check for vim_getenv() returning NULL. (Yasuhiro Matsumoto)
10660Files: src/ex_getln.c, src/os_win32.c
10661
10662Patch 7.3.052
10663Problem: When 'completefunc' opens a new window all kinds of errors follow.
10664 (Xavier Deguillard)
10665Solution: When 'completefunc' goes to another window or buffer and when it
10666 deletes text abort completion. Add a test for 'completefunc'.
10667Files: src/edit.c, src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
10668 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
10669 src/testdir/Make_vms.mms, src/testdir/Makefile,
10670 src/testdir/test76.in, src/testdir/test76.ok
10671
10672Patch 7.3.053
10673Problem: complete() function doesn't reset complete direction. Can't use
10674 an empty string in the list of matches.
10675Solution: Set compl_direction to FORWARD. Add "empty" key to allow empty
10676 words. (Kikuchan)
10677Files: src/edit.c
10678
10679Patch 7.3.054
10680Problem: Can define a user command for :Print, but it doesn't work. (Aaron
10681 Thoma)
10682Solution: Let user command :Print overrule the builtin command (Christian
10683 Brabandt) Disallow :X and :Next as a user defined command.
10684Files: src/ex_docmd.c
10685
10686Patch 7.3.055
10687Problem: Recursively nested lists and dictionaries cause a near-endless
10688 loop when comparing them with a copy. (ZyX)
10689Solution: Limit recursiveness in a way that non-recursive structures can
10690 still be nested very deep.
10691Files: src/eval.c, src/testdir/test55.in, src/testdir/test55.ok
10692
10693Patch 7.3.056
10694Problem: "getline" argument in do_cmdline() shadows global.
10695Solution: Rename the argument.
10696Files: src/ex_docmd.c
10697
10698Patch 7.3.057
10699Problem: Segfault with command line abbreviation. (Randy Morris)
10700Solution: Don't retrigger the abbreviation when abandoning the command line.
10701 Continue editing the command line after the error.
10702Files: src/ex_getln.c
10703
10704Patch 7.3.058
10705Problem: Error "code converter not found" when loading Ruby script.
10706Solution: Load Gem module. (Yasuhiro Matsumoto)
10707Files: src/if_ruby.c
10708
10709Patch 7.3.059
10710Problem: Netbeans: Problem with recursively handling messages for Athena
10711 and Motif.
10712Solution: Call netbeans_parse_messages() in the main loop, like it's done
10713 for GTK. (Xavier de Gaye)
10714Files: src/gui_x11.c, src/netbeans.c
10715
10716Patch 7.3.060
10717Problem: Netbeans: crash when socket is disconnected unexpectedly.
10718Solution: Don't cleanup when a read fails, put a message in the queue and
10719 disconnect later. (Xavier de Gaye)
10720Files: src/netbeans.c
10721
10722Patch 7.3.061
10723Problem: Remote ":drop" does not respect 'autochdir'. (Peter Odding)
10724Solution: Don't restore the directory when 'autochdir' is set. (Benjamin
10725 Fritz)
10726Files: src/main.c
10727
10728Patch 7.3.062
10729Problem: Python doesn't work properly when installed in another directory
10730 than expected.
10731Solution: Figure out home directory in configure and use Py_SetPythonHome()
10732 at runtime. (Roland Puntaier)
10733Files: src/configure.in, src/auto/configure, src/if_python.c,
10734 src/if_python3.c
10735
10736Patch 7.3.063
10737Problem: Win32: Running a filter command makes Vim lose focus.
10738Solution: Use SW_SHOWMINNOACTIVE instead of SW_SHOWMINIMIZED. (Hong Xu)
10739Files: src/os_win32.c
10740
10741Patch 7.3.064
10742Problem: Win32: ":dis +" shows nothing, but "+p does insert text.
10743Solution: Display the * register, since that's what will be inserted.
10744 (Christian Brabandt)
10745Files: src/globals.h, src/ops.c
10746
10747Patch 7.3.065
10748Problem: Can't get current line number in a source file.
10749Solution: Add the <slnum> item, similar to <sfile>.
10750Files: src/ex_docmd.c
10751
10752Patch 7.3.066
10753Problem: Crash when changing to another window while in a :vimgrep command.
10754 (Christian Brabandt)
10755Solution: When wiping out the dummy before, remove it from aucmd_win.
10756Files: src/quickfix.c
10757
10758Patch 7.3.067 (after 7.3.058)
10759Problem: Ruby: Init_prelude is not always available.
10760Solution: Remove use of Init_prelude. (Yasuhiro Matsumoto)
10761Files: src/if_ruby.c
10762
10763Patch 7.3.068
10764Problem: Using freed memory when doing ":saveas" and an autocommand sets
10765 'autochdir'. (Kevin Klement)
10766Solution: Get the value of fname again after executing autocommands.
10767Files: src/ex_cmds.c
10768
10769Patch 7.3.069
10770Problem: GTK: pressing Enter in inputdialog() doesn't work like clicking OK
10771 as documented.
10772Solution: call gtk_entry_set_activates_default(). (Britton Kerin)
10773Files: src/gui_gtk.c
10774
10775Patch 7.3.070
10776Problem: Can set environment variables in the sandbox, could be abused.
10777Solution: Disallow it.
10778Files: src/eval.c
10779
10780Patch 7.3.071
10781Problem: Editing a file in a window that's in diff mode resets 'diff'
10782 but not cursor binding.
10783Solution: Reset cursor binding in two more places.
10784Files: src/quickfix.c, src/option.c
10785
10786Patch 7.3.072
10787Problem: Can't complete file names while ignoring case.
10788Solution: Add 'wildignorecase'.
10789Files: src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/option.c,
10790 src/option.h, src/vim.h, src/runtime/options.txt
10791
10792Patch 7.3.073
10793Problem: Double free memory when netbeans command follows DETACH.
10794Solution: Only free the node when owned. (Xavier de Gaye)
10795Files: src/netbeans.c
10796
10797Patch 7.3.074
10798Problem: Can't use the "+ register like "* for yank and put.
10799Solution: Add "unnamedplus" to the 'clipboard' option. (Ivan Krasilnikov)
10800Files: runtime/doc/options.txt, src/eval.c, src/globals.h, src/ops.c,
10801 src/option.c
10802
10803Patch 7.3.075 (after 7.3.072)
10804Problem: Missing part of 'wildignorecase'
10805Solution: Also adjust expand()
10806Files: src/eval.c
10807
10808Patch 7.3.076
10809Problem: Clang warnings for dead code.
10810Solution: Remove it. (Carlo Teubner)
10811Files: src/gui_gtk.c, src/if_ruby.c, src/misc2.c, src/netbeans.c,
10812 src/spell.c
10813
10814Patch 7.3.077
10815Problem: When updating crypt of swapfile fails there is no error message.
10816 (Carlo Teubner)
10817Solution: Add the error message.
10818Files: src/memline.c
10819
10820Patch 7.3.078
10821Problem: Warning for unused variable.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020010822Solution: Adjust #ifdefs.
Bram Moolenaar913df812013-07-06 15:44:11 +020010823Files: src/ops.c
10824
10825Patch 7.3.079
10826Problem: Duplicate lines in makefile.
10827Solution: Remove the lines. (Hong Xu)
10828Files: src/Make_mvc.mak
10829
10830Patch 7.3.080
10831Problem: Spell doesn't work on VMS.
10832Solution: Use different file names. (Zoltan Bartos, Zoltan Arpadffy)
10833Files: src/spell.c
10834
10835Patch 7.3.081
10836Problem: Non-printable characters in 'statusline' cause trouble. (ZyX)
10837Solution: Use transstr(). (partly by Caio Ariede)
10838Files: src/screen.c
10839
10840Patch 7.3.082
10841Problem: Leaking file descriptor when hostname doesn't exist.
10842Solution: Remove old debugging lines.
10843Files: src/netbeans.c
10844
10845Patch 7.3.083
10846Problem: When a read() or write() is interrupted by a signal it fails.
10847Solution: Add read_eintr() and write_eintr().
10848Files: src/fileio.c, src/proto/fileio.pro, src/memfile.c, src/memline.c,
10849 src/os_unix.c, src/undo.c, src/vim.h
10850
10851Patch 7.3.084
10852Problem: When splitting the window, the new one scrolls with the cursor at
10853 the top.
10854Solution: Compute w_fraction before setting the new height.
10855Files: src/window.c
10856
10857Patch 7.3.085 (after 7.3.083)
10858Problem: Inconsistency with preproc symbols. void * computation.
10859Solution: Include vimio.h from vim.h. Add type cast.
10860Files: src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/fileio.c,
10861 src/if_cscope.c, src/if_sniff.c, src/main.c, src/memfile.c,
10862 src/memline.c, src/netbeans.c, src/os_msdos.c, src/os_mswin.c,
10863 src/os_win16.c, src/os_win32.c, src/spell.c, src/tag.c,
10864 src/undo.c, src/vim.h
10865
10866Patch 7.3.086
10867Problem: When using a mapping with an expression and there was no count,
10868 v:count has the value of the previous command. (ZyX)
10869Solution: Also set v:count and v:count1 before getting the character that
10870 could be a command or a count.
10871Files: src/normal.c
10872
10873Patch 7.3.087
10874Problem: EINTR is not always defined.
10875Solution: Include errno.h in vim.h.
10876Files: src/if_cscope.c, src/if_tcl.c, src/integration.c, src/memline.c,
10877 src/os_mswin.c, src/os_win16.c, src/os_win32.c, src/vim.h,
10878 src/workshop.c
10879
10880Patch 7.3.088
10881Problem: Ruby can't load Gems sometimes, may cause a crash.
10882Solution: Undefine off_t. Use ruby_process_options(). (Yasuhiro Matsumoto)
10883Files: src/if_ruby.c
10884
10885Patch 7.3.089
10886Problem: Compiler warning on 64 bit MS-Windows.
10887Solution: Add type cast. (Mike Williams)
10888Files: src/netbeans.c
10889
10890Patch 7.3.090
10891Problem: Wrong help text for Cscope.
10892Solution: Adjust the help text for "t". (Dominique Pelle)
10893Files: src/if_cscope.c
10894
10895Patch 7.3.091
10896Problem: "vim -w foo" writes special key codes for removed escape
10897 sequences. (Josh Triplett)
10898Solution: Don't write K_IGNORE codes.
10899Files: src/getchar.c, src/misc1.c, src/term.c, src/vim.h
10900
10901Patch 7.3.092
10902Problem: Resizing the window when exiting.
10903Solution: Don't resize when exiting.
10904Files: src/term.c
10905
10906Patch 7.3.093
10907Problem: New DLL dependencies in MingW with gcc 4.5.0.
10908Solution: Add STATIC_STDCPLUS, LDFLAGS and split up WINDRES. (Guopeng Wen)
10909Files: src/GvimExt/Make_ming.mak, src/Make_ming.mak
10910
10911Patch 7.3.094
10912Problem: Using abs() requires type cast to int.
10913Solution: Use labs() so that the value remains long. (Hong Xu)
10914Files: src/screen.c
10915
10916Patch 7.3.095
10917Problem: Win32: In Chinese tear-off menu doesn't work. (Weasley)
10918Solution: Use menu_name_equal(). (Alex Jakushev)
10919Files: src/menu.c
10920
10921Patch 7.3.096
Bram Moolenaardd007ed2013-07-09 15:44:17 +020010922Problem: "gvim -nb" is not interruptible. Leaking file descriptor on
Bram Moolenaar913df812013-07-06 15:44:11 +020010923 netbeans connection error.
10924Solution: Check for CTRL-C typed. Free file descriptor. (Xavier de Gaye)
10925Files: src/netbeans.c
10926
10927Patch 7.3.097
10928Problem: Using ":call" inside "if 0" does not see that a function returns a
10929 Dict and gives error for "." as string concatenation.
10930Solution: Use eval0() to skip over the expression. (Yasuhiro Matsumoto)
10931Files: src/eval.c
10932
10933Patch 7.3.098
10934Problem: Function that ignores error still causes called_emsg to be set.
10935 E.g. when expand() fails the status line is disabled.
10936Solution: Move check for emsg_not_now() up. (James Vega)
10937Files: src/message.c
10938
10939Patch 7.3.099
10940Problem: Crash when splitting a window with zero height. (Yukihiro
10941 Nakadaira)
10942Solution: Don't set the fraction in a window with zero height.
10943Files: src/window.c
10944
10945Patch 7.3.100
10946Problem: When using :normal v:count isn't set.
10947Solution: Call normal_cmd() with toplevel set to TRUE.
10948Files: src/ex_docmd.c
10949
10950Patch 7.3.101
10951Problem: ino_t defined with wrong size.
10952Solution: Move including auto/config.h before other includes. (Marius
10953 Geminas)
10954Files: src/if_ruby.c, src/if_lua.c
10955
10956Patch 7.3.102
10957Problem: When using ":make", typing the next command and then getting the
10958 "reload" prompt the next command is (partly) eaten by the reload
10959 prompt.
10960Solution: Accept ':' as a special character at the reload prompt to accept
10961 the default choice and execute the command.
10962Files: src/eval.c, src/fileio.c, src/gui.c, src/gui_xmdlg.c,
10963 src/memline.c, src/message.c, src/proto/message.pro,
10964 src/gui_athena.c, src/gui_gtk.c, src/gui_mac.c, src/gui_motif.c,
10965 src/gui_photon.c, src/gui_w16.c, src/gui_w32.c, src/os_mswin.c
10966 src/proto/gui_athena.pro, src/proto/gui_gtk.pro,
10967 src/proto/gui_mac.pro, src/proto/gui_motif.pro,
10968 src/proto/gui_photon.pro, src/proto/gui_w16.pro,
10969 src/proto/gui_w32.pro
10970
10971Patch 7.3.103
10972Problem: Changing 'fileformat' and then using ":w" in an empty file sets
10973 the 'modified' option.
10974Solution: In unchanged() don't ignore 'ff' for an empty file.
10975Files: src/misc1.c, src/option.c, src/proto/option.pro, src/undo.c
10976
10977Patch 7.3.104
10978Problem: Conceal: using Tab for cchar causes problems. (ZyX)
10979Solution: Do not accept a control character for cchar.
10980Files: src/syntax.c
10981
10982Patch 7.3.105
10983Problem: Can't get the value of "b:changedtick" with getbufvar().
10984Solution: Make it work. (Christian Brabandt)
10985Files: src/eval.c
10986
10987Patch 7.3.106
10988Problem: When 'cursorbind' is set another window may scroll unexpectedly
10989 when 'scrollbind' is also set. (Xavier Wang)
10990Solution: Don't call update_topline() if 'scrollbind' is set.
10991Files: src/move.c
10992
10993Patch 7.3.107
10994Problem: Year number for :undolist can be confused with month or day.
10995Solution: Change "%y" to "%Y".
10996Files: src/undo.c
10997
10998Patch 7.3.108
10999Problem: Useless check for NULL when calling vim_free().
11000Solution: Remove the check. (Dominique Pelle)
11001Files: src/eval.c, src/ex_cmds.c, src/os_win32.c
11002
11003Patch 7.3.109
11004Problem: Processing new Esperanto spell file fails and crashes Vim.
11005 (Dominique Pelle)
11006Solution: When running out of memory give an error. Handle '?' in
11007 COMPOUNDRULE properly.
11008Files: src/spell.c
11009
11010Patch 7.3.110
11011Problem: The "nbsp" item in 'listchars' isn't used for ":list".
11012Solution: Make it work. (Christian Brabandt)
11013Files: src/message.c
11014
11015Patch 7.3.111 (after 7.3.100)
11016Problem: Executing a :normal command in 'statusline' evaluation causes the
11017 cursor to move. (Dominique Pelle)
11018Solution: When updating the cursor for 'cursorbind' allow the cursor beyond
11019 the end of the line. When evaluating 'statusline' temporarily
11020 reset 'cursorbind'.
11021Files: src/move.c, src/screen.c
11022
11023Patch 7.3.112
11024Problem: Setting 'statusline' to "%!'asdf%' reads uninitialized memory.
11025Solution: Check for NUL after %.
11026Files: src/buffer.c
11027
11028Patch 7.3.113
11029Problem: Windows: Fall back directory for creating temp file is wrong.
11030Solution: Use "." instead of empty string. (Hong Xu)
11031Files: src/fileio.c
11032
11033Patch 7.3.114
11034Problem: Potential problem in initialization when giving an error message
11035 early.
11036Solution: Initialize 'verbosefile' empty. (Ben Schmidt)
11037Files: src/option.h
11038
11039Patch 7.3.115
11040Problem: Vim can crash when tmpnam() returns NULL.
11041Solution: Check for NULL. (Hong Xu)
11042Files: src/fileio.c
11043
11044Patch 7.3.116
11045Problem: 'cursorline' is displayed too short when there are concealed
11046 characters and 'list' is set. (Dennis Preiser)
11047Solution: Check for 'cursorline' when 'list' is set. (Christian Brabandt)
11048Files: src/screen.c
11049
11050Patch 7.3.117
11051Problem: On some systems --as-needed does not work, because the "tinfo"
11052 library is included indirectly from "ncurses". (Charles Campbell)
11053Solution: In configure prefer using "tinfo" instead of "ncurses".
11054Files: src/configure.in, src/auto/configure
11055
11056Patch 7.3.118
11057Problem: Ruby uses SIGVTALARM which makes Vim exit. (Alec Tica)
11058Solution: Ignore SIGVTALARM. (Dominique Pelle)
11059Files: src/os_unix.c
11060
11061Patch 7.3.119
11062Problem: Build problem on Mac. (Nicholas Stallard)
11063Solution: Use "extern" instead of "EXTERN" for p_vfile.
11064Files: src/option.h
11065
11066Patch 7.3.120
11067Problem: The message for an existing swap file is too long to fit in a 25
11068 line terminal.
11069Solution: Make the message shorter. (Chad Miller)
11070Files: src/memline.c
11071
11072Patch 7.3.121
11073Problem: Complicated 'statusline' causes a crash. (Christian Brabandt)
11074Solution: Check that the number of items is not too big.
11075Files: src/buffer.c
11076
11077Patch 7.3.122
11078Problem: Having auto/config.mk in the repository causes problems.
11079Solution: Remove auto/config.mk from the distribution. In the toplevel
11080 Makefile copy it from the "dist" file.
11081Files: Makefile, src/Makefile, src/auto/config.mk
11082
11083Patch 7.3.123
11084Problem: ml_get error when executing register being recorded into, deleting
11085 lines and 'conceallevel' is set. (ZyX)
11086Solution: Don't redraw a line for concealing when it doesn't exist.
11087Files: src/main.c
11088
11089Patch 7.3.124
11090Problem: When writing a file in binary mode it may be missing the final EOL
11091 if a file previously read was missing the EOL. (Kevin Goodsell)
11092Solution: Move the write_no_eol_lnum into the buffer struct.
11093Files: src/structs.h, src/fileio.c, src/globals.h, src/os_unix.c
11094
11095Patch 7.3.125
11096Problem: MSVC: Problem with quotes in link argument.
11097Solution: Escape backslashes and quotes. (Weasley)
11098Files: src/Make_mvc.mak
11099
11100Patch 7.3.126
11101Problem: Compiler warning for signed pointer.
11102Solution: Use unsigned int argument for sscanf().
11103Files: src/blowfish.c
11104
11105Patch 7.3.127
11106Problem: Compiler complains about comma.
11107Solution: Remove comma after last enum element.
11108Files: src/ex_cmds2.c
11109
11110Patch 7.3.128
11111Problem: Another compiler warning for signed pointer.
11112Solution: Use unsigned int argument for sscanf().
11113Files: src/mark.c
11114
11115Patch 7.3.129
11116Problem: Using integer like a boolean.
11117Solution: Nicer check for integer being non-zero.
11118Files: src/tag.c
11119
11120Patch 7.3.130
11121Problem: Variable misplaced in #ifdef.
11122Solution: Move clipboard_event_time outside of #ifdef.
11123Files: src/gui_gtk_x11.c
11124
11125Patch 7.3.131
11126Problem: Including errno.h too often.
11127Solution: Don't include errno.h in Unix header file.
11128Files: src/os_unix.h
11129
11130Patch 7.3.132
11131Problem: C++ style comments.
11132Solution: Change to C comments.
11133Files: src/if_python3.c
11134
11135Patch 7.3.133
11136Problem: When using encryption it's not clear what method was used.
11137Solution: In the file message show "blowfish" when using blowfish.
11138Files: src/fileio.c
11139
11140Patch 7.3.134
11141Problem: Drag-n-drop doesn't work in KDE Dolphin.
11142Solution: Add GDK_ACTION_MOVE flag. (Florian Degner)
11143Files: src/gui_gtk_x11.c
11144
11145Patch 7.3.135
11146Problem: When there is no previous substitute pattern, the previous search
11147 pattern is used. The other way around doesn't work.
11148Solution: When there is no previous search pattern, use the previous
11149 substitute pattern if possible. (Christian Brabandt)
11150Files: src/search.c
11151
11152Patch 7.3.136
11153Problem: Duplicate include of assert.h.
11154Solution: Remove it.
11155Files: src/if_cscope.c
11156
11157Patch 7.3.137 (after 7.3.091)
11158Problem: When 'lazyredraw' is set the screen may not be updated. (Ivan
11159 Krasilnikov)
11160Solution: Call update_screen() before waiting for input.
11161Files: src/misc1.c, src/getchar.c
11162
11163Patch 7.3.138
Bram Moolenaar207f0092020-08-30 17:20:20 +020011164Problem: ":com" changes the multibyte text of :echo. (Dimitar Dimitrov)
Bram Moolenaar913df812013-07-06 15:44:11 +020011165Solution: Search for K_SPECIAL as a byte, not a character. (Ben Schmidt)
11166Files: src/ex_docmd.c
11167
11168Patch 7.3.139 (after 7.3.137)
11169Problem: When 'lazyredraw' is set ":ver" output can't be read.
11170Solution: Don't redraw the screen when at a prompt or command line.
11171Files: src/getchar.c, src/message.c, src/misc1.c
11172
11173Patch 7.3.140
11174Problem: Crash when drawing the "$" at end-of-line for list mode just after
11175 the window border and 'cursorline' is set.
11176Solution: Don't check for 'cursorline'. (Quentin Carbonneaux)
11177Files: src/screen.c
11178
11179Patch 7.3.141
11180Problem: When a key code is not set get a confusing error message.
11181Solution: Change the error message to say the key code is not set.
11182Files: src/option.c, runtime/doc/options.txt
11183
11184Patch 7.3.142
11185Problem: Python stdout doesn't have a flush() method, causing an import to
11186 fail.
11187Solution: Add a dummy flush() method. (Tobias Columbus)
11188Files: src/if_py_both.h
11189
11190Patch 7.3.143
11191Problem: Memfile is not tested sufficiently. Looking up blocks in a
11192 memfile is slow when there are many blocks.
11193Solution: Add high level test and unittest. Adjust the number of hash
11194 buckets to the number of blocks. (Ivan Krasilnikov)
11195Files: Filelist, src/Makefile, src/main.c, src/memfile.c,
11196 src/memfile_test.c src/structs.h src/testdir/Make_amiga.mak,
11197 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
11198 src/testdir/Make_os2.mak, src/testdir/Make_vms.mak,
11199 src/testdir/Makefile, src/testdir/test77.in, src/testdir/test77.ok
11200
11201Patch 7.3.144
11202Problem: Crash with ":python help(dir)". (Kearn Holliday)
11203Solution: Fix the way the type is set on objects. (Tobias Columbus)
11204Files: src/if_python.c
11205
11206Patch 7.3.145 (after 7.3.144)
11207Problem: Can't build with Python dynamically loading.
11208Solution: Add dll_PyType_Ready.
11209Files: src/if_python.c
11210
11211Patch 7.3.146
11212Problem: It's possible to assign to a read-only member of a dict.
11213 It's possible to create a global variable "0". (ZyX)
11214 It's possible to add a v: variable with ":let v:.name = 1".
11215Solution: Add check for dict item being read-only.
11216 Check the name of g: variables.
11217 Disallow adding v: variables.
11218Files: src/eval.c
11219
11220Patch 7.3.147 (after 7.3.143)
11221Problem: Can't build on HP-UX.
11222Solution: Remove an unnecessary backslash. (John Marriott)
11223Files: src/Makefile
11224
11225Patch 7.3.148
11226Problem: A syntax file with a huge number of items or clusters causes weird
11227 behavior, a hang or a crash. (Yukihiro Nakadaira)
11228Solution: Check running out of IDs. (partly by Ben Schmidt)
11229Files: src/syntax.c
11230
11231Patch 7.3.149
11232Problem: The cursor disappears after the processing of the 'setDot'
11233 netbeans command when vim runs in a terminal.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020011234Solution: Show the cursor after a screen update. (Xavier de Gaye)
Bram Moolenaar913df812013-07-06 15:44:11 +020011235Files: src/netbeans.c
11236
11237Patch 7.3.150
11238Problem: readline() does not return the last line when the NL is missing.
11239 (Hong Xu)
11240Solution: When at the end of the file Also check for a previous line.
11241Files: src/eval.c
11242
11243Patch 7.3.151 (after 7.3.074)
11244Problem: When "unnamedplus" is in 'clipboard' the selection is sometimes
11245 also copied to the star register.
11246Solution: Avoid copy to the star register when undesired. (James Vega)
11247Files: src/ops.c
11248
11249Patch 7.3.152
11250Problem: Xxd does not check for errors from library functions.
11251Solution: Add error checks. (Florian Zumbiehl)
11252Files: src/xxd/xxd.c
11253
11254Patch 7.3.153 (after 7.3.152)
11255Problem: Compiler warning for ambiguous else, missing prototype.
11256Solution: Add braces. (Dominique Pelle) Add prototype for die().
11257Files: src/xxd/xxd.c
11258
11259Patch 7.3.154 (after 7.3.148)
11260Problem: Can't compile with tiny features. (Tony Mechelynck)
11261Solution: Move #define outside of #ifdef.
11262Files: src/syntax.c
11263
11264Patch 7.3.155
11265Problem: Crash when using map(), filter() and remove() on v:. (ZyX)
11266 Also for extend(). (Yukihiro Nakadaira)
11267Solution: Mark v: as locked. Also correct locking error messages.
11268Files: src/eval.c
11269
11270Patch 7.3.156
11271Problem: Tty names possibly left unterminated.
11272Solution: Use vim_strncpy() instead of strncpy().
11273Files: src/pty.c
11274
11275Patch 7.3.157
11276Problem: Superfluous assignment.
11277Solution: Remove assignment.
11278Files: src/misc1.c
11279
11280Patch 7.3.158
11281Problem: Might use uninitialized memory in C indenting.
11282Solution: Init arrays to empty.
11283Files: src/misc1.c
11284
11285Patch 7.3.159
11286Problem: Using uninitialized pointer when out of memory.
11287Solution: Check for NULL return value.
11288Files: src/mbyte.c
11289
11290Patch 7.3.160
11291Problem: Unsafe string copying.
11292Solution: Use vim_strncpy() instead of strcpy(). Use vim_strcat() instead
11293 of strcat().
11294Files: src/buffer.c, src/ex_docmd.c, src/hardcopy.c, src/menu.c,
11295 src/misc1.c, src/misc2.c, src/proto/misc2.pro, src/netbeans.c,
11296 src/os_unix.c, src/spell.c, src/syntax.c, src/tag.c
11297
11298Patch 7.3.161
11299Problem: Items on the stack may be too big.
11300Solution: Make items static or allocate them.
11301Files: src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
11302 src/fileio.c, src/hardcopy.c, src/quickfix.c, src/main.c,
11303 src/netbeans.c, src/spell.c, src/tag.c, src/vim.h, src/xxd/xxd.c
11304
11305Patch 7.3.162
11306Problem: No error message when assigning to a list with an index out of
11307 range. (Yukihiro Nakadaira)
11308Solution: Add the error message.
11309Files: src/eval.c
11310
11311Patch 7.3.163
11312Problem: For the default of 'shellpipe' "mksh" and "pdksh" are not
11313 recognized.
11314Solution: Recognize these shell names.
11315Files: src/option.c
11316
11317Patch 7.3.164
11318Problem: C-indenting: a preprocessor statement confuses detection of a
Bram Moolenaardd007ed2013-07-09 15:44:17 +020011319 function declaration.
Bram Moolenaar913df812013-07-06 15:44:11 +020011320Solution: Ignore preprocessor lines. (Lech Lorens) Also recognize the style
11321 to put a comma before the argument name.
11322Files: src/misc1.c, testdir/test3.in, testdir/test3.ok
11323
11324Patch 7.3.165
11325Problem: ":find" completion does not escape spaces in a directory name.
11326 (Isz)
11327Solution: Add backslashes for EXPAND_FILES_IN_PATH. (Carlo Teubner)
11328Files: src/ex_getln.c
11329
11330Patch 7.3.166
11331Problem: Buffer on the stack may be too big
11332Solution: Allocate the space.
11333Files: src/option.c
11334
11335Patch 7.3.167
11336Problem: When using the internal grep QuickFixCmdPost is not triggered.
11337 (Yukihiro Nakadaira)
11338Solution: Change the place where autocommands are triggered.
11339Files: src/quickfix.c
11340
11341Patch 7.3.168
11342Problem: When the second argument of input() contains a CR the text up to
11343 that is used without asking the user. (Yasuhiro Matsumoto)
11344Solution: Change CR, NL and ESC in the text to a space.
11345Files: src/getchar.c
11346
11347Patch 7.3.169
11348Problem: Freeing memory already freed, warning from static code analyzer.
11349Solution: Initialize pointers to NULL, correct use of "mustfree". (partly by
11350 Dominique Pelle)
11351Files: src/mis1.c
11352
11353Patch 7.3.170
11354Problem: VMS Makefile for testing was not updated for test77.
11355Solution: Add test77 to the Makefile.
11356Files: src/testdir/Make_vms.mms
11357
11358Patch 7.3.171
11359Problem: When the clipboard isn't supported: ":yank*" gives a confusing
11360 error message.
11361Solution: Specifically mention that the register name is invalid.
11362 (Jean-Rene David)
11363Files: runtime/doc/change.txt, src/ex_docmd.c, src/globals.h
11364
11365Patch 7.3.172
11366Problem: MS-Windows: rename() might delete the file if the name differs but
11367 it's actually the same file.
11368Solution: Use the file handle to check if it's the same file. (Yukihiro
11369 Nakadaira)
11370Files: src/if_cscope.c, src/fileio.c, src/os_win32.c,
11371 src/proto/os_win32.pro, src/vim.h
11372
11373Patch 7.3.173
11374Problem: After using setqflist() to make the quickfix list empty ":cwindow"
11375 may open the window anyway. Also after ":vimgrep".
11376Solution: Correctly check whether the list is empty. (Ingo Karkat)
11377Files: src/quickfix.c
11378
11379Patch 7.3.174
11380Problem: When Exuberant ctags binary is exctags it's not found.
11381Solution: Add configure check for exctags. (Hong Xu)
11382Files: src/configure.in, src/auto/configure
11383
11384Patch 7.3.175
11385Problem: When 'colorcolumn' is set locally to a window, ":new" opens a
11386 window with the same highlighting but 'colorcolumn' is empty.
11387 (Tyru)
11388Solution: Call check_colorcolumn() after clearing and copying options.
11389 (Christian Brabandt)
11390Files: src/buffer.c
11391
11392Patch 7.3.176
11393Problem: Ruby linking doesn't work properly on Mac OS X.
11394Solution: Fix the configure check for Ruby. (Bjorn Winckler)
11395Files: src/configure.in, src/auto/configure
11396
11397Patch 7.3.177
11398Problem: MS-Windows: mkdir() doesn't work properly when 'encoding' is
11399 "utf-8".
11400Solution: Convert to utf-16. (Yukihiro Nakadaira)
11401Files: src/os_win32.c, src/os_win32.h, src/proto/os_win32.pro
11402
11403Patch 7.3.178
11404Problem: C-indent doesn't handle code right after { correctly.
11405Solution: Fix detecting unterminated line. (Lech Lorens)
11406Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11407
11408Patch 7.3.179
11409Problem: C-indent doesn't handle colon in string correctly.
11410Solution: Skip the string. (Lech Lorens)
11411Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11412
11413Patch 7.3.180
11414Problem: When both a middle part of 'comments' matches and an end part, the
Bram Moolenaardd007ed2013-07-09 15:44:17 +020011415 middle part was used erroneously.
Bram Moolenaar913df812013-07-06 15:44:11 +020011416Solution: After finding the middle part match continue looking for a better
11417 end part match. (partly by Lech Lorens)
11418Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11419
11420Patch 7.3.181
11421Problem: When repeating the insert of CTRL-V or a digraph the display may
11422 not be updated correctly.
11423Solution: Only call edit_unputchar() after edit_putchar(). (Lech Lorens)
11424Files: src/edit.c
11425
11426Patch 7.3.182 (after 7.3.180)
11427Problem: Compiler warning for uninitialized variable.
11428Solution: Add dummy initializer.
11429Files: src/misc1.c
11430
11431Patch 7.3.183 (after 7.3.174)
11432Problem: When Exuberant ctags binary is exuberant-ctags it's not found.
11433Solution: Add configure check for exuberant-ctags.
11434Files: src/configure.in, src/auto/configure
11435
11436Patch 7.3.184
11437Problem: Static code analysis errors in riscOS.
11438Solution: Make buffer size bigger. (Dominique Pelle)
11439Files: src/gui_riscos.c
11440
11441Patch 7.3.185
11442Problem: ":windo g/pattern/q" closes windows and reports "N more lines".
11443 (Tim Chase)
11444Solution: Remember what buffer ":global" started in. (Jean-Rene David)
11445Files: src/ex_cmds.c
11446
11447Patch 7.3.186
11448Problem: When 'clipboard' contains "unnamed" or "unnamedplus" the value of
11449 v:register is wrong for operators without a specific register.
11450Solution: Adjust the register according to 'clipboard'. (Ingo Karkat)
11451Files: src/normal.c
11452
11453Patch 7.3.187
11454Problem: The RISC OS port has obvious errors and is not being maintained.
11455Solution: Remove the RISC OS files and code.
11456Files: src/ascii.h, src/eval.c, src/ex_cmds.c, src/ex_cmds2.c,
11457 src/ex_docmd.c, src/fileio.c, src/globals.h, src/gui.c, src/gui.h,
11458 src/main.c, src/memfile.c, src/memline.c, src/misc1.c,
11459 src/proto.h, src/quickfix.c, src/search.c, src/structs.h,
11460 src/term.c, src/termlib.c, src/version.c, src/vim.h,
11461 src/gui_riscos.h, src/os_riscos.h, src/gui_riscos.c,
11462 src/os_riscos.c, runtime/doc/os_risc.txt
11463
11464Patch 7.3.188
11465Problem: More RISC OS files to remove.
11466Solution: Remove them. Update the file list.
11467Files: src/proto/gui_riscos.pro, src/proto/os_riscos.pro, Filelist
11468
11469Patch 7.3.189 (after 7.3.186)
11470Problem: Can't build without +clipboard feature. (Christian Ebert)
11471Solution: Add the missing #ifdef.
11472Files: src/normal.c
11473
11474Patch 7.3.190
11475Problem: When there is a "containedin" syntax argument highlighting may be
11476 wrong. (Radek)
11477Solution: Reset current_next_list. (Ben Schmidt)
11478Files: src/syntax.c
11479
11480Patch 7.3.191
11481Problem: Still some RISC OS stuff to remove.
11482Solution: Remove files and lines. (Hong Xu)
11483 Remove the 'osfiletype' option code.
11484Files: README_extra.txt, src/Make_ro.mak, src/INSTALL, src/Makefile,
11485 src/buffer.c, src/eval.c, src/feature.h, src/option.c,
11486 src/option.h, src/structs.h, src/version.c, src/pty.c, Filelist
11487
11488Patch 7.3.192
Bram Moolenaar207f0092020-08-30 17:20:20 +020011489Problem: Ex command ":s/ \?/ /g" splits multibyte characters into bytes.
Bram Moolenaar913df812013-07-06 15:44:11 +020011490 (Dominique Pelle)
11491Solution: Advance over whole character instead of one byte.
11492Files: src/ex_cmds.c
11493
11494Patch 7.3.193
11495Problem: In the command line window ":close" doesn't work properly. (Tony
11496 Mechelynck)
11497Solution: Use Ctrl_C instead of K_IGNORE for cmdwin_result. (Jean-Rene
11498 David)
11499Files: src/ex_docmd.c, src/ex_getln.c
11500
11501Patch 7.3.194
11502Problem: When "b" is a symlink to directory "a", resolve("b/") doesn't
11503 result in "a/". (ZyX)
11504Solution: Remove the trailing slash. (Jean-Rene David)
11505Files: src/eval.c
11506
11507Patch 7.3.195
11508Problem: "} else" causes following lines to be indented too much. (Rouben
11509 Rostamian)
11510Solution: Better detection for the "else". (Lech Lorens)
11511Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11512
11513Patch 7.3.196
11514Problem: Can't intercept a character that is going to be inserted.
11515Solution: Add the InsertCharPre autocommand event. (Jakson A. Aquino)
11516Files: runtime/doc/autocmd.txt, runtime/doc/eval.txt,
11517 runtime/doc/map.txt, src/edit.c, src/eval.c, src/fileio.c,
11518 src/vim.h
11519
11520Patch 7.3.197
11521Problem: When a QuickfixCmdPost event removes all errors, Vim still tries
11522 to jump to the first error, resulting in E42.
11523Solution: Get the number of error after the autocmd event. (Mike Lundy)
11524Files: src/quickfix.c
11525
11526Patch 7.3.198
11527Problem: No completion for ":lang".
11528Solution: Get locales to complete from. (Dominique Pelle)
11529Files: src/eval.c, src/ex_cmds2.c, src/ex_getln.c,
11530 src/proto/ex_cmds2.pro, src/proto/ex_getln.pro, src/vim.h
11531
11532Patch 7.3.199
11533Problem: MS-Windows: Compilation problem of OLE with MingW compiler.
11534Solution: Put #ifdef around declarations. (Guopeng Wen)
11535Files: src/if_ole.h
11536
11537Patch 7.3.200 (after 7.3.198)
11538Problem: CTRL-D doesn't complete :lang.
11539Solution: Add the missing part of the change. (Dominique Pelle)
11540Files: src/ex_docmd.c
11541
11542Patch 7.3.201 (after 7.3.195)
11543Problem: "} else" still causes following lines to be indented too much.
11544Solution: Better detection for the "else" block. (Lech Lorens)
11545Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11546
11547Patch 7.3.202
11548Problem: Cannot influence the indent inside a namespace.
11549Solution: Add the "N" 'cino' parameter. (Konstantin Lepa)
11550Files: runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
11551 src/testdir/test3.ok
11552
11553Patch 7.3.203
11554Problem: MS-Windows: Can't run an external command without a console window.
11555Solution: Support ":!start /b cmd". (Xaizek)
11556Files: runtime/doc/os_win32.txt, src/os_win32.c
11557
11558Patch 7.3.204 (after 7.3.201)
11559Problem: Compiler warning.
11560Solution: Add type cast. (Mike Williams)
11561Files: src/misc1.c
11562
11563Patch 7.3.205
11564Problem: Syntax "extend" doesn't work correctly.
11565Solution: Avoid calling check_state_ends() recursively (Ben Schmidt)
11566Files: src/syntax.c
11567
11568Patch 7.3.206
11569Problem: 64bit MS-Windows compiler warning.
11570Solution: Use HandleToLong() instead of type cast. (Mike Williams)
11571Files: src/gui_w32.c
11572
11573Patch 7.3.207
11574Problem: Can't compile with MSVC with pentium4 and 64 bit.
11575Solution: Only use SSE2 for 32 bit. (Mike Williams)
11576Files: src/Make_mvc.mak
11577
11578Patch 7.3.208
11579Problem: Early terminated if statement.
11580Solution: Remove the semicolon. (Lech Lorens)
11581Files: src/gui_mac.c
11582
11583Patch 7.3.209
11584Problem: MSVC Install instructions point to wrong batch file.
11585Solution: Add a batch file for use with MSVC 10.
11586Files: src/msvc2010.bat, src/INSTALLpc.txt, Filelist
11587
11588Patch 7.3.210
11589Problem: Can't always find the file when using cscope.
11590Solution: Add the 'cscoperelative' option. (Raghavendra D Prabhu)
11591Files: runtime/doc/if_cscop.txt, runtime/doc/options.txt,
11592 src/if_cscope.c
11593
11594Patch 7.3.211 (after 7.3.210)
11595Problem: Compiler warning.
11596Solution: Add type cast.
11597Files: src/if_cscope.c
11598
11599Patch 7.3.212
11600Problem: With Python 3.2 ":py3" fails.
11601Solution: Move PyEval_InitThreads() to after Py_Initialize(). (Roland
11602 Puntaier) Check abiflags in configure. (Andreas Behr)
11603Files: src/if_python3.c, src/auto/configure, src/configure.in
11604
11605Patch 7.3.213
11606Problem: Javascript object literal is not indented correctly.
11607Solution: Make a special case for when "J1" is in 'cino'. (Luc Deschenaux)
11608Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11609
11610Patch 7.3.214
11611Problem: The text displayed by ":z-" isn't exactly like old Vi.
11612Solution: Add one to the start line number. (ChangZhuo Chen)
11613Files: src/ex_cmds.c
11614
11615Patch 7.3.215 (after 7.3.210)
11616Problem: Wrong file names in previous patch. (Toothpik)
11617Solution: Include the option changes.
11618Files: src/option.c, src/option.h
11619
11620Patch 7.3.216
11621Problem: When recovering a file a range of lines is missing. (Charles Jie)
11622Solution: Reset the index when advancing to the next pointer block. Add a
11623 test to verify recovery works.
11624Files: src/memline.c, src/testdir/test78.in, src/testdir/test78.ok,
11625 src/testdir/Makefile, src/testdir/Make_amiga.mak,
11626 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
11627 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
11628
11629Patch 7.3.217
11630Problem: Inside an "if" a ":wincmd" causes problems.
11631Solution: When skipping commands let ":wincmd" skip over its argument.
11632Files: src/ex_docmd.c
11633
11634Patch 7.3.218 (after 7.3.212)
11635Problem: Tiny configuration problem with Python 3.
11636Solution: Add abiflags in one more place. (Andreas Behr)
11637Files: src/auto/configure, src/configure.in
11638
11639Patch 7.3.219
11640Problem: Can't compile with GTK on Mac.
11641Solution: Add some #ifdef trickery. (Ben Schmidt)
11642Files: src/os_mac_conv.c, src/os_macosx.m, src/vim.h
11643
11644Patch 7.3.220
11645Problem: Python 3: vim.error is a 'str' instead of an 'Exception' object,
11646 so 'except' or 'raise' it causes a 'SystemError' exception.
11647 Buffer objects do not support slice assignment.
11648 When exchanging text between Vim and Python, multibyte texts become
Bram Moolenaardd007ed2013-07-09 15:44:17 +020011649 garbage or cause Unicode Exceptions, etc.
Bram Moolenaar913df812013-07-06 15:44:11 +020011650 'py3file' tries to read in the file as Unicode, sometimes causes
11651 UnicodeDecodeException
11652Solution: Fix the problems. (lilydjwg)
11653Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
11654
11655Patch 7.3.221
11656Problem: Text from the clipboard is sometimes handled as linewise, but not
11657 consistently.
11658Solution: Assume the text is linewise when it ends in a CR or NL.
11659Files: src/gui_gtk_x11.c, src/gui_mac.c, src/ops.c, src/os_msdos.c,
11660 src/os_mswin.c, src/os_qnx.c, src/ui.c
11661
11662Patch 7.3.222
11663Problem: Warning for building GvimExt.
11664Solution: Comment-out the DESCRIPTION line. (Mike Williams)
11665Files: src/GvimExt/gvimext.def, src/GvimExt/gvimext_ming.def
11666
11667Patch 7.3.223
11668Problem: MingW cross compilation doesn't work with tiny features.
11669Solution: Move acp_to_enc(), enc_to_utf16() and utf16_to_enc() outside of
11670 "#ifdef CLIPBOARD". Fix typo in makefile.
11671Files: src/Make_ming.mak, src/os_mswin.c
11672
11673Patch 7.3.224
11674Problem: Can't pass dict to sort function.
11675Solution: Add the optional {dict} argument to sort(). (ZyX)
11676Files: runtime/doc/eval.txt, src/eval.c
11677
11678Patch 7.3.225
11679Problem: Using "\n" in a substitute inside ":s" does not result in a line
11680 break.
11681Solution: Change behavior inside vim_regexec_nl(). Add tests. (Motoya
11682 Kurotsu)
11683Files: src/regexp.c, src/testdir/test79.in, src/testdir/test79.ok,
11684 src/testdir/test80.in, src/testdir/test80.ok,
11685 src/testdir/Makefile, src/testdir/Make_amiga.mak,
11686 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
11687 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
11688
11689Patch 7.3.226
11690Problem: On a 64 bit system "syn sync fromstart" is very slow. (Bjorn
11691 Steinbrink)
11692Solution: Store the state when starting to parse from the first line.
11693Files: src/syntax.c
11694
11695Patch 7.3.227 (after 7.3.221)
11696Problem: Mac OS doesn't have the linewise clipboard fix.
11697Solution: Also change the Mac OS file. (Bjorn Winckler)
11698Files: src/os_macosx.m
11699
11700Patch 7.3.228
11701Problem: "2gj" does not always move to the correct position.
11702Solution: Get length of line after moving to a next line. (James Vega)
11703Files: src/normal.c
11704
11705Patch 7.3.229
11706Problem: Using fork() makes gvim crash on Mac when build with
11707 CoreFoundation.
11708Solution: Disallow fork() when __APPLE__ is defined. (Hisashi T Fujinaka)
11709Files: src/gui.c
11710
11711Patch 7.3.230
11712Problem: ":wundo" and ":rundo" don't unescape their argument. (Aaron
11713 Thoma)
11714Solution: Use FILE1 instead of XFILE.
11715Files: src/ex_cmds.h
11716
11717Patch 7.3.231
11718Problem: Runtime file patches failed.
11719Solution: Redo the patches made against the patched files instead of the
11720 files in the mercurial repository.
11721Files: runtime/doc/indent.txt, runtime/doc/os_win32.txt
11722
11723Patch 7.3.232
11724Problem: Python doesn't compile without +multi_byte
11725Solution: Use "latin1" when MULTI_BYTE is not defined.
11726Files: src/if_py_both.h
11727
11728Patch 7.3.233
11729Problem: ":scriptnames" and ":breaklist" show long file names.
11730Solution: Shorten to use "~/" when possible. (Jean-Rene David)
11731Files: src/ex_cmds2.c
11732
11733Patch 7.3.234
11734Problem: With GTK menu may be popping down.
11735Solution: Use event time instead of GDK_CURRENT_TIME. (Hong Xu)
11736Files: src/gui.c, src/gui.h, src/gui_gtk.c, src/gui_gtk_x11.c
11737
11738Patch 7.3.235
11739Problem: ";" gets stuck on a "t" command, it's not useful.
11740Solution: Add the ';' flag in 'cpo'. (Christian Brabandt)
11741Files: runtime/doc/motion.txt, runtime/doc/options.txt, src/option.h,
11742 src/search.c src/testdir/test81.in, src/testdir/test81.ok,
11743 src/testdir/Makefile, src/testdir/Make_amiga.mak,
11744 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
11745 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
11746
11747Patch 7.3.236 (after 7.3.232)
11748Problem: Python 3 doesn't compile without +multi_byte
11749Solution: Use "latin1" when MULTI_BYTE is not defined. (lilydjwg)
11750Files: src/if_python3.c
11751
11752Patch 7.3.237
11753Problem: "filetype" completion doesn't work on Windows. (Yue Wu)
11754Solution: Don't use a glob pattern for the directories, use a list of
11755 directories. (Dominique Pelle)
11756Files: src/ex_getln.c
11757
11758Patch 7.3.238
11759Problem: Compiler warning for conversion.
11760Solution: Add type cast. (Mike Williams)
11761Files: src/ex_getln.c
11762
11763Patch 7.3.239
11764Problem: Python corrects the cursor column without taking 'virtualedit'
11765 into account. (lilydjwg)
11766Solution: Call check_cursor_col_win().
11767Files: src/if_py_both.h, src/mbyte.c, src/misc2.c, src/normal.c,
11768 src/proto/mbyte.pro, src/proto/misc2.pro
11769
11770Patch 7.3.240
11771Problem: External commands can't use pipes on MS-Windows.
11772Solution: Implement pipes and use them when 'shelltemp' isn't set. (Vincent
11773 Berthoux)
11774Files: src/eval.c, src/ex_cmds.c, src/misc2.c, src/os_unix.c,
11775 src/os_win32.c, src/proto/misc2.pro, src/ui.c
11776
11777Patch 7.3.241
11778Problem: Using CTRL-R CTRL-W on the command line may insert only part of
11779 the word.
11780Solution: Use the cursor position instead of assuming it is at the end of
11781 the command. (Tyru)
11782Files: src/ex_getln.c
11783
11784Patch 7.3.242
11785Problem: Illegal memory access in after_pathsep().
11786Solution: Check that the pointer is not at the start of the file name.
11787 (Dominique Pelle)
11788Files: src/misc2.c
11789
11790Patch 7.3.243
11791Problem: Illegal memory access in readline().
11792Solution: Swap the conditions. (Dominique Pelle)
11793Files: src/eval.c
11794
11795Patch 7.3.244
11796Problem: MS-Windows: Build problem with old compiler. (John Beckett)
11797Solution: Only use HandleToLong() when available. (Mike Williams)
11798Files: src/gui_w32.c
11799
11800Patch 7.3.245
11801Problem: Python 3.2 libraries not correctly detected.
11802Solution: Add the suffix to the library name. (Niclas Zeising)
11803Files: src/auto/configure, src/configure.in
11804
11805Patch 7.3.246 (after 7.3.235)
11806Problem: Repeating "f4" in "4444" skips one 4.
11807Solution: Check the t_cmd flag. (Christian Brabandt)
11808Files: src/search.c
11809
11810Patch 7.3.247
11811Problem: Running tests changes the users viminfo file. Test for patch
11812 7.3.246 missing.
11813Solution: Add "nviminfo" to the 'viminfo' option. Include the test.
11814Files: src/testdir/test78.in, src/testdir/test81.in
11815
11816Patch 7.3.248
11817Problem: PC Install instructions missing install instructions.
11818Solution: Step-by-step explanation. (Michael Soyka)
11819Files: src/INSTALLpc.txt
11820
11821Patch 7.3.249
11822Problem: Wrong indenting for array initializer.
11823Solution: Detect '}' in a better way. (Lech Lorens)
11824Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
11825
11826Patch 7.3.250
11827Problem: Python: Errors in Unicode characters not handled nicely.
11828Solution: Add the surrogateescape error handler. (lilydjwg)
11829Files: src/if_python3.c
11830
11831Patch 7.3.251
11832Problem: "gH<Del>" deletes the current line, except when it's the last
11833 line.
11834Solution: Set the "include" flag to indicate the last line is to be deleted.
11835Files: src/normal.c, src/ops.c
11836
11837Patch 7.3.252 (after 7.3.247)
11838Problem: Tests fail. (David Northfield)
11839Solution: Add missing update for .ok file.
11840Files: src/testdir/test81.ok
11841
11842Patch 7.3.253
11843Problem: "echo 'abc' > ''" returns 0 or 1, depending on 'ignorecase'.
11844 Checks in mb_strnicmp() for illegal and truncated bytes are
11845 wrong. Should not assume that byte length is equal before case
11846 folding.
11847Solution: Add utf_safe_read_char_adv() and utf_strnicmp(). Add a test for
11848 this. (Ivan Krasilnikov)
11849Files: src/mbyte.c src/testdir/test82.in, src/testdir/test82.ok,
11850 src/testdir/Makefile, src/testdir/Make_amiga.mak,
11851 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
11852 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
11853
11854Patch 7.3.254
11855Problem: The coladd field is not reset when setting the line number for a
11856 ":call" command.
11857Solution: Reset it.
11858Files: src/eval.c
11859
11860Patch 7.3.255
11861Problem: When editing a file such as "File[2010-08-15].vim" an E16 error is
11862 given. (Manuel Stol)
11863Solution: Don't give an error for failing to compile the regexp.
11864Files: src/ex_docmd.c, src/misc1.c, src/vim.h
11865
11866Patch 7.3.256
11867Problem: Javascript indenting not sufficiently tested.
11868Solution: Add more tests. (Luc Deschenaux) Mark the lines that are indented
11869 wrong.
11870Files: src/testdir/test3.in, src/testdir/test3.ok
11871
11872Patch 7.3.257
11873Problem: Not all completions are available to user commands.
11874Solution: Add "color", "compiler", "file_in_path" and "locale". (Dominique
11875 Pelle)
11876Files: src/ex_docmd.c, runtime/doc/map.txt
11877
11878Patch 7.3.258
11879Problem: MS-Windows: The edit with existing vim context menu entries can be
11880 unwanted.
11881Solution: Let a registry entry disable them. (Jerome Vuarand)
11882Files: src/GvimExt/gvimext.cpp
11883
11884Patch 7.3.259
11885Problem: Equivalence classes only work for latin characters.
11886Solution: Add the Unicode equivalence characters. (Dominique Pelle)
11887Files: runtime/doc/pattern.txt, src/regexp.c, src/testdir/test44.in,
11888 src/testdir/test44.ok
11889
11890Patch 7.3.260
11891Problem: CursorHold triggers on an incomplete mapping. (Will Gray)
11892Solution: Don't trigger CursorHold when there is typeahead.
11893Files: src/fileio.c
11894
11895Patch 7.3.261
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020011896Problem: G++ error message erroneously recognized as error.
Bram Moolenaar913df812013-07-06 15:44:11 +020011897Solution: Ignore "In file included from" line also when it ends in a colon.
11898 (Fernando Castillo)
11899Files: src/option.h
11900
11901Patch 7.3.262
11902Problem: Photon code style doesn't match Vim style.
11903Solution: Clean up some of it. (Elias Diem)
11904Files: src/gui_photon.c
11905
11906Patch 7.3.263
11907Problem: Perl and Tcl have a few code style problems.
11908Solution: Clean it up. (Elias Diem)
11909Files: src/if_perl.xs, src/if_tcl.c
11910
11911Patch 7.3.264
11912Problem: When the current directory name contains wildcard characters, such
11913 as "foo[with]bar", the tags file can't be found. (Jeremy
11914 Erickson)
11915Solution: When searching for matching files also match without expanding
11916 wildcards. This is a bit of a hack.
11917Files: src/vim.h, src/misc1.c, src/misc2.c
11918
11919Patch 7.3.265
11920Problem: When storing a pattern in search history there is no proper check
11921 for the separator character.
11922Solution: Pass the separator character to in_history(). (Taro Muraoka)
11923Files: src/ex_getln.c
11924
11925Patch 7.3.266
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020011926Problem: In gvim with iBus typing space in Insert mode doesn't work.
Bram Moolenaar913df812013-07-06 15:44:11 +020011927Solution: Clear xim_expected_char after checking it.
11928Files: src/mbyte.c
11929
11930Patch 7.3.267
11931Problem: Ruby on Mac OS X 10.7 may crash.
11932Solution: Avoid alloc(0). (Bjorn Winckler)
11933Files: src/if_ruby.c
11934
11935Patch 7.3.268
11936Problem: Vim freezes when executing an external command with zsh.
11937Solution: Use O_NOCTTY both in the master and slave. (Bjorn Winckler)
11938Files: src/os_unix.c
11939
11940Patch 7.3.269
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020011941Problem: 'shellcmdflag' only works with one flag.
Bram Moolenaar913df812013-07-06 15:44:11 +020011942Solution: Split into multiple arguments. (Gary Johnson)
11943Files: src/os_unix.c
11944
11945Patch 7.3.270
11946Problem: Illegal memory access.
11947Solution: Swap conditions. (Dominique Pelle)
11948Files: src/ops.c
11949
11950Patch 7.3.271
11951Problem: Code not following Vim coding style.
11952Solution: Fix the style. (Elias Diem)
11953Files: src/gui_photon.c
11954
11955Patch 7.3.272
11956Problem: ":put =list" does not add an empty line for a trailing empty
11957 item.
11958Solution: Add a trailing NL when turning a list into a string.
11959Files: src/eval.c
11960
11961Patch 7.3.273
11962Problem: A BOM in an error file is seen as text. (Aleksey Baibarin)
11963Solution: Remove the BOM from the text before evaluating. (idea by Christian
11964 Brabandt)
11965Files: src/quickfix.c, src/mbyte.c, src/proto/mbyte.pro,
11966 src/testdir/test10.in
11967
11968Patch 7.3.274
11969Problem: With concealed characters tabs do not have the right size.
11970Solution: Use VCOL_HLC instead of vcol. (Eiichi Sato)
11971Files: src/screen.c
11972
11973Patch 7.3.275
11974Problem: MS-Windows: When using a black background some screen updates
11975 cause the window to flicker.
11976Solution: Add WS_CLIPCHILDREN to CreateWindow(). (René Aguirre)
11977Files: src/gui_w32.c
11978
11979Patch 7.3.276
11980Problem: GvimExt sets $LANG in the wrong way.
11981Solution: Save the environment and use it for gvim. (Yasuhiro Matsumoto)
11982Files: src/GvimExt/gvimext.cpp
11983
11984Patch 7.3.277
11985Problem: MS-Windows: some characters do not show in dialogs.
11986Solution: Use the wide methods when available. (Yanwei Jia)
11987Files: src/gui_w32.c, src/gui_w48.c, src/os_mswin.c, src/os_win32.c,
11988 src/os_win32.h
11989
11990Patch 7.3.278
11991Problem: Passing the file name to open in VisVim doesn't work.
11992Solution: Adjust the index and check for end of buffer. (Jiri Sedlak)
11993Files: src/VisVim/Commands.cpp
11994
11995Patch 7.3.279
11996Problem: With GTK, when gvim is full-screen and a tab is opened and using a
11997 specific monitor configuration the window is too big.
11998Solution: Adjust the window size like on MS-Windows. (Yukihiro Nakadaira)
11999Files: src/gui.c, src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro
12000
12001Patch 7.3.280
12002Problem: ":lmake" does not update the quickfix window title.
12003Solution: Update the title. (Lech Lorens)
12004Files: src/quickfix.c, src/testdir/test10.in, src/testdir/test10.ok
12005
12006Patch 7.3.281
12007Problem: After using "expand('%:8')" the buffer name is changed.
12008Solution: Make a copy of the file name before shortening it.
12009Files: src/eval.c
12010
12011Patch 7.3.282
12012Problem: When using input() and :echo in a loop the displayed text is
12013 incorrect. (Benjamin Fritz)
12014Solution: Only restore the cursor position when there is a command line.
12015 (Ben Schmidt)
12016Files: src/ex_getln.c
12017
12018Patch 7.3.283
Bram Moolenaar207f0092020-08-30 17:20:20 +020012019Problem: An expression mapping with a multibyte character containing a
Bram Moolenaar913df812013-07-06 15:44:11 +020012020 0x80 byte gets messed up. (ZyX)
12021Solution: Unescape the expression before evaluating it (Yukihiro Nakadaira)
12022Files: src/getchar.c
12023
12024Patch 7.3.284
Bram Moolenaar207f0092020-08-30 17:20:20 +020012025Problem: The str2special() function doesn't handle multibyte characters
Bram Moolenaar913df812013-07-06 15:44:11 +020012026 properly.
Bram Moolenaar207f0092020-08-30 17:20:20 +020012027Solution: Recognize multibyte characters. (partly by Vladimir Vichniakov)
Bram Moolenaar913df812013-07-06 15:44:11 +020012028Files: src/getchar.c, src/message.c, src/misc2.c
12029
12030Patch 7.3.285 (after 7.3.284)
12031Problem: Mapping <Char-123> no longer works.
12032Solution: Properly check for "char-". Add a test for it.
12033Files: src/misc2.c, src/testdir/test75.in, src/testdir/test75.ok
12034
12035Patch 7.3.286
12036Problem: Crash when using "zd" on a large number of folds. (Sam King)
12037Solution: Recompute pointer after reallocating array. Move fewer entries
12038 when making room.
12039Files: src/fold.c
12040
12041Patch 7.3.287
12042Problem: Can't compile with MSVC and tiny options.
12043Solution: Move variables and #ifdefs. (Sergey Khorev)
12044Files: src/os_win32.c
12045
12046Patch 7.3.288
12047Problem: has('python') may give an error message for not being able to load
12048 the library after using python3.
12049Solution: Only give the error when the verbose argument is true.
12050Files: src/if_python.c, src/if_python3.c
12051
12052Patch 7.3.289
12053Problem: Complete function isn't called when the leader changed.
12054Solution: Call ins_compl_restart() when the leader changed. (Taro Muraoka)
12055Files: src/edit.c
12056
12057Patch 7.3.290
12058Problem: When a BufWriteCmd autocommand resets 'modified' this doesn't
12059 change older buffer states to be marked as 'modified' like
12060 ":write" does. (Yukihiro Nakadaira)
12061Solution: When the BufWriteCmd resets 'modified' then adjust the undo
12062 information like ":write" does.
12063Files: src/fileio.c
12064
12065Patch 7.3.291
12066Problem: Configure doesn't work properly with Python3.
12067Solution: Put -ldl before $LDFLAGS. Add PY3_NO_RTLD_GLOBAL. (Roland
12068 Puntaier)
12069Files: src/config.h.in, src/auto/configure, src/configure.in
12070
12071Patch 7.3.292
12072Problem: Crash when using fold markers and selecting a visual block that
12073 includes a folded line and goes to end of line. (Sam Lidder)
12074Solution: Check for the column to be MAXCOL. (James Vega)
12075Files: src/screen.c
12076
12077Patch 7.3.293
12078Problem: MSVC compiler has a problem with non-ASCII characters.
12079Solution: Avoid non-ASCII characters. (Hong Xu)
12080Files: src/ascii.h, src/spell.c
12081
12082Patch 7.3.294 (after 7.3.289)
12083Problem: Patch 289 causes more problems than it solves.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020012084Solution: Revert the patch until a better solution is found.
Bram Moolenaar913df812013-07-06 15:44:11 +020012085Files: src/edit.c
12086
12087Patch 7.3.295
12088Problem: When filtering text with an external command Vim may not read all
12089 the output.
12090Solution: When select() is interrupted loop and try again. (James Vega)
12091Files: src/os_unix.c
12092
12093Patch 7.3.296
12094Problem: When writing to an external command a zombie process may be left
12095 behind.
12096Solution: Wait on the process. (James Vega)
12097Files: src/os_unix.c
12098
12099Patch 7.3.297
12100Problem: Can't load Perl 5.14 dynamically.
12101Solution: Add code in #ifdefs. (Charles Cooper)
12102Files: if_perl.xs
12103
12104Patch 7.3.298
12105Problem: Built-in colors are different from rgb.txt.
12106Solution: Adjust the color values. (Benjamin Haskell)
12107Files: src/gui_photon.c, src/gui_w48.c
12108
12109Patch 7.3.299
12110Problem: Source code not in Vim style.
12111Solution: Adjust the style. (Elias Diem)
12112Files: src/gui_photon.c
12113
12114Patch 7.3.300
Bram Moolenaar207f0092020-08-30 17:20:20 +020012115Problem: Python doesn't parse multibyte argument correctly.
Bram Moolenaar913df812013-07-06 15:44:11 +020012116Solution: Use "t" instead of "s". (lilydjwg)
12117Files: src/if_py_both.h
12118
12119Patch 7.3.301
12120Problem: When 'smartindent' and 'copyindent' are set a Tab is used even
12121 though 'expandtab' is set.
12122Solution: Do not insert Tabs. Add a test. (Christian Brabandt)
12123Files: src/misc1.c, src/testdir/test19.in, src/testdir/test19.ok
12124
12125Patch 7.3.302 (after 7.3.301)
12126Problem: Test 19 fails without 'smartindent' and +eval.
12127Solution: Don't use ":exe". Source small.vim.
12128Files: src/testdir/test19.in
12129
12130Patch 7.3.303 (after 7.3.296)
12131Problem: Compilation error.
12132Solution: Correct return type from int to pid_t. (Danek Duvall)
12133Files: src/os_unix.c
12134
12135Patch 7.3.304
12136Problem: Strawberry Perl doesn't work on MS-Windows.
12137Solution: Use xsubpp if needed. (Yasuhiro Matsumoto)
12138Files: src/Make_ming.mak, src/Make_mvc.mak
12139
12140Patch 7.3.305
12141Problem: Auto-loading a function while editing the command line causes
12142 scrolling up the display.
12143Solution: Don't set msg_scroll when defining a function and the user is not
12144 typing. (Yasuhiro Matsumoto)
12145Files: src/eval.c
12146
12147Patch 7.3.306
12148Problem: When closing a window there is a chance that deleting a scrollbar
12149 triggers a GUI resize, which uses the window while it is not in a
12150 valid state.
12151Solution: Set the buffer pointer to NULL to be able to detect the invalid
12152 situation. Fix a few places that used the buffer pointer
12153 incorrectly.
12154Files: src/buffer.c, src/ex_cmds.c, src/term.c, src/window.c
12155
12156Patch 7.3.307
12157Problem: Python 3 doesn't support slice assignment.
12158Solution: Implement slices. (Brett Overesch, Roland Puntaier)
12159Files: src/if_python3.c
12160
12161Patch 7.3.308
12162Problem: Writing to 'verbosefile' has problems, e.g. for :highlight.
12163Solution: Do not use a separate verbose_write() function but write with the
12164 same code that does redirecting. (Yasuhiro Matsumoto)
12165Files: src/message.c
12166
12167Patch 7.3.309 (after 7.3.307)
12168Problem: Warnings for pointer types.
12169Solution: Change PySliceObject to PyObject.
12170Files: src/if_python3.c
12171
12172Patch 7.3.310
12173Problem: Code not following Vim style.
12174Solution: Fix the style. (Elias Diem)
12175Files: src/gui_photon.c
12176
12177Patch 7.3.311 (replaces 7.3.289)
12178Problem: Complete function isn't called when the leader changed.
12179Solution: Allow the complete function to return a dictionary with a flag
12180 that indicates ins_compl_restart() is to be called when the leader
12181 changes. (Taro Muraoka)
12182Files: runtime/insert.txt, src/edit.c, src/eval.c, src/proto/eval.pro
12183
12184Patch 7.3.312 (after 7.3.306)
12185Problem: Can't compile with tiny features.
12186Solution: Add #ifdef around win_valid().
12187Files: src/buffer.c
12188
Bram Moolenaare2db6952013-07-24 19:53:36 +020012189Patch 7.3.313 (after 7.3.307)
Bram Moolenaar913df812013-07-06 15:44:11 +020012190Problem: One more warning when compiling with dynamic Python 3.
12191Solution: Change PySliceObject to PyObject.
12192Files: src/if_python3.c
12193
12194Patch 7.3.314 (after 7.3.304)
12195Problem: Missing parenthesis.
12196Solution: Add it. (Benjamin R. Haskell)
12197Files: src/Make_mvc.mak
12198
12199Patch 7.3.315
12200Problem: Opening a window before forking causes problems for GTK.
12201Solution: Fork first, create the window in the child and report back to the
12202 parent process whether it worked. If successful the parent exits,
12203 if unsuccessful the child exits and the parent continues in the
12204 terminal. (Tim Starling)
12205Files: src/gui.c
12206
12207Patch 7.3.316 (after 7.3.306)
12208Problem: Crash when 'colorcolumn' is set and closing buffer.
12209Solution: Check for w_buffer to be NULL. (Yasuhiro Matsumoto)
12210Files: src/option.c
12211
12212Patch 7.3.317
12213Problem: Calling debug.debug() in Lua may cause Vim to hang.
12214Solution: Add a better debug method. (Rob Hoelz, Luis Carvalho)
12215Files: src/if_lua.c
12216
12217Patch 7.3.318
12218Problem: "C" on the last line deletes that line if it's blank.
12219Solution: Only delete the last line for a delete operation. (James Vega)
12220Files: src/ops.c
12221
12222Patch 7.3.319 (after 7.3.311)
12223Problem: Redobuff doesn't always include changes of the completion leader.
12224Solution: Insert backspaces as needed. (idea by Taro Muraoka)
12225Files: src/edit.c
12226
12227Patch 7.3.320
12228Problem: When a 0xa0 character is in a sourced file the error message for
12229 unrecognized command does not show the problem.
12230Solution: Display 0xa0 as <a0>.
12231Files: src/ex_docmd.c
12232
12233Patch 7.3.321
12234Problem: Code not following Vim style.
12235Solution: Fix the style. (Elias Diem)
12236Files: src/os_qnx.c
12237
12238Patch 7.3.322
12239Problem: #ifdef for PDP_RETVAL doesn't work, INT_PTR can be a typedef.
12240Solution: Check the MSC version and 64 bit flags. (Sergiu Dotenco)
12241Files: src/os_mswin.c
12242
12243Patch 7.3.323
12244Problem: The default 'errorformat' does not ignore some "included from"
12245 lines.
12246Solution: Add a few more patterns. (Ben Boeckel)
12247Files: src/option.h
12248
12249Patch 7.3.324 (after 7.3.237)
12250Problem: Completion for ":compiler" shows color scheme names.
12251Solution: Fix the directory name. (James Vega)
12252Files: src/ex_getln.c
12253
12254Patch 7.3.325
12255Problem: A duplicated function argument gives an internal error.
12256Solution: Give a proper error message. (based on patch by Tyru)
12257Files: src/eval.c
12258
12259Patch 7.3.326
12260Problem: MingW 4.6 no longer supports the -mno-cygwin option.
12261Solution: Split the Cygwin and MingW makefiles. (Matsushita Shougo)
12262Files: src/GvimExt/Make_cyg.mak, src/GvimExt/Make_ming.mak,
12263 src/Make_cyg.mak, src/Make_ming.mak, src/xxd/Make_ming.mak,
12264 Filelist
12265
12266Patch 7.3.327
12267Problem: When jumping to a help tag a closed fold doesn't open.
12268Solution: Save and restore KeyTyped. (Yasuhiro Matsumoto)
12269Files: src/ex_cmds.c
12270
12271Patch 7.3.328
12272Problem: When command line wraps the cursor may be displayed wrong when
Bram Moolenaar207f0092020-08-30 17:20:20 +020012273 there are multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020012274Solution: Position the cursor before drawing the text. (Yasuhiro Matsumoto)
12275Files: src/ex_getln.c
12276
12277Patch 7.3.329
12278Problem: When skipping over code from ":for" to ":endfor" get an error for
12279 calling a dict function. (Yasuhiro Matsumoto)
12280Solution: Ignore errors when skipping over :call command.
12281Files: src/ex_docmd.c, src/eval.c
12282
12283Patch 7.3.330
12284Problem: When longjmp() is invoked if the X server gives an error the state
12285 is not properly restored.
12286Solution: Reset vgetc_busy. (Yukihiro Nakadaira)
12287Files: src/main.c
12288
12289Patch 7.3.331
12290Problem: "vit" selects wrong text when a tag name starts with the same text
12291 as an outer tag name. (Ben Fritz)
12292Solution: Add "\>" to the pattern to check for word boundary.
12293Files: src/search.c
12294
12295Patch 7.3.332 (after 7.3.202)
12296Problem: Indent after "public:" is not increased in C++ code. (Lech Lorens)
12297Solution: Check for namespace after the regular checks. (partly by Martin
12298 Gieseking)
12299Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
12300
12301Patch 7.3.333
12302Problem: Using "." to repeat a Visual delete counts the size in bytes, not
12303 characters. (Connor Lane Smith)
12304Solution: Store the virtual column numbers instead of byte positions.
12305Files: src/normal.c
12306
12307Patch 7.3.334
12308Problem: Latest MingW about XSUBPP referencing itself. (Gongqian Li)
12309Solution: Rename the first use to XSUBPPTRY.
12310Files: src/Make_ming.mak
12311
12312Patch 7.3.335
12313Problem: When 'imdisable' is reset from an autocommand in Insert mode it
12314 doesn't take effect.
12315Solution: Call im_set_active() in Insert mode. (Taro Muraoka)
12316Files: src/option.c
12317
12318Patch 7.3.336
12319Problem: When a tags file specifies an encoding different from 'enc' it
12320 may hang and using a pattern doesn't work.
12321Solution: Convert the whole line. Continue reading the header after the
12322 SORT tag. Add test83. (Yukihiro Nakadaira)
12323Files: src/tag.c, src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
12324 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
12325 src/testdir/Make_vms.mms, src/testdir/Makefile,
12326 src/testdir/test83-tags2, src/testdir/test83-tags3,
12327 src/testdir/test83.in, src/testdir/test83.ok
12328
12329Patch 7.3.337 (after 7.3.295)
12330Problem: Screen doesn't update after resizing the xterm until a character
12331 is typed.
12332Solution: When the select call is interrupted check do_resize. (Taylor
12333 Hedberg)
12334Files: src/os_unix.c
12335
12336Patch 7.3.338
12337Problem: Using getchar() in an expression mapping doesn't work well.
12338Solution: Don't save and restore the typeahead. (James Vega)
12339Files: src/getchar.c, src/testdir/test34.ok
12340
12341Patch 7.3.339
12342Problem: "make shadow" doesn't link all test files.
12343Solution: Add a line in Makefile and Filelist.
12344Files: src/Makefile, Filelist
12345
12346Patch 7.3.340
12347Problem: When 'verbosefile' is set ftplugof.vim can give an error.
12348Solution: Only remove filetypeplugin autocommands when they exist. (Yasuhiro
12349 Matsumoto)
12350Files: runtime/ftplugof.vim
12351
12352Patch 7.3.341
12353Problem: Local help files are only listed in help.txt, not in translated
12354 help files.
12355Solution: Also find translated help files. (Yasuhiro Matsumoto)
12356Files: src/ex_cmds.c
12357
12358Patch 7.3.342
12359Problem: Code not in Vim style.
12360Solution: Fix the style. (Elias Diem)
12361Files: src/os_amiga.c, src/os_mac_conv.c, src/os_win16.c
12362
12363Patch 7.3.343
12364Problem: No mouse support for urxvt.
12365Solution: Implement urxvt mouse support, also for > 252 columns. (Yiding
12366 Jia)
12367Files: src/feature.h, src/keymap.h, src/option.h, src/os_unix.c,
12368 src/term.c, src/version.c
12369
12370Patch 7.3.344
12371Problem: Problem with GUI startup related to XInitThreads.
12372Solution: Use read() and write() instead of fputs() and fread(). (James
12373 Vega)
12374Files: src/gui.c
12375
12376Patch 7.3.345
12377Problem: When switching language with ":lang" the window title doesn't
12378 change until later.
12379Solution: Update the window title right away. (Dominique Pelle)
12380Files: src/ex_cmds2.c
12381
12382Patch 7.3.346
12383Problem: It's hard to test netbeans commands.
12384Solution: Process netbeans commands after :sleep. (Xavier de Gaye)
12385Files: runtime/doc/netbeans.txt, src/ex_docmd.c, src/netbeans.c
12386
12387Patch 7.3.347
12388Problem: When dropping text from a browser on Vim it receives HTML even
12389 though "html" is excluded from 'clipboard'. (Andrei Avk)
12390Solution: Fix the condition for TARGET_HTML.
12391Files: src/gui_gtk_x11.c
12392
12393Patch 7.3.348
12394Problem: "call range(1, 947948399)" causes a crash. (ZyX)
12395Solution: Avoid a loop in the out of memory message.
12396Files: src/misc2.c
12397
12398Patch 7.3.349
12399Problem: When running out of memory during startup trying to open a
12400 swapfile will loop forever.
12401Solution: Let findswapname() set dirp to NULL if out of memory.
12402Files: src/memline.c
12403
12404Patch 7.3.350
12405Problem: Block of code after ":lua << EOF" may not work. (Paul Isambert)
12406Solution: Recognize the ":lua" command, skip to EOF.
12407Files: src/eval.c
12408
12409Patch 7.3.351
12410Problem: Text formatting uses start of insert position when it should not.
12411 (Peter Wagenaar)
12412Solution: Do not use Insstart when intentionally formatting.
12413Files: src/edit.c
12414
12415Patch 7.3.352
12416Problem: When completing methods dict functions and script-local functions
12417 get in the way.
12418Solution: Sort function names starting with "<" to the end. (Yasuhiro
12419 Matsumoto)
12420Files: src/ex_getln.c
12421
12422Patch 7.3.353 (after 7.3.343)
12423Problem: Missing part of the urxvt patch.
12424Solution: Add the change in term.c
12425Files: src/term.c
12426
12427Patch 7.3.354
12428Problem: ":set backspace+=eol" doesn't work when 'backspace' has a
12429 backwards compatible value of 2.
12430Solution: Convert the number to a string. (Hirohito Higashi)
12431Files: src/option.c
12432
12433Patch 7.3.355
12434Problem: GTK warnings when using netrw.vim. (Ivan Krasilnikov)
12435Solution: Do not remove the beval event handler twice.
12436Files: src/option.c
12437
12438Patch 7.3.356
12439Problem: Using "o" with 'cindent' set may freeze Vim. (lolilolicon)
12440Solution: Skip over {} correctly. (Hari G)
12441Files: src/misc1.c
12442
12443Patch 7.3.357
12444Problem: Compiler warning in MS-Windows console build.
12445Solution: Adjust return type of PrintHookProc(). (Mike Williams)
12446Files: src/os_mswin.c
12447
12448Patch 7.3.358 (after 7.3.353)
12449Problem: Mouse support doesn't work properly.
12450Solution: Add HMT_URXVT. (lilydjwg, James McCoy)
12451Files: src/term.c
12452
12453Patch 7.3.359
12454Problem: Command line completion shows dict functions.
12455Solution: Skip dict functions for completion. (Yasuhiro Matsumoto)
12456Files: src/eval.c
12457
12458Patch 7.3.360
12459Problem: Interrupting the load of an autoload function may cause a crash.
12460Solution: Do not use the hashitem when not valid. (Yukihiro Nakadaira)
12461Files: src/eval.c
12462
12463Patch 7.3.361
12464Problem: Accessing memory after it is freed when EXITFREE is defined.
12465Solution: Don't access curwin when firstwin is NULL. (Dominique Pelle)
12466Files: src/buffer.c
12467
12468Patch 7.3.362
12469Problem: ml_get error when using ":g" with folded lines.
12470Solution: Adjust the line number for changed_lines(). (Christian Brabandt)
12471Files: src/ex_cmds.c
12472
12473Patch 7.3.363
12474Problem: C indenting is wrong after #endif followed by a semicolon.
12475Solution: Add special handling for a semicolon in a line by itself. (Lech
12476 Lorens)
12477Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
12478
12479Patch 7.3.364 (after 7.3.353)
12480Problem: Can't compile on HP-UX. (John Marriott)
12481Solution: Only use TTYM_URXVT when it is defined.
12482Files: src/term.c
12483
12484Patch 7.3.365
12485Problem: Crash when using a large Unicode character in a file that has
12486 syntax highlighting. (ngollan)
12487Solution: Check for going past the end of the utf tables. (Dominique Pelle)
12488Files: src/mbyte.c
12489
12490Patch 7.3.366
12491Problem: A tags file with an extremely long name causes errors.
12492Solution: Ignore tags that are too long. (Arno Renevier)
12493Files: src/tag.c
12494
12495Patch 7.3.367
12496Problem: :wundo and :rundo use a wrong checksum.
12497Solution: Include the last line when computing the hash. (Christian Brabandt)
12498Files: src/undo.c
12499
12500Patch 7.3.368
12501Problem: Gcc complains about redefining _FORTIFY_SOURCE.
12502Solution: Undefine it before redefining it.
12503Files: src/Makefile, src/configure.in, src/auto/configure
12504
12505Patch 7.3.369
12506Problem: When compiled with Gnome get an error message when using --help.
12507Solution: Don't fork. (Ivan Krasilnikov)
12508Files: src/main.c
12509
12510Patch 7.3.370
12511Problem: Compiler warns for unused variable in Lua interface.
12512Solution: Remove the variable.
12513Files: src/if_lua.c
12514
12515Patch 7.3.371
12516Problem: Crash in autocomplete. (Greg Weber)
12517Solution: Check not going over allocated buffer size.
12518Files: src/misc2.c
12519
12520Patch 7.3.372
12521Problem: When using a command line mapping to <Up> with file name
12522 completion to go one directory up, 'wildchar' is inserted.
12523 (Yasuhiro Matsumoto)
12524Solution: Set the KeyTyped flag.
12525Files: src/ex_getln.c
12526
12527Patch 7.3.373 (after 7.3.366)
12528Problem: A tags file with an extremely long name may cause an infinite loop.
12529Solution: When encountering a long name switch to linear search.
12530Files: src/tag.c
12531
12532Patch 7.3.374
12533Problem: ++encoding does not work properly.
12534Solution: Recognize ++encoding before ++enc. (Charles Cooper)
12535Files: src/ex_docmd.c
12536
12537Patch 7.3.375
12538Problem: Duplicate return statement.
12539Solution: Remove the superfluous one. (Dominique Pelle)
12540Files: src/gui_mac.c
12541
12542Patch 7.3.376
12543Problem: Win32: Toolbar repainting does not work when the mouse pointer
12544 hovers over a button.
12545Solution: Call DefWindowProc() when not handling an event. (Sergiu Dotenco)
12546Files: src/gui_w32.c
12547
12548Patch 7.3.377
12549Problem: No support for bitwise AND, OR, XOR and invert.
12550Solution: Add and(), or(), invert() and xor() functions.
12551Files: src/eval.c, src/testdir/test49.in, src/testdir/test65.in,
12552 src/testdir/test65.ok, runtime/doc/eval.txt
12553
12554Patch 7.3.378
12555Problem: When cross-compiling the check for uint32_t fails.
12556Solution: Only give a warning message. (Maksim Melnikau)
12557Files: src/configure.in, src/auto/configure
12558
12559Patch 7.3.379
12560Problem: C-indenting wrong for static enum.
12561Solution: Skip over "static". (Lech Lorens)
12562Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
12563
12564Patch 7.3.380
12565Problem: C-indenting wrong for a function header.
12566Solution: Skip to the start paren. (Lech Lorens)
12567Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
12568
12569Patch 7.3.381
12570Problem: Configure silently skips interfaces that won't work.
12571Solution: Add the --enable-fail_if_missing argument. (Shlomi Fish)
12572Files: src/Makefile, src/configure.in, src/auto/configure
12573
12574Patch 7.3.382 (after 7.3.376)
12575Problem: IME characters are inserted twice.
12576Solution: Do not call DefWindowProc() if the event was handled. (Yasuhiro
12577 Matsumoto)
12578Files: src/gui_w32.c
12579
12580Patch 7.3.383
12581Problem: For EBCDIC pound sign is defined as 't'.
12582Solution: Correctly define POUND.
12583Files: src/ascii.h
12584
12585Patch 7.3.384
12586Problem: Mapping CTRL-K in Insert mode breaks CTRL-X CTRL-K for dictionary
12587 completion.
12588Solution: Add CTRL-K to the list of recognized keys. (James McCoy)
12589Files: src/edit.c
12590
12591Patch 7.3.385
12592Problem: When using an expression mapping on the command line the cursor
12593 ends up in the wrong place. (Yasuhiro Matsumoto)
12594Solution: Save and restore msg_col and msg_row when evaluating the
12595 expression.
12596Files: src/getchar.
12597
12598Patch 7.3.386
12599Problem: Test 83 fails when iconv does not support cp932. (raf)
12600Solution: Test if conversion works. (Yukihiro Nakadaira)
12601Files: src/testdir/test83.in
12602
12603Patch 7.3.387 (after 7.3.386)
12604Problem: Test 83 may fail for some encodings.
12605Solution: Set 'encoding' to utf-8 earlier.
12606Files: src/testdir/test83.in
12607
12608Patch 7.3.388
12609Problem: Crash on exit when EXITFREE is defined and using tiny features.
12610Solution: Check for NULL window pointer. (Dominique Pelle)
12611Files: src/buffer.c
12612
12613Patch 7.3.389
12614Problem: After typing at a prompt the "MORE" message appears too soon.
12615Solution: reset lines_left in msg_end_prompt(). (Eswald)
12616Files: src/message.c
12617
12618Patch 7.3.390
12619Problem: Using NULL buffer pointer in a window.
12620Solution: Check for w_buffer being NULL in more places. (Bjorn Winckler)
12621Files: src/ex_cmds.c, src/quickfix.c, src/window.c
12622
12623Patch 7.3.391
12624Problem: Can't check if the XPM_W32 feature is enabled.
12625Solution: Add xpm_w32 to the list of features. (kat)
12626Files: src/eval.c
12627
12628Patch 7.3.392
12629Problem: When setting 'undofile' while the file is already loaded but
12630 unchanged, try reading the undo file. (Andy Wokula)
12631Solution: Compute a checksum of the text when 'undofile' is set. (Christian
12632 Brabandt)
12633Files: src/option.c, src/testdir/test72.in, src/testdir/test72.ok
12634
12635Patch 7.3.393
12636Problem: Win32: When resizing Vim it is always moved to the primary monitor
12637 if the secondary monitor is on the left.
12638Solution: Use the nearest monitor. (Yukihiro Nakadaira)
12639Files: src/gui_w32.c
12640
12641Patch 7.3.394
12642Problem: When placing a mark while starting up a screen redraw messes up
12643 the screen. (lith)
12644Solution: Don't redraw while still starting up. (Christian Brabandt)
12645Files: src/screen.c
12646
12647Patch 7.3.395 (after 7.3.251)
12648Problem: "dv?bar" in the last line deletes too much and breaks undo.
12649Solution: Only adjust the cursor position when it's after the last line of
12650 the buffer. Add a test. (Christian Brabandt)
12651Files: src/ops.c, src/testdir/test43.in, src/testdir/test43.ok
12652
12653Patch 7.3.396
12654Problem: After forcing an operator to be characterwise it can still become
12655 linewise when spanning whole lines.
12656Solution: Don't make the operator linewise when motion_force was set.
12657 (Christian Brabandt)
12658Files: src/ops.c
12659
12660Patch 7.3.397
12661Problem: ":helpgrep" does not work properly when 'encoding' is not utf-8 or
12662 latin1.
12663Solution: Convert non-ascii lines to 'encoding'. (Yasuhiro Matsumoto)
12664Files: src/quickfix.c, src/spell.c, src/misc2.c, src/proto/misc2.pro
12665
12666Patch 7.3.398
12667Problem: When creating more than 10 location lists and adding items one by
12668 one a previous location may be used. (Audrius Kažukauskas)
12669Solution: Clear the location list completely when adding the tenth one.
12670Files: src/quickfix.c
12671
12672Patch 7.3.399
12673Problem: ":cd" doesn't work when the path contains wildcards. (Yukihiro
12674 Nakadaira)
12675Solution: Ignore wildcard errors when the EW_NOTWILD flag is used.
12676Files: src/misc1.c
12677
12678Patch 7.3.400
12679Problem: Compiler warnings for shadowed variables.
12680Solution: Remove or rename the variables.
12681Files: src/charset.c, src/digraph.c, src/edit.c, src/eval.c, src/fold.c,
12682 src/getchar.c, src/message.c, src/misc2.c, src/move.c,
12683 src/netbeans.c, src/option.c, src/os_unix.c, src/screen.c,
12684 src/search.c, src/spell.c, src/syntax.c, src/tag.c, src/window.c
12685
12686Patch 7.3.401
12687Problem: A couple more shadowed variables.
12688Solution: Rename the variables.
12689Files: src/netbeans.c
12690
12691Patch 7.3.402
12692Problem: When jumping to the first error a line of the buffer is sometimes
12693 redrawn on top of the list of errors.
12694Solution: Do not call update_topline_redraw() if the display was scrolled
12695 up.
12696Files: src/quickfix.c
12697
12698Patch 7.3.403
12699Problem: ":helpgrep" does not trigger QuickFixCmd* autocommands.
12700Solution: Trigger the autocommands. (Christian Brabandt)
12701Files: src/quickfix.c
12702
12703Patch 7.3.404
12704Problem: When a complete function uses refresh "always" redo will not work
12705 properly.
12706Solution: Do not reset compl_leader when compl_opt_refresh_always is set.
12707 (Yasuhiro Matsumoto)
12708Files: src/edit.c
12709
12710Patch 7.3.405
12711Problem: When xterm gets back the function keys it may delete the urxvt
12712 mouse termcap code.
12713Solution: Check for the whole code, not just the start. (Egmont Koblinger)
12714Files: src/keymap.h, src/misc2.c, src/term.c
12715
12716Patch 7.3.406
12717Problem: Multi-byte characters in b:browsefilter are not handled correctly.
12718Solution: First use convert_filter() normally and then convert to wide
12719 characters. (Taro Muraoka)
12720Files: src/gui_w48.c
12721
12722Patch 7.3.407
12723Problem: ":12verbose call F()" may duplicate text while trying to truncate.
12724 (Thinca)
12725Solution: Only truncate when there is not enough room. Also check the byte
12726 length of the buffer.
12727Files: src/buffer.c, src/eval.c, src/ex_getln.c, src/message.c,
12728 src/proto/message.pro
12729
12730Patch 7.3.408 (after 7.3.406)
12731Problem: Missing declaration.
12732Solution: Add the declaration. (John Marriott)
12733Files: src/gui_w48.c
12734
12735Patch 7.3.409
12736Problem: The license in pty.c is unclear.
12737Solution: Add a comment about the license.
12738Files: src/pty.c
12739
12740Patch 7.3.410
12741Problem: Compiler error for // comment. (Joachim Schmitz)
12742Solution: Turn into /* comment */.
12743Files: src/message.c
12744
12745Patch 7.3.411
12746Problem: Pasting in Visual mode using the "" register does not work. (John
12747 Beckett)
12748Solution: Detect that the write is overwriting the pasted register.
12749 (Christian Brabandt)
12750Files: src/normal.c
12751
12752Patch 7.3.412
12753Problem: Storing a float in a session file has an additional '&'.
12754Solution: Remove the '&'. (Yasuhiro Matsumoto)
12755Files: src/eval.c
12756
12757Patch 7.3.413
12758Problem: Build warnings on MS-Windows.
12759Solution: Add type casts. (Mike Williams)
12760Files: src/ex_getln.c, src/message.c, src/term.c
12761
12762Patch 7.3.414
12763Problem: Using CTRL-A on "000" drops the leading zero, while on "001" it
12764 doesn't.
12765Solution: Detect "000" as an octal number. (James McCoy)
12766Files: src/charset.c
12767
12768Patch 7.3.415 (after 7.3.359)
12769Problem: Completion of functions stops once a dictionary is encountered.
12770 (James McCoy)
12771Solution: Return an empty string instead of NULL.
12772Files: src/eval.c
12773
12774Patch 7.3.416 (after 7.3.415)
12775Problem: Compiler warning for wrong pointer.
12776Solution: Add type cast.
12777Files: src/eval.c
12778
12779Patch 7.3.417 (after 7.3.395)
12780Problem: Test 43 fails with a tiny build.
12781Solution: Only run test 43 with at least a small build.
12782Files: src/testdir/test43.in
12783
12784Patch 7.3.418
12785Problem: When a user complete function returns -1 an error message is
12786 given.
12787Solution: When -2 is returned stop completion silently. (Yasuhiro Matsumoto)
12788Files: src/edit.
12789
12790Patch 7.3.419
12791Problem: DBCS encoding in a user command does not always work.
12792Solution: Skip over DBCS characters. (Yasuhiro Matsumoto)
12793Files: src/ex_docmd.c
12794
12795Patch 7.3.420
12796Problem: "it" and "at" don't work properly with a dash in the tag name.
12797Solution: Require a space to match the tag name. (Christian Brabandt)
12798Files: src/search.c
12799
12800Patch 7.3.421
12801Problem: Get E832 when setting 'undofile' in vimrc and there is a file to
12802 be edited on the command line. (Toothpik)
12803Solution: Do not try reading the undo file for a file that wasn't loaded.
12804Files: src/option.c
12805
12806Patch 7.3.422
12807Problem: Python 3 does not have __members__.
12808Solution: Add "name" and "number" in another way. (lilydjwg)
12809Files: src/if_py_both.h, src/if_python3.c
12810
12811Patch 7.3.423
12812Problem: Small mistakes in comments, proto and indent.
12813Solution: Fix the mistakes.
12814Files: src/ex_cmds2.c, src/structs.h, src/ui.c, src/proto/ex_docmd.pro
12815
12816Patch 7.3.424
12817Problem: Win16 version missing some functions.
12818Solution: Add #defines for the functions.
12819Files: src/gui_w16.c
12820
12821Patch 7.3.425 (after 7.3.265)
12822Problem: Search history lines are duplicated. (Edwin Steiner)
12823Solution: Convert separator character from space to NUL.
12824Files: src/ex_getln.c
12825
12826Patch 7.3.426
12827Problem: With '$' in 'cpoptions' the $ is not displayed in the first
12828 column.
12829Solution: Use -1 instead of 0 as a special value. (Hideki Eiraku and
12830 Hirohito Higashi)
12831Files: src/edit.c, src/globals.h, src/move.c, src/screen.c, src/search.c
12832
12833Patch 7.3.427
12834Problem: readfile() can be slow with long lines.
12835Solution: Use realloc() instead of alloc(). (John Little)
12836Files: src/eval.c
12837
12838Patch 7.3.428
12839Problem: Win32: an xpm file without a mask crashes Vim.
12840Solution: Fail when the mask is missing. (Dave Bodenstab)
12841Files: src/xpm_w32.c
12842
12843Patch 7.3.429
12844Problem: When 'cpoptions' includes "E" "c0" in the first column is an
Bram Moolenaardd007ed2013-07-09 15:44:17 +020012845 error. The redo register is then set to the erroneous command.
Bram Moolenaar913df812013-07-06 15:44:11 +020012846Solution: Do not set the redo register if the command fails because of an
12847 empty region. (Hideki Eiraku)
12848Files: src/getchar.c, src/normal.c, src/proto/getchar.pro
12849
12850Patch 7.3.430
12851Problem: When a custom filetype detection uses "augroup END" the conf
Bram Moolenaare1dc76f2022-06-25 18:01:32 +010012852 filetype detection does not have the filetypedetect group.
Bram Moolenaar913df812013-07-06 15:44:11 +020012853Solution: Always end the group and include filetypedetect in the conf
12854 autocommand. (Lech Lorens)
12855Files: runtime/filetype.vim
12856
12857Patch 7.3.431
12858Problem: Fetching a key at a prompt may be confused by escape sequences.
12859 Especially when getting a prompt at a VimEnter autocommand.
12860 (Alex Efros)
12861Solution: Properly handle escape sequences deleted by check_termcode().
12862Files: src/getchar.c, src/misc1.c, src/term.c, src/proto/term.pro
12863
12864Patch 7.3.432
12865Problem: ACLs are not supported for ZFS or NFSv4 on Solaris.
12866Solution: Add configure check and code. (Danek Duvall)
12867Files: src/configure.in, src/auto/configure, src/config.h.in,
12868 src/os_unix.c
12869
12870Patch 7.3.433
12871Problem: Using continued lines in a Vim script can be slow.
12872Solution: Instead of reallocating for every line use a growarray. (Yasuhiro
12873 Matsumoto)
12874Files: src/ex_cmds2.c
12875
12876Patch 7.3.434
12877Problem: Using join() can be slow.
12878Solution: Compute the size of the result before allocation to avoid a lot of
12879 allocations and copies. (Taro Muraoka)
12880Files: src/eval.c
12881
12882Patch 7.3.435
12883Problem: Compiler warning for unused variable.
12884Solution: Move the variable inside #ifdef.
12885Files: src/ex_cmds2.c
12886
12887Patch 7.3.436
12888Problem: Compiler warnings for types on Windows.
12889Solution: Add type casts. (Mike Williams)
12890Files: src/eval.c
12891
12892Patch 7.3.437
12893Problem: Continue looping inside FOR_ALL_TAB_WINDOWS even when already done.
12894Solution: Use goto instead of break. (Hirohito Higashi)
12895Files: src/fileio.c, src/globals.h
12896
12897Patch 7.3.438
12898Problem: There is no way to avoid ":doautoall" reading modelines.
12899Solution: Add the <nomodeline> argument. Adjust documentation.
12900Files: src/fileio.c, runtime/doc/autocmd.txt
12901
12902Patch 7.3.439
12903Problem: Compiler warnings to size casts in Perl interface.
12904Solution: Use XS macros. (James McCoy)
12905Files: src/if_perl.xs, src/typemap
12906
12907Patch 7.3.440
12908Problem: Vim does not support UTF8_STRING for the X selection.
12909Solution: Add UTF8_STRING atom support. (Alex Efros) Use it only when
12910 'encoding' is set to Unicode.
12911Files: src/ui.c
12912
12913Patch 7.3.441
12914Problem: Newer versions of MzScheme (Racket) require earlier (trampolined)
12915 initialisation.
12916Solution: Call mzscheme_main() early in main(). (Sergey Khorev)
12917Files: src/Make_mvc.mak, src/if_mzsch.c, src/main.c,
12918 src/proto/if_mzsch.pro
12919
12920Patch 7.3.442 (after 7.3.438)
12921Problem: Still read modelines for ":doautocmd".
12922Solution: Move check for <nomodeline> to separate function.
12923Files: src/fileio.c, src/ex_docmd.c, src/proto/fileio.pro,
12924 runtime/doc/autocmd.txt
12925
12926Patch 7.3.443
12927Problem: MS-Windows: 'shcf' and 'shellxquote' defaults are not very good.
12928Solution: Make a better guess when 'shell' is set to "cmd.exe". (Ben Fritz)
12929Files: src/option.c, runtime/doc/options.txt
12930
12931Patch 7.3.444
12932Problem: ":all!" and ":sall!" give error E477, even though the
12933 documentation says these are valid commands.
12934Solution: Support the exclamation mark. (Hirohito Higashi)
12935Files: src/ex_cmds.h, src/testdir/test31.in, src/testdir/test31.ok
12936
12937Patch 7.3.445 (after 7.3.443)
12938Problem: Can't properly escape commands for cmd.exe.
12939Solution: Default 'shellxquote' to '('. Append ')' to make '(command)'.
12940 No need to use "/s" for 'shellcmdflag'.
12941Files: src/misc2.c, src/option.c, src/os_win32.c
12942
12943Patch 7.3.446 (after 7.3.445)
12944Problem: Win32: External commands with special characters don't work.
12945Solution: Add the 'shellxescape' option.
12946Files: src/misc2.c, src/option.c, src/option.h, runtime/doc/options.txt
12947
12948Patch 7.3.447 (after 7.3.446)
12949Problem: Win32: External commands with "start" do not work.
12950Solution: Unescape part of the command. (Yasuhiro Matsumoto)
12951Files: src/os_win32.c
12952
12953Patch 7.3.448 (after 7.3.447)
12954Problem: Win32: Still a problem with "!start /b".
12955Solution: Escape only '|'. (Yasuhiro Matsumoto)
12956Files: src/os_win32.c
12957
12958Patch 7.3.449
12959Problem: Crash when a BufWinLeave autocommand closes the only other window.
12960 (Daniel Hunt)
12961Solution: Abort closing a buffer when it becomes the only one.
12962Files: src/buffer.c, src/proto/buffer.pro, src/ex_cmds.c, src/ex_getln.c,
12963 src/misc2.c, src/quickfix.c, src/window.c, src/proto/window.pro
12964
12965Patch 7.3.450 (after 7.3.448)
12966Problem: Win32: Still a problem with "!start /b".
12967Solution: Fix pointer use. (Yasuhiro Matsumoto)
12968Files: src/os_win32.c
12969
12970Patch 7.3.451
12971Problem: Tcl doesn't work on 64 MS-Windows.
12972Solution: Make it work. (Dave Bodenstab)
12973Files: src/Make_mvc.mak, src/if_tcl.c
12974
12975Patch 7.3.452
12976Problem: Undo broken when pasting close to the last line. (Andrey Radev)
12977Solution: Use a flag to remember if the deleted included the last line.
12978 (Christian Brabandt)
12979Files: src/ops.c
12980
12981Patch 7.3.453
12982Problem: Pasting in the command line is slow.
12983Solution: Don't redraw if there is another character to read. (Dominique
12984 Pelle)
12985Files: src/ex_getln.c
12986
12987Patch 7.3.454
12988Problem: Re-allocating memory slows Vim down.
12989Solution: Use realloc() in ga_grow(). (Dominique Pelle)
12990Files: src/misc2.c
12991
12992Patch 7.3.455
12993Problem: Using many continuation lines can be slow.
12994Solution: Adjust the reallocation size to the current length.
12995Files: src/ex_cmds2.c
12996
12997Patch 7.3.456
12998Problem: ":tab drop file" has several problems, including moving the
12999 current window and opening a new tab for a file that already has a
13000 window.
13001Solution: Refactor ":tab drop" handling. (Hirohito Higashi)
13002Files: src/buffer.c, src/testdir/test62.in, src/testdir/test62.ok
13003
13004Patch 7.3.457
13005Problem: When setting $VIMRUNTIME later the directory for fetching
13006 translated messages is not adjusted.
13007Solution: Put bindtextdomain() in vim_setenv().
13008Files: src/misc1.c
13009
13010Patch 7.3.458
13011Problem: Crash when calling smsg() during startup.
13012Solution: Don't use 'shortmess' when it is not set yet.
13013Files: src/option.c
13014
13015Patch 7.3.459
13016Problem: Win32: Warnings for type conversion.
13017Solution: Add type casts. (Mike Williams)
13018Files: src/misc2.c, src/os_win32.c
13019
13020Patch 7.3.460
13021Problem: Win32: UPX does not compress 64 bit binaries.
13022Solution: Mention and add the alternative: mpress. (Dave Bodenstab)
13023Files: src/INSTALLpc.txt, src/Make_ming.mak
13024
13025Patch 7.3.461
13026Problem: The InsertCharPre autocommand event is not triggered during
13027 completion and when typing several characters quickly.
13028Solution: Also trigger InsertCharPre during completion. Do not read ahead
13029 when an InsertCharPre autocommand is defined. (Yasuhiro Matsumoto)
13030Files: src/edit.c, src/fileio.c, src/proto/fileio.pro
13031
13032Patch 7.3.462
13033Problem: When using ":loadview" folds may be closed unexpectedly.
13034Solution: Take into account foldlevel. (Xavier de Gaye)
13035Files: src/fold.c
13036
13037Patch 7.3.463
13038Problem: When using ":s///c" the cursor is moved away from the match.
13039 (Lawman)
13040Solution: Don't move the cursor when do_ask is set. (Christian Brabandt)
13041Files: src/ex_cmds.c
13042
13043Patch 7.3.464
13044Problem: Compiler warning for sprintf.
13045Solution: Put the length in a variable. (Dominique Pelle)
13046Files: src/version.c
13047
13048Patch 7.3.465
13049Problem: Cannot get file name with newline from glob().
13050Solution: Add argument to glob() and expand() to indicate they must return a
13051 list. (Christian Brabandt)
13052Files: runtime/doc/eval.txt, src/eval.c, src/ex_getln.c, src/vim.h
13053
13054Patch 7.3.466
13055Problem: Get ml_get error hen ":behave mswin" was used and selecting
13056 several lines. (A. Sinan Unur)
13057Solution: Adjust the end of the operation. (Christian Brabandt)
13058Files: src/ops.c
13059
13060Patch 7.3.467
13061Problem: Cursor positioned wrong at the command line when regaining focus
13062 and using some input method.
13063Solution: Do not position the cursor in command line mode.
13064Files: src/mbyte.c
13065
13066Patch 7.3.468
13067Problem: For some compilers the error file is not easily readable.
13068Solution: Use QuickFixCmdPre for more commands. (Marcin Szamotulski)
13069Files: runtime/doc/autocmd.txt, src/quickfix.c
13070
13071Patch 7.3.469
13072Problem: Compiler warning for unused argument without some features.
13073Solution: Add UNUSED.
13074Files: src/buffer.c
13075
13076Patch 7.3.470
13077Problem: Test 62 fails when compiled without GUI and X11.
13078Solution: Don't test :drop when it is not supported.
13079Files: src/testdir/test62.in
13080
13081Patch 7.3.471
13082Problem: Can't abort listing placed signs.
13083Solution: Check "got_int". (Christian Brabandt)
13084Files: src/buffer.c, src/ex_cmds.c
13085
13086Patch 7.3.472
13087Problem: Crash when using ":redraw" in a BufEnter autocommand and
13088 switching to another tab. (驼峰)
Bram Moolenaardd007ed2013-07-09 15:44:17 +020013089Solution: Move triggering the autocommands to after correcting the
Bram Moolenaar913df812013-07-06 15:44:11 +020013090 option values. Also check the row value to be out of bounds.
13091 (Christian Brabandt, Sergey Khorev)
13092Files: src/screen.c, src/window.c
13093
13094Patch 7.3.473
13095Problem: 'cursorbind' does not work correctly in combination with
13096 'virtualedit' set to "all".
13097Solution: Copy coladd. (Gary Johnson)
13098Files: src/move.c
13099
13100Patch 7.3.474
13101Problem: Perl build with gcc 4 fails.
13102Solution: Remove XS() statements. (Yasuhiro Matsumoto)
13103Files: src/if_perl.xs
13104
13105Patch 7.3.475
13106Problem: In a terminal with few colors the omnicomplete menu may be hard to
13107 see when using the default colors.
13108Solution: Use more explicit colors. (suggested by Alex Henrie)
13109Files: src/syntax.c
13110
13111Patch 7.3.476
13112Problem: When selecting a block, using "$" to include the end of each line
13113 and using "A" and typing a backspace strange things happen.
13114 (Yuangchen Xie)
13115Solution: Avoid using a negative length. (Christian Brabandt)
13116Files: src/ops.c
13117
13118Patch 7.3.477
13119Problem: Using ":echo" to output enough lines to scroll, then using "j" and
13120 "k" at the more prompt, displays the command on top of the output.
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020013121 (Marcin Szamotulski)
Bram Moolenaar913df812013-07-06 15:44:11 +020013122Solution: Put the output below the command. (Christian Brabandt)
13123Files: src/eval.c
13124
13125Patch 7.3.478
13126Problem: Memory leak using the ':rv!' command when reading dictionary or
13127 list global variables i.e. with 'viminfo' containing !.
13128Solution: Free the typeval. (Dominique Pelle)
13129Files: src/eval.c
13130
13131Patch 7.3.479
13132Problem: When 'cursorline' is set the line number highlighting can't be set
13133 separately.
13134Solution: Add "CursorLineNr". (Howard Buchholz)
13135Files: src/option.c, src/screen.c, src/syntax.c, src/vim.h
13136
13137Patch 7.3.480
13138Problem: When using ":qa" and there is a changed buffer picking the buffer
13139 to jump to is not very good.
13140Solution: Consider current and other tab pages. (Hirohito Higashi)
13141Files: src/ex_cmds2.c
13142
13143Patch 7.3.481
13144Problem: Changing 'virtualedit' in an operator function to "all" does not
13145 have the desired effect. (Aaron Bohannon)
13146Solution: Save, reset and restore virtual_op when executing an operator
13147 function.
13148Files: src/normal.c
13149
13150Patch 7.3.482
13151Problem: With 'cursorbind' set moving up/down does not always keep the same
13152 column.
13153Solution: Set curswant appropriately. (Gary Johnson)
13154Files: src/move.c
13155
13156Patch 7.3.483 (after 7.3.477)
13157Problem: More prompt shows up too often.
13158Solution: Instead of adding a line break, only start a new line in the
13159 message history. (Christian Brabandt)
13160Files: src/eval.c, src/message.c, src/proto/message.pro
13161
13162Patch 7.3.484
13163Problem: The -E and --echo-wid command line arguments are not mentioned in
13164 "vim --help".
13165Solution: Add the help lines. (Dominique Pelle)
13166Files: src/main.c
13167
13168Patch 7.3.485
13169Problem: When building Vim LDFLAGS isn't passed on to building xxd.
13170Solution: Pass the LDFLAGS value. (James McCoy)
13171Files: src/Makefile
13172
13173Patch 7.3.486
13174Problem: Build error with mingw64 on Windows 7.
13175Solution: Avoid the step of going through vimres.res. (Guopeng Wen)
13176Files: src/Make_ming.mak
13177
13178Patch 7.3.487
13179Problem: When setting 'timeoutlen' or 'ttimeoutlen' the column for vertical
13180 movement is reset unnecessarily.
13181Solution: Do not set w_set_curswant for every option. Add a test for this.
13182 (Kana Natsuno) Add the P_CURSWANT flag for options.
13183Files: src/option.c, src/testdir/test84.in, src/testdir/test84.ok,
13184 src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
13185 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
13186 src/testdir/Make_vms.mms, src/testdir/Makefile
13187
13188Patch 7.3.488
13189Problem: ":help!" in a help file does not work as documented.
13190Solution: When in a help file don't give an error message. (thinca)
13191Files: src/ex_cmds.c
13192
13193Patch 7.3.489
13194Problem: CTRL-] in Insert mode does not expand abbreviation when used in a
13195 mapping. (Yichao Zhou)
13196Solution: Special case using CTRL-]. (Christian Brabandt)
13197Files: src/getchar.c, src/edit.c
13198
13199Patch 7.3.490
13200Problem: Member confusion in Lua interface.
13201Solution: Fix it. Add luaeval(). (Taro Muraoka, Luis Carvalho)
13202Files: runtime/doc/if_lua.txt, src/eval.c, src/if_lua.c,
13203 src/proto/if_lua.pro
13204
13205Patch 7.3.491
13206Problem: No tests for Lua.
13207Solution: Add some simple tests for Lua. (Luis Carvalho)
13208Files: src/testdir/test1.in, src/testdir/test85.in, src/testdir/test85.ok
13209 src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
13210 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
13211 src/testdir/Make_vms.mms, src/testdir/Makefile
13212
13213Patch 7.3.492
13214Problem: Can't indent conditions separately from function arguments.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020013215Solution: Add the 'k' flag in 'cino'. (Lech Lorens)
Bram Moolenaar913df812013-07-06 15:44:11 +020013216Files: runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
13217 src/testdir/test3.ok
13218
13219Patch 7.3.493 (after 7.3.492)
13220Problem: Two unused variables.
13221Solution: Remove them. (Hong Xu)
13222Files: src/misc1.c
13223
13224Patch 7.3.494 (after 7.3.491)
Bram Moolenaardd007ed2013-07-09 15:44:17 +020013225Problem: Can't compile with Lua 5.1 or dynamic Lua.
Bram Moolenaar913df812013-07-06 15:44:11 +020013226Solution: Fix dll_ methods. Fix luado(). (Muraoka Taro, Luis Carvalho)
13227Files: src/if_lua.c
13228
13229Patch 7.3.495 (after 7.3.492)
13230Problem: Compiler warnings.
13231Solution: Add function declaration. Remove "offset" argument.
13232Files: src/misc1.c
13233
13234Patch 7.3.496
13235Problem: MS-DOS: When "diff" trips over difference in line separators some
13236 tests fail.
13237Solution: Make some .ok files use unix line separators. (David Pope)
13238Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak
13239
13240Patch 7.3.497
13241Problem: Crash when doing ":python print" and compiled with gcc and
13242 the optimizer enabled.
13243Solution: Avoid the crash, doesn't really fix the problem. (Christian
13244 Brabandt)
13245Files: src/if_py_both.h
13246
13247Patch 7.3.498
13248Problem: The behavior of the "- register changes depending on value of
13249 the 'clipboard' option. (Szamotulski)
13250Solution: Also set the "- register when the register is "*" or "+".
13251 (Christian Brabandt)
13252Files: src/ops.c
13253
13254Patch 7.3.499
13255Problem: When using any interface language when Vim is waiting for a child
13256 process it gets confused by a child process started through the
13257 interface.
13258Solution: Always used waitpid() instead of wait(). (Yasuhiro Matsumoto)
13259Files: src/os_unix.c
13260
13261Patch 7.3.500
13262Problem: Ming makefile unconditionally sets WINVER.
13263Solution: Only defined when not already defined. (Yasuhiro Matsumoto)
13264Files: src/Make_ming.mak
13265
13266Patch 7.3.501
13267Problem: Error for "flush" not being defined when using Ruby command.
13268Solution: Defined "flush" as a no-op method. (Kent Sibilev)
13269Files: src/if_ruby.c
13270
13271Patch 7.3.502
13272Problem: Netbeans insert halfway a line actually appends to the line.
13273Solution: Insert halfway the line. (Brian Victor)
13274Files: src/netbeans.c
13275
13276Patch 7.3.503 (after 7.3.501)
13277Problem: Warning for unused argument.
13278Solution: Add UNUSED.
13279Files: src/if_ruby.c
13280
13281Patch 7.3.504
13282Problem: Commands in help files are not highlighted.
13283Solution: Allow for commands in backticks. Adjust CTRL-] to remove the
13284 backticks.
13285Files: src/ex_cmds.c
13286
13287Patch 7.3.505
13288Problem: Test 11 fails on MS-Windows in some versions.
13289Solution: Fix #ifdefs for whether filtering through a pipe is possible. Move
13290 setting b_no_eol_lnum back to where it was before patch 7.3.124.
13291 (David Pope)
13292Files: src/feature.h, src/eval.c, src/ex_cmds.c, src/fileio.c
13293
13294Patch 7.3.506
13295Problem: GTK gives an error when selecting a non-existent file.
13296Solution: Add a handler to avoid the error. (Christian Brabandt)
13297Files: src/gui_gtk.c
13298
13299Patch 7.3.507
13300Problem: When exiting with unsaved changes, selecting an existing file in
13301 the file dialog, there is no dialog to ask whether the existing
13302 file should be overwritten. (Felipe G. Nievinski)
13303Solution: Call check_overwrite() before writing. (Christian Brabandt)
13304Files: src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds.pro
13305
13306Patch 7.3.508
13307Problem: Default for v:register is not set.
13308Solution: Init v:register in eval_init(). Correct for 'clipboard' before the
13309 main loop. (Ingo Karkat)
13310Files: src/eval.c, src/main.c
13311
13312Patch 7.3.509
13313Problem: ":vimgrep" fails when 'autochdir' is set.
13314Solution: A more generic solution for changing directory. (Ben Fritz)
13315Files: src/quickfix.c
13316
13317Patch 7.3.510
13318Problem: Test 77 fails on Solaris 7. (Michael Soyka)
13319Solution: Replace any tabs with spaces.
13320Files: src/testdir/test77.in
13321
13322Patch 7.3.511
13323Problem: Using a FileReadCmd autocommand that does ":e! {file}" may cause a
13324 crash. (Christian Brabandt)
13325Solution: Properly restore curwin->w_s.
13326Files: src/fileio.c
13327
13328Patch 7.3.512
13329Problem: undofile() returns a useless name when passed an empty string.
13330Solution: Return an empty string. (Christian Brabandt)
13331Files: src/eval.c
13332
13333Patch 7.3.513
13334Problem: Cannot use CTRL-E and CTRL-Y with "r".
13335Solution: Make CTRL-E and CTRL-Y work like in Insert mode. (Christian
13336 Brabandt)
13337Files: src/edit.c, src/normal.c, src/proto/edit.pro
13338
13339Patch 7.3.514
13340Problem: No completion for :history command.
13341Solution: Add the completion and update the docs. Also fix ":behave"
13342 completion. (Dominique Pelle)
13343Files: runtime/doc/cmdline.txt, runtime/doc/map.txt, src/ex_docmd.c,
13344 src/ex_getln.c, src/vim.h
13345
13346Patch 7.3.515
13347Problem: 'wildignorecase' only applies to the last part of the path.
13348Solution: Also ignore case for letters earlier in the path.
13349Files: src/misc1.c
13350
13351Patch 7.3.516
13352Problem: extend(o, o) may crash Vim.
13353Solution: Fix crash and add test. (Thinca and Hirohito Higashi)
13354Files: src/eval.c, src/testdir/test55.in, src/testdir/test55.ok
13355
13356Patch 7.3.517
13357Problem: Crash when using "vipvv". (Alexandre Provencio)
13358Solution: Don't let the text length become negative.
13359Files: src/ops.c
13360
13361Patch 7.3.518
13362Problem: When 'encoding' is a double-byte encoding ":helptags" may not find
13363 tags correctly.
13364Solution: Use vim_strbyte() instead of vim_strchr(). (Yasuhiro Matsumoto)
13365Files: src/ex_cmds.c
13366
13367Patch 7.3.519
13368Problem: When completefunction returns it cannot indicate end of completion
13369 mode.
13370Solution: Recognize completefunction returning -3. (Matsushita Shougo)
13371Files: src/edit.c
13372
13373Patch 7.3.520
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020013374Problem: gvim starts up slow on Ubuntu 12.04.
Bram Moolenaar913df812013-07-06 15:44:11 +020013375Solution: Move the call to gui_mch_init_check() to after fork(). (Yasuhiro
13376 Matsumoto) Do check $DISPLAY being set.
13377Files: src/gui.c, src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro
13378
13379Patch 7.3.521
Bram Moolenaar207f0092020-08-30 17:20:20 +020013380Problem: Using "z=" on a multibyte character may cause a crash.
Bram Moolenaar913df812013-07-06 15:44:11 +020013381Solution: Don't use strlen() on an int pointer.
13382Files: src/spell.c
13383
13384Patch 7.3.522
13385Problem: Crash in vim_realloc() when using MEM_PROFILE.
13386Solution: Avoid using a NULL argument. (Dominique Pelle)
13387Files: src/eval.c
13388
13389Patch 7.3.523
13390Problem: ":diffupdate" doesn't check for files changed elsewhere.
13391Solution: Add the ! flag. (Christian Brabandt)
13392Files: runtime/doc/diff.txt, src/diff.c, src/ex_cmds.h
13393
13394Patch 7.3.524 (after 7.3.523)
13395Problem: Missing comma.
13396Solution: Add the comma.
13397Files: src/version.c
13398
13399Patch 7.3.525
13400Problem: Compiler warning on 64 bit MS-Windows.
13401Solution: Add type cast. (Mike Williams)
13402Files: src/ex_getln.c
13403
13404Patch 7.3.526
13405Problem: Confusing indenting for #ifdef.
13406Solution: Remove and add indent. (Elias Diem)
13407Files: src/normal.c
13408
13409Patch 7.3.527
13410Problem: Clang complains about non-ASCII characters in a string.
13411Solution: Change to \x88 form. (Dominique Pelle)
13412Files: src/charset.c
13413
13414Patch 7.3.528
13415Problem: Crash when closing last window in a tab. (Alex Efros)
13416Solution: Use common code in close_last_window_tabpage(). (Christian
13417 Brabandt)
13418Files: src/window.c
13419
13420Patch 7.3.529
13421Problem: Using a count before "v" and "V" does not work (Kikyous)
13422Solution: Make the count select that many characters or lines. (Christian
13423 Brabandt)
13424Files: src/normal.c
13425
13426Patch 7.3.530 (after 7.3.520)
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020013427Problem: gvim does not work when 'guioptions' includes "f". (Davido)
Bram Moolenaar913df812013-07-06 15:44:11 +020013428Solution: Call gui_mch_init_check() when running GUI in the foreground.
13429 (Yasuhiro Matsumoto)
13430Files: src/gui.c
13431
13432Patch 7.3.531 (after 7.3.530)
13433Problem: GUI does not work on MS-Windows.
13434Solution: Add the missing #ifdef. (Patrick Avery)
13435Files: src/gui.c
13436
13437Patch 7.3.532
13438Problem: Compiler warning from Clang.
13439Solution: Use a different way to point inside a string. (Dominique Pelle)
13440Files: src/syntax.c
13441
13442Patch 7.3.533
13443Problem: Memory leak when writing undo file.
13444Solution: Free the ACL. (Dominique Pelle)
13445Files: src/undo.c
13446
13447Patch 7.3.534 (after 7.3.461)
13448Problem: When using an InsertCharPre autocommand autoindent fails.
13449Solution: Proper handling of v:char. (Alexey Radkov)
13450Files: src/edit.c
13451
13452Patch 7.3.535
13453Problem: Many #ifdefs for MB_MAXBYTES.
13454Solution: Also define MB_MAXBYTES without the +multi_byte feature. Fix
13455 places where the buffer didn't include space for a NUL byte.
13456Files: src/arabic.c, src/edit.c, src/eval.c, src/getchar.c, src/mbyte.c,
13457 src/misc1.c, src/screen.c, src/spell.c, src/vim.h
13458
13459Patch 7.3.536
13460Problem: When spell checking the German sharp s is not seen as a word
13461 character. (Aexl Bender)
13462Solution: In utf_islower() return true for the sharp s. Note: also need
13463 updated spell file for this to take effect.
13464Files: src/mbyte.c
13465
13466Patch 7.3.537
Bram Moolenaardd007ed2013-07-09 15:44:17 +020013467Problem: Unnecessary call to init_spell_chartab().
Bram Moolenaar913df812013-07-06 15:44:11 +020013468Solution: Delete the call.
13469Files: src/spell.c
13470
13471Patch 7.3.538
13472Problem: 'efm' does not handle Tabs in pointer lines.
13473Solution: Add Tab support. Improve tests. (Lech Lorens)
13474Files: src/quickfix.c, src/testdir/test10.in, src/testdir/test10.ok
13475
13476Patch 7.3.539
13477Problem: Redrawing a character on the command line does not work properly
Bram Moolenaar207f0092020-08-30 17:20:20 +020013478 for multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020013479Solution: Count the number of bytes in a character. (Yukihiro Nakadaira)
13480Files: src/ex_getln.c
13481
13482Patch 7.3.540
13483Problem: Cursor is left on the text instead of the command line.
13484Solution: Don't call setcursor() in command line mode.
13485Files: src/getchar.c
13486
13487Patch 7.3.541
13488Problem: When joining lines comment leaders need to be removed manually.
13489Solution: Add the 'j' flag to 'formatoptions'. (Lech Lorens)
13490Files: runtime/doc/change.txt, src/edit.c, src/ex_docmd.c, src/misc1.c,
13491 src/normal.c, src/ops.c, src/option.h, src/proto/misc1.pro,
13492 src/proto/ops.pro, src/search.c, src/testdir/test29.in,
13493 src/testdir/test29.ok
13494
13495Patch 7.3.542 (after 7.3.506)
13496Problem: Function is sometimes unused.
13497Solution: Add #ifdef.
13498Files: src/gui_gtk.c
13499
13500Patch 7.3.543
13501Problem: The cursor is in the wrong line after using ":copen". (John
13502 Beckett)
13503Solution: Invoke more drastic redraw method.
13504Files: src/eval.c
13505
13506Patch 7.3.544
13507Problem: There is no good way to close a quickfix window when closing the
13508 last ordinary window.
13509Solution: Add the QuitPre autocommand.
13510Files: src/ex_docmd.c, src/fileio.c, src/vim.h
13511
13512Patch 7.3.545
13513Problem: When closing a window or buffer autocommands may close it too,
13514 causing problems for where the autocommand was invoked from.
13515Solution: Add the w_closing and b_closing flags. When set disallow ":q" and
13516 ":close" to prevent recursive closing.
13517Files: src/structs.h, src/buffer.c, src/ex_docmd.c, src/window.c
13518
13519Patch 7.3.546
13520Problem: Bogus line break.
13521Solution: Remove the line break.
13522Files: src/screen.c
13523
13524Patch 7.3.547 (after 7.3.541)
13525Problem: Compiler warning for uninitialized variable.
13526Solution: Initialize it.
13527Files: src/ops.c
13528
13529Patch 7.3.548
13530Problem: Compiler warning on 64 bit Windows.
13531Solution: Add type cast. (Mike Williams)
13532Files: src/ops.c
13533
13534Patch 7.3.549
13535Problem: In 'cinoptions' "0s" is interpreted as one shiftwidth. (David
13536 Pineau)
13537Solution: Use the zero as zero. (Lech Lorens)
13538Files: src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
13539
13540Patch 7.3.550 (after 7.3.541)
13541Problem: With "j" in 'formatoptions' a list leader is not removed. (Gary
13542 Johnson)
13543Solution: Don't ignore the start of a three part comment. (Lech Lorens)
13544Files: src/ops.c, src/testdir/test29.in, src/testdir/test29.ok
13545
13546Patch 7.3.551
13547Problem: When using :tablose a TabEnter autocommand is triggered too early.
13548 (Karthick)
13549Solution: Don't trigger *Enter autocommands before closing the tab.
13550 (Christian Brabandt)
13551Files: src/buffer.c, src/eval.c, src/ex_cmds2.c, src/fileio.c,
13552 src/proto/window.pro, src/window.c
13553
13554Patch 7.3.552
13555Problem: Formatting inside comments does not use the "2" flag in
13556 'formatoptions'.
13557Solution: Support the "2" flag. (Tor Perkins)
13558Files: src/vim.h, src/ops.c, src/edit.c, src/misc1.c,
13559 src/testdir/test68.in, src/testdir/test68.ok
13560
13561Patch 7.3.553
13562Problem: With double-width characters and 'listchars' containing "precedes"
13563 the text is displayed one cell off.
13564Solution: Check for double-width character being overwritten by the
13565 "precedes" character. (Yasuhiro Matsumoto)
13566Files: src/screen.c
13567
13568Patch 7.3.554 (after 7.3.551)
13569Problem: Compiler warning for unused argument.
13570Solution: Add UNUSED.
13571Files: src/window.c
13572
13573Patch 7.3.555
13574Problem: Building on IBM z/OS fails.
13575Solution: Adjust configure. Use the QUOTESED value from config.mk instead of
13576 the hard coded one in Makefile. (Stephen Bovy)
13577Files: src/configure.in, src/auto/configure, src/Makefile
13578
13579Patch 7.3.556
13580Problem: Compiler warnings on 64 bit Windows.
13581Solution: Add type casts. (Mike Williams)
13582Files: src/misc1.c
13583
13584Patch 7.3.557
13585Problem: Crash when an autocommand wipes out a buffer when it is hidden.
13586Solution: Restore the current window when needed. (Christian Brabandt)
13587Files: src/buffer.c
13588
13589Patch 7.3.558
13590Problem: Memory access error. (Gary Johnson)
13591Solution: Allocate one more byte. (Dominique Pelle)
13592Files: src/misc1.c
13593
13594Patch 7.3.559
13595Problem: home_replace() does not work with 8.3 filename.
13596Solution: Make ":p" expand 8.3 name to full path. (Yasuhiro Matsumoto)
13597Files: src/eval.c, src/misc1.c
13598
13599Patch 7.3.560
13600Problem: Get an error for a locked argument in extend().
13601Solution: Initialize the lock flag for a dictionary. (Yukihiro Nakadaira)
13602Files: src/eval.c
13603
13604Patch 7.3.561
13605Problem: Using refresh: always in a complete function breaks the "."
13606 command. (Val Markovic)
13607Solution: Add match leader to the redo buffer. (Yasuhiro Matsumoto)
13608Files: src/edit.c
13609
13610Patch 7.3.562
13611Problem: ":profdel" should not work when the +profile feature is disabled.
13612Solution: Call ex_ni(). (Yasuhiro Matsumoto)
13613Files: src/ex_cmds2.c
13614
13615Patch 7.3.563 (after 7.3.557)
13616Problem: Can't build with tiny features.
13617Solution: Add #ifdef.
13618Files: src/buffer.c
13619
13620Patch 7.3.564 (after 7.3.559)
13621Problem: Warning for pointer conversion.
13622Solution: Add type cast.
13623Files: src/misc1.c
13624
13625Patch 7.3.565
13626Problem: Can't generate proto file for Python 3.
13627Solution: Add PYTHON3_CFLAGS to LINT_CFLAGS.
13628Files: src/Makefile
13629
13630Patch 7.3.566 (after 7.3.561)
13631Problem: Redo after completion does not work correctly when refresh: always
13632 is not used. (Raymond Ko)
13633Solution: Check the compl_opt_refresh_always flag. (Christian Brabandt)
13634Files: src/edit.c
13635
13636Patch 7.3.567
13637Problem: Missing copyright notice.
13638Solution: Add Vim copyright notice. (Taro Muraoka)
13639Files: src/dehqx.py
13640
13641Patch 7.3.568
13642Problem: Bad indents for #ifdefs.
13643Solution: Add and remove spaces. (Elias Diem)
13644Files: src/globals.h
13645
13646Patch 7.3.569
13647Problem: Evaluating Vim expression in Python is insufficient.
13648Solution: Add vim.bindeval(). Also add pyeval() and py3eval(). (ZyX)
13649Files: runtime/doc/eval.txt, runtime/doc/if_pyth.txt, src/eval.c,
13650 src/if_lua.c, src/if_py_both.h, src/if_python.c, src/if_python3.c,
13651 src/proto/eval.pro, src/proto/if_python.pro,
13652 src/proto/if_python3.pro, src/testdir/Make_amiga.mak,
13653 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
13654 src/testdir/Make_os2.mak, src/testdir/Makefile,
13655 src/testdir/test86.in, src/testdir/test86.ok,
13656 src/testdir/test87.in, src/testdir/test87.ok
13657
13658Patch 7.3.570
13659Problem: ":vimgrep" does not obey 'wildignore'.
13660Solution: Apply 'wildignore' and 'suffixes' to ":vimgrep". (Ingo Karkat)
13661Files: src/ex_cmds2.c, src/proto/ex_cmds2.pro, src/quickfix.c, src/spell.c
13662
13663Patch 7.3.571
13664Problem: Duplicated condition.
13665Solution: Remove one. (Dominique Pelle)
13666Files: src/os_win32.c
13667
13668Patch 7.3.572
13669Problem: Duplicate statement in if and else. (Dominique Pelle)
13670Solution: Remove the condition and add a TODO.
13671Files: src/gui_xmebw.c
13672
13673Patch 7.3.573
13674Problem: Using array index before bounds checking.
13675Solution: Swap the parts of the condition. (Dominique Pelle)
13676Files: src/ops.c
13677
13678Patch 7.3.574
13679Problem: When pasting a register in the search command line a CTRL-L
13680 character is not pasted. (Dominique Pelle)
13681Solution: Escape the CTRL-L. (Christian Brabandt)
13682Files: src/ex_getln.c
13683
13684Patch 7.3.575
13685Problem: "ygt" tries to yank instead of giving an error. (Daniel Mueller)
13686Solution: Check for a pending operator.
13687Files: src/normal.c
13688
13689Patch 7.3.576
13690Problem: Formatting of lists inside comments is not right yet.
13691Solution: Use another solution and add a test. (Tor Perkins)
13692Files: src/edit.c, src/misc1.c, src/testdir/test68.in,
13693 src/testdir/test69.ok
13694
13695Patch 7.3.577
13696Problem: Size of memory does not fit in 32 bit unsigned.
13697Solution: Use Kbyte instead of byte. Call GlobalMemoryStatusEx() instead of
13698 GlobalMemoryStatus() when available.
13699Files: src/misc2.c, src/option.c, src/os_amiga.c, src/os_msdos.c,
13700 src/os_win16.c, src/os_win32.c
13701
13702Patch 7.3.578
13703Problem: Misplaced declaration.
13704Solution: Move declaration to start of block.
13705Files: src/if_py_both.h
13706
13707Patch 7.3.579 (after 7.3.569)
13708Problem: Can't compile with Python 2.5.
13709Solution: Use PyCObject when Capsules are not available.
13710Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
13711
13712Patch 7.3.580
13713Problem: Warning on 64 bit MS-Windows.
13714Solution: Add type cast. (Mike Williams)
13715Files: src/if_py_both.h
13716
13717Patch 7.3.581
13718Problem: Problems compiling with Python.
13719Solution: Pick UCS2 or UCS4 function at runtime. (lilydjwg)
13720Files: src/if_python.c
13721
13722Patch 7.3.582 (after 7.3.576)
13723Problem: Missing parts of the test OK file.
13724Solution: Add the missing parts.
13725Files: src/testdir/test68.ok
13726
13727Patch 7.3.583
13728Problem: PyObject_NextNotImplemented is not defined before Python 2.7.
13729 (Danek Duvall)
13730Solution: Add #ifdefs.
13731Files: src/if_python.c
13732
13733Patch 7.3.584
13734Problem: PyCObject is not always defined.
13735Solution: Use PyObject instead.
13736Files: src/if_py_both.h, src/if_python.c
13737
13738Patch 7.3.585
13739Problem: Calling changed_bytes() too often.
13740Solution: Move changed_bytes() out of a loop. (Tor Perkins)
13741Files: src/edit.c
13742
13743Patch 7.3.586
13744Problem: When compiling with Cygwin or MingW MEMORYSTATUSEX is not defined.
13745Solution: Set the default for WINVER to 0x0500.
13746Files: src/Make_ming.mak, src/Make_cyg.mak
13747
13748Patch 7.3.587
13749Problem: Compiler warning for local var shadowing global var.
13750Solution: Rename the var and move it to an inner block. (Christian Brabandt)
13751Files: src/buffer.c
13752
13753Patch 7.3.588
13754Problem: Crash on NULL pointer.
13755Solution: Fix the immediate problem by checking for NULL. (Lech Lorens)
13756Files: src/window.c
13757
13758Patch 7.3.589
13759Problem: Crash when $HOME is not set.
13760Solution: Check for a NULL pointer. (Chris Webb)
13761Files: src/misc1.c
13762
13763Patch 7.3.590
13764Problem: The '< and '> marks cannot be set directly.
13765Solution: Allow setting '< and '>. (Christian Brabandt)
13766Files: src/mark.c
13767
13768Patch 7.3.591
13769Problem: Can only move to a tab by absolute number.
13770Solution: Move a number of tabs to the left or the right. (Lech Lorens)
13771Files: runtime/doc/tabpage.txt, src/ex_cmds.h, src/ex_docmd.c,
13772 src/testdir/test62.in, src/testdir/test62.ok, src/window.c
13773
13774Patch 7.3.592
13775Problem: Vim on GTK does not support g:browsefilter.
13776Solution: Add a GtkFileFilter to the file chooser. (Christian Brabandt)
13777Files: src/gui_gtk.c
13778
13779Patch 7.3.593
13780Problem: No easy way to decide if b:browsefilter will work.
13781Solution: Add the browsefilter feature.
13782Files: src/gui_gtk.c, src/eval.c, src/vim.h
13783
13784Patch 7.3.594
13785Problem: The X command server doesn't work perfectly. It sends an empty
13786 reply for as-keys requests.
13787Solution: Remove duplicate ga_init2(). Do not send a reply for as-keys
13788 requests. (Brian Burns)
13789Files: src/if_xcmdsrv.c
13790
13791Patch 7.3.595
13792Problem: The X command server responds slowly
13793Solution: Change the loop that waits for replies. (Brian Burns)
13794Files: src/if_xcmdsrv.c
13795
13796Patch 7.3.596
13797Problem: Can't remove all signs for a file or buffer.
13798Solution: Support "*" for the sign id. (Christian Brabandt)
13799Files: runtime/doc/sign.txt, src/buffer.c, src/ex_cmds.c,
13800 src/proto/buffer.pro
13801
13802Patch 7.3.597
13803Problem: 'clipboard' "autoselect" only applies to the * register. (Sergey
13804 Vakulenko)
Bram Moolenaardd007ed2013-07-09 15:44:17 +020013805Solution: Make 'autoselect' work for the + register. (Christian Brabandt)
Bram Moolenaar913df812013-07-06 15:44:11 +020013806 Add the "autoselectplus" option in 'clipboard' and the "P" flag in
13807 'guioptions'.
13808Files: runtime/doc/options.txt, src/normal.c, src/ops.c, src/screen.c,
13809 src/ui.c, src/globals.h, src/proto/ui.pro, src/option.h, src/gui.c
13810
13811Patch 7.3.598
13812Problem: Cannot act upon end of completion. (Taro Muraoka)
13813Solution: Add an autocommand event that is triggered when completion has
13814 finished. (Idea by Florian Klein)
13815Files: src/edit.c, src/fileio.c, src/vim.h
13816
13817Patch 7.3.599 (after 7.3.597)
13818Problem: Missing change in one file.
13819Solution: Patch for changed clip_autoselect().
13820Files: src/option.c
13821
13822Patch 7.3.600
13823Problem: <f-args> is not expanded properly with DBCS encoding.
13824Solution: Skip over character instead of byte. (Yukihiro Nakadaira)
13825Files: src/ex_docmd.c
13826
13827Patch 7.3.601
13828Problem: Bad code style.
13829Solution: Insert space, remove parens.
13830Files: src/farsi.c
13831
13832Patch 7.3.602
13833Problem: Missing files in distribution.
13834Solution: Update the list of files.
13835Files: Filelist
13836
13837Patch 7.3.603
13838Problem: It is possible to add replace builtin functions by calling
13839 extend() on g:.
13840Solution: Add a flag to a dict to indicate it is a scope. Check for
13841 existing functions. (ZyX)
13842Files: src/buffer.c, src/eval.c, src/proto/eval.pro, src/structs.h,
13843 src/testdir/test34.in, src/testdir/test34.ok, src/window.c
13844
13845Patch 7.3.604
13846Problem: inputdialog() doesn't use the cancel argument in the console.
13847 (David Fishburn)
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020013848Solution: Use the third argument. (Christian Brabandt)
Bram Moolenaar913df812013-07-06 15:44:11 +020013849Files: src/eval.c
13850
13851Patch 7.3.605 (after 7.3.577)
13852Problem: MS-Windows: Can't compile with older compilers. (Titov Anatoly)
13853Solution: Add #ifdef for MEMORYSTATUSEX.
13854Files: src/os_win32.c
13855
13856Patch 7.3.606
Bram Moolenaar207f0092020-08-30 17:20:20 +020013857Problem: CTRL-P completion has a problem with multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020013858Solution: Check for next character being NUL properly. (Yasuhiro Matsumoto)
13859Files: src/search.c, src/macros.h
13860
13861Patch 7.3.607
13862Problem: With an 8 color terminal the selected menu item is black on black,
13863 because darkGrey as bg is the same as black.
13864Solution: Swap fg and bg colors. (James McCoy)
13865Files: src/syntax.c
13866
13867Patch 7.3.608
13868Problem: winrestview() does not always restore the view correctly.
13869Solution: Call win_new_height() and win_new_width(). (Lech Lorens)
13870Files: src/eval.c, src/proto/window.pro, src/window.c
13871
13872Patch 7.3.609
13873Problem: File names in :checkpath! output are garbled.
13874Solution: Check for \zs in the pattern. (Lech Lorens)
13875Files: src/search.c, src/testdir/test17.in, src/testdir/test17.ok
13876
13877Patch 7.3.610
13878Problem: Cannot operate on the text that a search pattern matches.
13879Solution: Add the "gn" and "gN" commands. (Christian Brabandt)
13880Files: runtime/doc/index.txt, runtime/doc/visual.txt, src/normal.c,
13881 src/proto/search.pro, src/search.c, src/testdir/test53.in,
13882 src/testdir/test53.ok
13883
13884Patch 7.3.611
13885Problem: Can't use Vim dictionary as self argument in Python.
13886Solution: Fix the check for the "self" argument. (ZyX)
13887Files: src/if_py_both.h
13888
13889Patch 7.3.612
13890Problem: Auto formatting messes up text when 'fo' contains "2". (ZyX)
13891Solution: Decrement "less_cols". (Tor Perkins)
13892Files: src/misc1.c, src/testdir/test68.in, src/testdir/test68.ok
13893
13894Patch 7.3.613
13895Problem: Including Python's config.c in the build causes trouble. It is
13896 not clear why it was there.
13897Solution: Omit the config file. (James McCoy)
13898Files: src/Makefile, src/auto/configure, src/configure.in
13899
13900Patch 7.3.614
13901Problem: Number argument gets turned into a number while it should be a
13902 string.
13903Solution: Add flag to the call_vim_function() call. (Yasuhiro Matsumoto)
13904Files: src/edit.c, src/eval.c, src/proto/eval.pro
13905
13906Patch 7.3.615
13907Problem: Completion for a user command does not recognize backslash before
13908 a space.
13909Solution: Recognize escaped characters. (Yasuhiro Matsumoto)
13910Files: src/ex_docmd.c
13911
13912Patch 7.3.616 (after 7.3.610)
13913Problem: Can't compile without +visual.
13914Solution: Add #ifdef.
13915Files: src/normal.c
13916
13917Patch 7.3.617 (after 7.3.615)
13918Problem: Hang on completion.
13919Solution: Skip over the space. (Yasuhiro Matsumoto)
13920Files: src/ex_docmd.c
13921
13922Patch 7.3.618 (after 7.3.616)
13923Problem: Still doesn't compile with small features.
13924Solution: Move current_search() out of #ifdef. (Dominique Pelle)
13925Files: src/normal.c, src/search.c
13926
13927Patch 7.3.619
13928Problem: When executing a shell command Vim may become slow to respond.
13929Solution: Don't wait after every processed message. (idea by Yasuhiro
13930 Matsumoto)
13931Files: src/os_win32.c
13932
13933Patch 7.3.620
13934Problem: Building with recent Ruby on Win32 doesn't work.
13935Solution: Add a separate argument for the API version. (Yasuhiro Matsumoto)
13936Files: src/Make_ming.mak, src/Make_mvc.mak
13937
13938Patch 7.3.621
13939Problem: Compiler warnings on 64 bit windows.
13940Solution: Add type casts. (Mike Williams)
13941Files: src/ex_docmd.c, src/search.c
13942
13943Patch 7.3.622
13944Problem: XPM library for Win32 can't be found.
13945Solution: Suggest using the one from the Vim ftp site.
13946Files: src/Make_mvc.mak
13947
13948Patch 7.3.623
13949Problem: Perl 5.14 commands crash Vim on MS-Windows.
13950Solution: Use perl_get_sv() instead of GvSV(). (Raymond Ko)
13951Files: src/if_perl.xs
13952
13953Patch 7.3.624
13954Problem: When cancelling input() it returns the third argument. That should
13955 only happen for inputdialog().
13956Solution: Check if inputdialog() was used. (Hirohito Higashi)
13957Files: src/eval.c
13958
13959Patch 7.3.625
13960Problem: "gn" does not handle zero-width matches correctly.
13961Solution: Handle zero-width patterns specially. (Christian Brabandt)
13962Files: src/search.c
13963
13964Patch 7.3.626
13965Problem: Python interface doesn't build with Python 2.4 or older.
13966Solution: Define Py_ssize_t. (Benjamin Bannier)
13967Files: src/if_py_both.h
13968
13969Patch 7.3.627
13970Problem: When using the "n" flag with the ":s" command a \= substitution
13971 will not be evaluated.
13972Solution: Do perform the evaluation, so that a function can be invoked at
13973 every matching position without changing the text. (Christian
13974 Brabandt)
13975Files: src/ex_cmds.c
13976
13977Patch 7.3.628
13978Problem: ":open" does not allow for a !, which results in a confusing error
13979 message. (Shawn Wilson)
13980Solution: Allow ! on ":open". (Christian Brabandt)
13981Files: src/ex_cmds.h
13982
13983Patch 7.3.629
13984Problem: There is no way to make 'shiftwidth' follow 'tabstop'.
13985Solution: When 'shiftwidth' is zero use the value of 'tabstop'. (Christian
13986 Brabandt)
13987Files: src/edit.c, src/ex_getln.c, src/fold.c, src/misc1.c, src/ops.c,
13988 src/option.c, src/proto/option.pro
13989
13990Patch 7.3.630
13991Problem: "|" does not behave correctly when 'virtualedit' is set.
13992Solution: Call validate_virtcol(). (David Bürgin)
13993Files: src/normal.c
13994
13995Patch 7.3.631
13996Problem: Cannot complete user names.
13997Solution: Add user name completion. (Dominique Pelle)
13998Files: runtime/doc/map.txt, src/auto/configure, src/config.h.in,
13999 src/configure.in, src/ex_docmd.c, src/ex_getln.c, src/misc1.c,
14000 src/misc2.c, src/proto/misc1.pro, src/vim.h
14001
14002Patch 7.3.632
14003Problem: Cannot select beyond 222 columns with the mouse in xterm.
14004Solution: Add support for SGR mouse tracking. (Hayaki Saito)
14005Files: runtime/doc/options.txt, src/feature.h, src/keymap.h, src/misc2.c,
14006 src/option.h, src/os_unix.c, src/term.c, src/version.c
14007
14008Patch 7.3.633
14009Problem: Selection remains displayed as selected after selecting another
14010 text.
14011Solution: Call xterm_update() before select(). (Andrew Pimlott)
14012Files: src/os_unix.c
14013
14014Patch 7.3.634
14015Problem: Month/Day format for undo is confusing. (Marcin Szamotulski)
14016Solution: Always use Year/Month/Day, should work for everybody.
14017Files: src/undo.c
14018
14019Patch 7.3.635
14020Problem: Issue 21: System call during startup sets 'lines' to a wrong
14021 value. (Karl Yngve)
14022Solution: Don't set the shell size while the GUI is still starting up.
14023 (Christian Brabandt)
14024Files: src/ui.c
14025
14026Patch 7.3.636 (after 7.3.625)
14027Problem: Not all zero-width matches handled correctly for "gn".
14028Solution: Move zero-width detection to a separate function. (Christian
14029 Brabandt)
14030Files: src/search.c
14031
14032Patch 7.3.637
14033Problem: Cannot catch the error caused by a foldopen when there is no fold.
14034 (ZyX, Issue 48)
14035Solution: Do not break out of the loop early when inside try/catch.
14036 (Christian Brabandt) Except when there is a syntax error.
14037Files: src/ex_docmd.c, src/globals.h
14038
14039Patch 7.3.638
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014040Problem: Unnecessary redraw of the previous character.
Bram Moolenaar913df812013-07-06 15:44:11 +020014041Solution: Check if the character is double-width. (Jon Long)
14042Files: src/screen.c
14043
14044Patch 7.3.639
14045Problem: It's not easy to build Vim on Windows with XPM support.
14046Solution: Include the required files, they are quite small. Update the
14047 MSVC makefile to use them. Binary files are in the next patch.
14048 (Sergey Khorev)
14049Files: src/xpm/COPYRIGHT, src/xpm/README.txt, src/xpm/include/simx.h,
14050 src/xpm/include/xpm.h, src/Make_mvc.mak, src/bigvim.bat,
14051 src/bigvim64.bat, Filelist
14052
14053Patch 7.3.640
14054Problem: It's not easy to build Vim on Windows with XPM support.
14055Solution: Binary files for 7.3.639. (Sergey Khorev)
14056Files: src/xpm/x64/lib/libXpm.lib, src/xpm/x86/lib/libXpm.a,
14057 src/xpm/x86/lib/libXpm.lib
14058
14059Patch 7.3.641
14060Problem: ":mkview" uses ":normal" instead of ":normal!" for folds. (Dan)
14061Solution: Add the bang. (Christian Brabandt)
14062Files: src/fold.c
14063
14064Patch 7.3.642
14065Problem: Segfault with specific autocommands. Was OK after 7.3.449 and
14066 before 7.3.545. (Richard Brown)
14067Solution: Pass TRUE for abort_if_last in the call to close_buffer().
14068 (Christian Brabandt)
14069Files: src/window.c
14070
14071Patch 7.3.643 (after 7.3.635)
14072Problem: MS-Windows: When starting gvim maximized 'lines' and 'columns' are
14073 wrong. (Christian Robinson)
14074Solution: Move the check for gui.starting from ui_get_shellsize() to
14075 check_shellsize().
14076Files: src/ui.c, src/term.c
14077
14078Patch 7.3.644
14079Problem: Dead code for BeOS GUI.
14080Solution: Remove unused __BEOS__ stuff.
14081Files: src/gui.c
14082
14083Patch 7.3.645
14084Problem: No tests for patch 7.3.625 and 7.3.637.
14085Solution: Add more tests for the "gn" command and try/catch. (Christian
14086 Brabandt)
14087Files: src/testdir/test53.in, src/testdir/test53.ok,
14088 src/testdir/test55.in, src/testdir/test55.ok
14089
14090Patch 7.3.646
14091Problem: When reloading a buffer the undo file becomes unusable unless ":w"
14092 is executed. (Dmitri Frank)
14093Solution: After reloading the buffer write the undo file. (Christian
14094 Brabandt)
14095Files: src/fileio.c
14096
14097Patch 7.3.647
14098Problem: "gnd" doesn't work correctly in Visual mode.
14099Solution: Handle Visual mode differently in "gn". (Christian Brabandt)
14100Files: src/search.c, src/testdir/test53.in, src/testdir/test53.ok
14101
14102Patch 7.3.648
14103Problem: Crash when using a very long file name. (ZyX)
14104Solution: Properly check length of buffer space.
14105Files: src/buffer.c
14106
14107Patch 7.3.649
14108Problem: When 'clipboard' is set to "unnamed" small deletes end up in the
14109 numbered registers. (Ingo Karkat)
14110Solution: Use the original register name to decide whether to put a delete
14111 in a numbered register. (Christian Brabandt)
14112Files: src/ops.c
14113
14114Patch 7.3.650
14115Problem: Completion after ":help \{-" gives an error message and messes up
14116 the command line.
14117Solution: Cancel the tag search if the pattern can't be compiled. (Yasuhiro
14118 Matsumoto)
14119Files: src/tag.c
14120
14121Patch 7.3.651
14122Problem: Completion after ":help \{-" gives an error message.
14123Solution: Prepend a backslash.
14124Files: src/ex_cmds.c
14125
14126Patch 7.3.652
14127Problem: Workaround for Python crash isn't perfect.
14128Solution: Change the type of the length argument. (Sean Estabrooks)
14129Files: src/if_py_both.h
14130
14131Patch 7.3.653
14132Problem: MingW needs build rule for included XPM files. Object directory
14133 for 32 and 64 builds is the same, also for MSVC.
14134Solution: Add MingW build rule to use included XPM files. Add the CPU or
14135 architecture to the object directory name. (Sergey Khorev)
14136Files: src/Make_ming.mak, src/Make_mvc.mak, src/xpm/README.txt
14137
14138Patch 7.3.654
14139Problem: When creating a Vim dictionary from Python objects an empty key
14140 might be used.
14141Solution: Do not use empty keys, throw an IndexError. (ZyX)
14142Files: src/if_py_both.h
14143
14144Patch 7.3.655
14145Problem: 64 bit MingW xpm .a file is missing.
14146Solution: Add the file. (Sergey Khorev)
14147Files: src/xpm/x64/lib/libXpm.a
14148
14149Patch 7.3.656
14150Problem: Internal error in :pyeval.
14151Solution: Handle failed object conversion. (ZyX)
14152Files: src/if_python.c, src/if_python3.c
14153
14154Patch 7.3.657
14155Problem: Python bindings silently truncate string values containing NUL.
14156Solution: Fail when a string contains NUL. (ZyX)
14157Files: src/if_python.c, src/if_python3.c
14158
14159Patch 7.3.658
14160Problem: NUL bytes truncate strings when converted from Python.
14161Solution: Handle truncation as an error. (ZyX)
14162Files: src/if_py_both.h, src/if_python3.c
14163
14164Patch 7.3.659
14165Problem: Recent Python changes are not tested.
14166Solution: Add tests for Python bindings. (ZyX)
14167Files: src/testdir/test86.in, src/testdir/test86.ok,
14168 src/testdir/test87.in, src/testdir/test87.ok
14169
14170Patch 7.3.660
14171Problem: ":help !" jumps to help for ":!".
14172Solution: Adjust check for tag header line. (Andy Wokula)
14173Files: src/tag.c
14174
14175Patch 7.3.661 (after 7.3.652)
14176Problem: SEGV in Python code.
14177Solution: Initialize len to zero. Use the right function depending on
14178 version. (Maxim Philippov)
14179Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
14180
14181Patch 7.3.662
14182Problem: Can't build Ruby interface with Ruby 1.9.3.
14183Solution: Add missing functions. (V. Ondruch)
14184Files: src/if_ruby.c
14185
14186Patch 7.3.663
14187Problem: End of color scheme name not clear in E185. (Aaron Lewis)
14188Solution: Put the name in single quotes.
14189Files: src/ex_docmd.c
14190
14191Patch 7.3.664
14192Problem: Buffer overflow in unescaping text. (Raymond Ko)
Bram Moolenaar207f0092020-08-30 17:20:20 +020014193Solution: Limit check for multibyte character to 4 bytes.
Bram Moolenaar913df812013-07-06 15:44:11 +020014194Files: src/mbyte.c
14195
14196Patch 7.3.665
14197Problem: MSVC 11 is not supported. (Raymond Ko)
14198Solution: Recognize MSVC 11. (Gary Willoughby)
14199Files: src/Make_mvc.mak
14200
14201Patch 7.3.666
14202Problem: With MSVC 11 Win32.mak is not found.
14203Solution: Add the SDK_INCLUDE_DIR variable. (Raymond Ko)
14204Files: src/Make_mvc.mak
14205
14206Patch 7.3.667
14207Problem: Unused variables in Perl interface.
14208Solution: Adjust #ifdefs.
14209Files: src/if_perl.xs
14210
14211Patch 7.3.668
14212Problem: Building with Perl loaded dynamically still uses static library.
14213Solution: Adjust use of PL_thr_key. (Ken Takata)
14214Files: src/if_perl.xs
14215
14216Patch 7.3.669
14217Problem: When building with Cygwin loading Python dynamically fails.
14218Solution: Use DLLLIBRARY instead of INSTSONAME. (Ken Takata)
14219Files: src/configure.in, src/auto/configure
14220
14221Patch 7.3.670
14222Problem: Python: memory leaks when there are exceptions.
14223Solution: Add DICTKEY_UNREF in the right places. (ZyX)
14224Files: src/if_py_both.h
14225
14226Patch 7.3.671
14227Problem: More Python code can be shared between Python 2 and 3.
14228Solution: Move code to if_py_both.h. (ZyX)
14229Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
14230
14231Patch 7.3.672
14232Problem: Not possible to lock/unlock lists in Python interface.
14233Solution: Add .locked and .scope attributes. (ZyX)
14234Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python.c,
14235 src/if_python3.c, src/testdir/test86.in, src/testdir/test86.ok,
14236 src/testdir/test87.in, src/testdir/test87.ok
14237
14238Patch 7.3.673
14239Problem: Using "gN" while 'selection' is "exclusive" misses one character.
14240 (Ben Fritz)
14241Solution: Check the direction when compensating for exclusive selection.
14242 (Christian Brabandt)
14243Files: src/search.c
14244
14245Patch 7.3.674
14246Problem: Can't compile with Lua/dyn on Cygwin.
14247Solution: Adjust configure to use the right library name. (Ken Takata)
14248Files: src/configure.in, src/auto/configure
14249
14250Patch 7.3.675
14251Problem: Using uninitialized memory with very long file name.
14252Solution: Put NUL after text when it is truncated. (ZyX)
14253Files: src/buffer.c
14254
14255Patch 7.3.676
14256Problem: Ruby compilation on Windows 32 bit doesn't work.
14257Solution: Only use some functions for 64 bit. (Ken Takata)
14258Files: src/if_ruby.c
14259
14260Patch 7.3.677
14261Problem: buf_spname() is used inconsistently.
14262Solution: Make the return type a char_u pointer. Check the size of the
14263 returned string.
14264Files: src/buffer.c, src/proto/buffer.pro, src/ex_cmds2.c,
14265 src/ex_docmd.c, src/memline.c, src/screen.c
14266
14267Patch 7.3.678
14268Problem: Ruby .so name may not be correct.
14269Solution: Use the LIBRUBY_SO entry from the config. (Vit Ondruch)
14270Files: src/configure.in, src/auto/configure
14271
14272Patch 7.3.679
14273Problem: Ruby detection uses Config, newer Ruby versions use RbConfig.
14274Solution: Detect the need to use RbConfig. (Vit Ondruch)
14275Files: src/configure.in, src/auto/configure
14276
14277Patch 7.3.680
14278Problem: Some files missing in the list of distributed files.
14279Solution: Add lines for new files.
14280Files: Filelist
14281
14282Patch 7.3.681 (after 7.3.680)
14283Problem: List of distributed files picks up backup files.
14284Solution: Make tutor patterns more specific.
14285Files: Filelist
14286
14287Patch 7.3.682 (after 7.3.677)
14288Problem: Compiler complains about incompatible types.
14289Solution: Remove type casts. (hint by Danek Duvall)
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020014290Files: src/edit.c
Bram Moolenaar913df812013-07-06 15:44:11 +020014291
14292Patch 7.3.683
14293Problem: ":python" may crash when vimbindeval() returns None.
14294Solution: Check for v_string to be NULL. (Yukihiro Nakadaira)
14295Files: src/if_py_both.h
14296
14297Patch 7.3.684
14298Problem: "make test" does not delete lua.vim.
14299Solution: Add lua.vim to the clean target. (Simon Ruderich)
14300Files: src/testdir/Makefile, src/testdir/Make_dos.mak,
14301 src/testdir/Make_ming.mak, src/testdir/Make_vms.mms
14302
14303Patch 7.3.685
14304Problem: No test for what patch 7.3.673 fixes.
14305Solution: Add a test. (Christian Brabandt)
14306Files: src/testdir/test53.in, src/testdir/test53.ok
14307
14308Patch 7.3.686
14309Problem: Using CTRL-\ e mappings is useful also when entering an
14310 expression, but it doesn't work. (Marcin Szamotulski)
14311Solution: Allow using CTRL-\ e when entering an expression if it was not
14312 typed.
14313Files: src/ex_getln.c
14314
14315Patch 7.3.687
14316Problem: Test 16 fails when $DISPLAY is not set.
14317Solution: Skip the test when $DISPLAY is not set.
14318Files: src/testdir/test16.in
14319
14320Patch 7.3.688
14321Problem: Python 3.3 is not supported.
14322Solution: Add Python 3.3 support (Ken Takata)
14323Files: src/if_python3.c
14324
14325Patch 7.3.689
14326Problem: MzScheme and Lua may use a NULL string.
14327Solution: Use an empty string instead of NULL. (Yukihiro Nakadaira)
14328Files: src/if_lua.c, src/if_mzsch.c
14329
14330Patch 7.3.690
14331Problem: When the current directory name is exactly the maximum path length
14332 Vim may crash.
14333Solution: Only add "/" when there is room. (Danek Duvall)
14334Files: src/os_unix.c
14335
14336Patch 7.3.691
14337Problem: State specific to the Python thread is discarded.
14338Solution: Keep state between threads. (Paul)
14339Files: src/if_python.c
14340
14341Patch 7.3.692
14342Problem: Can't build GTK version with GTK 2.0.
14343Solution: Put GtkFileFilter declaration in the right place. (Yegappan
14344 Lakshmanan)
14345Files: src/gui_gtk.c
14346
14347Patch 7.3.693
14348Problem: Can't make 'softtabstop' follow 'shiftwidth'.
14349Solution: When 'softtabstop' is negative use the value of 'shiftwidth'.
14350 (so8res)
14351Files: src/edit.c, src/option.c, src/proto/option.pro
14352
14353Patch 7.3.694
14354Problem: Now that 'shiftwidth' may use the value of 'tabstop' it is not so
14355 easy to use in indent files.
14356Solution: Add the shiftwidth() function. (so8res)
14357Files: runtime/doc/eval.txt, src/eval.c
14358
14359Patch 7.3.695
Bram Moolenaar207f0092020-08-30 17:20:20 +020014360Problem: Balloon cannot show multibyte text.
14361Solution: Properly deal with multibyte characters. (Dominique Pelle)
Bram Moolenaar913df812013-07-06 15:44:11 +020014362Files: src/gui_beval.c, src/ui.c
14363
14364Patch 7.3.696
14365Problem: Message about added spell language can be wrong.
14366Solution: Give correct message. Add g:menutrans_set_lang_to to allow for
14367 translation. (Jiri Sedlak)
14368Files: runtime/menu.vim
14369
14370Patch 7.3.697
14371Problem: Leaking resources when setting GUI font.
14372Solution: Free the font. (Ken Takata)
14373Files: src/syntax.c
14374
14375Patch 7.3.698
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014376Problem: Python 3 does not preserve state between commands.
Bram Moolenaar913df812013-07-06 15:44:11 +020014377Solution: Preserve the state. (Paul Ollis)
14378Files: src/if_python.c, src/if_python3.c
14379
14380Patch 7.3.699
14381Problem: When 'ttymouse' is set to "sgr" manually, it is overruled by
14382 automatic detection.
14383Solution: Do not use automatic detection when 'ttymouse' was set manually.
14384 (Hayaki Saito)
14385Files: src/term.c
14386
14387Patch 7.3.700
14388Problem: Cannot detect URXVT and SGR mouse support.
14389Solution: add +mouse_urxvt and +mouse_sgr. (Hayaki Saito)
14390Files: src/feature.h, src/eval.c
14391
14392Patch 7.3.701
14393Problem: MS-Windows: Crash with stack overflow when setting 'encoding'.
14394Solution: Handle that loading the iconv library may be called recursively.
14395 (Jiri Sedlak)
14396Files: src/os_win32.c
14397
14398Patch 7.3.702
14399Problem: Nmake from VS6 service pack 6 is not recognized.
14400Solution: Detect the version number. (Jiri Sedlak)
14401Files: src/Make_mvc.mak
14402
14403Patch 7.3.703
14404Problem: When 'undofile' is reset the hash is computed unnecessarily.
14405Solution: Only compute the hash when the option was set. (Christian Brabandt)
14406Files: src/option.c
14407
14408Patch 7.3.704
14409Problem: Repeating "cgn" does not always work correctly.
14410Solution: Also fetch the operator character. (Christian Brabandt)
14411Files: src/normal.c
14412
14413Patch 7.3.705
14414Problem: Mouse features are not sorted properly. (Tony Mechelynck)
14415Solution: Put the mouse features in alphabetical order.
14416Files: src/version.c
14417
14418Patch 7.3.706 (after 7.3.697)
14419Problem: Can't build Motif version.
14420Solution: Fix wrongly named variable. (Ike Devolder)
14421Files: src/syntax.c
14422
14423Patch 7.3.707 (after 7.3.701)
14424Problem: Problems loading a library for a file name with non-latin
14425 characters.
14426Solution: Use wide system functions when possible. (Ken Takata)
14427Files: src/os_win32.c, src/os_win32.h
14428
14429Patch 7.3.708
14430Problem: Filler lines above the first line may be hidden when opening Vim.
14431Solution: Change how topfill is computed. (Christian Brabandt)
14432Files: src/diff.c, src/testdir/test47.in, src/testdir/test47.ok
14433
14434Patch 7.3.709
14435Problem: Compiler warning for unused argument.
14436Solution: Add UNUSED.
14437Files: src/eval.c
14438
14439Patch 7.3.710 (after 7.3.704)
14440Problem: Patch 7.3.704 breaks "fn".
14441Solution: Add check for ca.cmdchar. (Christian Brabandt)
14442Files: src/normal.c
14443
14444Patch 7.3.711 (after 7.3.688)
14445Problem: vim.current.buffer is not available. (lilydjwg)
14446Solution: Use py3_PyUnicode_AsUTF8 instead of py3_PyUnicode_AsUTF8String.
14447 (Ken Takata)
14448Files: src/if_python3.c
14449
14450Patch 7.3.712
14451Problem: Nmake from VS2010 SP1 is not recognized.
14452Solution: Add the version number. (Ken Takata)
14453Files: src/Make_mvc.mak
14454
14455Patch 7.3.713
14456Problem: printf() can only align to bytes, not characters.
14457Solution: Add the "S" item. (Christian Brabandt)
14458Files: runtime/doc/eval.txt, src/message.c
14459
14460Patch 7.3.714
14461Problem: Inconsistency: :set can be used in the sandbox, but :setlocal and
14462 :setglobal cannot. (Michael Henry)
14463Solution: Fix the flags for :setlocal and :setglobal. (Christian Brabandt)
14464Files: src/ex_cmds.h
14465
14466Patch 7.3.715
14467Problem: Crash when calling setloclist() in BufUnload autocmd. (Marcin
14468 Szamotulski)
14469Solution: Set w_llist to NULL when it was freed. Also add a test.
14470 (Christian Brabandt)
14471Files: src/quickfix.c, src/testdir/test49.ok, src/testdir/test49.vim
14472
14473Patch 7.3.716
14474Problem: Error on exit when using Python 3.
14475Solution: Remove PythonIO_Fini(). (Roland Puntaier)
14476Files: src/if_python3.c
14477
14478Patch 7.3.717
14479Problem: When changing the font size, only MS-Windows limits the window
14480 size.
14481Solution: Also limit the window size on other systems. (Roland Puntaier)
14482Files: src/gui.c
14483
14484Patch 7.3.718
14485Problem: When re-using the current buffer the buffer-local options stay.
14486Solution: Re-initialize the buffer-local options. (Christian Brabandt)
14487Files: src/buffer.c
14488
14489Patch 7.3.719
14490Problem: Cannot run new version of cproto, it fails on missing include
14491 files.
14492Solution: Add lots of #ifndef PROTO
14493Files: src/os_amiga.c, src/os_amiga.h, src/gui_w16.c, src/gui_w48.c,
14494 src/gui_w32.c, src/vimio.h, src/os_msdos.c, src/os_msdos.h,
14495 src/os_win16.h, src/os_win16.c, src/os_win32.h, src/os_win32.c,
14496 src/os_mswin.c, src/gui_photon.c, src/os_unix.h, src/os_beos.c,
14497 src/os_beos.h
14498
14499Patch 7.3.720
14500Problem: Proto files are outdated.
14501Solution: Update the newly generated proto files.
14502Files: src/proto/digraph.pro, src/proto/fold.pro, src/proto/misc1.pro,
14503 src/proto/move.pro, src/proto/screen.pro, src/proto/search.pro,
14504 src/proto/os_win32.pro, src/proto/os_mswin.pro,
14505 src/proto/os_beos.pro
14506
14507Patch 7.3.721
14508Problem: Ruby interface defines local functions globally.
14509Solution: Make the functions static.
14510Files: src/if_ruby.c
14511
14512Patch 7.3.722
14513Problem: Perl flags may contain "-g", which breaks "make proto".
14514Solution: Filter out the "-g" flag for cproto. (Ken Takata)
14515Files: src/Makefile
14516
14517Patch 7.3.723
14518Problem: Various tiny problems.
14519Solution: Various tiny fixes.
14520Files: src/gui_mac.c, src/xpm_w32.c, src/netbeans.c, src/sha256.c,
14521 src/if_sniff.c, README.txt
14522
14523Patch 7.3.724
14524Problem: Building with Ruby and Tcl on MS-Windows 64 bit does not work.
14525Solution: Remove Ruby and Tcl from the big MS-Windows build.
14526Files: src/bigvim64.bat
14527
14528Patch 7.3.725
14529Problem: :aboveleft and :belowright have no effect on :copen.
14530Solution: Check for cmdmod.split. (Christian Brabandt)
14531Files: src/quickfix.c
14532
14533Patch 7.3.726
14534Problem: Typos and duplicate info in README.
14535Solution: Fix the text.
14536Files: README.txt
14537
14538Patch 7.3.727
14539Problem: Can't always find Win32.mak when building GvimExt.
14540Solution: Use same mechanism as in Make_mvc.mak. (Cade Foster)
14541Files: src/GvimExt/Makefile
14542
14543Patch 7.3.728
14544Problem: Cannot compile with MzScheme interface on Ubuntu 12.10.
14545Solution: Find the collects directory under /usr/share.
14546Files: src/configure.in, src/auto/configure
14547
14548Patch 7.3.729
14549Problem: Building with Ruby fails on some systems.
14550Solution: Remove "static" and add #ifndef PROTO. (Ken Takata)
14551Files: src/if_ruby.c
14552
14553Patch 7.3.730
14554Problem: Crash in PHP file when using syntastic. (Ike Devolder)
14555Solution: Avoid using NULL pointer. (Christian Brabandt)
14556Files: src/quickfix.c
14557
14558Patch 7.3.731
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014559Problem: Py3Init_vim() is exported unnecessarily.
Bram Moolenaar913df812013-07-06 15:44:11 +020014560Solution: Make it static. (Ken Takata)
14561Files: src/if_python3.c
14562
14563Patch 7.3.732
14564Problem: Compiler warnings for function arguments.
14565Solution: Use inteptr_t instead of long.
14566Files: src/if_mzsch.c, src/main.c
14567
14568Patch 7.3.733
14569Problem: Tests fail when including MzScheme.
14570Solution: Change #ifdefs for vim_main2().
14571Files: src/main.c
14572
14573Patch 7.3.734
14574Problem: Cannot put help files in a sub-directory.
14575Solution: Make :helptags work for sub-directories. (Charles Campbell)
14576Files: src/ex_cmds.c
14577
14578Patch 7.3.735
14579Problem: Cannot build Ruby 1.9 with MingW or Cygwin.
14580Solution: Add another include directory. (Ken Takata)
14581Files: src/Make_cyg.mak, src/Make_ming.mak
14582
14583Patch 7.3.736
14584Problem: File name completion in input() escapes white space. (Frederic
14585 Hardy)
14586Solution: Do not escape white space. (Christian Brabandt)
14587Files: src/ex_getln.c
14588
14589Patch 7.3.737
14590Problem: When using do_cmdline() recursively did_endif is not reset,
14591 causing messages to be overwritten.
14592Solution: Reset did_endif. (Christian Brabandt)
14593Files: src/ex_docmd.c
14594
14595Patch 7.3.738 (after 7.3.730)
14596Problem: Unused function argument.
14597Solution: Remove it. (Christian Brabandt)
14598Files: src/quickfix.c
14599
14600Patch 7.3.739
14601Problem: Computing number of lines may have an integer overflow.
14602Solution: Check for MAXCOL explicitly. (Dominique Pelle)
14603Files: src/move.c
14604
14605Patch 7.3.740
14606Problem: IOC tool complains about undefined behavior for int.
14607Solution: Change to unsigned int. (Dominique Pelle)
14608Files: src/hashtab.c, src/misc2.c
14609
14610Patch 7.3.741 (after 7.3.737)
14611Problem: Tiny build fails.
14612Solution: Move #ifdef. (Ike Devolder)
14613Files: src/ex_docmd.c
14614
14615Patch 7.3.742
14616Problem: Leaking memory when :vimgrep restores the directory.
14617Solution: Free the allocated memory. (Christian Brabandt)
14618Files: src/quickfix.c
14619
14620Patch 7.3.743 (after 7.3.741)
14621Problem: Tiny build still fails.
14622Solution: Add #else in the right place.
14623Files: src/ex_docmd.c
14624
14625Patch 7.3.744
14626Problem: 64 bit compiler warning.
14627Solution: Add type cast. (Mike Williams)
14628Files: src/ex_cmds.c
14629
14630Patch 7.3.745
14631Problem: Automatically setting 'ttymouse' doesn't work.
14632Solution: Reset the "option was set" flag when using the default.
14633Files: src/option.c, src/proto/option.pro, src/term.c
14634
14635Patch 7.3.746
14636Problem: Memory leaks when using location lists.
14637Solution: Set qf_title to something. (Christian Brabandt)
14638Files: src/eval.c, src/quickfix.c
14639
14640Patch 7.3.747
14641Problem: When characters are concealed text aligned with tabs are no longer
14642 aligned, e.g. at ":help :index".
14643Solution: Compensate space for tabs for concealed characters. (Dominique
14644 Pelle)
14645Files: src/screen.c
14646
14647Patch 7.3.748
14648Problem: Cannot properly test conceal mode.
14649Solution: Add the screencol() and screenrow() functions. Use them in
14650 test88. (Simon Ruderich)
14651Files: runtime/doc/eval.txt, src/eval.c, src/proto/screen.pro,
14652 src/screen.c, src/testdir/Make_amiga.mak,
14653 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
14654 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
14655 src/testdir/Makefile, src/testdir/test88.in,
14656 src/testdir/test88.ok,
14657
14658Patch 7.3.749
Bram Moolenaar207f0092020-08-30 17:20:20 +020014659Problem: Python interface doesn't build without the multibyte feature.
Bram Moolenaar913df812013-07-06 15:44:11 +020014660Solution: Add #ifdef. (Ken Takata)
14661Files: src/if_py_both.h
14662
14663Patch 7.3.750
14664Problem: The justify macro does not always work correctly.
14665Solution: Fix off-by-one error (James McCoy)
14666Files: runtime/macros/justify.vim
14667
14668Patch 7.3.751
14669Problem: Test 61 is flaky, it fails once in a while.
14670Solution: When it fails retry once.
14671Files: src/testdir/Makefile
14672
14673Patch 7.3.752
14674Problem: Test 49 script file doesn't fold properly.
14675Solution: Add a colon.
14676Files: src/testdir/test49.vim
14677
14678Patch 7.3.753
14679Problem: When there is a QuitPre autocommand using ":q" twice does not work
14680 for exiting when there are more files to edit.
14681Solution: Do not decrement quitmore in an autocommand. (Techlive Zheng)
14682Files: src/ex_docmd.c, src/fileio.c, src/proto/fileio.pro
14683
14684Patch 7.3.754
14685Problem: Latest nmake is not recognized.
14686Solution: Add nmake version 11.00.51106.1. (Raymond Ko)
14687Files: src/Make_mvc.mak
14688
14689Patch 7.3.755
14690Problem: Autoconf doesn't find Python 3 if it's called "python".
14691Solution: Search for "python2" and "python3" first, then "python".
14692Files: src/configure.in, src/auto/configure
14693
14694Patch 7.3.756
14695Problem: A location list can get a wrong count in :lvimgrep.
14696Solution: Check if the list was changed by autocommands. (mostly by
14697 Christian Brabandt)
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014698Files: src/quickfix.c
Bram Moolenaar913df812013-07-06 15:44:11 +020014699
14700Patch 7.3.757
14701Problem: Issue 96: May access freed memory when a put command triggers
14702 autocommands. (Dominique Pelle)
14703Solution: Call u_save() before getting y_array.
14704Files: src/ops.c
14705
14706Patch 7.3.758
14707Problem: Matchit plugin does not handle space in #ifdef.
14708Solution: Change matching pattern to allow spaces. (Mike Morearty)
14709Files: runtime/macros/matchit.vim
14710
14711Patch 7.3.759
14712Problem: MS-Windows: Updating the tabline is slow when there are many tabs.
14713Solution: Disable redrawing while performing the update. (Arseny Kapoulkine)
14714Files: src/gui_w48.c
14715
14716Patch 7.3.760
14717Problem: dv_ deletes the white space before the line.
14718Solution: Move the cursor to the first non-white. (Christian Brabandt)
14719Files: src/normal.c, src/testdir/test19.in, src/testdir/test19.ok
14720
14721Patch 7.3.761
14722Problem: In Visual mode a "-p does not work. (Marcin Szamotulski)
14723Solution: Avoid writing to "- before putting it. (Christian Brabandt)
14724Files: src/normal.c, src/testdir/test48.in, src/testdir/test48.ok
14725
14726Patch 7.3.762 (after 7.3.759)
14727Problem: On some systems the tabline is not redrawn.
14728Solution: Call RedrawWindow(). (Charles Peacech)
14729Files: src/gui_w48.c
14730
14731Patch 7.3.763
14732Problem: Jumping to a mark does not open a fold if it is in the same line.
14733 (Wiktor Ruben)
14734Solution: Also compare the column after the jump. (Christian Brabandt)
14735Files: src/normal.c
14736
14737Patch 7.3.764
14738Problem: Not all message translation files are installed.
14739Solution: Also install the converted files.
14740Files: src/po/Makefile
14741
14742Patch 7.3.765
14743Problem: Segfault when doing "cclose" on BufUnload in a python function.
14744 (Sean Reifschneider)
14745Solution: Skip window with NULL buffer. (Christian Brabandt)
14746Files: src/main.c, src/window.c
14747
14748Patch 7.3.766
14749Problem: ":help cpo-*" jumps to the wrong place.
14750Solution: Make it equivalent to ":help cpo-star".
14751Files: src/ex_cmds.c
14752
14753Patch 7.3.767
14754Problem: (Win32) The _errno used for iconv may be the wrong one.
14755Solution: Use the _errno from iconv.dll. (Ken Takata)
14756Files: src/mbyte.c
14757
14758Patch 7.3.768
14759Problem: settabvar() and setwinvar() may move the cursor.
14760Solution: Save and restore the cursor position when appropriate. (idea by
14761 Yasuhiro Matsumoto)
14762Files: src/edit.c
14763
14764Patch 7.3.769
Bram Moolenaar207f0092020-08-30 17:20:20 +020014765Problem: 'matchpairs' does not work with multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020014766Solution: Make it work. (Christian Brabandt)
14767Files: src/misc1.c, src/option.c, src/proto/option.pro, src/search.c,
14768 src/testdir/test69.in, src/testdir/test69.ok
14769
14770Patch 7.3.770
14771Problem: Vim.h indentation is inconsistent.
14772Solution: Adjust the indentation. (Elias Diem)
14773Files: src/vim.h
14774
14775Patch 7.3.771 (after 7.3.769)
14776Problem: Uninitialized variable. (Yasuhiro Matsumoto)
14777Solution: Set x2 to -1.
14778Files: src/option.c
14779
14780Patch 7.3.772
14781Problem: Cursor is at the wrong location and below the end of the file
14782 after doing substitutions with confirm flag: %s/x/y/c
14783 (Dominique Pelle)
14784Solution: Update the cursor position. (Christian Brabandt & Dominique)
14785Files: src/ex_cmds.c
14786
14787Patch 7.3.773 (after 7.3.767)
14788Problem: Crash when OriginalFirstThunk is zero.
14789Solution: Skip items with OriginalFirstThunk not set. (Ken Takata)
14790Files: src/mbyte.c
14791
14792Patch 7.3.774
14793Problem: Tiny GUI version misses console dialog feature.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014794Solution: Define FEAT_CON_DIALOG when appropriate. (Christian Brabandt)
Bram Moolenaar913df812013-07-06 15:44:11 +020014795Files: src/feature.h, src/gui.h
14796
14797Patch 7.3.775
14798Problem: Cygwin and Mingw builds miss dependency on gui_w48.c.
14799Solution: Add a build rule. (Ken Takata)
14800Files: src/Make_cyg.mak, src/Make_ming.mak
14801
14802Patch 7.3.776
14803Problem: ml_get error when searching, caused by curwin not matching curbuf.
14804Solution: Avoid changing curbuf. (Lech Lorens)
14805Files: src/charset.c, src/eval.c, src/mark.c, src/proto/charset.pro,
14806 src/proto/mark.pro, src/regexp.c, src/syntax.c,
14807
14808Patch 7.3.777
14809Problem: When building with Gnome locale gets reset.
14810Solution: Set locale after gnome_program_init(). (Christian Brabandt)
14811Files: src/gui_gtk_x11.c
14812
14813Patch 7.3.778
14814Problem: Compiler error for adding up two pointers. (Titov Anatoly)
14815Solution: Add a type cast. (Ken Takata)
14816Files: src/mbyte.c
14817
14818Patch 7.3.779
14819Problem: Backwards search lands in wrong place when started on a multibyte
14820 character.
14821Solution: Do not set extra_col for a backwards search. (Sung Pae)
14822Files: src/search.c, src/testdir/test44.in, src/testdir/test44.ok
14823
14824Patch 7.3.780
14825Problem: char2nr() and nr2char() always use 'encoding'.
14826Solution: Add argument to use utf-8 characters. (Yasuhiro Matsumoto)
14827Files: runtime/doc/eval.txt, src/eval.c
14828
14829Patch 7.3.781
14830Problem: Drawing with 'guifontwide' can be slow.
14831Solution: Draw multiple characters at a time. (Taro Muraoka)
14832Files: src/gui.c
14833
14834Patch 7.3.782
14835Problem: Windows: IME composition may use a wrong font.
14836Solution: Use 'guifontwide' for IME when it is set. (Taro Muraoka)
14837Files: runtime/doc/options.txt, src/gui.c, src/gui_w48.c,
14838 src/proto/gui_w16.pro, src/proto/gui_w32.pro
14839
14840Patch 7.3.783
14841Problem: Crash when mark is not set. (Dominique Pelle)
14842Solution: Check for NULL.
14843Files: src/normal.c
14844
14845Patch 7.3.784 (after 7.3.781)
14846Problem: Error when 'guifontwide' has a comma.
14847Solution: Use gui.wide_font. (Taro Muraoka)
14848Files: src/gui_w48.c
14849
14850Patch 7.3.785 (after 7.3.776)
14851Problem: Crash with specific use of search pattern.
14852Solution: Initialize reg_buf to curbuf.
14853Files: src/regexp.c
14854
14855Patch 7.3.786
14856Problem: Python threads don't run in the background (issue 103).
14857Solution: Move the statements to manipulate thread state.
14858Files: src/if_python.c
14859
14860Patch 7.3.787
14861Problem: With 'relativenumber' set it is not possible to see the absolute
14862 line number.
14863Solution: For the cursor line show the absolute line number instead of a
14864 zero. (Nazri Ramliy)
14865Files: src/screen.c
14866
14867Patch 7.3.788
14868Problem: When only using patches build fails on missing nl.po.
14869Solution: Create an empty nl.po file.
14870Files: src/po/Makefile
14871
14872Patch 7.3.789 (after 7.3.776)
14873Problem: "\k" in regexp does not work in other window.
14874Solution: Use the right buffer. (Yukihiro Nakadaira)
14875Files: src/mbyte.c, src/proto/mbyte.pro, src/regexp.c
14876
14877Patch 7.3.790
14878Problem: After reloading a buffer the modelines are not processed.
14879Solution: call do_modelines(). (Ken Takata)
14880Files: src/fileio.c
14881
14882Patch 7.3.791
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014883Problem: MzScheme interface doesn't work properly.
Bram Moolenaar913df812013-07-06 15:44:11 +020014884Solution: Make it work better. (Sergey Khorev)
14885Files: runtime/doc/if_mzsch.txt, src/configure.in, src/auto/configure,
14886 src/eval.c, src/if_mzsch.c, src/if_mzsch.h, src/Make_ming.mak,
14887 src/Make_mvc.mak, src/os_unix.c, src/proto/eval.pro,
14888 src/testdir/test70.in, src/testdir/test70.ok
14889
14890Patch 7.3.792
14891Problem: ":substitute" works differently without confirmation.
14892Solution: Do not change the text when asking for confirmation, only display
14893 it.
14894Files: src/ex_cmds.c
14895
14896Patch 7.3.793 (after 7.3.792)
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014897Problem: New interactive :substitute behavior is not tested.
Bram Moolenaar913df812013-07-06 15:44:11 +020014898Solution: Add tests. (Christian Brabandt)
14899Files: src/testdir/test80.in, src/testdir/test80.ok
14900
14901Patch 7.3.794
14902Problem: Tiny build fails. (Tony Mechelynck)
14903Solution: Adjust #ifdefs.
14904Files: src/charset.c
14905
14906Patch 7.3.795
14907Problem: MzScheme does not build with tiny features.
14908Solution: Add #ifdefs. Also add UNUSED to avoid warnings. And change
14909 library ordering.
14910Files: src/if_mzsch.c, src/Makefile
14911
14912Patch 7.3.796
14913Problem: "/[^\n]" does match at a line break.
14914Solution: Make it do the same as "/.". (Christian Brabandt)
14915Files: src/regexp.c, src/testdir/test79.in, src/testdir/test79.ok
14916
14917Patch 7.3.797 (after 7.3.792)
14918Problem: Compiler warning for size_t to int conversion. (Skeept)
14919Solution: Add type casts.
14920Files: src/ex_cmds.c
14921
14922Patch 7.3.798 (after 7.3.791)
14923Problem: MzScheme: circular list does not work correctly.
14924Solution: Separate Mac-specific code from generic code. (Sergey Khorev)
14925Files: src/if_mzsch.c, src/testdir/test70.in
14926
14927Patch 7.3.799
14928Problem: The color column is not correct when entering a buffer. (Ben
14929 Fritz)
14930Solution: Call check_colorcolumn() if 'textwidth' changed. (Christian
14931 Brabandt)
14932Files: src/buffer.c
14933
14934Patch 7.3.800
14935Problem: The " mark is not adjusted when inserting lines. (Roland Eggner)
14936Solution: Adjust the line number. (Christian Brabandt)
14937Files: src/mark.c
14938
14939Patch 7.3.801
14940Problem: ":window set nu?" displays the cursor line. (Nazri Ramliy)
14941Solution: Do not update the cursor line when conceallevel is zero or the
14942 screen has scrolled. (partly by Christian Brabandt)
14943Files: src/window.c
14944
14945Patch 7.3.802
14946Problem: After setting 'isk' to a value ending in a comma appending to the
14947 option fails.
14948Solution: Disallow a trailing comma for 'isk' and similar options.
14949Files: src/charset.c
14950
14951Patch 7.3.803 (after 7.3.792)
14952Problem: Substitute with confirmation and then "q" does not replace
14953 anything. (John McGowan)
14954Solution: Do not break the loop, skip to the end.
14955Files: src/ex_cmds.c, src/testdir/test80.in, src/testdir/test80.ok
14956
14957Patch 7.3.804 (after 7.3.799)
14958Problem: Compiler warning for tiny build. (Tony Mechelynck)
14959Solution: Add #ifdefs around variable.
14960Files: src/buffer.c
14961
14962Patch 7.3.805
14963Problem: Lua version 5.2 is not detected properly on Arch Linux.
14964Solution: Adjust autoconf. (lilydjwg)
14965Files: src/configure.in, src/auto/configure
14966
14967Patch 7.3.806
Bram Moolenaar1588bc82022-03-08 21:35:07 +000014968Problem: Compiler warnings in Perl code when building with Visual Studio
Bram Moolenaar913df812013-07-06 15:44:11 +020014969 2012. (skeept)
14970Solution: Add type casts. (Christian Brabandt, 2013 Jan 30)
14971Files: src/if_perl.xs
14972
14973Patch 7.3.807
14974Problem: Popup menu does not work properly with the preview window, folds
14975 and 'cursorcolumn'.
14976Solution: Redraw the popup menu after redrawing windows. (Christian
14977 Brabandt)
14978Files: src/screen.c
14979
14980Patch 7.3.808
14981Problem: Python threads still do not work properly.
14982Solution: Fix both Python 2 and 3. Add tests. (Ken Takata)
14983Files: src/if_python.c, src/if_python3.c, src/testdir/test86.in,
14984 src/testdir/test86.ok, src/testdir/test87.in,
14985 src/testdir/test87.ok
14986
14987Patch 7.3.809
14988Problem: The dosinst.c program has a buffer overflow. (Thomas Gwae)
14989Solution: Ignore $VIMRUNTIME if it is too long.
14990Files: src/dosinst.c
14991
14992Patch 7.3.810
Bram Moolenaardd007ed2013-07-09 15:44:17 +020014993Problem: 'relativenumber' is reset unexpectedly. (François Ingelrest)
Bram Moolenaar913df812013-07-06 15:44:11 +020014994Solution: After an option was reset also reset the global value. Add a test.
14995 (Christian Brabandt)
14996Files: src/option.c, src/testdir/Make_amiga.mak,
14997 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
14998 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
14999 src/testdir/Makefile, src/testdir/test89.in,
15000 src/testdir/test89.ok
15001
15002Patch 7.3.811
15003Problem: Useless termresponse parsing for SGR mouse.
15004Solution: Skip the parsing. (Hayaki Saito)
15005Files: src/term.c
15006
15007Patch 7.3.812
15008Problem: When 'indentexpr' moves the cursor "curswant" not restored.
15009Solution: Restore "curswant". (Sung Pae)
15010Files: src/misc1.c
15011
15012Patch 7.3.813
15013Problem: The CompleteDone event is not triggered when there are no pattern
15014 matches. (Jianjun Mao)
15015Solution: Trigger the event. (Christian Brabandt)
15016Files: src/edit.c
15017
15018Patch 7.3.814
15019Problem: Can't input multibyte characters on Win32 console if 'encoding' is
15020 different from current codepage.
15021Solution: Use convert_input_safe() instead of convert_input(). Make
15022 string_convert_ext() return an error for incomplete input. (Ken
15023 Takata)
15024Files: src/mbyte.c, src/os_win32.c
15025
15026Patch 7.3.815
15027Problem: Building with Cygwin and Ruby doesn't work.
15028Solution: Copy some things from the MingW build file. (Ken Takata)
15029Files: src/Make_cyg.mak
15030
15031Patch 7.3.816
15032Problem: Can't compute a hash.
15033Solution: Add the sha256() function. (Tyru, Hirohito Higashi)
15034Files: runtime/doc/eval.txt, src/eval.c, src/proto/sha256.pro,
15035 src/sha256.c, src/testdir/test90.in, src/testdir/test90.ok,
15036 src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
15037 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
15038 src/testdir/Make_vms.mms, src/testdir/Makefile
15039
15040Patch 7.3.817
15041Problem: Test 89 fails with tiny and small features.
15042Solution: Add sourcing small.vim.
15043Files: src/testdir/test89.in
15044
15045Patch 7.3.818
15046Problem: When test 40 fails because of a bad build it may leave files
15047 behind that cause it to fail later.
15048Solution: Let the file names start with "X".
15049Files: src/testdir/test40.in
15050
15051Patch 7.3.819
15052Problem: Compiling without +eval and with Python isn't working.
15053Solution: Add the eval feature when building with Python.
15054Files: src/if_py_both.h, src/feature.h, src/eval.c, src/ex_docmd.c,
15055 src/normal.c, src/ex_docmd.c, src/gui_gtk_x11.c
15056
15057Patch 7.3.820
15058Problem: Build errors and warnings when building with small features and
15059 Lua, Perl or Ruby.
15060Solution: Add #ifdefs and UNUSED.
15061Files: src/if_perl.xs, src/if_lua.c, src/if_ruby.c
15062
15063Patch 7.3.821
15064Problem: Build with OLE and Cygwin is broken. (Steve Hall)
15065Solution: Select static or shared stdc library. (Ken Takata)
15066Files: src/Make_cyg.mak
15067
15068Patch 7.3.822 (after 7.3.799)
15069Problem: Crash when accessing freed buffer.
15070Solution: Get 'textwidth' in caller of enter_buffer(). (Christian Brabandt)
15071Files: src/buffer.c
15072
15073Patch 7.3.823 (after 7.3.821)
15074Problem: Building with Cygwin: '-lsupc++' is not needed.
15075Solution: Remove it. (Ken Takata)
15076Files: src/Make_cyg.mak
15077
15078Patch 7.3.824
15079Problem: Can redefine builtin functions. (ZyX)
15080Solution: Disallow adding a function to g:.
15081Files: src/eval.c
15082
15083Patch 7.3.825
15084Problem: With Python errors are not always clear.
15085Solution: Print the stack trace, unless :silent is used. (ZyX)
15086Files: src/if_python3.c, src/if_python.c
15087
15088Patch 7.3.826
15089Problem: List of features in :version output is hard to read.
15090Solution: Make columns. (Nazri Ramliy)
15091Files: src/version.c
15092
15093Patch 7.3.827 (after 7.3.825)
15094Problem: Python tests fail.
15095Solution: Adjust the output for the stack trace.
15096Files: src/testdir/test86.in, src/testdir/test86.ok,
15097 src/testdir/test87.ok
15098
15099Patch 7.3.828
15100Problem: Mappings are not aware of wildmenu mode.
15101Solution: Add wildmenumode(). (Christian Brabandt)
15102Files: src/eval.c, runtime/doc/eval.txt
15103
15104Patch 7.3.829
15105Problem: When compiled with the +rightleft feature 'showmatch' also shows a
15106 match for the opening paren. When 'revins' is set the screen may
15107 scroll.
15108Solution: Only check the opening paren when the +rightleft feature was
15109 enabled. Do not show a match that is not visible. (partly by
15110 Christian Brabandt)
15111Files: src/search.c
15112
15113Patch 7.3.830
15114Problem: :mksession confuses bytes, columns and characters when positioning
15115 the cursor.
15116Solution: Use w_virtcol with "|" instead of w_cursor.col with "l".
15117Files: src/ex_docmd.c
15118
15119Patch 7.3.831
15120Problem: Clumsy to handle the situation that a variable does not exist.
15121Solution: Add default value to getbufvar() et al. (Shougo Matsushita,
15122 Hirohito Higashi)
15123Files: runtime/doc/eval.txt, src/eval.c src/testdir/test91.in,
15124 src/testdir/test91.ok, src/testdir/Make_amiga.mak,
15125 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
15126 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
15127 src/testdir/Makefile
15128
15129Patch 7.3.832
15130Problem: Compiler warning.
15131Solution: Add type cast. (Mike Williams)
15132Files: src/version.c
15133
15134Patch 7.3.833
15135Problem: In the terminal the scroll wheel always scrolls the active window.
15136Solution: Scroll the window under the mouse pointer, like in the GUI.
15137 (Bradie Rao)
15138Files: src/edit.c, src/normal.c
15139
15140Patch 7.3.834
15141Problem: Ruby 2.0 has a few API changes.
15142Solution: Add handling of Ruby 2.0. (Yasuhiro Matsumoto)
15143Files: src/if_ruby.c
15144
15145Patch 7.3.835
15146Problem: "xxd -i" fails on an empty file.
15147Solution: Do output the closing } for an empty file. (partly by Lawrence
15148 Woodman)
15149Files: src/xxd/xxd.c
15150
15151Patch 7.3.836
15152Problem: Clipboard does not work on Win32 when compiled with Cygwin.
15153Solution: Move the Win32 clipboard code to a separate file and use it when
15154 building with os_unix.c. (Frodak Baksik, Ken Takata)
15155Files: src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ivc.mak,
15156 src/Make_ming.mak, src/Make_mvc.mak, src/Make_w16.mak,
15157 src/Makefile, src/config.h.in, src/configure.in,
15158 src/auto/configure, src/feature.h, src/globals.h, src/mbyte.c,
15159 src/os_mswin.c, src/os_unix.c, src/os_win32.c, src/proto.h,
15160 src/proto/os_mswin.pro, src/proto/winclip.pro, src/term.c,
15161 src/vim.h, src/winclip.c
15162
15163Patch 7.3.837 (after 7.3.826)
15164Problem: Empty lines in :version output when 'columns' is 320.
15165Solution: Simplify the logic of making columns. (Nazri Ramliy, Roland
15166 Eggner)
15167Files: src/version.c
15168
15169Patch 7.3.838 (after 7.3.830)
15170Problem: Insufficient testing for mksession.
15171Solution: Add tests. (mostly by Roland Eggner)
15172Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
15173 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
15174 src/testdir/Make_vms.mms, src/testdir/Makefile,
15175 src/testdir/test92.in, src/testdir/test92.ok,
15176 src/testdir/test93.in, src/testdir/test93.ok,
15177 src/ex_docmd.c
15178
15179Patch 7.3.839
15180Problem: Some files missing in the list of distributed files.
15181Solution: Add lines for new files.
15182Files: Filelist
15183
15184Patch 7.3.840
Bram Moolenaar207f0092020-08-30 17:20:20 +020015185Problem: "\@<!" in regexp does not work correctly with multibyte
Bram Moolenaar913df812013-07-06 15:44:11 +020015186 characters, especially cp932.
Bram Moolenaar207f0092020-08-30 17:20:20 +020015187Solution: Move column to start of multibyte character. (Yasuhiro Matsumoto)
Bram Moolenaar913df812013-07-06 15:44:11 +020015188Files: src/regexp.c
15189
15190Patch 7.3.841
15191Problem: When a "cond ? one : two" expression has a subscript it is not
15192 parsed correctly. (Andy Wokula)
15193Solution: Handle a subscript also when the type is unknown. (Christian
15194 Brabandt)
15195Files: src/eval.c
15196
15197Patch 7.3.842
15198Problem: Compiler warning for signed/unsigned pointer.
15199Solution: Add type cast. (Christian Brabandt)
15200Files: src/eval.c
15201
15202Patch 7.3.843 (after 7.3.841)
15203Problem: Missing test file changes.
15204Solution: Change the tests.
15205Files: src/testdir/test49.vim, src/testdir/test49.ok
15206
15207Patch 7.3.844
15208Problem: Enum is not indented correctly with "public" etc.
15209Solution: Skip "public", "private" and "protected". (Hong Xu)
15210Files: src/misc1.c
15211
15212Patch 7.3.845 (after 7.3.844)
15213Problem: Enum indenting is not tested.
15214Solution: Add tests. (Hong Xu)
15215Files: src/testdir/test3.in, src/testdir/test3.ok
15216
15217Patch 7.3.846
15218Problem: Missing proto files.
15219Solution: Add the files.
15220Files: Filelist, src/proto/os_beos.pro
15221
15222Patch 7.3.847
15223Problem: Test 55 fails when messages are translated.
15224Solution: Set language to C. (Ken Takata)
15225Files: src/testdir/test55.in
15226
15227Patch 7.3.848
15228Problem: Can't build with Ruby 2.0 when using MinGW x64 or MSVC10.
15229Solution: Fix it. Also detect RUBY_PLATFORM and RUBY_INSTALL_NAME for x64.
15230 (Ken Takata)
15231Files: src/Make_cyg.mak, src/Make_ming.mak, src/if_ruby.c
15232
15233Patch 7.3.849
15234Problem: ":g//" gives "Pattern not found error" with E486. Should not use
15235 the error number, it's not a regular error message.
15236Solution: Use a normal message. (David Bürgin)
15237Files: src/ex_cmds.c
15238
15239Patch 7.3.850
15240Problem: ":vimgrep //" matches everywhere.
15241Solution: Make it use the previous search pattern. (David Bürgin)
15242Files: runtime/doc/quickfix.txt, src/quickfix.c
15243
15244Patch 7.3.851
15245Problem: Using an empty pattern with :sort silently continues when there is
15246 no previous search pattern.
15247Solution: Give an error message. (David Bürgin)
15248Files: src/ex_cmds.c
15249
15250Patch 7.3.852
15251Problem: system() breaks clipboard text. (Yukihiro Nakadaira)
15252Solution: Use Xutf8TextPropertyToTextList(). (Christian Brabandt)
15253 Also do not put the text in the clip buffer if conversion fails.
15254Files: src/ui.c, src/ops.c
15255
15256Patch 7.3.853
Bram Moolenaar207f0092020-08-30 17:20:20 +020015257Problem: Using "ra" in multiple lines on multibyte characters leaves a few
Bram Moolenaar913df812013-07-06 15:44:11 +020015258 characters not replaced.
15259Solution: Adjust the end column only in the last line. (Yasuhiro Matsumoto)
15260Files: src/testdir/test69.in, src/testdir/test69.ok, src/ops.c
15261
15262Patch 7.3.854
15263Problem: After using backspace in insert mode completion, CTRL-N and CTRL-P
15264 do not highlight the right entry. (Olivier Teuliere)
15265Solution: Set the current item to the shown item after using backspace.
15266Files: src/edit.c
15267
15268Patch 7.3.855
15269Problem: Compiler warnings.
15270Solution: Add type casts. (Mike Williams)
15271Files: src/misc1.c
15272
15273Patch 7.3.856
Bram Moolenaar207f0092020-08-30 17:20:20 +020015274Problem: When calling system() multibyte clipboard contents is garbled.
Bram Moolenaar913df812013-07-06 15:44:11 +020015275Solution: Save and restore the clipboard contents. (Yukihiro Nakadaira)
15276Files: src/gui_gtk_x11.c, src/proto/gui_gtk_x11.pro, src/ops.c,
15277 src/proto/ops.pro, src/os_unix.c, src/proto/ui.pro, src/ui.c
15278
15279Patch 7.3.857
15280Problem: The QuitPre autocommand event does not trigger for :qa and :wq.
15281Solution: Trigger the event. (Tatsuro Fujii)
15282Files: src/ex_docmd.c
15283
15284Patch 7.3.858
15285Problem: "gv" selects the wrong area after some operators.
15286Solution: Save and restore the type of selection. (Christian Brabandt)
15287Files: src/testdir/test66.in, src/testdir/test66.ok, src/normal.c
15288
15289Patch 7.3.859
15290Problem: 'ambiwidth' must be set by the user.
15291Solution: Detects East Asian ambiguous width (UAX #11) state of the terminal
15292 at the start-up time and 'ambiwidth' accordingly. (Hayaki Saito)
15293Files: src/main.c, src/option.c, src/term.c, src/term.h,
15294 src/proto/term.pro
15295
15296Patch 7.3.860
15297Problem: When using --remote-expr try/catch does not work. (Andrey Radev)
15298Solution: Set emsg_silent instead of emsg_skip.
15299Files: src/main.c
15300
15301Patch 7.3.861
15302Problem: ":setlocal number" clears global value of 'relativenumber'.
15303Solution: Do it properly. (Markus Heidelberg)
15304Files: src/testdir/test89.in, src/testdir/test89.ok, src/option.c
15305
15306Patch 7.3.862
15307Problem: Dragging the status line can be slow.
15308Solution: Look ahead and drop the drag event if there is a next one.
15309Files: src/eval.c, src/misc1.c, src/proto/misc1.pro, src/normal.c
15310
15311Patch 7.3.863 (after 7.3.859)
15312Problem: Problem with 'ambiwidth' detection for ANSI terminal.
15313Solution: Work around not recognizing a term response. (Hayaki Saito)
15314Files: src/term.c
15315
15316Patch 7.3.864 (after 7.3.862)
15317Problem: Can't build without the mouse feature.
15318Solution: Add an #ifdef. (Ike Devolder)
15319Files: src/misc1.c
15320
15321Patch 7.3.865 (after 7.3.862)
15322Problem: Mouse position may be wrong.
15323Solution: Let vungetc() restore the mouse position.
15324Files: src/getchar.c
15325
15326Patch 7.3.866
15327Problem: Not serving the X selection during system() isn't nice.
15328Solution: When using fork() do not loose the selection, keep serving it.
15329 Add a loop similar to handling I/O. (Yukihiro Nakadaira)
15330Files: src/os_unix.c
15331
15332Patch 7.3.867
15333Problem: Matchparen does not update match when using auto-indenting.
15334 (Marc Aldorasi)
15335Solution: Add the TextChanged and TextChangedI autocommand events.
15336Files: runtime/plugin/matchparen.vim, src/main.c, src/edit.c,
15337 src/globals.h, src/vim.h, src/fileio.c, src/proto/fileio.pro,
15338 runtime/doc/autocmd.txt
15339
15340Patch 7.3.868
15341Problem: When at the hit-return prompt and using "k" while no text has
15342 scrolled off screen, then using "j", an empty line is displayed.
15343Solution: Only act on "k" when text scrolled off screen. Also accept
15344 page-up and page-down. (cptstubing)
15345Files: src/message.c
15346
15347Patch 7.3.869
15348Problem: bufwinnr() matches buffers in other tabs.
15349Solution: For bufwinnr() and ? only match buffers in the current tab.
15350 (Alexey Radkov)
15351Files: src/buffer.c, src/diff.c, src/eval.c, src/ex_docmd.c,
15352 src/if_perl.xs, src/proto/buffer.pro
15353
15354Patch 7.3.870
15355Problem: Compiler warnings when using MingW 4.5.3.
15356Solution: Do not use MAKEINTRESOURCE. Adjust #if. (Ken Takata)
15357Files: src/gui_w32.c, src/gui_w48.c, src/os_mswin.c, src/os_win32.c,
15358 src/os_win32.h
15359
15360Patch 7.3.871
15361Problem: search('^$', 'c') does not use the empty match under the cursor.
15362Solution: Special handling of the 'c' flag. (Christian Brabandt)
15363 Add tests.
15364Files: src/search.c, src/testdir/test14.in, src/testdir/test14.ok
15365
15366Patch 7.3.872
15367Problem: On some systems case of file names is always ignored, on others
15368 never.
15369Solution: Add the 'fileignorecase' option to control this at runtime.
15370 Implies 'wildignorecase'.
15371Files: src/buffer.c, src/edit.c, src/ex_cmds2.c, src/ex_getln.c,
15372 src/fileio.c, src/misc1.c, src/misc2.c, src/option.c,
15373 src/option.h, src/vim.h, runtime/doc/options.txt
15374
15375Patch 7.3.873
15376Problem: Cannot easily use :s to make title case.
15377Solution: Have "\L\u" result in title case. (James McCoy)
15378Files: src/regexp.c, src/testdir/test79.in, src/testdir/test79.ok,
15379 src/testdir/test80.in, src/testdir/test80.ok
15380
15381Patch 7.3.874
Bram Moolenaar207f0092020-08-30 17:20:20 +020015382Problem: Comparing file names does not handle multibyte characters
Bram Moolenaar913df812013-07-06 15:44:11 +020015383 properly.
Bram Moolenaar207f0092020-08-30 17:20:20 +020015384Solution: Implement multibyte handling.
Bram Moolenaar913df812013-07-06 15:44:11 +020015385Files: src/misc1.c, src/misc2.c
15386
15387Patch 7.3.875 (after 7.3.866)
15388Problem: Build problem with some combination of features.
15389Solution: Use FEAT_XCLIPBOARD instead of FEAT_CLIPBOARD.
15390Files: src/os_unix.c
15391
15392Patch 7.3.876
15393Problem: #if indents are off.
15394Solution: Insert a space where appropriate. (Taro Muraoka)
15395Files: src/gui.c
15396
15397Patch 7.3.877 (after 7.3.871)
15398Problem: Forward searching with search() is broken.
15399Solution: Fix it and add tests. (Sung Pae)
15400Files: src/search.c, src/testdir/test14.in, src/testdir/test14.ok
15401
15402Patch 7.3.878
15403Problem: 'fileignorecase' is missing in options window and quickref.
15404Solution: Add the option.
15405Files: runtime/optwin.vim, runtime/doc/quickref.txt
15406
15407Patch 7.3.879
15408Problem: When using an ex command in operator pending mode, using Esc to
15409 abort the command still executes the operator. (David Bürgin)
15410Solution: Clear the operator when the ex command fails. (Christian Brabandt)
15411Files: src/normal.c
15412
15413Patch 7.3.880
15414Problem: When writing viminfo, old history lines may replace lines written
15415 more recently by another Vim instance.
15416Solution: Mark history entries that were read from viminfo and overwrite
15417 them when merging with the current viminfo.
15418Files: src/ex_getln.c
15419
15420Patch 7.3.881
15421Problem: Python list does not work correctly.
15422Solution: Fix it and add a test. (Yukihiro Nakadaira)
15423Files: src/testdir/test86.in, src/testdir/test86.ok, src/if_py_both.h
15424
15425Patch 7.3.882
15426Problem: CursorHold may trigger after receiving the termresponse.
15427Solution: Set the did_cursorhold flag. (Hayaki Saito)
15428Files: src/term.c
15429
15430Patch 7.3.883 (after 7.3.880)
15431Problem: Can't build with some combination of features.
15432Solution: Adjust #ifdefs.
15433Files: src/ex_getln.c
15434
15435Patch 7.3.884
15436Problem: Compiler warning for variable shadowing another. (John Little)
15437Solution: Rename the variable. (Christian Brabandt)
15438Files: src/term.c
15439
15440Patch 7.3.885
15441Problem: Double free for list and dict in Lua. (Shougo Matsu)
15442Solution: Do not unref list and dict. (Yasuhiro Matsumoto)
15443Files: src/if_lua.c
15444
15445Patch 7.3.886
Bram Moolenaar207f0092020-08-30 17:20:20 +020015446Problem: Can't build with multibyte on Solaris 10.
Bram Moolenaar913df812013-07-06 15:44:11 +020015447Solution: Add #ifdef X_HAVE_UTF8_STRING. (Laurent Blume)
15448Files: src/ui.c
15449
15450Patch 7.3.887
15451Problem: No tests for Visual mode operators, what 7.3.879 fixes.
15452Solution: Add a new test file. (David Bürgin)
15453Files: src/testdir/test94.in, src/testdir/test94.ok,
15454 src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
15455 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
15456 src/testdir/Make_vms.mms, src/testdir/Makefile
15457
15458Patch 7.3.888
15459Problem: Filename completion with 'fileignorecase' does not work for
Bram Moolenaar207f0092020-08-30 17:20:20 +020015460 multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020015461Solution: Make 'fileignorecase' work properly. (Hirohito Higashi)
15462Files: src/misc2.c
15463
15464Patch 7.3.889
15465Problem: Can't build with Ruby 2.0 on a 64 bit system.
15466Solution: Define rb_fix2int and rb_num2int. (Kohei Suzuki)
15467Files: src/if_ruby.c
15468
15469Patch 7.3.890
15470Problem: Test 79 fails on Windows. (Michael Soyka)
15471Solution: Add comment below line causing an error.
15472Files: src/testdir/test79.in
15473
15474Patch 7.3.891
15475Problem: Merging viminfo history doesn't work well.
15476Solution: Don't stop when one type of history is empty. Don't merge history
15477 when writing viminfo.
15478Files: src/ex_getln.c
15479
15480Patch 7.3.892 (after 7.3.891)
15481Problem: Still merging problems for viminfo history.
15482Solution: Do not merge lines when writing, don't write old viminfo lines.
15483Files: src/ex_getln.c, src/ex_cmds.c, src/proto/ex_getln.pro
15484
15485Patch 7.3.893
15486Problem: Crash when using b:, w: or t: after closing the buffer, window or
15487 tabpage.
15488Solution: Allocate the dictionary instead of having it part of the
15489 buffer/window/tabpage struct. (Yukihiro Nakadaira)
15490Files: src/buffer.c, src/eval.c, src/fileio.c, src/structs.h,
15491 src/window.c, src/proto/eval.pro
15492
15493Patch 7.3.894
15494Problem: Using wrong RUBY_VER causing Ruby build to break.
15495Solution: Correct the RUBY_VER value. (Yongwei Wu)
15496Files: src/bigvim.bat
15497
15498Patch 7.3.895
15499Problem: Valgrind error in test 91. (Issue 128)
15500Solution: Pass scope name to find_var_in_ht().
15501Files: src/eval.c
15502
15503Patch 7.3.896
15504Problem: Memory leaks in Lua interface.
15505Solution: Fix the leaks, add tests. (Yukihiro Nakadaira)
15506Files: src/testdir/test85.in, src/testdir/test85.ok, src/if_lua.c
15507
15508Patch 7.3.897
15509Problem: Configure doesn't always find the shared library.
15510Solution: Change the configure script. (Ken Takata)
15511Files: src/configure.in, src/auto/configure
15512
15513Patch 7.3.898
15514Problem: Memory leak reported by valgrind in test 91.
15515Solution: Only use default argument when needed.
15516Files: src/eval.c, src/testdir/test91.in, src/testdir/test91.ok
15517
15518Patch 7.3.899
15519Problem: #if indents are off.
15520Solution: Fix the indents.
15521Files: src/os_unix.c
15522
15523Patch 7.3.900
15524Problem: Not obvious that some mouse features are mutual-exclusive.
15525Solution: Add a comment.
15526Files: src/feature.h
15527
15528Patch 7.3.901
15529Problem: Outdated comment, ugly condition.
15530Solution: Update a few comments, break line.
15531Files: src/getchar.c, src/misc1.c, src/undo.c
15532
15533Patch 7.3.902
15534Problem: When deleting last buffer in other tab the tabline is not updated.
15535Solution: Set the redraw_tabline flag. (Yukihiro Nakadaira)
15536Files: src/window.c
15537
15538Patch 7.3.903 (after 7.3.892)
15539Problem: Crash on exit writing viminfo. (Ron Aaron)
15540Solution: Check for the history to be empty.
15541Files: src/ex_getln.c
15542
15543Patch 7.3.904 (after 7.3.893)
15544Problem: Using memory freed by the garbage collector.
15545Solution: Mark items in aucmd_win as used.
15546Files: src/eval.c
15547
15548Patch 7.3.905 (after 7.3.903)
15549Problem: Crash when writing viminfo. (Ron Aaron)
15550Solution: Prevent freed history info to be used.
15551Files: src/ex_getln.c
15552
15553Patch 7.3.906
15554Problem: The "sleep .2" for running tests does not work on Solaris.
15555Solution: Fall back to using "sleep 1". (Laurent Blume)
15556Files: src/testdir/Makefile
15557
15558Patch 7.3.907
15559Problem: Python uses IndexError when a dict key is not found.
15560Solution: Use KeyError instead. (ZyX)
15561Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
15562 src/testdir/test86.ok, src/testdir/test87.ok
15563
15564Patch 7.3.908
15565Problem: Possible crash when using a list in Python.
15566Solution: Return early if the list is NULL. (ZyX)
15567Files: src/if_py_both.h
15568
15569Patch 7.3.909
15570Problem: Duplicate Python code.
15571Solution: Move more items to if_py_both.h. (ZyX) Also avoid compiler
15572 warnings for missing initializers.
15573Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
15574
15575Patch 7.3.910
15576Problem: Python code in #ifdef branches with only minor differences.
15577Solution: Merge the #ifdef branches. (ZyX)
15578Files: src/if_py_both.h, src/if_python.c
15579
15580Patch 7.3.911
15581Problem: Python: Access to Vim variables is not so easy.
15582Solution: Define vim.vars and vim.vvars. (ZyX)
15583Files: runtime/doc/if_pyth.txt, src/eval.c, src/globals.h,
15584 src/if_py_both.h, src/if_python3.c, src/if_python.c,
15585 src/testdir/test86.in, src/testdir/test86.ok,
15586 src/testdir/test87.in, src/testdir/test87.ok
15587
15588Patch 7.3.912
15589Problem: Typing a ":" command at the hit-enter dialog does not work if the
15590 "file changed" dialog happens next.
15591Solution: Check for changed files before giving the hit-enter dialog.
15592Files: src/message.c
15593
15594Patch 7.3.913 (after 7.3.905)
15595Problem: Still a crash when writing viminfo.
15596Solution: Add checks for NULL pointers. (Ron Aaron)
15597Files: src/ex_getln.c
15598
15599Patch 7.3.914
15600Problem: ~/.viminfo is messed up when running tests.
15601Solution: Set the viminfo filename.
15602Files: src/testdir/test89.in, src/testdir/test94.in
15603
15604Patch 7.3.915
15605Problem: When reading a file with encoding conversion fails at the end the
15606 next encoding in 'fencs' is not used.
15607Solution: Retry with another encoding when possible. (Taro Muraoka)
15608Files: src/fileio.c
15609
15610Patch 7.3.916
15611Problem: Using freed memory when pasting with the mouse (Issue 130).
15612Solution: Get the byte value early. (hint by Dominique Pelle)
15613Files: src/buffer.c
15614
15615Patch 7.3.917
15616Problem: When a path ends in a backslash appending a comma has the wrong
15617 effect.
15618Solution: Replace a trailing backslash with a slash. (Nazri Ramliy)
15619Files: src/misc1.c, src/testdir/test73.in, src/testdir/test73.ok
15620
15621Patch 7.3.918
15622Problem: Repeating an Ex command after using a Visual motion does not work.
15623Solution: Check for an Ex command being used. (David Bürgin)
15624Files: src/normal.c
15625
15626Patch 7.3.919 (after 7.3.788)
15627Problem: An empty nl.po file does not work with an old msgfmt.
15628Solution: Put a single # in the file. (Laurent Blume)
15629Files: src/po/Makefile
15630
15631Patch 7.3.920
15632Problem: Compiler warning for size_t to int.
15633Solution: Add a type cast. (Mike Williams)
15634Files: src/misc1.c
15635
15636Patch 7.3.921 (after 7.3.697)
15637Problem: Trying to create a fontset handle when 'guifontset' is not set.
15638Solution: Add curly braces around the code block. (Max Kirillov)
15639Files: src/syntax.c
15640
15641Patch 7.3.922
15642Problem: No test for what 7.3.918 fixes.
15643Solution: Add a test. (David Bürgin)
15644Files: src/testdir/test94.in, src/testdir/test94.ok
15645
15646Patch 7.3.923
15647Problem: Check for X11 header files fails on Solaris.
15648Solution: Only use -Werror for gcc. (Laurent Blume)
15649Files: src/configure.in, src/auto/configure
15650
15651Patch 7.3.924
15652Problem: Python interface can't easily access options.
15653Solution: Add vim.options, vim.window.options and vim.buffer.options. (ZyX)
15654Files: runtime/doc/if_pyth.txt, src/eval.c, src/if_py_both.h,
15655 src/if_python.c, src/if_python3.c, src/option.c,
15656 src/proto/eval.pro, src/proto/option.pro, src/testdir/test86.in,
15657 src/testdir/test86.ok, src/testdir/test87.in,
15658 src/testdir/test87.ok, src/vim.h
15659
15660Patch 7.3.925
15661Problem: Typos in source files.
15662Solution: Fix the typos. (Ken Takata)
15663Files: runtime/plugin/matchparen.vim, runtime/tools/vim_vs_net.cmd,
15664 src/GvimExt/gvimext.cpp, src/INSTALLvms.txt, src/Make_cyg.mak,
15665 src/Make_mvc.mak, src/Make_sas.mak, src/Make_vms.mms,
15666 src/Make_w16.mak, src/Makefile, src/VisVim/OleAut.cpp,
15667 src/VisVim/README_VisVim.txt, src/auto/configure, src/buffer.c,
15668 src/configure.in, src/diff.c, src/dosinst.c, src/edit.c,
15669 src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
15670 src/farsi.c, src/feature.h, src/fileio.c, src/glbl_ime.cpp,
15671 src/gui.c, src/gui_athena.c, src/gui_beval.c, src/gui_gtk_x11.c,
15672 src/gui_mac.c, src/gui_motif.c, src/gui_photon.c, src/gui_w16.c,
15673 src/gui_w32.c, src/gui_w48.c, src/gui_xmebw.c, src/gui_xmebwp.h,
15674 src/hardcopy.c, src/if_cscope.c, src/if_mzsch.c, src/if_ole.cpp,
15675 src/if_perl.xs, src/if_py_both.h, src/if_python.c,
15676 src/if_python3.c, src/if_ruby.c, src/main.aap, src/mbyte.c,
15677 src/memfile.c, src/memline.c, src/misc1.c, src/misc2.c,
15678 src/nbdebug.c, src/normal.c, src/ops.c, src/os_amiga.c,
15679 src/os_mac.h, src/os_msdos.c, src/os_mswin.c, src/os_win16.h,
15680 src/os_win32.c, src/os_win32.h, src/quickfix.c, src/screen.c,
15681 src/search.c, src/spell.c, src/structs.h, src/syntax.c,
15682 src/window.c, vimtutor.com
15683
15684
15685Patch 7.3.926
15686Problem: Autocommands are triggered by setwinvar() et al. Missing BufEnter
15687 on :tabclose. Duplicate WinEnter on :tabclose. Wrong order of
15688 events for :tablose and :tabnew.
Bram Moolenaar9ba7e172013-07-17 22:37:26 +020015689Solution: Fix these autocommand events. (ZyX)
Bram Moolenaar913df812013-07-06 15:44:11 +020015690Files: runtime/doc/eval.txt, src/buffer.c, src/eval.c, src/ex_cmds2.c,
15691 src/fileio.c, src/proto/window.pro, src/testdir/test62.in,
15692 src/testdir/test62.ok, src/window.c
15693
15694Patch 7.3.927
15695Problem: Missing combining characters when putting text in a register.
15696Solution: Include combining characters. (David Bürgin)
15697Files: src/getchar.c, src/testdir/test44.in, src/testdir/test44.ok
15698
15699Patch 7.3.928 (after 7.3.924)
15700Problem: Can't build with strict C compiler.
15701Solution: Move declaration to start of block. (Taro Muraoka)
15702Files: src/if_py_both.h
15703
15704Patch 7.3.929 (after 7.3.924)
15705Problem: Compiler warning for unused variable. Not freeing unused string.
15706Solution: Remove the variable. Clear the options.
15707Files: src/option.c
15708
15709Patch 7.3.930
15710Problem: MSVC 2012 update is not recognized.
15711Solution: Update the version in the makefile. (Raymond Ko)
15712Files: src/Make_mvc.mak
15713
15714Patch 7.3.931
15715Problem: No completion for :xmap and :smap. (Yukihiro Nakadaira)
15716Solution: Add the case statements. (Christian Brabandt)
15717Files: src/ex_docmd.c
15718
15719Patch 7.3.932
15720Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
15721Solution: Initialize the variable.
15722Files: src/option.c
15723
15724Patch 7.3.933
15725Problem: Ruby on Mac crashes due to GC failure.
15726Solution: Init the stack from main(). (Hiroshi Shirosaki)
15727Files: src/main.c, src/if_ruby.c, src/proto/if_ruby.pro
15728
15729Patch 7.3.934
15730Problem: E381 and E380 make the user think nothing happened.
15731Solution: Display the message indicating what error list is now active.
15732 (Christian Brabandt)
15733Files: src/quickfix.c
15734
15735Patch 7.3.935 (after 7.3.933)
15736Problem: Ruby: Init stack works differently on 64 bit systems.
15737Solution: Handle 64 bit systems and also static library. (Yukihiro
15738 Nakadaira)
15739Files: src/if_ruby.c
15740
15741Patch 7.3.936 (after 7.3.935)
15742Problem: Ruby 1.8: Missing piece for static linking on 64 bit systems.
15743Solution: Define ruby_init_stack() (Hiroshi Shirosaki)
15744 Also fix preprocessor indents.
15745Files: src/if_ruby.c
15746
15747Patch 7.3.937
15748Problem: More can be shared between Python 2 and 3.
15749Solution: Move code to if_py_both.h. (ZyX)
15750Files: src/if_python.c, src/if_python3.c, src/if_py_both.h
15751
15752Patch 7.3.938
15753Problem: Python: not easy to get to window number.
15754Solution: Add vim.window.number. (ZyX)
15755Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/proto/window.pro,
15756 src/window.c
15757
15758Patch 7.3.939
15759Problem: Using Py_BuildValue is inefficient sometimes.
15760Solution: Use PyLong_FromLong(). (ZyX)
15761Files: src/if_py_both.h
15762
15763Patch 7.3.940
15764Problem: Python: Can't get position of window.
15765Solution: Add window.row and window.col. (ZyX)
15766Files: runtime/doc/if_pyth.txt, src/if_py_both.h
15767
15768Patch 7.3.941
15769Problem: Stuff in if_py_both.h is ordered badly.
15770Solution: Reorder by type. (ZyX)
15771Files: src/if_py_both.h, src/if_python.c
15772
15773Patch 7.3.942
15774Problem: Python: SEGV in Buffer functions.
15775Solution: Call CheckBuffer() at the right time. (ZyX)
15776Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
15777
15778Patch 7.3.943
15779Problem: Python: Negative indices were failing.
15780Solution: Fix negative indices. Add tests. (ZyX)
15781Files: src/if_py_both.h, src/if_python3.c, src/testdir/test86.in,
15782 src/testdir/test86.ok, src/testdir/test87.in,
15783 src/testdir/test87.ok
15784
15785Patch 7.3.944
Bram Moolenaar34401cc2014-08-29 15:12:19 +020015786Problem: External program receives the termresponse.
Bram Moolenaar913df812013-07-06 15:44:11 +020015787Solution: Insert a delay and discard input. (Hayaki Saito)
15788Files: src/term.c
15789
15790Patch 7.3.945
15791Problem: Python: List of buffers is not very useful.
15792Solution: Make vim.buffers a map. No iterator yet. (ZyX)
15793Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python3.c,
15794 src/if_python.c, src/testdir/test86.ok, src/testdir/test87.ok
15795
15796Patch 7.3.946
15797Problem: Sometimes get stuck in waiting for cursor position report,
15798 resulting in keys starting with <Esc>[ not working.
15799Solution: Only wait for more characters after <Esc>[ if followed by '?', '>'
15800 or a digit.
15801Files: src/term.c
15802
15803Patch 7.3.947
15804Problem: Python: No iterator for vim.list and vim.bufferlist.
15805Solution: Add the iterators. Also fix name of FunctionType. Add tests for
15806 vim.buffers. (ZyX)
15807Files: runtime/doc/if_pyth.txt, src/eval.c, src/if_py_both.h,
15808 src/if_python3.c, src/if_python.c, src/proto/eval.pro,
15809 src/testdir/test86.in, src/testdir/test86.ok,
15810 src/testdir/test87.in, src/testdir/test87.ok
15811
15812Patch 7.3.948
15813Problem: Cannot build with Python 2.2
15814Solution: Make Python interface work with Python 2.2
15815 Make 2.2 the first supported version. (ZyX)
15816Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
15817 src/testdir/test86.in, src/testdir/test86.ok,
15818 src/testdir/test87.ok, src/configure.in, src/auto/configure
15819
15820Patch 7.3.949
15821Problem: Python: no easy access to tabpages.
15822Solution: Add vim.tabpages and vim.current.tabpage. (ZyX)
15823Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python3.c,
15824 src/if_python.c, src/proto/if_python3.pro,
15825 src/proto/if_python.pro, src/proto/window.pro, src/structs.h,
15826 src/window.c
15827
15828Patch 7.3.950
15829Problem: Python: Stack trace printer can't handle messages.
15830Solution: Make KeyErrors use PyErr_SetObject. (ZyX)
15831Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
15832
15833Patch 7.3.951
15834Problem: Python exceptions have problems.
15835Solution: Change some IndexErrors to TypeErrors. Make “line number out of
15836 range” an IndexError. Make “unable to get option value” a
15837 RuntimeError. Make all PyErr_SetString messages start with
15838 lowercase letter and use _(). (ZyX)
15839Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
15840 src/testdir/test86.ok, src/testdir/test87.ok
15841
15842Patch 7.3.952
15843Problem: Python: It's not easy to change window/buffer/tabpage.
15844Solution: Add ability to assign to vim.current.{tabpage,buffer,window}.
15845 (ZyX)
15846Files: runtime/doc/if_pyth.txt, src/if_py_both.h
15847
15848Patch 7.3.953
15849Problem: Python: string exceptions are deprecated.
15850Solution: Make vim.error an Exception subclass. (ZyX)
15851Files: src/if_python.c, src/if_python3.c
15852
15853Patch 7.3.954
15854Problem: No check if PyObject_IsTrue fails.
15855Solution: Add a check for -1 value. (ZyX)
15856Files: src/if_py_both.h
15857
15858Patch 7.3.955
15859Problem: Python: Not enough tests.
15860Solution: Add tests for vim.{current,window*,tabpage*}. (ZyX)
15861Files: src/testdir/test86.in, src/testdir/test86.ok,
15862 src/testdir/test87.in, src/testdir/test87.ok
15863
15864Patch 7.3.956
15865Problem: Python vim.bindeval() causes SIGABRT.
15866Solution: Make pygilstate a local variable. (Yukihiro Nakadaira)
15867Files: src/if_py_both.h, src/if_python.c, src/if_python3.c
15868
15869Patch 7.3.957
15870Problem: Python does not have a "do" command like Perl or Lua.
15871Solution: Add the ":py3do" command. (Lilydjwg)
15872Files: runtime/doc/if_pyth.txt, src/ex_cmds.h, src/ex_docmd.c,
15873 src/if_python3.c, src/proto/if_python3.pro
15874
15875Patch 7.3.958
15876Problem: Python: Iteration destructor not set.
15877Solution: Put IterDestructor to use. (ZyX)
15878Files: src/if_py_both.c
15879
15880Patch 7.3.959 (after 7.3.957)
15881Problem: Missing error number.
15882Solution: Assign an error number.
15883Files: src/if_python3.c
15884
15885Patch 7.3.960
15886Problem: Compiler warning for unused variable.
15887Solution: Put declaration in #ifdef.
15888Files: src/window.c
15889
15890Patch 7.3.961
15891Problem: Tests 86 and 87 fail when using another language than English.
15892Solution: Set the language to C in the test. (Dominique Pelle)
15893Files: src/testdir/test86.in, src/testdir/test87.in,
15894 src/testdir/test87.ok
15895
15896Patch 7.3.962
15897Problem: Python tests are not portable.
15898Solution: Use shiftwidth instead of iminsert. (ZyX)
15899Files: src/testdir/test86.in, src/testdir/test86.ok,
15900 src/testdir/test87.in, src/testdir/test87.ok
15901
15902Patch 7.3.963
15903Problem: Setting curbuf without curwin causes trouble.
15904Solution: Add switch_buffer() and restore_buffer(). Block autocommands to
15905 avoid trouble.
15906Files: src/eval.c, src/proto/eval.pro, src/proto/window.pro,
15907 src/if_py_both.h, src/window.c, src/testdir/test86.ok
15908
15909Patch 7.3.964
15910Problem: Python: not so easy to access tab pages.
15911Solution: Add window.tabpage, make window.number work with non-current tab
15912 pages. (ZyX)
15913Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python3.c,
15914 src/if_python.c, src/testdir/test86.ok, src/testdir/test87.ok
15915
15916Patch 7.3.965
15917Problem: Python garbage collection not working properly.
15918Solution: Add support for garbage collection. (ZyX)
15919Files: src/if_py_both.h
15920
15921Patch 7.3.966
15922Problem: There is ":py3do" but no ":pydo".
15923Solution: Add the ":pydo" command. (Lilydjwg)
15924Files: runtime/doc/if_pyth.txt, src/ex_cmds.h, src/ex_docmd.c,
15925 src/if_py_both.h, src/if_python.c, src/if_python3.c,
15926 src/proto/if_python.pro
15927
15928Patch 7.3.967 (after 7.3.965)
15929Problem: Build fails on Mac OSX. (Greg Novack)
15930Solution: Undefine clear().
15931Files: src/if_py_both.h
15932
15933Patch 7.3.968
15934Problem: Multi-byte support is only available when compiled with "big"
15935 features.
Bram Moolenaar207f0092020-08-30 17:20:20 +020015936Solution: Include multibyte by default, with "normal" features.
Bram Moolenaar913df812013-07-06 15:44:11 +020015937Files: src/feature.h
15938
15939Patch 7.3.969
Bram Moolenaardd007ed2013-07-09 15:44:17 +020015940Problem: Can't build with Python 3 and without Python 2.
Bram Moolenaar913df812013-07-06 15:44:11 +020015941Solution: Adjust #ifdef. (Xavier de Gaye)
15942Files: src/window.c
15943
15944Patch 7.3.970
15945Problem: Syntax highlighting can be slow.
15946Solution: Include the NFA regexp engine. Add the 'regexpengine' option to
15947 select which one is used. (various authors, including Ken Takata,
15948 Andrei Aiordachioaie, Russ Cox, Xiaozhou Liua, Ian Young)
15949Files: src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
15950 src/Makefile, src/regexp.c, src/regexp.h, src/regexp_nfa.c,
15951 src/structs.h, src/testdir/Makefile, src/testdir/test64.in,
15952 src/testdir/test64.ok, Filelist, runtime/doc/pattern.txt,
15953 runtime/doc/option.txt, src/option.c, src/option.h,
15954 src/testdir/test95.in, src/testdir/test95.ok,
15955 src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
15956 src/testdir/Make_ming.mak, src/testdir/Make_os2.mak,
15957 src/testdir/Make_vms.mms, src/testdir/Makefile
15958
15959Patch 7.3.971
15960Problem: No support for VS2012 static code analysis.
15961Solution: Add the ANALYZE option. (Mike Williams)
15962Files: src/Make_mvc.mak
15963
15964Patch 7.3.972
15965Problem: Cursor not restored after InsertEnter autocommand if it moved to
15966 another line.
15967Solution: Also restore if the saved line number is still valid. Allow
15968 setting v:char to skip restoring.
15969Files: src/edit.c, runtime/doc/autocmd.txt
15970
15971Patch 7.3.973
15972Problem: Compiler warnings. Crash on startup. (Tony Mechelynck)
15973Solution: Change EMSG2 to EMSGN. Make array one character longer.
15974Files: src/regexp_nfa.c
15975
15976Patch 7.3.974
15977Problem: Can't build with ruby 1.8.5.
15978Solution: Only use ruby_init_stack() when RUBY_INIT_STACK is defined.
15979 (Yukihiro Nakadaira)
15980Files: src/if_ruby.c
15981
15982Patch 7.3.975
15983Problem: Crash in regexp parsing.
15984Solution: Correctly compute the end of allocated memory.
15985Files: src/regexp_nfa.c
15986
15987Patch 7.3.976
15988Problem: Can't build on HP-UX.
15989Solution: Remove modern initialization. (John Marriott)
15990Files: src/regexp_nfa.c
15991
15992Patch 7.3.977
15993Problem: Compiler warnings on 64 bit Windows.
15994Solution: Add type casts. (Mike Williams) Also fix some white space and
15995 uncomment what was commented-out for testing.
15996Files: src/regexp_nfa.c
15997
15998Patch 7.3.978
15999Problem: Regexp debug logs don't have a good name.
16000Solution: Use clear names and make it possible to write logs for the old and
16001 new engines separately. (Taro Muraoka)
16002Files: src/regexp.c, src/regexp_nfa.c
16003
16004Patch 7.3.979
16005Problem: Complex NFA regexp doesn't work.
16006Solution: Set actual state stack end instead of using an arbitrary number.
16007 (Yasuhiro Matsumoto)
16008Files: src/regexp_nfa.c
16009
16010Patch 7.3.980
16011Problem: Regexp logs may contain garbage. Character classes don't work
Bram Moolenaar207f0092020-08-30 17:20:20 +020016012 correctly for multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020016013Solution: Check for end of post list. Only use "is" functions for
16014 characters up to 255. (Ken Takata)
16015Files: src/regexp_nfa.c
16016
16017Patch 7.3.981
16018Problem: In the old regexp engine \i, \I, \f and \F don't work on
Bram Moolenaar207f0092020-08-30 17:20:20 +020016019 multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020016020Solution: Dereference pointer properly.
16021Files: src/regexp.c, src/testdir/test64.in, src/testdir/test64.ok
16022
16023Patch 7.3.982
Bram Moolenaar207f0092020-08-30 17:20:20 +020016024Problem: In the new regexp engine \p does not work on multibyte
Bram Moolenaar913df812013-07-06 15:44:11 +020016025 characters.
16026Solution: Don't point to an integer but the characters.
16027Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16028
16029Patch 7.3.983
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016030Problem: Unnecessary temp variable.
Bram Moolenaar913df812013-07-06 15:44:11 +020016031Solution: Remove the variable.
16032Files: src/regexp_nfa.c
16033
16034Patch 7.3.984
16035Problem: A Visual mapping that uses CTRL-G works differently when started
16036 from Insert mode. (Ein Brown)
16037Solution: Reset old_mapped_len when handling typed text in Select mode.
16038Files: src/normal.c
16039
16040Patch 7.3.985
16041Problem: GTK vim not started as gvim doesn't set WM_CLASS property to a
16042 useful value.
16043Solution: Call g_set_prgname() on startup. (James McCoy)
16044Files: src/gui_gtk_x11.c
16045
16046Patch 7.3.986
16047Problem: Test 95 doesn't pass when 'encoding' isn't utf-8. (Yasuhiro
16048 Matsumoto)
16049Solution: Force 'encoding' to be utf-8.
16050Files: src/testdir/test95.in
16051
16052Patch 7.3.987
16053Problem: No easy to run an individual test. Tests 64 fails when
16054 'encoding' is not utf-8.
16055Solution: Add individual test targets to the Makefile. Move some lines from
16056 test 64 to 95.
16057Files: src/Makefile, src/testdir/test64.in, src/testdir/test64.ok,
16058 src/testdir/test95.in, src/testdir/test95.ok
16059
16060Patch 7.3.988
16061Problem: New regexp engine is slow.
16062Solution: Break out of the loop when the state list is empty.
16063Files: src/regexp_nfa.c
16064
16065Patch 7.3.989
16066Problem: New regexp engine compares negative numbers to character.
16067Solution: Add missing case statements.
16068Files: src/regexp_nfa.c
16069
16070Patch 7.3.990
16071Problem: Memory leak in new regexp engine.
16072Solution: Jump to end of function to free memory. (Dominique Pelle)
16073Files: src/regexp_nfa.c
16074
16075Patch 7.3.991
16076Problem: More can be shared by Python 2 and 3.
16077Solution: Move more stuff to if_py_both. (ZyX)
16078Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
16079 src/testdir/test87.ok
16080
16081Patch 7.3.992
16082Problem: Python: Too many type casts.
16083Solution: Change argument types. (ZyX)
16084Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16085
16086Patch 7.3.993
16087Problem: Python: Later patch does things slightly differently.
16088Solution: Adjusted argument type changes. (ZyX)
16089Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16090
16091Patch 7.3.994
16092Problem: Python: using magic constants.
16093Solution: Use descriptive values for ml_flags. (ZyX)
16094Files: src/if_py_both.h, src/if_python3.c
16095
16096Patch 7.3.995
16097Problem: Python: Module initialization is duplicated.
16098Solution: Move to shared file. (ZyX)
16099Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16100
16101Patch 7.3.996
16102Problem: Python: Can't check types of what is returned by bindeval().
16103Solution: Add vim.List, vim.Dictionary and vim.Function types. (ZyX)
16104Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/testdir/test86.in,
16105 src/testdir/test86.ok, src/testdir/test87.in,
16106 src/testdir/test87.ok
16107
16108Patch 7.3.997
16109Problem: Vim and Python exceptions are different.
16110Solution: Make Vim exceptions be Python exceptions. (ZyX)
16111Files: src/if_py_both.h, src/testdir/test86.in, src/testdir/test86.ok,
16112 src/testdir/test87.in, src/testdir/test87.ok
16113
16114Patch 7.3.998
16115Problem: Python: garbage collection issues.
16116Solution: Fix the GC issues: Use proper DESTRUCTOR_FINISH: avoids negative
16117 refcounts, use PyObject_GC_* for objects with tp_traverse and
16118 tp_clear, add RangeTraverse and RangeClear, use Py_XDECREF in some
16119 places. (ZyX)
16120Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16121
16122Patch 7.3.999
16123Problem: New regexp engine sets curbuf temporarily.
16124Solution: Use reg_buf instead, like the old engine.
16125Files: src/regexp_nfa.c
16126
16127Patch 7.3.1000 (whoa!)
16128Problem: Typo in char value causes out of bounds access.
16129Solution: Fix character value. (Klemens Baum)
16130Files: src/regexp.c
16131
16132Patch 7.3.1001
16133Problem: Duplicate condition in if.
16134Solution: Remove one condition.
16135Files: src/regexp_nfa.c
16136
16137Patch 7.3.1002
16138Problem: Valgrind errors for Python interface.
16139Solution: Fix memory leaks when running tests. (ZyX)
16140Files: src/if_py_both.h
16141
16142Patch 7.3.1003
16143Problem: Python interface does not compile with Python 2.2
16144Solution: Fix thread issues and True/False. (ZyX)
16145Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
16146 src/testdir/test86.in, src/testdir/test86.ok,
16147 src/testdir/test87.in, src/testdir/test87.ok
16148
16149Patch 7.3.1004
16150Problem: No error when option could not be set.
16151Solution: Report an error. (ZyX)
16152Files: src/if_py_both.h, src/option.c, src/proto/option.pro,
16153 src/testdir/test86.ok, src/testdir/test87.ok
16154
16155Patch 7.3.1005
16156Problem: Get stuck on regexp "\n*" and on "%s/^\n\+/\r".
16157Solution: Fix handling of matching a line break. (idea by Hirohito Higashi)
16158Files: src/regexp_nfa.c
16159
16160Patch 7.3.1006
16161Problem: NFA engine not used for "\_[0-9]".
16162Solution: Enable this, fixed in patch 1005.
16163Files: src/regexp_nfa.c
16164
16165Patch 7.3.1007
16166Problem: Can't build on Minix 3.2.1.
16167Solution: Add a condition to an #ifdef. (Gautam Tirumala)
16168Files: src/memfile.c
16169
16170Patch 7.3.1008
16171Problem: Test 95 fails on MS-Windows.
Bram Moolenaar207f0092020-08-30 17:20:20 +020016172Solution: Set 'nomore'. Change \i to \f. Change multibyte character to
Bram Moolenaar913df812013-07-06 15:44:11 +020016173 something that is not matching \i. (Ken Takata)
16174Files: src/testdir/test95.in, src/testdir/test95.ok
16175
16176Patch 7.3.1009
16177Problem: Compiler warning for ambiguous else.
16178Solution: Add curly braces.
16179Files: src/if_py_both.h
16180
16181Patch 7.3.1010
16182Problem: New regexp: adding \Z makes every character match.
16183Solution: Only apply ireg_icombine for composing characters.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016184 Also add missing change from patch 1008. (Ken Takata)
Bram Moolenaar913df812013-07-06 15:44:11 +020016185Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16186
16187Patch 7.3.1011
Bram Moolenaar207f0092020-08-30 17:20:20 +020016188Problem: New regexp engine is inefficient with multibyte characters.
Bram Moolenaar913df812013-07-06 15:44:11 +020016189Solution: Handle a character at a time instead of a byte at a time. Also
16190 make \Z partly work.
16191Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16192
16193Patch 7.3.1012
16194Problem: \Z does not work properly with the new regexp engine.
16195Solution: Make \Z work. Add tests.
16196Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16197
16198Patch 7.3.1013
16199Problem: New regexp logging is a bit messy.
16200Solution: Consistently use #defines, add explanatory comment. (Taro Muraoka)
16201Files: src/regexp_nfa.c
16202
16203Patch 7.3.1014
16204Problem: New regexp state dump is hard to read.
16205Solution: Make the state dump more pretty. (Taro Muraoka)
16206Files: src/regexp_nfa.c
16207
16208Patch 7.3.1015
16209Problem: New regexp engine: Matching composing characters is wrong.
16210Solution: Fix matching composing characters.
16211Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16212
16213Patch 7.3.1016
16214Problem: Unused field in nfa_state.
16215Solution: Remove lastthread.
16216Files: src/regexp.h, src/regexp_nfa.c
16217
16218Patch 7.3.1017
16219Problem: Zero width match changes length of match.
16220Solution: For a zero width match put new states in the current position in
16221 the state list.
16222Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok,
16223 src/regexp.h
16224
16225Patch 7.3.1018
16226Problem: New regexp engine wastes memory.
16227Solution: Allocate prog with actual number of states, not estimated maximum
Bram Moolenaar53f7fcc2021-07-28 20:10:16 +020016228 number of states.
Bram Moolenaar913df812013-07-06 15:44:11 +020016229Files: src/regexp_nfa.c
16230
16231Patch 7.3.1019
16232Problem: These do not work with the new regexp engine: \%o123, \%x123,
16233 \%d123, \%u123 and \%U123.
16234Solution: Implement these items.
16235Files: src/regexp_nfa.c
16236
16237Patch 7.3.1020
16238Problem: Not all patterns are tested with auto / old / new engine.
16239Solution: Test patterns with three values of 'regexpengine'.
16240Files: src/testdir/test64.in, src/testdir/test64.ok,
16241 src/testdir/test95.in, src/testdir/test95.ok
16242
16243Patch 7.3.1021
16244Problem: New regexp engine does not ignore order of composing chars.
16245Solution: Ignore composing chars order.
16246Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16247
16248Patch 7.3.1022
16249Problem: Compiler warning for shadowed variable. (John Little)
16250Solution: Move declaration, rename variables.
16251Files: src/regexp_nfa.c
16252
16253Patch 7.3.1023
16254Problem: Searching for composing char only and using \Z has different
16255 results.
16256Solution: Make it match the composing char, matching everything is not
16257 useful.
16258Files: src/regexp_nfa.c, src/testdir/test95.in, src/testdir/test95.ok
16259
16260Patch 7.3.1024
16261Problem: New regexp: End of matching pattern not set correctly. (Cesar
16262 Romani)
16263Solution: Quit the loop after finding the match. Store nfa_has_zend in the
16264 program.
16265Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok,
16266 src/regexp.h
16267
16268Patch 7.3.1025
16269Problem: New regexp: not matching newline in string. (Marc Weber)
16270Solution: Check for "\n" character.
16271Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16272
16273Patch 7.3.1026
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016274Problem: New regexp: pattern that includes a new-line matches too early.
Bram Moolenaar3df01732017-02-17 22:47:16 +010016275 (John McGowan)
Bram Moolenaar913df812013-07-06 15:44:11 +020016276Solution: Do not start searching in the second line.
16277Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16278
16279Patch 7.3.1027
16280Problem: New regexp performance: Calling no_Magic() very often.
16281Solution: Remove magicness inline.
16282Files: src/regexp_nfa.c
16283
16284Patch 7.3.1028
16285Problem: New regexp performance: Copying a lot of position state.
16286Solution: Only copy the sub-expressions that are being used.
16287Files: src/regexp_nfa.c, src/regexp.h
16288
16289Patch 7.3.1029
16290Problem: New regexp performance: Unused position state being copied.
16291Solution: Keep track of which positions are actually valid.
16292Files: src/regexp_nfa.c
16293
16294Patch 7.3.1030 (after 7.3.1028)
16295Problem: Can't build for debugging.
16296Solution: Fix struct member names.
16297Files: src/regexp_nfa.c
16298
16299Patch 7.3.1031
16300Problem: Compiler warnings for shadowed variable. (John Little)
16301Solution: Move the variable declarations to the scope where they are used.
16302Files: src/regexp_nfa.c
16303
16304Patch 7.3.1032
16305Problem: "\ze" is not supported by the new regexp engine.
16306Solution: Make "\ze" work.
16307Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16308
16309Patch 7.3.1033
16310Problem: "\1" .. "\9" are not supported in the new regexp engine.
16311Solution: Implement them. Add a few more tests.
16312Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok,
16313 src/regexp.h
16314
16315Patch 7.3.1034
Bram Moolenaar207f0092020-08-30 17:20:20 +020016316Problem: New regexp code using strange multibyte code.
Bram Moolenaar913df812013-07-06 15:44:11 +020016317Solution: Use the normal code to advance and backup pointers.
16318Files: src/regexp_nfa.c
16319
16320Patch 7.3.1035
16321Problem: Compiler warning on 64 bit windows.
16322Solution: Add type cast. (Mike Williams)
16323Files: src/if_py_both.h
16324
16325Patch 7.3.1036
16326Problem: Can't build on HP-UX.
16327Solution: Give the union a name. (John Marriott)
16328Files: src/regexp_nfa.c
16329
16330Patch 7.3.1037
16331Problem: Look-behind matching is very slow on long lines.
16332Solution: Add a byte limit to how far back an attempt is made.
16333Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
16334 src/testdir/test64.ok
16335
16336Patch 7.3.1038
16337Problem: Crash when using Cscope.
16338Solution: Avoid negative argument to vim_strncpy(). (Narendran
16339 Gopalakrishnan)
16340Files: src/if_cscope.c
16341
16342Patch 7.3.1039
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020016343Problem: New regexp engine does not support \%23c, \%<23c and the like.
Bram Moolenaar913df812013-07-06 15:44:11 +020016344Solution: Implement them. (partly by Yasuhiro Matsumoto)
16345Files: src/regexp.h, src/regexp_nfa.c, src/testdir/test64.in,
16346 src/testdir/test64.ok
16347
16348Patch 7.3.1040
16349Problem: Python: Problems with debugging dynamic build.
16350Solution: Python patch 1. (ZyX)
16351Files: src/if_python.c, src/if_python3.c
16352
16353Patch 7.3.1041
16354Problem: Python: Invalid read valgrind errors.
16355Solution: Python patch 2: defer DICTKEY_UNREF until key is no longer needed.
16356 (ZyX)
16357Files: src/if_py_both.h
16358
16359Patch 7.3.1042
16360Problem: Python: can't assign to vim.Buffer.name.
16361Solution: Python patch 3. (ZyX)
16362Files: runtime/doc/if_pyth.txt, src/ex_cmds.c, src/if_py_both.h,
16363 src/if_python3.c, src/if_python.c, src/proto/ex_cmds.pro,
16364 src/testdir/test86.in, src/testdir/test86.ok,
16365 src/testdir/test87.in, src/testdir/test87.ok
16366
16367Patch 7.3.1043
16368Problem: Python: Dynamic compilation with 2.3 fails.
16369Solution: Python patch 4. (ZyX)
16370Files: src/if_python.c
16371
16372Patch 7.3.1044
16373Problem: Python: No {Buffer,TabPage,Window}.valid attributes.
16374Solution: Python patch 5: add .valid (ZyX)
16375Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
16376 src/testdir/test86.in, src/testdir/test86.ok,
16377 src/testdir/test87.in, src/testdir/test87.ok
16378
16379Patch 7.3.1045
16380Problem: Python: No error handling for VimToPython function.
16381Solution: Python patch 6. (ZyX)
16382Files: src/if_py_both.h
16383
16384Patch 7.3.1046
16385Problem: Python: Using Py_BuildValue for building strings.
16386Solution: Python patch 7 and 7.5: Replace Py_BuildValue with
16387 PyString_FromString. (ZyX)
16388Files: src/if_py_both.h
16389
16390Patch 7.3.1047
16391Problem: Python: dir() does not work properly.
16392Solution: Python patch 8. Add __dir__ method to all objects with custom
16393 tp_getattr supplemented by __members__ attribute for at least
16394 python-2* versions. __members__ is not mentioned in python-3*
16395 dir() output even if it is accessible. (ZyX)
16396Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
16397 src/testdir/test86.in, src/testdir/test86.ok,
16398 src/testdir/test87.in, src/testdir/test87.ok
16399
16400Patch 7.3.1048
16401Problem: Python: no consistent naming.
16402Solution: Python patch 9: Rename d to dict and lookupDict to lookup_dict.
16403 (ZyX)
16404Files: src/if_py_both.h
16405
16406Patch 7.3.1049
16407Problem: Python: no consistent naming
16408Solution: Python patch 10: Rename DICTKEY_GET_NOTEMPTY to DICTKEY_GET. (ZyX)
16409Files: src/if_py_both.h
16410
16411Patch 7.3.1050
16412Problem: Python: Typo in pyiter_to_tv.
16413Solution: Python patch 11. (ZyX)
16414Files: src/if_py_both.h
16415
16416Patch 7.3.1051
16417Problem: Python: possible memory leaks.
16418Solution: Python patch 12: fix the leaks (ZyX)
16419Files: src/if_py_both.h
16420
16421Patch 7.3.1052
16422Problem: Python: possible SEGV and negative refcount.
16423Solution: Python patch 13: Fix IterIter function. (ZyX)
16424Files: src/if_py_both.h
16425
16426Patch 7.3.1053
16427Problem: Python: no flag for types with tp_traverse+tp_clear.
16428Solution: Python patch 14: Add Py_TPFLAGS_HAVE_GC. (ZyX)
16429Files: src/if_py_both.h
16430
16431Patch 7.3.1054 (after 7.3.1042)
16432Problem: Can't build without the +autocmd feature. (Elimar Riesebieter)
16433Solution: Fix use of buf and curbuf.
16434Files: src/ex_cmds.c, src/testdir/test86.ok, src/testdir/test87.ok
16435
16436Patch 7.3.1055
16437Problem: Negated collection does not match newline.
16438Solution: Handle newline differently. (Hiroshi Shirosaki)
16439Files: src/regexp_nfa.c, src/testdir/test64.ok, src/testdir/test64.in
16440
16441Patch 7.3.1056
16442Problem: Python: possible memory leaks.
16443Solution: Python patch 15. (ZyX) Fix will follow later.
16444Files: src/eval.c, src/if_py_both.h, src/proto/eval.pro
16445
16446Patch 7.3.1057
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016447Problem: Python: not enough compatibility.
Bram Moolenaar913df812013-07-06 15:44:11 +020016448Solution: Python patch 16: Make OutputWritelines support any sequence object
16449 (ZyX) Note: tests fail
16450Files: src/if_py_both.h, src/testdir/test86.in, src/testdir/test86.ok,
16451 src/testdir/test87.in, src/testdir/test87.ok
16452
16453Patch 7.3.1058
16454Problem: Call of funcref does not succeed in other script.
16455Solution: Python patch 17: add get_expanded_name(). (ZyX)
16456Files: src/eval.c, src/proto/eval.pro
16457
16458Patch 7.3.1059
16459Problem: Python: Using fixed size buffers.
16460Solution: Python patch 18: Use python's own formatter. (ZyX)
16461Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16462
16463Patch 7.3.1060
16464Problem: Python: can't repr() a function.
16465Solution: Python patch 19: add FunctionRepr(). (ZyX)
16466Files: src/if_py_both.h
16467
16468Patch 7.3.1061
16469Problem: Python: Dictionary is not standard.
16470Solution: Python patch 20: Add standard methods and fields. (ZyX)
16471Files: runtime/doc/if_pyth.txt, src/eval.c, src/if_py_both.h,
16472 src/if_python3.c, src/if_python.c, src/proto/eval.pro,
16473 src/testdir/test86.in, src/testdir/test86.ok,
16474 src/testdir/test87.in, src/testdir/test87.ok
16475
16476Patch 7.3.1062
16477Problem: Python: List is not standard.
16478Solution: Python patch 21: Add standard methods and fields. (ZyX)
16479Files: src/if_py_both.h, src/testdir/test86.in, src/testdir/test86.ok,
16480 src/testdir/test87.in, src/testdir/test87.ok
16481
16482Patch 7.3.1063
16483Problem: Python: Function is not standard.
16484Solution: Python patch 22: make Function subclassable. (ZyX)
16485Files: src/eval.c, src/if_py_both.h, src/proto/eval.pro,
16486 src/testdir/test86.in, src/testdir/test86.ok,
16487 src/testdir/test87.in, src/testdir/test87.ok
16488
16489Patch 7.3.1064
16490Problem: Python: insufficient error checking.
16491Solution: Python patch 23. (ZyX)
16492Files: src/if_py_both.h
16493
16494Patch 7.3.1065
16495Problem: Python: key mapping is not standard.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016496Solution: Python patch 24: use PyMapping_Keys. (ZyX)
Bram Moolenaar913df812013-07-06 15:44:11 +020016497Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
16498
16499Patch 7.3.1066
16500Problem: Python: Insufficient exception and error testing.
16501Solution: Python patch 25. (ZyX)
16502Files: src/testdir/test86.in, src/testdir/test86.ok,
16503 src/testdir/test87.in, src/testdir/test87.ok
16504
16505Patch 7.3.1067
16506Problem: Python: documentation lags behind.
16507Solution: Python patch 26. (ZyX)
16508Files: runtime/doc/if_pyth.txt
16509
16510Patch 7.3.1068
16511Problem: Python: Script is auto-loaded on function creation.
16512Solution: Python patch 27. (ZyX)
16513Files: src/eval.c, src/if_py_both.h, src/proto/eval.pro,
16514 src/testdir/test86.ok, src/testdir/test87.ok, src/vim.h
16515
16516Patch 7.3.1069
16517Problem: Python: memory leaks.
16518Solution: Python patch 28: Purge out DICTKEY_CHECK_EMPTY macros. (ZyX)
16519Files: src/if_py_both.h
16520
16521Patch 7.3.1070
16522Problem: Vim crashes in Python tests. Compiler warning for unused function.
16523Solution: Disable the tests for now. Move the function.
16524Files: src/if_py_both.h, src/if_python.c, src/testdir/test86.in,
16525 src/testdir/test87.in
16526
16527Patch 7.3.1071
16528Problem: New regexp engine: backreferences don't work correctly.
16529Solution: Add every possible start/end position on the state stack.
16530Files: src/regexp_nfa.c, src/regexp.h, src/testdir/test64.in,
16531 src/testdir/test64.ok
16532
16533Patch 7.3.1072
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016534Problem: Compiler warning for uninitialized variable.
Bram Moolenaar913df812013-07-06 15:44:11 +020016535Solution: Initialize it.
16536Files: src/regexp_nfa.c
16537
16538Patch 7.3.1073
16539Problem: New regexp engine may run out of states.
16540Solution: Allocate states dynamically. Also make the test report errors.
16541Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok,
16542 src/testdir/test95.in
16543
16544Patch 7.3.1074
16545Problem: Compiler warning for printf format. (Manuel Ortega)
16546Solution: Add type casts.
16547Files: src/if_py_both.h
16548
16549Patch 7.3.1075
16550Problem: Compiler warning for storing a long_u in an int.
16551Solution: Declare the number as an int. (Mike Williams)
16552Files: src/regexp_nfa.c
16553
16554Patch 7.3.1076
16555Problem: New regexp engine: \@= and \& don't work.
16556Solution: Make these items work. Add column info to logging.
16557Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16558
16559Patch 7.3.1077
16560Problem: Python: Allocating dict the wrong way, causing a crash.
16561Solution: Use py_dict_alloc(). Fix some exception problems. (ZyX)
16562Files: src/if_py_both.h
16563
16564Patch 7.3.1078
16565Problem: New regexp engine: \@! doesn't work.
16566Solution: Implement the negated version of \@=.
16567Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16568
16569Patch 7.3.1079
16570Problem: Test 87 fails.
16571Solution: Fix the test for Python 3.3. (ZyX) Make it pass on 32 bit systems.
16572Files: src/testdir/test87.in, src/testdir/test87.ok
16573
16574Patch 7.3.1080
16575Problem: Test 86 fails.
16576Solution: Comment out the parts that don't work. Make it pass on 32 bit
16577 systems.
16578Files: src/testdir/test86.in, src/testdir/test86.ok
16579
16580Patch 7.3.1081
16581Problem: Compiler warnings on 64-bit Windows.
16582Solution: Change variable types. (Mike Williams)
16583Files: src/if_py_both.h, src/regexp_nfa.c
16584
16585Patch 7.3.1082
16586Problem: New regexp engine: Problem with \@= matching.
16587Solution: Save and restore nfa_match.
16588Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16589
16590Patch 7.3.1083
16591Problem: New regexp engine: Does not support \%^ and \%$.
16592Solution: Support matching start and end of file.
16593Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16594
16595Patch 7.3.1084
16596Problem: New regexp engine: only accepts up to \{,10}.
16597Solution: Remove upper limit. Remove dead code with NFA_PLUS.
16598Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16599
16600Patch 7.3.1085
16601Problem: New regexp engine: Non-greedy multi doesn't work.
16602Solution: Implement \{-}.
16603Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16604
16605Patch 7.3.1086
16606Problem: Old regexp engine accepts illegal range, new one doesn't.
16607Solution: Also accept the illegal range with the new engine.
16608Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16609
16610Patch 7.3.1087
16611Problem: A leading star is not seen as a normal char when \{} follows.
16612Solution: Save and restore the parse state properly.
16613Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
16614 src/testdir/test64.ok
16615
16616Patch 7.3.1088
16617Problem: New regexp engine: \@<= and \@<! are not implemented.
16618Solution: Implement look-behind matching. Fix off-by-one error in old
16619 regexp engine.
16620Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
16621 src/testdir/test64.ok
16622
16623Patch 7.3.1089
16624Problem: Tests 86 and 87 fail on MS-Windows. (Ken Takata)
16625Solution: Fix platform-specific stuff. (ZyX)
16626Files: src/testdir/test86.in, src/testdir/test86.ok,
16627 src/testdir/test87.in, src/testdir/test87.ok
16628
16629Patch 7.3.1090
16630Problem: New regexp engine does not support \z1 .. \z9 and \z(.
16631Solution: Implement the syntax submatches.
16632Files: src/regexp.h, src/regexp_nfa.c
16633
16634Patch 7.3.1091
16635Problem: New regexp engine: no error when using \z1 or \z( where it does
16636 not work.
16637Solution: Give an error message.
16638Files: src/regexp.c, src/regexp_nfa.c
16639
16640Patch 7.3.1092
16641Problem: Can't build with regexp debugging. NFA debug output shows wrong
16642 pattern.
16643Solution: Fix debugging code for recent changes. Add the pattern to the
16644 program.
16645Files: src/regexp_nfa.c, src/regexp.h
16646
16647Patch 7.3.1093
16648Problem: New regexp engine: When a sub expression is empty \1 skips a
16649 character.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016650Solution: Make \1 try the current position when the match is empty.
Bram Moolenaar913df812013-07-06 15:44:11 +020016651Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16652
16653Patch 7.3.1094
16654Problem: New regexp engine: Attempts to match "^" at every character.
16655Solution: Only try "^" at the start of a line.
16656Files: src/regexp_nfa.c
16657
16658Patch 7.3.1095
16659Problem: Compiler warnings for shadowed variables. (Christian Brabandt)
16660Solution: Rename new_state() to alloc_state(). Remove unnecessary
16661 declaration.
16662Files: src/regexp_nfa.c
16663
16664Patch 7.3.1096
16665Problem: Python: popitem() was not defined in a standard way.
16666Solution: Remove the argument from popitem(). (ZyX)
16667Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/testdir/test86.in,
16668 src/testdir/test86.ok, src/testdir/test87.in,
16669 src/testdir/test87.ok
16670
16671Patch 7.3.1097
16672Problem: Python: a few recently added items are not documented.
16673Solution: Update the documentation. (ZyX)
16674Files: runtime/doc/if_pyth.txt
16675
16676Patch 7.3.1098
16677Problem: Python: Possible memory leaks
16678Solution: Add Py_XDECREF() calls. (ZyX)
16679Files: src/if_py_both.h
16680
16681Patch 7.3.1099
16682Problem: Python: Changing directory with os.chdir() causes problems for
16683 Vim's notion of directories.
16684Solution: Add vim.chdir() and vim.fchdir(). (ZyX)
16685Files: runtime/doc/if_pyth.txt, src/ex_docmd.c, src/if_py_both.h,
16686 src/if_python3.c, src/if_python.c, src/proto/ex_docmd.pro,
16687 src/testdir/test86.in, src/testdir/test86.ok,
16688 src/testdir/test87.in, src/testdir/test87.ok
16689
16690Patch 7.3.1100
16691Problem: Python: a few more memory problems.
16692Solution: Add and remove Py_XDECREF(). (ZyX)
16693Files: src/if_py_both.h, src/testdir/test86.in, src/testdir/test86.ok,
16694 src/testdir/test87.in, src/testdir/test87.ok
16695
16696Patch 7.3.1101
16697Problem: Configure doesn't find Python 3 on Ubuntu 13.04.
16698Solution: First try distutils.sysconfig. Also fix some indents. (Ken
16699 Takata)
16700Files: src/configure.in, src/auto/configure
16701
16702Patch 7.3.1102
16703Problem: Completion of ":py3do" and ":py3file" does not work after ":py3".
16704Solution: Make completion work. (Taro Muraoka)
16705Files: src/ex_docmd.c
16706
16707Patch 7.3.1103
16708Problem: New regexp engine: overhead in saving and restoring.
16709Solution: Make saving and restoring list IDs faster. Don't copy or check \z
16710 subexpressions when they are not used.
16711Files: src/regexp_nfa.c
16712
16713Patch 7.3.1104
16714Problem: New regexp engine does not handle "~".
16715Solution: Add support for "~".
16716Files: src/regexp_nfa.c, src/testdir/test24.in, src/testdir/test24.ok
16717
16718Patch 7.3.1105
16719Problem: New regexp engine: too much code in one function. Dead code.
16720Solution: Move the recursive nfa_regmatch call to a separate function.
16721 Remove the dead code.
16722Files: src/regexp_nfa.c
16723
16724Patch 7.3.1106
16725Problem: New regexp engine: saving and restoring lastlist in the states
16726 takes a lot of time.
16727Solution: Use a second lastlist value for the first recursive call.
16728Files: src/regexp.h, src/regexp_nfa.c
16729
16730Patch 7.3.1107
16731Problem: Compiler warnings for unused variables.
16732Solution: Put the variables inside #ifdef.
16733Files: src/regexp.c, src/regexp_nfa.c
16734
16735Patch 7.3.1108
16736Problem: Error message for os.fchdir() (Charles Peacech)
16737Solution: Clear the error. (ZyX)
16738Files: src/if_py_both.h
16739
16740Patch 7.3.1109
16741Problem: Building on MS-Windows doesn't see changes in if_py_both.h.
16742Solution: Add a dependency. (Ken Takata)
16743Files: src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
16744 src/Make_mvc.mak
16745
16746Patch 7.3.1110
16747Problem: New regexp matching: Using \@= and the like can be slow.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016748Solution: Decide whether to first try matching the zero-width part or what
Bram Moolenaar913df812013-07-06 15:44:11 +020016749 follows, whatever is more likely to fail.
16750Files: src/regexp_nfa.c
16751
16752Patch 7.3.1111
16753Problem: nfa_recognize_char_class() implementation is inefficient.
16754Solution: Use bits in an int instead of chars in a string. (Dominique Pelle)
16755Files: src/regexp_nfa.c, src/testdir/test36.in, src/testdir/test36.ok
16756
16757Patch 7.3.1112
16758Problem: New regexp engine: \%V not supported.
16759Solution: Implement \%V. Add tests.
16760Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
16761 src/testdir/test64.ok
16762
16763Patch 7.3.1113
16764Problem: New regexp engine: \%'m not supported.
16765Solution: Implement \%'m. Add tests.
16766Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
16767 src/testdir/test64.ok
16768
16769Patch 7.3.1114 (after 7.3.1110)
16770Problem: Can't build without the syntax feature.
16771Solution: Add #ifdefs. (Erik Falor)
16772Files: src/regexp_nfa.c
16773
16774Patch 7.3.1115
16775Problem: Many users don't like the cursor line number when 'relativenumber'
16776 is set.
16777Solution: Have four combinations with 'number' and 'relativenumber'.
16778 (Christian Brabandt)
16779Files: runtime/doc/options.txt, src/option.c, src/screen.c,
16780 src/testdir/test89.in, src/testdir/test89.ok
16781
16782Patch 7.3.1116
16783Problem: Can't build without Visual mode.
16784Solution: Add #ifdefs.
16785Files: src/regexp_nfa.c
16786
16787Patch 7.3.1117
16788Problem: New regexp engine: \%[abc] not supported.
16789Solution: Implement \%[abc]. Add tests.
16790Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16791
16792Patch 7.3.1118
16793Problem: Match failure rate is not very specific.
16794Solution: Tune the failure rate for match items.
16795Files: src/regexp_nfa.c
16796
16797Patch 7.3.1119
16798Problem: Flags in 'cpo' are search for several times.
16799Solution: Store the result and re-use the flags.
16800Files: src/regexp.c, src/regexp_nfa.c
16801
16802Patch 7.3.1120
16803Problem: Crash when regexp logging is enabled.
16804Solution: Avoid using NULL pointers. Advance over count argument.
16805Files: src/regexp.c, src/regexp_nfa.c
16806
16807Patch 7.3.1121
16808Problem: New regexp engine: adding states that are not used.
16809Solution: Don't add the states.
16810Files: src/regexp_nfa.c
16811
16812Patch 7.3.1122
16813Problem: New regexp engine: \@> not supported.
16814Solution: Implement \%>.
16815Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
16816
16817Patch 7.3.1123
16818Problem: Can't build tiny Vim on MS-Windows.
16819Solution: Adjust #ifdef around using modif_fname(). (Mike Williams)
16820Files: src/misc1.c
16821
16822Patch 7.3.1124
16823Problem: Python: Crash on MS-Windows when os.fchdir() is not available.
16824Solution: Check for _chdir to be NULL. (Ken Takata)
16825Files: src/if_py_both.h
16826
16827Patch 7.3.1125
16828Problem: Error for using \%V in a pattern in tiny Vim.
16829Solution: Allow using \%V but never match. (Dominique Pelle)
16830Files: src/regexp_nfa.c
16831
16832Patch 7.3.1126
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016833Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
Bram Moolenaar913df812013-07-06 15:44:11 +020016834Solution: Assign something to the variable.
16835Files: src/regexp_nfa.c
16836
16837Patch 7.3.1127
16838Problem: No error for using empty \%[].
16839Solution: Give error message.
16840Files: src/regexp.c, src/regexp_nfa.c
16841
16842Patch 7.3.1128
16843Problem: Now that the NFA engine handles everything every failure is a
16844 syntax error.
16845Solution: Remove the syntax_error flag.
16846Files: src/regexp.c, src/regexp_nfa.c
16847
16848Patch 7.3.1129
16849Problem: Can't see what pattern in syntax highlighting is slow.
16850Solution: Add the ":syntime" command.
16851Files: src/structs.h, src/syntax.c, src/ex_cmds.h, src/ex_docmd.c,
16852 src/proto/syntax.pro, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
16853 runtime/doc/syntax.txt
16854
16855Patch 7.3.1130 (after 7.3.1129)
16856Problem: Can't build with anything but huge features.
16857Solution: Check for FEAT_PROFILE. (Yasuhiro Matsumoto)
16858Files: src/ex_docmd.c, src/structs.h, src/syntax.c
16859
16860Patch 7.3.1131
16861Problem: New regexp engine is a bit slow.
16862Solution: Do not clear the state list. Don't copy syntax submatches when
16863 not used.
16864Files: src/regexp_nfa.c
16865
16866Patch 7.3.1132
16867Problem: Crash when debugging regexp.
16868Solution: Do not try to dump subexpr that were not set. Skip over count of
16869 \% items.
16870Files: src/regexp.c, src/regexp_nfa.c
16871
16872Patch 7.3.1133
16873Problem: New regexp engine is a bit slow.
16874Solution: Skip ahead to a character that must match. Don't try matching a
16875 "^" patter past the start of line.
16876Files: src/regexp_nfa.c, src/regexp.h
16877
16878Patch 7.3.1134
16879Problem: Running test 49 takes a long time.
16880Solution: Don't have it grep all files.
16881Files: src/testdir/test49.vim
16882
16883Patch 7.3.1135
16884Problem: Compiler warning for unused argument.
16885Solution: Add UNUSED.
16886Files: src/syntax.c
16887
16888Patch 7.3.1136
16889Problem: ":func Foo" does not show attributes.
16890Solution: Add "abort", "dict" and "range". (Yasuhiro Matsumoto)
16891Files: src/eval.c
16892
16893Patch 7.3.1137
16894Problem: New regexp engine: collections are slow.
16895Solution: Handle all characters in one go.
16896Files: src/regexp_nfa.c
16897
16898Patch 7.3.1138
16899Problem: New regexp engine: neglist no longer used.
16900Solution: Remove the now unused neglist.
16901Files: src/regexp_nfa.c
16902
16903Patch 7.3.1139
16904Problem: New regexp engine: negated flag is hardly used.
16905Solution: Add separate _NEG states, remove negated flag.
16906Files: src/regexp_nfa.c, src/regexp.h
16907
16908Patch 7.3.1140
16909Problem: New regexp engine: trying expensive match while the result is not
16910 going to be used.
16911Solution: Check for output state already being in the state list.
16912Files: src/regexp_nfa.c
16913
16914Patch 7.3.1141
16915Problem: Win32: Check for available memory is not reliable and adds
16916 overhead.
16917Solution: Remove mch_avail_mem(). (Mike Williams)
16918Files: src/os_win32.c, src/os_win32.h
16919
16920Patch 7.3.1142
16921Problem: Memory leak in ":syntime report".
16922Solution: Clear the grow array. (Dominique Pelle)
16923Files: src/syntax.c
16924
16925Patch 7.3.1143
16926Problem: When mapping NUL it is displayed as an X.
16927Solution: Check for KS_ZERO instead of K_ZERO. (Yasuhiro Matsumoto)
16928Files: src/message.c
16929
16930Patch 7.3.1144
16931Problem: "RO" is not translated everywhere.
16932Solution: Put inside _(). (Sergey Alyoshin)
16933Files: src/buffer.c, src/screen.c
16934
16935Patch 7.3.1145
16936Problem: New regexp engine: addstate() is called very often.
16937Solution: Optimize adding the start state.
16938Files: src/regexp_nfa.c
16939
16940Patch 7.3.1146
16941Problem: New regexp engine: look-behind match not checked when followed by
16942 zero-width match.
16943Solution: Do the look-behind match before adding the zero-width state.
16944Files: src/regexp_nfa.c
16945
16946Patch 7.3.1147
16947Problem: New regexp engine: regstart is only used to find the first match.
16948Solution: Use regstart whenever adding the start state.
16949Files: src/regexp_nfa.c
16950
16951Patch 7.3.1148
16952Problem: No command line completion for ":syntime".
16953Solution: Implement the completion. (Dominique Pelle)
16954Files: runtime/doc/map.txt, src/ex_cmds.h, src/ex_docmd.c,
16955 src/ex_getln.c, src/proto/syntax.pro, src/syntax.c, src/vim.h
16956
16957Patch 7.3.1149
16958Problem: New regexp engine: Matching plain text could be faster.
16959Solution: Detect a plain text match and handle it specifically. Add
16960 vim_regfree().
16961Files: src/regexp.c, src/regexp.h, src/regexp_nfa.c,
16962 src/proto/regexp.pro, src/buffer.c, src/edit.c, src/eval.c,
16963 src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
16964 src/ex_getln.c, src/fileio.c, src/gui.c, src/misc1.c, src/misc2.c,
16965 src/option.c, src/syntax.c, src/quickfix.c, src/search.c,
16966 src/spell.c, src/tag.c, src/window.c, src/screen.c, src/macros.h,
16967 src/testdir/test64.in, src/testdir/test64.ok
16968
16969Patch 7.3.1150
16970Problem: New regexp engine: Slow when a look-behind match does not have a
16971 width specified.
16972Solution: Try to compute the maximum width.
16973Files: src/regexp_nfa.c
16974
16975Patch 7.3.1151
16976Problem: New regexp engine: Slow when a look-behind match is followed by a
16977 zero-width match.
16978Solution: Postpone the look-behind match more often.
16979Files: src/regexp_nfa.c
16980
16981Patch 7.3.1152
16982Problem: In tiny build ireg_icombine is undefined. (Tony Mechelynck)
16983Solution: Add #ifdef.
16984Files: src/regexp_nfa.c
16985
16986Patch 7.3.1153
16987Problem: New regexp engine: Some look-behind matches are very expensive.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016988Solution: Postpone invisible matches further, until a match is almost found.
Bram Moolenaar913df812013-07-06 15:44:11 +020016989Files: src/regexp_nfa.c
16990
16991Patch 7.3.1154
Bram Moolenaardd007ed2013-07-09 15:44:17 +020016992Problem: New regexp_nfa engine: Unnecessary code.
16993Solution: Remove unnecessary code.
Bram Moolenaar913df812013-07-06 15:44:11 +020016994Files: src/regexp_nfa.c
16995
16996Patch 7.3.1155
16997Problem: MS-DOS: "make test" uses external rmdir command.
16998Solution: Rename "rmdir" to "rd". (Taro Muraoka)
16999Files: src/testdir/Make_dos.mak
17000
17001Patch 7.3.1156
17002Problem: Compiler warnings. (dv1445)
17003Solution: Initialize variables, even when the value isn't really used.
17004Files: src/regexp_nfa.c, src/eval.c
17005
17006Patch 7.3.1157
17007Problem: New regexp engine fails on "\(\<command\)\@<=.*"
17008Solution: Fix rule for postponing match. Further tune estimating whether
17009 postponing works better. Add test.
17010Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17011
17012Patch 7.3.1158
17013Problem: Crash when running test 86. (Jun Takimoto)
17014Solution: Define PY_SSIZE_T_CLEAN early. (Elimar Riesebieter)
17015Files: src/if_python.c, src/if_python3.c
17016
17017Patch 7.3.1159
17018Problem: The round() function is not always available. (Christ van
17019 Willegen)
17020Solution: Use the solution from f_round().
17021Files: src/ex_cmds2.c, src/eval.c, src/proto/eval.pro
17022
17023Patch 7.3.1160
17024Problem: Mixing long and pointer doesn't always work.
17025Solution: Avoid cast to pointer.
17026Files: src/undo.c
17027
17028Patch 7.3.1161
17029Problem: Python: PyList_SetItem() is inefficient.
17030Solution: Use PyList_SET_ITEM() (ZyX)
17031Files: src/if_py_both.h
17032
17033Patch 7.3.1162
17034Problem: Python: Memory leaks
17035Solution: Add more Py_DECREF(). (ZyX)
17036Files: src/if_py_both.h, src/if_python.c
17037
17038Patch 7.3.1163
17039Problem: Not easy to load Python modules.
17040Solution: Search "python2", "python3" and "pythonx" directories in
17041 'runtimepath' for Python modules. (ZyX)
17042Files: runtime/doc/if_pyth.txt, src/configure.in, src/ex_cmds2.c,
17043 src/if_py_both.h, src/if_python.c, src/if_python3.c,
17044 src/testdir/test86.in, src/testdir/test87.in, src/auto/configure
17045
17046Patch 7.3.1164
17047Problem: Can't test what is actually displayed on screen.
17048Solution: Add the screenchar() and screenattr() functions.
17049Files: src/eval.c, runtime/doc/eval.txt
17050
17051Patch 7.3.1165
17052Problem: HP-UX compiler can't handle zero size array. (Charles Cooper)
17053Solution: Make the array one item big.
17054Files: src/regexp.h, src/regexp_nfa.c
17055
17056Patch 7.3.1166
17057Problem: Loading Python modules is not tested.
17058Solution: Enable commented-out tests, add missing files. (ZyX)
17059Files: src/testdir/test86.in, src/testdir/test86.ok,
17060 src/testdir/test87.in, src/testdir/test87.ok,
17061 src/testdir/python2/module.py, src/testdir/python3/module.py,
17062 src/testdir/pythonx/module.py, src/testdir/pythonx/modulex.py,
17063 Filelist
17064
17065Patch 7.3.1167
17066Problem: Python configure check doesn't reject Python 2 when requesting
17067 Python 3. Some systems need -pthreads instead of -pthread.
17068Solution: Adjust configure accordingly. (Andrei Olsen)
17069Files: src/configure.in, src/auto/configure
17070
17071Patch 7.3.1168
17072Problem: Python "sane" configure checks give a warning message.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017073Solution: Use single quotes instead of escaped double quotes. (Ben Fritz)
Bram Moolenaar913df812013-07-06 15:44:11 +020017074Files: src/configure.in, src/auto/configure
17075
17076Patch 7.3.1169
17077Problem: New regexp engine: some work is done while executing a pattern,
17078 even though the result is predictable.
17079Solution: Do the work while compiling the pattern.
17080Files: src/regexp_nfa.c
17081
17082Patch 7.3.1170
17083Problem: Patch 7.3.1058 breaks backwards compatibility, not possible to use
17084 a function reference as a string. (lilydjwg)
17085Solution: Instead of translating the function name only translate "s:".
17086Files: src/eval.c
17087
17088Patch 7.3.1171
17089Problem: Check for digits and ascii letters can be faster.
17090Solution: Use a trick with one comparison. (Dominique Pelle)
17091Files: src/macros.h
17092
17093Patch 7.3.1172
17094Problem: Python 2: loading modules doesn't work well.
17095Solution: Fix the code. Add more tests. (ZyX)
17096Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python.c,
17097 src/testdir/python2/module.py, src/testdir/python3/module.py,
17098 src/testdir/python_after/after.py,
17099 src/testdir/python_before/before.py, src/testdir/test86.in,
17100 src/testdir/test86.ok, src/testdir/test87.in,
17101 src/testdir/test87.ok, Filelist
17102
17103Patch 7.3.1173
17104Problem: Python 2 tests don't have the same output everywhere.
17105Solution: Make the Python 2 tests more portable. (ZyX)
17106Files: src/testdir/test86.in, src/testdir/test86.ok
17107
17108Patch 7.3.1174
17109Problem: Python 2 and 3 use different ways to load modules.
17110Solution: Use the same method. (ZyX)
17111Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python3.c,
17112 src/if_python.c
17113
17114Patch 7.3.1175
17115Problem: Using isalpha() and isalnum() can be slow.
17116Solution: Use range checks. (Mike Williams)
17117Files: src/ex_docmd.c, src/macros.h
17118
17119Patch 7.3.1176
17120Problem: Compiler warnings on 64 bit system.
17121Solution: Add type casts. (Mike Williams)
17122Files: src/eval.c, src/if_py_both.h
17123
17124Patch 7.3.1177
17125Problem: Wasting memory on padding.
17126Solution: Reorder struct fields. (Dominique Pelle)
17127Files: src/structs.h, src/fileio.c
17128
17129Patch 7.3.1178
17130Problem: Can't put all Vim config files together in one directory.
17131Solution: Load ~/.vim/vimrc if ~/.vimrc does not exist. (Lech Lorens)
17132Files: runtime/doc/gui.txt, runtime/doc/starting.txt, src/gui.c,
17133 src/main.c, src/os_amiga.h, src/os_dos.h, src/os_unix.h
17134
17135Patch 7.3.1179
17136Problem: When a global mapping starts with the same characters as a
17137 buffer-local mapping Vim waits for a character to be typed to find
17138 out whether the global mapping is to be used. (Andy Wokula)
17139Solution: Use the local mapping without waiting. (Michael Henry)
17140Files: runtime/doc/map.txt, src/getchar.c
17141
17142Patch 7.3.1180
17143Problem: When current directory changes, path from cscope may no longer be
17144 valid. (AS Budden)
17145Solution: Always store the absolute path. (Christian Brabandt)
17146Files: src/if_cscope.c
17147
17148Patch 7.3.1181
17149Problem: Wrong error message for 1.0[0].
17150Solution: Check for funcref and float separately. (Yasuhiro Matsumoto)
17151Files: src/eval.c
17152
17153Patch 7.3.1182
17154Problem: 'backupcopy' default on MS-Windows does not work for hard and soft
17155 links.
17156Solution: Check for links. (David Pope, Ken Takata)
17157Files: src/fileio.c, src/os_win32.c, src/proto/os_win32.pro
17158
17159Patch 7.3.1183
17160Problem: Python tests 86 and 87 fail.
17161Solution: Add "empty" files. (ZyX)
17162Files: src/testdir/python_before/before_1.py,
17163 src/testdir/python_before/before_2.py
17164
17165Patch 7.3.1184
17166Problem: Highlighting is sometimes wrong. (Axel Bender)
17167Solution: Fetch regline again when returning from recursive regmatch.
17168Files: src/regexp_nfa.c
17169
17170Patch 7.3.1185
17171Problem: New regexp engine: no match with ^ after \n. (SungHyun Nam)
17172Solution: Fix it, add a test.
17173Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17174
17175Patch 7.3.1186
17176Problem: Python 3: test 87 may crash.
17177Solution: Use _PyArg_Parse_SizeT instead of PyArg_Parse. (Jun Takimoto)
17178Files: src/if_python3.c
17179
17180Patch 7.3.1187 (after 7.3.1170)
17181Problem: "s:" is recognized but "<SID>" is not. (ZyX)
17182Solution: Translate "<SID>" like "s:".
17183Files: src/eval.c
17184
17185Patch 7.3.1188
17186Problem: Newline characters messing up error message.
17187Solution: Remove the newlines. (Kazunobu Kuriyama)
17188Files: src/gui_x11.c
17189
17190Patch 7.3.1189 (after 7.3.1185)
17191Problem: Highlighting is still wrong sometimes. (Dominique Pelle)
17192Solution: Also restore reginput properly.
17193Files: src/regexp_nfa.c
17194
17195Patch 7.3.1190
17196Problem: Compiler warning for parentheses. (Christian Wellenbrock)
17197Solution: Change #ifdef.
17198Files: src/ex_docmd.c
17199
17200Patch 7.3.1191
17201Problem: Backreference to previous line doesn't work. (Lech Lorens)
17202Solution: Implement looking in another line.
17203Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
17204 src/testdir/test64.ok
17205
17206Patch 7.3.1192
17207Problem: Valgrind reports errors when using backreferences. (Dominique
17208 Pelle)
17209Solution: Do not check the end of submatches.
17210Files: src/regexp_nfa.c
17211
17212Patch 7.3.1193
17213Problem: fail_if_missing not used for Python 3.
17214Solution: Give an error when Python 3 can't be configured. (Andrei Olsen)
17215Files: src/configure.in, src/auto/configure
17216
17217Patch 7.3.1194
17218Problem: Yaml highlighting is slow.
17219Solution: Tune the estimation of pattern failure chance.
17220Files: src/regexp_nfa.c
17221
17222Patch 7.3.1195
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017223Problem: Compiler warning for uninitialized variable. (Tony Mechelynck)
Bram Moolenaar913df812013-07-06 15:44:11 +020017224Solution: Set the length to the matching backref.
17225Files: src/regexp.c
17226
17227Patch 7.3.1196
17228Problem: Old regexp engine does not match pattern with backref correctly.
17229 (Dominique Pelle)
17230Solution: Fix setting status. Test multi-line patterns better.
17231Files: src/regexp.c, src/testdir/test64.in, src/testdir/test64.ok
17232
17233Patch 7.3.1197
17234Problem: ":wviminfo!" does not write history previously read from a viminfo
17235 file. (Roland Eggner)
17236Solution: When not merging history write all entries.
17237Files: src/ex_cmds.c, src/ex_getln.c, src/proto/ex_getln.pro
17238
17239Patch 7.3.1198
17240Problem: Build error when using Perl 5.18.0 and dynamic loading.
17241Solution: Change #ifdefs for Perl_croak_xs_usage. (Ike Devolder)
17242Files: src/if_perl.xs
17243
17244Patch 7.3.1199
17245Problem: When evaluating 'foldexpr' causes an error this is silently
17246 ignored and evaluation is retried every time.
17247Solution: Set emsg_silent instead of emsg_off. Stop evaluating 'foldexpr' is
17248 it is causing errors. (Christian Brabandt)
17249Files: src/fold.c
17250
17251Patch 7.3.1200
17252Problem: When calling setline() from Insert mode, using CTRL-R =, undo does
17253 not work properly. (Israel Chauca)
17254Solution: Sync undo after evaluating the expression. (Christian Brabandt)
17255Files: src/edit.c, src/testdir/test61.in, src/testdir/test61.ok
17256
17257Patch 7.3.1201
17258Problem: When a startup script creates a preview window, it probably
17259 becomes the current window.
17260Solution: Make another window the current one. (Christian Brabandt)
17261Files: src/main.c
17262
17263Patch 7.3.1202 (after 7.3.660)
17264Problem: Tags are not found in case-folded tags file. (Darren cole, Issue
17265 90)
17266Solution: Take into account that when case folding was used for the tags
17267 file "!rm" sorts before the "!_TAG" header lines.
17268Files: src/tag.c
17269
17270Patch 7.3.1203
17271Problem: Matches from matchadd() might be highlighted incorrectly when they
17272 are at a fixed position and inserting lines. (John Szakmeister)
17273Solution: Redraw all lines below a change if there are highlighted matches.
17274 (idea by Christian Brabandt)
17275Files: src/screen.c
17276
17277Patch 7.3.1204
17278Problem: Calling gettabwinvar() in 'tabline' cancels Visual mode. (Hirohito
17279 Higashi)
17280Solution: Don't always use goto_tabpage_tp().
17281Files: src/window.c, src/proto/window.pro, src/eval.c, src/if_py_both.h
17282
17283Patch 7.3.1205
17284Problem: logtalk.dict is not removed on uninstall.
17285Solution: Remove the file. (Kazunobu Kuriyama)
17286Files: src/Makefile
17287
17288Patch 7.3.1206
17289Problem: Inconsistent function argument declarations.
17290Solution: Use ANSI style.
17291Files: src/if_py_both.h
17292
17293Patch 7.3.1207
17294Problem: New regexp engine: no match found on "#if FOO". (Lech Lorens)
17295Solution: When adding a state gets skipped don't adjust the index.
17296Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17297
17298Patch 7.3.1208
17299Problem: Compiler warnings on MS-Windows.
17300Solution: Add type cast. Move variable declaration. (Mike Williams)
17301Files: src/option.c, src/os_mswin.c
17302
17303Patch 7.3.1209
17304Problem: No completion for ":tabdo".
17305Solution: Add tabdo to the list of modifiers. (Dominique Pelle)
17306Files: src/ex_docmd.c
17307
17308Patch 7.3.1210 (after 7.3.1182)
17309Problem: 'backupcopy' default on MS-Windows is wrong when 'encoding' equals
17310 the current codepage.
17311Solution: Change the #else block. (Ken Takata)
17312Files: src/os_win32.c
17313
17314Patch 7.3.1211
17315Problem: MS-Windows: When 'encoding' differs from the current codepage
17316 ":hardcopy" does not work properly.
17317Solution: Use TextOutW() and SetDlgItemTextW(). (Ken Takata)
17318Files: src/os_mswin.c, src/vim.rc
17319
17320Patch 7.3.1212
17321Problem: "make test" on MS-Windows does not report failure like Unix does.
17322Solution: Make it work like on Unix. (Taro Muraoka)
17323Files: src/testdir/Make_dos.mak
17324
17325Patch 7.3.1213
17326Problem: Can't build with small features and Python.
17327Solution: Adjust #ifdefs.
17328Files: src/eval.c, src/buffer.c, src/eval.c, src/window.c
17329
17330Patch 7.3.1214
17331Problem: Missing declaration for init_users() and realloc_post_list().
17332 (Salman Halim)
17333Solution: Add the declarations.
17334Files: src/misc1.c, src/regexp_nfa.c
17335
17336Patch 7.3.1215
17337Problem: Compiler warning for function not defined.
17338Solution: Add #ifdef.
17339Files: src/misc1.c
17340
17341Patch 7.3.1216
17342Problem: Configure can't find Motif on Ubuntu.
17343Solution: Search for libXm in /usr/lib/*-linux-gnu.
17344Files: src/configure.in, src/auto/configure
17345
17346Patch 7.3.1217
17347Problem: New regexp engine: Can't handle \%[[ao]]. (Yukihiro Nakadaira)
17348Solution: Support nested atoms inside \%[].
17349Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17350
17351Patch 7.3.1218
17352Problem: "make test" on MS-Windows does not clean all temporary files and
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017353 gives some unnecessary message.
Bram Moolenaar913df812013-07-06 15:44:11 +020017354Solution: Clean the right files. Create .failed files. (Ken Takata)
17355Files: src/testdir/Make_dos.mak
17356
17357Patch 7.3.1219
17358Problem: No test for using []] inside \%[].
17359Solution: Add a test.
17360Files: src/testdir/test64.in, src/testdir/test64.ok
17361
17362Patch 7.3.1220
17363Problem: MS-Windows: When using wide font italic and bold are not included.
17364Solution: Support wide-bold, wide-italic and wide-bold-italic. (Ken Takata,
17365 Taro Muraoka)
17366Files: src/gui.c, src/gui.h, src/gui_w48.c
17367
17368Patch 7.3.1221
17369Problem: When build flags change "make distclean" run into a configure
17370 error.
17371Solution: When CFLAGS changes delete auto/config.cache. Also avoid adding
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017372 duplicate text to flags. (Ken Takata)
Bram Moolenaar913df812013-07-06 15:44:11 +020017373Files: src/Makefile, src/configure.in, src/auto/configure
17374
17375Patch 7.3.1222
17376Problem: Cannot execute some tests from the src directly.
17377Solution: Add missing targets.
17378Files: src/Makefile
17379
17380Patch 7.3.1223
17381Problem: Tests fail on MS-Windows.
17382Solution: Avoid depending on OS version. Use DOS commands instead of Unix
17383 commands. (Taro Muraoka, Ken Takata)
17384Files: src/testdir/test17.in, src/testdir/test50.in,
17385 src/testdir/test71.in, src/testdir/test77.in
17386
17387Patch 7.3.1224
17388Problem: Clang gives warnings on xxd.
17389Solution: Change how to use part of a string. (Dominique Pelle) Also avoid
17390 warning for return not reached.
17391Files: src/xxd/xxd.c, src/regexp_nfa.c
17392
17393Patch 7.3.1225
17394Problem: Compiler warnings when building with Motif.
17395Solution: Change set_label() argument. (Kazunobu Kuriyama)
17396Files: src/gui_motif.c
17397
17398Patch 7.3.1226
17399Problem: Python: duplicate code.
17400Solution: Share code between OutputWrite() and OutputWritelines(). (ZyX)
17401Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok
17402
17403Patch 7.3.1227
17404Problem: Inconsistent string conversion.
17405Solution: Use 'encoding' instead of utf-8. Use METH_O in place of
17406 METH_VARARGS where appropriate. (ZyX)
17407Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok
17408
17409Patch 7.3.1228
17410Problem: Python: various inconsistencies and problems.
17411Solution: StringToLine now supports both bytes() and unicode() objects.
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017412 Make function names consistent. Fix memory leak fixed in
Bram Moolenaar913df812013-07-06 15:44:11 +020017413 StringToLine. (ZyX)
17414Files: src/if_py_both.h, src/if_python3.c, src/if_python.c
17415
17416Patch 7.3.1229
17417Problem: Python: not so easy to delete/restore translating.
17418Solution: Make macros do translation of exception messages. (ZyX)
17419 Note: this breaks translations!
17420Files: src/if_py_both.h, src/if_python3.c
17421
17422Patch 7.3.1230
17423Problem: Python: Exception messages are not clear.
17424Solution: Make exception messages more verbose. (ZyX)
17425Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
17426 src/testdir/test86.ok, src/testdir/test87.ok
17427
17428Patch 7.3.1231
17429Problem: Python: use of numbers not consistent.
17430Solution: Add support for Number protocol. (ZyX)
17431Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
17432 src/testdir/test86.ok, src/testdir/test87.ok
17433
17434Patch 7.3.1232
17435Problem: Python: inconsistencies in variable names.
17436Solution: Rename variables. (ZyX)
17437Files: src/eval.c, src/if_py_both.h
17438
17439Patch 7.3.1233
17440Problem: Various Python problems.
17441Solution: Fix VimTryEnd. Crash with debug build and PYTHONDUMPREFS=1. Memory
17442 leaks in StringToLine(), BufferMark() and convert_dl. (ZyX)
17443Files: src/if_py_both.h, src/testdir/test86.in, src/testdir/test86.ok,
17444 src/testdir/test87.in, src/testdir/test87.ok
17445
17446Patch 7.3.1234 (after 7.3.1229)
17447Problem: Python: Strings are not marked for translation.
17448Solution: Add N_() where appropriate. (ZyX)
17449Files: src/if_py_both.h
17450
17451Patch 7.3.1235
17452Problem: In insert mode CTRL-] is not inserted, on the command-line it is.
17453Solution: Don't insert CTRL-] on the command line. (Yukihiro Nakadaira)
17454Files: src/ex_getln.c
17455
17456Patch 7.3.1236
17457Problem: Python: WindowSetattr() missing support for NUMBER_UNSIGNED.
17458Solution: Add NUMBER_UNSIGNED, add more tests. Various fixes. (ZyX)
17459Files: src/if_py_both.h, src/if_python3.c, src/if_python.c,
17460 src/testdir/pythonx/failing.py,
17461 src/testdir/pythonx/failing_import.py, src/testdir/test86.in,
17462 src/testdir/test86.ok, src/testdir/test87.in,
17463 src/testdir/test87.ok, src/testdir/pythonx/topmodule/__init__.py,
17464 src/testdir/pythonx/topmodule/submodule/__init__.py,
17465 src/testdir/pythonx/topmodule/submodule/subsubmodule/__init__.py,
17466 src/testdir/pythonx/topmodule/submodule/subsubmodule/subsubsubmodule.py
17467
17468Patch 7.3.1237
17469Problem: Python: non-import errors not handled correctly.
17470Solution: Let non-ImportError exceptions pass the finder. (ZyX)
17471Files: src/if_py_both.h, src/testdir/test86.ok, src/testdir/test87.ok
17472
17473Patch 7.3.1238
17474Problem: Crash in Python interface on 64 bit machines.
17475Solution: Change argument type of PyString_AsStringAndSize. (Taro Muraoka,
17476 Jun Takimoto)
17477Files: src/if_python.c
17478
17479Patch 7.3.1239
17480Problem: Can't build with Python and MSVC10.
17481Solution: Move #if outside of macro. (Taro Muraoka)
17482Files: src/if_py_both.h
17483
17484Patch 7.3.1240
17485Problem: Memory leak in findfile().
17486Solution: Free the memory. (Christian Brabandt)
17487Files: src/eval.c
17488
17489Patch 7.3.1241 (after 7.3.1236)
17490Problem: Some test files missing from the distribution.
17491Solution: Update the list of files.
17492Files: Filelist
17493
17494Patch 7.3.1242
17495Problem: No failure when trying to use a number as a string.
17496Solution: Give an error when StringToLine() is called with an instance of
17497 the wrong type. (Jun Takimoto)
17498Files: src/if_py_both.h
17499
17500Patch 7.3.1243
17501Problem: New regexp engine: back references in look-behind match don't
17502 work. (Lech Lorens)
17503Solution: Copy the submatches before a recursive match. Also fix function
17504 prototypes.
17505Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17506
17507Patch 7.3.1244
17508Problem: MS-Windows: confirm() dialog text may not fit.
17509Solution: Use GetTextWidthEnc() instead of GetTextWidth(). (Yasuhiro
17510 Matsumoto)
17511Files: src/gui_w32.c
17512
17513Patch 7.3.1245
17514Problem: MS-Windows: confirm() dialog text may still not fit.
17515Solution: Use GetTextWidthEnc() instead of GetTextWidth() in two more
17516 places. (Yasuhiro Matsumoto)
17517Files: src/gui_w32.c
17518
17519Patch 7.3.1246
17520Problem: When setting 'winfixheight' and resizing the window causes the
17521 window layout to be wrong.
17522Solution: Add frame_check_height() and frame_check_width() (Yukihiro
17523 Nakadaira)
17524Files: src/window.c
17525
17526Patch 7.3.1247
17527Problem: New regexp engine: '[ ]\@!\p\%([ ]\@!\p\)*:' does not always match.
17528Solution: When there is a PIM add a duplicate state that starts at another
17529 position.
17530Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
17531
17532Patch 7.3.1248
17533Problem: Still have old hacking code for Input Method.
17534Solution: Add 'imactivatefunc' and 'imstatusfunc' as a generic solution to
17535 Input Method activation. (Yukihiro Nakadaira)
17536Files: runtime/doc/options.txt, src/fileio.c, src/mbyte.c, src/option.c,
17537 src/option.h, src/proto/fileio.pro
17538
17539Patch 7.3.1249
17540Problem: Modeline not recognized when using "Vim" instead of "vim".
17541Solution: Also accept "Vim".
17542Files: src/buffer.c
17543
17544Patch 7.3.1250
17545Problem: Python tests fail on MS-Windows.
17546Solution: Change backslashes to slashes. (Taro Muraoka)
17547Files: src/testdir/test86.in, src/testdir/test87.in
17548
17549Patch 7.3.1251
17550Problem: Test 61 messes up viminfo.
17551Solution: Specify a separate viminfo file.
17552Files: src/testdir/test61.in
17553
17554Patch 7.3.1252
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020017555Problem: gvim does not find the toolbar bitmap files in ~/vimfiles/bitmaps
Bram Moolenaar913df812013-07-06 15:44:11 +020017556 if the corresponding menu command contains additional characters
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020017557 like the shortcut marker '&' or if you use a non-english locale.
Bram Moolenaar913df812013-07-06 15:44:11 +020017558Solution: Use menu->en_dname or menu->dname. (Martin Gieseking)
17559Files: src/gui_w32.c
17560
17561Patch 7.3.1253 (after 7.3.1200)
17562Problem: Still undo problem after using CTRL-R = setline(). (Hirohito
17563 Higashi)
17564Solution: Set the ins_need_undo flag.
17565Files: src/edit.c
17566
17567Patch 7.3.1254 (after 7.3.1252)
17568Problem: Can't build without the multi-lang feature. (John Marriott)
17569Solution: Add #ifdef.
17570Files: src/gui_w32.c
17571
17572Patch 7.3.1255
17573Problem: Clang warnings when building with Athena.
17574Solution: Add type casts. (Dominique Pelle)
17575Files: src/gui_at_fs.c
17576
17577Patch 7.3.1256
17578Problem: Can't build without eval or autocmd feature.
17579Solution: Add #ifdefs.
17580Files: src/mbyte.c, src/window.c
17581
17582Patch 7.3.1257
17583Problem: With GNU gettext() ":lang de_DE.utf8" does not always result in
17584 German messages.
17585Solution: Clear the $LANGUAGE environment variable.
17586Files: src/ex_cmds2.c
17587
17588Patch 7.3.1258
17589Problem: Using submatch() may crash Vim. (Ingo Karkat)
17590Solution: Restore the number of subexpressions used.
17591Files: src/regexp_nfa.c
17592
17593Patch 7.3.1259
17594Problem: No test for patch 7.3.1258
17595Solution: Add a test entry.
17596Files: src/testdir/test64.in, src/testdir/test64.ok
17597
17598Patch 7.3.1260
17599Problem: User completion does not get the whole command line in the command
17600 line window.
17601Solution: Pass on the whole command line. (Daniel Thau)
17602Files: src/ex_getln.c, src/structs.h
17603
17604Patch 7.3.1261 (after patch 7.3.1179)
17605Problem: A buffer-local language mapping from a keymap stops a global
17606 insert mode mapping from working. (Ron Aaron)
17607Solution: Do not wait for more characters to be typed only when the mapping
17608 was defined with <nowait>.
17609Files: runtime/doc/map.txt, src/eval.c, src/getchar.c,
17610 src/testdir/test75.in, src/testdir/test75.ok
17611
17612Patch 7.3.1262
17613Problem: Crash and compilation warnings with Cygwin.
17614Solution: Check return value of XmbTextListToTextProperty(). Add type casts.
17615 Adjust #ifdefs. (Lech Lorens)
17616Files: src/main.c, src/os_unix.c, src/ui.c
17617
17618Patch 7.3.1263
17619Problem: Typo in short option name.
17620Solution: Change "imse" to "imsf".
17621Files: src/option.c
17622
17623Patch 7.3.1264 (after 7.3.1261)
17624Problem: Missing m_nowait.
17625Solution: Include missing part of the patch.
17626Files: src/structs.h
17627
17628Patch 7.3.1265 (after 7.3.1249)
17629Problem: Accepting "Vim:" for a modeline causes errors too often.
17630Solution: Require "Vim:" to be followed by "set".
17631Files: src/buffer.c
17632
17633Patch 7.3.1266
17634Problem: QNX: GUI fails to start.
17635Solution: Remove the QNX-specific #ifdef. (Sean Boudreau)
17636Files: src/gui.c
17637
17638Patch 7.3.1267
17639Problem: MS-Windows ACL support doesn't work well.
17640Solution: Implement more ACL support. (Ken Takata)
17641Files: src/os_win32.c
17642
17643Patch 7.3.1268
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017644Problem: ACL support doesn't work when compiled with MingW.
Bram Moolenaar913df812013-07-06 15:44:11 +020017645Solution: Support ACL on MingW. (Ken Takata)
17646Files: src/os_win32.c, src/os_win32.h
17647
17648Patch 7.3.1269
17649Problem: Insert completion keeps entry selected even though the list has
17650 changed. (Olivier Teuliere)
17651Solution: Reset compl_shown_match and compl_curr_match. (Christian Brabandt)
17652Files: src/edit.c
17653
17654Patch 7.3.1270
17655Problem: Using "Vp" in an empty buffer can't be undone. (Hauke Petersen)
17656Solution: Save one line in an empty buffer. (Christian Brabandt)
17657Files: src/ops.c
17658
17659Patch 7.3.1271 (after 7.3.1260)
17660Problem: Command line completion does not work.
17661Solution: Move setting xp_line down. (Daniel Thau)
17662Files: src/ex_getln.c
17663
17664Patch 7.3.1272
17665Problem: Crash when editing Ruby file. (Aliaksandr Rahalevich)
17666Solution: Reallocate the state list when necessary.
17667Files: src/regexp_nfa.c
17668
17669Patch 7.3.1273
17670Problem: When copying a location list the index might be wrong.
17671Solution: Set the index to one when using the first entry. (Lech Lorens)
17672Files: src/quickfix.c
17673
17674Patch 7.3.1274
17675Problem: When selecting an entry from a location list it may pick an
17676 arbitrary window or open a new one.
17677Solution: Prefer using a window related to the location list. (Lech Lorens)
17678Files: src/quickfix.c
17679
17680Patch 7.3.1275
17681Problem: "gn" does not work when the match is a single character.
17682Solution: Fix it, add a test. (Christian Brabandt)
17683Files: src/search.c, src/testdir/test53.in, src/testdir/test53.ok
17684
17685Patch 7.3.1276
17686Problem: When using a cscope connection resizing the window may send
17687 SIGWINCH to cscope and it quits.
17688Solution: Call setpgid(0, 0) in the child process. (Narendran Gopalakrishnan)
17689Files: src/if_cscope.c
17690
17691Patch 7.3.1277
17692Problem: In diff mode 'cursorline' also draws in the non-active window.
17693 When 'nu' and 'sbr' are set the 'sbr' string is not underlined.
17694Solution: Only draw the cursor line in the current window. Combine the
17695 'cursorline' and other highlighting attributes. (Christian
17696 Brabandt)
17697Files: src/screen.c
17698
17699Patch 7.3.1278
17700Problem: When someone sets the screen size to a huge value with "stty" Vim
17701 runs out of memory before reducing the size.
17702Solution: Limit Rows and Columns in more places.
17703Files: src/gui.c, src/gui_gtk_x11.c, src/option.c, src/os_unix.c,
17704 src/proto/term.pro, src/term.c
17705
17706Patch 7.3.1279
17707Problem: Compiler warning for variable uninitialized. (Tony Mechelynck)
17708Solution: Add an init.
17709Files: src/ex_getln.c
17710
17711Patch 7.3.1280
17712Problem: Reading memory already freed since patch 7.3.1247. (Simon
17713 Ruderich, Dominique Pelle)
17714Solution: Copy submatches before reallocating the state list.
17715Files: src/regexp_nfa.c
17716
17717Patch 7.3.1281
17718Problem: When 'ttymouse' is set to "xterm2" clicking in column 123 moves
17719 the cursor to column 96. (Kevin Goodsell)
17720Solution: Decode KE_CSI.
17721Files: src/term.c
17722
17723Patch 7.3.1282 (after 7.3.1277)
17724Problem: 'cursorline' not drawn in any other window. (Charles Campbell)
17725Solution: Do draw the cursor line in other windows.
17726Files: src/screen.c
17727
17728Patch 7.3.1283
17729Problem: Test 71 fails on MS-Windows.
17730Solution: Put the binary data in a separate file. (Ken Takata)
17731Files: src/testdir/test71.in, src/testdir/test71a.in
17732
17733Patch 7.3.1284
17734Problem: Compiler warnings in MS-Windows clipboard handling.
17735Solution: Add type casts. (Ken Takata)
17736Files: src/winclip.c
17737
17738Patch 7.3.1285
17739Problem: No tests for picking a window when selecting an entry in a
17740 location list. Not picking the right window sometimes.
17741Solution: Add test 96. Set usable_win appropriately. (Lech Lorens)
17742Files: src/quickfix.c, src/testdir/Makefile, src/testdir/test96.in,
17743 src/testdir/test96.ok, src/testdir/Make_amiga.mak,
17744 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
17745 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
17746
17747Patch 7.3.1286
17748Problem: Check for screen size missing for Athena and Motif.
17749Solution: Add call to limit_screen_size().
17750Files: src/gui_x11.c
17751
17752Patch 7.3.1287
17753Problem: Python SystemExit exception is not handled properly.
17754Solution: Catch the exception and give an error. (Yasuhiro Matsumoto, Ken
17755 Takata)
17756Files: runtime/doc/if_pyth.txt, src/if_py_both.h, src/if_python.c,
17757 src/if_python3.c
17758
17759Patch 7.3.1288
17760Problem: The first ":echo 'hello'" command output doesn't show. Mapping
17761 for <S-F3> gets triggered during startup.
17762Solution: Add debugging code for the termresponse. When receiving the "Co"
17763 entry and when setting 'ambiwidth' redraw right away if possible.
17764 Add redraw_asap(). Don't set 'ambiwidth' if it already had the
17765 right value. Do the 'ambiwidth' check in the second row to avoid
17766 confusion with <S-F3>.
17767Files: src/term.c, src/screen.c, src/proto/screen.pro
17768
17769Patch 7.3.1289
17770Problem: Get GLIB warning when removing a menu item.
17771Solution: Reference menu-id and also call gtk_container_remove(). (Ivan
17772 Krasilnikov)
17773Files: src/gui_gtk.c
17774
17775Patch 7.3.1290 (after 7.3.1253)
17776Problem: CTRL-R = in Insert mode changes the start of the insert position.
17777 (Ingo Karkat)
17778Solution: Only break undo, don't start a new insert.
17779Files: src/edit.c
17780
17781Patch 7.3.1291 (after 7.3.1288)
17782Problem: Compiler warnings for uninitialized variables. (Tony Mechelynck)
17783Solution: Initialize the variables.
17784Files: src/screen.c
17785
17786Patch 7.3.1292
Bram Moolenaardd007ed2013-07-09 15:44:17 +020017787Problem: Possibly using invalid pointer when searching for window. (Raichoo)
Bram Moolenaar913df812013-07-06 15:44:11 +020017788Solution: Use "firstwin" instead of "tp_firstwin" for current tab.
17789Files: src/window.c
17790
17791Patch 7.3.1293
17792Problem: Put in empty buffer cannot be undone.
17793Solution: Save one more line for undo. (Ozaki)
17794Files: src/ops.c
17795
17796Patch 7.3.1294
17797Problem: ":diffoff" resets options.
17798Solution: Save and restore option values. (Christian Brabandt)
17799Files: src/diff.c, src/structs.h, src/option.c
17800
17801Patch 7.3.1295
17802Problem: glob() and globpath() do not handle escaped special characters
17803 properly.
17804Solution: Handle escaped characters differently. (Adnan Zafar)
17805Files: src/testdir/Makefile, src/testdir/test97.in,
17806 src/testdir/test97.ok, src/testdir/Make_amiga.mak,
17807 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
17808 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms, src/fileio.c,
17809 src/misc1.c
17810
17811Patch 7.3.1296
17812Problem: Only MS-Windows limits the GUI window size to what fits on the
17813 monitor.
17814Solution: Limit the size for all systems. (Daniel Harding)
17815Files: src/ui.c
17816
17817Patch 7.3.1297
17818Problem: findfile() directory matching does not work when a star follows
17819 text. (Markus Braun)
17820Solution: Make a wildcard work properly. (Christian Brabandt)
17821Files: src/misc2.c, src/testdir/test89.in, src/testdir/test89.ok
17822
17823Patch 7.3.1298 (after 7.3.1297)
17824Problem: Crash.
17825Solution: Use STRCPY() instead of STRCAT() and allocate one more byte.
17826Files: src/misc2.c
17827
17828Patch 7.3.1299
17829Problem: Errors when doing "make proto". Didn't do "make depend" for a
17830 while.
17831Solution: Add #ifdefs. Update dependencies. Update proto files.
17832Files: src/if_python3.c, src/os_win32.c, src/Makefile,
17833 src/proto/ex_docmd.pro, src/proto/if_python.pro,
17834 src/proto/if_python3.pro, src/proto/gui_w16.pro,
17835 src/proto/gui_w32.pro, src/proto/os_win32.pro
17836
17837Patch 7.3.1300
17838Problem: Mac: tiny and small build fails.
17839Solution: Don't include os_macosx.m in tiny build. Include mouse support in
17840 small build. (Kazunobu Kuriyama)
17841Files: src/configure.in, src/auto/configure, src/vim.h
17842
17843Patch 7.3.1301
17844Problem: Some tests fail on MS-Windows.
17845Solution: Fix path separators in test 89 and 96. Omit test 97, escaping
17846 works differently. Make findfile() work on MS-Windows.
17847Files: src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
17848 src/testdir/Make_os2.mak, src/testdir/test89.in,
17849 src/testdir/test96.in, src/misc2.c
17850
17851Patch 7.3.1302
17852Problem: Test 17 fails on MS-Windows. Includes line break in file name
17853 everywhere.
17854Solution: Fix 'fileformat'. Omit CR-LF from a line read from an included
17855 file.
17856Files: src/search.c, src/testdir/test17.in, src/testdir/test17.ok
17857
17858Patch 7.3.1303 (after 7.3.1290)
17859Problem: Undo is synced whenever CTRL-R = is called, breaking some plugins.
17860Solution: Only break undo when calling setline() or append().
17861Files: src/globals.h, src/eval.c, src/edit.c, src/testdir/test61.in,
17862 src/testdir/test61.ok
17863
17864Patch 7.3.1304
17865Problem: Test 89 still fails on MS-Windows.
17866Solution: Set 'shellslash'. (Taro Muraoka)
17867Files: src/testdir/test89.in
17868
17869Patch 7.3.1305
17870Problem: Warnings from 64 bit compiler.
17871Solution: Add type casts.
17872Files: src/misc2.c
17873
17874Patch 7.3.1306
17875Problem: When redrawing the screen during startup the intro message may be
17876 cleared.
17877Solution: Redisplay the intro message when appropriate.
17878Files: src/screen.c, src/version.c, src/proto/version.pro
17879
17880Patch 7.3.1307
17881Problem: MS-Windows build instructions are outdated.
17882Solution: Adjust for building on Windows 7. Drop Windows 95/98/ME support.
17883Files: Makefile, nsis/gvim.nsi
17884
17885Patch 7.3.1308
17886Problem: Typos in MS-Windows build settings and README.
17887Solution: Minor changes to MS-Windows files.
17888Files: src/msvc2008.bat, src/msvc2010.bat, src/VisVim/README_VisVim.txt
17889
17890Patch 7.3.1309
17891Problem: When a script defines a function the flag to wait for the user to
17892 hit enter is reset.
17893Solution: Restore the flag. (Yasuhiro Matsumoto) Except when the user was
17894 typing the function.
17895Files: src/eval.c
17896
17897Patch 7.3.1310
17898Problem: Typos in nsis script. Can use better compression.
17899Solution: Fix typos. Use lzma compression. (Ken Takata)
17900Files: nsis/gvim.nsi
17901
17902Patch 7.3.1311
17903Problem: Compiler warnings on Cygwin.
17904Solution: Add type casts. Add windows include files. (Ken Takata)
17905Files: src/mbyte.c, src/ui.c
17906
17907Patch 7.3.1312 (after 7.3.1287)
17908Problem: Not giving correct error messages for SystemExit().
17909Solution: Move E858 into an else. (Ken Takata)
17910Files: src/if_py_both.h
17911
17912Patch 7.3.1313
17913Problem: :py and :py3 don't work when compiled with Cygwin or MingW with 64
17914 bit.
17915Solution: Add -DMS_WIN64 to the build command. (Ken Takata)
17916Files: src/Make_cyg.mak, src/Make_ming.mak
17917
17918Patch 7.3.1314
17919Problem: Test 87 fails with Python 3.3.
17920Solution: Filter the error messages. (Taro Muraoka)
17921Files: src/testdir/test87.in
17922
Bram Moolenaar1a42b4b2013-07-28 18:29:08 +020017923Patch 7.4a.001
17924Problem: Script to update syntax menu is outdated.
17925Solution: Add the missing items.
17926Files: runtime/makemenu.vim
Bram Moolenaar913df812013-07-06 15:44:11 +020017927
Bram Moolenaar1a42b4b2013-07-28 18:29:08 +020017928Patch 7.4a.002
17929Problem: Valgrind errors in test 89. (Simon Ruderich)
17930Solution: Allocate one more byte. (Dominique Pelle)
17931Files: src/misc2.c
Bram Moolenaar913df812013-07-06 15:44:11 +020017932
Bram Moolenaar1a42b4b2013-07-28 18:29:08 +020017933Patch 7.4a.003
17934Problem: Copyright year is outdated.
17935Solution: Only use the first year.
17936Files: src/vim.rc, src/vim16.rc
17937
17938Patch 7.4a.004
17939Problem: MSVC 2012 Update 3 is not recognized.
17940Solution: Add the version number. (Raymond Ko)
17941Files: src/Make_mvc.mak
17942
17943Patch 7.4a.005
17944Problem: Scroll binding causes unexpected scroll.
17945Solution: Store the topline after updating scroll binding. Add a test.
17946 (Lech Lorens)
17947Files: src/testdir/test98.in, src/testdir/test98a.in,
17948 src/testdir/test98.ok, src/option.c, src/testdir/Make_amiga.mak,
17949 src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
17950 src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
17951 src/testdir/Makefile
17952
17953Patch 7.4a.006
17954Problem: Failure in po file check goes unnoticed.
17955Solution: Fail "make test" if the po file check fails.
17956Files: src/Makefile
17957
17958Patch 7.4a.007
17959Problem: After "g$" with 'virtualedit' set, "k" moves to a different
17960 column. (Dimitar Dimitrov)
17961Solution: Set w_curswant. (Christian Brabandt)
17962Files: src/normal.c
17963
17964Patch 7.4a.008
17965Problem: Python 3 doesn't handle multibyte characters properly when
17966 'encoding' is not utf-8.
17967Solution: Use PyUnicode_Decode() instead of PyUnicode_FromString(). (Ken
17968 Takata)
17969Files: src/if_python3.c
17970
17971Patch 7.4a.009
17972Problem: Compiler warnings for function prototypes.
17973Solution: Add "void". Move list_features() prototype. (Ken Takata)
17974Files: src/gui_w48.c, src/if_py_both.h, src/version.c
17975
17976Patch 7.4a.010
17977Problem: Test 86 and 87 fail when building with Python or Python 3 and
17978 using a static library.
17979Solution: Add configure check to add -fPIE compiler flag.
17980Files: src/configure.in, src/auto/configure
17981
17982Patch 7.4a.011
17983Problem: Configure check for Python 3 config name isn't right.
17984Solution: Always include vi_cv_var_python3_version. (Tim Harder)
17985Files: src/configure.in, src/auto/configure
17986
17987Patch 7.4a.012
17988Problem: "make test" fails when using a shadow directory.
17989Solution: Create links for files in src/po. (James McCoy)
17990Files: src/Makefile
17991
17992Patch 7.4a.013
17993Problem: Setting/resetting 'lbr' in the main help file changes alignment
17994 after a Tab. (Dimitar Dimitrov)
17995Solution: Also use the code for conceal mode where n_extra is computed for
17996 'lbr'.
17997Files: src/screen.c, src/testdir/test88.in, src/testdir/test88.ok
17998
17999Patch 7.4a.014
18000Problem: Test 86 and 89 have a problem with using a shadow dir.
18001Solution: Adjust for the different directory structure. (James McCoy)
18002Files: src/testdir/test89.in, src/testdir/test86.in, src/Makefile
18003
18004Patch 7.4a.015
18005Problem: No Japanese man pages.
18006Solution: Add Japanese translations of man pages. (Ken Takata, Yukihiro
18007 Nakadaira, et al.)
18008Files: Filelist, src/Makefile, runtime/doc/evim-ja.UTF-8.1,
18009 runtime/doc/vim-ja.UTF-8.1, runtime/doc/vimdiff-ja.UTF-8.1,
18010 runtime/doc/vimtutor-ja.UTF-8.1, runtime/doc/xxd-ja.UTF-8.1
18011
18012Patch 7.4a.016 (after 7.4a.014)
18013Problem: Features enabled in Makefile.
18014Solution: Undo accidental changes.
18015Files: src/Makefile
18016
18017Patch 7.4a.017
18018Problem: When 'foldmethod' is "indent", using ">>" on a line just above a
18019 fold makes the cursor line folded. (Evan Laforge)
18020Solution: Call foldOpenCursor(). (Christian Brabandt)
18021Files: src/ops.c
18022
18023Patch 7.4a.018
18024Problem: Compiler warning for code unreachable. (Charles Campbell)
18025Solution: Use "while" instead of endless loop. Change break to continue.
18026Files: src/regexp_nfa.c, src/ui.c
18027
18028Patch 7.4a.019
18029Problem: Invalid closing parenthesis in test 62. Command truncated at
18030 double quote.
18031Solution: Remove the parenthesis. Change double quote to ''. (ZyX)
18032Files: src/testdir/test62.in, src/testdir/test62.ok
18033
18034Patch 7.4a.020
18035Problem: Superfluous mb_ptr_adv().
18036Solution: Remove the call. (Dominique Pelle)
18037Files: src/regexp_nfa.c
18038
18039Patch 7.4a.021
18040Problem: Using feedkeys() doesn't always work.
18041Solution: Omit feedkeys(). (Ken Takata)
18042Files: src/testdir/test98a.in
18043
18044Patch 7.4a.022
18045Problem: Using "d2g$" does not delete the last character. (ZyX)
18046Solution: Set the "inclusive" flag properly.
18047Files: src/normal.c
18048
18049Patch 7.4a.023 (after 7.4a.019)
18050Problem: Still another superfluous parenthesis. (ZyX)
18051Solution: Remove it.
18052Files: src/testdir/test62.in
18053
18054Patch 7.4a.024
18055Problem: X11 GUI: Checking icon height twice.
18056Solution: Check height and width. (Dominique Pelle)
18057Files: src/gui_x11.c
18058
18059Patch 7.4a.025
18060Problem: Get the press-Enter prompt even after using :redraw.
18061Solution: Clear need_wait_return when executing :redraw.
18062Files: src/ex_docmd.c
18063
18064Patch 7.4a.026
18065Problem: ":diffoff" does not remove folds. (Ramel)
18066Solution: Do not restore 'foldenable' when 'foldmethod' is "manual".
18067Files: src/diff.c
18068
18069Patch 7.4a.027
18070Problem: When Python adds lines to another buffer the cursor position is
18071 wrong, it might be below the last line causing ml_get errors.
18072 (Vlad Irnov)
18073Solution: Temporarily change the current window, so that marks are corrected
18074 properly.
18075Files: src/if_py_both.h, src/window.c, src/proto/buffer.pro
18076
18077Patch 7.4a.028
18078Problem: Crash when spell checking in new buffer.
18079Solution: Set the b_p_key field. (Mike Williams)
18080Files: src/spell.c, src/testdir/test58.in
18081
18082Patch 7.4a.029
18083Problem: Can't build with MzScheme on Ubuntu 13.04.
18084Solution: Add configure check for the "ffi" library.
18085Files: src/configure.in, src/auto/configure
18086
18087Patch 7.4a.030 (after 7.4.027)
18088Problem: Missing find_win_for_buf(). (toothpik)
18089Solution: Add missing changes.
18090Files: src/buffer.c
18091
18092Patch 7.4a.031
18093Problem: Compiler warnings. (Charles Campbell)
18094Solution: Initialize variables even when not needed.
18095Files: src/regexp_nfa.c, src/search.c
18096
18097Patch 7.4a.032
18098Problem: New regexp engine: Does not match shorter alternative. (Ingo
18099 Karkat)
18100Solution: Do not drop a new state when the PIM info is different.
18101Files: src/regexp_nfa.c
18102
18103Patch 7.4a.033
18104Problem: Test 98 always passes.
18105Solution: Include test98a.in in test98.in, execute the crucial command in
18106 one line. (Yukihiro Nakadaira)
18107Files: src/testdir/test98.in, src/testdir/test98a.in
18108
18109Patch 7.4a.034
18110Problem: The tabline may flicker when opening a new tab after 7.3.759 on
18111 Win32.
18112Solution: Move call to TabCtrl_SetCurSel(). (Ken Takata)
18113Files: src/gui_w48.c
18114
18115Patch 7.4a.035
18116Problem: Fix in patch 7.4a.032 is not tested.
18117Solution: Add test.
18118Files: src/testdir/test64.in, src/testdir/test64.ok
18119
18120Patch 7.4a.036
18121Problem: "\p" in a regexp does not match double-width characters.
18122 (Yukihiro Nakadaira)
18123Solution: Don't count display cells, use vim_isprintc().
18124Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
18125 src/testdir/test64.ok, src/testdir/test95.in,
18126 src/testdir/test95.ok
18127
18128Patch 7.4a.037
18129Problem: Win32: When mouse is hidden and in the toolbar, moving it won't
18130 make it appear. (Sami Salonen)
18131Solution: Add tabline_wndproc() and toolbar_wndproc(). (Ken Takata)
18132Files: src/gui_w32.c, src/gui_w48.c
18133
18134Patch 7.4a.038
18135Problem: When using MSVC 2012 there are various issues, including GUI size
18136 computations.
18137Solution: Use SM_CXPADDEDBORDER. (Mike Williams)
18138Files: src/gui_w32.c, src/gui_w48.c, src/os_win32.h
18139
18140Patch 7.4a.039
18141Problem: New regexp engine doesn't match pattern. (Ingo Karkat)
18142Solution: When adding a state also check for different PIM if the list of
18143 states has any state with a PIM.
18144Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
18145
18146Patch 7.4a.040
18147Problem: Win32: using uninitialized variable.
18148Solution: (Yukihiro Nakadaira)
18149Files: src/os_win32.c
18150
18151Patch 7.4a.041
18152Problem: When using ":new ++ff=unix" and "dos" is first in 'fileformats'
18153 then 'ff' is set to "dos" instead of "unix". (Ingo Karkat)
18154Solution: Create set_file_options() and invoke it from do_ecmd().
18155Files: src/fileio.c, src/proto/fileio.pro, src/ex_cmds.c,
18156 src/testdir/test91.in, src/testdir/test91.ok
18157
18158Patch 7.4a.042
18159Problem: Crash when BufUnload autocommands close all buffers. (Andrew
18160 Pimlott)
18161Solution: Set curwin->w_buffer to curbuf to avoid NULL.
18162Files: src/window.c, src/testdir/test8.in, src/testdir/test8.ok
18163
18164Patch 7.4a.043
18165Problem: More ml_get errors when adding or deleting lines from Python.
18166 (Vlad Irnov)
18167Solution: Switch to a window with the buffer when possible.
18168Files: src/if_py_both.h
18169
18170Patch 7.4a.044
18171Problem: Test 96 sometimes fails.
18172Solution: Clear window from b_wininfo in win_free(). (Suggestion by
18173 Yukihiro Nakadaira)
18174Files: src/window.c
18175
18176Patch 7.4a.045
18177Problem: Configure does not always find the right library for Lua. Missing
Bram Moolenaar6aa8cea2017-06-05 14:44:35 +020018178 support for LuaJit.
Bram Moolenaar1a42b4b2013-07-28 18:29:08 +020018179Solution: Improve the configure detection of Lua. (Hiroshi Shirosaki)
18180Files: src/Makefile, src/configure.in, src/auto/configure
18181
18182Patch 7.4a.046
18183Problem: Can't build without mbyte feature.
18184Solution: Add #ifdefs.
18185Files: src/ex_cmds.c
18186
18187Patch 7.4a.047
18188Problem: Some comments are not so nice.
18189Solution: Change the comments.
18190Files: src/ex_docmd.c, src/message.c, src/ops.c, src/option.c
18191
Bram Moolenaar3b1db362013-08-10 15:00:24 +020018192Patch 7.4b.001
18193Problem: Win32: dialog may extend off-screen.
18194Solution: Reduce the size, use correct borders. (Andrei Olsen)
18195Files: src/gui_w32.c
18196
18197Patch 7.4b.002
18198Problem: Crash searching for \%(\%(\|\d\|-\|\.\)*\|\*\). (Marcin
18199 Szamotulski) Also for \(\)*.
18200Solution: Do add a state for opening parenthesis, so that we can check if it
18201 was added before at the same position.
18202Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
18203
18204Patch 7.4b.003
18205Problem: Regexp code is not nicely aligned.
18206Solution: Adjust white space. (Ken Takata)
18207Files: src/regexp_nfa.c
18208
18209Patch 7.4b.004
18210Problem: Regexp crash on pattern "@\%[\w\-]*". (Axel Kielhorn)
18211Solution: Add \%(\) around \%[] internally.
18212Files: src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
18213
18214Patch 7.4b.005
18215Problem: Finding %s in shellpipe and shellredir does not ignore %%s.
18216Solution: Skip over %%. (lcd 47)
18217Files: src/ex_cmds.c
18218
18219Patch 7.4b.006 (after 7.3.1295)
18220Problem: Using \{n,m} in an autocommand pattern no longer works.
18221 Specifically, mutt temp files are not recognized. (Gary Johnson)
18222Solution: Make \\\{n,m\} work.
18223Files: runtime/doc/autocmd.txt, src/fileio.c
18224
18225Patch 7.4b.007
18226Problem: On 32 bit MS-Windows :perldo does not work.
18227Solution: Make sure time_t uses 32 bits. (Ken Takata)
18228Files: src/if_perl.xs, src/vim.h
18229
18230Patch 7.4b.008
18231Problem: 'autochdir' causes setbufvar() to change the current directory.
18232 (Ben Fritz)
18233Solution: When disabling autocommands also reset 'acd' temporarily.
18234 (Christian Brabandt)
18235Files: src/fileio.c
18236
18237Patch 7.4b.009
18238Problem: When setting the Visual area manually and 'selection' is
18239 exclusive, a yank includes one character too much. (Ingo Karkat)
18240Solution: Default the Visual operation to "v". (Christian Brabandt)
18241Files: src/mark.c
18242
18243Patch 7.4b.010
18244Problem: Win32: Tcl library load does not use standard mechanism.
18245Solution: Call vimLoadLib() instead of LoadLibraryEx(). (Ken Takata)
18246Files: src/if_perl.xs, src/if_tcl.c
18247
18248Patch 7.4b.011
18249Problem: ":he \%(\)" does not work. (ZyX)
18250Solution: Add an exception to the list.
18251Files: src/ex_cmds.c
18252
18253Patch 7.4b.012
18254Problem: Output from a shell command is truncated at a NUL. (lcd 47)
18255Solution: Change every NUL into an SOH.
18256Files: src/misc1.c
18257
18258Patch 7.4b.013
18259Problem: Install dir for JP man pages is wrong.
18260Solution: Remove ".UTF-8" from the directory name. (Ken Takata)
18261Files: src/Makefile
18262
18263Patch 7.4b.014 (after 7.4b.012)
18264Problem: Stupid mistake.
18265Solution: Changle "len" to "i".
18266Files: src/misc1.c
18267
18268Patch 7.4b.015 (after 7.4b.008)
18269Problem: Can't compile without the 'acd' feature.
18270Solution: Add #ifdefs. (Kazunobu Kuriyama)
18271Files: src/fileio.c
18272
18273Patch 7.4b.016
18274Problem: Ruby detection fails on Fedora 19.
18275Solution: Use one way to get the Ruby version. (Michael Henry)
18276Files: src/configure.in, src/auto/configure
18277
18278Patch 7.4b.017
18279Problem: ":he \^x" gives a strange error message. (glts)
18280Solution: Do not translate \^x to \_CTRL-x.
18281Files: src/ex_cmds.c
18282
18283Patch 7.4b.018 (after 7.4b.001)
18284Problem: Win32: Dialog can still be too big.
18285Solution: Move the check for height further down. (Andrei Olsen)
18286Files: src/gui_w32.c
18287
18288Patch 7.4b.019 (after 7.4a.034)
18289Problem: Tabline is not updated properly when closing a tab on Win32.
18290Solution: Only reduce flickering when adding a tab. (Ken Takata)
18291Files: src/gui_w48.c
18292
18293Patch 7.4b.020
18294Problem: "g~ap" changes first character of next paragraph. (Manuel Ortega)
18295Solution: Avoid subtracting (0 - 1) from todo. (Mike Williams)
18296Files: src/ops.c, src/testdir/test82.in, src/testdir/test82.ok
18297
18298Patch 7.4b.021
18299Problem: Pressing "u" after an external command results in multiple
18300 press-enter messages. (glts)
18301Solution: Don't call hit_return_msg() when we have K_IGNORE. (Christian
18302 Brabandt)
18303Files: src/message.c
18304
18305Patch 7.4b.022
18306Problem: Not waiting for a character when the tick count overflows.
18307Solution: Subtract the unsigned numbers and cast to int. (Ken Takata)
18308Files: src/os_win32.c
18309
Bram Moolenaar49325942007-05-10 19:19:59 +000018310
Bram Moolenaar6f1d9a02016-07-24 14:12:38 +020018311
Bram Moolenaard473c8c2018-08-11 18:00:22 +020018312 vim:tw=78:ts=8:noet:ft=help:norl: