Commit Graph

15014 Commits

Author SHA1 Message Date
James McCoy 6566251d14
Merge remote-tracking branch 'upstream/master' into libcall 2019-12-15 21:17:16 -05:00
James McCoy 9c4223215f
libcallnr: Use int, not int64_t, as the return type for Vim compat
Vim's documentation simply states that libcallnr() should be used "for a
function that returns an int".  Based on the tests, code, and common
syscall interfaces, this should likely be taken literally instead of
trying to apply some well-defined type lipstick.

Notably, this change fixes Test_libcall_libcallnr on hppa (a 32-bit
big-endian system).
2019-12-15 21:17:00 -05:00
James McCoy 9f3d483c79
Merge pull request #7202 from teto/jobstart_env
[RFC] override environment for jobstart
2019-12-13 06:52:48 -05:00
James McCoy 91b313a904
Add negative test for type of job's env option 2019-12-12 07:57:27 -05:00
Justin M. Keyes bc879dd1f1 snap: allow job failure
This thing still fails with "need manual review" error.

Try devmode (again)--since we got approved once, maybe it works now?

ref 49849745f1
ref d9ab83d057
ref #11482
2019-12-12 01:29:11 -08:00
Marvim the Paranoid Android 914555b14c version.c: update [ci skip] #11415
vim-patch:8.1.0121: crash when using ballooneval related to 'vartabstop'
vim-patch:8.1.0132: lua tests are old style
vim-patch:8.1.0134: Lua interface does not support funcref
vim-patch:8.1.0758: font number is always one instead of the actual
vim-patch:8.1.0808: MS-Windows: build error with GUI
vim-patch:8.1.1767: FEAT_SESSION defined separately
vim-patch:8.1.1958: old style comments taking up space
vim-patch:8.1.2327: cannot build with Hangul input
vim-patch:8.1.2328: a few hangul input pieces remain
vim-patch:8.1.2352: CI doesn't cover FreeBSD
vim-patch:8.1.2354: Cirrus CI runs on another repository
vim-patch:8.1.2359: cannot build without FEAT_FLOAT
vim-patch:8.1.2370: build problems on VMS
vim-patch:8.1.2372: VMS: failing realloc leaks memory
vim-patch:8.1.2374: unused parts of libvterm are included
vim-patch:8.1.2376: preprocessor indents are incorrect
vim-patch:8.1.2383: using old C style comments
vim-patch:8.1.2404: channel test fails under valgrind
vim-patch:8.1.2407: proto files, dependencies and build instructions outdated
vim-patch:8.1.2409: creating the distribution doesn't work as documented
vim-patch:8.1.2410: MS-Windows: test_iminsert fails without IME support
vim-patch:8.1.2413: cannot update ex_cmdidxs.h on MS-Windows
vim-patch:8.1.2414: MS-Windows: properties dialog box shows wrong character
vim-patch:8.1.2417: MinGW/Cygwin build does not clean up all files
vim-patch:8.1.2423: MS-Windows properties shows version as "8, 1, 0"
2019-12-12 00:37:23 -08:00
James McCoy 39963c6a04
os_getenvname_at_index: Handle Windows env vars whose name starts with = 2019-12-11 22:04:29 -05:00
James McCoy 6dc1005787
Add os_getfullenv_size/os_copyfullenv 2019-12-11 22:04:29 -05:00
Matthieu Coudron 19b6237087
jobstart now supports env/clear_env
to modify the environment of the launched job.
2019-12-11 21:07:13 -05:00
Matthieu Coudron f3fcaedfad
test: new test for setting environment 2019-12-11 21:06:42 -05:00
Justin M. Keyes d9ab83d057 snap: re-enable CI job
ref 49849745f1
ref #11482
2019-12-11 02:27:28 -08:00
Justin M. Keyes 3383f1ce26
PVS/V1049: fix numerous "DEFINE_FUNC_ATTRIBUTES" warnings #11544
PVS erroneously flags our DEFINE_FUNC_ATTRIBUTES guard:

  V1049 The 'DEFINE_FUNC_ATTRIBUTES' include guard is already defined in
  the 'lang.h.generated.h' header. The 'profile.h.generated.h' header
  will be excluded from compilation.

To satisfy PVS, just remove the `#ifndef` check. It's not needed anyway:
C allows to redundantly #define a macro.

https://gcc.gnu.org/onlinedocs/cpp/Undefining-and-Redefining-Macros.html

> if an identifier which is currently a macro is redefined, then the new
> definition must be effectively the same as the old one
> ...
> If a macro is redefined with a definition that is not effectively the
> same as the old one, the preprocessor issues a warning and changes the
> macro to use the new definition. If the new definition is effectively
> the same, the redefinition is silently ignored. This allows, for
> instance, two different headers to define a common macro. The
> preprocessor will only complain if the definitions do not match.
2019-12-11 02:21:39 -08:00
butwerenotthereyet 39094b3fae jumplist: browser-style (or 'tagstack') navigation #11530
Traditionally, when navigating to a specific location from the middle of
the jumplist results in shifting the current location to the bottom of
the list and adding the new location after it.  This behavior is not
desireable to all users--see, for example
https://vi.stackexchange.com/questions/18344/how-to-change-jumplist-behavior.

