Commit Graph

3061 Commits

Author SHA1 Message Date
Jan Edmund Lazo
b34dc4c458 ex_cmds: port :eval
Cherry-picked from patch v8.1.1807.
Required for patch v8.2.2761.
2021-04-15 18:30:03 -04:00
Brian Shu
ef5314ce59 lsp: add lsp.buf_request_all for invoking asynchronous callbacks
fixed nil issue

changed poll to 10

changed wording

added docs to once

comma

english
2021-04-15 12:54:59 -04:00
Mathias Fussenegger
046991e4d5 lsp: Remove vim.NIL handling from apply_text_document_edit
The rpc layer normalizes `vim.NIL` to `nil`, so the scenario tested
should never happen.
2021-04-14 21:42:03 +02:00
Mathias Fussenegger
b67f689e4c lsp: Accept text document edits with version zero
There were a couple of reports of "Buffer X newer than edits" problems.
We first assumed that it is incorrect for a server to send 0 as a
version - and stated that they should send a `null` instead, given that
in the specification the `textDocument` of a `TextDocumentEdit` is a
`OptionalVersionedTextDocumentIdentifier`.

But it turns out that this was a change in 3.16, and in 3.15 and earlier
versions of the specification it was a `VersionedTextDocumentIdentifier`
and language servers didn't have a better option than sending `0` if
they don't keep track of the version numbers.

So this changes the version check to always accept `0` values.

See

