summaryrefslogtreecommitdiffstats
path: root/runtime/syntax
AgeCommit message (Collapse)Author
2024-06-11runtime(vim): Update base-syntax, configurable comment string highlighting ↵dkearns
(#14931) Allow highlighting of strings within comments to be disabled by setting g:vimsyn_comment_strings to false. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-11runtime(vim): Update base-syntax, match multiline continued comments (#13936)dkearns
Match multiline (continued) line comments. Continued tail comments are not supported yet. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-11runtime(vim): Remove orphaned screen dump files (#14965)dkearns
These are no longer generated by the current test input files. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-10runtime(kdl): include syntax, indent and ftplugin filesinzuo Jiang
closes: #14956 Co-authored-by: Aram Drevekenin <aram@poor.dev> Signed-off-by: inzuo Jiang <jiangyinzuo@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-10runtime(deb822sources): add missing Enabled field in syntax scriptKentaro Hayashi
closes: #14898 It lacks the support of Enabled: boolean option field [1]: e.g. Types: deb Uris: https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ Components: main Suites: vscodium Architectures: amd64 i386 arm64 armhf Enabled: yes Signed-By: /var/lib/extrepo/keys/vscodium.asc This patch was also forwarded to upstream. [2] [1] https://manpages.debian.org/unstable/apt/sources.list.5.en.html#DEB822-STYLE_FORMAT [2] https://salsa.debian.org/vim-team/vim-debian/-/merge_requests/16 Signed-off-by: Kentaro Hayashi <kenhys@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-09runtime(java): Exclude lambda expressions from _when_ _switch-case_ label ↵Aliaksei Budavei
clauses (#14945) These guard clauses are always boolean expressions, whereas lambda expressions can only appear in either an assignment, a casting, or an invocation context. References: https://docs.oracle.com/javase/specs/jls/se21/html/jls-14.html#jls-14.11.1 https://docs.oracle.com/javase/specs/jls/se21/html/jls-15.html#jls-15.27 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-05runtime(vim): Update base-syntax, allow whitespace before :substitute patternDoug Kearns
Allow whitespace between the :substitute command and its pattern argument. Although unusual, it is supported and there are examples in the wild. Match Vi compatible :substitute commands like :s\/{string}/. See :help E1270. fixes: #14920 closes: #14923 Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-03patch 9.1.0465: missing filecopy() functionv9.1.0465Shougo Matsushita
Problem: missing filecopy() function Solution: implement filecopy() Vim script function (Shougo Matsushita) closes: #12346 Co-authored-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Shougo Matsushita <Shougo.Matsu@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-06-03patch 9.1.0464: no whitespace padding in commentstring option in ftpluginsv9.1.0464Riley Bruins
Problem: no whitespace padding in commentstring option in ftplugins Solution: Change default to include whitespace padding, update existing filetype plugins with the new default value (Riley Bruins) closes: #14843 Signed-off-by: Riley Bruins <ribru17@hotmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-31patch 9.1.0453: filetype: rasi files are not recognizedv9.1.0453Pierrick Guillaume
Problem: filetype: rasi files are not recognized Solution: regonize '*.rasi' files as rasi filetype, include a filetype and syntax plugin (Pierrick Guillaume) ported from: https://github.com/Fymyte/rasi.vim closes: #14821 Signed-off-by: Pierrick Guillaume <pierguill@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-31runtime(java): Improve the matching of lambda expressions (#14880)Aliaksei Budavei
- Distinguish some formal parameters. - Support multi-line definitions. Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-28runtime(stylus): remove remaining css code (#14866)zeertzjq
This seems to be a forgotten fixup in https://github.com/vim/vim/commit/2d919d2744a99c9bb9e79984e85b8e8f5ec14c07#r141568461 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-27runtime(vim): re-generate vim syntax from generatorChristian Brabandt
related: #14861 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-27runtime(vim): fix syntax vim bug (Close #14858) (#14861)h_east
Signed-off-by: h-east <h.east.727@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-26runtime(typescriptreact): fix highlighting nested and escaped quotes in ↵Linda_pp
string props (#14852) Signed-off-by: rhysd <lin90162@yahoo.co.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-25runtime(debian): update Debian runtime files (#14849)James McCoy
* Add space in template for 'commentstring' * Add 'comments' and 'commentstring' support to debcontrol * debversions: Move Ubuntu releases outside of standard support to unsupported Although trust, xenial, and bionic are not EOL yet, their standard support period has ended. Reported-by: Riley Bruins <ribru17@gmail.com> Co-authored-by: Riley Bruins <ribru17@gmail.com> Signed-off-by: James McCoy <jamessan@debian.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-24runtime(typescript): update outdated syntax filesrhysd
fixes: #14721 fixes: HerringtonDarkholme/yats.vim#277 closes: #14840 Signed-off-by: rhysd <lin90162@yahoo.co.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-24runtime(i3config/swayconfig): fix floating_modifier highlight (#14841)Josef Litoš
Signed-off-by: JosefLitos <litosjos@fit.cvut.cz> Signed-off-by: James Eapen <james.eapen@vai.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-24patch 9.1.0442: hare runtime files outdatedv9.1.0442Amelia Clarke
Problem: hare runtime files outdated Solution: runtime(hare): update hare.vim to match upstream (Amelia Clarke) closes: #14836 Signed-off-by: Amelia Clarke <selene@perilune.dev> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-23runtime(i3config/swayconfig): support floating_modifier none; revert broken ↵James Eapen
highlighting - fix floating_modifier $mod normal|inverse was being hightlighted as error reverting the floating_modifier change from dd83b63 - will currently allow invalid syntax after floating_modifier fixes: #14826 closes: #14827 Co-authored-by: JosefLitos <litosjos@fit.cvut.cz> Signed-off-by: James Eapen <james.eapen@vai.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-13runtime(i3config/swayconfig): allow indented commands (#14757)Josef Litoš
fixes: #14752 Co-authored-by: jamespeapen <jamespeapen@users.noreply.github.com> Signed-off-by: Josef Litoš <54900518+JosefLitos@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-13runtime(syntax-tests): Filter out non-Latin-1 characters for syntax tests ↵Aliaksei Budavei
(#14767) Syntax tests are run with the LC_ALL=C environment variable passed to "make". Occasionally, there are CI failures for such test files containing non-Latin-1 characters with error messages pointing to multi-byte characters: https://github.com/vim/vim/actions/runs/8824925004/job/24228298023#step:10:16370 , https://github.com/vim/vim/actions/runs/8840856619/job/24276935260#step:10:16347 , https://github.com/vim/vim/actions/runs/8854043458/job/24316210645#step:10:16362 , https://github.com/vim/vim/actions/runs/8856501136/job/24322848765#step:10:16354 , https://github.com/vim/vim/actions/runs/9038417238/job/24839482152#step:11:16980 . But since the very same unchanged tests pass at other times: https://github.com/vim/vim/actions/runs/8827593571/job/24235935458#step:10:16353 , https://github.com/vim/vim/actions/runs/9065214647/job/24905321661#step:11:17002 ; these failures are unrelated to the nature of syntax tests and should be considered false positives. As a temporary workaround, all bytes of known non-Latin-1 characters can be replaced in memory with an arbitrary ASCII byte (?) by applying a filter > " To ignore part of the dump, provide a "dumps/{filename}.vim" file with > " Vim commands to be applied to both the reference and the current dump, so > " that parts that are irrelevant are not used for the comparison. The result > " is NOT written, thus "term_dumpdiff()" shows the difference anyway. before lines are compared between files. Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-10runtime(java): Strive to remain compatible for at least Vim 7.0 (#14744)Aliaksei Budavei
Also: - Limit all look-behind regexp patterns. - Cache regexp capabilities for [:upper:] and [:lower:]. Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-10runtime(java): Stop handpicking syntax groups for @javaTop (#14727)Aliaksei Budavei
* runtime(java): Stop handpicking syntax groups for @javaTop Also: - Remove the obsolete comment for g:java_allow_cpp_keywords. - Remove the commented out groups java\%[Debug\]StringError. - Infer and set the preferred formatting Vim options from the modeline. Since vim-6-0u, non-contained syntax groups can be referred to by using the "contains=TOP..." argument. * Set &encoding and &termencoding to "utf-8" for test files * Limit non-ASCII charset to [§ƒɐɘʬʭΑ-Τα-μ] for test files Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-08runtime(spec): add new items to scripts section in syntax pluginMaxwell G
- %generate_buildrequires — added in RPM 4.15 - %conf — added in RPM 4.18 closes: #14723 Ref: https://rpm-software-management.github.io/rpm/manual/spec.html#build-scriptlets Signed-off-by: author Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-08patch 9.1.0396: filetype: jj files are not recognizedv9.1.0396Gregory Anders
Problem: jj files are not recognized Solution: recognize '*.jjdescription' files as jj filetype (Gregory Anders) See: https://github.com/martinvonz/jj closes: #14733 Signed-off-by: Gregory Anders <greg@gpanders.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-07runtime(cpp): Fix digit separator in syntax script for octals and floatsWu Yongwei
Also fix the incorrect rendering of floats that start with ".". closes: #14724 Signed-off-by: Wu Yongwei <wuyongwei@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-05-01patch 9.1.0386: filetype: stylus files not recognizedv9.1.0386Philip H
Problem: filetype: stylus files not recognized Solution: Detect '*.styl' and '*.stylus' as stylus filetype, include indent, filetype and syntax plugin (Philip H) closes: #14656 Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-29runtime(java): Improve the recognition of the "indent" method declarations ↵Aliaksei Budavei
(#14659) There is a flaw in the current implementation that has been exacerbated around v5.2. It lies in the recognition of all three indentation styles simultaneously: a tab, two space, and eight space character(s). With it, it is not uncommon to misidentify various constructs as method declarations when they belong to two-space indented members and other blocks of a type and are offset at eight space characters or a tab from the start of the line. For example, ------------------------------------------------------------ class Test { static String hello() { return "hello"; } public static void main(String[] args) { try { if (args.length > 0) { // FIXME: eight spaces. System.out.println(args[0]); } else { // FIXME: a tab. System.out.println(hello()); } } catch (Exception e) { throw new Error(e); } } } ------------------------------------------------------------ ------------------------------------------------------------ :let g:java_highlight_functions = 'indent' :doautocmd Syntax ------------------------------------------------------------ A better approach is to pick an only indentation style out of all supported styles (so either two spaces _or_ eight spaces _or_ a tab). Note that tabs and spaces can still be mixed, only the leading tab or the leading run of spaces matters for the recognition. And there is no reason to not complement the set of valid styles with any number of spaces from 1 to 8, inclusively. Please proceed with the necessary change as follows: - rename from "indent" to "indent2" for a 2-space run; - rename from "indent" to "indent8" for an 8-space run; - continue to have "indent" for a tab run; - define an "indent" variable with a suffix number denoting the preferred amount of indentation for any other run of spaces [1-8]. As before, this alternative style of recognition of method declarations still does not prescribe naming conventions and still cannot recognise method declarations in nested types that are conventionally indented. The proposed changes also follow suit of "style" in stopping the claiming of constructor and enum constant declarations. Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-28runtime(ssa): improve syntax file performance (#14654)ObserverOfTime
fixes: #14653 Signed-off-by: ObserverOfTime <chronobserver@disroot.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-27runtime(debversions): Add oracular (24.10) as Ubuntu release nameSimon Quigley
closes: #14645 Signed-off-by: Simon Quigley <simon@tsimonq2.net> Signed-off-by: James McCoy <jamessan@jamessan.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-26runtime(jq): include syntax, ftplugin and compiler pluginVito
closes: #14619 Signed-off-by: Vito <vito.blog@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-24runtime(java): Improve the recognition of the "style" method declarationsAliaksei Budavei
- Request the new regexp engine (v7.3.970) for [:upper:] and [:lower:]. - Recognise declarations of in-line annotated methods. - Recognise declarations of _strictfp_ methods. - Establish partial order for method modifiers as shown in the MethodModifier production; namely, _public_ and friends should be written the leftmost, possibly followed by _abstract_ or _default_, or possibly followed by other modifiers. - Stop looking for parameterisable primitive types (void<?>, int<Object>, etc., are malformed). - Stop looking for arrays of _void_. - Acknowledge the prevailing convention for method names to begin with a small letter and for class/interface names to begin with a capital letter; and, therefore, desist from claiming declarations of enum constants and constructors with javaFuncDef. Rationale: + Constructor is distinct from method: * its (overloaded) name is not arbitrary; * its return type is implicit; * its _throws_ clause depends on indirect vagaries of instance (variable) initialisers; * its invocation makes other constructors of its type hierarchy invoked one by one, concluding with the primordial constructor; * its explicit invocation, via _this_ or _super_, can only appear as the first statement in a constructor (not anymore, see JEP 447); else, its _super_ call cannot appear in constructors of _record_ or _enum_; and neither invocation is allowed for the primordial constructor; * it is not a member of its class, like initialisers, and is never inherited; * it is never _abstract_ or _native_. + Constructor declarations tend to be few in number and merit visual recognition from method declarations. + Enum constants define a fixed set of type instances and more resemble class variable initialisers. Note that the code duplicated for @javaFuncParams is written keeping in mind for g:java_highlight_functions a pending 3rd variant, which would require none of the :syn-cluster added groups. closes: #14620 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-22patch 9.1.0366: filetype: ondir files are not recognizedv9.1.0366Jon Parise
Problem: filetype: ondir files are not recognized Solution: Detect '.ondirrc' as ondir filetype (Jon Parise) closes: #14604 Signed-off-by: Jon Parise <jon@indelible.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-21runtime(astro): Add filetype, syntax and indent pluginPhilip H
related: #14558 closes: #14561 ported from: https://github.com/wuelnerdotexe/vim-astro Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-18patch 9.1.0354: runtime(uci): No support for uci file typesv9.1.0354Colin Caine
Problem: runtime(uci): No support for uci file types (Wu, Zhenyu) Solution: include basic uci ftplugin and syntax plugins (Colin Caine) closes: #14575 Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Colin Caine <complaints@cmcaine.co.uk> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-15runtime(i3config/swayconfig): update syntax scriptsJosef Litoš
modifications with the goals of: - simplifying structure by using group `cluster`s - improving visual highlighting responsiveness by using `nextgroup` - improving recursive wm-msg command highlighting - separating command variants meant for runtime and for config only closes: #14544 Signed-off-by: Josef Litoš <54900518+JosefLitos@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-14patch 9.1.0326: filetype: some requirements files are not recognizedv9.1.0326Wu, Zhenyu
Problem: filetype: some requirements files are not recognized Solution: Detect '*-requirements.txt', 'constraints.txt', 'requirements.in', 'requirements/*.txt' and 'requires/*.txt' as requirements filetype, include pip compiler, include requirements filetype and syntax plugin (Wu, Zhenyu, @raimon49) closes: #14379 Co-authored-by: raimon <raimon49@hotmail.com> Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-14patch 9.1.0325: filetype: CMakeCache.txt files not recognizedv9.1.0325Wu, Zhenyu
Problem: filetype: CMakeCache.txt files not recognized Solution: Detect 'CMakeCache.txt' files as cmakecache filetype, include basic syntax script for cmakecache (Wu, Zhenyu, @bfrg) closes: #14384 Co-authored-by: bfrg <bfrg@users.noreply.github.com> Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-14runtime(vim): Update base-syntax, fix nested function folding (#14397)dkearns
Only match function folding start and end patterns at the start of a line, excluding heredocs and :append/:change/:insert commands. Fixes #14393 Signed-off-by: Christian Brabandt <cb@256bit.org> Signed-off-by: Doug Kearns <dougkearns@gmail.com>
2024-04-14runtime(java): Recognise non-ASCII identifiers (#14543)Aliaksei Budavei
* runtime(java): Recognise non-ASCII identifiers Also: - Remove the already commented out and less general in its definition javaFuncDef alternative. - Stop recognising some bespoke {p,trace} debugging API. Non-ASCII identifiers have been supported from the outset of the Java language. > An _identifier_ is an unlimited-length sequence of _Java > letters_ and _Java digits_, the first of which must be a > Java letter. An identifier cannot have the same spelling > (Unicode character sequence) as a keyword . . . Boolean > literal . . . or the null literal . . . > . . . . . . . . > Letters and digits may be drawn from the entire Unicode > character set . . . > . . . . . . . . > A Java letter is a character for which the method > Character.isJavaLetter . . . returns true. A Java > letter-or-digit is a character for which the method > Character.isJavaLetterOrDigit . . . returns true. > . . . . . . . . > The Java letters include . . . for historical reasons, the > ASCII underscore (_) . . . and dollar sign ($) . . . (Separate syntax tests will be written when particular parts now touched will have been further improved.) Reference: https://javaalmanac.io/jdk/1.0/langspec.pdf [§3.8] * Take on the maintenance of Java filetype and syntax files Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-13runtime(vim): Update base-syntax, add legacy header foldingDoug Kearns
Allow for syntax-based folding of Vim9 script legacy header regions. This is enabled with the "H" flag of the g:vimsyn_folding config variable. closes: #14530 Signed-off-by: Christian Brabandt <cb@256bit.org> Signed-off-by: Doug Kearns <dougkearns@gmail.com>
2024-04-13runtime(i3config): Line continuation is not detected for 'set' command (#14531)julio-b
Problem: Valid i3config syntax is highlighted as error. Solution: Skip over line-breaks correctly. Signed-off-by: Julio B <julio.bacel@gmail.com> Signed-off-by: Josef Litoš <54900518+JosefLitos@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-13runtime(go): fix highlighting import string followed by some comment (#14538)Linda_pp
Signed-off-by: rhysd <lin90162@yahoo.co.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-10patch 9.1.0304: filetype: cgdb config file is not recognizedv9.1.0304Wu, Zhenyu
Problem: filetype: cgdb config file is not recognized Solution: Detect cgdbrc files as cgdbrc filetype (Wu, Zhenyu) closes: #14458 Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-10runtime(vim): Improve Vim9 and legacy-script comment highlighting (#13104)dkearns
This is a first-pass attempt to limit matching of Vim9 and legacy-script comments to the appropriate syntactic contexts. Vim9-script comments are highlighted at top level in a Vim9-script file, in all :def functions, and in all :autocmd and :commmand command blocks. Legacy-script comments are highlighted at top level in a legacy script file, in all :func functions and in the Vim9-script preamble before the :vim9script marker command. Fixes #13047, #11307 and #9587. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-09runtime(vim): Update base-syntax, no curly-brace names in Vim9 script (#14466)dkearns
Remove curly-brace name matching for :def functions. This is not supported in Vim9 script. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-08runtime(cuda): Update cuda keywords, remove uncommonly used enumeration ↵jiangyinzuo
constants closes: #14406 Signed-off-by: jiangyinzuo <jiangyinzuo@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-08patch 9.1.0278: filetype: zathurarc files not recognizedv9.1.0278Wu, Zhenyu
Problem: filetype: zathurarc files not recognized Solution: Detect '.zathurarc' files as zathurarc filetype, add zathurarc filetype (Wu, Zhenyu) closes: #14380 Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-04-08patch 9.1.0276: No pandoc syntax supportv9.1.0276Wu, Zhenyu
Problem: No pandoc syntax support Solution: Add pandoc syntax and compiler plugins (Wu, Zhenyu, Konfekt) closes: #14389 Co-authored-by: Konfekt <Konfekt@users.noreply.github.com> Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu> Signed-off-by: Christian Brabandt <cb@256bit.org>