Compare commits

..

27 Commits

Author SHA1 Message Date
zeertzjq
eb33c2eb28 patch 9.1.1920: tests: not enough testing for wildtrigger() pum redrawing
Problem:  tests: not enough testing for wildtrigger() pum redrawing.
Solution: Also test redrawing when leaving cmdline mode (zeertzjq).

closes: #18773

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-20 19:52:18 +00:00
Philip H.
55c65c3e40 CI: Switch to macOS 26 runner
closes: #18775

Signed-off-by: Philip H. <47042125+pheiduck@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-20 19:50:00 +00:00
Harry
7fe4b8c1bd runtime(c): Update signal constants in syntax script
closes: #18763

Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Harry <166658338+harrystevens4@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-18 20:50:39 +00:00
Hirohito Higashi
ed4af756c2 patch 9.1.1919: tabpanel: cannot handle mouse clicks in command line
Problem:  tabpanel: cannot handle mouse clicks in command line
          (char101, after v9.1.1898)
Solution: Update the condition that checks if the mouse pointer is on
          the command line (Hirohito Higashi)

closes: #18771

Co-authored-by: Charles <char101@ui.ac.id>
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-18 20:10:14 +00:00
Miguel Barro
040a47a470 runtime(netrw): Use proper UNC notation for temp files
closes: #18764

Signed-off-by: Guybrush <miguel.barro@live.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-18 20:06:06 +00:00
Konfekt
c2cc63ec7d runtime(compiler): expand errorformats in maven compiler
matches malformed POM error messages and tries to catch other tools
as well.

