diff options
author | Bram Moolenaar <Bram@vim.org> | 2016-08-16 18:33:43 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2016-08-16 18:33:43 +0200 |
commit | dc1f1645cb495fa6bfbe216d7359f23539a0e25d (patch) | |
tree | 8506c408b47f94f6cbee30aeb4ce4f15d7c7d2f5 /runtime | |
parent | 4f416e41243ca151b95d39d81ce23d00b1484755 (diff) |
Updated runtime files.
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/eval.txt | 44 | ||||
-rw-r--r-- | runtime/doc/index.txt | 4 | ||||
-rw-r--r-- | runtime/doc/options.txt | 6 | ||||
-rw-r--r-- | runtime/doc/syntax.txt | 6 | ||||
-rw-r--r-- | runtime/doc/tags | 6 | ||||
-rw-r--r-- | runtime/doc/todo.txt | 59 | ||||
-rw-r--r-- | runtime/doc/version8.txt | 1080 | ||||
-rw-r--r-- | runtime/doc/vi_diff.txt | 16 | ||||
-rw-r--r-- | runtime/indent/yaml.vim | 35 |
9 files changed, 1156 insertions, 100 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 8b80e399d1..f281f4aa81 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.4. Last change: 2016 Aug 14 +*eval.txt* For Vim version 7.4. Last change: 2016 Aug 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -29,6 +29,7 @@ done, the features in this document are not available. See |+eval| and 10. No +eval feature |no-eval-feature| 11. The sandbox |eval-sandbox| 12. Textlock |textlock| +13. Testing |testing| {Vi does not have any of these commands} @@ -1233,7 +1234,7 @@ The arguments are optional. Example: > *closure* Lambda expressions can access outer scope variables and arguments. This is often called a closure. Example where "i" a and "a:arg" are used in a lambda -while they exists in the function scope. They remain valid even after the +while they exist in the function scope. They remain valid even after the function returns: > :function Foo(arg) : let i = 3 @@ -2032,7 +2033,7 @@ cos({expr}) Float cosine of {expr} cosh({expr}) Float hyperbolic cosine of {expr} count({list}, {expr} [, {ic} [, {start}]]) Number count how many {expr} are in {list} -cscope_connection([{num} , {dbpath} [, {prepend}]]) +cscope_connection([{num}, {dbpath} [, {prepend}]]) Number checks existence of cscope connection cursor({lnum}, {col} [, {off}]) Number move cursor to {lnum}, {col}, {off} @@ -4492,7 +4493,7 @@ getreg([{regname} [, 1 [, {list}]]]) *getreg()* The result is a String, which is the contents of register {regname}. Example: > :let cliptext = getreg('*') -< When {regname} was not set the result is a empty string. +< When {regname} was not set the result is an empty string. getreg('=') returns the last evaluated value of the expression register. (For use in maps.) @@ -4529,8 +4530,8 @@ gettabinfo([{arg}]) *gettabinfo()* Each List item is a Dictionary with the following entries: nr tab page number. - windows List of window IDs in the tag page. variables dictionary of tabpage local variables. + windows List of window IDs in the tag page. gettabvar({tabnr}, {varname} [, {def}]) *gettabvar()* Get the value of a tab-local variable {varname} in tab page @@ -4587,9 +4588,11 @@ getwininfo([{winid}]) *getwininfo()* bufnum number of buffer in the window height window height loclist 1 if showing a location list + {only with the +quickfix feature} nr window number options dictionary of window local options quickfix 1 if quickfix or location list window + {only with the +quickfix feature} tpnr tab page number variables dictionary of window local variables width window width @@ -7520,7 +7523,7 @@ systemlist({expr} [, {input}]) *systemlist()* tabpagebuflist([{arg}]) *tabpagebuflist()* The result is a |List|, where each item is the number of the buffer associated with each window in the current tab page. - {arg} specifies the number of tab page to be used. When + {arg} specifies the number of the tab page to be used. When omitted the current tab page is used. When {arg} is invalid the number zero is returned. To get a list of all buffers in all tabs use this: > @@ -7703,9 +7706,9 @@ timer_info([{id}]) timer_pause({timer}, {paused}) *timer_pause()* Pause or unpause a timer. A paused timer does not invoke its - callback, while the time it would is not changed. Unpausing a - timer may cause the callback to be invoked almost immediately - if enough time has passed. + callback when its time expires. Unpausing a timer may cause + the callback to be invoked almost immediately if enough time + has passed. Pausing a timer is useful to avoid the callback to be called for a short time. @@ -7716,7 +7719,7 @@ timer_pause({timer}, {paused}) *timer_pause()* {only available when compiled with the |+timers| feature} - *timer_start()* + *timer_start()* *timer* *timers* timer_start({time}, {callback} [, {options}]) Create a timer and return the timer ID. @@ -10480,5 +10483,26 @@ This is not allowed when the textlock is active: - closing a window or quitting Vim - etc. +============================================================================== +13. Testing *testing* + +Vim can be tested after building it, usually with "make test". +The tests are located in the directory "src/testdir". + +There are several types of tests added over time: + test33.in oldest, don't add any more + test_something.in old style tests + test_something.vim new style tests + + *new-style-testing* +New tests should be added as new style tests. These use functions such as +|assert_equal()| to keep the test commands and the expected result in one +place. + *old-style-testing* +In some cases an old style test needs to be used. E.g. when testing Vim +without the |+eval| feature. + +Find more information in the file src/testdir/README.txt. + vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index ab8e0fc8af..5ee7351be8 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 7.4. Last change: 2016 Jul 16 +*index.txt* For Vim version 7.4. Last change: 2016 Aug 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1207,7 +1207,7 @@ tag command action ~ |:display| :di[splay] display registers |:djump| :dj[ump] jump to #define |:dl| :dl short for |:delete| with the 'l' flag -|:dl| :del[ete]l short for |:delete| with the 'l' flag +|:del| :del[ete]l short for |:delete| with the 'l' flag |:dlist| :dli[st] list #defines |:doautocmd| :do[autocmd] apply autocommands to current buffer |:doautoall| :doautoa[ll] apply autocommands for all loaded buffers diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index ccfaf5bd70..738367d2ce 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -3646,7 +3646,7 @@ A jump table for the options with a short description can be found at |Q_op|. qXX - quality XX. Valid quality names are: PROOF, DRAFT, ANTIALIASED, NONANTIALIASED, CLEARTYPE, DEFAULT. Normally you would use "qDEFAULT". - Some quality values isn't supported in legacy OSs. + Some quality values are not supported in legacy OSs. Use a ':' to separate the options. - A '_' can be used in the place of a space, so you don't need to use @@ -4403,7 +4403,7 @@ A jump table for the options with a short description can be found at |Q_op|. if you want to use Vim as a modeless editor. Used for |evim|. These Insert mode commands will be useful: - Use the cursor keys to move around. - - Use CTRL-O to execute one Normal mode command |i_CTRL-O|). When + - Use CTRL-O to execute one Normal mode command |i_CTRL-O|. When this is a mapping, it is executed as if 'insertmode' was off. Normal mode remains active until the mapping is finished. - Use CTRL-L to execute a number of Normal mode commands, then use @@ -4751,7 +4751,7 @@ A jump table for the options with a short description can be found at |Q_op|. use this command to get the tallest window possible: > :set lines=999 < Minimum value is 2, maximum value is 1000. - If you get less lines than expected, check the 'guiheadroom' option. + If you get fewer lines than expected, check the 'guiheadroom' option. When you set this option and Vim is unable to change the physical number of lines of the display, the display may be messed up. diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index ec9d0ff43b..d01cc9fcca 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.4. Last change: 2016 Aug 10 +*syntax.txt* For Vim version 7.4. Last change: 2016 Aug 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3764,7 +3764,7 @@ Whether or not it is actually concealed depends on the value of the 'conceallevel' option. The 'concealcursor' option is used to decide whether concealable items in the current line are displayed unconcealed to be able to edit the line. -Another way to conceal text with with |matchadd()|. +Another way to conceal text is with |matchadd()|. concealends *:syn-concealends* @@ -4870,7 +4870,7 @@ DiffChange diff mode: Changed line |diff.txt| DiffDelete diff mode: Deleted line |diff.txt| *hl-DiffText* DiffText diff mode: Changed text within a changed line |diff.txt| - *hl-EndofBuffer* + *hl-EndOfBuffer* EndOfBuffer filler lines (~) after the last line in the buffer. By default, this is highlighted like |hl-NonText|. *hl-ErrorMsg* diff --git a/runtime/doc/tags b/runtime/doc/tags index 3654bc76cb..76d39b1d9b 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -6638,6 +6638,7 @@ hl-DiffChange syntax.txt /*hl-DiffChange* hl-DiffDelete syntax.txt /*hl-DiffDelete* hl-DiffText syntax.txt /*hl-DiffText* hl-Directory syntax.txt /*hl-Directory* +hl-EndOfBuffer syntax.txt /*hl-EndOfBuffer* hl-ErrorMsg syntax.txt /*hl-ErrorMsg* hl-FoldColumn syntax.txt /*hl-FoldColumn* hl-Folded syntax.txt /*hl-Folded* @@ -7591,6 +7592,7 @@ new-search-path version6.txt /*new-search-path* new-searchpat version6.txt /*new-searchpat* new-session-files version5.txt /*new-session-files* new-spell version7.txt /*new-spell* +new-style-testing eval.txt /*new-style-testing* new-tab-pages version7.txt /*new-tab-pages* new-undo-branches version7.txt /*new-undo-branches* new-unlisted-buffers version6.txt /*new-unlisted-buffers* @@ -7634,6 +7636,7 @@ ocaml.vim syntax.txt /*ocaml.vim* octal eval.txt /*octal* octal-nrformats options.txt /*octal-nrformats* octal-number eval.txt /*octal-number* +old-style-testing eval.txt /*old-style-testing* oldfiles-variable eval.txt /*oldfiles-variable* ole-activation if_ole.txt /*ole-activation* ole-eval if_ole.txt /*ole-eval* @@ -8678,6 +8681,7 @@ test_null_list() eval.txt /*test_null_list()* test_null_partial() eval.txt /*test_null_partial()* test_null_string() eval.txt /*test_null_string()* test_settime() eval.txt /*test_settime()* +testing eval.txt /*testing* testing-variable eval.txt /*testing-variable* tex-cchar syntax.txt /*tex-cchar* tex-cole syntax.txt /*tex-cole* @@ -8708,12 +8712,14 @@ throw-from-catch eval.txt /*throw-from-catch* throw-variables eval.txt /*throw-variables* throwpoint-variable eval.txt /*throwpoint-variable* time-functions usr_41.txt /*time-functions* +timer eval.txt /*timer* timer-functions usr_41.txt /*timer-functions* timer_info() eval.txt /*timer_info()* timer_pause() eval.txt /*timer_pause()* timer_start() eval.txt /*timer_start()* timer_stop() eval.txt /*timer_stop()* timer_stopall() eval.txt /*timer_stopall()* +timers eval.txt /*timers* timestamp editing.txt /*timestamp* timestamps editing.txt /*timestamps* tips tips.txt /*tips* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 7feb32150e..23bd4e7dfe 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.4. Last change: 2016 Aug 12 +*todo.txt* For Vim version 7.4. Last change: 2016 Aug 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -105,9 +105,6 @@ What if there is an invalid character? Should json_encode()/json_decode() restrict recursiveness? Or avoid recursiveness. -Patch to test popupmenu. Fails, possibly due to a bug. -(Christian Brabandt, 2016 Jul 23) - Once .exe with updated installer is available: Add remark to download page about /S and /D options (Ken Takata, 2016 Apr 13) Or point to nightly builds: https://github.com/vim/vim-win32-installer/releases @@ -136,60 +133,19 @@ Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807) Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18) -Also return quickfix vs location list in getwininfo(). - -Patch to detect st terminal supporting xterm mouse. (Manuel Schiller, 2016 Aug -2, #963) - -Patch to fix that " mark is not stored in viminfo when closing a window in -another tab. (Hirohito Higashi, 2016 Aug 11, #974) - Syntax highlighting for messages with RFC3339 timestamp (#946) Did maintainer reply? -Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar -13, last version) Update June 26, #830. -Instead use a Vim script implementation, invoked from a Vim command. - ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19) Also with latest version. -Still problems with 'emoji'. See issue #721. Patch 7.4.1697 half-fixes it. -Avoid PLAN_WRITE in windgoto() ? -Should already never use utf-8 chars to position the cursor. - Cannot delete a file with square brackets with delete(). (#696) -Patch to add the EndOfBuffer highlight group, used instead of NonText for "~" -lines. (Marco Hinz, 2014 Nov 2) -Update from James McCoy, 2016 Aug 3. - -No autocommand for when changing directory. Patch from allen haim, 2016 Jun -27, #888 -Justin M Keyes: use "global" or "window" for the pattern. Can add "tab" -later. What if entering a window where ":lcd" was used? - Completion for input() does not expand environment variables. (chdiza, 2016 Jul 25, #948) -Patch to improve GTK shaping. (Manuel Schiller, 2016 Aug 7) - -Patch to make matchaddpos() not highlight the character after the line. -(Hirohito Higashi, 2016 Aug 7) - 'hlsearch' interferes with a Conceal match. (Rom Grk, 2016 Aug 9) -Patch to have text objects defined by arbitrary single characters. (Daniel -Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31) -Ben Fritz: problem with 'selection' set to "exclusive". -Updated to current Vim, not quite right yet. (Ben Fritz, 2014 Mar 27) -Updated to current Vim (James McCoy, 2016 Jul 30, #958) -Still a bit of work left. Check if "vimx" works. -Added tests, Aug 3. - -Patch to add CTRL-N / CTRL-P while searching. (Christian Brabandt, 2016 Aug -3) Problem: two matches in one line and using CTRL-P does not move back. - 's$^$\=capture("s/^//gn")' locks Vim in sandbox mode (#950) Patch by Christian Brabandt, 2016 Jul 27. @@ -330,6 +286,16 @@ Should use /usr/local/share/applications or /usr/share/applications. Or use $XDG_DATA_DIRS. Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4) +Patch to test popupmenu. Fails, possibly due to a bug. +(Christian Brabandt, 2016 Jul 23) + +Patch to have text objects defined by arbitrary single characters. (Daniel +Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31) +Added tests (James McCoy, 2016 Aug 3). Still needs more work. + +Patch to add CTRL-N / CTRL-P while searching. (Christian Brabandt, 2016 Aug +3) Problem: two matches in one line and using CTRL-P does not move back. + Access to uninitialized memory in match_backref() regexp_nda.c:4882 (Dominique Pelle, 2015 Nov 6) @@ -653,8 +619,7 @@ xterm should be able to pass focus changes to Vim, so that Vim can check for buffers that changed. Perhaps in misc.c, function selectwindow(). Xterm 224 supports it! Patch to make FocusGained and FocusLost work in modern terminals. (Hayaki -Saito, 2013 Apr 24) Has a problem (email 2015 Jan 7). -Update 2015 Jan 10. +Saito, 2013 Apr 24) Update 2016 Aug 12. Also see issue #609. We could add the enable/disable sequences to t_ti/t_te or t_ks/t_ke. diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt index cc1e6a8114..b9e6f8b346 100644 --- a/runtime/doc/version8.txt +++ b/runtime/doc/version8.txt @@ -1,24 +1,25 @@ -*version8.txt* For Vim version 8.0. Last change: 2016 Aug 07 +*version8.txt* For Vim version 8.0. Last change: 2016 Aug 16 VIM REFERENCE MANUAL by Bram Moolenaar -NOTE: THIS FILE IS STILL BEING WORKED ON + +NOTE: VIM 8 WAS NOT RELEASED YET, this is work in progress + *vim8* *vim-8* *version-8.0* *version8.0* -Welcome to Vim 8! A large number of bugs have been fixed and several +Welcome to Vim 8! A large number of bugs have been fixed and several nice features have been added. This file mentions all the new items and changes to -existing features since Vim 7.4. Bug fixes, the patches for Vim 7.4, can be -found below |vim-7.4|. Use this command to see the version you are using: > - :version +existing features since Vim 7.4. The patches up to Vim 7.4 can be found here: +|vim-7.4|. -See |vi_diff.txt| for an overview of differences between Vi and Vim 7.0. -See |version4.txt|, |version5.txt|, |version6.txt| and |version7.txt| for -differences between other versions. +Use this command to see the full version and features information of the Vim +program you are using: > + :version NEW FEATURES |new-8| - -Vim script enhancements |new-vim-script-8| + Vim script enhancements |new-vim-script-8| + Various new items |new-items-8| INCOMPATIBLE CHANGES |incompatible-8| @@ -29,6 +30,10 @@ COMPILE TIME CHANGES |compile-changes-8| PATCHES |patches-8| +See |vi_diff.txt| for an overview of differences between Vi and Vim 8.0. +See |version4.txt|, |version5.txt|, |version6.txt| and |version7.txt| for +differences between other versions. + ============================================================================== NEW FEATURES *new-8* @@ -128,9 +133,9 @@ The 'breakindent' option has been added to be able to wrap lines without changing the amount of indent. -Windows: Direct-X support ~ +Windows: DirectX support ~ -This adds the 'renderoptions' option to allow for switching on Direct-X +This adds the 'renderoptions' option to allow for switching on DirectX (DirectWrite) support on MS-Windows. @@ -154,15 +159,33 @@ Many functions and commands have been added to support the new types. On some systems the numbers used in Vim script are now 64 bit. This can be checked with the |+num64| feature. +Many items were added so support |new-style-testing|. + Various new items *new-items-8* ----------------- Normal mode commands: ~ +|g+| g+ go to newer text state N times +|g,| g, go to N newer position in change list +|g-| g- go to older text state N times +|g;| g; go to N older position in change list +|g_| g_ cursor to the last CHAR N - 1 lines lower + + +Visual mode commands: ~ + +|v_CTRL-A| CTRL-A add N to number in highlighted text +|v_CTRL-X| CTRL-X subtract N from number in highlighted text +|v_g_CTRL-A| g CTRL-A add N to number in highlighted text +|v_g_CTRL-X| g CTRL-X subtract N from number in highlighted text + Insert mode commands: ~ +|i_CTRL-G_U| CTRL-G U don't break undo with next cursor movement + Options: ~ @@ -177,12 +200,14 @@ Options: ~ 'perldll' name of the Perl dynamic library 'pythondll' name of the Python 2 dynamic library 'pythonthreedll' name of the Python 3 dynamic library +'signcolumn' when to display the sign column 'renderoptions' options for text rendering on Windows 'rubydll' name of the Ruby dynamic library 'tagcase' how to handle case when searching in tags files 'tcldll' name of the Tcl dynamic library 'termguicolors' use GUI colors for the terminal + Ex commands: ~ |:cbottom| scroll to the bottom of the quickfix window @@ -191,7 +216,6 @@ Ex commands: ~ |:chistory| display quickfix list stack |:clearjumps| clear the jump list |:helpclose| close one help window -|:keeppatterns| following command keeps search pattern history |:lbottom| scroll to the bottom of the location window |:ldo| execute command in valid location list entries |:lfdo| execute command in each file in location list @@ -201,10 +225,10 @@ Ex commands: ~ |:packloadall| load all packages under 'packpath' |:smile| make the user happy -Ex command modifiers: ~ +Ex command modifiers: ~ -Ex command arguments: ~ +|:keeppatterns| following command keeps search pattern history New and extended functions: ~ @@ -238,10 +262,14 @@ New and extended functions: ~ |ch_status()| get status of a channel |execute()| execute an Ex command and get the output |exepath()| full path of an executable program +|funcref()| return a reference to function {name} +|getbufinfo()| get a list with buffer information |getcharsearch()| return character search information |getcmdwintype()| return the current command-line window type |getcompletion()| return a list of command-line completion matches |getcurpos()| get position of the cursor +|gettabinfo()| get a list with tab page information +|getwininfo()| get a list with window information |glob2regpat()| convert a glob pattern into a search pattern |isnan()| check for not a number |job_getchannel()| get the channel used by a job @@ -291,29 +319,96 @@ New and extended functions: ~ New Vim variables: ~ |v:vim_did_enter| Set when VimEnter autocommands are triggered +|v:beval_winid| Window ID of the window where the mouse pointer is +|v:completed_item| complete items for the most recently completed word +|v:errors| errors found by assert functions +|v:false| a Number with value zero +|v:hlsearch| indicates whether search highlighting is on +|v:mouse_winid| Window ID for a mouse click obtained with |getchar()| +|v:none| an empty String, used for JSON +|v:null| an empty String, used for JSON +|v:option_new| new value of the option, used by |OptionSet| +|v:option_old| old value of the option, used by |OptionSet| +|v:option_type| scope of the set command, used by |OptionSet| +|v:progpath| the command with which Vim was invoked +|v:t_bool| value of Boolean type +|v:t_channel| value of Channel type +|v:t_dict| value of Dictionary type +|v:t_float| value of Float type +|v:t_func| value of Funcref type +|v:t_job| value of Job type +|v:t_list| value of List type +|v:t_none| value of None type +|v:t_number| value of Number type +|v:t_string| value of String type +|v:testing| must be set before using `test_garbagecollect_now()` +|v:true| a Number with value one +|v:vim_did_enter| zero until most of startup is done New autocommand events: ~ +|CmdUndefined| a user command is used but it isn't defined +|OptionSet| after setting any option +|TabClosed| after closing a tab page +|TabNew| after creating a new tab page +|TextChangedI| after a change was made to the text in Insert mode +|TextChanged| after a change was made to the text in Normal mode +|WinNew| after creating a new window New highlight groups: ~ +EndOfBuffer filler lines (~) after the last line in the buffer. + |hl-EndOfBuffer| -New items in search patterns: ~ +New items in search patterns: ~ -New Syntax/Indent/FTplugin files: ~ - +|/\%C| \%C match any composing characters -New Keymaps: ~ +New Syntax/Indent/FTplugin files: ~ -New message translations: ~ +AVR Assembler (Avra) syntax +Arduino syntax +Bazel syntax and indent and ftplugin +Dockerfile syntax and ftplugin +Eiffel ftplugin +Euphoria 3 and 4 syntax +Go syntax and indent and ftplugin +Godoc syntax +Groovy ftplugin +HGcommit ftplugin +Hog indent and ftplugin +Innovation Data Processing upstream.pt syntax +J syntax and indent and ftplugin +Jproperties ftplugin +Json syntax and indent and ftplugin +Kivy syntax +Less syntax and indent +Mix syntax +Motorola S-Record syntax +R ftplugin +ReStructuredText syntax and indent and ftplugin +Registry ftplugin +Rhelp indent and ftplugin +Rmd (markdown with R code chunks) syntax and indent +Rmd ftplugin +Rnoweb ftplugin +Rnoweb indent +SystemVerilog syntax and indent and ftplugin +Systemd syntax and indent and ftplugin +Teraterm (TTL) syntax and indent +Text ftplugin +Vroom syntax and indent and ftplugin -Others: ~ +New Keymaps: ~ +Armenian eastern and western +Russian jcukenwintype +Vietnamese telex and vni ============================================================================== INCOMPATIBLE CHANGES *incompatible-8* @@ -334,16 +429,19 @@ either create a .vimrc file that does "set compatible" or start Vim with Support removed ~ The support for MS-DOS has been removed. It hasn't been working for a while -and removing it cleans up the code quite a bit. +(Vim doesn't fit in memory) and removing it cleans up the code quite a bit. The support for Windows 16 bit (Windows 95 and older) has been removed. +The support for OS/2 has been removed. It probably hasn't been working for a +while since nobody uses it. + The SNiFF+ support has been removed. Minor incompatibilities: ~ -For filetype detection: ... +Probably... ============================================================================== IMPROVEMENTS *improvements-8* @@ -356,8 +454,13 @@ usage. See 'cryptmethod'. ============================================================================== COMPILE TIME CHANGES *compile-changes-8* -Dropped the support for MS-DOS. It was too big to fit in memory. +The Vim repository was moved from Google code to github, since Google code +was shut down. It can now be found at https://github.com/vim/vim. + +Functions now use ANSI-C declarations. At least a C-89 compatible compiler is +required. +The +visual feature is now always included. ============================================================================== PATCHES *patches-8* *bug-fixes-8* @@ -2694,7 +2797,7 @@ Patch 7.4.393 Problem: Text drawing on newer MS-Windows systems is suboptimal. Some multi-byte characters are not displayed, even though the same font in Notepad can display them. (Srinath Avadhanula) -Solution: Add the 'renderoptions' option to enable Direct-X drawing. (Taro +Solution: Add the 'renderoptions' option to enable DirectX drawing. (Taro Muraoka) Files: runtime/doc/eval.txt, runtime/doc/options.txt, runtime/doc/various.txt, src/Make_cyg.mak, src/Make_ming.mak, @@ -8167,7 +8270,7 @@ Files: src/regexp.c, src/regexp_nfa.c, src/testdir/test36.in, Patch 7.4.1306 Problem: Job control doesn't work well on MS-Windows. -Solution: Various fixes. (Ken Takata, Ozaki Kiichi , Yukihiro Nakadaira, +Solution: Various fixes. (Ken Takata, Ozaki Kiichi, Yukihiro Nakadaira, Yasuhiro Matsumoto) Files: src/Make_mvc.mak, src/eval.c, src/os_unix.c, src/os_win32.c, src/proto/os_unix.pro, src/proto/os_win32.pro, src/structs.h @@ -12641,6 +12744,604 @@ Files: src/fileio.c, src/window.c, src/vim.h, src/testdir/test_autocmd.vim, runtime/doc/autocmd.txt Patch 7.4.2078 +Problem: Running checks in po directory fails. +Solution: Add colors used in syntax.c to the builtin color table. +Files: src/term.c + +Patch 7.4.2079 +Problem: Netbeans test fails on non-Unix systems. +Solution: Only do the permission check on Unix systems. +Files: src/testdir/test_netbeans.vim + +Patch 7.4.2080 +Problem: When using PERROR() on some systems assert_fails() does not see + the error. +Solution: Make PERROR() always report the error. +Files: src/vim.h, src/message.c, src/proto/message.pro + +Patch 7.4.2081 +Problem: Line numbers in the error list are not always adjusted. +Solution: Set b_has_qf_entry properly. (Yegappan Lakshmanan) +Files: src/quickfix.c, src/structs.h, src/testdir/test_quickfix.vim + +Patch 7.4.2082 +Problem: Not much test coverage for digraphs. +Solution: Add a new style digraph test. (Christian Brabandt) +Files: src/Makefile, src/testdir/test_alot.vim, + src/testdir/test_digraph.vim + +Patch 7.4.2083 +Problem: Coverity complains about not restoring a value. +Solution: Restore the value, although it's not really needed. Change return + to jump to cleanup, might leak memory. +Files: src/userfunc.c + +Patch 7.4.2084 +Problem: New digraph test makes testing hang. +Solution: Don't set "nocp". +Files: src/testdir/test_digraph.vim + +Patch 7.4.2085 +Problem: Digraph tests fails on some systems. +Solution: Run it separately and set 'encoding' early. +Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim, + src/testdir/test_digraph.vim + +Patch 7.4.2086 +Problem: Using the system default encoding makes tests unpredictable. +Solution: Always use utf-8 or latin1 in the new style tests. Remove setting + encoding and scriptencoding where it is not needed. +Files: src/testdir/runtest.vim, src/testdir/test_channel.vim, + src/testdir/test_digraph.vim, src/testdir/test_expand_dllpath.vim, + src/testdir/test_expr_utf8.vim, src/testdir/test_json.vim, + src/testdir/test_matchadd_conceal_utf8.vim, + src/testdir/test_regexp_utf8.vim, src/testdir/test_visual.vim, + src/testdir/test_alot_utf8.vim, + +Patch 7.4.2087 +Problem: Digraph code test coverage is still low. +Solution: Add more tests. (Christian Brabandt) +Files: src/testdir/test_digraph.vim + +Patch 7.4.2088 (after 7.4.2087) +Problem: Keymap test fails with normal features. +Solution: Bail out if the keymap feature is not supported. +Files: src/testdir/test_digraph.vim + +Patch 7.4.2089 +Problem: Color handling of X11 GUIs is too complicated. +Solution: Simplify the code. Use RGBA where appropriate. (Kazunobu + Kuriyama) +Files: src/gui.h, src/gui_beval.c, src/gui_gtk_x11.c, src/netbeans.c + +Patch 7.4.2090 +Problem: Using submatch() in a lambda passed to substitute() is verbose. +Solution: Use a static list and pass it as an optional argument to the + function. Fix memory leak. +Files: src/structs.h, src/list.c, src/userfunc.c, src/channel.c, + src/eval.c, src/evalfunc.c, src/ex_cmds2.c, src/regexp.c, + src/proto/list.pro, src/proto/userfunc.pro, + src/testdir/test_expr.vim, runtime/doc/eval.txt + +Patch 7.4.2091 +Problem: Coverity reports a resource leak when out of memory. +Solution: Close the file before returning. +Files: src/term.c + +Patch 7.4.2092 +Problem: GTK 3 build fails with older GTK version. +Solution: Check the pango version. (Kazunobu Kuriyama) +Files: src/gui_beval.c + +Patch 7.4.2093 +Problem: Netbeans test fails once in a while. Leaving log file behind. +Solution: Add it to the list of flaky tests. Disable logfile. +Files: src/testdir/runtest.vim, src/testdir/test_channel.vim + +Patch 7.4.2094 +Problem: The color allocation in X11 is overly complicated. +Solution: Remove find_closest_color(), XAllocColor() already does this. + (Kazunobu Kuriyama) +Files: src/gui_x11.c + +Patch 7.4.2095 +Problem: Man test fails when run with the GUI. +Solution: Adjust for different behavior of GUI. Add assert_inrange(). +Files: src/eval.c, src/evalfunc.c, src/proto/eval.pro, + src/testdir/test_assert.vim, src/testdir/test_man.vim, + runtime/doc/eval.txt + +Patch 7.4.2096 +Problem: Lambda functions show up with completion. +Solution: Don't show lambda functions. (Ken Takata) +Files: src/userfunc.c, src/testdir/test_cmdline.vim + +Patch 7.4.2097 +Problem: Warning from 64 bit compiler. +Solution: use size_t instead of int. (Mike Williams) +Files: src/message.c + +Patch 7.4.2098 +Problem: Text object tests are old style. +Solution: Turn them into new style tests. (James McCoy, closes #941) +Files: src/testdir/Make_all.mak, src/testdir/test_textobjects.in, + src/testdir/test_textobjects.ok, src/testdir/test_textobjects.vim, + src/Makefile + +Patch 7.4.2099 +Problem: When a keymap is active only "(lang)" is displayed. (Ilya + Dogolazky) +Solution: Show the keymap name. (Dmitri Vereshchagin, closes #933) +Files: src/buffer.c, src/proto/screen.pro, src/screen.c + +Patch 7.4.2100 +Problem: "cgn" and "dgn" do not work correctly with a single character + match and the replacement includes the searched pattern. (John + Beckett) +Solution: If the match is found in the wrong column try in the next column. + Turn the test into new style. (Christian Brabandt) +Files: src/search.c, src/testdir/Make_all.mak, src/Makefile, + src/testdir/test53.in, src/testdir/test53.ok, + src/testdir/test_gn.vim + +Patch 7.4.2101 +Problem: Looping over windows, buffers and tab pages is inconsistent. +Solution: Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan) +Files: src/buffer.c, src/diff.c, src/edit.c, src/eval.c, src/evalfunc.c, + src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/fileio.c, + src/globals.h, src/gui.c, src/gui_mac.c, src/if_lua.c, + src/if_mzsch.c, src/if_perl.xs, src/if_ruby.c, src/if_tcl.c, + src/main.c, src/mark.c, src/memfile.c, src/memline.c, src/misc1.c, + src/move.c, src/netbeans.c, src/normal.c, src/option.c, + src/quickfix.c, src/screen.c, src/spell.c, src/term.c, + src/window.c, src/workshop.c + +Patch 7.4.2102 (after 7.4.2101) +Problem: Tiny build with GUI fails. +Solution: Revert one FOR_ALL_ change. +Files: src/gui.c + +Patch 7.4.2103 +Problem: Can't have "augroup END" right after ":au!". +Solution: Check for the bar character before the command argument. +Files: src/fileio.c, src/testdir/test_autocmd.vim, + runtime/doc/autocmd.txt + +Patch 7.4.2104 +Problem: Code duplication when unreferencing a function. +Solution: De-duplicate. +Files: src/userfunc.c + +Patch 7.4.2105 +Problem: Configure reports default features to be "normal" while it is + "huge". +Solution: Change the default text. Build with newer autoconf. +Files: src/configure.in, src/auto/configure + +Patch 7.4.2106 +Problem: Clang warns about missing field in initializer. +Solution: Define COMMA and use it. (Kazunobu Kuriyama) +Files: src/ex_cmds.c, src/globals.h, src/vim.h + +Patch 7.4.2107 (after 7.4.2106) +Problem: Misplaced equal sign. +Solution: Remove it. +Files: src/globals.h + +Patch 7.4.2108 +Problem: Netbeans test is flaky. +Solution: Wait for the cursor to be positioned. +Files: src/testdir/test_netbeans.vim + +Patch 7.4.2109 +Problem: Setting 'display' to "lastline" is a drastic change, while + omitting it results in lots of "@" lines. +Solution: Add "truncate" to show "@@@" for a truncated line. +Files: src/option.h, src/screen.c, runtime/doc/options.txt + +Patch 7.4.2110 +Problem: When there is an CmdUndefined autocmd then the error for a missing + command is E464 instead of E492. (Manuel Ortega) +Solution: Don't let the pointer be NULL. +Files: src/ex_docmd.c, src/testdir/test_usercommands.vim + +Patch 7.4.2111 +Problem: Defaults are very conservative. +Solution: Move settings from vimrc_example.vim to defaults.vim. Load + defaults.vim if no .vimrc was found. +Files: src/main.c, src/version.c, src/os_amiga.h, src/os_dos.h, + src/os_mac.h, src/os_unix.h, src/feature.h, src/Makefile, + runtime/vimrc_example.vim, runtime/defaults.vim, + runtime/evim.vim, Filelist, runtime/doc/starting.txt + +Patch 7.4.2112 +Problem: getcompletion(.., 'dir') returns a match with trailing "*" when |