| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(dist): Make dist/vim.vim work properly when lacking vim9script support (vim/vim#13487)
`:return` cannot be used outside of `:function` (or `:def`) in older Vims
lacking Vim9script support or in Neovim, even when evaluation is being skipped
in the dead `:else` branch.
Instead, use the pattern described in `:h vim9-mix`, which uses `:finish` to end
script processing before it reaches the vim9script stuff.
https://github.com/vim/vim/commit/b2a4c110a5d13bc794f4eddb2e88a4e8fe9dfbea
Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(dist): add legacy version for central vim library
Also, enable the zip and gzip plugins by default, unless those variables
were not explicitly set by the user.
related: vim/vim#13413
https://github.com/vim/vim/commit/4f174f0de90b52937ddaf1e6db98e9731930ff7c
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(dist): centralize safe executable check and add vim library (vim/vim#13413)
Follow up to 816fbcc26 (patch 9.0.1833: [security] runtime file fixes,
2023-08-31) and f7ac0ef50 (runtime: don't execute external commands when
loading ftplugins, 2023-09-06).
This puts the logic for safe executable checks in a single place, by introducing
a central vim library, so all filetypes benefit from consistency.
Notable changes:
- dist#vim because the (autoload) namespace for a new runtime support
library. Supporting functions should get documentation. It might make
life easier for NeoVim devs to make the documentation a new file
rather than cram it into existing files, though we may want
cross-references to it somewhere…
- The gzip and zip plugins need to be opted into by enabling execution
of those programs (or the global plugin_exec). This needs
documentation or discussion.
- This fixes a bug in the zig plugin: code setting s:tmp_cwd was removed
in f7ac0ef50 (runtime: don't execute external commands when loading
ftplugins, 2023-09-06), but the variable was still referenced. Since
the new function takes care of that automatically, the variable is no
longer needed.
https://github.com/vim/vim/commit/cd8a3eaf5348feacfecab4b374b7ea4ce6a97422
Co-authored-by: D. Ben Knoble <ben.knoble+github@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is a design goal of extmarks that they allow precise tracking
of changes across undo/redo, including restore the exact positions
after a do/undo or undo/redo cycle. However this behavior is not useful
for all usecases. Many plugins won't keep marks around for long after
text changes, but uses them more like a cache until some external source
(like LSP semantic highlights) has fully updated to changed text and
then will explicitly readjust/replace extmarks as needed.
Add a "undo_restore" flag which is true by default (matches existing
behavior) but can be set to false to opt-out of this behavior.
Delete dead u_extmark_set() code.
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
---
Misuse of `get_node()` is common:
https://github.com/search?q=get_node_at_cursor+language%3Alua&type=code
Solution:
---
Add a note clarifying proper usage.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(sh): Update sh syntax and add shDerefOffset to shDerefVarArray for bash (vim/vim#13480)
Add shDerefOffset to shDerefVarArray.
Example code:
```bash
declare -a a=({a..z})
echo "${a[@]:1:3}"
```
https://github.com/vim/vim/commit/ce3b0136c6d9d09af41969d3dc9634f115505a32
Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(script.vim): make strace ft check less strict (vim/vim#13482)
Strace output, depending on parameters (-ttf this time), can dump both
times and pid:
1038 07:14:20.959262 execve("./e.py", ["./e.py"], 0x7ffca1422840 /* 51 vars */) = 0 <0.000150>
So loose the regexp matching this, so that the above is matched too.
Fixes vim/vim#13481.
https://github.com/vim/vim/commit/2f54c13292af053ec00c18e5fded87b1bc602822
Co-authored-by: Jiri Slaby <jirislaby@gmail.com>
Co-authored-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
|
|
|
|
|
|
|
|
|
| |
`code_action` used the same parameters for all clients, which led to the
following warning and incorrect start/end column locations if using
clients with mixed encodings:
warning: multiple different client offset_encodings detected for
buffer, this is not supported yet
|
|
|
|
|
|
|
|
| |
runtime(sh) Update sh syntax and add shDblParen to shCaseList (vim/vim#13469)
https://github.com/vim/vim/commit/1858e2b22ad168b1fd44a4efcd3a2b6cd9f6772d
Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
|
|
|
|
|
|
|
|
| |
runtime(debversions): Add noble (24.04 LTS) as Ubuntu release name (vim/vim#13472)
https://github.com/vim/vim/commit/2b89afd5eb63864154d973e7991a56a53b87a767
Co-authored-by: James McCoy <jamessan@jamessan.com>
|
|
|
| |
Co-authored-by: Peter Aronoff <peter@aronoff.org>
|
|
|
|
|
|
| |
connection from any channel or stdio will unblock
remote_ui_wait_for_attach. Wait on stdio only if
only —embed specified, if both —embed and
—listen then wait on any channel.
|
|
|
| |
Add base64 encode() and decode() functions to a vim.base64 module.
|
|
|
|
|
|
|
|
| |
Problem: Currently there is no way of customizing behavior of
`declaration`, `definition`, `typeDefinition`, and `implementation`
methods in `vim.lsp.buf` when LSP server returns `Location`. Instead,
cursor jumps to that location directly.
Solution: Normalize LSP response to be `Location[]` for those four cases.
|
|\
| |
| | |
refactor(options): unify `set_option` and `set_string_option`
|
| |
| |
| |
| |
| |
| |
| |
| | |
While the interfaces for setting number and boolean options are now unified by #25394, there is still a separate `set_string_option` function that is used for setting a string option. This PR removes that function and merges it with set_option.
BREAKING CHANGE: `v:option_old` is now the old global value for all global-local options, instead of just string global-local options. Local value for a global-local number/boolean option is now unset when the option is set (e.g. using `:set` or `nvim_set_option_value`) without a scope, which means they now behave the same way as string options.
Ref: #25672
|
|/ |
|
|
|
|
| |
Co-authored-by: tmummert <doczook@gmx.de>
Co-authored-by: parikshit adhikari <parikshitadhikari@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(sh): add shDblParen to shLoopList for bash (vim/vim#13445)
add shDblParen to shLoopList to correctly highlight
arithmetic expressions for Bash and Ksh
This should allow code such as:
```bash
declare -i i j
for i in foo bar
do ((j = 1 << j))
done
```
https://github.com/vim/vim/commit/a390e984db20575dc726b4e0ebf95582265df8e7
Co-authored-by: Lucien Grondin <grondilu@yahoo.fr>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Not all Dart files detected
Solution: Add shebang filetype detection for Dart
closes: vim/vim#13449
https://github.com/vim/vim/commit/c1c177a47bfe1b9a524ede2743a689e461668d14
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(doc): all secure options should note this restriction in the documentation (vim/vim#13448)
Problem: Not all secure options document their status
Solution: Describe secure context :set restrictions in each help entry
https://github.com/vim/vim/commit/8ebdbc9e6d80b707c2b2d923e702dc86bf902923
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
| |
runtime(netrw): don't echo empty lines (vim/vim#13431)
https://github.com/vim/vim/commit/650dcfc8d12e68aa05a358301ec15f9e6dbd03ba
Co-authored-by: nwounkn <nwounkn@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#25801)
The prefix option of the diagnostic virtual text can be a function,
but previously it was only a function of diagnostic.
This function should also have additional parameters index and total,
more consistently and similarily as in the prefix function for
`vim.diagnostic.open_float()`.
These additional parameters will be useful when there are too many
number of diagnostics in a single line.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(debian): update debian related runtime files (vim/vim#13423)
* Update Debian runtime files
Add mantic as a supported Ubuntu release and move buster/kinetic to
unsupported.
Add syntax highlighting for deb822sources filetype.
Add debsources ftplugin to set relevant comment options.
Move common version information to shared/debversions.vim
Closes vim/vim#11934
* Add myself as codeowner for Debian-related runtime files
---------
https://github.com/vim/vim/commit/7b7cda67a1246874520b280277d9b1447e1a7ef5
Co-authored-by: James McCoy <jamessan@jamessan.com>
Co-authored-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Co-authored-by: James Addison <jay@jp-hosting.net>
Co-authored-by: Viktor Szépe <viktor@szepe.net>
Co-authored-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Co-authored-by: James Addison <jay@jp-hosting.net>
Co-authored-by: Viktor Szépe <viktor@szepe.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: objdump files not recognized
Solution: detect *.objdump files, add a filetype plugin
Added the objdump file/text format
closes: vim/vim#13425
https://github.com/vim/vim/commit/10407df7a95d0311c7d2eb920d3b72020db5b301
Co-authored-by: Colin Kennedy <colinvfx@gmail.com>
|
|
|
|
|
|
|
|
| |
Fixes a regression from 5e5f5174e3faa862a9bc353aa7da41487911140b
Until that commit we had a logic like this:
`local prefix = startbyte and line:sub(startbyte + 1) or line_to_cursor:sub(word_boundary)`
The commit changed the logic and no longer cut off the line at the cursor, resulting in a prefix that included trailing characters
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: cannot use buffer-number for errorformat
Solution: add support for parsing a buffer number using '%b' in
'errorformat'
closes: vim/vim#13419
https://github.com/vim/vim/commit/b731800522af00fd348814d33a065b92e698afc3
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(doc): Fix typos in several documents (vim/vim#13420)
* Fix typos in several documents
* Update runtime/doc/terminal.txt
https://github.com/vim/vim/commit/5985879e3c36383155f84649fa42d06813a1893e
Skip runtime/doc/indent.txt: not ported yet
Co-authored-by: h_east <h.east.727@gmail.com>
Co-authored-by: K.Takata <kentkt@csc.jp>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: pacman hooks are detected as conf filetype
Solution: make it consistent to pacman.conf and detect those
hooks as confini
Because confini has much better syntax highlighting than conf.
For reference, I identified pacman.conf and pacman hooks as dosini in
https://github.com/vim/vim/pull/6335, then
https://github.com/vim/vim/pull/10213 changed them to conf, then
https://github.com/vim/vim/pull/10518 changed pacman.conf to confini but
forgot to change hooks.
closes: vim/vim#13399
https://github.com/vim/vim/commit/7d254dbc2db35badc65668db85f826f605486986
Co-authored-by: Guido Cella <guido@guidocella.xyz>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Janet files are not recognised
Solution: Add filename and shebang detection (without
adding an extra filetype plugin)
Those are used by the Janet language:
http://www.janet-lang.org
closes: vim/vim#13400
https://github.com/vim/vim/commit/c038427d2a27445e612761f19c92b2b8b05afdea
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: not able to detect xkb filetypes
Solution: Detect files below /u/s/X11/xkb as xkb files (without adding
an extra filetype)
Those files are used from the X11 xkb extension
closes: vim/vim#13401
https://github.com/vim/vim/commit/ae9021a840db3253b0e0cb84186faae73368afd7
Co-authored-by: Guido Cella <guido@guidocella.xyz>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: *.{gn,gni} files are not recognized
Solution: Detect some as gn filetype (without adding an extra filetype)
Those come from: https://gn.googlesource.com/gn/
closes: vim/vim#13405
https://github.com/vim/vim/commit/84394f2be4a750f1e26b478e36de041663f4b5a4
Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(vim): Update ftplugin - comment motions (vim/vim#13412)
Fix the pattern used by comment-motion mappings to match the start of a
block comment.
Block-comment start lines were being ignored if the previous line
contained a double-quote character anywhere in the line. Line comments
should only be ignored if the previous line is a full-line comment and,
therefore, part of the current block comment.
https://github.com/vim/vim/commit/fea96c00e55a71e3007907ff4f7ad513bb9ff0eb
Co-authored-by: dkearns <dougkearns@gmail.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/neovim/neovim/issues/25177
I initially wanted to split this into a refactor commit to make it more
testable, but it appears that already accidentally fixed the issue by
normalizing lnum/col to 0-indexing
|
| |
|
|
|
|
| |
Relates to https://github.com/neovim/neovim/issues/25272
|
|
|
|
|
| |
To reduce cross-chatter between modules and for https://github.com/neovim/neovim/issues/25272
Also preparing for https://github.com/neovim/neovim/issues/25714
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: outstanding exceptions may be skipped
Solution: When restoring exception state, process remaining outstanding
exceptions
closes: vim/vim#13386
https://github.com/vim/vim/commit/0ab500dede4edd8d5aee7ddc63444537be527871
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
matchparen: do not use hard-coded match id (vim/vim#13393)
* matchparen: do not use hard-coded match id
Instead of using the hard-coded match id 3, which may also be used by
other plugins, let the matchparen plugin use whatever ids are
automatically returned when calling matchaddpos().
For backwards-compatibility, keep the `:3match` call, which will still
use the hard-coded id 3 (as mentioned in :h :3match).
closes: vim/vim#13381
https://github.com/vim/vim/commit/d3e277f279ed628809eb6857ea3ebcfca566ca2a
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |
|
|
|
|
|
| |
To be more in line with the specification:
> To support the evolution of enumerations the using side of an enumeration shouldn’t fail on an enumeration value it doesn’t know. It should simply ignore it as a value it can use and try to do its best to preserve the value on round trips
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: no digraph for quadruple prime
Solution: add quadruple prime digraph using 4'
closes: vim/vim#13380
https://github.com/vim/vim/commit/47416d1a7441f8c815438903e78ba0a2d877699e
Co-authored-by: Jonathan Wright <quaggy@gmail.com>
|
|
|
|
|
|
|
| |
runtime(json5): Add new ftplugin (vim/vim#13385)
https://github.com/vim/vim/commit/d5dc58aeed1b3e76527685d04906afd634d45949
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(zig): Update Zig runtime files (vim/vim#13388)
Update runtime files from upstream (https://github.com/zig/zig.vim) at
commit 54c216e5306a5c3878a60596aacb94dca8652ab9.
https://github.com/vim/vim/commit/e08bfef88bd05a9d27ee16c57cd10173e280f600
Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(json5): include syntax script for json5 (vim/vim#13356)
Merging syntax file from gutenye/json5.vim, modified to include proper
vim header.
See: https://github.com/vim/vim/issues/8499
https://github.com/vim/vim/commit/5a33ce2a661fb836d4c5c489f2a850172a23e0b0
Co-authored-by: Rolf Vidar Mazunki Hoksaas <32819373+mazunki@users.noreply.github.com>
Co-authored-by: Guten Ye <ywzhaifei@gmail.com>
|