- https://github.com/neovim/neovim/issues/12970
- https://github.com/neovim/neovim/issues/14256
- https://github.com/haskell/haskell-language-server/pull/1727
2021-04-14 21:29:32 +02:00
Aru Sahni
d9c7adc64c doc: prefer "python -m pip" (#14353)
The current guidance for install Python packages is to use

    python -m pip install <package_name>

Instead of

    pip install <package_name>

This ensures that one is using the version of pip that is tied to the
environment's interpreter (and, thusly, its packages).  This has [been
endorsed by a core
maintainer](https://snarky.ca/why-you-should-use-python-m-pip/) as
being the recommended way to invoke pip.

As there currently are a few places where the old invocation was used,
attempt to bring them in line.

Fixes #14234
2021-04-14 20:48:13 +02:00
Sean Dewar
6ab4c8f955 doc: port prompt-buffer section (#14342)
[skip ci]

Changes from original include:
- "See |terminal-window|" -> "See |terminal|".
- Remove mention of using CTRL-W window commands in insert mode.
- Converted usage example to use the Nvim job and channel API.
- Removed logging from usage example, as ch_logfile() has no direct Nvim
  counterpart.
- Fixed some small grammar/spelling mistakes.
2021-04-14 20:39:37 +02:00
Michael Lingelbach
cd3e74201a lsp: fix _make_floating_popup_size when wrap_at is nil (#14359) 2021-04-14 13:01:14 +02:00
Thomas Vigouroux
e652b2987a Merge pull request #14046 from nvim-treesitter/feature/language-tree-directive-config
feat(treesitter): allow injections to be configured through directives
2021-04-14 05:36:05 +02:00
Marco Hinz
6b16ec701e lsp: fix off-by-one in line diagnostic highlighting 2021-04-14 02:11:47 +02:00
Michael Lingelbach
391fe1064e Merge pull request #14119 from mfussenegger/lsp-debounce
lsp: Add a flag to debounce didChange notifications
2021-04-13 15:03:13 -07:00
Marco Hinz
2001ba2c6a Merge pull request #14324 from mhinz/lsp-border-float-placement 2021-04-13 23:43:50 +02:00
Mathias Fussenegger
720c6353b5 lsp: Add a flag to debounce didChange notifications
Would help with cases as reported in https://github.com/neovim/neovim/issues/14087
2021-04-13 21:02:30 +02:00
Marco Hinz
ef3f05c432 tutor: force one sign per line (#14352)
The only thing setting signs in the tutor buffer (buftype=nofile), should be
tutor.vim itself.

Instead of endlessly piling up new signs per line, just unplace any sign on the
line before placing a new one.

Closes https://github.com/neovim/neovim/issues/13808
Closes https://github.com/neovim/neovim/pull/13809
2021-04-13 12:13:44 +02:00
Marco Hinz
3831825167 lsp: correct float placement when using borders
Because borders add up to 2 to the height of a float, we need to subtract that
from the anchor position, when opening a float in the lower half of the window.
2021-04-12 19:54:54 +02:00
Marco Hinz
a215adabc1 lsp: make sure borders are always inside of the screen
Add a helper function to get the additional width a border adds to a float to
make sure that the border is always inside the visible screen.
2021-04-12 19:51:18 +02:00
Jan Edmund Lazo
3893027200 Merge pull request #14337 from janlazo/vim-8.2.0409
vim-patch:8.1.{1841,2416},8.2.{409,1920,2050}
2021-04-11 21:43:45 -04:00
Jan Edmund Lazo
4ff70cc58b vim-patch:8.1.2416: loading menus sets v:errmsg
Problem:    Loading menus sets v:errmsg.
Solution:   Avoid setting v:errmsg and add a test for that. (Jason Franklin)
e24c5b3332
2021-04-11 17:05:42 -04:00
James McCoy
9699f3be10 fix(doc): Add '/site' to stdpath('data') example in :help 'rtp'
[skip ci]
2021-04-10 13:45:48 -04:00
Christian Clason
1b030f889c doc: advertise nanotee/nvim-lua-guide (#14332) [skip ci]
Mention https://github.com/nanotee/nvim-lua-guide at the beginning of ":h lua" as well as ":h lua-vimscript".

Closes #12369 .
2021-04-09 19:36:23 +02:00
Jan Edmund Lazo
0d0eeff8a3 eval: add v:_null_string
Replacement for Vim's test_null_string().
Vim uses it to verify that its codebase handles null strings.
Preparation for the Test_null_list() in patch v8.2.1822.

Use v:_null_string, not non-existent env var, for null string tests.

Mention v:_null_string in id() because id(v:_null_string) returns (nil).
2021-04-08 22:36:20 -04:00
Jan Edmund Lazo
1a1fe58f7e vim-patch:8.0.1505: debugger can't break on a condition
Problem:    Debugger can't break on a condition. (Charles Campbell)
Solution:   Add ":breakadd expr". (Christian Brabandt, closes vim/vim#859)
c6f9f739d3

Do not port "has_watchexpr()" to avoid dead code.
"has_watchexpr()" always returns 0 because "debug_expr" is always 0.

Restore "eval_expr()" as a wrapper to allocate "typval_T" for "eval0()".
Remove it in later patches.

Include "typval_compare()" changes from patch v8.1.0958,
partially ported in 8b60368c1b.

Close https://github.com/neovim/neovim/pull/12373

N/A patches for version.c:

vim-patch:8.2.2720: GTK menu tooltip moves the cursor

Problem:    GTK menu tooltip moves the cursor.
Solution:   Position the cursor after displaying the tooltip.  Do not show the
            tooltip when editing the command line.
01ac0a1f66
2021-04-08 07:28:46 -04:00
Michael Lingelbach
48e8057285 Merge pull request #14302 from vigoux/fix-8449
Update docs
2021-04-07 09:14:49 -07:00
Marco Hinz
cd75d3289a Merge pull request #14200 from teto/treesitter-checkhealth
feat: treesitter checkhealth
2021-04-07 16:40:56 +02:00
Thomas Vigouroux
d7a1bbd81a docs: add priority option in buf_set_extmark 2021-04-07 15:36:46 +02:00
Michael Lingelbach
91cdc11984 Merge pull request #14309 from mjlbach/feature/hover_return_win_buf
lsp: hover window should return buf/winnr from focusable float
2021-04-07 00:58:32 -07:00
Michael Lingelbach
5610e8a4ac lsp: hover window should return buf/winnr from focusable float 2021-04-07 00:21:56 -07:00
Michael Lingelbach
2c0bcc539a lsp: update documentation on window borders 2021-04-06 23:51:15 -07:00
Thomas Vigouroux
952508d405 fix(ts): move checkhealth in runtime/vim 2021-04-06 19:03:04 +02:00
Thomas Vigouroux
e8bc3d717e feat(ts): include parser ABI version in checkhealth 2021-04-06 19:02:58 +02:00
Matthieu Coudron
86ced59a6a feat: treesitter checkhealth 2021-04-06 18:54:22 +02:00
Michael Lingelbach
370469be25 Merge pull request #14300 from elianiva/feat/lsp_border_config
feat(lsp): make hover/signature_help borders configurable
2021-04-05 22:44:28 -07:00
elianiva
c84b1b1ad0 feat(lsp): make hover/signature_help borders configurable
change hl groups for the example

rename borders -> border
2021-04-06 12:13:31 +07:00
Jan Edmund Lazo
ce0153e4f7 vim-patch:8.2.2714: filetype pattern ending in star is too far up
Problem:    Filetype pattern ending in star is too far up.
Solution:   Move down to where patterns ending in star belong. (closes vim/vim#8065)
409da842db
2021-04-05 11:29:35 -04:00
Michael Lingelbach
2c4e9c5245 lsp: floating window improvements (#14207)
* remove left/right padding feature from trim_and_pad
* use invisible borders by default on floating windows
2021-04-05 15:43:08 +02:00
Jan Edmund Lazo
76f5c72860 Merge pull request #14063 from lewis6991/master
vim-patch:8.1.{1631,1682,1899}: sign improvements
2021-04-04 10:28:16 -04:00
Jan Edmund Lazo
ffef1519ca vim-patch:8.2.2697: function list test fails
Problem:    Function list test fails.
Solution:   Add missing function. (Yegappan Lakshmanan)
0df6030145
2021-04-03 20:26:05 -04:00
Lewis Russell
5257bce979 vim-patch:8.1.1682: placing a larger number of ...
...signs is slow

Problem:    Placing a larger number of signs is slow.
Solution:   Add functions for dealing with a list of signs. (Yegappan
            Lakshmanan, closes #4636)
2021-04-03 23:56:54 +01:00
Jan Edmund Lazo
abdda66410 vim-patch:8.2.2694: when 'matchpairs' is empty every character beeps (#14279)
Problem:    When 'matchpairs' is empty every character beeps. (Marco Hinz)
Solution:   Bail out when no character in 'matchpairs' was found.
            (closes vim/vim#8053)  Add assert_nobeep().
5b8cabfef7
2021-04-03 08:49:39 -04:00
Steven Sojka
8bea39f372 feat(treesitter): allow injections to be configured through directives 2021-04-02 12:48:16 -05:00
Jan Edmund Lazo
dde89730b4 vim-patch:8.2.2690: PowerShell files are not recognized (#14276)
Problem:    PowerShell files are not recognized.
Solution:   Recognize several PowerShell extension. (Heath Stewart,
            closes vim/vim#8051)
ef38bcf051

N/A patches for version.c:

vim-patch:8.2.2689: tiny build fails

Problem:    Tiny build fails.
Solution:   Add #ifdef around use of p_stl.
160a2b4dac

vim-patch:8.2.2691: autoconf may mess up compiler flags

Problem:    Autoconf may mess up compiler flags.
Solution:   Handle removing FORTIFY_SOURCE a bit better. (Vladimir Lomov,
            closes vim/vim#8049)
3fa5e64e0e
2021-04-02 13:44:25 -04:00
Stephan Seitz
43eb22d4c9 Fix #14192: Handle IO errors and close files in query.lua 2021-04-02 16:21:49 +02:00
Thomas Vigouroux
3f7cd18c4a Merge pull request #14218 from steelsojka/bugfix/check-queries-exist
fix(treesitter): check highlight queries exist
2021-04-02 05:24:49 +02:00
Kevin Svetlitski
da31f1c7dd doc: Fix typo in the help for <Cmd> where lhs was used instead of rhs (#14272) 2021-04-01 21:50:02 -04:00
Michael Lingelbach
3b01dd4183 lsp: allow launching language servers with uv_spawn using cwd arg 2021-04-01 14:24:37 -07:00
Thomas Vigouroux
11bea67a55 fix: allow accessing vim.treesitter.language without require 2021-04-01 16:51:36 +02:00
Michael Lingelbach
3d25a72a60 Merge pull request #14264 from mjlbach/feature/handle_reloading_buffer
lsp: add on_reload callback for buffer edits outside of neovim
2021-04-01 01:08:39 -07:00
Michael Lingelbach
f738f089da Merge pull request #14262 from mjlbach/feature/lsp_did_save_autocommand
lsp: clear did_save handler autocommand on each attach
2021-04-01 00:53:47 -07:00
Michael Lingelbach
f87ae324bb lsp: fix textDocument/workspaceSymbol -> workspace/symbol 2021-03-31 23:53:07 -07:00
Michael Lingelbach
92e106ba23 lsp: add on_reload callback for buffer edits outside of neovim 2021-03-31 22:41:00 -07:00
Michael Lingelbach
08941e163e lsp: clear did_save handler autocommand on each attach 2021-03-31 20:23:17 -07:00