Commit Graph

867 Commits

Author SHA1 Message Date
Rob Pilling
36b4191e41 Document skip_colon_white() 2019-10-31 23:21:14 +00:00
Rob Pilling
1c7aa11312 Allow multiple leading colons before and after modifiers for 'inccommand' 2019-10-31 19:16:52 +00:00
Rob Pilling
3b3d217754 Factor out skip_colon_white() 2019-10-31 19:16:52 +00:00
Jaehwang Jerry Jung
034077ed1c vim-patch:8.1.2173: searchit() has too many arguments
Problem:    Searchit() has too many arguments.
Solution:   Move optional arguments to a struct.  Add the "wrapped" argument.
92ea26b925
2019-10-27 03:35:19 +09:00
Jan Edmund Lazo
5e02bd071e vim-patch:8.1.0288: quickfix code uses cmdidx too often
Problem:    Quickfix code uses cmdidx too often.
Solution:   Add is_loclist_cmd(). (Yegappan Lakshmanan)
396659592f
2019-10-23 01:33:16 -04:00
Jan Edmund Lazo
c067efa696 vim-patch:8.1.2197: ExitPre autocommand may cause accessing freed memory
Problem:    ExitPre autocommand may cause accessing freed memory.
Solution:   Check the window pointer is still valid. (closes vim/vim#5093)
34ba06b6e6
2019-10-21 07:34:06 -04:00
Jurica Bradaric
0586a4b512 vim-patch:8.1.1588: in :let-heredoc line continuation is recognized
Problem:    In :let-heredoc line continuation is recognized.
Solution:   Do not consume line continuation. (Ozaki Kiichi, closes vim/vim#4580)
e96a2498f9
2019-10-07 14:14:13 +02:00
Justin M. Keyes
93bceac9bd Merge #11157 from janlazo/vim-8.1.2113
vim-patch:8.1.{59, 586, 2113}
2019-10-06 12:32:27 -07:00
Jan Edmund Lazo
d1abd6513e vim-patch:8.1.0586: :digraph output is not easy to read
Problem:    :digraph output is not easy to read.
Solution:   Add highlighting for :digraphs. (Marcin Szamotulski, closes vim/vim#3572)
            Also add section headers for :digraphs!.
eae8ae1b2b
2019-10-06 09:43:39 -04:00
Jurica Bradarić
fe074611cd vim-patch:8.1.1371: cannot recover from a swap file #11081
Problem:    Cannot recover from a swap file.
Solution:   Do not expand environment variables in the swap file name.
            Do not check the extension when we already know a file is a swap
            file.  (Ken Takata, closes 4415, closes vim/vim#4369)
99499b1c05
2019-10-05 20:35:48 -07:00
Jan Edmund Lazo
655085204e vim-patch:8.1.0230: directly checking 'buftype' value
Problem:    Directly checking 'buftype' value.
Solution:   Add the bt_normal() function. (Yegappan Lakshmanan)
91335e5a67
2019-10-01 22:27:45 -04:00
Jan Edmund Lazo
b853b6e4ea vim-patch:8.0.1109: timer causes error on exit from Ex mode
Problem:    Timer causes error on exit from Ex mode. (xtal8)
Solution:   save and restore the ex_pressedreturn flag. (Christian Brabandt,
            closes vim/vim#2079)
f5291f301e
2019-09-21 08:43:07 -04:00
Justin M. Keyes
6aae0e7c94 lint 2019-09-13 19:29:25 -07:00
Justin M. Keyes
3344cffe7b getdigits: introduce strict, def parameters
Problem:
During a refactor long ago, we changed the `getdigits_*` familiy of
functions to abort on overflow.  But this is often wrong, because many
of these codepaths are handling user input.

Solution:
Decide at each call-site whether to use "strict" mode.

fix #5555
2019-09-13 19:29:25 -07:00
Jan Edmund Lazo
6508215b5c Remove excess <stdint.h> 2019-09-11 22:27:45 -04:00
Björn Linse
f72c7b0b3a messages: batch draw :map 2019-09-08 15:24:14 +02:00
Jan Edmund Lazo
a96b3677c6 vim-patch:8.1.1988: :startinsert! does not work the same way as "A"
Problem:    :startinsert! does not work the same way as "A".
Solution:   Use the same code to move the cursor. (closes vim/vim#4896)
8d3b51084a
2019-09-06 23:27:14 -04:00
Justin M. Keyes
8b06231612 Merge #10869 'vim-patch:8.1.{0309,0362,0365,0515,1946}' 2019-09-05 14:10:32 -07:00
erw7
0e11a106c5 vim-patch:8.1.0309: profiling does not show a count for condition lines
Problem:    Profiling does not show a count for condition lines.  (Daniel
            Hahler)
Solution:   Count lines when not skipping. (Ozaki Kiichi, closes #2499)
7feb35e778
2019-09-04 13:40:05 +09:00
erw7
a2e48b556b vim-patch:8.1.0362: cannot get the script line number when executing a function
Problem:    Cannot get the script line number when executing a function.
Solution:   Store the line number besides the script ID. (Ozaki Kiichi,
            closes vim/vim#3362)  Also display the line number with ":verbose set".
f29c1c6aa3
2019-09-04 13:40:04 +09:00
Jan Edmund Lazo
07b209b1fe vim-patch:8.0.1768: SET_NO_HLSEARCH() used in a wrong way
Problem:    SET_NO_HLSEARCH() used in a wrong way.
Solution:   Make it a function. (suggested by Dominique Pelle,
            closes vim/vim#2850)
451fc7b954
2019-09-02 18:40:56 -04:00
Julian Berman
2963533fe1 Unreserve :X #10807
closes #10806
2019-08-18 19:28:13 +02:00
Jan Edmund Lazo
0a1807ea25 vim-patch:8.1.1870: using :pedit from a help file sets help filetype
Problem:    Using :pedit from a help file sets the preview window to help
            filetype. (Wang Shidong)
Solution:   Do not set "keep_help_flag". (closes vim/vim#3536)
026587b35c
2019-08-17 18:11:05 -04:00
mg979
a690bf8116 mksession: use exists(':tcd'), not has('nvim') #10770
Since recent vim versions also support :tcd, check for the actual
availability of the command, rather than has('nvim').
2019-08-14 08:45:54 +02:00
Daniel Hahler
e2d6e67bbc Merge pull request #10171 from blueyed/vim-8.1.1318
vim-patch:8.1.1318: code for text changes is in a "misc" file
2019-08-09 19:25:56 +02:00
Jan Edmund Lazo
a48896c6e7 vim-patch:8.1.1540: cannot build without +eval #10729
Problem:    Cannot build without the +eval feature.
Solution:   Define ex_const if needed.
0abb4273f6
2019-08-09 10:28:15 +02:00
Daniel Hahler
0e3b9ea74d includes 2019-08-07 14:21:23 +02:00
Justin M. Keyes
45c34bd84a :doautocmd : Never show "No matching autocommands" #10689
The message is useless, it doesn't even mention the event name.

vim_dev discussion:
https://groups.google.com/forum/#!msg/vim_dev/RTbq58TMq9w/Xr4rSoUTCgAJ

ref: https://github.com/vim/vim/issues/4300
2019-08-05 03:33:45 +02:00
Jan Edmund Lazo
5dd860fd73 vim-patch:8.1.1237: error for using "compl", reserved word in C++
Problem:    Error for using "compl", reserved word in C++.
Solution:   Rename to "complp". (suggestion by Ken Takata)
52111f8231
2019-08-03 12:38:50 -04:00
Jan Edmund Lazo
d6b31721bf vim-patch:8.1.1086: too many curly braces
Problem:    Too many curly braces.
Solution:   Remove curly braces where they are not needed. (Hirohito Higashi,
            closes vim/vim#3982)
abab0b0fdd

Neovim code style requires the opposite.
Add curly braces to minimize lint errors when applying Vim patches.
2019-07-28 23:44:36 -04:00
Jit
7cc2b723d4 TextYankPost: spurious/too-early dispatch during delete #10392
Problem: delete-with-register dispatches TextYankPost before updating yank registers
Solution: Add flag to op_yank().

Fixes #10225
2019-07-29 00:50:11 +02:00
Justin M. Keyes
2731080212 cleanup: remove mch_fopen in favor of os_fopen 2019-07-25 22:32:23 +02:00
Jan Edmund Lazo
9ea449085d vim-patch:8.1.1746: ":dl" is seen as ":dlist" instead of ":delete"
Problem:    ":dl" is seen as ":dlist" instead of ":delete".
Solution:   Do not use cmdidxs2[] if the length is 1. (closes vim/vim#4721)
94f82cbacf
2019-07-24 21:43:04 -04:00
ddcien
184b87ee31 build: fix gcc warnings #10568
gcc version 8.3.0 (Debian 8.3.0-6)

    ../src/nvim/ex_docmd.c: In function ‘commands_array’:
    ../src/nvim/ex_docmd.c:10192:36: warning: ‘%ld’ directive output may be truncated writing between 1 and 19 bytes into a region of size 10 [-Wformat-truncation=]
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
                                        ^~~
    ../src/nvim/ex_docmd.c:10192:37: note: format string is defined here
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
    ../src/nvim/ex_docmd.c:10192:36: note: directive argument in the range [0, 9223372036854775807]
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
                                        ^~~
    ../src/nvim/ex_docmd.c:10192:9: note: ‘snprintf’ output between 2 and 20 bytes into a destination of size 10
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../src/nvim/ex_docmd.c:10205:36: warning: ‘%ld’ directive output may be truncated writing between 1 and 19 bytes into a region of size 10 [-Wformat-truncation=]
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
                                        ^~~
    ../src/nvim/ex_docmd.c:10205:37: note: format string is defined here
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
    ../src/nvim/ex_docmd.c:10205:36: note: directive argument in the range [0, 9223372036854775807]
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
                                        ^~~
    ../src/nvim/ex_docmd.c:10205:9: note: ‘snprintf’ output between 2 and 20 bytes into a destination of size 10
             snprintf(str, sizeof(str), "%" PRId64, (int64_t)cmd->uc_def);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../src/nvim/spell.c: In function ‘did_set_spelllang’:
    ../src/nvim/spell.c:1631:61: warning: ‘%s’ directive output may be truncated writing up to 254 bytes into a region of size 84 [-Wformat-truncation=]
                    "autocmd VimEnter * call spellfile#LoadFile('%s')|set spell",
                                                                 ^~
    ../src/nvim/spell.c:2063:25:
             spell_load_lang(lang);
                             ~~~~                                 
    ../src/nvim/spell.c:1630:7: note: ‘snprintf’ output between 57 and 311 bytes into a destination of size 128
           snprintf(autocmd_buf, sizeof(autocmd_buf),
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    "autocmd VimEnter * call spellfile#LoadFile('%s')|set spell",
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    lang);
                    ~~~~~
    ../src/nvim/window.c: In function ‘win_rotate’:
    ../src/nvim/window.c:1780:22: warning: ‘wp2’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       wp2->w_pos_changed = true;
                          ^
    ../src/nvim/window.c:1779:22: warning: ‘wp1’ may be used uninitialized in this function [-Wmaybe-uninitialized]
       wp1->w_pos_changed = true;
2019-07-22 12:38:14 +02:00
Jan Edmund Lazo
39549159fe vim-patch:8.1.0706: introduce :redrawtabline #10570
Problem:    Tabline is not always redrawn when something that is used in
            'tabline' changes.
Solution:   Add ":redrawtabline" so that a plugin can at least cause the
            redraw when needed.
e12bab3144
2019-07-22 12:25:07 +02:00
Jan Edmund Lazo
d20bbc8022 vim-patch:8.1.0789: session sets v:errmsg #10553
Problem:    Sourcing a session sets v:errmsg.
Solution:   Use "%argdel" instead of "argdel *". (Jason Franklin)
555de4e3b2
2019-07-20 19:06:17 +02:00
Björn Linse
aa28e070e9 refactor: use int for Columns and Rows 2019-07-19 15:57:19 +02:00
Ihor Antonov
452ec4ed31 PVS/V1037: redundant switch-case branches #10519
Suppress the warning, the branches are semantically different.
2019-07-18 00:20:06 +02:00
Justin M. Keyes
b35ad86024 Merge #10391 from janlazo/vim-8.1.0495
vim-patch:8.1.{495,505,531,533,583,623,630,641,686,715,833,1012,1221,1651}
2019-07-16 19:52:23 +02:00
Justin M. Keyes
583c35714c Merge #10520 'PVS/V1037: redundant case-branches' 2019-07-16 11:32:35 +02:00
Jan Edmund Lazo
e95945a157 vim-patch:8.1.0623: iterating through window frames is repeated
Problem:    Iterating through window frames is repeated.
Solution:   Define FOR_ALL_FRAMES. (Yegappan Lakshmanan)
3d1491ed23
2019-07-15 23:07:29 -04:00
Ihor Antonov
9a5183f22d lint 2019-07-15 21:34:15 -04:00
Ihor Antonov
31d256892e pvs/V1037: two case-branches perform the same action 2019-07-15 21:32:53 -04:00
Björn Linse
d11a146516 window: allow resize wincmds for floats 2019-07-08 19:45:57 +02:00
Jan Edmund Lazo
8bea8d7b47 vim-patch:8.0.1726: older MSVC doesn't support declarations halfway a block
Problem:    Older MSVC doesn't support declarations halfway a block.
Solution:   Move the declaration back to the start of the block.
df2c774ded
2019-06-19 01:36:00 -04:00
Jan Edmund Lazo
18b031ea1d vim-patch:8.0.0953: get "no write since last change" error in terminal window
Problem:    Get "no write since last change" error in terminal window.
Solution:   Use another message when closing a terminal window. Make ":quit!"
            also end the job.
f5be7cd016
2019-06-13 22:40:12 -04:00
Daniel Hahler
78df9eb51d vim-patch:1ebff3dc9 #10144
patch 8.1.0158: GUI: input() fails if CTRL-C was pressed before

Problem:    GUI: input() fails if CTRL-C was pressed before. (Michael Naumann)
Solution:   call vpeekc() to drop the CTRL-C from the input stream.
1ebff3dc93
2019-06-08 13:02:26 +02:00
Justin M. Keyes
f6f9e4a231 Merge #10114 from erw7/vim-8.1.1270
vim-patch:8.1.{0629,1270,1271,1283,1288,1289,1350,1375,1390,1475}
2019-06-07 21:28:53 +02:00
erw7
485972dd64 vim-patch:8.1.0629: "gn" selects the wrong text with a multi-line match
Problem:    "gn" selects the wrong text with a multi-line match.
Solution:   Get the end position from searchit() directly. (closes vim/vim#3695)
5d24a2257e
2019-06-04 09:53:55 +09:00
Jan Edmund Lazo
7ad621b6d9 vim-patch:8.0.1518: error messages suppressed after ":silent! try"
Problem:    Error messages suppressed after ":silent! try". (Ben Reilly)
Solution:   Restore emsg_silent before executing :try. (closes vim/vim#2531)
2be5733152
2019-06-03 20:11:29 -04:00