| Commit message (Collapse) | Author | Age |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
default highlight groups
- Match Conceal, ComplMatchIns, MsgArea, Terminal, and User[1-9]
highlight groups.
- Generate the vimGroup syntax group from runtime/syncolor.vim.
- Match :SynColor and :SynLink as special user commands.
fixes vim/vim#17467
closes: vim/vim#17556
https://github.com/vim/vim/commit/c233c2e6a54778e034d62473e48421f25b2f5069
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
command modifiers
Generate Ex command modifiers from the modifier table in src/ex_docmd.c
closes: vim/vim#17564
https://github.com/vim/vim/commit/a9b5e4af43ef1f03f20ebcf980f4dd555a12694d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
| |
closes: vim/vim#17601
https://github.com/vim/vim/commit/ca793e60dbcf00a8d5658b0120965edb4b0f3fab
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
defaults (#34719)
Set minlines and maxlines to 100 and 200 respectively. Set these after
the script interface syntax files have been loaded to ensure the values
set in those are overridden.
fixes vim/vim#17580
closes: vim/vim#17614
https://github.com/vim/vim/commit/a5b744ef9366a4b694ce7f31783f3be266f5e3cf
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
alias (#34648)
The unamed register may be referenced as both @" and @@.
Remove the unused vimPlainRegister syntax group.
fixes: vim/vim#17603.
closes: vim/vim#17605
https://github.com/vim/vim/commit/037c32e4288fd37a8d87e73bb586de6280aa5e67
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
:echo and :execute (#34623)
Don't match the OR operator in expressions as a trailing bar.
closes: vim/vim#17533
https://github.com/vim/vim/commit/a9313716942dca456943f2df1bd4e8ecd32f85e5
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Remove unmatchable :normal {mark,register} matches. The arg to :normal
is now handled separately and contained marks and registers are no
longer matched.
closes: vim/vim#17571
https://github.com/vim/vim/commit/dcff4973731f3016a66adaa6edd869221913f178
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
expression comment handling
The required space in Vim9 continuation comments (#\ comment) was
accidentally removed in commit 6acca4b as trailing whitespace.
closes: vim/vim#17573
https://github.com/vim/vim/commit/99b9847bd8c9146b2ccc3c1403752755650ee4c6
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
(#34570)
There is no pattern after the user event name. The user event name is
the pattern.
closes: vim/vim#17568
https://github.com/vim/vim/commit/8311e7d6b4cf92cb90ee6abace271834e9af66f2
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
definition matching (#34463)
- Fix highlighting of function names including /fu\%[nction]/ (E.g.,
s:func(), foo.fu(), fu.func())
- Match :delfunction argument.
Reported by Aliaksei Budavei.
closes: vim/vim#17428
https://github.com/vim/vim/commit/51289207f81772592a5a34f1576f2aeb7d5530b7
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
(#34431)
Limit heredoc matches to assignment statements. Matching these at the
top level is very slow.
closes: vim/vim#17473
https://github.com/vim/vim/commit/274efcc7e697cebdfc5fce911fe09e8618e11264
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: vimHLGroup is not highlighted in "hi def link"
and "hi clear" commands
Solution: highlight vimHLGroup similarly to vimGroup
(Eisuke Kawashima)
closes: vim/vim#17450
https://github.com/vim/vim/commit/834bb85172e2fe541dfd3064866a91840280562a
Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
| |
generator
related: vim/vim#17450
https://github.com/vim/vim/commit/6acca4bc59471c38edf9d5303bd20905a1d4e4f2
Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
start pattern
The opening curly brace must be followed by whitespace, comment or
trailing bar.
closes: vim/vim#17454
https://github.com/vim/vim/commit/1cccdebc0f20281daabce3bef0a5cec3a04ffd25
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Contain :profdel arguments.
- Fix string highlighting immediately after lambda -> operators.
Reported by Aliaksei Budavei.
closes: vim/vim#17427
https://github.com/vim/vim/commit/3993cd619a8148c4942d7b9d418af73909403a87
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
highlighting (#34265)
Match full :profile and :profdel commands.
closes: vim/vim#17420
https://github.com/vim/vim/commit/0aaf6f8bbb3dbb4404cd9e8cdbc3bef7870a6d7b
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
:substitute highlighting
- Match full :mark and :k commands.
- Match 2 and 3 letter :s repeat commands.
- Match :s [count] argument.
closes: vim/vim#17408
https://github.com/vim/vim/commit/086b3b5b796368bca767e43ba22584391357a10a
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
highlighting
- Match "autoload" as a keyword in :import commands.
- Match an expression argument for the filename.
closes: vim/vim#15375
https://github.com/vim/vim/commit/7b5550fac7d37f35285c78a8e74674817a7cfc99
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
highlighting (#34240)
- Match comments and trailing bar after :set without args.
- Match the <...> form for key code options.
- Remove orphaned vim_ex_python[3x]* dump files (Aliaksei Budavei).
closes: vim/vim#17397
https://github.com/vim/vim/commit/570e71a2772d860af14a1b58e3fb1cdcbc7bf796
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
luaParenError error (#34130)
We shouldn't assume that the luaParenError syntax group is present in
the, possibly custom, included file or that it hasn't already been
removed. However, issue vim/vim#11277 has been fixed so it no longer needs to
be cleared.
Fixes comment https://github.com/vim/vim/pull/15375#issuecomment-2899791944
related: vim/vim#15375
closes: vim/vim#17357
https://github.com/vim/vim/commit/f4b2fce71c3b5a4f1cada0e852393efbd493e331
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
script-interface command highlighting
- Normalise interface heredoc highlighting with that used for
:let-heredocs.
- Remove interface feature testing. The Lua and Python interface
command scripts are now highlighted by default. Loading all syntax
files incurs an undesirable load-time burden so highlighting of the
less popular MzScheme, Perl, Ruby and Tcl interfaces is disabled by
default. g:vimsyn_embed can still be used to customise the supported
interfaces.
- Always highlight interface ex-commands as valid commands, even when
the corresponding command-script highlighting is disabled.
- Highlight simple command-script statements as well as heredocs.
- Remove error highlighting of heredoc and statement command-script
regions when an interface is disabled. These are now highlighted as
plain text.
- Allow indented heredoc end tokens when "trim" is specified.
- Match interface heredocs in :def functions.
- Fix runaway vimEmbedError regions. These regions have been removed.
- Use python2 syntax for :python, and :pythonx when 'pyxversion' is
appropriately set.
closes: vim/vim#15522
https://github.com/vim/vim/commit/a577e4289c3177309880592b85f225e487552f17
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
numbers
closes: vim/vim#17250
https://github.com/vim/vim/commit/e957cba081d75bc9054230a26ebeeb0f43d901bd
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
highlighting (#33758)
Match enum values and missing class keywords.
fixes: vim/vim#15970
https://github.com/vim/vim/commit/1c58019a827120de5dace0030af3cd62db0e2282
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
comments at SOL (#33686)
Match Vim9 comments at start-of-line (no leading whitespace) in
dictionaries, lists and parenthesised expressions and argument lists.
Addresses https://github.com/vim/vim/pull/14975#issuecomment-2832643115
Report and fix by Aliaksei Budavei.
closes: vim/vim#17211
https://github.com/vim/vim/commit/b9ffbf57f86e7b78021e2c8899ee0aa06966ddf5
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
"Vim9 script" (#33673)
closes: vim/vim#17213
https://github.com/vim/vim/commit/fbe4a8f5c0fbaa99ffa5b67081c10c85bc88a91a
Cherry-pick Test_source_ignore_shebang() change from patch 9.0.0363.
Co-authored-by: Hirohito Higashi <h.east.727@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
and tail comments (#33659)
Continued strings are currently only matched after operators, in
parenthesised expressions and in function call argument lists.
closes: vim/vim#14975
https://github.com/vim/vim/commit/c29b533cf1a1c31a14b5c7b2b3daa806c2d90ec0
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
highlighting (#33586)
- Match full :autocmd, :doautocmd and :doautoall commands.
- Add filename pattern (wildcard) highlighting.
https://github.com/vim/vim/commit/fa3b1043c6ac38df5e58f7444f478e1ddd4000a6
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
:make, :sort and :filter commands
closes: vim/vim#17082
https://github.com/vim/vim/commit/9b171bdfd6b4c92a43c9690001fb2c8e09cf6a0c
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
highlighting
- Match multiline :command definitions.
- Match custom completion funcref var names.
fixes: vim/vim#17001
closes: vim/vim#17067
https://github.com/vim/vim/commit/520a2c7852e1f8798fa1cfbe7a7579982145daa1
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
| |
closes: vim/vim#17057
https://github.com/vim/vim/commit/2f5a8c0b5b00690f554a7234d020a47bd96520a0
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handling
Improve backslash handling in :set option values. There is no special
handling for options supporting Windows path separators yet.
See :help option-backslash.
Remove the vimSetString syntax group. Option string values cannot be
specified with a quoted string, this is a command terminating tail
comment.
fixes: vim/vim#16913
closes: vim/vim#17034
https://github.com/vim/vim/commit/2a6be835122d906c6ec10682c2a771b25c87c611
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
Tuples were introduced in commit 9cb865e. See PR vim/vim#16776.
fixes: vim/vim#16965
closes: vim/vim#16935
https://github.com/vim/vim/commit/722fbd15549f07fc67b057995e77e2271d639fea
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
constructors
Support for protected constructors was added in commit 7e89800.
closes: 16618
https://github.com/vim/vim/commit/adb703e1b98b71f2908ecc7b7d4180f586caafb8
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
types
fixes vim/vim#14442.
closes: vim/vim#16914
https://github.com/vim/vim/commit/dd3f1c0dda276f340d85f56ccf899b19e3e8512d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
highlighting
- Highlight missing :syntax subcommands.
- Don't highlight user specified syntax group names.
closes: vim/vim#16847
https://github.com/vim/vim/commit/0fab89117fe409759e541087a4ef2ba77c9b23e5
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
match valid predefined variables
- Only match valid predefined and option variables.
- Match scope dictionaries.
- Highlight scope prefixed variables as a scope dictionary accessor. The
vimVarScope syntax group can be linked to vimVar to disable this.
- Include support for Neovim-only predefined and option variables.
Temporary collateral damage - scope dictionaries match instead of keys
in dictionary literals.
closes: vim/vim#16727
https://github.com/vim/vim/commit/3dca512939991004e434b66635b4b7b626a45afe
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Diff mode's inline highlighting is lackluster. It only
performs a line-by-line comparison, and calculates a single
shortest range within a line that could encompass all the
changes. In lines with multiple changes, or those that span
multiple lines, this approach tends to end up highlighting
much more than necessary.
Solution: Implement new inline highlighting modes by doing per-character
or per-word diff within the diff block, and highlight only the
relevant parts, add "inline:simple" to the defaults (which is
the old behaviour)
This change introduces a new diffopt option "inline:<type>". Setting to
"none" will disable all inline highlighting, "simple" (the default) will
use the old behavior, "char" / "word" will perform a character/word-wise
diff of the texts within each diff block and only highlight the
differences.
The new char/word inline diff only use the internal xdiff, and will
respect diff options such as algorithm choice, icase, and misc iwhite
options. indent-heuristics is always on to perform better sliding.
For character highlight, a post-process of the diff results is first
applied before we show the highlight. This is because a naive diff will
create a result with a lot of small diff chunks and gaps, due to the
repetitive nature of individual characters. The post-process is a
heuristic-based refinement that attempts to merge adjacent diff blocks
if they are separated by a short gap (1-3 characters), and can be
further tuned in the future for better results. This process results in
more characters than necessary being highlighted but overall less visual
noise.
For word highlight, always use first buffer's iskeyword definition.
Otherwise if each buffer has different iskeyword settings we would not
be able to group words properly.
The char/word diffing is always per-diff block, not per line, meaning
that changes that span multiple lines will show up correctly.
Added/removed newlines are not shown by default, but if the user has
'list' set (with "eol" listchar defined), the eol character will be be
highlighted correctly for the specific newline characters.
Also, add a new "DiffTextAdd" highlight group linked to "DiffText" by
default. It allows color schemes to use different colors for texts that
have been added within a line versus modified.
This doesn't interact with linematch perfectly currently. The linematch
feature splits up diff blocks into multiple smaller blocks for better
visual matching, which makes inline highlight less useful especially for
multi-line change (e.g. a line is broken into two lines). This could be
addressed in the future.
As a side change, this also removes the bounds checking introduced to
diff_read() as they were added to mask existing logic bugs that were
properly fixed in vim/vim#16768.
closes: vim/vim#16881
https://github.com/vim/vim/commit/9943d4790e42721a6777da9e12637aa595ba4965
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Allow trailing backslashes in option values.
- Match :map-special modifier.
- Match :map-arguments case-sensitively.
- Remove <*Leader> from map modifier list and allow in RHS of a mapping.
closes: vim/vim#16822
https://github.com/vim/vim/commit/6bdfeb099a4d814f2686af427360da13578906eb
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
calls after "|" (#32670)
Match Vim9 function calls after ex-bar. These are also currently
matched but invalid syntax for legacy script.
fixes: vim/vim#16721
closes: vim/vim#16747
https://github.com/vim/vim/commit/60bd140256be4f567c28c60eb84be72c19a164bd
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
| |
:SynMenu commands (#32605)
closes: vim/vim#16713
https://github.com/vim/vim/commit/025dc48e88790133ef0da583b2ce5b9c2232ea9e
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#32487)
Contain the vimNotation syntax group, matching this at top level is
unnecessary and very slow.
The removed vimString and vimNumber definitions are broken and/or never
match. They have long been replaced by newer definitions.
closes: vim/vim#16645
https://github.com/vim/vim/commit/68ba6c2c6c165796225f321597341a464fd72b63
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
| |
continuation comments to EOL (#32435)
closes: vim/vim#16630
https://github.com/vim/vim/commit/4f010c90bdcb56a9c72cfee4d6fe3130b88616f8
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
null literals in parens
- Match Vim9 boolean and null literals in parenthesised expressions and
function argument lists.
- Match read-only registers in expressions.
closes: vim/vim#16622
https://github.com/vim/vim/commit/a9c06429ac2a5366ec177621f2275b166605f681
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Match variables after operators, including line continuations.
- Match option variables without leading whitespace.
- Explicitly match expression subscripts.
- Match Vim9 variables in LHS of assignments and method calls.
- Match option variables (&option) with a dedicated syntax group like
environment variables.
- Match list literals, fixes: vim/vim#5830
- Match :{un}lockvar arguments.
- Match registers and environment variables in :let unpack lists.
- Match lambda expressions
- Match Vim9 scope blocks
- Match variables in :for subject
- Highlight user variables with Normal
- Improve this/super keyword matching, fixes: vim/vim#15970
closes: vim/vim#16476
https://github.com/vim/vim/commit/1aa287e0480ff9e6c8d7029b0665b565b7cd6e59
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
count prefix
Match :0debuggreedy as a special case until better range/count support
is implemented.
closes: vim/vim#16572
https://github.com/vim/vim/commit/4a530a632bb220b9aec827a12ab211a563c5583d
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
operators (#32132)
fixes: vim/vim#14423
fixes: vim/vim#16227
closes: vim/vim#16484
https://github.com/vim/vim/commit/c273f1ac770e86767206c8193bab659b25d3b41b
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
matching (#32100)
- Match is? and isnot? operators.
- Limit other comparison operators to one match modifier rather than
two.
closes: vim/vim#16482
https://github.com/vim/vim/commit/8dec6c2e6c2b5157334398e2e6ab7daa91999d80
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
|
|
|
|