closes: #18768

Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-18 19:49:01 +00:00
Doug Kearns
d284277be9 runtime(doc): Remove :runtime completion (#11447) todo item
This was fixed in commit a6759381a5.

closes: #18769

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-18 19:44:16 +00:00
Girish Palya
6437997d83 patch 9.1.1918: completion: crash with fuzzy completion
Problem:  completion: crash with fuzzy completion
          (Christian Brabandt)
Solution: When completion candidates are gathered from a different
          window, and when completing `<c-p>`, linked list should be
          sorted only after all items are collected (Girish Palya).

fixes: #18752
closes: #18756

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-16 18:30:42 +00:00
Antonio Giovanni Colombo
4b4a893614 translation(it): Update Italian translation
Signed-off-by: Antonio Giovanni Colombo <azc100@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-16 17:31:43 +00:00
Yegappan Lakshmanan
a650485ed5 patch 9.1.1917: Vim9: incorrect type inference with mkdir()
Problem:  Vim9: incorrect type inference with mkdir()
          (dezza)
Solution: Before compiling a RHS expression in an assignment, save the
          new local variable contents (Yegappan Lakshmanan)

fixes: #18751
closes: #18751

Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 17:41:28 +00:00
Christian Brabandt
61b73b89a3 patch 9.1.1916: WinEnter autocommand confuses Vim when closing tabpage
Problem:  WinEnter autocommand may confuse Vim when closing tabpage
          (hokorobi)
Solution: Verify that curwin did not change in close_others()

fixes: #18722
closes: #18733

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 17:32:50 +00:00
Konfekt
fb8ebf1ee0 runtime(compiler): Remove version check in rustc compiler
closes: #18347

Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 17:18:41 +00:00
Konfekt
d0dd5614db runtime(compiler): add biome linter
closes: #18685

Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 10:39:57 +00:00
Doug Kearns
f46616f0c4 runtime(vim): Update base syntax and generator, match :cd commands
Match :cd commands explicitly.

fixes: #17964
closes: #18736

Reported by Maxim Kim.

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 10:17:17 +00:00
Doug Kearns
de7049ede1 patch 9.1.1915: :breaklist accepts unprocessed arguments.
Problem:  :breaklist accepts unprocessed arguments.
Solution: Remove EX_EXTRA flag from the Ex command definition.
          (Doug Kearns)

The command should emit an "E488: Trailing characters" error rather than
silently accept arguments.

closes: #18746

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-15 10:13:25 +00:00
Andrey Starodubtsev
d5821638e2 runtime(new-tutor): escape tutor filename
If Vim is installed into the Windows "Program Files" directory the tutor
path name contains spaces and must therefore be quoted before passing to
:drop.

closes: #18742

Signed-off-by: Andrey Starodubtsev <andrey.starodubtsev@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-13 21:49:20 +00:00
Christian Brabandt
384685fade patch 9.1.1914: runtime(netrw): wipes unnamed buffers
Problem:  runtime(netrw): LocalBrowseCheck() wipes unnamed buffers when
          g:netrw_fastbrowse=0 (Carlos Falgueras García)
Solution: Check that bufname() is not empty

fixes: #18740
closes: #18741

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-13 21:11:51 +00:00
Christian Brabandt
b8119920eb patch 9.1.1913: Error message with :unlet! and non-existing dictionary item
Problem:  Error message with :unlet! and non-existing dictionary item
          (Coacher)
Solution: Set GLV_QUIET when using unlet with bang attribute

fixes: #18516
closes: #18734

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-13 21:06:43 +00:00
Doug Kearns
eb732ed26d runtime(doc): Wrap overlength lines in uganda.txt
Wrap overlength lines and normalise URL indentation.

closes: #18737

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-13 21:01:42 +00:00
Doug Kearns
8644c3b7e6 runtime(help): Update syntax, match tables at :help :digraph-table
Match the digraph tables to avoid false positive matches for helpSpecial
etc.  No syntax groups should match in these tables.

closes: #18738

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-13 20:59:44 +00:00
Christian Brabandt
8cb4505ec6 patch 9.1.1912: tests: test_plugin_comment fails
Problem:  tests: test_plugin_comment fails, because it depends on nroff
          filetype for .mom file (after v9.1.1909)
Solution: Explicitly set filetype to nroff

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 21:34:52 +00:00
Christian Brabandt
c44e5ae529 patch 9.1.1911: build failure on Solaris with gcc 5
Problem:  build failure on Solaris Sparc with gcc 5
          (idgn23, after v9.1.1736)
Solution: Correctly initialize the key_name variable.

fixes: #18693

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 20:04:18 +00:00
Aliaksei Budavei
d667946928 patch 9.1.1910: tests: test failures in Test_term_gettitle() in CI
Problem:  tests: test failures in Test_term_gettitle() in CI
Solution: CI: Allow for title buffering in Test_term_gettitle()
          (Aliaksei Budavei)

closes: #18693

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 19:49:00 +00:00
Callum Andrew
23e12c0b7e patch 9.1.1909: filetype: .mom files recognized as nroff files
Problem:  filetype: .mom files recognized as nroff files
Solution: Detect *.mom files as groff filetype instead
          (Callum Andrew)

Reference:
- mom macros are written specifically for groff:
  https://www.schaffter.ca/mom/

closes: #18718

Signed-off-by: Callum Andrew <dev@candrew.net>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 19:45:41 +00:00
Vadim Yanitskiy
e9d296e52a runtime(erlang): recognize -if/-elif as erlangPreCondit in syntax script
The -if(Condition)/-elif(Condition) are compiler macros that evaluate
the following lines only if Condition evaluates to true.  This patch
enables syntax highlighting for these macros.

https://www.erlang.org/doc/system/macros.html#conditional-compilation

closes: #18729

Signed-off-by: Vadim Yanitskiy <fixeria@osmocom.org>
Signed-off-by: Csaba Hoch <csaba.hoch@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 19:36:46 +00:00
Doug Kearns
9ab6a22c90 runtime(doc): Improve :help :ls description formatting
Quote the special buffer names for consistency (see :help bufname()) and
so that they're not incorrectly highlighted as optional command
arguments.

closes: #18730

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 19:33:01 +00:00
Doug Kearns
4f19d2768a runtime(vim): Update base syntax, match :prompt command args
closes: #18732

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-11-12 19:17:11 +00:00
58 changed files with 862 additions and 111 deletions

1
.github/MAINTAINERS vendored
View File

@@ -45,6 +45,7 @@ runtime/colors/torte.vim @habamax @romainl @neutaaaaan
runtime/colors/wildcharm.vim @habamax @romainl @neutaaaaan
runtime/colors/zaibatsu.vim @habamax @romainl @neutaaaaan
runtime/colors/zellner.vim @habamax @romainl @neutaaaaan
runtime/compiler/biome.vim @Konfekt
runtime/compiler/checkstyle.vim @dkearns
runtime/compiler/cm3.vim @dkearns
runtime/compiler/cucumber.vim @tpope

View File

@@ -406,7 +406,7 @@ jobs:
fail-fast: false
matrix:
features: [tiny, normal, huge]
runner: [macos-15-intel, macos-15]
runner: [macos-15-intel, macos-26]
steps:
- name: Checkout repository from github

View File

@@ -211,7 +211,7 @@ function! tutor#TutorCmd(tutor_name)
endif
call tutor#SetupVim()
exe "drop ".l:to_open
exe "drop ".fnameescape(l:to_open)
call tutor#EnableInteractive(v:true)
endfunction

View File

@@ -0,0 +1,23 @@
" Vim compiler file
" Compiler: Biome (= linter for JavaScript, TypeScript, JSX, TSX, JSON,
" JSONC, HTML, Vue, Svelte, Astro, CSS, GraphQL and GritQL files)
" Maintainer: @Konfekt
" Last Change: 2025 Nov 12
if exists("current_compiler") | finish | endif
let current_compiler = "biome"
let s:cpo_save = &cpo
set cpo&vim
exe 'CompilerSet makeprg=' .. escape('biome check --linter-enabled=true --formatter-enabled=false --assist-enabled=false --reporter=github '
\ .. get(b:, 'biome_makeprg_params', get(g:, 'biome_makeprg_params', '')), ' \|"')
CompilerSet errorformat=::%trror%.%#file=%f\\,line=%l\\,%.%#col=%c\\,%.%#::%m
CompilerSet errorformat+=::%tarning%.%#file=%f\\,line=%l\\,%.%#col=%c\\,%.%#::%m
CompilerSet errorformat+=::%totice%.%#file=%f\\,line=%l\\,%.%#col=%c\\,%.%#::%m
CompilerSet errorformat+=%-G\\s%#
CompilerSet errorformat+=%-Gcheck\ %.%#
CompilerSet errorformat+=%-G%.%#Some\ errors\ were\ emitted\ while\ running\ checks%.
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -7,24 +7,54 @@
" Original Source: https://github.com/mikelue/vim-maven-plugin/blob/master/compiler/maven.vim
" (distributed under same terms as LICENSE per
" https://github.com/mikelue/vim-maven-plugin/issues/13)
" Last Change: 2024 Nov 12
" Last Change: 2025 Nov 18
if exists("current_compiler")
finish
endif
let current_compiler = "maven"
" CompilerSet makeprg=mvn
execute $'CompilerSet makeprg=mvn\ --batch-mode\ {escape(get(b:, 'maven_makeprg_params', get(g:, 'maven_makeprg_params', '')), ' \|"')}'
" Error message for POM
CompilerSet errorformat=[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#,
CompilerSet errorformat+=[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#
" Handle Non-parseable POM with '@<line>:<col>' embedded in the 'position:' clause.
CompilerSet errorformat+=[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+%.%#@%l:%c%.%#,
CompilerSet errorformat+=[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+%.%#@%l:%c%.%#,
" Java related build messages
" JavaC messages with paths relative to module root:
" With column:
CompilerSet errorformat+=[%tARNING]\ %f:[%l\\,%c]\ %m
CompilerSet errorformat+=[%tRROR]\ %f:[%l\\,%c]\ %m
CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:[%l\\,%c]\ %m,%Z
CompilerSet errorformat+=%A%f:[%l\\,%c]\ %m,%Z
" Without column:
CompilerSet errorformat+=[%tARNING]\ %f:[%l]\ %m
CompilerSet errorformat+=[%tRROR]\ %f:[%l]\ %m
CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:[%l]\ %m,%Z
CompilerSet errorformat+=%A%f:[%l]\ %m,%Z
" Plug-in messages with absolute paths:
" with column:
CompilerSet errorformat+=[%tARNING]\ %f:%l:%c:\ %m
CompilerSet errorformat+=[%tRROR]\ %f:%l:%c:\ %m
CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:%l:%c:\ %m,%Z
CompilerSet errorformat+=%A%f:%l:%c:\ %m,%Z
" without column:
CompilerSet errorformat+=[%tARNING]\ %f:%l:\ %m
CompilerSet errorformat+=[%tRROR]\ %f:%l:\ %m
CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:%l:\ %m,%Z
CompilerSet errorformat+=%A%f:%l:\ %m,%Z
" SpotBugs
CompilerSet errorformat+=[%tRROR]\ %m%\\s%\\+\[%*[^]]]%\\s%\\+In\ %f\ %.%#,
CompilerSet errorformat+=[%tARNING]\ %m%\\s%\\+\[%*[^]]]%\\s%\\+In\ %f\ %.%#,
CompilerSet errorformat+=[%tRROR]\ %.%#\ [aA]t\ %f:\[lines\ %l-%\\d\\+]\ %.%#,
CompilerSet errorformat+=[%tARNING]\ %.%#\ [aA]t\ %f:\[lines\ %l-%\\d\\+]\ %.%#,
CompilerSet errorformat+=[%tRROR]\ %.%#\ [aA]t\ %f:\[line\ %l]\ %.%#,
CompilerSet errorformat+=[%tARNING]\ %.%#\ [aA]t\ %f:\[line\ %l]\ %.%#,
" jUnit related build messages
CompilerSet errorformat+=%+E\ \ %#test%m,%Z
@@ -36,5 +66,7 @@ CompilerSet errorformat+=%+Z%\\s%#at\ %f(%\\f%\\+:%l),
CompilerSet errorformat+=%+C%.%#
" Misc message removal
" CompilerSet errorformat+=%-GPicked\ up\ _JAVA_OPTIONS\ %.%#,
CompilerSet errorformat+=%-GAudit\ done.,
CompilerSet errorformat+=%-G[INFO]\ %.%#,
CompilerSet errorformat+=%-G[debug]\ %.%#

View File

@@ -2,6 +2,7 @@
" Compiler: Rust Compiler
" Maintainer: Chris Morgan <me@chrismorgan.info>
" Latest Revision: 2023-09-11
" 2025 Nov 15 by Vim project: remove test for Vim patch 7.4.191
" For bugs, patches and license go to https://github.com/rust-lang/rust.vim
if exists("current_compiler")
@@ -17,11 +18,7 @@ set cpo&vim
if get(g:, 'rustc_makeprg_no_percent', 0)
CompilerSet makeprg=rustc
else
if has('patch-7.4.191')
CompilerSet makeprg=rustc\ \%:S
else
CompilerSet makeprg=rustc\ \"%\"
endif
CompilerSet makeprg=rustc\ \%:S
endif
" New errorformat (after nightly 2016/08/10)

View File

@@ -1281,6 +1281,17 @@ For writing a compiler plugin, see |write-compiler-plugin|.
Use the |compiler-make| plugin to undo the effect of a compiler plugin.
BIOME *compiler-biome* *quickfix-biome*
Biome check lints JavaScript, TypeScript, JSX, TSX, JSON, JSONC, HTML, Vue,
Svelte, Astro, CSS, GraphQL and GritQL files.
Commonly used compiler options can be added to 'makeprg' by setting the
b/g:biome_makeprg_params variable. For example (global default is ""): >
let b:biome_makeprg_params = "--diagnostic-level=error --staged"
CPPCHECK *quickfix-cppcheck* *compiler-cppcheck*
Use g/b:`c_cppcheck_params` to set cppcheck parameters. The global

View File

@@ -6739,6 +6739,7 @@ compile-changes-7 version7.txt /*compile-changes-7*
compile-changes-8 version8.txt /*compile-changes-8*
compile-changes-9 version9.txt /*compile-changes-9*
compile-changes-9.2 version9.txt /*compile-changes-9.2*
compiler-biome quickfix.txt /*compiler-biome*
compiler-compaqada ft_ada.txt /*compiler-compaqada*
compiler-cppcheck quickfix.txt /*compiler-cppcheck*
compiler-decada ft_ada.txt /*compiler-decada*
@@ -9931,6 +9932,7 @@ quake.vim syntax.txt /*quake.vim*
quickfix quickfix.txt /*quickfix*
quickfix-6 version6.txt /*quickfix-6*
quickfix-ID quickfix.txt /*quickfix-ID*
quickfix-biome quickfix.txt /*quickfix-biome*
quickfix-buffer quickfix.txt /*quickfix-buffer*
quickfix-changedtick quickfix.txt /*quickfix-changedtick*
quickfix-context quickfix.txt /*quickfix-context*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 9.1. Last change: 2025 Nov 09
*todo.txt* For Vim version 9.1. Last change: 2025 Nov 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -538,9 +538,6 @@ when redirecting to a local variable (function or script) storing the value
won't work. At least give an error. Is there a way to make it work?
#10616
Completion for ":runtime" should show valid values, not what's in the current
directory. (#11447)
Add a "description" property to mappings. #12205
Add an option to start_timer() to return from the input loop with K_IGNORE.

View File

@@ -1,4 +1,4 @@
*uganda.txt* For Vim version 9.1. Last change: 2025 Nov 09
*uganda.txt* For Vim version 9.1. Last change: 2025 Nov 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -65,12 +65,14 @@ II) It is allowed to distribute a modified (or extended) version of Vim,
maintainer will do with your changes and under what license they
will be distributed is negotiable. If there has been no negotiation
then this license, or a later version, also applies to your changes.
The current maintainers are listed here: https://github.com/orgs/vim/people.
If this changes it will be announced in appropriate places (most likely
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
impossible to contact the maintainer, the obligation to send him
your changes ceases. Once the maintainer has confirmed that he has
received your changes they will not have to be sent again.
The current maintainers are listed here:
https://github.com/orgs/vim/people
If this changes it will be announced in appropriate places (most
likely vim.sf.net, www.vim.org and/or comp.editors). When it is
completely impossible to contact the maintainer, the obligation to
send him your changes ceases. Once the maintainer has confirmed
that he has received your changes they will not have to be sent
again.
b) If you have received a modified Vim that was distributed as
mentioned under a) you are allowed to further distribute it
unmodified, as mentioned at I). If you make additional changes the
@@ -225,7 +227,7 @@ Sending money:
Check the Kuwasha web site for the latest information!
Look on their site for information about sponsorship:
https://www.kuwasha.net/
https://www.kuwasha.net/
If you make a donation to Kuwasha you will receive a tax
receipt which can be submitted with your tax return.

View File

@@ -1,4 +1,4 @@
*windows.txt* For Vim version 9.1. Last change: 2025 Nov 10
*windows.txt* For Vim version 9.1. Last change: 2025 Nov 11
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1145,10 +1145,10 @@ list of buffers. |unlisted-buffer|
or "N CTRL-^", where N is the buffer number.
For the file name these special values are used:
[Prompt] |prompt-buffer|
[Popup] buffer of a |popup-window|
[Scratch] 'buftype' is "nofile"
[No Name] no file name specified
"[Prompt]" |prompt-buffer|
"[Popup]" buffer of a |popup-window|
"[Scratch]" 'buftype' is "nofile"
"[No Name]" no file name specified
For a |terminal-window| buffer the status is used.
Indicators (chars in the same column are mutually exclusive):

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: The Vim Project <https://github.com/vim/vim>
" Last Change: 2025 Oct 09
" Last Change: 2025 Nov 11
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
" If the filetype can be detected from extension or file name(the final path component),
@@ -774,12 +774,13 @@ au BufNewFile,BufRead */neofetch/config.conf setf sh
" Nginx
au BufNewFile,BufRead *.nginx,nginx*.conf,*nginx.conf,*/nginx/*.conf setf nginx
" Nroff/Troff (*.ms and *.t are checked below)
" Nroff/Groff/Troff (*.ms and *.t are checked below)
au BufNewFile,BufRead *.me
\ if expand("<afile>") != "read.me" && expand("<afile>") != "click.me" |
\ setf nroff |
\ endif
au BufNewFile,BufRead *.tr,*.nr,*.roff,*.tmac,*.mom setf nroff
au BufNewFile,BufRead *.tr,*.nr,*.roff,*.tmac setf nroff
au BufNewFile,BufRead *.groff,*.mom setf groff
au BufNewFile,BufRead *.[0-9],*.[013]p,*.[1-8]x,*.3{am,perl,pm,posix,type},*.n call dist#ft#FTnroff()
" Nroff or Objective C++

View File

@@ -13,6 +13,8 @@
" 2025 Oct 26 by Vim Project fix parsing of remote user names #18611
" 2025 Oct 27 by Vim Project align comment after #18611
" 2025 Nov 01 by Vim Project fix NetrwChgPerm #18674
" 2025 Nov 13 by Vim Project don't wipe unnamed buffers #18740
" 2025 Nov 18 by Vim Project use UNC paths when using scp and Windows paths #18764
" Copyright: Copyright (C) 2016 Charles E. Campbell {{{1
" Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright
@@ -1700,10 +1702,10 @@ function netrw#NetRead(mode,...)
else
let useport= ""
endif
" 'C' in 'C:\path\to\file' is handled as hostname on windows.
" Using UNC notation in windows to get a unix like path.
" This is workaround to avoid mis-handle windows local-path:
if g:netrw_scp_cmd =~ '^scp' && has("win32")
let tmpfile_get = substitute(tr(tmpfile, '\', '/'), '^\(\a\):[/\\]\(.*\)$', '/\1/\2', '')
let tmpfile_get = substitute(tr(tmpfile, '\', '/'), '^\(\a\):[/\\]\(.*\)$', '//' .. $COMPUTERNAME .. '/\1$/\2', '')
else
let tmpfile_get = tmpfile
endif
@@ -8315,7 +8317,7 @@ function netrw#LocalBrowseCheck(dirname)
let ibuf = 1
let buflast = bufnr("$")
while ibuf <= buflast
if bufwinnr(ibuf) == -1 && isdirectory(s:NetrwFile(bufname(ibuf)))
if bufwinnr(ibuf) == -1 && !empty(bufname(ibuf)) && isdirectory(s:NetrwFile(bufname(ibuf)))
exe "sil! keepj keepalt ".ibuf."bw!"
endif
let ibuf= ibuf + 1

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: C
" Maintainer: The Vim Project <https://github.com/vim/vim>
" Last Change: 2025 Jan 18
" Last Change: 2025 Nov 18
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
" Quit when a (custom) syntax file was already loaded
@@ -421,8 +421,10 @@ if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
syn keyword cConstant NDEBUG
" POSIX 2001
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG SIGVTALRM SIGXCPU SIGXFSZ
" POSIX Issue 8 (post 2017)
syn keyword cConstant SIGWINCH
" non-POSIX signals
syn keyword cConstant SIGWINCH SIGINFO
syn keyword cConstant SIGINFO SIGIO
" Add POSIX errors as well. List comes from:
" http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
syn keyword cConstant E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF

View File

@@ -3,7 +3,7 @@
" Maintainer: Csaba Hoch <csaba.hoch@gmail.com>
" Contributor: Adam Rutkowski <hq@mtod.org>
" Johannes Christ <jc@jchri.st>
" Last Update: 2025-Jul-06
" Last Update: 2025-Nov-12
" License: Vim license
" URL: https://github.com/vim-erlang/vim-erlang-runtime
@@ -217,7 +217,7 @@ syn match erlangInnerDocAttribute '^\s*-\%(\s\|\n\|%.*\n\)*\%(moduledoc\|doc\)\>
syn match erlangInclude '^\s*-\%(\s\|\n\|%.*\n\)*\%(include\|include_lib\)\>' contains=erlangComment
syn match erlangRecordDef '^\s*-\%(\s\|\n\|%.*\n\)*record\>' contains=erlangComment
syn match erlangDefine '^\s*-\%(\s\|\n\|%.*\n\)*\%(define\|undef\)\>' contains=erlangComment
syn match erlangPreCondit '^\s*-\%(\s\|\n\|%.*\n\)*\%(ifdef\|ifndef\|else\|endif\)\>' contains=erlangComment
syn match erlangPreCondit '^\s*-\%(\s\|\n\|%.*\n\)*\%(ifdef\|ifndef\|else\|if\|elif\|endif\)\>' contains=erlangComment
syn match erlangType '^\s*-\%(\s\|\n\|%.*\n\)*\%(spec\|type\|opaque\|nominal\|callback\)\>' contains=erlangComment
" Keywords

View File

@@ -1,7 +1,7 @@
" Vim syntax file generator
" Language: Vim script
" Maintainer: Hirohito Higashi (h_east)
" Last Change: 2025 Nov 08
" Last Change: 2025 Nov 13
let s:keepcpo= &cpo
set cpo&vim
@@ -288,6 +288,7 @@ function s:get_vim_command_type(cmd_name)
" 6: unmap
" 7: abclear
" 8: modifiers
" 9: cd
" 99: (Exclude registration of "syn keyword")
let ab_prefix = '^[ci]\?'
let menu_prefix = '^\%([acinostvx]\?\|tl\)'
@@ -389,6 +390,8 @@ function s:get_vim_command_type(cmd_name)
popup
profdel
profile
promptfind
promptrepl
public
python
pyfile
@@ -457,6 +460,9 @@ function s:get_vim_command_type(cmd_name)
let ret = 6
elseif index(s:get_cmd_modifiers(), a:cmd_name) != -1
let ret = 8
" :chdir handled specially for command/function distinction
elseif a:cmd_name =~# '^\%([lt]\?cd\|[lt]chdir\)$'
let ret = 9
else
let ret = 0
endif
@@ -924,6 +930,9 @@ function s:update_syntax_vim_file(vim_info)
" vimCommand - modifier
let lnum = s:search_and_check(kword . ' modifier', base_fname, str_info)
let lnum = s:append_syn_vimcmd(lnum, str_info, li, 8)
" vimCommand - cd
let lnum = s:search_and_check(kword . ' cd', base_fname, str_info)
let lnum = s:append_syn_vimcmd(lnum, str_info, li, 9)
update
quit!

View File

@@ -2,7 +2,7 @@
" Language: Vim script
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
" Doug Kearns <dougkearns@gmail.com>
" Last Change: 2025 Nov 11
" Last Change: 2025 Nov 13
" Former Maintainer: Charles E. Campbell
" DO NOT CHANGE DIRECTLY.
@@ -36,7 +36,7 @@ syn cluster vimCommentGroup contains=vimTodo,@Spell
" GEN_SYN_VIM: vimCommand normal, START_STR='syn keyword vimCommand contained', END_STR='nextgroup=vimBang'
" Lower priority :syn-match to allow for :command/function() distinction
syn match vimCommand "\<chd\%[ir]\>" nextgroup=vimBang
" :chdir is handled specially elsewhere
syn match vimCommand "\<co\%[py]\>" nextgroup=vimBang
syn match vimCommand "\<d\%[elete]\>" nextgroup=vimBang
syn match vimCommand "\<j\%[oin]\>" nextgroup=vimBang
@@ -246,7 +246,7 @@ syn match vimNumber '\<0z\%(\x\x\)\+\%(\.\%(\x\x\)\+\)*' skipwhite nextgroup=@vi
syn case match
" All vimCommands are contained by vimIsCommand. {{{2
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAt,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDefer,vimDelcommand,vimDelFunction,vimDoCommand,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimEval,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSyntime,vimSynColor,vimSynLink,vimTerminal,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimWincmd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAt,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCd,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDefer,vimDelcommand,vimDelFunction,vimDoCommand,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimEval,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimPrompt,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSyntime,vimSynColor,vimSynLink,vimTerminal,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimWincmd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vim9CmdList contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimCmdSep ":\+" skipwhite nextgroup=@vimCmdList,vimSubst1
@@ -311,6 +311,20 @@ syn keyword vimBehaveModel contained mswin xterm
" ====
syn match vimCall "\<call\=\>" skipwhite nextgroup=vimVar,@vimFunc
" Cd: {{{2
" ==
" GEN_SYN_VIM: vimCommand cd, START_STR='syn keyword vimCd', END_STR='skipwhite nextgroup=vimCdBang,vimCdArg,vimComment,vim9Comment,vimCmdSep'
syn match vimCd "\<chd\%[ir]\>" skipwhite nextgroup=vimCdBang,vimCdArg,vimComment,vim9Comment,vimCmdSep
syn region vimCdArg contained
\ start=+["#|]\@!\S+
\ end="\ze\s*$"
\ end=+\ze\s*\\\@1<!["#|]+
\ skipwhite nextgroup=vimComment,vim9Comment,vimCmdSep
\ contains=vimSpecfile,@vimWildCard
\ oneline
syn match vimCdBang contained "\a\@1<=!" skipwhite nextgroup=vimCdArg,vimComment,vim9Comment,vimCmdSep
" Debuggreedy {{{2
" ===========
" TODO: special-cased until generalised range/count support is implemented
@@ -825,6 +839,10 @@ syn match vimSpecFile "\s%<"ms=s+1,me=e-1 nextgroup=vimSpecFileMod,vimSubst1
syn match vimSpecFile "#\d\+\|[#%]<\>" nextgroup=vimSpecFileMod,vimSubst1
syn match vimSpecFileMod "\(:[phtre]\)\+" contained
syn match vimSpecFile contained "%[ \t:]"me=e-1 nextgroup=vimSpecFileMod
syn match vimSpecFile contained excludenl "%$" nextgroup=vimSpecFileMod
syn match vimSpecFile contained "%<"me=e-1 nextgroup=vimSpecFileMod
" User-Specified Commands: {{{2
" =======================
syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,@vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
@@ -1591,6 +1609,15 @@ syn keyword vimProfdelArg contained file skipwhite nextgroup=vimProfilePattern
syn keyword vimProfdelArg contained here skipwhite nextgroup=vimCmdSep,@vimComment
syn match vimProfdel "\<profd\%[el]\>" skipwhite nextgroup=vimProfdelArg
" Prompt{find,repl}: {{{2
" =================
syn region vimPromptArg contained
\ start="\S"
\ skip=+\n\s*\%(\\\|["#]\\ \)+
\ end="$"
\ contains=@vimContinue
syn keyword vimPrompt promptf[ind] promptr[epl] skipwhite nextgroup=vimPromptArg
" Redir: {{{2
" =====
syn match vimRedir "\<redir\=\>" skipwhite nextgroup=vimRedirBang,vimRedirFileOperator,vimRedirVariableOperator,vimRedirRegister,vimRedirEnd
@@ -2361,6 +2388,8 @@ if !exists("skip_vim_syntax_inits")
hi def link vimBracket Delimiter
hi def link vimCall vimCommand
hi def link vimCatch vimCommand
hi def link vimCd vimCommand
hi def link vimCdBang vimBang
hi def link vimCmplxRepeat SpecialChar
hi def link vimCommand Statement
hi def link vimCommandModifier vimCommand
@@ -2519,6 +2548,7 @@ if !exists("skip_vim_syntax_inits")
hi def link vimProfileBang vimBang
hi def link vimProfdel vimCommand
hi def link vimProfdelArg vimSpecial
hi def link vimPrompt vimCommand
hi def link vimPython vimCommand
hi def link vimPython3 vimCommand
hi def link vimPythonX vimCommand

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Vim help file
" Maintainer: Doug Kearns <dougkearns@gmail.com>
" Last Change: 2025 Oct 19
" Last Change: 2025 Nov 13
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
" Quit when a (custom) syntax file was already loaded
@@ -62,20 +62,6 @@ if has_key(g:help_example_languages, "vim9")
syn cluster helpExampleHighlight_vim9 add=vim9LegacyHeader_HelpExample
endif
" builtin.txt
syn region helpReturnType
\ start="^\t\tReturn type: "
\ end="^$"
\ contains=@vimType,helpHyperTextJump,helpSpecial
\ transparent
syn match helpSpecial contained "{type}" containedin=vimCompoundType
" various.txt
syn region helpExCommand_Version
\ start="^:ve\[rsion]\t\t"
\ end="\n\ze\n:ve\[rsion] {nr}"
\ contains=helpHyperTextEntry,helpHyperTextJump,helpOption
if has("ebcdic")
syn match helpHyperTextJump "\\\@<!|[^"*|]\+|" contains=helpBar
syn match helpHyperTextEntry "\*[^"*|]\+\*\s"he=e-1 contains=helpStar
@@ -229,6 +215,26 @@ syn match helpDiffAdded "\t[* ]Added\t\+[a-z].*"
syn match helpDiffChanged "\t[* ]Changed\t\+[a-z].*"
syn match helpDiffRemoved "\t[* ]Removed\t\+[a-z].*"
" builtin.txt
syn region helpReturnType
\ start="^\t\tReturn type: "
\ end="^$"
\ contains=@vimType,helpHyperTextJump,helpSpecial
\ transparent
syn match helpSpecial contained "{type}" containedin=vimCompoundType
" digraph.txt
syn region helpDigraphTable
\ start="*digraph-table\%(-mbyte\)\=\*"
\ end="^$"
\ contains=helpHyperTextEntry,helpHeader
" various.txt
syn region helpExCommand_Version
\ start="^:ve\[rsion]\t\t"
\ end="\n\ze\n:ve\[rsion] {nr}"
\ contains=helpHyperTextEntry,helpHyperTextJump,helpOption
" Additionally load a language-specific syntax file "help_ab.vim".
let s:i = match(expand("%"), '\.\a\ax$')
if s:i > 0
@@ -238,7 +244,6 @@ unlet s:i
syn sync minlines=40
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
hi def link helpIgnore Ignore

View File

@@ -0,0 +1,20 @@
> +0&#ffffff0@74
@56|*+0#ffffff16&|d+0#e000002&|i|g|r|a|p|h|-|t|a|b|l|e|*+0#ffffff16&| +0#0000000&@3
|c+0#e000e06&|h|a|r| @1|d|i|g|r|a|p|h| @2|h|e|x| @4|d|e|c| @4|o|f@1|i|c|i|a|l| |n|a|m|e| +0#ffffff16&|~| +0#0000000&@27
|^|@| @5|N|U| @5|0|x|0@1| @5|0| @4|N|U|L@1| |(|N|U|L|)| @32
|^|A| @5|S|H| @5|0|x|0|1| @5|1| @4|S|T|A|R|T| |O|F| |H|E|A|D|I|N|G| |(|S|O|H|)| @20
|^|B| @5|S|X| @5|0|x|0|2| @5|2| @4|S|T|A|R|T| |O|F| |T|E|X|T| |(|S|T|X|)| @23
|^|C| @5|E|X| @5|0|x|0|3| @5|3| @4|E|N|D| |O|F| |T|E|X|T| |(|E|T|X|)| @25
|^|D| @5|E|T| @5|0|x|0|4| @5|4| @4|E|N|D| |O|F| |T|R|A|N|S|M|I|S@1|I|O|N| |(|E|O|T|)| @17
|^|E| @5|E|Q| @5|0|x|0|5| @5|5| @4|E|N|Q|U|I|R|Y| |(|E|N|Q|)| @29
|^|F| @5|A|K| @5|0|x|0|6| @5|6| @4|A|C|K|N|O|W|L|E|D|G|E| |(|A|C|K|)| @25
|^|G| @5|B|L| @5|0|x|0|7| @5|7| @4|B|E|L@1| |(|B|E|L|)| @32
|^|H| @5|B|S| @5|0|x|0|8| @5|8| @4|B|A|C|K|S|P|A|C|E| |(|B|S|)| @28
|^|I| @5|H|T| @5|0|x|0|9| @5|9| @4|C|H|A|R|A|C|T|E|R| |T|A|B|U|L|A|T|I|O|N| |(|H|T|)| @17
|Ñ| @6|N|?| @5|0|x|d|1| @3|2|0|9| @4|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |N| |W|I|T|H| |T|I|L|D|E| @9
@75
|I|f| |y|o|u| |a|r|e| |u|s|i|n|g| |a| ||+0#ffffff16&|m+0#00e0e07&|u|l|t|i|b|y|t|e||+0#ffffff16&| +0#0000000&|'+0#00e0003&|e|n|c|o|d|i|n|g|'|,+0#0000000&| |V|i|m| |p|r|o|v|i|d|e|s| |t|h|i|s| |e|n|h|a|n|c|e|d| |s|e|t| |o
|f| @73
|a|d@1|i|t|i|o|n|a|l| |d|i|g|r|a|p|h|s|:| @54
@75
@57|1|,|0|-|1| @8|T|o|p|

View File

@@ -0,0 +1,20 @@
|Ñ+0&#ffffff0| @6|N|?| @5|0|x|d|1| @3|2|0|9| @4|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |N| |W|I|T|H| |T|I|L|D|E| @9
@75
|I|f| |y|o|u| |a|r|e| |u|s|i|n|g| |a| ||+0#ffffff16&|m+0#00e0e07&|u|l|t|i|b|y|t|e||+0#ffffff16&| +0#0000000&|'+0#00e0003&|e|n|c|o|d|i|n|g|'|,+0#0000000&| |V|i|m| |p|r|o|v|i|d|e|s| |t|h|i|s| |e|n|h|a|n|c|e|d| |s|e|t| |o
|f| @73
|a|d@1|i|t|i|o|n|a|l| |d|i|g|r|a|p|h|s|:| @54
> @74
@56|*+0#ffffff16&|d+0#e000002&|i|g|r|a|p|h|-|t|a|b|l|e|-|m|b|y|t
|e|*+0#ffffff16&| +0#0000000&@72
|c|h|a|r| @1|d|i|g|r|a|p|h| @2|h|e|x| @4|d|e|c| @4|o|f@1|i|c|i|a|l| |n|a|m|e| @29
|Ā| @6|A|-| @5|0|1|0@1| @3|0|2|5|6| @3|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |A| |W|I|T|H| |M|A|C|R|O|N| @8
|ā| @6|a|-| @5|0|1|0|1| @3|0|2|5|7| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |A| |W|I|T|H| |M|A|C|R|O|N| @10
|Ă| @6|A|(| @5|0|1|0|2| @3|0|2|5|8| @3|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |A| |W|I|T|H| |B|R|E|V|E| @9
|ă| @6|a|(| @5|0|1|0|3| @3|0|2|5|9| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |A| |W|I|T|H| |B|R|E|V|E| @11
|Ą| @6|A|;| @5|0|1|0|4| @3|0|2|6|0| @3|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |A| |W|I|T|H| |O|G|O|N|E|K| @8
|ą| @6|a|;| @5|0|1|0|5| @3|0|2|6|1| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |A| |W|I|T|H| |O|G|O|N|E|K| @10
|Ć| @6|C|'| @5|0|1|0|6| @3|0|2|6|2| @3|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |C| |W|I|T|H| |A|C|U|T|E| @9
|ć| @6|c|'| @5|0|1|0|7| @3|0|2|6|3| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |C| |W|I|T|H| |A|C|U|T|E| @11
|Ĉ| @6|C|>| @5|0|1|0|8| @3|0|2|6|4| @3|L|A|T|I|N| |C|A|P|I|T|A|L| |L|E|T@1|E|R| |C| |W|I|T|H| |C|I|R|C|U|M|F|L|E|X| @4
|ĉ| @6|c|>| @5|0|1|0|9| @3|0|2|6|5| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |C| |W|I|T|H| |C|I|R|C|U|M|F|L|E|X| @6
@57|1|8|,|0|-|1| @7|8|6|%|

View File

@@ -0,0 +1,20 @@
|ĉ+0&#ffffff0| @6|c|>| @5|0|1|0|9| @3|0|2|6|5| @3|L|A|T|I|N| |S|M|A|L@1| |L|E|T@1|E|R| |C| |W|I|T|H| |C|I|R|C|U|M|F|L|E|X| @6
@75
@1>v|i|m|:|t|w|=|7|8|:|t|s|=|8|:|n|o|e|t|:|f|t|=|h|e|l|p|:|n|o|r|l|:| @40
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|3|2|,|2| @9|B|o|t|

View File

@@ -3,7 +3,7 @@
|#+0#0000e05&| +0#0000000&|I+0#e000e06&|s@1|u|e|:| +0#0000e05&|#|1|3|0|4|7| +0#0000000&@59
@75
|i+0#af5f00255&|f| +0#0000000&|!+0#af5f00255&|e+0#00e0e07&|x|i|s|t|s|(+0#e000e06&|"+0#e000002&|:|D|i|f@1|O|r|i|g|"|)+0#e000e06&| +0#0000000&@51
@2>c+0#af5f00255&|o|m@1|a|n|d| +0#0000000&|D|i|f@1|O|r|i|g| |v+0#af5f00255&|e|r|t| +0#0000000&|n+0#af5f00255&|e|w| +0#0000000&||| |s+0#af5f00255&|e|t| +0#0000000&|b+0#e000e06&|t|=+0#af5f00255&|n+0#0000000&|o|f|i|l|e| ||| |r+0#af5f00255&| +0#0000000&|++0#af5f00255&@1|e+0#00e0e07&|d|i|t| +0#0000000&|%+0#af5f00255&@1| +0#0000000&||| |0+0#e000002&|d+0#0000000&|_| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&
@2>c+0#af5f00255&|o|m@1|a|n|d| +0#0000000&|D|i|f@1|O|r|i|g| |v+0#af5f00255&|e|r|t| +0#0000000&|n+0#af5f00255&|e|w| +0#0000000&||| |s+0#af5f00255&|e|t| +0#0000000&|b+0#e000e06&|t|=+0#af5f00255&|n+0#0000000&|o|f|i|l|e| ||| |r+0#af5f00255&| +0#0000000&|++0#af5f00255&@1|e+0#00e0e07&|d|i|t| +0#0000000&|%+0#af5f00255&|%+0#00e0e07&| +0#0000000&||| |0+0#e000002&|d+0#0000000&|_| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&
@18|\+0#e000e06&| +0#0000000&||| |w+0#af5f00255&|i|n|c|m|d| +0#0000000&|p| ||| |d+0#af5f00255&|i|f@1|t|h|i|s| +0#0000000&@33
|e+0#af5f00255&|n|d|i|f| +0#0000000&@69
@75

View File

@@ -8,7 +8,7 @@
|#+0#0000e05&| |f|u|n|c|t|i|o|n| +0#0000000&@64
|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
|#+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
|c+0#af5f00255&|h|d|i|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
|c+0#af5f00255&|h|d|i|r| +0#0000000&|(|4|2|)| @64
@75
|v+0#af5f00255&|a|r| +0#0000000&|c|o|n|f|i|r|m| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58

View File

@@ -0,0 +1,20 @@
>"+0#0000e05#ffffff0| |V|i|m| |:|c|d| |c|o|m@1|a|n|d|s| +0#0000000&@56
|"+0#0000e05&| |V|I|M|_|T|E|S|T|_|S|E|T|U|P| |h|i| |l|i|n|k| |v|i|m|C|d|A|r|g| |T|o|d|o| +0#0000000&@36
@75
@75
|c+0#af5f00255&|d| +0#0000000&@72
|c+0#af5f00255&|d|!| +0#0000000&@71
|c+0#af5f00255&|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@67
|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@67
|c+0#af5f00255&|d| +0#0000000&@1|%+0#00e0e07&|:|h|/+0#0000001#ffff4012|f|o@1| +0#0000000#ffffff0@63
|c+0#af5f00255&|d|!| +0#0000000&|%+0#00e0e07&|:|h|/+0#0000001#ffff4012|f|o@1| +0#0000000#ffffff0@63
|c+0#af5f00255&|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| |b|a|r|/|b|a|z| +0#0000000#ffffff0@59
|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| |b|a|r|/|b|a|z| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@69
|c+0#af5f00255&|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@69
@75
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|"|f|o@1|\|"|b|a|r|\|"| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|||f|o@1|\|||b|a|r|\||| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|#|f|o@1|\|#|b|a|r|\|#| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012| |f|o@1|\| |b|a|r|\| +0#0000000#ffffff0@60
@57|1|,|1| @10|T|o|p|

View File

@@ -0,0 +1,20 @@
|c+0#af5f00255#ffffff0|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@69
@75
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|"|f|o@1|\|"|b|a|r|\|"| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|||f|o@1|\|||b|a|r|\||| +0#0000000#ffffff0@59
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012|#|f|o@1|\|#|b|a|r|\|#| +0#0000000#ffffff0@59
>c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012| |f|o@1|\| |b|a|r|\| +0#0000000#ffffff0@60
|c+0#af5f00255&|d| +0#0000000&|\+0#0000001#ffff4012@1|f|o@1|\@1|b|a|r|\@1| +0#0000000#ffffff0@59
@75
|c+0#af5f00255&|d| +0#0000000&@1|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@61
|c+0#af5f00255&|d| +0#0000000&@1||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@58
|c+0#af5f00255&|d|!| +0#0000000&|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@61
|c+0#af5f00255&|d|!| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@58
@75
@75
|f+0#af5f00255&|u|n|c|t|i|o|n| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@60
@2|c+0#af5f00255&|d| +0#0000000&@70
@2|c+0#af5f00255&|d|!| +0#0000000&@69
@2|c+0#af5f00255&|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@65
@2|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@65
@57|1|9|,|1| @9|1|4|%|

View File

@@ -0,0 +1,20 @@
| +0&#ffffff0@1|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@65
@2|c+0#af5f00255&|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@67
@2|c+0#af5f00255&|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@67
@75
@2|c+0#af5f00255&|d| +0#0000000&@1|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@59
@2>c+0#af5f00255&|d| +0#0000000&@1||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@56
@2|c+0#af5f00255&|d|!| +0#0000000&|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@59
@2|c+0#af5f00255&|d|!| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@56
|e+0#af5f00255&|n|d|f|u|n|c|t|i|o|n| +0#0000000&@63
@75
|d+0#af5f00255&|e|f| +0#0000000&|F|o@1|(+0#e000e06&|)| +0#0000000&@65
@2|c+0#af5f00255&|d| +0#0000000&@70
@2|c+0#af5f00255&|d|!| +0#0000000&@69
@2|c+0#af5f00255&|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@65
@2|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0@65
@2|c+0#af5f00255&|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@67
@2|c+0#af5f00255&|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@67
@75
@2|c+0#af5f00255&|d| +0#0000000&@1|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@59
@57|3|7|,|3| @9|3|4|%|

View File

@@ -0,0 +1,20 @@
| +0&#ffffff0@1|c+0#af5f00255&|d| +0#0000000&@1|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@59
@2|c+0#af5f00255&|d| +0#0000000&@1||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@56
@2|c+0#af5f00255&|d|!| +0#0000000&|#+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@59
@2|c+0#af5f00255&|d|!| +0#0000000&||| |e+0#af5f00255&|c|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@56
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
> @74
@75
|c+0#af5f00255&|d| +0#0000000&@5||| |l+0#af5f00255&|c|d| +0#0000000&@5||| |t+0#af5f00255&|c|d| +0#0000000&@5||| |c+0#af5f00255&|h|d|i|r| +0#0000000&@5||| |l+0#af5f00255&|c|h|d|i|r| +0#0000000&@5||| |t+0#af5f00255&|c|h|d|i|r| +0#0000000&@5||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
|c+0#af5f00255&|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |l+0#af5f00255&|c|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |t+0#af5f00255&|c|d| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |c+0#af5f00255&|h|d|i|r| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |l+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |t+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
|c+0#af5f00255&|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|d| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |c+0#af5f00255&|h|d|i|r| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
|c+0#af5f00255&|d|!| +0#0000000&@4||| |l+0#af5f00255&|c|d|!| +0#0000000&@4||| |t+0#af5f00255&|c|d|!| +0#0000000&@4||| |c+0#af5f00255&|h|d|i|r|!| +0#0000000&@4||| |l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&@4||| |t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&@4||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
|c+0#af5f00255&|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |l+0#af5f00255&|c|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |t+0#af5f00255&|c|d|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |c+0#af5f00255&|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
|c+0#af5f00255&|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |c+0#af5f00255&|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
@57|5@1|,|0|-|1| @7|5|0|%|

View File

@@ -0,0 +1,20 @@
|c+0#af5f00255#ffffff0|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|d|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |c+0#af5f00255&|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0||| |e+0#af5f00255&|c
|h|o| +0#0000000&|"+0#e000002&|.@2|"| +0#0000000&@66
@75
|c+0#af5f00255&|d| +0#0000000&@9|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|d|!| +0#0000000&@8|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
>c+0#af5f00255&|d| +0#0000000&@5|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|d|!| +0#0000000&@4|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|d| +0#0000000&@5|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|d|!| +0#0000000&@4|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d| +0#0000000&@8|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d|!| +0#0000000&@7|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d| +0#0000000&@4|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d|!| +0#0000000&@3|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d| +0#0000000&@4|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|d|!| +0#0000000&@3|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d| +0#0000000&@8|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d|!| +0#0000000&@7|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d| +0#0000000&@4|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d|!| +0#0000000&@3|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
@57|6@1|,|1| @9|6@1|%|

View File

@@ -0,0 +1,20 @@
|t+0#af5f00255#ffffff0|c|d|!| +0#0000000&@3|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d| +0#0000000&@4|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|d|!| +0#0000000&@3|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|h|d|i|r| +0#0000000&@6|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|h|d|i|r|!| +0#0000000&@5|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
>c+0#af5f00255&|h|d|i|r| +0#0000000&@2|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|h|d|i|r|!| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|h|d|i|r| +0#0000000&@2|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|c+0#af5f00255&|h|d|i|r|!| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r| +0#0000000&@5|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&@4|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|l+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r| +0#0000000&@5|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&@4|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
@57|8|4|,|1| @9|8|5|%|

View File

@@ -0,0 +1,20 @@
|t+0#af5f00255#ffffff0|c|h|d|i|r|!| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@2|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r| +0#0000000&@1|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
|t+0#af5f00255&|c|h|d|i|r|!| +0#0000000&|f+0#0000001#ffff4012|o@1| +0#0000000#ffffff0|"+0#0000e05&| |c|o|m@1|e|n|t| +0#0000000&@53
@75
@75
>"+0#0000e05&| |I|s@1|u|e| |#|1|7|9|6|4| |(|V|i|m| |s|c|r|i|p|t| |h|i|g|h|l|i|g|h|t|:| |e|n|d|i|f| |i|s| |n|o|t| |h|i|g|h|l|i|g|h|t|e|d| |a|f|t|e|r| |l|c|d|)| +0#0000000&@1
@75
|d+0#af5f00255&|e|f| +0#0000000&|L|c|d|B|a|c|k|(+0#e000e06&|)| +0#0000000&@61
@4|i+0#af5f00255&|f| +0#0000000&|g+0#00e0e07&|e|t|(+0#e000e06&|g+0#00e0e07&|:|,+0#0000000&| |"+0#e000002&|l|c|d|"|,+0#0000000&| |0+0#e000002&|)+0#e000e06&| +0#0000000&@50
@8|g+0#00e0e07&|:|l+0#0000000&|c|d| |=+0#af5f00255&| +0#0000000&|0+0#e000002&| +0#0000000&@57
@8|l+0#af5f00255&|c|d| +0#0000000&|-+0#0000001#ffff4012| +0#0000000#ffffff0@61
@4|e+0#af5f00255&|n|d|i|f| +0#0000000&@65
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
@75
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|1|0|2|,|1| @8|B|o|t|

View File

@@ -0,0 +1,20 @@
>"+0#0000e05#ffffff0| |V|i|m| |:|p|r|o|m|p|t|{|f|i|n|d|,|r|e|p|l|}| |c|o|m@1|a|n|d|s| +0#0000000&@41
@75
@75
|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| @60
|p+0#af5f00255&|r|o|m|p|t|r|e|p|l| +0#0000000&|f|o@1| @60
@75
|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|a| @62
@6|\+0#e000e06&| +0#0000000&|r|e|a|l@1|y| @60
@6|\+0#e000e06&| +0#0000000&|l|o|n|g| @62
@6|\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @60
@6|\+0#e000e06&| +0#0000000&|s|t|r|i|n|g| @60
|p+0#af5f00255&|r|o|m|p|t|r|e|p|l| +0#0000000&|a| @62
@6|\+0#e000e06&| +0#0000000&|r|e|a|l@1|y| @60
@6|\+0#e000e06&| +0#0000000&|l|o|n|g| @62
@6|\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @60
@6|\+0#e000e06&| +0#0000000&|s|t|r|i|n|g| @60
@75
@75
|"+0#0000e05&| |n|o| |t|a|i|l| |c|o|m@1|e|n|t| |o|r| |t|r|a|i|l|i|n|g| |b|a|r| +0#0000000&@41
@57|1|,|1| @10|T|o|p|

View File

@@ -0,0 +1,20 @@
| +0&#ffffff0@5|\+0#e000e06&| +0#0000000&|l|o|n|g| @62
@6|\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @60
@6|\+0#e000e06&| +0#0000000&|s|t|r|i|n|g| @60
@75
@75
>"+0#0000e05&| |n|o| |t|a|i|l| |c|o|m@1|e|n|t| |o|r| |t|r|a|i|l|i|n|g| |b|a|r| +0#0000000&@41
@75
|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| |"| |m|o|r|e| |s|e|a|r|c|h| |s|t|r|i|n|g| @39
|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| ||| |m|o|r|e| |s|e|a|r|c|h| |s|t|r|i|n|g| @39
@75
@75
|d+0#af5f00255&|e|f| +0#0000000&|V|i|m|9|C|o|n|t|e|x|t|(+0#e000e06&|)| +0#0000000&@57
@2|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| @58
@2|p+0#af5f00255&|r|o|m|p|t|r|e|p|l| +0#0000000&|f|o@1| @58
@75
@2|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|a| @60
@8|\+0#e000e06&| +0#0000000&|r|e|a|l@1|y| @58
@8|\+0#e000e06&| +0#0000000&|l|o|n|g| @60
@8|\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @58
@57|1|9|,|1| @9|4|8|%|

View File

@@ -0,0 +1,20 @@
| +0&#ffffff0@7|\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @58
@8|\+0#e000e06&| +0#0000000&|s|t|r|i|n|g| @58
@2|p+0#af5f00255&|r|o|m|p|t|r|e|p|l| +0#0000000&|a| @60
@8|\+0#e000e06&| +0#0000000&|r|e|a|l@1|y| @58
@8|\+0#e000e06&| +0#0000000&|l|o|n|g| @60
@8>\+0#e000e06&| +0#0000000&|s|e|a|r|c|h| @58
@8|\+0#e000e06&| +0#0000000&|s|t|r|i|n|g| @58
@75
@75
@2|#+0#0000e05&| |n|o| |t|a|i|l| |c|o|m@1|e|n|t| |o|r| |t|r|a|i|l|i|n|g| |b|a|r| +0#0000000&@39
@75
@2|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| |#| |m|o|r|e| |s|e|a|r|c|h| |s|t|r|i|n|g| @37
@2|p+0#af5f00255&|r|o|m|p|t|f|i|n|d| +0#0000000&|f|o@1| ||| |m|o|r|e| |s|e|a|r|c|h| |s|t|r|i|n|g| @37
|e+0#af5f00255&|n|d@1|e|f| +0#0000000&@68
@75
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|3|7|,|2|-|9| @7|B|o|t|

View File

@@ -15,6 +15,6 @@
|v+0#af5f00255&|i|m|g|r|e|p| +0#0000000&|/+0#e000e06&|p+0#0000000&|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n|/+0#e000e06&| +0#0000000&|*+0#0000001#ffff4012@1|/|*|.|t|x|t| +0#0000000#ffffff0@43
@75
|"+0#0000e05&| |s|p|e|c|i|a|l| |f|i|l|e|n|a|m|e| |c|h|a|r|a|c|t|e|r|s| +0#0000000&@45
|v+0#af5f00255&|i|m|g|r|e|p| +0#0000000&|p|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n| @2|%+0#0000001#ffff4012| +0#0000000#ffffff0@50
|v+0#af5f00255&|i|m|g|r|e|p| +0#0000000&|/+0#e000e06&|p+0#0000000&|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n|/+0#e000e06&| +0#0000000&|%+0#0000001#ffff4012| +0#0000000#ffffff0@50
|v+0#af5f00255&|i|m|g|r|e|p| +0#0000000&|p|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n| @2|%+0#00e0e07&| +0#0000000&@50
|v+0#af5f00255&|i|m|g|r|e|p| +0#0000000&|/+0#e000e06&|p+0#0000000&|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n|/+0#e000e06&| +0#0000000&|%+0#00e0e07&| +0#0000000&@50
@57|5@1|,|0|-|1| @7|9|8|%|

View File

@@ -1,4 +1,4 @@
|v+0#af5f00255#ffffff0|i|m|g|r|e|p| +0#0000000&|/+0#e000e06&|p+0#0000000&|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n|/+0#e000e06&| +0#0000000&|%+0#0000001#ffff4012| +0#0000000#ffffff0@50
|v+0#af5f00255#ffffff0|i|m|g|r|e|p| +0#0000000&|/+0#e000e06&|p+0#0000000&|a|\+0#e000e06&|%|(|t+0#0000000&@1|\+0#e000e06&|)|e+0#0000000&|r|n|/+0#e000e06&| +0#0000000&|%+0#00e0e07&| +0#0000000&@50
> @74
|~+0#4040ff13&| @73
|~| @73

View File

@@ -3,8 +3,8 @@
|l+0#af5f00255&|e|t| +0#0000000&|c|h|d|i|r| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@53
|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@60
|"+0#0000e05&| |c|o|m@1|a|n|d| +0#0000000&@65
>c+0#af5f00255&|h|d|i|r|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@65
|c+0#af5f00255&|h|d|i|r| +0#0000000&|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@64
>c+0#af5f00255&|h|d|i|r|(+0#0000000&|4|2|)| @65
|c+0#af5f00255&|h|d|i|r| +0#0000000&|(|4|2|)| @64
@75
|l+0#af5f00255&|e|t| +0#0000000&|c|o|n|f|i|r|m| |=+0#af5f00255&| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@49
|c+0#af5f00255&|a|l@1| +0#0000000&|c+0#00e0e07&|o|n|f|i|r|m|(+0#e000e06&|4+0#e000002&|2|)+0#e000e06&| +0#0000000&@58

View File

@@ -0,0 +1,110 @@
" Vim :cd commands
" VIM_TEST_SETUP hi link vimCdArg Todo
cd
cd!
cd foo
cd! foo
cd %:h/foo
cd! %:h/foo
cd foo bar/baz
cd! foo bar/baz
cd -
cd! -
cd \"foo\"bar\"
cd \|foo\|bar\|
cd \#foo\#bar\#
cd \ foo\ bar\
cd \\foo\\bar\\
cd " comment
cd | echo "..."
cd! " comment
cd! | echo "..."
function Foo()
cd
cd!
cd foo
cd! foo
cd -
cd! -
cd " comment
cd | echo "..."
cd! " comment
cd! | echo "..."
endfunction
def Foo()
cd
cd!
cd foo
cd! foo
cd -
cd! -
cd # comment
cd | echo "..."
cd! # comment
cd! | echo "..."
enddef
cd | lcd | tcd | chdir | lchdir | tchdir | echo "..."
cd - | lcd - | tcd - | chdir - | lchdir - | tchdir - | echo "..."
cd foo | lcd foo | tcd foo | chdir foo | lchdir foo | tchdir foo | echo "..."
cd! | lcd! | tcd! | chdir! | lchdir! | tchdir! | echo "..."
cd! - | lcd! - | tcd! - | chdir! - | lchdir! - | tchdir! - | echo "..."
cd! foo | lcd! foo | tcd! foo | chdir! foo | lchdir! foo | tchdir! foo | echo "..."
cd " comment
cd! " comment
cd - " comment
cd! - " comment
cd foo " comment
cd! foo " comment
lcd " comment
lcd! " comment
lcd - " comment
lcd! - " comment
lcd foo " comment
lcd! foo " comment
tcd " comment
tcd! " comment
tcd - " comment
tcd! - " comment
tcd foo " comment
tcd! foo " comment
chdir " comment
chdir! " comment
chdir - " comment
chdir! - " comment
chdir foo " comment
chdir! foo " comment
lchdir " comment
lchdir! " comment
lchdir - " comment
lchdir! - " comment
lchdir foo " comment
lchdir! foo " comment
tchdir " comment
tchdir! " comment
tchdir - " comment
tchdir! - " comment
tchdir foo " comment
tchdir! foo " comment
" Issue #17964 (Vim script highlight: endif is not highlighted after lcd)
def LcdBack()
if get(g:, "lcd", 0)
g:lcd = 0
lcd -
endif
enddef

View File

@@ -0,0 +1,46 @@
" Vim :prompt{find,repl} commands
promptfind foo
promptrepl foo
promptfind a
\ really
\ long
\ search
\ string
promptrepl a
\ really
\ long
\ search
\ string
" no tail comment or trailing bar
promptfind foo " more search string
promptfind foo | more search string
def Vim9Context()
promptfind foo
promptrepl foo
promptfind a
\ really
\ long
\ search
\ string
promptrepl a
\ really
\ long
\ search
\ string
# no tail comment or trailing bar
promptfind foo # more search string
promptfind foo | more search string
enddef

View File

@@ -2,7 +2,7 @@
" Language: Vim script
" Maintainer: Hirohito Higashi <h.east.727 ATMARK gmail.com>
" Doug Kearns <dougkearns@gmail.com>
" Last Change: 2025 Nov 11
" Last Change: 2025 Nov 13
" Former Maintainer: Charles E. Campbell
" DO NOT CHANGE DIRECTLY.
@@ -34,14 +34,14 @@ syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
" GEN_SYN_VIM: vimCommand normal, START_STR='syn keyword vimCommand contained', END_STR='nextgroup=vimBang'
syn keyword vimCommand contained al[l] ar[gs] arga[dd] argd[elete] argded[upe] arge[dit] argg[lobal] argl[ocal] argu[ment] as[cii] b[uffer] bN[ext] ba[ll] bad[d] balt bd[elete] bf[irst] bl[ast] bm[odified] bn[ext] bp[revious] br[ewind] brea[k] breaka[dd] breakd[el] breakl[ist] buffers bun[load] bw[ipeout] cN[ext] cNf[ile] cabo[ve] cad[dbuffer] cadde[xpr] caddf[ile] caf[ter] cb[uffer] cbe[fore] cbel[ow] cbo[ttom] cc ccl[ose] cd ce[nter] cex[pr] cf[ile] cfir[st] cg[etfile] cgetb[uffer] cgete[xpr] changes che[ckpath] checkt[ime] chi[story] cl[ist] clip[reset] cla[st] clo[se] cle[arjumps] cn[ext] cnew[er] cnf[ile] col[der] colo[rscheme] comc[lear] comp[iler] con[tinue] cope[n] cp[revious] cpf[ile] cq[uit] cr[ewind] cs[cope] cst[ag] cw[indow] delm[arks] deb[ug] defc[ompile] nextgroup=vimBang
syn keyword vimCommand contained di[splay] dif[fupdate] diffg[et] diffo[ff] diffp[atch] diffpu[t] diffs[plit] difft[his] dig[raphs] disa[ssemble] dj[ump] dli[st] dr[op] ds[earch] dsp[lit] e[dit] ea[rlier] em[enu] endfo[r] endt[ry] endw[hile] ene[w] ex exi[t] exu[sage] f[ile] files fin[d] fina[lly] fini[sh] fir[st] fix[del] fo[ld] foldc[lose] foldo[pen] g[lobal] go[to] gu[i] gv[im] h[elp] helpc[lose] helpf[ind] helpt[ags] ha[rdcopy] his[tory] ij[ump] il[ist] int[ro] ip[ut] is[earch] isp[lit] ju[mps] l[ist] lN[ext] lNf[ile] la[st] lab[ove] lan[guage] lad[dexpr] laddb[uffer] laddf[ile] laf[ter] lat[er] lb[uffer] lbe[fore] lbel[ow] lbo[ttom] lc[d] lch[dir] lcl[ose] lcs[cope] le[ft] lex[pr] lf[ile] lfir[st] lg[etfile] lgetb[uffer] lgete[xpr] lhi[story] ll lla[st] lli[st] nextgroup=vimBang
syn keyword vimCommand contained lmak[e] lne[xt] lnew[er] lnf[ile] lo[adview] lockv[ar] lol[der] lop[en] lp[revious] lpf[ile] lr[ewind] lt[ag] lw[indow] ls m[ove] marks mes[sages] mk[exrc] mks[ession] mksp[ell] mkv[imrc] mkvie[w] mod[e] n[ext] nb[key] nbc[lose] nbs[tart] noh[lsearch] nu[mber] o[pen] ol[dfiles] on[ly] opt[ions] ow[nsyntax] p[rint] pa[ckadd] packl[oadall] pb[uffer] pc[lose] ped[it] po[p] pp[op] pre[serve] prev[ious] pro[mptfind] promptr[epl] ps[earch] pt[ag] ptN[ext] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] q[uit] quita[ll] qa[ll] r[ead] rec[over] red[o] redr[aw] redraws[tatus] redrawt[abline] redrawtabp[anel] reg[isters] res[ize] ret[ab] rew[ind] ri[ght] ru[ntime] rund[o] rv[iminfo] sN[ext] sa[rgument] nextgroup=vimBang
syn keyword vimCommand contained sal[l] sav[eas] sb[uffer] sbN[ext] sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbp[revious] sbr[ewind] scr[iptnames] scripte[ncoding] scriptv[ersion] scs[cope] setf[iletype] sf[ind] sfir[st] sh[ell] sim[alt] sig[n] sla[st] sn[ext] so[urce] spe[llgood] spelld[ump] spelli[nfo] spellr[epall] spellra[re] spellu[ndo] spellw[rong] spr[evious] sre[wind] st[op] sta[g] star[tinsert] startg[replace] startr[eplace] stopi[nsert] stj[ump] sts[elect] sun[hide] sus[pend] sv[iew] sync[bind] smi[le] t tN[ext] ta[g] tags tabc[lose] tabe[dit] tabf[ind] tabfir[st] tabm[ove] tabl[ast] tabn[ext] tabnew tabo[nly] tabp[revious] tabN[ext] tabr[ewind] tabs tc[d] tch[dir] te[aroff] tf[irst] tj[ump] tl[ast] tn[ext] tp[revious] tr[ewind] try ts[elect] nextgroup=vimBang
syn keyword vimCommand contained u[ndo] undoj[oin] undol[ist] unh[ide] up[date] v[global] ve[rsion] vi[sual] vie[w] viu[sage] vne[w] vs[plit] w[rite] wN[ext] wa[ll] wi[nsize] winp[os] wl[restore] wn[ext] wp[revious] wq wqa[ll] wu[ndo] wv[iminfo] x[it] xa[ll] xr[estore] y[ank] z dl dell delel deletl deletel dp dep delp delep deletp deletep a i nextgroup=vimBang
syn keyword vimCommand contained al[l] ar[gs] arga[dd] argd[elete] argded[upe] arge[dit] argg[lobal] argl[ocal] argu[ment] as[cii] b[uffer] bN[ext] ba[ll] bad[d] balt bd[elete] bf[irst] bl[ast] bm[odified] bn[ext] bp[revious] br[ewind] brea[k] breaka[dd] breakd[el] breakl[ist] buffers bun[load] bw[ipeout] cN[ext] cNf[ile] cabo[ve] cad[dbuffer] cadde[xpr] caddf[ile] caf[ter] cb[uffer] cbe[fore] cbel[ow] cbo[ttom] cc ccl[ose] ce[nter] cex[pr] cf[ile] cfir[st] cg[etfile] cgetb[uffer] cgete[xpr] changes che[ckpath] checkt[ime] chi[story] cl[ist] clip[reset] cla[st] clo[se] cle[arjumps] cn[ext] cnew[er] cnf[ile] col[der] colo[rscheme] comc[lear] comp[iler] con[tinue] cope[n] cp[revious] cpf[ile] cq[uit] cr[ewind] cs[cope] cst[ag] cw[indow] delm[arks] deb[ug] defc[ompile] nextgroup=vimBang
syn keyword vimCommand contained di[splay] dif[fupdate] diffg[et] diffo[ff] diffp[atch] diffpu[t] diffs[plit] difft[his] dig[raphs] disa[ssemble] dj[ump] dli[st] dr[op] ds[earch] dsp[lit] e[dit] ea[rlier] em[enu] endfo[r] endt[ry] endw[hile] ene[w] ex exi[t] exu[sage] f[ile] files fin[d] fina[lly] fini[sh] fir[st] fix[del] fo[ld] foldc[lose] foldo[pen] g[lobal] go[to] gu[i] gv[im] h[elp] helpc[lose] helpf[ind] helpt[ags] ha[rdcopy] his[tory] ij[ump] il[ist] int[ro] ip[ut] is[earch] isp[lit] ju[mps] l[ist] lN[ext] lNf[ile] la[st] lab[ove] lan[guage] lad[dexpr] laddb[uffer] laddf[ile] laf[ter] lat[er] lb[uffer] lbe[fore] lbel[ow] lbo[ttom] lcl[ose] lcs[cope] le[ft] lex[pr] lf[ile] lfir[st] lg[etfile] lgetb[uffer] lgete[xpr] lhi[story] ll lla[st] lli[st] lmak[e] nextgroup=vimBang
syn keyword vimCommand contained lne[xt] lnew[er] lnf[ile] lo[adview] lockv[ar] lol[der] lop[en] lp[revious] lpf[ile] lr[ewind] lt[ag] lw[indow] ls m[ove] marks mes[sages] mk[exrc] mks[ession] mksp[ell] mkv[imrc] mkvie[w] mod[e] n[ext] nb[key] nbc[lose] nbs[tart] noh[lsearch] nu[mber] o[pen] ol[dfiles] on[ly] opt[ions] ow[nsyntax] p[rint] pa[ckadd] packl[oadall] pb[uffer] pc[lose] ped[it] po[p] pp[op] pre[serve] prev[ious] ps[earch] pt[ag] ptN[ext] ptf[irst] ptj[ump] ptl[ast] ptn[ext] ptp[revious] ptr[ewind] pts[elect] pu[t] pw[d] q[uit] quita[ll] qa[ll] r[ead] rec[over] red[o] redr[aw] redraws[tatus] redrawt[abline] redrawtabp[anel] reg[isters] res[ize] ret[ab] rew[ind] ri[ght] ru[ntime] rund[o] rv[iminfo] sN[ext] sa[rgument] sal[l] sav[eas] sb[uffer] sbN[ext] nextgroup=vimBang
syn keyword vimCommand contained sba[ll] sbf[irst] sbl[ast] sbm[odified] sbn[ext] sbp[revious] sbr[ewind] scr[iptnames] scripte[ncoding] scriptv[ersion] scs[cope] setf[iletype] sf[ind] sfir[st] sh[ell] sim[alt] sig[n] sla[st] sn[ext] so[urce] spe[llgood] spelld[ump] spelli[nfo] spellr[epall] spellra[re] spellu[ndo] spellw[rong] spr[evious] sre[wind] st[op] sta[g] star[tinsert] startg[replace] startr[eplace] stopi[nsert] stj[ump] sts[elect] sun[hide] sus[pend] sv[iew] sync[bind] smi[le] t tN[ext] ta[g] tags tabc[lose] tabe[dit] tabf[ind] tabfir[st] tabm[ove] tabl[ast] tabn[ext] tabnew tabo[nly] tabp[revious] tabN[ext] tabr[ewind] tabs te[aroff] tf[irst] tj[ump] tl[ast] tn[ext] tp[revious] tr[ewind] try ts[elect] u[ndo] undoj[oin] undol[ist] unh[ide] up[date] v[global] nextgroup=vimBang
syn keyword vimCommand contained ve[rsion] vi[sual] vie[w] viu[sage] vne[w] vs[plit] w[rite] wN[ext] wa[ll] wi[nsize] winp[os] wl[restore] wn[ext] wp[revious] wq wqa[ll] wu[ndo] wv[iminfo] x[it] xa[ll] xr[estore] y[ank] z dl dell delel deletl deletel dp dep delp delep deletp deletep a i nextgroup=vimBang
" Lower priority :syn-match to allow for :command/function() distinction
syn match vimCommand "\<chd\%[ir]\>" nextgroup=vimBang
" :chdir is handled specially elsewhere
syn match vimCommand "\<co\%[py]\>" nextgroup=vimBang
syn match vimCommand "\<d\%[elete]\>" nextgroup=vimBang
syn match vimCommand "\<j\%[oin]\>" nextgroup=vimBang
@@ -300,7 +300,7 @@ syn match vimNumber '\<0z\%(\x\x\)\+\%(\.\%(\x\x\)\+\)*' skipwhite nextgroup=@vi
syn case match
" All vimCommands are contained by vimIsCommand. {{{2
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAt,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDefer,vimDelcommand,vimDelFunction,vimDoCommand,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimEval,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSyntime,vimSynColor,vimSynLink,vimTerminal,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimWincmd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vimCmdList contains=vimAbb,vimAddress,vimAt,vimAutocmd,vimAugroup,vimBehave,vimCall,vimCatch,vimCd,vimCommandModifier,vimConst,vimDoautocmd,vimDebuggreedy,vimDef,vimDefFold,vimDefer,vimDelcommand,vimDelFunction,vimDoCommand,@vimEcho,vimElse,vimEnddef,vimEndfunction,vimEndif,vimEval,vimExecute,vimIsCommand,vimExtCmd,vimExFilter,vimExMark,vimFiletype,vimFor,vimFunction,vimFunctionFold,vimGrep,vimGrepAdd,vimGlobal,vimHelpgrep,vimHighlight,vimImport,vimLet,vimLoadkeymap,vimLockvar,vimMake,vimMap,vimMark,vimMatch,vimNotFunc,vimNormal,vimProfdel,vimProfile,vimPrompt,vimRedir,vimSet,vimSleep,vimSort,vimSyntax,vimSyntime,vimSynColor,vimSynLink,vimTerminal,vimThrow,vimUniq,vimUnlet,vimUnlockvar,vimUnmap,vimUserCmd,vimVimgrep,vimVimgrepadd,vimWincmd,vimMenu,vimMenutranslate,@vim9CmdList,@vimExUserCmdList,vimLua,vimMzScheme,vimPerl,vimPython,vimPython3,vimPythonX,vimRuby,vimTcl
syn cluster vim9CmdList contains=vim9Abstract,vim9Class,vim9Const,vim9Enum,vim9Export,vim9Final,vim9For,vim9Interface,vim9Type,vim9Var
syn match vimCmdSep "\\\@1<!|" skipwhite nextgroup=@vimCmdList,vimSubst1,@vimFunc
syn match vimCmdSep ":\+" skipwhite nextgroup=@vimCmdList,vimSubst1
@@ -365,6 +365,21 @@ syn keyword vimBehaveModel contained mswin xterm
" ====
syn match vimCall "\<call\=\>" skipwhite nextgroup=vimVar,@vimFunc
" Cd: {{{2
" ==
" GEN_SYN_VIM: vimCommand cd, START_STR='syn keyword vimCd', END_STR='skipwhite nextgroup=vimCdBang,vimCdArg,vimComment,vim9Comment,vimCmdSep'
syn keyword vimCd cd lc[d] lch[dir] tc[d] tch[dir] skipwhite nextgroup=vimCdBang,vimCdArg,vimComment,vim9Comment,vimCmdSep
syn match vimCd "\<chd\%[ir]\>" skipwhite nextgroup=vimCdBang,vimCdArg,vimComment,vim9Comment,vimCmdSep
syn region vimCdArg contained
\ start=+["#|]\@!\S+
\ end="\ze\s*$"
\ end=+\ze\s*\\\@1<!["#|]+
\ skipwhite nextgroup=vimComment,vim9Comment,vimCmdSep
\ contains=vimSpecfile,@vimWildCard
\ oneline
syn match vimCdBang contained "\a\@1<=!" skipwhite nextgroup=vimCdArg,vimComment,vim9Comment,vimCmdSep
" Debuggreedy {{{2
" ===========
" TODO: special-cased until generalised range/count support is implemented
@@ -879,6 +894,10 @@ syn match vimSpecFile "\s%<"ms=s+1,me=e-1 nextgroup=vimSpecFileMod,vimSubst1
syn match vimSpecFile "#\d\+\|[#%]<\>" nextgroup=vimSpecFileMod,vimSubst1
syn match vimSpecFileMod "\(:[phtre]\)\+" contained
syn match vimSpecFile contained "%[ \t:]"me=e-1 nextgroup=vimSpecFileMod
syn match vimSpecFile contained excludenl "%$" nextgroup=vimSpecFileMod
syn match vimSpecFile contained "%<"me=e-1 nextgroup=vimSpecFileMod
" User-Specified Commands: {{{2
" =======================
syn cluster vimUserCmdList contains=@vimCmdList,vimCmplxRepeat,@vimComment,vimCtrlChar,vimEscapeBrace,@vimFunc,vimNotation,vimNumber,vimOper,vimRegister,vimSpecFile,vimString,vimSubst,vimSubstRep,vimSubstRange
@@ -1653,6 +1672,15 @@ syn keyword vimProfdelArg contained file skipwhite nextgroup=vimProfilePattern
syn keyword vimProfdelArg contained here skipwhite nextgroup=vimCmdSep,@vimComment
syn match vimProfdel "\<profd\%[el]\>" skipwhite nextgroup=vimProfdelArg
" Prompt{find,repl}: {{{2
" =================
syn region vimPromptArg contained
\ start="\S"
\ skip=+\n\s*\%(\\\|["#]\\ \)+
\ end="$"
\ contains=@vimContinue
syn keyword vimPrompt promptf[ind] promptr[epl] skipwhite nextgroup=vimPromptArg
" Redir: {{{2
" =====
syn match vimRedir "\<redir\=\>" skipwhite nextgroup=vimRedirBang,vimRedirFileOperator,vimRedirVariableOperator,vimRedirRegister,vimRedirEnd
@@ -2423,6 +2451,8 @@ if !exists("skip_vim_syntax_inits")
hi def link vimBracket Delimiter
hi def link vimCall vimCommand
hi def link vimCatch vimCommand
hi def link vimCd vimCommand
hi def link vimCdBang vimBang
hi def link vimCmplxRepeat SpecialChar
hi def link vimCommand Statement
hi def link vimCommandModifier vimCommand
@@ -2581,6 +2611,7 @@ if !exists("skip_vim_syntax_inits")
hi def link vimProfileBang vimBang
hi def link vimProfdel vimCommand
hi def link vimProfdelArg vimSpecial
hi def link vimPrompt vimCommand
hi def link vimPython vimCommand
hi def link vimPython3 vimCommand
hi def link vimPythonX vimCommand

View File

@@ -2022,7 +2022,7 @@ ex_let_one(
void
ex_unlet(exarg_T *eap)
{
ex_unletlock(eap, eap->arg, 0, 0, do_unlet_var, NULL);
ex_unletlock(eap, eap->arg, 0, eap->forceit ? GLV_QUIET : 0, do_unlet_var, NULL);
}
/*

View File

@@ -234,7 +234,7 @@ EXCMD(CMD_breakdel, "breakdel", ex_breakdel,
EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
ADDR_NONE),
EXCMD(CMD_breaklist, "breaklist", ex_breaklist,
EX_EXTRA|EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
EX_TRLBAR|EX_CMDWIN|EX_LOCK_OK,
ADDR_NONE),
EXCMD(CMD_browse, "browse", ex_wrongmodifier,
EX_NEEDARG|EX_EXTRA|EX_NOTRLCOM|EX_CMDWIN|EX_LOCK_OK,

View File

@@ -3260,6 +3260,8 @@ button_set:
*/
if ((State == MODE_NORMAL || State == MODE_NORMAL_BUSY
|| (State & MODE_INSERT))
&& X_2_COL(x) >= firstwin->w_wincol
&& X_2_COL(x) < firstwin->w_wincol + topframe->fr_width
&& Y_2_ROW(y) >= topframe->fr_height + firstwin->w_winrow
&& button != MOUSE_DRAG
# ifdef FEAT_MOUSESHAPE
@@ -4941,7 +4943,12 @@ xy2win(int x, int y, mouse_find_T popup)
return NULL;
wp = mouse_find_win(&row, &col, popup);
if (wp == NULL)
{
#ifdef FEAT_MOUSESHAPE
update_mouseshape(-2);
#endif
return NULL;
}
#ifdef FEAT_MOUSESHAPE
if (State == MODE_HITRETURN || State == MODE_ASKMORE)
{

View File

@@ -5710,11 +5710,14 @@ ins_compl_get_exp(pos_T *ini)
}
may_trigger_modechanged();
if (is_nearest_active() && !ins_compl_has_preinsert())
sort_compl_match_list(cp_compare_nearest);
if (match_count > 0)
{
if (is_nearest_active() && !ins_compl_has_preinsert())
sort_compl_match_list(cp_compare_nearest);
if ((get_cot_flags() & COT_FUZZY) && ins_compl_leader_len() > 0)
ins_compl_fuzzy_sort();
if ((get_cot_flags() & COT_FUZZY) && ins_compl_leader_len() > 0)
ins_compl_fuzzy_sort();
}
return match_count;
}

View File

@@ -14,8 +14,8 @@
msgid ""
msgstr ""
"Report-Msgid-Bugs-To: vim-dev@vim.org\n"
"POT-Creation-Date: 2025-10-07 08:49+0200\n"
"PO-Revision-Date: 2025-10-07 13:30+0100\n"
"POT-Creation-Date: 2025-11-16 09:16+0100\n"
"PO-Revision-Date: 2025-11-16 09:22+0100\n"
"Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
"Language-Team: Italian\n"
"Language: it\n"
@@ -165,9 +165,8 @@ msgstr "Cim"
msgid "%d%%"
msgstr "%d%%"
#, c-format
msgid "%2s"
msgstr "%2s"
msgid "%3s"
msgstr "%3s"
#, c-format
msgid " (%d of %d)"
@@ -3797,8 +3796,8 @@ msgstr "Vim è 'open source' e può essere distribuito liberamente"
msgid "Help poor children in Uganda!"
msgstr "Aiuta i bambini poveri dell'Uganda!"
msgid "type :help iccf<Enter> for information "
msgstr "batti :help iccf<Invio> per informazioni "
msgid "type :help Kuwasha<Enter> for information "
msgstr "batti :help Kuwasha<Invio> per informazioni "
msgid "type :q<Enter> to exit "
msgstr "batti :q<Invio> per uscire "
@@ -8632,6 +8631,7 @@ msgstr "E1328: Il valore predefinito del costruttore dev'essere v:none: %s"
msgid "E1329: Invalid class variable declaration: %s"
msgstr "E1329: Dichiarazione di variabile Classe non valida: %s"
#, c-format
msgid "E1330: Invalid type used in variable declaration: %s"
msgstr "E1330: Tipo non valido usato nella dichiarazione di variabile: %s"
@@ -9302,6 +9302,7 @@ msgstr ""
"E1567: Non posso far partire il server di socket, percorso di socket non "
"disponibile"
#, c-format
msgid "E1568: OSC command response timed out: %.*s"
msgstr "E1568: tempo di risposta a comando OSC terminato: %.*s"
@@ -9966,8 +9967,8 @@ msgid ""
"buffer text, filler lines and truncation in the completion menu"
msgstr ""
"caratteri da usare per riga di status, piegature, differenze,\n"
"testo di un buffer, righe di riempitivo e troncamento nel menu "
"di completamento"
"testo di un buffer, righe di riempitivo e troncamento nel menu di "
"completamento"
msgid "number of lines used for the command-line"
msgstr "numero di righe disponibili per la riga-di-comando"
@@ -10589,16 +10590,15 @@ msgid ""
"initial decay timeout for 'autocomplete' algorithm"
msgstr ""
" \n"
"tempo-di-attesa iniziale prima di interrompere l'algoritmo di "
"'autocomplete'"
"tempo-di-attesa iniziale prima di interrompere l'algoritmo di 'autocomplete'"
msgid ""
" \n"
"initial decay timeout for CTRL-N and CTRL-P completion"
msgstr ""
" \n"
"tempo-di-attesa iniziale prima di interrompere il completamento "
"con CTRL-N e CTRL-P"
"tempo-di-attesa iniziale prima di interrompere il completamento con CTRL-N e "
"CTRL-P"
msgid ""
" \n"
@@ -10639,6 +10639,9 @@ msgstr "larghezza minima del menù dinamico"
msgid "maximum width of the popup menu"
msgstr "larghezza massima del menù dinamico"
msgid "popup border style"
msgstr "stile bordo menù dinamico"
msgid "user defined function for Insert mode completion"
msgstr "funzione definita dall'utente per il completamento in modo Insert"
@@ -11405,7 +11408,3 @@ msgstr "opzioni per usare il pannello-schede"
msgid "You discovered the command-line window! You can close it with \":q\"."
msgstr ""
"Questa è la finestra della riga-di-comando! Si può chiudere con \":q\"."
#, c-format
#~ msgid "E1330: Invalid type for object variable: %s"
#~ msgstr "E1330: Tipo non valido per variabile Object: %s"

View File

@@ -5362,7 +5362,7 @@ put_key_modifiers_in_typebuf(
static int
parse_csi_f_keys(int arg)
{
char_u key_name[2] = "";
char_u key_name[2] = { 0, 0 };
switch (arg)
{

View File

@@ -0,0 +1,10 @@
> +0&#ffffff0@74
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|0|,|0|-|1| @8|A|l@1|

View File

@@ -5537,4 +5537,27 @@ func Test_VimResized_and_window_width_not_equalized()
call StopVimInTerminal(buf)
endfunc
func Test_win_tabclose_autocmd()
defer CleanUpTestAuGroup()
new
augroup testing
au WinClosed * wincmd p
augroup END
tabnew
new
new
call assert_equal(2, tabpagenr('$'))
try
tabclose
catch
" should not happen
call assert_report("closing tabpage failed")
endtry
call assert_equal(1, tabpagenr('$'))
bw!
endfunc
" vim: shiftwidth=2 sts=2 expandtab

View File

@@ -5041,11 +5041,20 @@ func Test_wildtrigger_update_screen()
call term_sendkeys(buf, "x")
call VerifyScreenDump(buf, 'Test_wildtrigger_update_screen_2', {})
" pum window is closed when no completion candidates are available
" pum is closed when no completion candidates are available
call term_sendkeys(buf, "\<F8>")
call VerifyScreenDump(buf, 'Test_wildtrigger_update_screen_3', {})
call term_sendkeys(buf, "\<esc>")
call term_sendkeys(buf, "\<BS>\<F8>")
call VerifyScreenDump(buf, 'Test_wildtrigger_update_screen_1', {})
call term_sendkeys(buf, "x")
call VerifyScreenDump(buf, 'Test_wildtrigger_update_screen_2', {})
" pum is closed when leaving cmdline mode
call term_sendkeys(buf, "\<Esc>")
call VerifyScreenDump(buf, 'Test_wildtrigger_update_screen_4', {})
call StopVimInTerminal(buf)
endfunc
@@ -5176,4 +5185,9 @@ func Test_update_screen_after_wildtrigger()
call StopVimInTerminal(buf)
endfunc
func Test_breaklist_args_fails()
call assert_match('No breakpoints defined', execute(':breaklist'))
call assert_fails(':breaklist extra', 'E488:')
endfunc
" vim: shiftwidth=2 sts=2 expandtab

View File

@@ -343,6 +343,7 @@ def s:GetFilenameChecks(): dict<list<string>>
grads: ['file.gs'],
graphql: ['file.graphql', 'file.graphqls', 'file.gql'],
gretl: ['file.gretl'],
groff: ['file.groff', 'file.mom'],
groovy: ['file.gradle', 'file.groovy', 'Jenkinsfile'],
group: ['any/etc/group', 'any/etc/group-', 'any/etc/group.edit', 'any/etc/gshadow', 'any/etc/gshadow-', 'any/etc/gshadow.edit', 'any/var/backups/group.bak', 'any/var/backups/gshadow.bak', '/etc/group', '/etc/group-', '/etc/group.edit', '/etc/gshadow', '/etc/gshadow-', '/etc/gshadow.edit', '/var/backups/group.bak', '/var/backups/gshadow.bak'],
grub: ['/boot/grub/menu.lst', '/boot/grub/grub.conf', '/etc/grub.conf', 'any/boot/grub/grub.conf', 'any/boot/grub/menu.lst', 'any/etc/grub.conf'],
@@ -576,7 +577,7 @@ def s:GetFilenameChecks(): dict<list<string>>
nix: ['file.nix'],
norg: ['file.norg'],
nqc: ['file.nqc'],
nroff: ['file.tr', 'file.nr', 'file.roff', 'file.tmac', 'file.mom', 'tmac.file'],
nroff: ['file.tr', 'file.nr', 'file.roff', 'file.tmac', 'tmac.file'],
nsis: ['file.nsi', 'file.nsh'],
ntriples: ['file.nt'],
nu: ['file.nu'],

View File

@@ -3705,6 +3705,22 @@ func Test_complete_fuzzy_collect()
set completeopt& cfc& cpt&
endfunc
" Issue #18752
func Test_complete_fuzzy_collect_multiwin()
new
set completefuzzycollect=keyword,files,whole_line
set completeopt=fuzzy
vnew
call setline(1, ["completeness,", "compatibility", "Composite", "Omnipotent"])
wincmd p
call feedkeys("Somp\<C-P>\<Esc>0", 'tx!')
call assert_equal('Omnipotent', getline('.'))
bw!
set completeopt& cfc&
endfunc
func Test_cfc_with_longest()
new
set completefuzzycollect=keyword,files,whole_line

View File

@@ -58,7 +58,7 @@ func Test_backward_slash_uncomment()
let input_file = "Test_backward_slash_uncomment_input.mom"
call writefile(lines, input_file, "D")
let buf = RunVimInTerminal('-c "packadd comment" ' .. input_file, {})
let buf = RunVimInTerminal('-c "packadd comment" -c "set ft=nroff" ' .. input_file, {})
call term_sendkeys(buf, "gcc")
let output_file = "backward_slash_uncomment_test.mom"
call term_sendkeys(buf, $":w {output_file}\<CR>")

View File

@@ -104,7 +104,7 @@ func Test_netrw_parse_ssh_config_entries()
endfunction
"username containing special-chars"
func Test_netrw_parse_special_char_user ()
func Test_netrw_parse_special_char_user()
call s:setup()
let result = TestNetrwCaptureRemotePath('scp://user-01@localhost:2222/test.txt')
call assert_equal(result.method, 'scp')
@@ -114,3 +114,19 @@ func Test_netrw_parse_special_char_user ()
call assert_equal(result.path, 'test.txt')
call s:cleanup()
endfunction
func Test_netrw_wipe_empty_buffer_fastpath()
let g:netrw_fastbrowse=0
packadd netrw
call setline(1, 'foobar')
let bufnr = bufnr('%')
tabnew
Explore
call search('README.txt', 'W')
exe ":norm \<cr>"
call assert_equal(4, bufnr('$'))
call assert_true(bufexists(bufnr))
bw
unlet! netrw_fastbrowse
endfunction

View File

@@ -632,6 +632,39 @@ func Test_term_getcursor()
call StopShellInTerminal(buf)
endfunc
func! s:TermPollAndAssertMatchTitle(term, old_name, new_pattern) abort
let new_name = ''
let next_part = ''
let prev_part = next_part
let times = 2048
" Ignore any pending or old title (or its tail part).
while (empty(new_name) ||
\ a:old_name[max([0, strridx(a:old_name, new_name)]) :] ==# new_name) &&
\ times > 0
let new_name = term_gettitle(a:term)
let times -= 1
sleep 1m
endwhile
" FIXME: Allow for occasional title "buffering" (on MacOS) and fetch either
" the whole title or its parts.
while new_name !~# a:new_pattern && times > 0
let next_part = term_gettitle(a:term)
if next_part !=# prev_part
let new_name .= next_part
endif
let prev_part = next_part
let times -= 1
sleep 1m
endwhile
call assert_match(a:new_pattern, new_name)
return new_name
endfunc
" Test for term_gettitle()
" Known to be flaky on Mac-OS X and the GH runners
func Test_term_gettitle()
@@ -643,24 +676,16 @@ func Test_term_gettitle()
if !has('title') || empty(&t_ts)
throw "Skipped: can't get/set title"
endif
if has('osx') && !empty($CI) && system('uname -m') =~# 'arm64'
" This test often fails with the following error message on Github runners
" MacOS-14
" '^\\[No Name\\] - VIM\\d*$' does not match 'e] - VIM'
" Why? Is the terminal that runs Vim too small?
throw 'Skipped: FIXME: Running this test on M1 Mac fails on GitHub Actions'
endif
let term = term_start([GetVimProg(), '--clean', '-c', 'set noswapfile', '-c', 'set title'])
call TermWait(term)
" When Vim is running as a server then the title ends in VIM{number}, thus
" optionally match a number after "VIM".
call WaitForAssert({-> assert_match('^\[No Name\] - VIM\d*$', term_gettitle(term)) })
let title = s:TermPollAndAssertMatchTitle(term, '', '^\[No Name\] - VIM\d*$')
call term_sendkeys(term, ":e Xfoo\r")
call WaitForAssert({-> assert_match('^Xfoo (.*[/\\]testdir) - VIM\d*$', term_gettitle(term)) })
let title = s:TermPollAndAssertMatchTitle(term, title, '^Xfoo (.*[/\\]testdir) - VIM\d*$')
call term_sendkeys(term, ":set titlestring=foo\r")
call WaitForAssert({-> assert_equal('foo', term_gettitle(term)) })
let title = s:TermPollAndAssertMatchTitle(term, title, 'foo')
exe term . 'bwipe!'
endfunc

View File

@@ -64,4 +64,16 @@ func Test_unlet_complete()
call assert_true(!exists('$FOOBAR') || empty($FOOBAR))
endfunc
func Test_unlet_nonexisting_key()
let g:base = {}
call assert_fails(':unlet g:base["foobar"]', 'E716:')
try
unlet! g:base["foobar"]
catch
call assert_report("error when unletting non-existing dict key")
endtry
unlet g:base
endfunc
" vim: shiftwidth=2 sts=2 expandtab

View File

@@ -4771,6 +4771,20 @@ def Test_call_modified_import_func()
v9.CheckScriptSuccess(lines)
enddef
" Test for assigning the return value of mkdir() to a new local variable.
" This used to result in the "E1012: Type mismatch; expected list<any> but
" got number" error message.
def Test_assign_mkdir_ret_value()
var lines =<< trim END
vim9script
def Fn()
var ret: number = mkdir('./foo/bar/baz', 'p')
enddef
defcompile
END
v9.CheckScriptSuccess(lines)
enddef
" The following messes up syntax highlight, keep near the end.
if has('python3')
def Test_python3_command()

View File

@@ -729,6 +729,30 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1920,
/**/
1919,
/**/
1918,
/**/
1917,
/**/
1916,
/**/
1915,
/**/
1914,
/**/
1913,
/**/
1912,
/**/
1911,
/**/
1910,
/**/
1909,
/**/
1908,
/**/

View File

@@ -3170,6 +3170,8 @@ compile_assign_single_eval_expr(cctx_T *cctx, cac_T *cac)
int ret = OK;
char_u *whitep;
lhs_T *lhs = &cac->cac_lhs;
lvar_T *lvp;
lvar_T save_lhs_lvar;
// Compile the expression.
if (cac->cac_incdec)
@@ -3178,7 +3180,14 @@ compile_assign_single_eval_expr(cctx_T *cctx, cac_T *cac)
// Temporarily hide the new local variable here, it is
// not available to this expression.
if (lhs->lhs_new_local)
{
--cctx->ctx_locals.ga_len;
// Save the local variable value (compiling the RHS expression may
// create new local variables).
lvp = ((lvar_T *)cctx->ctx_locals.ga_data) + cctx->ctx_locals.ga_len;
save_lhs_lvar = *lvp;
}
whitep = cac->cac_op + cac->cac_oplen;
if (may_get_next_line_error(whitep, &cac->cac_nextc, cctx) == FAIL)
@@ -3190,7 +3199,15 @@ compile_assign_single_eval_expr(cctx_T *cctx, cac_T *cac)
ret = compile_expr0_ext(&cac->cac_nextc, cctx, &cac->cac_is_const);
if (lhs->lhs_new_local)
{
// Restore the local variable value. Update lhs_lvar as the index of
// the local variable might have changed.
lvp = ((lvar_T *)cctx->ctx_locals.ga_data) + cctx->ctx_locals.ga_len;
*lvp = save_lhs_lvar;
lhs->lhs_lvar = lvp;
++cctx->ctx_locals.ga_len;
}
return ret;
}

View File

@@ -4403,6 +4403,7 @@ close_others(
{
win_T *wp;
win_T *nextwp;
win_T *old_curwin = curwin;
int r;
if (one_window())
@@ -4416,6 +4417,14 @@ close_others(
for (wp = firstwin; win_valid(wp); wp = nextwp)
{
nextwp = wp->w_next;
// autocommands messed this one up
if (old_curwin != curwin && win_valid(old_curwin))
{
curwin = old_curwin;
curbuf = curwin->w_buffer;
}
if (wp == curwin) // don't close current window
continue;