| Commit message (Collapse) | Author | Age |
... | |
| |
|
|
|
|
|
|
|
| |
syntax script (#32848)
closes: vim/vim#16857
https://github.com/vim/vim/commit/a8aeeeb9aa694f2052e904c3e02e525035e0701f
|
|
|
|
|
|
|
|
|
| |
(#32845)
fixes: vim/vim#16849
https://github.com/vim/vim/commit/0a336ccb57003c44ba303ccc50cf50cb640c2309
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
| |
When a UI detaches it will execute any UILeave events. Autocommands
cannot run in a libuv handler because they will in turn poll the event
loop, which results in recursive loop execution. So we schedule the
callback to detach the UI on the main event queue.
We also have to schedule the exit when the RPC channel is closed to
ensure it does not run until after `remote_ui_disconnect` has run,
otherwise it will hang.
|
|
|
|
| |
* fix(lsp): rename `on_publish_diagnostics` parameter: result->params
* fix(colors): specify local var type to address lint failure
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot disable individual captures and patterns in treesitter queries.
Solution:
* Expose the corresponding tree-sitter API functions for `TSQuery` object.
* Add documentation for `TSQuery`.
* Return the pattern ID from `get_captures_at_pos()` (and hence `:Inspect!`).
|
|
|
|
|
| |
Problem: `InspectTree` error on buffer without ts parser attached.
Solution: show a more correct warning.
|
|
|
|
|
| |
Enable translations in the GCC release job, as it's the fastest.
Although there aren't many tests for translation behavior, this still
allows ensuring that Nvim isn't broken when translations are enabled.
|
|
|
|
|
| |
Problem: The current implementation creates a unique autocommand group for each floating preview window, which is inefficient and can lead to numerous autocommand groups.
Solution: Use a single shared autocommand group with improved window validation to properly clean up LSP floating preview windows.
|
|
|
|
|
| |
Problem: ctx is passed directly to M.trigger. In fact, it is a field of opts.
Solution: wrapped in a table and passed to M.trigger.
|
|\
| |
| | |
ci(deps): bump lua-language-server to 3.13.7
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Unnecessary use of STRCAT() in au_event_disable(). STRCAT()
seeks to the end of new_ei, but here the end is already known.
Solution: Use STRCPY() and add p_ei_len to new_ei. Also fix a typo in a
comment. Add a test that 'eventignore' works in :argdo
(zeertzjq).
closes: vim/vim#16844
https://github.com/vim/vim/commit/969e11a18b145241dc0ab39fc1be7ed814655dfc
Cherry-pick p_ei_len from patch 9.1.0256.
|
|
|
|
|
|
| |
The name of Cmdwin* events were changed to CmdWin* in 8ed2dbf6e2802516501c11e72e5d6d977e6a07f3
without explanation. This commit changes them back.
This doesn't affect the creation or execution of autocommands. It only
affects the listing of autocommands.
|
|\
| |
| | |
vim-patch:9.1.{1186,1191,1194}: filetype: help files in git repos are not detected
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: false positive help filetype detection
Solution: Only detect a file as help if modeline appears either at start
of line or is preceded by whitespace (zeertzjq).
closes: vim/vim#16845
https://github.com/vim/vim/commit/6763b0ee95e7e66ab7992653fbba48691e803e70
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
patch
Problem: Test for patch 9.1.1186 doesn't fail without the patch.
Solution: Set 'nomodeline' in the test (zeertzjq).
closes: vim/vim#16835
https://github.com/vim/vim/commit/d6c7913e24e07c1d0ea099cda85e0014e8627c5c
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: help files in git repos are not detected
Solution: detect */doc/*.txt files as help if they end with a help
modeline, even if 'modeline' is off
Here's how I checked that this would still detect vim's own help files
correctly:
$ find . -type f -path '*/doc/*.txt' \
> -exec awk '{ } ENDFILE { print FILENAME ":" $0; }' '{}' + |
> grep -v 'vim:.*\<\(ft\|filetype\)=help\>'
./src/libvterm/doc/seqs.txt: 23 DECSM 42 = DECNRCM, national/multinational character
closes: vim/vim#16817
https://github.com/vim/vim/commit/16d6fff98ed3a9dfd34a41696b005b0c4c7800f8
Split the pattern into a Lua pattern for the first part and a Vim regex
pattern for the second part, so that if the first part doesn't match
there is no need to use the Vim regex.
Co-authored-by: David Mandelberg <david@mandelberg.org>
|
|\
| |
| | |
feat(checkhealth): group parsers by name and path in output
|
|/
|
|
|
|
|
|
|
| |
Problem:
:checkhealth vim.treesitter sorts parser entries solely by path,
splitting duplicates and reducing clarity.
Solution:
Sort entries first by name, then by path, so that duplicates are grouped.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
The root dir function is not passed any context and can only assume the
current buffer is the one being attached.
The main use case is for getting the path of the buffer using
`nvim_buf_get_name`.
Solution:
Pass the buffer number as the first argument.
|
|
|
|
|
|
|
|
|
| |
Problem:
vim.lsp.completion with "autotrigger" enabled, does not send
completion context, even though it has all the necessary info.
Solution:
Include the context for "autotrigger".
trigger() also optionally accepts context when manually invoked.
|
|
|
|
|
|
|
|
| |
Problem:
Running :TOhtml with a file containing modeline may generate an invalid modeline in the output.
Solution:
Add `<!-- vim: set nomodeline: -->` to the output.
Use vi-compatible modeline format ("set foo:"), to avoid the trailing `-->` being treated as part of the modeline.
|
| |
|
|
|
|
|
|
|
|
| |
Problem:
"use_float" in the if-condition causes a new buffer to be generated on every execution.
Solution:
- Remove the incorrect use_float check from the condition.
- Use buf_clear to properly clear the existing buffer.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
matchit (#32812)
related: vim/vim#16801
closes: chrisbra/matchit#50
closes: vim/vim#16834
https://github.com/vim/vim/commit/d49ba7b92a14e6f3c1c413d396df72d36e934f78
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
| |
plugin
closes: vim/vim#16838
https://github.com/vim/vim/commit/42e498d9c41a0260ccddceeb2927c18b508eff54
Co-authored-by: Lee Lindley <lee.lindley@gmail.com>
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
|
|
|
|
|
|
|
| |
This actually only affects the order in which Cmdline* and Cmdwin*
autocommands are listed, and it appears that the names of Cmdwin* were
changed to CmdWin* in 8ed2dbf6e2802516501c11e72e5d6d977e6a07f3 without
explanation.
Also, remove the final NULL element from the names table.
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: C indentation does not detect multibyte labels
Solution: Correctly skip over multibyte characters
(Anttoni Erkkilä)
closes: vim/vim#16770
https://github.com/vim/vim/commit/f4d87ff8883e5076633ef0ab0cf4d6e4beaddc5c
Co-authored-by: Anttoni Erkkilä <anttoni.erkkila@protonmail.com>
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Cannot use "g<" mapping with ext_messages. Mapping displays
the scrollback buffer since the last command, but the
scrollback buffer is not populated with ext_messages.
Solution: With ext_messages; store messages in the history that otherwise
wouldn't be. Mark them as temporary messages to be deleted when
the scrollback buffer would be cleared. To this end, make the
message history a doubly-linked list such that messages can be
removed from an arbitrary position.
Outlook: Default ext_messages UI might not show the hit-enter prompt
so we want "g<" to work as a recommended way to show messages
for the last command (prompted by an indicator).
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
1. The original info text is truncated in pum_set_preview_text.
2. There is an extra newline character at the end of the info text.
3. Incorrect usage of plines_win leads to errors in calculating the window height.
Solution:
1. Improved string handling in pum_preview_set_text to safely process line content without modifying the original text. Now, the preview info is correctly preserved while splitting lines.
2. Do not append a trailing newline to the preview buffer when one is present at the end.
3. Set w_widher_inner in advance; otherwise, plines_win cannot correctly calculate the wrapped line height.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
"make lintdoc" is not validating vimdoc (:help) tags.
Solution:
- Call `lang_tree:parse()` to init the parser.
- Load netrw 🤢 explicitly, since it was moved to `pack/dist/opt/`.
- Fix invalid help tags.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: It's difficult for colorscheme authors to know which highlight
groups should be defined.
Solution: List and link to all built-in highlight group categories. Also
remove outdated text on "preferred" and "secondary" groups.
|
| |
| |
| |
| |
| |
| |
| | |
This allows generated sources to be automatically rebuilt when modifying
hashy code.
Also, appending to NVIM_GENERATED_FOR_{HEADERS,SOURCES} in the middle of
custom commands is a bit strange. Move that after the custom commands.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: runtime(tera): tera support can be improved
Solution: update tera filetype plugin, include a tera syntax script
update the filetype test, update makemenu and synmenu vim scripts
(MuntasirSZN)
closes: vim/vim#16830
vim/vim@14da0fb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#32798)
Problem: matchparen plugin wrong highlights shell case statement
(Swudu Susuwu)
Solution: return early, if we are in a shSnglCase syntax element
The shell syntax element "case $var in foobar)" uses closing parenthesis
but there is no corresponding opening parenthesis for that syntax
element. However matchparen is not aware of such things and will happily
try to match just the next opening parenthesis.
So let's just add a way to opt out for such cases. In this case, use the
syntax state to check if the closing parenthesis belongs to the syntax
item "shSnglCase" and if it is, do not try to find a corresponding
opening parenthesis.
Since inspecting the syntax state might be expensive, put the whole
check behind a filetype test, so that matchparen will only perform this
particular check, when it knows the current buffer is a "sh" filetype.
fixes: vim/vim#16801
closes: vim/vim#16831
https://github.com/vim/vim/commit/9102ac11ab3938ec8c15bfebd00d2f91d3f1cd6c
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|\ \
| | |
| | | |
vim-patch:{3d1a437,d89770e}
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's called "GNOME Terminal" in
https://gitlab.gnome.org/GNOME/gnome-terminal
It's also called GNOME Terminal in English Wikipedia
https://en.wikipedia.org/wiki/GNOME_Terminal and the Wikipedia pages of
8 other languages.
Also, make line wrapping the same in insert.txt and cmdline.txt.
closes: vim/vim#16832
https://github.com/vim/vim/commit/d89770eb987768aca78fef74d8d8601ce53fc435
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also, mention that CTRL-SHIFT-V might be mapped to paste text, similar
to the note about CTRL-V.
References:
https://gitlab.gnome.org/GNOME/gnome-terminal/-/blob/2d7e9d78c9631be63b6b381f6966cb8808865ffb/src/org.gnome.Terminal.gschema.xml#L395-398
https://gitlab.gnome.org/chergert/ptyxis/-/blob/8942adde5b98c82c85238851743b371a034a1c1b/src/org.gnome.Ptyxis.gschema.xml.in#L529-L533
closes: vim/vim#16816
https://github.com/vim/vim/commit/3d1a437f1bb41933739445a8436fdc1902e4ea98
Co-authored-by: David Mandelberg <david@mandelberg.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Follow-up to #32768
This is slightly faster according to the benchmark.
This also makes it a build error if hashy is used incorrectly
(generating a case-insensitive hash function from mixed-case strings),
as duplicate case labels aren't allowed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#32792)
Problem: Unnecessary use of vim_tolower() in vim_strnicmp_asc().
Solution: Use TOLOWER_ASC() instead (zeertzjq).
It was passing *s1 and *s2 to vim_tolower(). When char is signed, which
is the case on most platforms, c < 0x80 is always true, so it already
behaves the same as TOLOWER_ASC().
closes: vim/vim#16826
https://github.com/vim/vim/commit/b7dc5d3b6169efc8aa0b9d86476072877e74bc2c
Use this function for hashy case-insensitive lookup, as it's ASCII-only.
Note that this function doesn't cast TOLOWER_ASC() argument to uint8_t,
so it'll treat a UTF-8 byte as smaller than NUL. It doesn't matter, as
one of the strings being compared is ASCII-only, and its behavior still
leads to consistent ordering.
|
| |
| |
| |
| | |
After #32777 the aliases no longer need to come later, so the list of
autocommand names can be fully sorted.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Follow-up to #32706
vim-patch:af05694: runtime(doc): CmdUndefined and FuncUndefined can always be nested
closes: vim/vim#16825
https://github.com/vim/vim/commit/af056949007b2395b3f8ca8c7efb591fe9d4be9e
|
| | |
|