| Commit message (Collapse) | Author | Age |
... | |
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
04bfd20bb introduced a subtle bug where using 0 as the buffer number in
the diagnostic cache resets the cache for the current buffer. This
happens because we were not checking to see if the _resolved_ buffer
number already existed in the cache; rather, when the __index metamethod
was called we assumed the index did not exist so we set its value to an
empty table. The fix for this is to check `rawget()` for the resolved
buffer number to see if the index already exists.
However, the reason this bug was introduced in the first place was
because we are simply being too clever by allowing a 0 buffer number as
the index which is automatically resolved to a real buffer number.
In the interest of minimizing metatable magic, remove this "feature" by
requiring the buffer number index to always be a valid buffer. This
ensures that the __index metamethod is only ever called for non-existing
buffers (which is what we wanted originally) as well as reduces some of
the cognitive overhead for understanding how the diagnostic cache works.
The tradeoff is that all public API functions must now resolve 0 buffer
numbers to the current buffer number.
|
| | |
| | |
| | |
| | | |
* internally represent no workspaceFolders as nil instead of vim.NIL
* rename workspaceFolders -> workspace_folders for consistency
|
| |/
|/|
| |
| | |
Update runtime files
https://github.com/vim/vim/commit/88a4205f1cfbdc328e987ab00521fc8a22447fc3
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
vim-patch:8.2.3627: difficult to know where the text starts in a window
Problem: difficult to know where the text starts in a window. (Sergey
Vlasov)
Solution: Add the "textoff" entry in the result of getwininfo().
(closes vim/vim#9163)
https://github.com/vim/vim/commit/cdf5fdb2948ecdd24c6a1e27ed33dfa847c2b3e4
Fix indent in Test_getbufwintabinfo().
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Errors were being caused by invalid buffers being kept around in
diagnostic_cache, so add a metatable to diagnostic_cache which attaches
to new buffers in the cache, removing them after they are invalidated.
Closes #16391.
Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com>
|
|\ \
| | |
| | | |
vim-patch:8.2.{3468,3617,3618,3622}: some other CWD related patches
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: getcwd() is unclear about how 'autochdir' is used.
Solution: Update the help for getcwd(). Without any arguments always return
the actual current directory. (closes vim/vim#9142)
https://github.com/vim/vim/commit/851c7a699ae00bdc14a4db874cf722b7b7393b53
|
|\ \ \ |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The current 'clamp_line_numbers' implementation modifies diagnostics in
place, which can have adverse downstream side effects. Before clamping
line numbers, make a copy of the diagnostic. This commit also merges the
'clamp_line_numbers' method into a new 'get_diagnostics' local function
which also implements the more general "get" method. The public
'vim.diagnostic.get()' API now just uses this function (without
clamping). This has the added benefit that other internal API functions
that need to use get() no longer have to go through vim.validate.
Finally, reorganize the source code a bit by grouping all of the data
structures together near the top of the file.
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | | |
* send vim.NIL instead of not sending workspaceFolders
* read fallback rootPath and rootUri from workspaceFolders
* update documentation
|
|/ / |
|
| |
| |
| |
| |
| | |
closes https://github.com/neovim/neovim/issues/16352
* improve handling of multi-byte deletions
|
| |
| |
| |
| |
| |
| | |
See:
- https://emmylua.github.io/annotations/param.html
- https://emmylua.github.io/annotations/return.html
|
| |
| |
| |
| |
| | |
If the quickfixlist item doesn't contain a column it is reported as 0.
Rather than using a nil value in such a case (which breaks diagnostics
elsewhere), just keep the 0 value.
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
| |
Problem: No event is triggered when closing a window.
Solution: Add the WinClosed event. (Naohiro Ono, closes vim/vim#9110)
https://github.com/vim/vim/commit/23beefed73aadb243fb67cf944e3d60fe8c038bb
Nvim has already implemented this feature, so this only changes tests
and docs.
|
|
|
|
|
| |
Problem: Cannot use \x and \u when setting 'listchars'.
Solution: Support hex and unicode in hex form. (closes vim/vim#9006)
https://github.com/vim/vim/commit/93ff6720fe4427341bc426b6d46e6324f226c270
|
|
|
|
|
| |
the prior signature did not assume an active language client
this function can now be used directly by passing an offset encoding
defaults to utf-16 (standard for LSP)
|
|
|
|
| |
Update runtime files
https://github.com/vim/vim/commit/519cc559b08b800edc429688aece7ad6a00d41eb
|
|
|
|
|
| |
Problem: Not all sudoers files are recognized.
Solution: Add a file pattern. (Doug Kearns, closes vim/vim#1192)
https://github.com/vim/vim/commit/c143fa0778fa0d8744867318bb7f7a2e63cf37d7
|
|
|
|
|
| |
Problem: Fish filetype not recognized.
Solution: Add a file pattern and match script line. (Doug Kearns)
https://github.com/vim/vim/commit/b1b163efd7bb3ca68cce101d4e431559d2944a8e
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Rename the `show_header` option in `open_float` to simply `header` and
allow users to specify both the header string as well as the highlight
group.
|
| |
| |
| |
| |
| | |
Extend the 'prefix' option for `open_float` to also provide an optional
highlight group for the prefix string.
|
| |
| |
| |
| |
| |
| |
| | |
Make the bufnr argument have similar semantics across API functions;
namely, a nil value means "all buffers" while 0 means "current buffer".
This increases the flexibility of the API by allowing functions such as
enable() and disable() to apply globally or per-namespace, rather than
only on a specific buffer.
|
| |
| |
| |
| |
| |
| | |
Problem: Filetype test fails.
Solution: Add missint change.
https://github.com/vim/vim/commit/314b773abbb9b1ce0020d83482c6daf7ad6a42a2
|
| |
| |
| |
| |
| |
| | |
Problem: Not all gdbinit files are recognized.
Solution: Add "gdbinit". (Doug Kearns)
https://github.com/vim/vim/commit/782b4bbc163e03ebe98d25bc62b9d82cba8f91a1
|
| |
| |
| |
| |
| |
| | |
Problem: RouterOS filetype is not recognized.
Solution: Add file and script patterns. (closes vim/vim#9097)
https://github.com/vim/vim/commit/0818ab82e7058145366ebbe759f0b3f74724bdfd
|
|/ |
|
|\
| |
| | |
vim-patch:8.2.3520: cannot define a function for thesaurus completion
|
| |
| |
| |
| |
| |
| | |
Problem: 'thesaurus' and 'thesaurusfunc' do not have the same scope.
Solution: Make 'thesaurusfunc' global-local.
https://github.com/vim/vim/commit/f4d8b76d304dabc39c06d2344cd4c7b28484811b
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot define a function for thesaurus completion.
Solution: Add 'thesaurusfunc'. (Yegappan Lakshmanan, closes vim/vim#8987,
closes 8950)
https://github.com/vim/vim/commit/160e994d768d03a3c826b58115cde94df8fce607
|
| |
| |
| |
| | |
The 'prefix' option accepts a function or a string that is used to add a
prefix string to each diagnostic displayed in the floating window.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a LSP server sent a workspace edit containing a rename the buffers
file name changed without the server receiving a close notification for
the old buffer and without the client properly re-attaching on the new
file.
This affected `Move` code-actions in nvim-jdtls, but also
`vim.lsp.buf.rename` on a class level.
|
| |
| |
| | |
* handle when workspaceFolder is nil in buf.list_workspace_folders and buf.add_workspace_folder
|
| |
| |
| |
| |
| |
| | |
* use codeunits/points instead of byte ranges when applicable
* take into account different file formats when computing range and
sending text (dos, unix, and mac supported)
* add tests of incremental sync
|
| |
| |
| |
| |
| |
| |
| | |
Also fix a few other small bugs regarding saving and restoring extmarks.
In particular, now that the virtual text and underline handlers have
their own dedicated namespaces, they should be responsible for saving
and restoring their own extmarks. Also fix the wrong argument ordering
in the call to `clear_diagnostic_cache` in the `on_detach` callback.
|
| | |
|
| |
| |
| |
| | |
Neovim has different defaults for 'list' compared to Vim which is why
the documentation needs to be updated.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update runtime files
https://github.com/vim/vim/commit/113cb513f76d8866cbb6dc85fa18aded753e01da
skip doc/eval.txt
skip doc/insert.txt
skip doc/user_06.txt (needs 8.2.3562)
partial skip doc/syntax.txt (needs 8.2.3562)
|
| |
| |
| |
| |
| |
| | |
* vim.ui.input is an overridable function that prompts for user input
* take an opts table and the `on_confirm` callback, see `:help vim.ui.input` for more details
* defaults to a wrapper around vim.fn.input(opts)
* switches the built-in client's rename handler to use vim.ui.input by default
|
| |
| |
| |
| | |
Co-authored-by: Mathias Fußenegger <mfussenegger@users.noreply.github.com>
Co-authored-by: Michael Lingelbach <m.j.lbach@gmail.com>
|
| | |
|