Here, another jumplist behavior is introduced.  When jumpoptions (a new
option set added here) includes stack, the jumplist behaves like the
tagstack or like history in a web browser.  That is, when navigating to
a location from the middle of the jumplist

    2 first
    1 second
    0 third <-- current location
    1 fourth
    2 fifth

to a new location the locations after the current location in the jump
list are discarded

    2 first
    1 second
    0 third
            <-- current location

The result is that when moving forward from that location, the new
location will be appended to the jumplist:

    3 first
    2 second
    1 third
    0 new

If the new location is the same

  new == second

as some previous (but not immediately prior) entry in the jumplist,

    2 first
    1 second
    0 third <-- current location
    1 fourth
    2 fifth

both occurrences preserved

    3 first
    2 second
    1 third
    0 second (new)

when moving forward from that location.

It would be desireable to go farther and, when the new location is the
same as the location that is currently next in the jumplist,

    new == fourth

make the result of navigating to the new location by jumping (e.g. 50gg)
be the same as moving forward in the jumplist

    2 first
    1 second
    0 third
    1 new <-- current location
    2 fifth

and simply increment the jumplist index.  That change is NOT part of
this patch because it would require passing the new cursor location to
the function (setpcmark) from all of its callees.  That in turn would
require those callees to know *before* calling what the new cursor
location is, which do they do not currently.
2019-12-10 00:56:56 -08:00
Justin M. Keyes 6c22c7ab97 netrw.vim: do not save +/* registers
netrw shouldn't be touching these in the first place.

fix #11089
ref #6892
ref #6695
2019-12-10 00:46:04 -08:00
Justin M. Keyes 7111fe9459
doc: LSP [ci skip] #11524 2019-12-10 00:29:39 -08:00
Justin M. Keyes 76d1e9360a
Merge #11528 from janlazo/vim-8.1.2402
vim-patch:8.1.{2402,2408}
2019-12-07 18:01:15 -08:00
Jan Edmund Lazo 6a4bdeb572
vim-patch:8.1.2408: syntax menu and build instructions outdated
Problem:    Syntax menu and build instructions outdated.
Solution:   Update build instructions and syntax menu.
bfd3433330
2019-12-07 17:39:43 -05:00
Jan Edmund Lazo 7d8f32338f
vim-patch:8.1.2402: typos and other small things
Problem:    Typos and other small things.
Solution:   Small fixes.
f48ee3c284
2019-12-07 11:48:55 -05:00
Jakub Łuczyński 30ed245d00 LSP: Add jump when calling gotodef (#11521) 2019-12-07 03:34:22 -08:00
Ashkan Kiani 0e6c6261e1
Fix access on vim.wo (#11517)
* Add more tests for vim.wo
2019-12-07 03:34:02 -08:00
Matthieu Coudron fbae9f8541 runtime/syntax/vim.vim: highlight "blend" keyword #11520 2019-12-05 22:14:54 -08:00
Jan Edmund Lazo ed424655be vim-patch:8.1.2385: open cmdline window with feedkeys() #11516
Problem:    Opening cmdline window with feedkeys() does not work. (Yegappan
            Lakshmanan)
Solution:   Recognize K_CMDWIN also when ex_normal_busy is set.
85db547598
2019-12-04 23:04:19 -08:00
Justin M. Keyes 3aa95ef27e
defaults: set nostartofline (#11135)
Having the cursor change column can be surprising.

Force startofline in functional and old tests.
Remove the functional breakindent test, as it's a subset of the oldtest one.
2019-12-03 20:58:03 -08:00
Jan Edmund Lazo bcd5fc9764 vim-patch:8.1.2384: test 48 is old style #11509
Problem:    Test 48 is old style.
Solution:   Merge test cases into new style test. (Yegappan Lakshmanan,
            closes vim/vim#5307)
079119babe
2019-12-03 20:54:53 -08:00
Matthieu Coudron 4598e489c7
test: always pass a string to expect_msg_seq
Seems like pcall doesn't always return a string as a 2nd element of the tuple.
2019-12-03 23:51:30 -05:00
Matthieu Coudron 3beef8ee1c defaults: set nostartofline
Having the cursor change column can be surprising.

Force startofline in functional and old tests.
Remove the functional breakindent test, as it's a subset of the oldtest one.
2019-12-03 13:31:17 +01:00
Justin M. Keyes b1e4ec1c2a
Merge #11500 from justinmk/api-deprecate
API: rename nvim_execute_lua, deprecate nvim_command_output
2019-12-02 22:38:36 -08:00
Justin M. Keyes a3b6c2a3dc API: rename nvim_execute_lua => nvim_exec_lua
- We already find ourselves renaming nvim_execute_lua in tests and
  scripts, which suggests "exec" is the verb we actually want.
- Add "exec" verb to `:help dev-api`.
2019-12-02 22:06:42 -08:00
Justin M. Keyes c34130d13a API: deprecate nvim_command_output 2019-12-02 20:52:06 -08:00
Daniel Hahler 22b52dd462
log_init: call log_path_init (#11501)
This has to be done after `init_homedir` for XDG default and `set_init_1` for
lookup from env, which could be done earlier likely (to help with
https://github.com/neovim/neovim/issues/10937), but this keeps it in
sync with Vim.

Fixes https://github.com/neovim/neovim/issues/11499.
2019-12-02 22:21:15 +01:00
Daniel Hahler 56be9fbde1
testdir/runnvim.sh: create messages file always (#11503) 2019-12-02 18:26:40 +01:00
Daniel Hahler 0b7a7b23cc
oldtest: support for running by filename (#11473)
Follow-up to 8969efca8 (Vim patch 8.1.0723)

NOTE: This changes the main entrypoint for running single oldtest files
to not use/require the ".res" extension anymore.  But it is handled for
B/C.

Adds a phony rule to run oldtest by filename.
Not going through "$(MAKE)" avoids GNUmakefile being used then (which I
use for WIP things), and it seems like SINGLE_MAKE should be used anyway
probably.
2019-12-02 17:18:37 +01:00
Daniel Hahler 7d66a02b88
build: CMakeLists: do not set MIN_LOG_LEVEL with C flags (#11498)
Fixes https://github.com/neovim/neovim/issues/11496.
2019-12-02 17:12:51 +01:00
Daniel Hahler 3b0191e330
src/nvim/testdir/test_quickfix.vim: align with Vim (#11502) 2019-12-02 17:12:26 +01:00
erw7 ab860cb5f6 dictwatcher: fix use-after-free #11495
fixes #11494
2019-12-02 02:09:30 -08:00
Justin M. Keyes 735d89d09e
Merge #11159 'API: nvim_exec'
API: nvim_exec: function to source multiline Vimscript ("anonymous :source")
2019-12-01 23:15:16 -08:00
Justin M. Keyes b1991f66d5 API: rename nvim_source => nvim_exec
- Eliminate nvim_source_output(): add boolean `output` param to
  nvim_exec() instead.
2019-12-01 22:35:15 -08:00
Vikram Pal bd43e011b5 API: nvim_source_output
- Similar to nvim_source but will capture the output
- Add meaningful VimL tracebacks for nvim_source
- Handle got_int
- Add error reporting
2019-12-01 19:07:57 -08:00
Justin M. Keyes 276c2da286 API: nvim_source: fix multiline input
- DOCMD_REPEAT is needed to source all lines of input.
- Fix ":verbose set {option}?" by handling SID_STR in get_scriptname().

closes #8722
2019-12-01 16:09:24 -08:00
Vikram Pal 0a8d145075 API: nvim_source: save/restore script context #11159
Use a constant for the script id.
2019-12-01 16:09:24 -08:00
Siddhant Gupta 6aa03e86da API: nvim_source 2019-12-01 16:09:24 -08:00
Ashkan Kiani 70b6061666
Add vim.startswith and vim.endswith (#11248) 2019-12-01 05:32:55 -08:00
Ashkan Kiani e6da21d128
Add vim.cmd as an alias for nvim_command (#11446) 2019-12-01 05:28:53 -08:00
Ashkan Kiani edca84cfc9
Return nil instead of NIL for vim.env (#11486) 2019-12-01 05:04:57 -08:00
Justin M. Keyes a17ccb0d24
screen.lua: remove screen:_on_event #11488
Tests can redefine the handlers, so we don't need this extra hook.
2019-12-01 01:06:10 -08:00
Daniel Hahler bff42cd7b3
ci: revisit OpenBSD/FreeBSD config (#11477) 2019-12-01 06:45:35 +01:00
Daniel Hahler cd6f755cf7 ci: SourceHut: revisit OpenBSD/FreeBSD config 2019-12-01 06:44:35 +01:00
Daniel Hahler fe927b84de terminfo_is_bsd_console: fallback to false
Ref: https://github.com/neovim/neovim/commit/ab7da4c53138768#r36200515
2019-12-01 06:44:35 +01:00
Jan Edmund Lazo 590082a58f vim-patch:8.1.2367: registers are not sufficiently tested (#11489)
Problem:    Registers are not sufficiently tested.
Solution:   Add a few more test cases. (Yegappan Lakshmanan, closes vim/vim#5288)
71136db1bf
2019-12-01 06:41:40 +01:00
Justin M. Keyes 49849745f1 snap: disable job until we are approved
We are waiting for snapcraft.io to review/approve us for "classic" mode.
reverts 1f684cf80a
ref #11482
2019-11-30 15:18:48 -08:00