| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The class `lsp.Client` has a public member `server_capabilities`,
which is assumed to be non-nil once initialized, as documented in
`:help vim.lsp.client`. Due to the possibility that it may be nil
before initialization, `lsp.Client` was not having a proper lua type
annotations on the field `server_capabilities`.
Instead of having a nil `server_capabilities` until initialized in
the RPC response callback, we can have an initial value of empty table.
This CHANGES the behavior of the `server_capabilities` field in a way
that it is no longer `nil` until initialization. Note that, as
already documented, `server_capabilities` should never be nil when
it is once initialized and thus ready to be used in user configs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
connected (#24535)
This fixes the issue where the LspNotify handlers for inlay_hint /
diagnostics would end up refreshing all attached clients.
The handler would call util._refresh, which called
vim.lsp.buf_request, which calls the method on all attached clients.
Now util._refresh takes an optional client_id parameter, which is used
to specify a specific client to update.
This commit also fixes util._refresh's handling of the `only_visible`
flag. Previously if `only_visible` was false, two requests would be made
to the server: one for the visible region, and one for the entire file.
Co-authored-by: Stanislav Asunkin <1353637+stasjok@users.noreply.github.com>
Co-authored-by: Mathias Fußenegger <mfussenegger@users.noreply.github.com>
|
|
|
|
|
|
| |
Fix #4295
Close #16067
Co-authored-by: chentau <tchen1998@gmail.com>
|
|
|
|
|
|
| |
Problem: When double clicking a line starting with a #, the code assumes
there is a fold there and tries to close it, resulting in an error if
there isn't a fold.
Solution: Check foldlevel before performing "zc".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#24957)
Problem: Wrong cursor position with virtual text before a whitespace
character and 'linebreak'.
Solution: Always set "col_adj" to "size - 1" and apply 'linebreak' after
adding the size of 'breakindent' and 'showbreak'.
closes: vim/vim#12956
https://github.com/vim/vim/commit/6e55e85f92aff43c1b3cb564201440f3552d63f0
N/A patches:
vim-patch:9.0.1826: keytrans() doesn't translate recorded key typed in a GUI
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Rexx files may not be recognised
Solution: Add shebang detection and improve disambiguation of *.cls
files
closes: vim/vim#12951
https://github.com/vim/vim/commit/e06afb7860805537ccd69966bc03169852c9b378
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Vimball/Visual Basic filetype detection conflict
Solution: runtime(vb): Improve Vimball and Visual Basic detection logic
Only run Vimball Archiver's BufEnter autocommand on Vimball archives.
Fixes vim/vim#2694.
closes: vim/vim#12899
https://github.com/vim/vim/commit/f97f6bbf56408c0c97b4ddbe81fba858d7455b0d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Problem: runtime: crystal scripts not recognised
Solution: Filetype detect Crystal scripts by shebang line
closes: vim/vim#12935
https://github.com/vim/vim/commit/9b73902dbe6f7940326bcd8dbc89d010d85d69c5
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
| |
runtime(filetype): Add norg markup language detection
closes: vim/vim#12913
https://github.com/vim/vim/commit/03e44a1d70e914504e6151fe88ad1e574cbf0a59
Co-authored-by: NTBBloodbath <bloodbathalchemist@protonmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
runtime: cleanup :Sman command via the undo_ftplugin mechanism (vim/vim#12967)
Regards to @dkearns as noticed in
https://github.com/vim/vim/commit/2ac708b548660b232a32c52d89bde3d8596646c0
https://github.com/vim/vim/commit/9d8ef7cc434076dfda62ca3d3101eaae52e316cd
Co-authored-by: Enno <Konfekt@users.noreply.github.com>
|
| |
|
|\
| |
| | |
fix(api): nvim_buf_get_offset in a new buffer with zero or one lines
|
| |
| |
| |
| | |
fixes #24930
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
runtime(sh): Update ftplugin (vim/vim#12950)
Remove :Help command via the undo_ftplugin mechanism.
https://github.com/vim/vim/commit/2ac708b548660b232a32c52d89bde3d8596646c0
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(doc): mention special case of i_CTRL-R_-
closes: vim/vim#12947
https://github.com/vim/vim/commit/a5eb6785efcc36a97e071722408acc20d6c6e606
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
| |
runtime(heex): Add HEEX comments to match_words in ftplugin (vim/vim#12957)
https://github.com/vim/vim/commit/3ac2d3da5fdf20dfddb450a49502ef47b1f581d4
Co-authored-by: Jason King <jk@handle.it>
|
|
|
|
| |
The field `icon` is not a mandatory field.
|
|\
| |
| | |
fix(treesitter): fix another TSNode:tree() double free
|
| |
| |
| |
| |
| |
| |
| | |
Unfortunately the gc=false objects can refer to a dangling tree if the
gc=true tree was freed first. This reuses the same tree object as the
node itself is keeping alive via the uservalue of the node userdata.
(wrapped in a table due to lua 5.1 restrictions)
|
| |
| |
| |
| |
| |
| |
| |
| | |
runtime: Set b:undo_indent where missing (vim/vim#12944)
https://github.com/vim/vim/commit/0382f05dbd659d8e39ee4e71c1e5062ac5c0a8fd
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|/
|
|
|
|
|
|
| |
runtime: Set b:undo_ftplugin where missing (vim/vim#12943)
https://github.com/vim/vim/commit/f937ab32a1ac3a560f217ca4ce8305ab2d5b0b74
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Problem: `push_tree`, every time its called for the same TSTree with
`do_copy=false` argument, creates a new userdata for it. Each userdata,
when garbage collected, frees the same TSTree C object.
Solution: Add flag to userdata, which indicates, should C object,
which userdata points to, be freed, when userdata is garbage collected.
|
|\
| |
| | |
fix(api): better topline adjustments in nvim_buf_set_lines
|
| |
| |
| |
| |
| |
| |
| | |
Some more reasonable defaults for topline:
- if topline was replaced with another line, that now becomes topline
- if line was inserted just before topline, display it. This is more
similar to the previous API behavior.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
With treesitter fold, InsertLeave can be slow, because a single session
of insert mode may schedule multiple fold updates in on_bytes and
on_changedtree.
Solution:
Don't create duplicate autocmds.
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Problem: 'linebreak' is incorrectly drawn after 'breakindent'.
Solution: Don't include 'breakindent' size when already after it.
closes: vim/vim#12937
closes: vim/vim#12940
https://github.com/vim/vim/commit/1d3e0e8f3110a7807431eae056914ccea57b057b
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The following modifiers are all now supported:
:tab term
:vertical term
:horizontal term
:botright term
:topleft term
Fixes: https://github.com/neovim/neovim/issues/11385
|
|\
| |
| | |
fix(api): handle clearing out last line of non-current buffer
|
|/
|
|
| |
fixes #24911
|
|
|
|
|
|
|
|
|
|
| |
runtime(typescript): Fix highlighting symbols after number literal (vim/vim#12911)
fixes vim/vim#12831
https://github.com/vim/vim/commit/535b9e12d02f5fef969fb680d579c586bd5f40db
Co-authored-by: Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: camel-case spelling has issues with digits
Solution: Improve the camCase spell checking by taking digits
and caps into account
Rewrite the conditions to check for word boundaries by taking into
account the presence of digits and all-caps sequences such as acronyms.
closes: vim/vim#12644
closes: vim/vim#12933
https://github.com/vim/vim/commit/d08745040bb82c5e9a81b6c8a414e50951642492
Co-authored-by: LemonBoy <thatlemon@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: The 'syntax' option has no completion.
Solution: Add syntax option completion.
closes: vim/vim#12900
https://github.com/vim/vim/commit/6dfdff3f273dcea29099d81e3eceb871ae089998
N/A patches:
vim-patch:9.0.1795: Indentation issues
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|\
| |
| | |
fix(ui): wrong cursor position with left gravity inline virt text at eol
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
text
Problem: Multiline regex with Visual selection fails when Visual
selection contains virtual text after last char.
Solution: Only include virtual text after last char when getting full
line length.
closes: vim/vim#12908
https://github.com/vim/vim/commit/e3daa06be1a3ba7ced0735582467d092275e591c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
text
Problem: Cursor position still wrong with 'showbreak' and virtual text
after last character or 'listchars' "eol".
Solution: Remove unnecessary w_wcol adjustment in curs_columns(). Also
fix first char of virtual text not shown at the start of a screen
line.
closes: vim/vim#12478
closes: vim/vim#12532
closes: vim/vim#12904
https://github.com/vim/vim/commit/6a3897232aecd3e8b9e8b23955e55c1993e5baec
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
'endofline' can be used to detect if a file ends of <EOL>, however
editorconfig can break this.
Solution:
Set 'endofline' during BufWritePre
Fixes: #24869
|
|
|
|
| |
fixup: #24874
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: Normal mode "gM", "gj", "gk" commands behave incorrectly with
virtual text.
Solution: Use linetabsize() instead of linetabsize_str().
closes: vim/vim#12909
https://github.com/vim/vim/commit/d809c0a90387a23aed21ba37d0b65332fb5dafe7
|
|\
| |
| | |
fix(api): fix issues with nvim_buf_set_lines refactor
|
| |
| |
| |
| | |
fixes #24894
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The change in #24824 0081549 was not a regression, however it was an
incomplete change. Unfortunately some common plugins come to depend on
this exising self-inconsistent behavior. These plugins are going to need
to update for 0.10
nvim_buf_set_lines used to NOT adjust the topline correctly if a buffer
was displayed in just one window. However, if displayed in multiple
windows, it was correctly adjusted for any window not deemed the
current window for the buffer (which could be an arbitrary choice if the
buffer was not already current, as noted in the last rafactor)
This fixes so that all windows have their topline adjusted. The added
tests show this behavior, which should be the reasonable one.
|
|
|
|
|
| |
* fix(types): add some return/parameter type annotations
* fix(types): narrow stdpath parameter further
|
| |
|