| Age | Commit message (Collapse) | Author | Files |
|
Problem: filetype: ghostty config files are not recognized
Solution: Detect ghostty configuration files as ghostty filetype,
include a simple ghostty filetype plugin (Bez Hermoso)
closes: vim/vim#20002
https://github.com/vim/vim/commit/b30803b231beea13e2efa42fefc04be71a4e9bb5
Co-authored-by: Bez Hermoso <bezalelhermoso@gmail.com>
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
syntax doc (#38922)
closes: vim/vim#19942
https://github.com/vim/vim/commit/72cefe6b72c92b5f3686ee297277a2940cbb702f
Also include a blank line change from https://github.com/vim/vim/commit/9d9381fb2804c426f88cd9b30650b94fc500d6bb
Co-authored-by: Hirohito Higashi <h.east.727@gmail.com>
|
|
Problem:
`:help dev-name-common` states that "buf" should be used instead of
"buffer" but there are cases where buffer is mentioned in the lua API.
Solution:
- Rename occurrences of "buffer" to "buf" for consistency with the
documentation.
- Support (but deprecate) "buffer" for backwards compatibility.
Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
|
|
shell injection (#38677)
fyi @benknoble
https://github.com/vim/vim/commit/82ebaa79b03f0f9d66eeba51570c62a83096108f
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
fyi: @benknoble
https://github.com/vim/vim/commit/374f06ffd8b890809289911334d8f0b0b15603bc
Co-authored-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Michał Majchrowicz <mmajchrowicz@afine.com>
|
|
Problem:
`:Tutor` should open a copy of the tutor file instead of the original. This is
because edits modify the original file buffer, and crashes or other misuse could
potentially corrupt the original file even if it's WO.
Solution:
Copy the tutor file to a temp path before opening. Store the original path in
`b:tutor_file` so metadata json loading still works.
- `tutor#TutorCmd` will now copy the tutor file to a temp path via `tempname()`
before opening with `drop`. Store the original path in `b:tutor_file` only
after the buffer is created.
- `tutor#LoadMetadata` now uses `b:tutor_file` to resolve the JSON path instead
of `expand('%')`, which now points to the temp copy buffer
- `ftplugin/tutor.vim` does not make the `tutor#LoadMetadata` call anymore. It
was guarded by `filereadable(expand('%').'.json')` which fails for the new
temp copy path logic . Instead, `tutor#LoadMetadata` is already called
directly inside `tutor#TutorCmd` since we are already assumed to enable
interactive.
Co-authored-by: Phạm Bình An <111893501+brianhuster@users.noreply.github.com>
|
|
Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
|
|
Problem: filetype: wks files are not recognized.
Solution: Detect *.wks, *.wks.in and *.wks.inc as wks filetype,
include a filetype and syntax plugin (Anakin Childerhose)
The OpenEmbedded Image Creation tool, `wic` uses wic kickstarter files
to define image partition and bootloader layouts.
wks files can end with .wks, .wks.in for templated wks files, and
.wks.inc for including in other .wks files.
The autocmd for *.wks.inc needs to come before *.inc in
runtime/ftdetect.vim
Reference:
https://docs.yoctoproject.org/ref-manual/kickstart.html#openembedded-kickstart-wks-reference
https://git.openembedded.org/openembedded-core/tree/scripts/lib/wic/canned-wks
closes: vim/vim#19796
https://github.com/vim/vim/commit/8c116bbe79eab7337bb5c979468d3b0cb5933d07
|
|
Problem:
`vim.keymap.*.Opts.buf` allows `boolean` aliases for more widely
used `integer?` values, `true` -> `0` and `false` -> `nil`. This
conversion is unnecessary and can be handled at call sites.
Solution:
As a follow-up to deprecating the `buffer` option, drop support for
boolean values for the new `buf` option. The deprecated `buffer`
continues to support booleans for backward compatibility.
|
|
The `buffer` option remains functional but is now undocumented.
Providing both will raise an error. Since providing `buf` was disallowed
before, there is no code that will break due to using `buffer` alongside
`buf`.
|
|
(#38399)
closes: vim/vim#19701
https://github.com/vim/vim/commit/ce4fbda99285c991df3c1f26e248c88bc938ba9e
Co-authored-by: Phạm Bình An <phambinhanctb2004@gmail.com>
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
Add a minimal ftplugin `runtime/ftplugin/yara.vim` that sets:
- `commentstring` for YARA line comments (`//`)
- `comments` for YARA block comment (`/* */`)
- `formatoptions` to wrap comment lines and continue comment after newlines
This was heavily inspired from `runtime/ftplugin/c.vim`
closes: vim/vim#19736
https://github.com/vim/vim/commit/39ee7d17b9dec0a83eaa500f8a6f9c9d1b076bcf
Co-authored-by: Thomas Dupuy <thom4s.d@gmail.com>
|
|
Problem:
`K` in help files may fail in some noisy text. Example:
(`fun(config: vim.lsp.ClientConfig): boolean`)
^cursor
Solution:
- `:help!` (bang, no args) activates DWIM behavior: tries `<cWORD>`,
then trims punctuation until a valid tag is found.
- Set `keywordprg=:help!` by default.
- Does not affect `CTRL-]`, that is still fully "tags" based.
|
|
|
|
script (#38277)
- ftplugin(sshdconfig): use "-I" for 'keywordprg' to search
case-insensitive in the man page
- syntax(sshdconfig,sshconfig): Mark "lowdelay", "throughput", and
"reliability" as deprecated for IPQoS, highlighting them as
errors/warnings to reflect OpenSSH 10.1p1 release
Reference:
https://www.openssh.org/releasenotes.html#10.1p1
closes: vim/vim#19636
https://github.com/vim/vim/commit/3697c6b020e6b5899a13e7c7cb105708ba2eb9d9
Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
|
|
script (#38262)
- remove `set isk+=-` to highlight `-=` operator correctly
- implement highlighting of GID
- fix highlight of hostname and add special value ALL
- fix highlight of IP address
- update include and includedir patterns
- remove duplicate syntax rules
- add missing options
- fix highlight of parameter assignment (limit operators to list
parameters)
- fix highlight of string and list parameters with trailing whitespaces
- implement highlight of permission (octal)
- implement highlight of floating point numbers
- implement highlight of timeout-specific options
- support highlight of negatable options (integer, mode, float, timeout,
string)
- allow sudoersListParameter to be negated
- fix highlight of comma-separated parameter list used as boolean
- fix highlight of parameter negation (prevent highlighting ill-formed `! !`)
- fix highlight of Tag_Spec
- allow empty Runas spec: `()` and `(:)`
- fix highlight of comma-concatenated commands, hosts, and users
- check word boundaries for special value ALL
- implement highlight of Option_Spec
- fix highlight in User_Spec (specifically for Host position)
- fix highlight of `Default!` command
- support highlight of digests (sha224, etc.)
- add syntax test and update header
closes: vim/vim#19634
https://github.com/vim/vim/commit/8f2cd474048302ee1d919a45707e8b1f5db7ea57
Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
|
|
settings (#38134)
closes: vim/vim#19545
https://github.com/vim/vim/commit/99ba87d152a93d994eb052ba1cfc39e55ac46421
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
Problem: There is a xkb syntax, but no filetype plugin.
Solution: Create a filetype plugin and set the comment and commentstring
options for the xkb filetype (xkb = X keyboard extension)
closes: vim/vim#19537
https://github.com/vim/vim/commit/14eddc7d46f2e6830beb00834f33eb272d028e82
Co-authored-by: GX <59413576+gx089@users.noreply.github.com>
|
|
commentstring changed to single line variant in
JuliaEditorSupport/julia-vim@edd3512
closes: vim/vim#19530
https://github.com/vim/vim/commit/75c291fc39d33844365cb0a4e99569b570d85af0
Co-authored-by: Daniel Wennberg <daniel.wennberg@gmail.com>
|
|
Patch 9.2.0033 (vim/vim#19260) introduced a dedicated `env` filetype for
.env files, which were previously detected as `sh`. This left env
files without `commentstring`, `comments`, or `formatoptions` since
no ftplugin was added alongside the new filetype.
Add runtime/ftplugin/env.vim to set these options, matching the
behavior that .env files had when they used the `sh` filetype.
closes: vim/vim#19522
https://github.com/vim/vim/commit/9148644c1eb73faad702eacac2d40925c0c9a2d0
Co-authored-by: snelling-a <72226000+snelling-a@users.noreply.github.com>
|
|
Problem:
The html and css of the website's documentation pages are defined in
long strings in gen_help_html.lua, making it hard to maintain and
improve them. E.g. adding in headers that state the documentation is for
nightly Nvim has been a long standing feature request.
Solution:
Move the inlined css and html (e.g. the <head>, <nav>, etc.) to Hugo.
Now that the website is build with Hugo, we can use its templating
system to generate the full html/css from the Tree-sitter tree:
https://github.com/neovim/neovim.github.io/pull/437
|
|
This was added before there was a dedicated language server for
tree-sitter queries. Now that https://github.com/ribru17/ts_query_ls
exists, this is a better option in every regard (and up to now
required manually disabling the builtin linter to avoid duplicate
diagnostics and performance issues).
|
|
|
|
the covergroup block
A covergroup start with the "covergroup" keyword and ends with the
"endgroup" keyword. "group" is not even a reserved keyword in systemverilog.
Reference:
https://www.chipverify.com/systemverilog/systemverilog-covergroup-coverpoint#covergroup
https://github.com/MikePopoloski/slang/blob/master/docs/grammar.md#covergroup_declaration
closes: vim/vim#19393
https://github.com/vim/vim/commit/10f5573672cb2656ed70a9ac9b9a995ceba3d8ed
Co-authored-by: TG <tarik.graba@telecom-paris.fr>
|
|
Effective use of 'formatprg' requires both an understanding of the
specific capabilities of the formatting tool and Vim's formatting
commands. This is overly burdensome for some users.
Rather than address each complaint on a filetype by filetype basis,
remove 'formatprg' settings from all ftplugins.
It is expected that formatter plugins will be available in the near
future as a better solution. See vim/vim#17145 (Add "formatter" feature using
"compiler" as a template).
Note: 'formatprg' will be removed from older ftplugins after the release
of Vim 9.2. The setting was added to the go and gleam ftplugins during
the current development cycle and have not been included in a Vim
release.
See: vim/vim#18650 (rust.vim: stop setting formatprg to rustfmt)
closes: vim/vim#19108
https://github.com/vim/vim/commit/dcc41752843428142623b527433c551991ea7a31
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
closes: vim/vim#19316
https://github.com/vim/vim/commit/5ed37232bb23245f6d59fa928a7654d3933a2f0a
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
- Change syntax file maintainer.
- Add Guile and Python command highlighting.
- Update command list to version 12.
- Add foldable regions for the commands 'define', 'if' and 'while'
multiline commands.
- Support documented partial command names.
- Add matchit, browsefilter, and comment formatting support.
- Support embedded C in compiler {code|print} commands.
- Add largely complete settings highlighting and folding.
- Add syntax tests (incomplete).
Thanks to Claudio Fleiner for many years of maintenance.
closes: vim/vim#10649
https://github.com/vim/vim/commit/b422a33ac22dbd0086f64e7540afefc0c9a5a7ee
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
Also, mark @CatsDeservePets as maintainer.
closes: vim/vim#18640
https://github.com/vim/vim/commit/56d470a00863234f455fbfba6a96de4f49fe33aa
Co-authored-by: CatsDeservePets <145048791+CatsDeservePets@users.noreply.github.com>
|
|
match
When using vim9-syntax plugin, :VimKeywordPrg does not lookup functions
correctly, as it relies solely on syntax names to find the help topic.
The syntax keyword used for builtin function is vi9FuncNameBuiltin in
vim9-syntax plugin, not vimFuncName expected by :VimKeywordPrg, so the
fallback rules apply, and there is no fallback rule for function calls.
Fix by just checking if the first char after topic is '(', and if so
assume help topic is a function.
closes: vim/vim#19320
https://github.com/vim/vim/commit/ac5af8ecd3025c2739ab79f6b8529ea0415c1380
Co-authored-by: Mark Woods <mwoods.online.ie@gmail.com>
|
|
'keywordprg' matching
- Match &option, and &[lg]:option variables.
- Match Ex commands after :bar.
- Fix matching of pre and post context text.
- Style - use '..' for string concatenation.
fixes vim/vim#17567
closes: vim/vim#17653
https://github.com/vim/vim/commit/c65643cbec4f5a77a2d30232c64c258b5f0f5c09
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
closes: vim/vim#19219
https://github.com/vim/vim/commit/b8efcc02028d9a3aa5844978025997e258d84469
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
|
|
Add "-" to iskeyword. This required a change to the syntax files too
because they were using the word begin and end atoms.
closes: vim/vim#17259
https://github.com/vim/vim/commit/dd3aa92ce610c2f61e5b8899d68dbe7f840cc377
Co-authored-by: Aman Verma <amanraoverma@gmail.com>
Co-authored-by: Teemu Ikonen <tpikonen@mailbox.org>
Co-authored-by: A4-Tacks <wdsjxhno1001@163.com>
|
|
Problem: filetype: skhd files are not recognized
Solution: Detect .skhdrc and skhdrc as skhd filetype,
include a syntax and filetype plugin, add syntax tests
(Kiyoon Kim)
Add syntax highlighting for skhd (simple hotkey daemon for macOS)
configuration files. Includes filetype detection for skhdrc and
.skhdrc files.
Reference:
- https://github.com/asmvik/skhd
closes: vim/vim#19235
https://github.com/vim/vim/commit/e5f61842b509acea91c63923e60987ad7ae123dd
Co-authored-by: Kiyoon Kim <kiyoon@users.noreply.github.com>
|
|
- Allow for an unparenthesised expression argument to the 'if',
'if-then', and 'while' commands. This is undocumented, and probably
unintended, behaviour but is frequently seen in the wild.
- Allow for a continued-line expression argument to the 'if-then'
command.
related: vim/vim#19172 (csh: Support negated if in matchit)
closes: vim/vim#19190
https://github.com/vim/vim/commit/09a48056c775074e0c29aaaf252ccea918f42bbc
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
closes: vim/vim#19232
https://github.com/vim/vim/commit/87635dcb5ad0b55cddc71ca7e9bc312ef87d5246
Co-authored-by: Arvin Verain <arvinverain@proton.me>
|
|
closes: vim/vim#19156
https://github.com/vim/vim/commit/d829e10e0fa36de50ce230ee840dfc727e252642
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
|
|
closes: vim/vim#19158
https://github.com/vim/vim/commit/b1fa262960ca3ef910ae192db58d28b3e3c7719a
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
|
|
in ftplugin
closes: vim/vim#19143
https://github.com/vim/vim/commit/0b103d6a7c2dd6a858f02a0bc93c5d93efc303c7
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
|
|
Currently, the matchit configuration chokes on valid syntax like:
```csh
if !(true) then
true
endif
```
Make sure the negation syntax is supported.
closes: vim/vim#19172
https://github.com/vim/vim/commit/f25c343b2639d393544106c21b3b0b58caa3adca
Co-authored-by: Simão Afonso <simao.afonso@powertools-tech.com>
|
|
closes: vim/vim#19152
https://github.com/vim/vim/commit/17d60cee555ec36e62492793159f9051218a6bd9
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
|
|
Add .rst to suffixesadd. This allows gf and similar commands to work for
rst documentation such as in the linux kernel Documentation.
closes: vim/vim#19149
https://github.com/vim/vim/commit/be6225976c0b7d120c41026de5616e76851dd2f2
Co-authored-by: Anakin Childerhose <anakin@childerhose.ca>
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
ftplugin (#37334)
Only set fileformat=dos for new files; preserve existing line endings
when editing. This satisfies RFC 5228 for new files while avoiding
issues with version control and existing workflows.
The previous change (3cb4148) unconditionally set fileformat=dos, which
converts existing files with LF line endings to CRLF on save. This
causes issues with version control (entire file appears changed) and
breaks workflows where sieve files are stored with unix line endings.
Dovecot Pigeonhole (the main sieve implementation) has explicitly
accepted LF line endings since 2008 (commit 97b967b5):
/* Loose LF is allowed (non-standard) and converted to CRLF */
This behavior has remained unchanged for almost 18 years.
closes: vim/vim#19144
https://github.com/vim/vim/commit/fc00006777594f969ba8fcff676e6ca1bcb43546
Co-authored-by: André-Patrick Bubel <code@apb.name>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
|
|
closes: vim/vim#19112
https://github.com/vim/vim/commit/5eb10c5359e05338050819b8229bd4c8af36d365
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
closes: vim/vim#19113
https://github.com/vim/vim/commit/c45e16a939b5d924d13bf234a5905b5b599884fc
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
maintainer email (#37222)
https://github.com/vim/vim/commit/57352b279d4de492dee4be07d6bc4a116599bbac
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
latest language spec (#37205)
closes: vim/vim#19058
https://github.com/vim/vim/commit/cc71684ab0025e87b697ed0b359214061f143392
Co-authored-by: Paulo Moura <pmoura@logtalk.org>
|
|
commits (#37192)
This reverts commits:
- 6b652a785033fd4164e049492a7327c1ed7c3e5f
- 2f689d5abde0ccddca9e20d8c93a0299bd054e32
- a025a46d4169587145fb54f04af349cd05cb6122
Several email addresses that are known to be valid caused bounces
due to an issue with my email setup. The previous commits incorrectly
marked these addresses as invalid. So revert the whole thing again.
https://github.com/vim/vim/commit/62d8f3dab5a0b30c31a8df86a973c5e59821a3f0
N/A patch:
vim-patch:2f689d5: runtime: mark more invalid email addresses
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
https://github.com/vim/vim/commit/a025a46d4169587145fb54f04af349cd05cb6122
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
https://github.com/vim/vim/commit/2f689d5abde0ccddca9e20d8c93a0299bd054e32
Skip colors/ and syntax/help_ru.vim: missing previous changes.
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
Problem: After `vim.pack.update()` it is not clear if plugin is active
or not. This can be useful to detect cases when plugin was removed
from 'init.lua' but there was no `vim.pack.del()`.
Solution: Add ` (not active)` suffix with distinctive highlighting to
header of plugins that are not active.
It will also be shown in in-process LSP document symbols to have quick
reference about which plugins are not active.
|