summaryrefslogtreecommitdiffstats
path: root/runtime
AgeCommit message (Collapse)Author
2024-03-28patch 9.1.0219: Vim9: No enum supportv9.1.0219Yegappan Lakshmanan
Problem: No enum support Solution: Implement enums for Vim9 script (Yegappan Lakshmanan) closes: #14224 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28translation(ru): Add translation for README.txt and uganda.txt (#14312)Restorer
* translation(ru): The main file README.txt and uganda.txt * removed tags-ru Signed-off-by: RestorerZ <restorer@mail2k.ru> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28NSIS: Possibility to include translated license and README.txt files (#14311)Restorer
* NSIS: Possibility to include translated license and README.txt files * fixed a missing semicolon * Disable always show dialog choice language Signed-off-by: RestorerZ <restorer@mail2k.ru> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28patch 9.1.0215: Half-page scrolling does not support smooth-scrollingv9.1.0215Luuk van Baal
Problem: Page-wise scrolling with Ctrl-D/Ctrl-U implements it's own logic to change the topline and cursor. More logic than necessary for scrolling with Ctrl-F/Ctrl-B was removed in patch 9.1.0211. Solution: Re-use the logic from Ctrl-E/Ctrl-Y/Ctrl-F/Ctrl-B while staying backward compatible as much as possible. Restore some of the logic that determined how many lines will be scrolled (Luuk van Baal) closes: #14316 Signed-off-by: Luuk van Baal <luukvbaal@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28runtime(vim): Update base-syntax, match empty blob and :abclear modifiers ↵dkearns
(#14318) - Match empty blob literals. - Match modifier arguments to :abclear commands. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28runtime(haskell): allow TODO keywords in commentsEnrico Maria De Angelis
closes: #14319 Signed-off-by: Enrico Maria De Angelis <enricomaria.dean6elis@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-28runtime(debcontrol): add Static-Built-Using field (#14306)Guilherme Puida
Signed-off-by: Guilherme Puida <guilherme@puida.xyz> Signed-off-by: James McCoy <jamessan@jamessan.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-26runtime(json5): add basic indent support (#14298)Rocco Mao
Signed-off-by: Rocco Mao <dapeng.mao@qq.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-26patch 9.1.0211: page-wise scrolling does not support smooth-scrollingv9.1.0211Luuk van Baal
Problem: Page-wise scrolling with Ctrl-F/Ctrl-B implements it's own logic to change the topline and cursor. In doing so, skipcol is not handled properly for 'smoothscroll', and virtual lines. Solution: Re-use the logic from Ctrl-E/Ctrl-Y while staying backward compatible as much as possible. closes: #14268 Signed-off-by: Luuk van Baal <luukvbaal@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-26patch 9.1.0207: No autocommand when writing session filev9.1.0207Colin Kennedy
Problem: No autocommand when writing session file Solution: Add SessionWritePost autocommand (Colin Kennedy) fixes: ##14242 closes: #14288 Co-authored-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Colin Kennedy <colinvfx@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-26runtime(java): Update java[CR]_JavaLang type lists (#14297)Aliaksei Budavei
- Add to the list of java.lang runtime exceptions two new types: MatchException (Pattern Matching for _switch_) and WrongThreadException (Virtual Threads). - "Demote" Compiler (removed in JDK 21) from the list of java.lang class types to a new list javaLangDeprecated. References: https://bugs.openjdk.org/browse/JDK-8205129 https://bugs.openjdk.org/browse/JDK-8282274 https://bugs.openjdk.org/browse/JDK-8284161 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-25patch 9.1.0205: Cannot use modifiers before :-Ntabmovev9.1.0205zeertzjq
Problem: Cannot use modifiers before :-Ntabmove. Solution: Check backwards from the command instead of checking from the start of the command line. Slightly adjust docs to make them more consistent (zeertzjq). closes: #14289 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-25runtime(doc): Update options.txtSong-Tianxiang
closes: #14295 Signed-off-by: Song-Tianxiang <149415622+Song-Tianxiang@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-25runtime(java): Recognise the inline kind of the {@return} tag (#14284)Aliaksei Budavei
Also: - Refine comment matching (javaComment{Error\ and,Start}). - Continue rewriting regexps (prefer atom grouping with non-capturing parens; factor out common prefixes in alternations). - Allow for relative paths with the _file_ attribute of {@snippet}. - Anticipate HTML in the @see tags. - Match the nullary method parens in javaDocSeeTagParam. - Improve the boundary patterns for summary sentences of documentation. > This sentence ends at ... or at the first tag (as defined > below). There are Java documentation tags (@) and there are HTML tags (<?>) (with Markdown looming large; see JEP 467). With block tags, e.g. @param, @return, @see, we begin another documentation "sentence" whether or not the author has terminated the summary sentence with a period; with .<!-- -->, we may follow abbreviations, enumerations, initials, (but instead consider @literal or &nbsp;) _within_ the summary sentence. On the other hand, inline tags, e.g. @code, @link, @literal, should not terminate the summary sentence. References: https://bugs.openjdk.org/browse/JDK-8075778 https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html#firstsentence https://docs.oracle.com/en/java/javase/21/docs/specs/javadoc/doc-comment-spec.html Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-24runtime(netrw): Fix typo in netrw#NetWrite (#14283)dkearns
Fix typo in netrw#NetWrite (http) error message call. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-24runtime(compiler): update errorformat for dot and neato compiler (#14257)Enno
* add errorformat for dot compiler * add errorformat for neato compiler Signed-off-by: Konfekt <Konfekt@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-24runtime(termdebug): allow multibyte characters as breakpoint signs (#14274)Mihai Ciuraru
Allow multibyte characters as termdebug signs using slice() function Co-authored-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Mihai Ciuraru <mihai.ciuraru@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-23patch 9.1.0199: Not enough tests for the slice() functionv9.1.0199zeertzjq
Problem: Not enough tests for the slice() function. Solution: Test with multibyte chars, and in both Legacy and Vim9 script. Update docs to be clearer about how it treats composing chars. (zeertzjq) closes: #14275 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-22runtime(vim): Update base-syntax, remove old unused syntax groups. (#14146)dkearns
Remove old unused syntax groups. - vimRegion, vimPattern and vimKeyword removed in Vim 5.3. - vimAuSyntax, vimAutoCmdOpt, vimAutoSet and vimStatement removed in 5.6. The following were linked in :hi commands but never defined with :syn and, most likely, never used: - vimHLMod introduced in 5.0. - vimKeycode and vimKeycodeError introduced in 5.4. - vimElseif introduced in 5.6. - vimFold introduced in 6.4. - vimOperStar (and vimoperStar) introduced in 9.0. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-22runtime(java): Recognise the {@snippet} documentation tag (#14271)Aliaksei Budavei
Remember that ‘code fragments are typically Java source code, but they may also be fragments of properties files, source code in other languages, or plain text.’ Therefore, with these changes, markup tags are highlighted in the Java source files (as external snippets) and in the {@snippet} tags. Also: - Improve matching of the multi-line {@code} documentation tag with any contained balanced braces. - Recognise the {@literal} documentation tag. - Highlight stray blanks in comments. Related to an enhancement proposal for PCRE-like callouts discussed at https://github.com/vim/vim/issues/11217. References: https://openjdk.org/jeps/413 https://docs.oracle.com/en/java/javase/21/docs/specs/javadoc/doc-comment-spec.html Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-21runtime(vim): Update base-syntax, improve function definition highlighting ↵dkearns
(#14203) Improve function definition highlighting. - Match bang and function modifiers - abort etc. - Only match valid scope modifiers. - Match listing commands. - Don't match ex commands in function names. - Split function syntax groups into :func and :def subgroups. - Match Vim9-script parameter and return types. - Limit legacy-script and Vim9-script comments to :func and :def definitions, respectively. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-21patch 9.1.0196: filetype: support for gnuplot files is lackingv9.1.0196RobbiZ98
Problem: filetype: support for gnuplot files is lacking Solution: Also detect *.gnuplot files (RobbiZ98) closes: #14243 Signed-off-by: RobbiZ98 <113035863+RobbiZ98@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-20runtime(colors): don't unnecessarily reload v:colornames dictAlin Mr
fixes: #14234 closes: #14235 Signed-off-by: Alin Mr <almr.oss@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-20runtime(deb822sources): Add minimal ftplugin (#14240)James McCoy
Set comment related options and avoid automatic line wrapping. Signed-off-by: James McCoy <jamessan@jamessan.com> Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-19patch 9.1.0188: filetype: no support for Vento filesv9.1.0188wrapperup
Problem: Vento files are not recognized. Solution: Recognize *.vto files as filetype "vento" (wrapperup) Vento is a templating engine https://vento.js.org/ closes: #14229 Signed-off-by: wrapperup <wrapperup4@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-19runtime(vim): Update base-syntax, disallow '.' at start of menu item names ↵dkearns
(#14232) Disallow '.' at the start of a menu item name. This is the menu path separator character and should be escaped with a '\' in this case. Partially fixes #14230. "popup" is still incorrectly matched as the Ex command. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(syntax-tests): regenerate c_00 and markdown dumpsChristian Brabandt
Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(syntax-tests): include missing changesAliaksei Budavei
related: #14215 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(rust): Respect no_plugin_maps and no_rust_maps globals (#14221)MyyPo
Signed-off-by: myypo <nikirsmcgl@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(syntax-tests): Retrofit input/c.c. with TEST_SETUPAliaksei Budavei
Also: - Include a syntax test for Markdown that takes advantage of a sourceable setup configuration. - Update Filelist closes: #14215 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(syntax-tests): Support sourceable Vim configuration for syntax testsAliaksei Budavei
Not all programming languages support comments; without such support, the TEST_SETUP functionality that offers embeddable Vim Ex commands may no longer be applicable. We can achieve similar functionality by storing Ex commands in a Vim file with its basename matching the basename of the test file, and having this Vim file sourced, and then having the test file loaded and tested. When such a Vim file would be used for a language that has comments and whose matching test file has embedded TEST_SETUP lines, we will accommodate it by letting the TEST_SETUP lines augment and/or overrule sourced configuration. Further details can be found in the discussion thread at https://github.com/vim/vim/discussions/14117. related: #14215 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(syntax-tests): Support embeddable Vim configuration for syntax testsAliaksei Budavei
Currently, the very same syntax file for which a test can be written is the only place where global variables can be defined so that the file parts guarded with such variables can be read during screen dump generation. This approach would lead to littering the syntax file with test-related queries. Instead, we could borrow the idea of comment-based mechanism for test setup from the indent test runner. With it, the first 20 lines of each test file would be ALWAYS scanned in search of the TEST_SETUP markers and, when found, the part between the end of the marker and the end of the line would be treated as a Vim Ex command. Note that with these changes, runtime/defaults.vim is no longer sourced for screen dump generation; however, some of its functionality is reintroduced. Further details can be found in the discussion thread at https://github.com/vim/vim/discussions/14117. related: #14215 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(doc): Recover some missed commas and periods in starting.txtAliaksei Budavei
Also: - Insert some missing words; - Strive for consistency with capitalisation of words; - Improve shell alias examples. The gvim words were left alone for now, but they deserve to be treated like proper names, GVim or GUI Vim, unless these refer to executable filenames (on *nix systems). closes: #14194 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18patch 9.1.0187: filetype: no support for Dafny filesv9.1.0187zeertzjq
Problem: Dafny files are not recognized. Solution: Recognize *.dfy files as filetype "dafny" (zeertzjq). Ref: https://dafny.org/ Ref: https://github.com/mlr-msft/vim-loves-dafny closes: #14226 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-18runtime(vim): Update base-syntax, improve :highlight command (#14228)dkearns
Improve :highlight command highlighting - Use the same highlight groups for "default link" with and without bang. - Match some common line-continuation use. - Match :hi clear variants. - Highlight color-name values. Resync vim.vim and generator/vim.vim.base. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-17runtime(doc): clarify close behaviour for :termChristian Brabandt
closes: #14207 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-17runtime(go): `goPackageComment` highlighting too broadMatthew Hughes
Previously this would highlight any comment before a line starting `package`, for example var ( // This comment would be highlighted as a goPackageComment packages []string ) The package clause is only valid when followed by a space[1], so include this restriction This is upstreaming a change from `go-vim`[2] [1] https://go.dev/ref/spec#Package_clause [2] https://github.com/fatih/vim-go/commit/d1c36cc4173093d0be78fd826978a024febe6233 Signed-off-by: Matthew Hughes <matthewhughes934@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-16runtime(indent-test): MS-Windows: Add Makefile for running indent testsRestorerZ
A few more unrelated changes: - fix Vim script style of indent test - Change comments to complete sentences in Filelist closes: #14198
2024-03-16runtime(doc): make :h tag-! more consistent (#14208)zeertzjq
- Use "on" and "off" for 'winfixbuf' option values. - Retab the table. Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-15runtime(vim): Update base-syntax, revert last change to vimUserFunc (#14202)dkearns
Fix highlighting of ":echo (expr)" (broken in commit 61887b3) by re-enabling the original fix for #9987. Addresses https://github.com/vim/vim/pull/14199#issuecomment-1999732062. This will be fixed more generally when there is context-sensitive matching for commands and functions. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-15runtime(vim): Update base-syntax, improve :echo and :execute highlighting ↵dkearns
(#14199) Improve :echo and :execute highlighting. - Add better line-continuation support for both commands. - Improve the :execute command's expression argument matching. - Remove the fix for issue #9987 as this is now handled by correctly matching the parens in :echo (...) as operator parens. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-14patch 9.1.0181: no overflow check for string formattingv9.1.0181Christ van Willegen
Problem: no overflow check for string formatting Solution: Check message formatting function for overflow. (Chris van Willegen) closes: #13799 Signed-off-by: Christ van Willegen <cvwillegen@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-14runtime(mswin): still another clipboard_working testChristian Brabandt
Commit 760f664213dea9a300454992ba1589f4601d622f missed to revert back another test for `if has('clipboard_working')` So change the remaining check around the inoremap <c-v> mappings. fixes #14195 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-13patch 9.1.0178: E1513 might be confusingv9.1.0178Christian Brabandt
Problem: E1513 might be confusing (Christoph Thoma) Solution: reword error message, fix test to not depend on the actual message fixes: #14189 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-13patch 9.1.0175: wrong window positions with 'winfix{width,height}'v9.1.0175Sean Dewar
Problem: winframe functions incorrectly recompute window positions if the altframe wasn't adjacent to the closed frame, which is possible if adjacent windows had 'winfix{width,height}' set. Solution: recompute for windows within the parent of the altframe and closed frame. Skip this (as before) if the altframe was top/left, but only if adjacent to the closed frame, as positions won't change in that case. Also correct the return value documentation for win_screenpos. (Sean Dewar) The issue revealed itself after removing the win_comp_pos call below winframe_restore in win_splitmove. Similarly, wrong positions could result from windows closed in other tabpages, as win_free_mem uses winframe_remove (at least until it is entered later, where enter_tabpage calls win_comp_pos). NOTE: As win_comp_pos handles only curtab, it's possible via other means for positions in non-current tabpages to be wrong (e.g: after changing 'laststatus', 'showtabline', etc.). Given enter_tabpage recomputes it, maybe it's intentional as an optimization? Should probably be documented in win_screenpos then, but I won't address that here. closes: #14191 Signed-off-by: Sean Dewar <6256228+seandewar@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-13runtime(mswin): revert back the check for clipboard_working supportChristian Brabandt
Commit d9ebd46bd090c598adc82e6 changed the condition to check if the clipboard is available from: ``` has('clipboard') ``` to ``` has('clipboard_working') ``` Assuming that is the more accurate test because even when clipboard support is enabled at compile time it may not be actually working (e.g. if no X11 environment is available, or when working on a remote server). However it seems that condition does not evaluate to true, when the GUI has not been started up yet (and there was no X11 Connection yet possible). So let's just revert back the check to `has('clipboard')`, since that has been proven to be working well enough. related: #13809 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-12runtime(doc): add reference to matchbufline() at :h search()Christian Brabandt
related: #14173 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-12patch 9.1.0170: Re-allow curwin == prevwin, but document it insteadv9.1.0170Sean Dewar
Problem: more places exist where curwin == prevwin, and it may even be expected in some cases. Solution: revert v9.1.0001, but document that it's possible instead. (Sean Dewar) I've had a change of heart for the following reasons: - A quick 'n dirty [GitHub code search](https://github.com/search?q=%2F%28winnr%5C%28%5C%29%5Cs*%3D%3D%5Cs*winnr%5C%28%5B%27%22%5D%23%5B%27%22%5D%5C%29%7Cwinnr%5C%28%5B%27%22%5D%23%5B%27%22%5D%5C%29%5Cs*%3D%3D%5Cs*winnr%5C%28%5C%29%29%2F&type=code) reveals some cases where it's expected in the wild. Particularly, it made me aware `winnr() == winnr('#')` is possible when curwin is changed temporarily during the evaluation of a &statusline expression item (`%{...}`), and is used to show something different on the statusline belonging to the previous window; that behaviour wasn't changed in v9.1.0001, but it means curwin == prevwin makes sense in some cases. - The definition and call sites of back_to_prevwin imply some expectation that prevwin == wp (== curwin) is possible, as it's used to skip entering the prevwin in that case. - Prior to v9.1.0001, `:wincmd p` would not beep in the case that was patched in v9.1.0001, but now does. That resulted in #14047 being opened, as it affected the CtrlP plugin. I find it odd that `:wincmd p` had cases where it wouldn't beep despite doing nothing, but it may be preferable to keep things that way (or instead also beep if curwin == prevwin, if that's preferred). - After more digging, I found cases in win_free_mem, enter_tabpage, aucmd_restbuf and qf_open_new_cwindow where curwin == prevwin is possible (many of them from autocommands). Others probably exist too, especially in places where curwin is changed temporarily. fixes: #14047 closes: #14186 Signed-off-by: Sean Dewar <6256228+seandewar@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-11runtime(vim): Update base-syntax, improve number matching (#14175)dkearns
- Limit blob literals to an even number of hexadecimal digits and correctly located dots. - Match octal numbers. The current version unsuccessfully attempts to match a leading '-' as part of the float literal. It's actually parsed as part of the literal for all numbers but the syntax file hasn't matched it like that for a long time and highlights negative numbers as UNARY-MINUS NUMBER. This will be fixed when better expression matching is implemented. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-11patch 9.1.0167: Changing buffer in another window causes it to show matchparenv9.1.0167zeertzjq
Problem: Changing buffer in another window using win_execute() causes it to show matchparen (after 9.0.0969). Solution: Delay highlighting with SafeState in BufWinEnter. (zeertzjq) closes: #14177 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>