mirror of
https://github.com/vim/vim.git
synced 2025-07-04 23:07:33 -04:00
Updated runtime files.
This commit is contained in:
parent
b5ae48e9ff
commit
0952131376
@ -54,7 +54,7 @@ Common combination are:
|
||||
- Using a job connected through pipes in NL mode. E.g., to run a style
|
||||
checker and receive errors and warnings.
|
||||
- Using a deamon, connecting over a socket in JSON mode. E.g. to lookup
|
||||
crosss-refrences in a database.
|
||||
cross-references in a database.
|
||||
|
||||
==============================================================================
|
||||
2. Channel demo *channel-demo* *demoserver.py*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.4. Last change: 2016 Mar 28
|
||||
*editing.txt* For Vim version 7.4. Last change: 2016 Aug 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -1114,10 +1114,12 @@ The names can be in upper- or lowercase.
|
||||
edited. See |:confirm| and 'confirm'. {not in Vi}
|
||||
|
||||
:q[uit]! Quit without writing, also when the current buffer has
|
||||
changes. If this is the last window and there is a
|
||||
modified hidden buffer, the current buffer is
|
||||
abandoned and the first changed hidden buffer becomes
|
||||
the current buffer.
|
||||
changes. The buffer is unloaded, also when it has
|
||||
'hidden' set.
|
||||
If this is the last window and there is a modified
|
||||
hidden buffer, the current buffer is abandoned and the
|
||||
first changed hidden buffer becomes the current
|
||||
buffer.
|
||||
Use ":qall!" to exit always.
|
||||
|
||||
:cq[uit] Quit always, without writing, and return an error
|
||||
|
@ -6744,8 +6744,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
{not available when compiled without the |+signs|
|
||||
feature}
|
||||
Whether or not to draw the signcolumn. "auto" means it will only be
|
||||
drawn when there is a sign to display.
|
||||
Whether or not to draw the signcolumn. Valid values are:
|
||||
"auto" only when there is a sign to display
|
||||
"no" never
|
||||
"yes" always
|
||||
|
||||
|
||||
*'smartcase'* *'scs'* *'nosmartcase'* *'noscs'*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2016 Jun 14
|
||||
*quickref.txt* For Vim version 7.4. Last change: 2016 Aug 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -883,6 +883,7 @@ Short explanation of each option: *option-list*
|
||||
'showtabline' 'stal' tells when the tab pages line is displayed
|
||||
'sidescroll' 'ss' minimum number of columns to scroll horizontal
|
||||
'sidescrolloff' 'siso' min. nr. of columns to left and right of cursor
|
||||
'signcolumn' 'scl' when to display the sign column
|
||||
'smartcase' 'scs' no ignore case when pattern has uppercase
|
||||
'smartindent' 'si' smart autoindenting for C programs
|
||||
'smarttab' 'sta' use 'shiftwidth' when inserting <Tab>
|
||||
|
@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 7.4. Last change: 2014 May 07
|
||||
*sign.txt* For Vim version 7.4. Last change: 2016 Aug 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@ -45,8 +45,10 @@ There are two steps in using signs:
|
||||
|
||||
When signs are defined for a file, Vim will automatically add a column of two
|
||||
characters to display them in. When the last sign is unplaced the column
|
||||
disappears again. The color of the column is set with the SignColumn group
|
||||
|hl-SignColumn|. Example to set the color: >
|
||||
disappears again. This behavior can be changed with the 'signcolumn' option.
|
||||
|
||||
The color of the column is set with the SignColumn group |hl-SignColumn|.
|
||||
Example to set the color: >
|
||||
|
||||
:highlight SignColumn guibg=darkgrey
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2016 May 28
|
||||
*syntax.txt* For Vim version 7.4. Last change: 2016 Aug 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -949,6 +949,8 @@ Variable Highlight ~
|
||||
*c_no_bracket_error* don't highlight {}; inside [] as errors
|
||||
*c_no_curly_error* don't highlight {}; inside [] and () as errors;
|
||||
except { and } in first column
|
||||
Default is to highlight them, otherwise you
|
||||
can't spot a missing ")".
|
||||
*c_curly_error* highlight a missing }; this forces syncing from the
|
||||
start of the file, can be slow
|
||||
*c_no_ansi* don't do standard ANSI types and constants
|
||||
|
@ -806,6 +806,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'sbr' options.txt /*'sbr'*
|
||||
'sc' options.txt /*'sc'*
|
||||
'scb' options.txt /*'scb'*
|
||||
'scl' options.txt /*'scl'*
|
||||
'scr' options.txt /*'scr'*
|
||||
'scroll' options.txt /*'scroll'*
|
||||
'scrollbind' options.txt /*'scrollbind'*
|
||||
@ -848,6 +849,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
|
||||
'si' options.txt /*'si'*
|
||||
'sidescroll' options.txt /*'sidescroll'*
|
||||
'sidescrolloff' options.txt /*'sidescrolloff'*
|
||||
'signcolumn' options.txt /*'signcolumn'*
|
||||
'siso' options.txt /*'siso'*
|
||||
'sj' options.txt /*'sj'*
|
||||
'slm' options.txt /*'slm'*
|
||||
@ -6394,6 +6396,7 @@ gdb debug.txt /*gdb*
|
||||
ge motion.txt /*ge*
|
||||
get() eval.txt /*get()*
|
||||
get-ms-debuggers debug.txt /*get-ms-debuggers*
|
||||
getbufinfo() eval.txt /*getbufinfo()*
|
||||
getbufline() eval.txt /*getbufline()*
|
||||
getbufvar() eval.txt /*getbufvar()*
|
||||
getchar() eval.txt /*getchar()*
|
||||
@ -6426,8 +6429,10 @@ getscript-data pi_getscript.txt /*getscript-data*
|
||||
getscript-history pi_getscript.txt /*getscript-history*
|
||||
getscript-plugins pi_getscript.txt /*getscript-plugins*
|
||||
getscript-start pi_getscript.txt /*getscript-start*
|
||||
gettabinfo() eval.txt /*gettabinfo()*
|
||||
gettabvar() eval.txt /*gettabvar()*
|
||||
gettabwinvar() eval.txt /*gettabwinvar()*
|
||||
getwininfo() eval.txt /*getwininfo()*
|
||||
getwinposx() eval.txt /*getwinposx()*
|
||||
getwinposy() eval.txt /*getwinposy()*
|
||||
getwinvar() eval.txt /*getwinvar()*
|
||||
@ -8441,11 +8446,11 @@ t_ZH term.txt /*t_ZH*
|
||||
t_ZR term.txt /*t_ZR*
|
||||
t_al term.txt /*t_al*
|
||||
t_bc term.txt /*t_bc*
|
||||
t_bool-varialble eval.txt /*t_bool-varialble*
|
||||
t_bool-variable eval.txt /*t_bool-variable*
|
||||
t_cd term.txt /*t_cd*
|
||||
t_cdl version4.txt /*t_cdl*
|
||||
t_ce term.txt /*t_ce*
|
||||
t_channel-varialble eval.txt /*t_channel-varialble*
|
||||
t_channel-variable eval.txt /*t_channel-variable*
|
||||
t_ci version4.txt /*t_ci*
|
||||
t_cil version4.txt /*t_cil*
|
||||
t_cl term.txt /*t_cl*
|
||||
@ -8457,7 +8462,7 @@ t_cv version4.txt /*t_cv*
|
||||
t_cvv version4.txt /*t_cvv*
|
||||
t_da term.txt /*t_da*
|
||||
t_db term.txt /*t_db*
|
||||
t_dict-varialble eval.txt /*t_dict-varialble*
|
||||
t_dict-variable eval.txt /*t_dict-variable*
|
||||
t_dl term.txt /*t_dl*
|
||||
t_ed version4.txt /*t_ed*
|
||||
t_el version4.txt /*t_el*
|
||||
@ -8471,12 +8476,12 @@ t_f6 version4.txt /*t_f6*
|
||||
t_f7 version4.txt /*t_f7*
|
||||
t_f8 version4.txt /*t_f8*
|
||||
t_f9 version4.txt /*t_f9*
|
||||
t_float-varialble eval.txt /*t_float-varialble*
|
||||
t_float-variable eval.txt /*t_float-variable*
|
||||
t_fs term.txt /*t_fs*
|
||||
t_func-varialble eval.txt /*t_func-varialble*
|
||||
t_func-variable eval.txt /*t_func-variable*
|
||||
t_help version4.txt /*t_help*
|
||||
t_il version4.txt /*t_il*
|
||||
t_job-varialble eval.txt /*t_job-varialble*
|
||||
t_job-variable eval.txt /*t_job-variable*
|
||||
t_k1 term.txt /*t_k1*
|
||||
t_k2 term.txt /*t_k2*
|
||||
t_k3 term.txt /*t_k3*
|
||||
@ -8501,15 +8506,15 @@ t_kr term.txt /*t_kr*
|
||||
t_ks term.txt /*t_ks*
|
||||
t_ku term.txt /*t_ku*
|
||||
t_le term.txt /*t_le*
|
||||
t_list-varialble eval.txt /*t_list-varialble*
|
||||
t_list-variable eval.txt /*t_list-variable*
|
||||
t_mb term.txt /*t_mb*
|
||||
t_md term.txt /*t_md*
|
||||
t_me term.txt /*t_me*
|
||||
t_mr term.txt /*t_mr*
|
||||
t_ms term.txt /*t_ms*
|
||||
t_nd term.txt /*t_nd*
|
||||
t_none-varialble eval.txt /*t_none-varialble*
|
||||
t_number-varialble eval.txt /*t_number-varialble*
|
||||
t_none-variable eval.txt /*t_none-variable*
|
||||
t_number-variable eval.txt /*t_number-variable*
|
||||
t_op term.txt /*t_op*
|
||||
t_se term.txt /*t_se*
|
||||
t_sf1 version4.txt /*t_sf1*
|
||||
@ -8529,7 +8534,7 @@ t_sku version4.txt /*t_sku*
|
||||
t_so term.txt /*t_so*
|
||||
t_sr term.txt /*t_sr*
|
||||
t_star7 term.txt /*t_star7*
|
||||
t_string-varialble eval.txt /*t_string-varialble*
|
||||
t_string-variable eval.txt /*t_string-variable*
|
||||
t_tb version4.txt /*t_tb*
|
||||
t_te term.txt /*t_te*
|
||||
t_ti term.txt /*t_ti*
|
||||
@ -8704,8 +8709,11 @@ throw-variables eval.txt /*throw-variables*
|
||||
throwpoint-variable eval.txt /*throwpoint-variable*
|
||||
time-functions usr_41.txt /*time-functions*
|
||||
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()*
|
||||
timestamp editing.txt /*timestamp*
|
||||
timestamps editing.txt /*timestamps*
|
||||
tips tips.txt /*tips*
|
||||
|
@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.4. Last change: 2016 Aug 02
|
||||
*todo.txt* For Vim version 7.4. Last change: 2016 Aug 12
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -34,8 +34,6 @@ not be repeated below, unless there is extra information.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Should free_all_functions(void) skip numbered and lambda functions?
|
||||
|
||||
+channel:
|
||||
- Channel test fails with Motif. Sometimes kills the X11 server.
|
||||
- When a message in the queue but there is no callback, drop it after a while?
|
||||
@ -138,20 +136,14 @@ 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)
|
||||
|
||||
Do we need some way (option) to show the sign column even when there are no
|
||||
signs? Patch by Christian Brabandt, 2016 Jul 29.
|
||||
|
||||
Patch to allow setting w:quickfix_title via setqflist() and setloclist()
|
||||
functions. (Christian Brabandt, 2013 May 8, update May 21)
|
||||
Patch to add getlocstack() / setlocstack(). (Christian Brabandt, 2013 May 14)
|
||||
Second one. Update May 22.
|
||||
Update by Daniel Hahler, 2014 Jul 4, Aug 14, Oct 14, Oct 15.
|
||||
Updated patch: add an argument to setqflist() and getqflist() for these
|
||||
extra items: Yegappan, 2016 Jul 30.
|
||||
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?
|
||||
|
||||
@ -168,6 +160,10 @@ 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"
|
||||
@ -176,15 +172,23 @@ 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.
|
||||
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 Jul
|
||||
29)
|
||||
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.
|
||||
@ -198,6 +202,8 @@ Also for ":@.".
|
||||
Patch to make printf() convert to string for %s items. (Ken Takata, 2016 Aug
|
||||
1)
|
||||
|
||||
Patch to add %b to printf(). (Ozaki Kiichi, 2016 Aug 5)
|
||||
|
||||
Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925)
|
||||
|
||||
Patch on issue #728 by Christian Brabandt, 2016 Apr 7. Update with test: Apr 8.
|
||||
@ -206,6 +212,9 @@ Might be related to:
|
||||
Test 44 fails when [[=A=]] is changed to [[=À=]]. Caused by getcmdline() not
|
||||
handling the 0x80 as a second byte correctly? (Dominique Pelle, 2015 Jun 10)
|
||||
|
||||
Second problem in #966: ins_compl_add_tv() uses get_dict_string() multiple
|
||||
times, overwrites the one buffer. (Nikolay Pavlov, 2016 Aug 5)
|
||||
|
||||
Patch to add 'topbot' to 'belloff' option. (Coot, 2016 Mar 18, #695)
|
||||
|
||||
Patch for C syntax HL. (Bradley Garagan, 2016 Apr 17) #763
|
||||
@ -213,6 +222,10 @@ Patch for C syntax HL. (Bradley Garagan, 2016 Apr 17) #763
|
||||
Patch to make matchit work better, respect 'matchpairs'. (Ken Takata, 2016 Mar
|
||||
25)
|
||||
|
||||
Patch to fix that on suckless Terminal mousewheel up does not work.
|
||||
(Ralph Eastwood, 2013 Nov 25)
|
||||
Patch for mouse support on suckless Terminal. #971 Manuel Schiller
|
||||
|
||||
This does not work: :set cscopequickfix=a-
|
||||
(Linewi, 2015 Jul 12, #914)
|
||||
|
||||
@ -245,9 +258,6 @@ Update from Ken Takata, 2016 Jul 17.
|
||||
|
||||
Patch to improve cscope. (Adrian Kocis, #843)
|
||||
|
||||
Patch to add getbufinfo(), gettabinfo() and getwininfo(). (Yegappan
|
||||
Lakshmanan, 2016 Apr 2016) Update Jul 29. #833.
|
||||
|
||||
Patch for groovy multi-line comment highlighting. (Justin M. Keyes, 2016 May
|
||||
20 #644)
|
||||
|
||||
@ -265,7 +275,7 @@ No test, needs some work to include.
|
||||
Patch to improve indenting for C++ constructor with initializer list.
|
||||
(Hirohito Higashi, 2016 Mar 31)
|
||||
|
||||
After 7.5 is released:
|
||||
After 8.0 is released:
|
||||
- Drop support for older MS-Windows systems, before XP.
|
||||
Patch from Ken Takata, 2016 Mar 8.
|
||||
|
||||
@ -540,7 +550,7 @@ Mixup of highlighting when there is a match and SpellBad. (ZyX, 2015 Jan 1)
|
||||
Patch for drag&drop reordering of GUI tab pages reordering.
|
||||
(Ken Takata, 2013 Nov 22, second one, also by Masamichi Abe)
|
||||
Now on Git: https://gist.github.com/nocd5/165286495c782b815b94
|
||||
Update 2016 Mar 15.
|
||||
Update 2016 Aug 10.
|
||||
|
||||
Patch on Issue 72: 'autochdir' causes problems for :vimgrep.
|
||||
|
||||
@ -560,9 +570,6 @@ any one-character from the previous line. (Kartik Agaram, 2014 Sep 19)
|
||||
|
||||
Syntax highlighting slow (hangs) in SASS file. (Niek Bosch, 2013 Aug 21)
|
||||
|
||||
Patch to add the EndOfBuffer highlight group, used instead of NonText for "~"
|
||||
lines. (Marco Hinz, 2014 Nov 2)
|
||||
|
||||
Adding "~" to 'cdpath' doesn't work for completion? (Davido, 2013 Aug 19)
|
||||
|
||||
Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
|
||||
@ -776,9 +783,6 @@ Patch by Thomas Tuegel, also for GTK, 2013 Nov 24
|
||||
Patch to add funcref to Lua. (Luis Carvalho, 2013 Sep 4)
|
||||
With tests: Sep 5.
|
||||
|
||||
Patch to fix that on suckless Terminal mousewheel up does not work.
|
||||
(Ralph Eastwood, 2013 Nov 25)
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
Checking runtime scripts: Thilo Six, 2012 Jun 6.
|
||||
@ -871,9 +875,6 @@ Improve the installer for MS-Windows. There are a few alternatives:
|
||||
Problem: they all work slightly different (e.g. don't install vimrun.exe).
|
||||
How to test that it works well for all Vim users?
|
||||
|
||||
Patch to check whether a buffer is quickfix or a location list.
|
||||
(Yasuhiro Matsumoto, 2014 Dec 9)
|
||||
|
||||
Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
|
||||
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
@ -1383,7 +1384,7 @@ https://scan.coverity.com/projects/241
|
||||
Patch to support :undo absolute jump to file save number. (Christian Brabandt,
|
||||
2010 Nov 5)
|
||||
|
||||
Patch to use 'foldnextmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Patch to use 'foldnestmax' also for "marker" foldmethod. (Arnaud Lacombe, 2011
|
||||
Jan 7)
|
||||
|
||||
Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17)
|
||||
@ -2452,9 +2453,6 @@ Awaiting updated patches:
|
||||
done for filetype detection. Patch from Walter Briscoe, 2003 Jul 1.
|
||||
7 Add a "-@ filelist" argument: read file names from a file. (David
|
||||
Kotchan has a patch for it)
|
||||
8 Include a connection to an external program through a pipe? See
|
||||
patches from Felbinger for a mathematica interface.
|
||||
Or use emacs server kind of thing?
|
||||
7 Add ":justify" command. Patch from Vit Stradal 2002 Nov 25.
|
||||
- findmatch() should be adjusted for Lisp. See remark at
|
||||
get_lisp_indent(). Esp. \( and \) should be skipped. (Dorai Sitaram,
|
||||
|
@ -4026,7 +4026,7 @@ Solution: Check for NULL pointer returned from mch_open().
|
||||
Files: src/if_cscope.c
|
||||
|
||||
Patch 7.0.154
|
||||
Problem: When 'foldnextmax' is negative Vim can hang. (James Vega)
|
||||
Problem: When 'foldnestmax' is negative Vim can hang. (James Vega)
|
||||
Solution: Avoid the fold level becoming negative.
|
||||
Files: src/fold.c, src/syntax.c
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
*version8.txt* For Vim version 8.0. Last change: 2016 Jul 29
|
||||
*version8.txt* For Vim version 8.0. Last change: 2016 Aug 07
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@ -64,7 +64,7 @@ Also asynchronous are timers. They can fire once or repeatedly and invoke a
|
||||
function to do any work. For example: >
|
||||
let tempTimer = timer_start(4000, 'CheckTemp')
|
||||
This will call the CheckTemp() function four seconds (4000 milli seconds)
|
||||
later.
|
||||
later. See |timer_start()|.
|
||||
|
||||
|
||||
Partials ~
|
||||
@ -274,8 +274,11 @@ New and extended functions: ~
|
||||
|test_null_partial()| return a null Partial function
|
||||
|test_null_string()| return a null String
|
||||
|test_settime()| set the time Vim uses internally
|
||||
|timer_info()| get information about timers
|
||||
|timer_pause()| pause or unpause a timer
|
||||
|timer_start()| create a timer
|
||||
|timer_stop()| stop a timer
|
||||
|timer_stopall()| stop all timers
|
||||
|uniq()| remove copies of repeated adjacent items
|
||||
|win_findbuf()| find windows containing a buffer
|
||||
|win_getid()| get window ID of a window
|
||||
@ -318,23 +321,30 @@ INCOMPATIBLE CHANGES *incompatible-8*
|
||||
These changes are incompatible with previous releases. Check this list if you
|
||||
run into a problem when upgrading from Vim 7.4 to 8.0.
|
||||
|
||||
|
||||
Better defaults without a vimrc ~
|
||||
|
||||
When no vimrc file is found, the |defaults.vim| script is loaded to set more
|
||||
useful default values for new users. That includes setting 'nocompatible'.
|
||||
Thus Vim no longer starts up in Vi compatible mode. If you do want that,
|
||||
either create a .vimrc file that does "set compatible" or start Vim with
|
||||
"Vim -C".
|
||||
|
||||
|
||||
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.
|
||||
|
||||
The support for Windows 16 bit (Windows 95 and older) has been removed.
|
||||
|
||||
Minor incompatibilities:
|
||||
The SNiFF+ support has been removed.
|
||||
|
||||
|
||||
Minor incompatibilities: ~
|
||||
|
||||
For filetype detection: ...
|
||||
|
||||
The SNiFF+ support has been removed.
|
||||
|
||||
==============================================================================
|
||||
IMPROVEMENTS *improvements-8*
|
||||
|
||||
@ -598,7 +608,7 @@ Solution: Move when VIsual_active is reset. (Christian Brabandt)
|
||||
Files: src/ops.c
|
||||
|
||||
Patch 7.4.042
|
||||
Problem: When using ":setlocal" for 'spell' and 'spellang' then :spelldump
|
||||
Problem: When using ":setlocal" for 'spell' and 'spelllang' then :spelldump
|
||||
doesn't work. (Dimitar Dimitrov)
|
||||
Solution: Copy the option variables to the new window used to show the dump.
|
||||
(Christian Brabandt)
|
||||
@ -777,7 +787,7 @@ Files: src/edit.c, src/misc1.c, src/proto/misc1.pro
|
||||
|
||||
Patch 7.4.072
|
||||
Problem: Crash when using Insert mode completion.
|
||||
Solution: Avoid going past the end of pum_array. (idea by Fransisco Lopes)
|
||||
Solution: Avoid going past the end of pum_array. (idea by Francisco Lopes)
|
||||
Files: src/popupmnu.c
|
||||
|
||||
Patch 7.4.073
|
||||
@ -1416,7 +1426,7 @@ Files: src/configure.in, src/auto/configure
|
||||
|
||||
Patch 7.4.183
|
||||
Problem: MSVC Visual Studio update not supported.
|
||||
Solution: Add version number. (Mike William)
|
||||
Solution: Add version number. (Mike Williams)
|
||||
Files: src/Make_mvc.mak
|
||||
|
||||
Patch 7.4.184
|
||||
@ -2143,7 +2153,7 @@ Files: src/screen.c
|
||||
Patch 7.4.303
|
||||
Problem: When using double-width characters the text displayed on the
|
||||
command line is sometimes truncated.
|
||||
Solution: Reset the string lenght. (Nobuhiro Takasaki)
|
||||
Solution: Reset the string length. (Nobuhiro Takasaki)
|
||||
Files: src/screen.c
|
||||
|
||||
Patch 7.4.304
|
||||
@ -5150,7 +5160,7 @@ Files: src/buffer.c
|
||||
|
||||
Patch 7.4.806
|
||||
Problem: CTRL-A in Visual mode doesn't work properly with "alpha" in
|
||||
'nrformat'.
|
||||
'nrformats'.
|
||||
Solution: Make it work. (Christian Brabandt)
|
||||
Files: src/ops.c, src/testdir/test_increment.in,
|
||||
src/testdir/test_increment.ok
|
||||
@ -6079,7 +6089,7 @@ Files: src/fileio.c
|
||||
|
||||
Patch 7.4.966
|
||||
Problem: Configure doesn't work with a space in a path.
|
||||
Solution: Put paths in quotes. (James McCoy, close #525)
|
||||
Solution: Put paths in quotes. (James McCoy, closes #525)
|
||||
Files: src/configure.in, src/auto/configure
|
||||
|
||||
Patch 7.4.967
|
||||
@ -6458,7 +6468,7 @@ Files: src/testdir/Make_ming.mak, src/testdir/Make_dos.mak
|
||||
|
||||
Patch 7.4.1027
|
||||
Problem: No support for binary numbers.
|
||||
Solution: Add "bin" to nrformats. (Jason Schulz)
|
||||
Solution: Add "bin" to 'nrformats'. (Jason Schulz)
|
||||
Files: runtime/doc/change.txt, runtime/doc/eval.txt,
|
||||
runtime/doc/version7.txt, src/charset.c, src/eval.c,
|
||||
src/ex_cmds.c, src/ex_getln.c, src/misc2.c, src/ops.c,
|
||||
@ -6548,7 +6558,7 @@ Patch 7.4.1041
|
||||
Problem: Various small things.
|
||||
Solution: Add file to list of distributed files. Adjust README. Fix typo.
|
||||
Files: Filelist, src/testdir/README.txt, src/testdir/test_charsearch.in,
|
||||
src/INSTALLMac.txt
|
||||
src/INSTALLmac.txt
|
||||
|
||||
Patch 7.4.1042
|
||||
Problem: g-CTRL-G shows the word count, but there is no way to get the word
|
||||
@ -6948,7 +6958,7 @@ Files: src/testdir/test27.in, src/testdir/test27.ok,
|
||||
Patch 7.4.1109 (after 7.4.1107)
|
||||
Problem: MS-Windows doesn't have rmdir().
|
||||
Solution: Add mch_rmdir().
|
||||
Files: src/os_win32.c, src/proto/os_win32/pro
|
||||
Files: src/os_win32.c, src/proto/os_win32.pro
|
||||
|
||||
Patch 7.4.1110
|
||||
Problem: Test 108 fails when language is French.
|
||||
@ -8116,7 +8126,7 @@ Files: src/testdir/test_channel.vim
|
||||
|
||||
Patch 7.4.1299
|
||||
Problem: When the server sends a message with ID zero the channel handler
|
||||
is not invoked. (Christian J. Robinson)
|
||||
is not invoked. (Christian J. Robinson)
|
||||
Solution: Recognize zero value for the request ID. Add a test for invoking
|
||||
the channel handler.
|
||||
Files: src/channel.c, src/testdir/test_channel.vim,
|
||||
@ -8502,7 +8512,7 @@ Files: src/testdir/runtest.vim
|
||||
|
||||
Patch 7.4.1366
|
||||
Problem: Typo in test and resulting error in test result.
|
||||
Solution: Fix the typo and correct the result. (James McCoy, close #650)
|
||||
Solution: Fix the typo and correct the result. (James McCoy, closes #650)
|
||||
Files: src/testdir/test_charsearch.in, src/testdir/test_charsearch.ok
|
||||
|
||||
Patch 7.4.1367
|
||||
@ -9251,7 +9261,7 @@ Patch 7.4.1495
|
||||
Problem: Compiler warnings when building on Unix with the job feature but
|
||||
without the channel feature.
|
||||
Solution: Move #ifdefs. (Dominique Pelle)
|
||||
Files: src/os_unxic.
|
||||
Files: src/os_unix.c
|
||||
|
||||
Patch 7.4.1496
|
||||
Problem: Crash when built with GUI but it's not active. (Dominique Pelle)
|
||||
@ -11132,7 +11142,7 @@ Files: src/quickfix.c
|
||||
|
||||
Patch 7.4.1824
|
||||
Problem: When a job is no longer referenced and does not have an exit
|
||||
callback the process may hang around in defunc state. (Nicola)
|
||||
callback the process may hang around in defunct state. (Nicola)
|
||||
Solution: Call job_status() if the job is running and won't get freed
|
||||
because it might still be useful.
|
||||
Files: src/channel.c
|
||||
@ -11289,7 +11299,7 @@ Solution: Unregister the channel when there is an input error.
|
||||
Files: src/channel.c
|
||||
|
||||
Patch 7.4.1851
|
||||
Problem: test_syn_attr failes when using the GUI. (Dominique Pelle)
|
||||
Problem: test_syn_attr fails when using the GUI. (Dominique Pelle)
|
||||
Solution: Escape the font name properly.
|
||||
Files: src/testdir/test_syn_attr.vim
|
||||
|
||||
@ -11349,7 +11359,7 @@ Files: src/testdir/test_timers.vim, src/eval.c, src/ex_cmds2.c,
|
||||
|
||||
Patch 7.4.1861
|
||||
Problem: Compiler warnings with 64 bit compiler.
|
||||
Solution: Change int to size_t. (Mike William)
|
||||
Solution: Change int to size_t. (Mike Williams)
|
||||
Files: src/ex_cmds2.c
|
||||
|
||||
Patch 7.4.1862
|
||||
@ -11609,7 +11619,7 @@ Files: src/ex_cmds.c
|
||||
|
||||
Patch 7.4.1906
|
||||
Problem: Collapsing channel buffers and searching for NL does not work
|
||||
properly. (Xavier de Gary, Ramel Eshed)
|
||||
properly. (Xavier de Gaye, Ramel Eshed)
|
||||
Solution: Do not assume the buffer contains a NUL or not. Change NUL bytes
|
||||
to NL to avoid the string is truncated.
|
||||
Files: src/channel.c, src/netbeans.c, src/proto/channel.pro
|
||||
@ -11699,7 +11709,7 @@ Files: src/ex_cmds.c
|
||||
|
||||
Patch 7.4.1922
|
||||
Problem: Ruby 2.4.0 unifies Fixnum and Bignum into Integer.
|
||||
Solution: Use rb_cInteger. (Weiong Mao)
|
||||
Solution: Use rb_cInteger. (Weiyong Mao)
|
||||
Files: src/if_ruby.c
|
||||
|
||||
Patch 7.4.1923
|
||||
@ -12499,6 +12509,644 @@ Solution: Move Dictionary functions to dict.c
|
||||
Files: src/eval.c, src/dict.c, src/vim.h, src/globals.h,
|
||||
src/proto/eval.pro, src/proto/dict.pro, src/Makefile, Filelist
|
||||
|
||||
Patch 7.4.2056 (after 7.4.2055)
|
||||
Problem: Build fails.
|
||||
Solution: Add missing changes.
|
||||
Files: src/proto.h
|
||||
|
||||
Patch 7.4.2057
|
||||
Problem: eval.c is too big.
|
||||
Solution: Move List functions to list.c
|
||||
Files: src/eval.c, src/dict.c, src/list.c, src/proto.h, src/Makefile,
|
||||
src/globals.h, src/proto/eval.pro, src/proto/list.pro, Filelist
|
||||
|
||||
Patch 7.4.2058
|
||||
Problem: eval.c is too big.
|
||||
Solution: Move user functions to userfunc.c
|
||||
Files: src/userfunc.c, src/eval.c, src/vim.h, src/globals.h,
|
||||
src/structs.h, src/proto.h, src/Makefile, src/proto/eval.pro,
|
||||
src/proto/userfunc.pro, Filelist
|
||||
|
||||
Patch 7.4.2059
|
||||
Problem: Non-Unix builds fail.
|
||||
Solution: Update Makefiles for new files.
|
||||
Files: src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_dice.mak,
|
||||
src/Make_ivc.mak, src/Make_manx.mak, src/Make_morph.mak,
|
||||
src/Make_mvc.mak, src/Make_sas.mak
|
||||
|
||||
Patch 7.4.2060 (after 7.4.2059)
|
||||
Problem: Wrong file name.
|
||||
Solution: Fix typo.
|
||||
Files: src/Make_mvc.mak
|
||||
|
||||
Patch 7.4.2061
|
||||
Problem: qf_init_ext() is too big.
|
||||
Solution: Move code to qf_parse_line() (Yegappan Lakshmanan)
|
||||
Files: src/quickfix.c, src/testdir/test_quickfix.vim
|
||||
|
||||
Patch 7.4.2062
|
||||
Problem: Using dummy variable to compute struct member offset.
|
||||
Solution: Use offsetof().
|
||||
Files: src/globals.h, src/macros.h, src/vim.h, src/spell.c
|
||||
|
||||
Patch 7.4.2063
|
||||
Problem: eval.c is still too big.
|
||||
Solution: Split off internal functions to evalfunc.c.
|
||||
Files: src/eval.c, src/evalfunc.c, src/list.c, src/proto.h,
|
||||
src/globals.h, src/vim.h, src/proto/eval.pro,
|
||||
src/proto/evalfunc.pro, src/proto/list.pro, src/Makefile, Filelist,
|
||||
src/Make_bc5.mak, src/Make_cyg_ming.mak, src/Make_dice.mak,
|
||||
src/Make_ivc.mak, src/Make_manx.mak, src/Make_morph.mak,
|
||||
src/Make_mvc.mak, src/Make_sas.mak
|
||||
|
||||
Patch 7.4.2064
|
||||
Problem: Coverity warns for possible buffer overflow.
|
||||
Solution: Use vim_strcat() instead of strcat().
|
||||
Files: src/quickfix.c
|
||||
|
||||
Patch 7.4.2065
|
||||
Problem: Compiler warns for uninitialzed variable. (John Marriott)
|
||||
Solution: Set lnum to the right value.
|
||||
Files: src/evalfunc.c
|
||||
|
||||
Patch 7.4.2066
|
||||
Problem: getcompletion() not well tested.
|
||||
Solution: Add more testing.
|
||||
Files: src/testdir/test_cmdline.vim
|
||||
|
||||
Patch 7.4.2067
|
||||
Problem: Compiler warning for char/char_u conversion. (Tony Mechelynck)
|
||||
Inefficient code.
|
||||
Solution: Use more lines to fill with spaces. (Nikolai Pavlov) Add type cast.
|
||||
Files: src/quickfix.c
|
||||
|
||||
Patch 7.4.2068
|
||||
Problem: Not all arguments of trunc_string() are tested. Memory access
|
||||
error when running the message tests.
|
||||
Solution: Add another test case. (Yegappan Lakshmanan) Make it easy to run
|
||||
unittests with valgrind. Fix the access error.
|
||||
Files: src/message.c, src/message_test.c, src/Makefile
|
||||
|
||||
Patch 7.4.2069
|
||||
Problem: spell.c is too big.
|
||||
Solution: Split it in spell file handling and spell checking.
|
||||
Files: src/spell.c, src/spellfile.c, src/spell.h, src/Makefile,
|
||||
src/proto/spell.pro, src/proto/spellfile.pro, src/proto.h
|
||||
Filelist, src/Make_bc5.mak, src/Make_cyg_ming.mak,
|
||||
src/Make_dice.mak, src/Make_ivc.mak, src/Make_manx.mak,
|
||||
src/Make_morph.mak, src/Make_mvc.mak, src/Make_sas.mak
|
||||
|
||||
Patch 7.4.2070 (after 7.4.2069)
|
||||
Problem: Missing change to include file.
|
||||
Solution: Include the spell header file.
|
||||
Files: src/vim.h
|
||||
|
||||
Patch 7.4.2071
|
||||
Problem: The return value of type() is difficult to use.
|
||||
Solution: Define v:t_ constants. (Ken Takata)
|
||||
Files: runtime/doc/eval.txt, src/eval.c, src/evalfunc.c,
|
||||
src/testdir/test_channel.vim, src/testdir/test_viml.vim, src/vim.h
|
||||
|
||||
Patch 7.4.2072
|
||||
Problem: substitute() does not support a Funcref argument.
|
||||
Solution: Support a Funcref like it supports a string starting with "\=".
|
||||
Files: src/evalfunc.c, src/regexp.c, src/eval.c, src/proto/eval.pro,
|
||||
src/proto/regexp.pro, src/testdir/test_expr.vim
|
||||
|
||||
Patch 7.4.2073
|
||||
Problem: rgb.txt is read for every color name.
|
||||
Solution: Load rgb.txt once. (Christian Brabandt) Add a test.
|
||||
Files: runtime/rgb.txt, src/term.c, src/testdir/test_syn_attr.vim
|
||||
|
||||
Patch 7.4.2074
|
||||
Problem: One more place using a dummy variable.
|
||||
Solution: Use offsetof(). (Ken Takata)
|
||||
Files: src/userfunc.c
|
||||
|
||||
Patch 7.4.2075
|
||||
Problem: No autocommand event to initialize a window or tab page.
|
||||
Solution: Add WinNew and TabNew events. (partly by Felipe Morales)
|
||||
Files: src/fileio.c, src/window.c, src/vim.h,
|
||||
src/testdir/test_autocmd.vim, runtime/doc/autocmd.txt
|
||||
|
||||
Patch 7.4.2076
|
||||
Problem: Syntax error when dict has '>' key.
|
||||
Solution: Check for endchar. (Ken Takata)
|
||||
Files: src/userfunc.c, src/testdir/test_lambda.vim
|
||||
|
||||
Patch 7.4.2077
|
||||
Problem: Cannot update 'tabline' when a tab was closed.
|
||||
Solution: Add the TabClosed autocmd event. (partly by Felipe Morales)
|
||||
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 diretory fails.
|
||||
Solution: Add colors used in syntax.c to the builtiin 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 inconsistant.
|
||||
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
|
||||
there are no matches. (Chdiza)
|
||||
Solution: Return an empty list when there are no matches. Add a trailing
|
||||
slash to directories. (Yegappan Lakshmanan) Add tests for no
|
||||
matches. (closes #947)
|
||||
Files: src/evalfunc.c, src/testdir/test_cmdline.vim
|
||||
|
||||
Patch 7.4.2113
|
||||
Problem: Test for undo is flaky.
|
||||
Solution: Turn it into a new style test. Use test_settime() to avoid
|
||||
flakyness.
|
||||
Files: src/Makefile, src/undo.c, src/testdir/test61.in,
|
||||
src/testdir/test61.ok, src/testdir/test_undo.vim,
|
||||
src/testdir/test_undolevels.vim, src/testdir/Make_all.mak,
|
||||
src/testdir/test_alot.vim
|
||||
|
||||
Patch 7.4.2114
|
||||
Problem: Tiny build fails.
|
||||
Solution: Always include vim_time().
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
Patch 7.4.2115
|
||||
Problem: Loading defaults.vim with -C argument.
|
||||
Solution: Don't load the defaults script with -C argument. Test sourcing
|
||||
the defaults script. Set 'display' to "truncate".
|
||||
Files: src/main.c, src/Makefile, runtime/defaults.vim,
|
||||
src/testdir/test_startup.vim, src/testdir/Make_all.mak
|
||||
|
||||
Patch 7.4.2116
|
||||
Problem: The default vimrc for Windows is very conservative.
|
||||
Solution: Use the defaults.vim in the Windows installer.
|
||||
Files: src/dosinst.c
|
||||
|
||||
Patch 7.4.2117
|
||||
Problem: Deleting an augroup that still has autocmds does not give a
|
||||
warning. The next defined augroup takes its place.
|
||||
Solution: Give a warning and prevent the index being used for another group
|
||||
name.
|
||||
Files: src/fileio.c, src/testdir/test_autocmd.vim
|
||||
|
||||
Patch 7.4.2118
|
||||
Problem: Mac: can't build with tiny features.
|
||||
Solution: Don't define FEAT_CLIPBOARD unconditionally. (Kazunobu Kuriyama)
|
||||
Files: src/vim.h
|
||||
|
||||
Patch 7.4.2119
|
||||
Problem: Closures are not supported.
|
||||
Solution: Capture variables in lambdas from the outer scope. (Yasuhiro
|
||||
Matsumoto, Ken Takata)
|
||||
Files: runtime/doc/eval.txt, src/eval.c, src/ex_cmds2.c, src/globals.h,
|
||||
src/proto/eval.pro, src/proto/userfunc.pro,
|
||||
src/testdir/test_lambda.vim, src/userfunc.c
|
||||
|
||||
Patch 7.4.2120
|
||||
Problem: User defined functions can't be a closure.
|
||||
Solution: Add the "closure" argument. Allow using :unlet on a bound
|
||||
variable. (Yasuhiro Matsumoto, Ken Takata)
|
||||
Files: runtime/doc/eval.txt, src/testdir/test_lambda.vim, src/userfunc.c,
|
||||
src/eval.c src/proto/userfunc.pro
|
||||
|
||||
Patch 7.4.2121
|
||||
Problem: No easy way to check if lambda and closure are supported.
|
||||
Solution: Add the +lambda feature.
|
||||
Files: src/evalfunc.c, src/version.c, src/testdir/test_lambda.vim
|
||||
|
||||
Patch 7.4.2122 (after 7.4.2118)
|
||||
Problem: Mac: don't get +clipboard in huge build.
|
||||
Solution: Move #define down below including featureh.h
|
||||
Files: src/vim.h
|
||||
|
||||
Patch 7.4.2123
|
||||
Problem: No new style test for diff mode.
|
||||
Solution: Add a test. Check that folds are in sync.
|
||||
Files: src/Makefile, src/testdir/test_diffmode.vim,
|
||||
src/testdir/Make_all.mak, src/testdir/test47.in,
|
||||
src/testdir/test47.ok
|
||||
|
||||
Patch 7.4.2124
|
||||
Problem: diffmode test leaves files behind, breaking another test.
|
||||
Solution: Delete the files.
|
||||
Files: src/testdir/test_diffmode.vim
|
||||
|
||||
Patch 7.4.2125
|
||||
Problem: Compiler warning for loss of data.
|
||||
Solution: Add a type cast. (Christian Brabandt)
|
||||
Files: src/message.c
|
||||
|
||||
Patch 7.4.2126
|
||||
Problem: No tests for :diffget and :diffput
|
||||
Solution: Add tests.
|
||||
Files: src/testdir/test_diffmode.vim
|
||||
|
||||
Patch 7.4.2127
|
||||
Problem: The short form of ":noswapfile" is ":noswap" instead of ":nos".
|
||||
(Kent Sibilev)
|
||||
Solution: Only require three characters. Add a test for the short forms.
|
||||
Files: src/ex_docmd.c, src/testdir/test_usercommands.vim
|
||||
|
||||
Patch 7.4.2128
|
||||
Problem: Memory leak when saving for undo fails.
|
||||
Solution: Free allocated memory. (Hirohito Higashi)
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
Patch 7.4.2129
|
||||
Problem: Memory leak when using timer_start(). (Dominique Pelle)
|
||||
Solution: Don't copy the callback when using a partial.
|
||||
Files: src/evalfunc.c
|
||||
|
||||
Patch 7.4.2130
|
||||
Problem: Pending timers cause false memory leak reports.
|
||||
Solution: Free all timers on exit.
|
||||
Files: src/ex_cmds2.c, src/proto/ex_cmds2.pro, src/misc2.c
|
||||
|
||||
Patch 7.4.2131
|
||||
Problem: More memory leaks when using partial, e.g. for "exit-cb".
|
||||
Solution: Don't copy the callback when using a partial.
|
||||
Files: src/channel.c
|
||||
|
||||
Patch 7.4.2132
|
||||
Problem: test_partial has memory leaks reported.
|
||||
Solution: Add a note about why this happens.
|
||||
Files: src/testdir/test_partial.vim
|
||||
|
||||
Patch 7.4.2133 (after 7.4.2128)
|
||||
Problem: Can't build with tiny features.
|
||||
Solution: Add #ifdef.
|
||||
Files: src/ex_cmds.c
|
||||
|
||||
Patch 7.4.2134
|
||||
Problem: No error for using function() badly.
|
||||
Solution: Check for passing wrong function name. (Ken Takata)
|
||||
Files: src/eval.c, src/evalfunc.c, src/proto/userfunc.pro,
|
||||
src/testdir/test_expr.vim, src/userfunc.c, src/vim.h
|
||||
|
||||
Patch 7.4.2135
|
||||
Problem: Various tiny issues.
|
||||
Solution: Update comments, white space, etc.
|
||||
Files: src/diff.c, src/digraph.c, src/testdir/test80.in,
|
||||
src/testdir/test_channel.vim, src/testdir/Makefile,
|
||||
runtime/menu.vim, src/INSTALLpc.txt, src/xpm/README.txt
|
||||
|
||||
Patch 7.4.2136
|
||||
Problem: Closure function fails.
|
||||
Solution: Don't reset uf_scoped when it points to another funccal.
|
||||
Files: src/userfunc.c, src/testdir/test_lambda.vim
|
||||
|
||||
Patch 7.4.2137
|
||||
Problem: Using function() with a name will find another function when it is
|
||||
redefined.
|
||||
Solution: Add funcref(). Refer to lambda using a partial. Fix several
|
||||
reference counting issues.
|
||||
Files: src/vim.h, src/structs.h, src/userfunc.c, src/eval.c,
|
||||
src/evalfunc.c, src/channel.c, src/proto/eval.pro,
|
||||
src/proto/userfunc.pro, src/if_mzsch.c, src/regexp.c, src/misc2.c,
|
||||
src/if_py_both.h, src/testdir/test_expr.vim, runtime/doc/eval.txt
|
||||
|
||||
Patch 7.4.2138
|
||||
Problem: Test 86 and 87 fail.
|
||||
Solution: Call func_ref() also for regular functions.
|
||||
Files: src/if_py_both.h
|
||||
|
||||
Patch 7.4.2139
|
||||
Problem: :delfunction causes illegal memory access.
|
||||
Solution: Correct logic when deciding to free a function.
|
||||
Files: src/userfunc.c, src/testdir/test_lambda.vim
|
||||
|
||||
Patch 7.4.2140
|
||||
Problem: Tiny build fails.
|
||||
Solution: Add dummy typedefs.
|
||||
Files: src/structs.h
|
||||
|
||||
Patch 7.4.2141
|
||||
Problem: Coverity reports bogus NULL check.
|
||||
Solution: When checking for a variable in the funccal scope don't pass the
|
||||
varname.
|
||||
Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c
|
||||
|
||||
Patch 7.4.2142
|
||||
Problem: Leaking memory when redefining a function.
|
||||
Solution: Don't increment the function reference count when it's found by
|
||||
name. Don't remove the wrong function from the hashtab. More
|
||||
reference counting fixes.
|
||||
Files: src/structs.h, src/userfunc.c
|
||||
|
||||
Patch 7.4.2143
|
||||
Problem: A funccal is garbage collected while it can still be used.
|
||||
Solution: Set copyID in all referenced functions. Do not list lambda
|
||||
functions with ":function".
|
||||
Files: src/userfunc.c, src/proto/userfunc.pro, src/eval.c,
|
||||
src/testdir/test_lambda.vim
|
||||
|
||||
Patch 7.4.2144
|
||||
Problem: On MS-Windows quickix does not handle a line with 1023 bytes
|
||||
ending in CR-LF properly.
|
||||
Solution: Don't consider CR a line break. (Ken Takata)
|
||||
Files: src/quickfix.c
|
||||
|
||||
Patch 7.4.2145
|
||||
Problem: Win32: Using CreateThread/ExitThread is not safe.
|
||||
Solution: Use _beginthreadex and return from the thread. (Ken Takata)
|
||||
Files: src/os_win32.c
|
||||
|
||||
Patch 7.4.2146
|
||||
Problem: Not enough testing for popup menu. CTRL-E does not always work
|
||||
properly.
|
||||
Solution: Add more tests. When using CTRL-E check if the popup menu is
|
||||
visible. (Christian Brabandt)
|
||||
Files: src/edit.c, src/testdir/test_popup.vim
|
||||
|
||||
Patch 7.4.2147 (after 7.4.2146)
|
||||
Problem: test_alot fails.
|
||||
Solution: Close window.
|
||||
Files: src/testdir/test_popup.vim
|
||||
|
||||
Patch 7.4.2148
|
||||
Problem: Not much testing for cscope.
|
||||
Solution: Add a test that uses the cscope program. (Christian Brabandt)
|
||||
Files: src/testdir/test_cscope.vim
|
||||
|
||||
Patch 7.4.2149
|
||||
Problem: If a test leaves a window open a following test may fail.
|
||||
Solution: Always close extra windows after running a test.
|
||||
Files: src/testdir/runtest.vim, src/testdir/test_popup.vim
|
||||
|
||||
Patch 7.4.2150
|
||||
Problem: Warning with MinGW 64. (John Marriott)
|
||||
Solution: Change return type. (Ken Takata)
|
||||
Files: src/os_win32.c
|
||||
|
||||
Patch 7.4.2151
|
||||
Problem: Quickfix test fails on MS-Windows.
|
||||
Solution: Close the help window. (Christian Brabandt)
|
||||
Files: src/testdir/test_quickfix.vim
|
||||
|
||||
Patch 7.4.2152
|
||||
Problem: No proper translation of messages with a count.
|
||||
Solution: Use ngettext(). (Sergey Alyoshin)
|
||||
Files: src/evalfunc.c, src/fold.c, src/os_win32.c, src/screen.c, src/vim.h
|
||||
|
||||
Patch 7.4.2153
|
||||
Problem: GUI test isn't testing much.
|
||||
Solution: Turn into a new style test. Execute a shell command.
|
||||
Files: src/testdir/test_gui.vim, src/testdir/test16.in,
|
||||
src/testdir/test16.ok, src/testdir/Make_all.mak, src/Makefile,
|
||||
src/testdir/Make_vms.mms
|
||||
|
||||
Patch 7.4.2154
|
||||
Problem: Test_communicate() fails sometimes.
|
||||
Solution: Add it to the flaky tests.
|
||||
Files: src/testdir/runtest.vim
|
||||
|
||||
Patch 7.4.2155
|
||||
Problem: Quotes make GUI test fail on MS-Windows.
|
||||
Solution: Remove quotes, strip white space.
|
||||
Files: src/testdir/test_gui.vim
|
||||
|
||||
Patch 7.4.2156
|
||||
Problem: Compiler warning.
|
||||
Solution: Add type cast. (Ken Takata, Mike Williams)
|
||||
Files: src/os_win32.c
|
||||
|
||||
Patch 7.4.2157
|
||||
Problem: Test_job_start_fails() is expected to report memory leaks, making
|
||||
it hard to see other leaks in test_partial.
|
||||
Solution: Move Test_job_start_fails() to a separate test file.
|
||||
Files: src/testdir/test_partial.vim, src/testdir/test_job_fails.vim,
|
||||
src/Makefile, src/testdir/Make_all.mak
|
||||
|
||||
Patch 7.4.2158
|
||||
Problem: Result of getcompletion('', 'cscope') depends on previous
|
||||
completion. (Christian Brabandt)
|
||||
Solution: Call set_context_in_cscope_cmd().
|
||||
Files: src/evalfunc.c, src/testdir/test_cmdline.vim
|
||||
|
||||
Patch 7.4.2159
|
||||
Problem: Insufficient testing for cscope.
|
||||
Solution: Add more tests. (Dominique Pelle)
|
||||
Files: src/testdir/test_cscope.vim
|
||||
|
||||
Patch 7.4.2160
|
||||
Problem: setmatches() mixes up values. (Nikolai Pavlov)
|
||||
Solution: Save the string instead of reusing a shared buffer.
|
||||
Files: src/dict.c, src/evalfunc.c, src/testdir/test_expr.vim,
|
||||
|
||||
Patch 7.4.2161 (after 7.4.2160)
|
||||
Problem: Expression test fails without conceal feature.
|
||||
Solution: Only check "conceal" with the conceal feature.
|
||||
Files: src/testdir/test_expr.vim
|
||||
|
||||
Patch 7.4.2162
|
||||
Problem: Result of getcompletion('', 'sign') depends on previous
|
||||
completion.
|
||||
Solution: Call set_context_in_sign_cmd(). (Dominique Pelle)
|
||||
Files: src/evalfunc.c, src/testdir/test_cmdline.vim
|
||||
|
||||
[MORE COMING!]
|
||||
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
@ -1,18 +1,192 @@
|
||||
" Vim indent file
|
||||
" Language: Javascript
|
||||
" Maintainer: Going to be Darrick Wiebe
|
||||
" Last Change: 2015 Jun 09
|
||||
" Language: Javascript
|
||||
" Maintainer: vim-javascript community
|
||||
" URL: https://github.com/pangloss/vim-javascript
|
||||
" Last Change: August 12, 2016
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
if exists('b:did_indent')
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
" C indenting is not too bad.
|
||||
setlocal cindent
|
||||
" Now, set up our indentation expression and keys that trigger it.
|
||||
setlocal indentexpr=GetJavascriptIndent()
|
||||
setlocal nolisp
|
||||
setlocal indentkeys=0{,0},0),0],:,!^F,o,O,e
|
||||
setlocal cinoptions+=j1,J1
|
||||
setlocal cinkeys-=0#
|
||||
setlocal cinkeys+=0]
|
||||
|
||||
let b:undo_indent = "setl cin<"
|
||||
let b:undo_indent = 'setlocal indentexpr< indentkeys< cinoptions<'
|
||||
|
||||
" Only define the function once.
|
||||
if exists('*GetJavascriptIndent')
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Get shiftwidth value
|
||||
if exists('*shiftwidth')
|
||||
function s:sw()
|
||||
return shiftwidth()
|
||||
endfunction
|
||||
else
|
||||
function s:sw()
|
||||
return &sw
|
||||
endfunction
|
||||
endif
|
||||
|
||||
let s:line_pre = '^\s*\%(\/\*.\{-}\*\/\s*\)*'
|
||||
let s:expr_case = s:line_pre . '\%(\%(case\>.\+\)\|default\)\s*:'
|
||||
" Regex of syntax group names that are or delimit string or are comments.
|
||||
let s:syng_strcom = '\%(s\%(tring\|pecial\)\|comment\|regex\|doc\|template\)'
|
||||
|
||||
" Regex of syntax group names that are strings or documentation.
|
||||
let s:syng_comment = '\%(comment\|doc\)'
|
||||
|
||||
" Expression used to check whether we should skip a match with searchpair().
|
||||
let s:skip_expr = "line('.') < (prevnonblank(v:lnum) - 2000) ? dummy : synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_strcom."'"
|
||||
|
||||
function s:lookForParens(start,end,flags,time)
|
||||
if has('reltime')
|
||||
return searchpair(a:start,'',a:end,a:flags,s:skip_expr,0,a:time)
|
||||
else
|
||||
return searchpair(a:start,'',a:end,a:flags,0,0)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
let s:line_term = '\%(\s*\%(\/\*.\{-}\*\/\s*\)\=\)\@>$'
|
||||
|
||||
" configurable regexes that define continuation lines, not including (, {, or [.
|
||||
if !exists('g:javascript_opfirst')
|
||||
let g:javascript_opfirst = '\%([<>,:?^%]\|\([-/.+]\)\%(\1\|\*\|\/\)\@!\|\*\/\@!\|=>\@!\||\|&\|in\%(stanceof\)\=\>\)'
|
||||
endif
|
||||
let g:javascript_opfirst = s:line_pre . g:javascript_opfirst
|
||||
|
||||
if !exists('g:javascript_continuation')
|
||||
let g:javascript_continuation = '\%([<*,.?:^%]\|+\@<!+\|-\@<!-\|=\@<!>\|\*\@<!\/\|=\||\|&\|\<in\%(stanceof\)\=\)'
|
||||
endif
|
||||
let g:javascript_continuation .= s:line_term
|
||||
|
||||
function s:Onescope(lnum,text,add)
|
||||
return a:text =~# '\%(\<else\|\<do\|=>' . (a:add ? '\|\<try\|\<finally' : '' ) . '\)' . s:line_term ||
|
||||
\ ((a:add && a:text =~ s:line_pre . '$' && search('\%' . s:PrevCodeLine(a:lnum - 1) . 'l.)' . s:line_term)) ||
|
||||
\ cursor(a:lnum, match(a:text, ')' . s:line_term)) > -1) &&
|
||||
\ s:lookForParens('(', ')', 'cbW', 100) > 0 && search((a:add ?
|
||||
\ '\%(function\*\|[[:lower:][:upper:]_$][[:digit:][:lower:][:upper:]_$]*\)' :
|
||||
\ '\<\%(for\%(\s\+each\)\=\|if\|let\|w\%(hile\|ith\)\)') . '\_s*\%#\C','bW') &&
|
||||
\ (a:add || (expand('<cword>') ==# 'while' ? !s:lookForParens('\<do\>\C', '\<while\>\C','bW',100) : 1))
|
||||
endfunction
|
||||
|
||||
" Auxiliary Functions {{{2
|
||||
|
||||
" strip line of comment
|
||||
function s:StripLine(c)
|
||||
return a:c !~# s:expr_case ? substitute(a:c, '\%(:\@<!\/\/.*\)$', '','') : a:c
|
||||
endfunction
|
||||
|
||||
" Find line above 'lnum' that isn't empty, in a comment, or in a string.
|
||||
function s:PrevCodeLine(lnum)
|
||||
let l:lnum = prevnonblank(a:lnum)
|
||||
while l:lnum > 0
|
||||
if synIDattr(synID(l:lnum,matchend(getline(l:lnum), '^\s*[^''"]'),0),'name') !~? s:syng_strcom
|
||||
break
|
||||
endif
|
||||
let l:lnum = prevnonblank(l:lnum - 1)
|
||||
endwhile
|
||||
return l:lnum
|
||||
endfunction
|
||||
|
||||
" Check if line 'lnum' has a balanced amount of parentheses.
|
||||
function s:Balanced(lnum)
|
||||
let open_0 = 0
|
||||
let open_2 = 0
|
||||
let open_4 = 0
|
||||
let l:line = getline(a:lnum)
|
||||
let pos = match(l:line, '[][(){}]', 0)
|
||||
while pos != -1
|
||||
if synIDattr(synID(a:lnum,pos + 1,0),'name') !~? s:syng_strcom
|
||||
let idx = stridx('(){}[]', l:line[pos])
|
||||
if idx % 2 == 0
|
||||
let open_{idx} = open_{idx} + 1
|
||||
else
|
||||
let open_{idx - 1} = open_{idx - 1} - 1
|
||||
endif
|
||||
endif
|
||||
let pos = match(l:line, '[][(){}]', pos + 1)
|
||||
endwhile
|
||||
return (!open_4 + !open_2 + !open_0) - 2
|
||||
endfunction
|
||||
" }}}
|
||||
|
||||
function GetJavascriptIndent()
|
||||
if !exists('b:js_cache')
|
||||
let b:js_cache = [0,0,0]
|
||||
endif
|
||||
" Get the current line.
|
||||
let l:line = getline(v:lnum)
|
||||
let syns = synIDattr(synID(v:lnum, 1, 0), 'name')
|
||||
|
||||
" start with strings,comments,etc.{{{2
|
||||
if (l:line !~ '^[''"`]' && syns =~? 'string\|template') ||
|
||||
\ (l:line !~ '^\s*[/*]' && syns =~? s:syng_comment)
|
||||
return -1
|
||||
endif
|
||||
if l:line !~ '^\%(\/\*\|\s*\/\/\)' && syns =~? s:syng_comment
|
||||
return cindent(v:lnum)
|
||||
endif
|
||||
let l:lnum = s:PrevCodeLine(v:lnum - 1)
|
||||
if l:lnum == 0
|
||||
return 0
|
||||
endif
|
||||
|
||||
if (l:line =~# s:expr_case)
|
||||
let cpo_switch = &cpo
|
||||
set cpo+=%
|
||||
let ind = cindent(v:lnum)
|
||||
let &cpo = cpo_switch
|
||||
return ind
|
||||
endif
|
||||
"}}}
|
||||
|
||||
" the containing paren, bracket, curly. Memoize, last lineNr either has the
|
||||
" same scope or starts a new one, unless if it closed a scope.
|
||||
call cursor(v:lnum,1)
|
||||
if b:js_cache[0] >= l:lnum && b:js_cache[0] <= v:lnum && b:js_cache[0] &&
|
||||
\ (b:js_cache[0] > l:lnum || s:Balanced(l:lnum) > 0)
|
||||
let num = b:js_cache[1]
|
||||
elseif syns != '' && l:line[0] =~ '\s'
|
||||
let pattern = syns =~? 'block' ? ['{','}'] : syns =~? 'jsparen' ? ['(',')'] :
|
||||
\ syns =~? 'jsbracket'? ['\[','\]'] : ['[({[]','[])}]']
|
||||
let num = s:lookForParens(pattern[0],pattern[1],'bW',2000)
|
||||
else
|
||||
let num = s:lookForParens('[({[]','[])}]','bW',2000)
|
||||
endif
|
||||
let b:js_cache = [v:lnum,num,line('.') == v:lnum ? b:js_cache[2] : col('.')]
|
||||
|
||||
if l:line =~ s:line_pre . '[])}]'
|
||||
return indent(num)
|
||||
endif
|
||||
|
||||
let pline = s:StripLine(getline(l:lnum))
|
||||
let inb = num == 0 ? 1 : (s:Onescope(num, s:StripLine(strpart(getline(num),0,b:js_cache[2] - 1)),1) ||
|
||||
\ (l:line !~ s:line_pre . ',' && pline !~ ',' . s:line_term)) && num < l:lnum
|
||||
let switch_offset = (!inb || num == 0) || expand("<cword>") !=# 'switch' ? 0 : &cino !~ ':' || !has('float') ? s:sw() :
|
||||
\ float2nr(str2float(matchstr(&cino,'.*:\zs[-0-9.]*')) * (&cino =~# '.*:[^,]*s' ? s:sw() : 1))
|
||||
|
||||
" most significant, find the indent amount
|
||||
if (inb && (l:line =~# g:javascript_opfirst ||
|
||||
\ (pline =~# g:javascript_continuation && pline !~# s:expr_case && (pline !~ ':' . s:line_term || l:line !~#
|
||||
\ s:line_pre . '\%(d\%(o\|ebugger\)\|else\|f\%(or\|inally\)\|if\|let\|switch\|t\%(hrow\|ry\)\|w\%(hile\|ith\)\)\>')))) ||
|
||||
\ (num < l:lnum && s:Onescope(l:lnum,pline,0) && l:line !~ s:line_pre . '{')
|
||||
return (num > 0 ? indent(num) : -s:sw()) + (s:sw() * 2) + switch_offset
|
||||
elseif num > 0
|
||||
return indent(num) + s:sw() + switch_offset
|
||||
endif
|
||||
|
||||
endfunction
|
||||
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
@ -1,7 +1,7 @@
|
||||
" These commands create the option window.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2016 Apr 30
|
||||
" Last Change: 2016 Aug 12
|
||||
|
||||
" If there already is an option window, jump to that one.
|
||||
if bufwinnr("option-window") > 0
|
||||
|
@ -1,7 +1,7 @@
|
||||
" dockerfile.vim - Syntax highlighting for Dockerfiles
|
||||
" Maintainer: Honza Pokorny <http://honza.ca>
|
||||
" Version: 0.5
|
||||
" Last Change: 2014 Aug 29
|
||||
" Maintainer: Honza Pokorny <https://honza.ca>
|
||||
" Version: 0.6
|
||||
" Last Change: 2016 Aug 9
|
||||
" License: BSD
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ let b:current_syntax = "dockerfile"
|
||||
|
||||
syntax case ignore
|
||||
|
||||
syntax match dockerfileKeyword /\v^\s*(ONBUILD\s+)?(ADD|CMD|ENTRYPOINT|ENV|EXPOSE|FROM|MAINTAINER|RUN|USER|VOLUME|WORKDIR|COPY)\s/
|
||||
syntax match dockerfileKeyword /\v^\s*(ONBUILD\s+)?(ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)\s/
|
||||
|
||||
syntax region dockerfileString start=/\v"/ skip=/\v\\./ end=/\v"/
|
||||
|
||||
|
@ -4,8 +4,9 @@
|
||||
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
|
||||
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
|
||||
" Contributor: Karsten Hopp <karsten@redhat.com>
|
||||
" Last Change: 2016 Apr 7
|
||||
" SSH Version: 7.2p2
|
||||
" Contributor: Dean, Adam Kenneth <adam.ken.dean@hpe.com>
|
||||
" Last Change: 2016 Aug 11
|
||||
" SSH Version: 7.3p1
|
||||
"
|
||||
|
||||
" Setup
|
||||
@ -205,6 +206,7 @@ syn keyword sshconfigKeyword Port
|
||||
syn keyword sshconfigKeyword PreferredAuthentications
|
||||
syn keyword sshconfigKeyword Protocol
|
||||
syn keyword sshconfigKeyword ProxyCommand
|
||||
syn keyword sshconfigKeyword ProxyJump
|
||||
syn keyword sshconfigKeyword ProxyUseFDPass
|
||||
syn keyword sshconfigKeyword PubkeyAcceptedKeyTypes
|
||||
syn keyword sshconfigKeyword PubkeyAuthentication
|
||||
|
Loading…
x
Reference in New Issue
Block a user