Compare commits

...

59 Commits

Author SHA1 Message Date
Bram Moolenaar
74a0a5b26d patch 8.2.4338: an error from an expression mapping messes up the display
Problem:    An error from an expression mapping messes up the display.
Solution:   When the expression results in an empty string return K_IGNORE.
            In cmdline mode redraw the command line. (closes #9726)
2022-02-10 14:07:41 +00:00
Bram Moolenaar
9da17d7c57 Update runtime files 2022-02-09 21:50:44 +00:00
=?UTF-8?q?Dundar=20G=C3=B6c?=
78a8404f8b patch 8.2.4337: part of condition is always true
Problem:    Part of condition is always true.
Solution:   Remove that part of the condition. (closes #9729)
2022-02-09 15:20:39 +00:00
Bram Moolenaar
769f5895eb patch 8.2.4336: using :filter for :scriptnames does not work
Problem:    Using :filter for :scriptnames does not work. (Ben Jackson)
Solution:   Call message_filtered(). (closes #9720)
2022-02-09 14:31:05 +00:00
Bram Moolenaar
28e8f73ae2 patch 8.2.4335: no autocommand event triggered before changing directory
Problem:    No autocommand event triggered before changing directory. (Ronnie
            Magatti)
Solution:   Add DirChangedPre. (closes #9721)
2022-02-09 12:58:20 +00:00
rbtnn
68cc2b8a37 patch 8.2.4334: command line popup menu not positioned correctly
Problem:    Command line popup menu not positioned correctly.
Solution:   Also use vim_strsize() on the existing text. (Naruhiko Nishino,
            closes #9727)
2022-02-09 11:55:47 +00:00
Bram Moolenaar
b6a138eb33 patch 8.2.4333: cstack not always passed to where it is needed
Problem:    cstack not always passed to where it is needed.
Solution:   Pass ctack through functions.
2022-02-08 21:17:22 +00:00
Bram Moolenaar
dce2441a60 patch 8.2.4332: Vim9: incomplete test for existing script variable in block
Problem:    Vim9: incomplete test for existing script variable in block.
Solution:   Add a couple more tests.  Fix uncovered problem.
2022-02-08 20:35:30 +00:00
Bram Moolenaar
3a5988c025 patch 8.2.4331: Vim9: no test for existing script variable in block
Problem:    Vim9: no test for existing script variable in block.
Solution:   Add a test.
2022-02-08 19:23:35 +00:00
Bram Moolenaar
779aeff5c3 patch 8.2.4330: Vim9: no error if script imports itself
Problem:    Vim9: no error if script imports itself.
Solution:   Give an error when a script imports itself.
2022-02-08 19:12:19 +00:00
haya14busa
e023d49937 patch 8.2.4329: no support for end line number and column in 'errorformat'
Problem:    No support for end line number and column in 'errorformat'.
Solution:   Add %e and %k. (closes #9624)
2022-02-08 18:09:29 +00:00
Bram Moolenaar
73a16c22a4 patch 8.2.4328: command line complete matches cleard when typing character
Problem:    Command line complete matches cleard when typing character.
            (Dominique Pellé)
Solution:   Only remove a popup menu if there is one.
2022-02-08 17:40:36 +00:00
Bram Moolenaar
e3537aec2f patch 8.2.4327: may end up with no current buffer
Problem:    May end up with no current buffer.
Solution:   When deleting the current buffer to not pick a quickfix buffer as
            the new current buffer.
2022-02-08 15:05:20 +00:00
zeertzjq
51ab7c7d0d patch 8.2.4326: "o" and "O" copying comment not sufficiently tested
Problem:    "o" and "O" copying comment not sufficiently tested.
Solution:   Add a test case. (closes #9718)
2022-02-08 12:58:37 +00:00
Yegappan Lakshmanan
3908ef5017 patch 8.2.4325: 'wildmenu' only shows few matches
Problem:    'wildmenu' only shows few matches.
Solution:   Add the "pum" option: use a popup menu to show the matches.
            (Yegappan Lakshmanan et al., closes #9707)
2022-02-08 12:08:07 +00:00
Bram Moolenaar
3787f26c2e patch 8.2.4324: Vim9: script-local function name can start with "_"
Problem:    Vim9: script-local function name can start with "_".
Solution:   Check for leading capital after "s:".  Correct error message.
2022-02-07 21:54:01 +00:00
Bram Moolenaar
f681cfb90b patch 8.2.4323: Vim9: nested function name can start with "_"
Problem:    Vim9: nested function name can start with "_".
Solution:   Use same rule for function name for nested functions.
            (closes #9713)
2022-02-07 20:30:57 +00:00
Bram Moolenaar
7aca5ca676 patch 8.2.4322: Vim9: crash when using funcref with closure
Problem:    Vim9: crash when using funcref with closure.
Solution:   Keep a reference to the funcref that has the outer context.
            (closes #9716)
2022-02-07 19:56:43 +00:00
Bram Moolenaar
92368aad61 patch 8.2.4321: Vim9: crash when using a funcref to a closure
Problem:    Vim9: crash when using a funcref to a closure.
Solution:   Copy pt_outer to the new partial. (closes #9714)
2022-02-07 17:50:39 +00:00
qsmodo
28f1a51bde patch 8.2.4320: Athena and Motif: when maximized scrollbar position is wrong
Problem:    Athena and Motif: when maximized scrollbar position is wrong.
Solution:   Implement the scrollbar padding functions. (closes #9712)
2022-02-07 15:57:50 +00:00
Bram Moolenaar
4e713bafc0 patch 8.2.4319: :put does not work properly in compiled function
Problem:    :put does not work properly in compiled function. (John Beckett)
Solution:   Adjust the direction when using line zero.
2022-02-07 15:31:37 +00:00
Bram Moolenaar
54969f4ef5 patch 8.2.4318: various comment and indent mistakes, returning wrong zero
Problem:    Various comment and indent mistakes, returning wrong zero.
Solution:   Fix the mistakes.  Return NULL instead of FAIL.
2022-02-07 13:56:44 +00:00
Bram Moolenaar
63ff72aab9 patch 8.2.4317: MS-Windows: Vim exits when Python 3 initialisation fails
Problem:    MS-Windows: Vim exits when Python 3 initialisation fails.
Solution:   Hook into the exit() function to recover from the failure.
            (Ken Takata, closes #9710)
2022-02-07 13:54:01 +00:00
K.Takata
b247e0622e patch 8.2.4316: __CYGWIN32__ is not defined on 64 bit systems
Problem:    __CYGWIN32__ is not defined on 64 bit systems.
Solution:   Update #ifdefs. (Ken Takata, closes #9709)
2022-02-07 10:45:23 +00:00
zeertzjq
6bf821e8ab patch 8.2.4315: put in Visual mode not fully tested
Problem:    Put in Visual mode not fully tested.
Solution:   Add a few more test cases. (closes #9708)
2022-02-07 10:33:20 +00:00
Bram Moolenaar
8cbf249917 patch 8.2.4314: test fails where lines are skipped
Problem:    Test fails where lines are skipped.
Solution:   Only give an error when not skipping commands.
2022-02-06 20:28:13 +00:00
Bram Moolenaar
5f4ef5f5e5 patch 8.2.4313: Vim9: cannot change type of list after making a slice
Problem:    Vim9: cannot change type of list after making a slice.
Solution:   Adjust the declared member type. (closes #9696)
2022-02-06 18:36:53 +00:00
Bram Moolenaar
107f7325f6 patch 8.2.4312: no error for using :vim9script in a :def function
Problem:    No error for using :vim9script in a :def function.
Solution:   Give an error when compiling.
2022-02-06 17:30:41 +00:00
Bram Moolenaar
160afdb185 patch 8.2.4311: Vim9: changing script variable type not caught compile time
Problem:    Vim9: changing script variable type not caught at compile time.
Solution:   Set the declared type.
2022-02-06 17:17:02 +00:00
Bram Moolenaar
2626d6a71c patch 8.2.4310: Vim9: constant list and dict get a declaration type
Problem:    Vim9: constant list and dict get a declaration type other than
            "any".
Solution:   A constant list and dict have a declared member type "any".
            (closes #9701)
2022-02-06 15:49:35 +00:00
Bram Moolenaar
fe1bfc9b26 patch 8.2.4309: Vim9: crash when using a partial in the wrong context
Problem:    Vim9: crash when using a partial in the wrong context.
Solution:   Don't use an NULL outer pointer. (closes #9706)
2022-02-06 13:55:03 +00:00
Bram Moolenaar
8164f6ea3c patch 8.2.4308: Vim9: cannot list autoload function
Problem:    Vim9: cannot list autoload function.
Solution:   Don't give an error for using # when listing a function.
            (closes #9703)
2022-02-06 13:08:41 +00:00
Bram Moolenaar
0c1550d9e9 patch 8.2.4307: a few more messages should not be translated
Problem:    A few more messages should not be translated.
Solution:   Remove _().
2022-02-06 11:41:57 +00:00
Bram Moolenaar
500761b1cf patch 8.2.4306: no test for fixed perl filetype check
Problem:    No test for fixed perl filetype check.
Solution:   Add a test. Sort test functions.
2022-02-05 20:23:59 +00:00
Bram Moolenaar
e5b7897585 patch 8.2.4305: tex filetype detection fails
Problem:    Tex filetype detection fails.
Solution:   Check value to be positive. (closes #9704)
2022-02-05 19:50:34 +00:00
Bram Moolenaar
00eb99528e patch 8.2.4304: Vim9: slice() makes a copy but doesn't change the type
Problem:    Vim9: slice() makes a copy but doesn't change the type.
Solution:   Change the declared type like copy(). (closes #9696)
2022-02-05 19:23:18 +00:00
Dominique Pelle
cd53eed2c5 patch 8.2.4303: a few messages should not be translated
Problem:    A few messages should not be translated.
Solution:   Remove _(). (Dominique Pellé, closes #9702)
2022-02-05 18:53:06 +00:00
Bram Moolenaar
82e46e5d31 patch 8.2.4302: Vim9: return type of getline() is too strict
Problem:    Vim9: return type of getline() is too strict.
Solution:   Make the declared type list<any>.  Also do this for other
            functions returning a list of a specific type.
2022-02-05 18:12:34 +00:00
Bram Moolenaar
e0c2b2ceaa patch 8.2.4301: Vim9: type error for copy of dict
Problem:    Vim9: type error for copy of dict.
Solution:   Do not use dict<any> but no type. (closes #9696)
2022-02-05 14:05:51 +00:00
Bram Moolenaar
4fa1346bf4 patch 8.2.4300: cannot build tiny version
Problem:    Cannot build tiny version. (Tony Mechelynck)
Solution:   Add #ifdef.
2022-02-05 12:39:24 +00:00
Bram Moolenaar
46f3080e5c patch 8.2.4299: SafeState autocommand interferes with debugging
Problem:    SafeState autocommand interferes with debugging.
Solution:   Do not trigger SafeState while debugging. (closes #9697)
2022-02-05 12:10:52 +00:00
Bram Moolenaar
fc88df42f1 patch 8.2.4298: divide by zero with huge tabstop value
Problem:    Divide by zero with huge tabstop value.
Solution:   Reject tabstop value that overflows to zero.
2022-02-05 11:13:05 +00:00
Bram Moolenaar
21ebb0899e patch 8.2.4297: Vim9: not all code covered by tests
Problem:    Vim9: not all code covered by tests.
Solution:   Add a couple more tests.
2022-02-04 21:58:58 +00:00
Bram Moolenaar
83d0cec956 patch 8.2.4296: Vim9: not all code covered by tests
Problem:    Vim9: not all code covered by tests.
Solution:   Add a few more tests for corner cases.  Fix hang when single quote
            is missing.
2022-02-04 21:17:58 +00:00
Bram Moolenaar
3e79c97c18 Update runtime files; use compiled functions 2022-02-04 19:48:06 +00:00
Bram Moolenaar
a2baa73d1d Update runtime files. 2022-02-04 16:09:54 +00:00
Bram Moolenaar
46950b225f patch 8.2.4295: Vim9: concatenating two lists may result in wrong type
Problem:    Vim9: concatenating two lists may result in wrong type.
Solution:   Remove the type instead of using list<any>. (closes #9692)
2022-02-04 11:36:51 +00:00
K.Takata
972db23279 patch 8.2.4294: MS-Windows: #ifdefs for Cygwin are too complicated
Problem:    MS-Windows: #ifdefs for Cygwin are too complicated.
Solution:   Simplify the conditions. (Ken Takata, closes #9693)
2022-02-04 10:45:38 +00:00
Bram Moolenaar
7676c15879 patch 8.2.4293: Vim9: when copying a list it gets type list<any>
Problem:    Vim9: when copying a list it gets type list<any> even when the
            original list did not have a type.
Solution:   Only set the type when the original list has a type. (closes #9692)
2022-02-03 21:47:34 +00:00
Bram Moolenaar
02a977ea5e patch 8.2.4292: test fails
Problem:    Test fails.
Solution:   Adjust the expected error number.
2022-02-03 21:29:39 +00:00
Bram Moolenaar
5658ca343f patch 8.2.4291: error number used twice
Problem:    Error number used twice.
Solution:   Renumber of of the errors.
2022-02-03 20:09:19 +00:00
K.Takata
a8ec4916ca patch 8.2.4290: MS-Windows: using type casts for timer IDs
Problem:    MS-Windows: using type casts for timer IDs.
Solution:   Remove type casts and use the right type. (Ken Takata,
            closes #9690)  Remove old debug comments.  Rename variables and
            functions.
2022-02-03 14:32:33 +00:00
K.Takata
5411910c77 patch 8.2.4289: warnings reported by MSVC
Problem:    Warnings reported by MSVC.
Solution:   Rename variables and other fixes. (Ken Takata, closes #9689)
2022-02-03 13:33:03 +00:00
K.Takata
6e1d31e9e3 patch 8.2.4288: preprocessor indents are inconsistent
Problem:    Preprocessor indents are inconsistent.
Solution:   Fix preprocessor indents. (Ken Takata, closes #9691)
2022-02-03 13:05:32 +00:00
Bram Moolenaar
2d3ac2e030 patch 8.2.4287: cannot assign empty list with type to variable with list type
Problem:    Cannot assign empty list with any list type to variable with
            specific list type.
Solution:   Use unknown list type for empty list if the specified type is any.
2022-02-03 12:34:05 +00:00
Bram Moolenaar
381692b6f1 patch 8.2.4286: Vim9: strict type checking after copy() and deepcopy()
Problem:    Vim9: strict type checking after copy() and deepcopy().
Solution:   Allow type to change after making a copy. (closes #9644)
2022-02-02 20:01:27 +00:00
Bram Moolenaar
a1c5195180 patch 8.2.4285: Vim9: type of item in for loop not checked properly
Problem:    Vim9: type of item in for loop not checked properly.
Solution:   Adjust the type checking. (closes #9683)
2022-02-02 16:20:26 +00:00
ichizok
ab8f7c50cf patch 8.2.4284: old mac resources files are no longer used
Problem:    Old mac resources files are no longer used.
Solution:   Delete the unused files. (Ozaki Kiichi, closes #9688)
2022-02-02 15:19:38 +00:00
zeertzjq
73257149d7 patch 8.2.4283: using a variable for the return value is not needed
Problem:    Using a variable for the return value is not needed.
Solution:   Return the value directly. (closes #9687)
2022-02-02 13:16:37 +00:00
219 changed files with 10641 additions and 6865 deletions

View File

@@ -663,10 +663,7 @@ SRC_HAIKU = \
# source files for the Mac (also in the extra archive)
SRC_MAC = \
src/INSTALLmac.txt \
src/dehqx.py \
src/os_mac_rsrc/*.icns \
src/os_mac.h \
src/os_mac.rsr.hqx \
src/os_mac_conv.c \
src/os_macosx.m \
src/proto/os_mac_conv.pro \
@@ -704,7 +701,6 @@ SRC_EXTRA = \
$(SRC_QNX) \
$(SRC_VMS) \
README_os390.txt \
src/infplist.xml \
src/link.390 \
src/os_vms_fix.com \
src/toolbar.phi \

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
*autocmd.txt* For Vim version 8.2. Last change: 2022 Jan 21
*autocmd.txt* For Vim version 8.2. Last change: 2022 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -326,6 +326,7 @@ Name triggered by ~
|FileChangedRO| before making the first change to a read-only file
|DiffUpdated| after diffs have been updated
|DirChangedPre| before the working directory will change
|DirChanged| after the working directory has changed
|ShellCmdPost| after executing a shell command
@@ -738,6 +739,11 @@ DiffUpdated After diffs have been updated. Depending on
what kind of diff is being used (internal or
external) this can be triggered on every
change or when doing |:diffupdate|.
*DirChangedPre*
DirChangedPre The working directory is going to be changed,
as with |DirChanged|. The pattern is like
with |DirChanged|. The new directory can be
found in v:event.directory.
*DirChanged*
DirChanged The working directory has changed in response
to the |:cd| or |:tcd| or |:lcd| commands, or

View File

@@ -1,4 +1,4 @@
*builtin.txt* For Vim version 8.2. Last change: 2022 Jan 28
*builtin.txt* For Vim version 8.2. Last change: 2022 Feb 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1885,12 +1885,13 @@ digraph_getlist([{listall}]) *digraph_getlist()*
display an error message.
digraph_set({chars}, {digraph}) *digraph_set()* *E1205*
digraph_set({chars}, {digraph}) *digraph_set()*
Add digraph {chars} to the list. {chars} must be a string
with two characters. {digraph} is a string with one UTF-8
encoded character. Be careful, composing characters are NOT
ignored. This function is similar to |:digraphs| command, but
useful to add digraphs start with a white space.
encoded character. *E1215*
Be careful, composing characters are NOT ignored. This
function is similar to |:digraphs| command, but useful to add
digraphs start with a white space.
The function result is v:true if |digraph| is registered. If
this fails an error message is given and v:false is returned.
@@ -1913,7 +1914,7 @@ digraph_setlist({digraphlist}) *digraph_setlist()*
Similar to |digraph_set()| but this function can add multiple
digraphs at once. {digraphlist} is a list composed of lists,
where each list contains two strings with {chars} and
{digraph} as in |digraph_set()|.
{digraph} as in |digraph_set()|. *E1216*
Example: >
call digraph_setlist([['aa', 'あ'], ['ii', 'い']])
<
@@ -2531,7 +2532,7 @@ flatten({list} [, {maxdepth}]) *flatten()*
The {list} is changed in place, use |flattennew()| if you do
not want that.
In Vim9 script flatten() cannot be used, you must always use
|flattennew()|. *E1158*
|flattennew()|.
*E900*
{maxdepth} means how deep in nested lists changes are made.
{list} is not modified when {maxdepth} is 0.
@@ -3751,7 +3752,7 @@ getreg([{regname} [, 1 [, {list}]]]) *getreg()*
:let cliptext = getreg('*')
< When register {regname} was not set the result is an empty
string.
The {regname} argument must be a string.
The {regname} argument must be a string. *E1162*
getreg('=') returns the last evaluated value of the expression
register. (For use in maps.)
@@ -4669,9 +4670,11 @@ islocked({expr}) *islocked()* *E786*
:echo islocked('alist') " 1
:echo islocked('alist[1]') " 0
< When {expr} is a variable that does not exist you get an error
message. Use |exists()| to check for existence.
In Vim9 script it does not work for local variables.
< When {expr} is a variable that does not exist -1 is returned.
If {expr} uses a range, list or dict index that is out of
range or does not exist you get an error message. Use
|exists()| to check for existence.
In Vim9 script it does not work for local function variables.
Can also be used as a |method|: >
GetName()->islocked()
@@ -4783,7 +4786,7 @@ json_encode({expr}) *json_encode()*
Encode {expr} as JSON and return this as a string.
The encoding is specified in:
https://tools.ietf.org/html/rfc7159.html
Vim values are converted as follows:
Vim values are converted as follows: *E1161*
|Number| decimal number
|Float| floating point number
Float nan "NaN"
@@ -4897,7 +4900,7 @@ libcallnr({libname}, {funcname}, {argument})
line({expr} [, {winid}]) *line()*
The result is a Number, which is the line number of the file
position given with {expr}. The {expr} argument is a string.
The accepted positions are:
The accepted positions are: *E1209*
. the cursor position
$ the last line in the current buffer
'x position of mark x (if the mark is not set, 0 is
@@ -7644,10 +7647,12 @@ setqflist({list} [, {action} [, {what}]]) *setqflist()*
module name of a module; if given it will be used in
quickfix error window instead of the filename.
lnum line number in the file
end_lnum end of lines, if the item spans multiple lines
pattern search pattern used to locate the error
col column number
vcol when non-zero: "col" is visual column
when zero: "col" is byte index
end_col end column, if the item spans multiple columns
nr error number
text description of the error
type single-character error type, 'E', 'W', etc.

View File

@@ -1,4 +1,4 @@
*change.txt* For Vim version 8.2. Last change: 2022 Jan 28
*change.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -782,7 +782,7 @@ This deletes "TESTING" from all lines, but only one per line.
For compatibility with Vi these two exceptions are allowed:
"\/{string}/" and "\?{string}?" do the same as "//{string}/r".
"\&{string}&" does the same as "//{string}/".
*pattern-delimiter* *E146*
*pattern-delimiter* *E146* *E1241* *E1242*
Instead of the '/' which surrounds the pattern and replacement string, you can
use another single-byte character. This is useful if you want to include a
'/' in the search pattern or replacement string. Example: >
@@ -1076,7 +1076,7 @@ inside of strings can change! Also see 'softtabstop' option. >
in [range] (default: current line |cmdline-ranges|),
[into register x].
*p* *put* *E353*
*p* *put* *E353* *E1240*
["x]p Put the text [from register x] after the cursor
[count] times.

View File

@@ -1,4 +1,4 @@
*cmdline.txt* For Vim version 8.2. Last change: 2022 Jan 08
*cmdline.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -730,7 +730,7 @@ If more line specifiers are given than required for the command, the first
one(s) will be ignored.
Line numbers may be specified with: *:range* *{address}*
{number} an absolute line number
{number} an absolute line number *E1247*
. the current line *:.*
$ the last line in the file *:$*
% equal to 1,$ (the entire file) *:%*

View File

@@ -1,4 +1,4 @@
*editing.txt* For Vim version 8.2. Last change: 2022 Jan 21
*editing.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -633,7 +633,7 @@ list of the current window.
Also see |++opt| and |+cmd|.
:[count]arga[dd] {name} .. *:arga* *:argadd* *E479*
:[count]arga[dd]
:[count]arga[dd] *E1156*
Add the {name}s to the argument list. When {name} is
omitted add the current buffer name to the argument
list.
@@ -1772,10 +1772,8 @@ There are three different types of searching:
/u/user_x/include
< Note: If your 'path' setting includes a non-existing directory, Vim will
skip the non-existing directory, but continues searching in the parent of
the non-existing directory if upwards searching is used. E.g. when
searching "../include" and that doesn't exist, and upward searching is
used, also searches in "..".
skip the non-existing directory, and also does not search in the parent of
the non-existing directory if upwards searching is used.
3) Combined up/downward search:
If Vim's current path is /u/user_x/work/release and you do >

View File

@@ -1,4 +1,4 @@
*eval.txt* For Vim version 8.2. Last change: 2022 Jan 24
*eval.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -181,7 +181,7 @@ You will not get an error if you try to change the type of a variable.
1.2 Function references ~
*Funcref* *E695* *E718* *E1086*
*Funcref* *E695* *E718* *E1086* *E1192*
A Funcref variable is obtained with the |function()| function, the |funcref()|
function or created with the lambda expression |expr-lambda|. It can be used
in an expression in the place of a function name, before the parenthesis
@@ -765,7 +765,7 @@ length minus one is used: >
Blob modification ~
*blob-modification*
*blob-modification* *E1182* *E1184*
To change a specific byte of a blob use |:let| this way: >
:let blob[4] = 0x44
@@ -1018,7 +1018,7 @@ This is valid whether "b" has been defined or not. The second clause will
only be evaluated if "b" has been defined.
expr4 *expr4*
expr4 *expr4* *E1153*
-----
expr5 {cmp} expr5
@@ -1176,6 +1176,7 @@ When dividing a Number by zero the result depends on the value:
>0 / 0 = 0x7fffffff (like positive infinity)
<0 / 0 = -0x7fffffff (like negative infinity)
(before Vim 7.2 it was always 0x7fffffff)
In |Vim9| script dividing a number by zero is an error. *E1154*
When 64-bit Number support is enabled:
0 / 0 = -0x8000000000000000 (like NaN for Float)
@@ -1243,7 +1244,7 @@ recognize multibyte encodings, see `byteidx()` for an alternative, or use
byte under the cursor: >
:let c = getline(".")[col(".") - 1]
In |Vim9| script:
In |Vim9| script: *E1147* *E1148*
If expr9 is a String this results in a String that contains the expr1'th
single character (including any composing characters) from expr9. To use byte
indexes use |strpart()|.
@@ -1323,7 +1324,7 @@ for a sublist: >
expr9.name entry in a |Dictionary| *expr-entry*
*E1203* *E1229*
If expr9 is a |Dictionary| and it is followed by a dot, then the following
name will be used as a key in the |Dictionary|. This is just like:
expr9[name].
@@ -1350,7 +1351,7 @@ When expr9 is a |Funcref| type variable, invoke the function it refers to.
expr9->name([args]) method call *method* *->*
expr9->{lambda}([args])
*E260* *E276*
*E260* *E276* *E1265*
For methods that are also available as global functions this is the same as: >
name(expr9 [, args])
There can also be methods specifically for the type of "expr9".
@@ -1550,7 +1551,7 @@ When using the '=' register you get the expression itself, not what it
evaluates to. Use |eval()| to evaluate it.
nesting *expr-nesting* *E110*
nesting *expr-nesting* *E110*
-------
(expr1) nested expression
@@ -2694,7 +2695,7 @@ See |:verbose-cmd| for more information.
implies that the effect of |:nohlsearch| is undone
when the function returns.
*:endf* *:endfunction* *E126* *E193* *W22*
*:endf* *:endfunction* *E126* *E193* *W22* *E1151*
:endf[unction] [argument]
The end of a function definition. Best is to put it
on a line by its own, without [argument].
@@ -3074,7 +3075,7 @@ declarations and assignments do not use a command. |vim9-declaration|
length of the blob, in which case one byte is
appended.
*E711* *E719*
*E711* *E719* *E1165* *E1166* *E1183*
:let {var-name}[{idx1}:{idx2}] = {expr1} *E708* *E709* *E710*
Set a sequence of items in a |List| to the result of
the expression {expr1}, which must be a list with the
@@ -3410,7 +3411,7 @@ text...
See |deepcopy()|.
:unlo[ckvar][!] [depth] {name} ... *:unlockvar* *:unlo*
:unlo[ckvar][!] [depth] {name} ... *:unlockvar* *:unlo* *E1246*
Unlock the internal variable {name}. Does the
opposite of |:lockvar|.
@@ -3471,7 +3472,7 @@ text...
:endfo[r] *:endfo* *:endfor*
Repeat the commands between ":for" and ":endfor" for
each item in {object}. {object} can be a |List| or
a |Blob|.
a |Blob|. *E1177*
Variable {var} is set to the value of each item.
In |Vim9| script the loop variable must not have been
@@ -3725,6 +3726,9 @@ text...
the `append()` call appends the List with text to the
buffer. This is similar to `:call` but works with any
expression.
In |Vim9| script an expression without an effect will
result in error *E1207* . This should help noticing
mistakes.
The command can be shortened to `:ev` or `:eva`, but
these are hard to recognize and therefore not to be
@@ -4892,6 +4896,9 @@ explicit the |:scriptversion| command can be used. When a Vim script is not
compatible with older versions of Vim this will give an explicit error,
instead of failing in mysterious ways.
When using a legacy function, defined with `:function`, in |Vim9| script then
scriptversion 4 is used.
*scriptversion-1* >
:scriptversion 1
< This is the original Vim script, same as not using a |:scriptversion|

View File

@@ -142,7 +142,8 @@ variables can be used to overrule the filetype used for certain extensions:
*.asm g:asmsyntax |ft-asm-syntax|
*.asp g:filetype_asp |ft-aspvbs-syntax| |ft-aspperl-syntax|
*.bas g:filetype_bas |ft-basic-syntax|
*.fs g:filetype_fs |ft-forth-syntax|
*.frm g:filetype_frm |ft-form-syntax|
*.fs g:filetype_fs |ft-forth-syntax|
*.i g:filetype_i |ft-progress-syntax|
*.inc g:filetype_inc
*.m g:filetype_m |ft-mathematica-syntax|

View File

@@ -1,4 +1,4 @@
*if_pyth.txt* For Vim version 8.2. Last change: 2021 Nov 12
*if_pyth.txt* For Vim version 8.2. Last change: 2022 Feb 07
VIM REFERENCE MANUAL by Paul Moore
@@ -65,7 +65,7 @@ There is no need to import sys, it's done by default.
*python-environment*
Environment variables set in Vim are not always available in Python. This
depends on how Vim and Python were build. Also see
depends on how Vim and Python were built. Also see
https://docs.python.org/3/library/os.html#os.environ
Note: Python is very sensitive to the indenting. Make sure the "class" line
@@ -834,6 +834,19 @@ To work around such problems there are these options:
Raising SystemExit exception in python isn't endorsed way to quit vim, use: >
:py vim.command("qall!")
<
*E1266*
This error can occur when python 3 cannot load the required modules. This
means that your python 3 is not correctly installed or there are some mistakes
in your settings. Please check the following items:
1. Make sure that python 3 is correctly installed. Also check the version of
python.
2. Check the 'pythonthreedll' option.
3. Check the 'pythonthreehome' option.
4. Check the PATH environment variable if you don't set 'pythonthreedll'.
On MS-Windows, you can use where.exe to check which dll will be loaded.
E.g. >
where.exe python310.dll
5. Check the PYTHONPATH and PYTHONHOME environment variables.
*has-python*
You can test what Python version is available with: >

View File

@@ -1,4 +1,4 @@
*index.txt* For Vim version 8.2. Last change: 2022 Jan 28
*index.txt* For Vim version 8.2. Last change: 2022 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1152,7 +1152,7 @@ tag command action ~
|:&| :& repeat last ":substitute"
|:star| :* execute contents of a register
|:<| :< shift lines one 'shiftwidth' left
|:=| := print the cursor line number
|:=| := print the last line number
|:>| :> shift lines one 'shiftwidth' right
|:@| :@ execute contents of a register
|:@@| :@@ repeat the previous ":@"

View File

@@ -1,4 +1,4 @@
*options.txt* For Vim version 8.2. Last change: 2022 Jan 29
*options.txt* For Vim version 8.2. Last change: 2022 Feb 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -800,6 +800,7 @@ A jump table for the options with a short description can be found at |Q_op|.
need proper setting-up, so whenever the shell's pwd changes an OSC 7
escape sequence will be emitted. For example, on Linux, you can source
/etc/profile.d/vte.sh in your shell profile if you use bash or zsh.
When the parsing of the OSC sequence fails you get *E1179* .
*'arabic'* *'arab'* *'noarabic'* *'noarab'*
'arabic' 'arab' boolean (default off)
@@ -2476,7 +2477,7 @@ A jump table for the options with a short description can be found at |Q_op|.
you write the file the encrypted bytes will be
different. The whole undo file is encrypted, not just
the pieces of text.
*E1193* *E1194* *E1195* *E1196*
*E1193* *E1194* *E1195* *E1196* *E1230*
*E1197* *E1198* *E1199* *E1200* *E1201*
xchacha20 XChaCha20 Cipher with Poly1305 Message Authentication
Code. Medium strong till strong encryption.
@@ -6723,6 +6724,9 @@ A jump table for the options with a short description can be found at |Q_op|.
See |option-backslash| about including spaces and backslashes.
Environment variables are expanded |:set_env|.
In |restricted-mode| shell commands will not be possible. This mode
is used if the value of $SHELL ends in "false" or "nologin".
If the name of the shell contains a space, you need to enclose it in
quotes and escape the space. Example with quotes: >
:set shell=\"c:\program\ files\unix\sh.exe\"\ -f
@@ -8970,7 +8974,8 @@ A jump table for the options with a short description can be found at |Q_op|.
mode. On pressing 'wildchar' (usually <Tab>) to invoke completion,
the possible matches are shown just above the command line, with the
first match highlighted (overwriting the status line, if there is
one). Keys that show the previous/next match, such as <Tab> or
one). This is the behavior without "pum" in 'wildoptions.
Keys that show the previous/next match, such as <Tab> or
CTRL-P/CTRL-N, cause the highlight to move to the appropriate match.
When 'wildmode' is used, "wildmenu" mode is used where "full" is
specified. "longest" and "list" do not start "wildmenu" mode.
@@ -8978,10 +8983,12 @@ A jump table for the options with a short description can be found at |Q_op|.
If there are more matches than can fit in the line, a ">" is shown on
the right and/or a "<" is shown on the left. The status line scrolls
as needed.
When 'wildoptions' contains "pum", then the completion matches are
shown in a popup menu.
The "wildmenu" mode is abandoned when a key is hit that is not used
for selecting a completion.
While the "wildmenu" is active the following keys have special
meanings:
While the "wildmenu" is active, not using the popup menu, the
following keys have special meanings:
<Left> <Right> - select previous/next match (like CTRL-P/CTRL-N)
<Down> - in filename/menu name completion: move into a
@@ -8991,6 +8998,21 @@ A jump table for the options with a short description can be found at |Q_op|.
<Up> - in filename/menu name completion: move up into
parent directory or parent menu.
When using the popup menu for command line completion, the following
keys have special meanings:
<Down> - select next match (like CTRL-N)
<Left> - in filename/menu name completion: move up into
parent directory or parent menu.
<Right> - in filename/menu name completion: move into a
subdirectory or submenu.
<Up> - select previous match (like CTRL-P)
CTRL-E - end completion, go back to what was there before
selecting a match.
CTRL-N - go to the next entry
CTRL-P - go to the previous entry
CTRL-Y - accept the currently selected match and stop
completion.
This makes the menus accessible from the console |console-menus|.
If you prefer the <Left> and <Right> keys to move the cursor instead
@@ -9053,14 +9075,15 @@ A jump table for the options with a short description can be found at |Q_op|.
global
{not available when compiled without the |+wildignore|
feature}
A list of words that change how command line completion is done.
Currently only one word is allowed:
A list of words that change how |cmdline-completion| is done.
The following values are supported:
pum Display the completion matches using the popupmenu
in the same style as the |ins-completion-menu|.
tagfile When using CTRL-D to list matching tags, the kind of
tag and the file of the tag is listed. Only one match
is displayed per line. Often used tag kinds are:
d #define
f function
Also see |cmdline-completion|.
*'winaltkeys'* *'wak'*
'winaltkeys' 'wak' string (default "menu")

View File

@@ -1,4 +1,4 @@
*pattern.txt* For Vim version 8.2. Last change: 2022 Jan 08
*pattern.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -925,7 +925,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
becomes invalid. Vim doesn't automatically update the matches.
Similar to moving the cursor for "\%#" |/\%#|.
*/\%l* */\%>l* */\%<l* *E951*
*/\%l* */\%>l* */\%<l* *E951* *E1204*
\%23l Matches in a specific line.
\%<23l Matches above a specific line (lower line number).
\%>23l Matches below a specific line (higher line number).

View File

@@ -1,4 +1,4 @@
*quickfix.txt* For Vim version 8.2. Last change: 2022 Jan 04
*quickfix.txt* For Vim version 8.2. Last change: 2022 Feb 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1385,12 +1385,17 @@ Basic items
%f file name (finds a string)
%o module name (finds a string)
%l line number (finds a number)
%e end line number (finds a number)
%c column number (finds a number representing character
column of the error, byte index, a <tab> is 1
character column)
%v virtual column number (finds a number representing
screen column of the error (1 <tab> == 8 screen
columns))
%k end column number (finds a number representing
the character column of the error, byte index, or a
number representing screen end column of the error if
it's used with %v)
%t error type (finds a single character):
e - error message
w - warning message

View File

@@ -1,4 +1,4 @@
*starting.txt* For Vim version 8.2. Last change: 2022 Jan 20
*starting.txt* For Vim version 8.2. Last change: 2022 Feb 01
VIM REFERENCE MANUAL by Bram Moolenaar

View File

@@ -1,4 +1,4 @@
*syntax.txt* For Vim version 8.2. Last change: 2021 Nov 20
*syntax.txt* For Vim version 8.2. Last change: 2022 Feb 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -215,7 +215,8 @@ A syntax group name doesn't specify any color or attributes itself.
The name for a highlight or syntax group must consist of ASCII letters, digits
and the underscore. As a regexp: "[a-zA-Z0-9_]*". However, Vim does not give
an error when using other characters.
an error when using other characters. The maxium length of a group name is
about 200 bytes. *E1249*
To be able to allow each user to pick their favorite set of colors, there must
be preferred names for highlight groups that are common for many languages.
@@ -1536,6 +1537,14 @@ The enhanced mode also takes advantage of additional color features for a dark
gvim display. Here, statements are colored LightYellow instead of Yellow, and
conditionals are LightBlue for better distinction.
Both Visual Basic and FORM use the extension ".frm". To detect which one
should be used, Vim checks for the string "VB_Name" in the first five lines of
the file. If it is found, filetype will be "vb", otherwise "form".
If the automatic detection doesn't work for you or you only edit, for
example, FORM files, use this in your startup vimrc: >
:let filetype_frm = "form"
FORTH *forth.vim* *ft-forth-syntax*
@@ -3704,12 +3713,13 @@ DEFINING CASE *:syn-case* *E390*
items until the next ":syntax case" command are affected.
:sy[ntax] case
Show either "syntax case match" or "syntax case ignore" (translated).
Show either "syntax case match" or "syntax case ignore".
DEFINING FOLDLEVEL *:syn-foldlevel*
:sy[ntax] foldlevel [start | minimum]
:sy[ntax] foldlevel start
:sy[ntax] foldlevel minimum
This defines how the foldlevel of a line is computed when using
foldmethod=syntax (see |fold-syntax| and |:syn-fold|):
@@ -3722,13 +3732,16 @@ DEFINING FOLDLEVEL *:syn-foldlevel*
may close and open horizontally within a line.
:sy[ntax] foldlevel
Show either "syntax foldlevel start" or "syntax foldlevel minimum".
Show the current foldlevel method, either "syntax foldlevel start" or
"syntax foldlevel minimum".
{not meaningful when Vim was compiled without |+folding| feature}
SPELL CHECKING *:syn-spell*
:sy[ntax] spell [toplevel | notoplevel | default]
:sy[ntax] spell toplevel
:sy[ntax] spell notoplevel
:sy[ntax] spell default
This defines where spell checking is to be done for text that is not
in a syntax item:
@@ -3743,8 +3756,8 @@ SPELL CHECKING *:syn-spell*
To activate spell checking the 'spell' option must be set.
:sy[ntax] spell
Show either "syntax spell toplevel", "syntax spell notoplevel" or
"syntax spell default" (translated).
Show the current syntax spell checking method, either "syntax spell
toplevel", "syntax spell notoplevel" or "syntax spell default".
SYNTAX ISKEYWORD SETTING *:syn-iskeyword*
@@ -4343,7 +4356,7 @@ IMPLICIT CONCEAL *:syn-conceal-implicit*
given explicitly.
:sy[ntax] conceal
Show either "syntax conceal on" or "syntax conceal off" (translated).
Show either "syntax conceal on" or "syntax conceal off".
==============================================================================
8. Syntax patterns *:syn-pattern* *E401* *E402*

View File

@@ -1,4 +1,4 @@
*tabpage.txt* For Vim version 8.2. Last change: 2020 Oct 14
*tabpage.txt* For Vim version 8.2. Last change: 2022 Feb 02
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -143,7 +143,9 @@ something else.
:tabclose 3 " close the third tab page
:tabclose $ " close the last tab page
:tabclose # " close the last accessed tab page
<
When a tab is closed the next tab page will become the current one.
*:tabo* *:tabonly*
:tabo[nly][!] Close all other tab pages.
When the 'hidden' option is set, all buffers in closed windows

View File

@@ -3948,6 +3948,7 @@ Dictionary-function eval.txt /*Dictionary-function*
DiffUpdated autocmd.txt /*DiffUpdated*
Digraphs digraph.txt /*Digraphs*
DirChanged autocmd.txt /*DirChanged*
DirChangedPre autocmd.txt /*DirChangedPre*
E motion.txt /*E*
E10 message.txt /*E10*
E100 diff.txt /*E100*
@@ -4041,6 +4042,7 @@ E1089 eval.txt /*E1089*
E109 eval.txt /*E109*
E1090 eval.txt /*E1090*
E1091 vim9.txt /*E1091*
E1092 various.txt /*E1092*
E1093 eval.txt /*E1093*
E1094 vim9.txt /*E1094*
E1095 eval.txt /*E1095*
@@ -4096,19 +4098,62 @@ E1139 vim9.txt /*E1139*
E114 eval.txt /*E114*
E1140 eval.txt /*E1140*
E1141 eval.txt /*E1141*
E1142 testing.txt /*E1142*
E1143 eval.txt /*E1143*
E1144 vim9.txt /*E1144*
E1145 eval.txt /*E1145*
E1146 vim9.txt /*E1146*
E1147 eval.txt /*E1147*
E1148 eval.txt /*E1148*
E1149 vim9.txt /*E1149*
E115 eval.txt /*E115*
E1150 vim9.txt /*E1150*
E1151 eval.txt /*E1151*
E1152 vim9.txt /*E1152*
E1153 eval.txt /*E1153*
E1154 eval.txt /*E1154*
E1155 autocmd.txt /*E1155*
E1158 builtin.txt /*E1158*
E1156 editing.txt /*E1156*
E1157 vim9.txt /*E1157*
E1158 vim9.txt /*E1158*
E1159 windows.txt /*E1159*
E116 eval.txt /*E116*
E1160 vim9.txt /*E1160*
E1161 builtin.txt /*E1161*
E1162 builtin.txt /*E1162*
E1163 vim9.txt /*E1163*
E1164 vim9.txt /*E1164*
E1165 eval.txt /*E1165*
E1166 eval.txt /*E1166*
E1167 vim9.txt /*E1167*
E1168 vim9.txt /*E1168*
E1169 eval.txt /*E1169*
E117 eval.txt /*E117*
E1170 vim9.txt /*E1170*
E1171 vim9.txt /*E1171*
E1172 vim9.txt /*E1172*
E1173 vim9.txt /*E1173*
E1174 vim9.txt /*E1174*
E1175 vim9.txt /*E1175*
E1176 vim9.txt /*E1176*
E1177 eval.txt /*E1177*
E1178 vim9.txt /*E1178*
E1179 options.txt /*E1179*
E118 eval.txt /*E118*
E1180 vim9.txt /*E1180*
E1181 vim9.txt /*E1181*
E1182 eval.txt /*E1182*
E1183 eval.txt /*E1183*
E1184 eval.txt /*E1184*
E1185 various.txt /*E1185*
E1186 vim9.txt /*E1186*
E1187 starting.txt /*E1187*
E1188 cmdline.txt /*E1188*
E1189 vim9.txt /*E1189*
E119 eval.txt /*E119*
E1190 vim9.txt /*E1190*
E1191 vim9.txt /*E1191*
E1192 eval.txt /*E1192*
E1193 options.txt /*E1193*
E1194 options.txt /*E1194*
E1195 options.txt /*E1195*
@@ -4120,25 +4165,77 @@ E12 message.txt /*E12*
E120 eval.txt /*E120*
E1200 options.txt /*E1200*
E1201 options.txt /*E1201*
E1205 builtin.txt /*E1205*
E1202 vim9.txt /*E1202*
E1203 eval.txt /*E1203*
E1204 pattern.txt /*E1204*
E1205 vim9.txt /*E1205*
E1206 vim9.txt /*E1206*
E1207 eval.txt /*E1207*
E1208 map.txt /*E1208*
E1209 builtin.txt /*E1209*
E121 eval.txt /*E121*
E1210 vim9.txt /*E1210*
E1211 vim9.txt /*E1211*
E1212 vim9.txt /*E1212*
E1213 vim9.txt /*E1213*
E1214 builtin.txt /*E1214*
E1215 builtin.txt /*E1215*
E1216 builtin.txt /*E1216*
E1217 vim9.txt /*E1217*
E1218 vim9.txt /*E1218*
E1219 vim9.txt /*E1219*
E122 eval.txt /*E122*
E1220 vim9.txt /*E1220*
E1221 vim9.txt /*E1221*
E1222 vim9.txt /*E1222*
E1223 vim9.txt /*E1223*
E1224 vim9.txt /*E1224*
E1225 vim9.txt /*E1225*
E1226 vim9.txt /*E1226*
E1227 vim9.txt /*E1227*
E1228 vim9.txt /*E1228*
E1229 eval.txt /*E1229*
E123 eval.txt /*E123*
E1230 options.txt /*E1230*
E1231 map.txt /*E1231*
E1232 builtin.txt /*E1232*
E1233 builtin.txt /*E1233*
E1234 vim9.txt /*E1234*
E1235 vim9.txt /*E1235*
E1236 vim9.txt /*E1236*
E1237 map.txt /*E1237*
E1238 vim9.txt /*E1238*
E1239 builtin.txt /*E1239*
E124 eval.txt /*E124*
E1240 change.txt /*E1240*
E1241 change.txt /*E1241*
E1242 change.txt /*E1242*
E1243 options.txt /*E1243*
E1244 message.txt /*E1244*
E1245 cmdline.txt /*E1245*
E1246 eval.txt /*E1246*
E1247 cmdline.txt /*E1247*
E1248 vim9.txt /*E1248*
E1249 syntax.txt /*E1249*
E125 eval.txt /*E125*
E1250 vim9.txt /*E1250*
E1251 vim9.txt /*E1251*
E1252 vim9.txt /*E1252*
E1253 vim9.txt /*E1253*
E1254 vim9.txt /*E1254*
E1255 map.txt /*E1255*
E1256 vim9.txt /*E1256*
E1257 vim9.txt /*E1257*
E1258 vim9.txt /*E1258*
E1259 vim9.txt /*E1259*
E126 eval.txt /*E126*
E1260 vim9.txt /*E1260*
E1261 vim9.txt /*E1261*
E1262 vim9.txt /*E1262*
E1263 eval.txt /*E1263*
E1264 vim9.txt /*E1264*
E1265 eval.txt /*E1265*
E1266 if_pyth.txt /*E1266*
E127 eval.txt /*E127*
E128 eval.txt /*E128*
E129 eval.txt /*E129*
@@ -6125,6 +6222,7 @@ conversion-server mbyte.txt /*conversion-server*
convert-to-HTML syntax.txt /*convert-to-HTML*
convert-to-XHTML syntax.txt /*convert-to-XHTML*
convert-to-XML syntax.txt /*convert-to-XML*
convert_legacy_function_to_vim9 vim9.txt /*convert_legacy_function_to_vim9*
copy() builtin.txt /*copy()*
copy-diffs diff.txt /*copy-diffs*
copy-move change.txt /*copy-move*
@@ -9931,7 +10029,6 @@ test_null_string() testing.txt /*test_null_string()*
test_option_not_set() testing.txt /*test_option_not_set()*
test_override() testing.txt /*test_override()*
test_refcount() testing.txt /*test_refcount()*
test_scrollbar() testing.txt /*test_scrollbar()*
test_setmouse() testing.txt /*test_setmouse()*
test_settime() testing.txt /*test_settime()*
test_srand_seed() testing.txt /*test_srand_seed()*

View File

@@ -1,4 +1,4 @@
*testing.txt* For Vim version 8.2. Last change: 2022 Jan 23
*testing.txt* For Vim version 8.2. Last change: 2022 Feb 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -65,8 +65,9 @@ test_garbagecollect_now() *test_garbagecollect_now()*
Like garbagecollect(), but executed right away. This must
only be called directly to avoid any structure to exist
internally, and |v:testing| must have been set before calling
any function. This will not work when called from a :def
function, because variables on the stack will be freed.
any function. *E1142*
This will not work when called from a :def function, because
variables on the stack will be freed.
test_garbagecollect_soon() *test_garbagecollect_soon()*
@@ -92,6 +93,7 @@ test_gui_event({event}, {args})
"dropfiles" drop one or more files in a window.
"findrepl" search and replace text
"mouse" mouse button click event.
"scrollbar" move or drag the scrollbar
"tabline" select a tab page by mouse click.
"tabmenu" select a tabline menu entry.
@@ -113,6 +115,7 @@ test_gui_event({event}, {args})
|drop_file| feature is present.
"findrepl":
{only available when the GUI has a find/replace dialog}
Perform a search and replace of text. The supported items
in {args} are:
find_text: string to find.
@@ -149,6 +152,22 @@ test_gui_event({event}, {args})
8 alt is pressed
16 ctrl is pressed
"scrollbar":
Set or drag the left, right or horizontal scrollbar. Only
works when the scrollbar actually exists. The supported
items in {args} are:
which: scrollbar. The supported values are:
left Left scrollbar of the current window
right Right scrollbar of the current window
hor Horizontal scrollbar
value: amount to scroll. For the vertical scrollbars
the value can be 1 to the line-count of the
buffer. For the horizontal scrollbar the
value can be between 1 and the maximum line
length, assuming 'wrap' is not set.
dragging: 1 to drag the scrollbar and 0 to click in the
scrollbar.
"tabline":
Inject a mouse click event on the tabline to select a
tabpage. The supported items in {args} are:
@@ -284,27 +303,6 @@ test_refcount({expr}) *test_refcount()*
GetVarname()->test_refcount()
test_scrollbar({which}, {value}, {dragging}) *test_scrollbar()*
Pretend using scrollbar {which} to move it to position
{value}. {which} can be:
left Left scrollbar of the current window
right Right scrollbar of the current window
hor Horizontal scrollbar
For the vertical scrollbars {value} can be 1 to the
line-count of the buffer. For the horizontal scrollbar the
{value} can be between 1 and the maximum line length, assuming
'wrap' is not set.
When {dragging} is non-zero it's like dragging the scrollbar,
otherwise it's like clicking in the scrollbar.
Only works when the {which} scrollbar actually exists,
obviously only when using the GUI.
Can also be used as a |method|: >
GetValue()->test_scrollbar('right', 0)
test_setmouse({row}, {col}) *test_setmouse()*
Set the mouse position to be used for the next mouse action.
{row} and {col} are one based.

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 8.2. Last change: 2022 Jan 31
*todo.txt* For Vim version 8.2. Last change: 2022 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -38,21 +38,15 @@ browser use: https://github.com/vim/vim/issues/1234
*known-bugs*
-------------------- Known bugs and current work -----------------------
Cannot use command modifier for "import 'name.vim' as vim9"
range() returns list<number>, but it's OK if map() changes the type.
#9665 Change internal_func_ret_type() to return current and declared type?
When making a copy of a list or dict, do not keep the type? #9644
With deepcopy() all, with copy() this still fails:
var l: list<list<number>> = [[1], [2]]
l->copy()[0][0] = 'x'
Once Vim9 is stable:
- Add all the error numbers in a good place in documentation.
done until E1145
- Check code coverage, add more tests if needed.
- Use Vim9 for runtime files.
- Check code coverage, add more tests if needed.
vim9compile.c
vim9execute.c
vim9expr.c
vim9instr.c
vim9script.c
vim9type.c
Further Vim9 improvements, possibly after launch:
- Check performance with callgrind and kcachegrind.
@@ -4846,9 +4840,6 @@ Autocommands:
CursorHoldC - CursorHold while command-line editing
WinMoved - when windows have been moved around, e.g, ":wincmd J"
SearchPost - After doing a search command (e.g. to do "M")
PreDirChanged/PostDirChanged
- Before/after ":cd" has been used (for changing the
window title)
ShutDown - when the system is about to shut down
InsertCharPost - user typed a character in Insert mode, after inserting
the char.

View File

@@ -1,4 +1,4 @@
*uganda.txt* For Vim version 8.2. Last change: 2020 Jan 08
*uganda.txt* For Vim version 8.2. Last change: 2022 Feb 05
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -11,9 +11,9 @@ Vim is Charityware. You can use and copy it as much as you like, but you are
encouraged to make a donation for needy children in Uganda. Please see |kcc|
below or visit the ICCF web site, available at these URLs:
http://iccf-holland.org/
http://www.vim.org/iccf/
http://www.iccf.nl/
https://iccf-holland.org/
https://www.vim.org/iccf/
https://www.iccf.nl/
You can also sponsor the development of Vim. Vim sponsors can vote for
features. See |sponsor|. The money goes to Uganda anyway.
@@ -169,10 +169,11 @@ households are stimulated to build a proper latrine. I helped setting up a
production site for cement slabs. These are used to build a good latrine.
They are sold below cost price.
There is a small clinic at the project, which provides children and their
family with medical help. When needed, transport to a hospital is offered.
Immunization programs are carried out and help is provided when an epidemic is
breaking out (measles and cholera have been a problem).
There is a clinic at the project, which provides children and their family
medical help. Since 2020 a maternity ward was added and 24/7 service is
available. When needed, transport to a hospital is offered. Immunization
programs are carried out and help is provided when an epidemic is breaking out
(measles and cholera have been a problem).
*donate*
Summer 1994 to summer 1995 I spent a whole year at the centre, working as a
volunteer. I have helped to expand the centre and worked in the area of water
@@ -214,44 +215,29 @@ Check the ICCF web site for the latest information! See |iccf| for the URL.
USA: The methods mentioned below can be used.
Sending a check to the Nehemiah Group Outreach Society (NGOS)
is no longer possible, unfortunately. We are looking for
another way to get you an IRS tax receipt.
For sponsoring a child contact KCF in Canada (see below). US
checks can be sent to them to lower banking costs.
If you must send a check send it to our Canadian partner:
https://www.kuwasha.net/
Canada: Contact Kibaale Children's Fund (KCF) in Surrey, Canada. They
take care of the Canadian sponsors for the children in
Kibaale. KCF forwards 100% of the money to the project in
Uganda. You can send them a one time donation directly.
Canada: Contact Kuwasha in Surrey, Canada. They take care of the
Canadian sponsors for the children in Kibaale. Kuwasha
forwards 100% of the money to the project in Uganda. You can
send them a one time donation directly.
Please send me a note so that I know what has been donated
because of Vim. Ask KCF for information about sponsorship.
Kibaale Children's Fund c/o Pacific Academy
10238-168 Street
Surrey, B.C. V4N 1Z4
Canada
Phone: 604-581-5353
If you make a donation to Kibaale Children's Fund (KCF) you
will receive a tax receipt which can be submitted with your
tax return.
because of Vim. Look on their site for information about
sponsorship: 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.
Holland: Transfer to the account of "Stichting ICCF Holland" in Lisse.
This will allow for tax deduction if you live in Holland.
Postbank, nr. 4548774
IBAN: NL95 INGB 0004 5487 74
Holland: Transfer to the account of "Stichting ICCF Holland" in
Amersfoort. This will allow for tax deduction if you live in
Holland. ING bank, IBAN: NL95 INGB 0004 5487 74
Germany: It is possible to make donations that allow for a tax return.
Check the ICCF web site for the latest information:
http://iccf-holland.org/germany.html
https://iccf-holland.org/germany.html
World: Use a postal money order. That should be possible from any
country, mostly from the post office. Use this name (which is
in my passport): "Abraham Moolenaar". Use Euro for the
currency if possible.
Europe: Use a bank transfer if possible. Your bank should have a form
that you can use for this. See "Others" below for the swift
code and IBAN number.
Europe: Use a bank transfer if possible. See "Others" below for the
swift code and IBAN number.
Any other method should work. Ask for information about
sponsorship.
@@ -261,28 +247,12 @@ Credit Card: You can use PayPal to send money with a Credit card. This is
https://www.paypal.com/en_US/mrb/pal=XAC62PML3GF8Q
The e-mail address for sending the money to is:
Bram@iccf-holland.org
For amounts above 400 Euro ($500) sending a check is
preferred.
Others: Transfer to one of these accounts if possible:
Postbank, account 4548774
Swift code: INGB NL 2A
IBAN: NL95 INGB 0004 5487 74
under the name "stichting ICCF Holland", Lisse
If that doesn't work:
Rabobank Lisse, account 3765.05.117
Swift code: RABO NL 2U
under the name "Bram Moolenaar", Lisse
Otherwise, send a check in euro or US dollars to the address
below. Minimal amount: $70 (my bank does not accept smaller
amounts for foreign check, sorry)
Others: Transfer to this account if possible:
ING bank: IBAN: NL95 INGB 0004 5487 74
Swift code: INGBNL2A
under the name "stichting ICCF Holland", Amersfoort
Checks are not accepted.
Address to send checks to:
Bram Moolenaar
Finsterruetihof 1
8134 Adliswil
Switzerland
This address is expected to be valid for a long time.
vim:tw=78:ts=8:noet:ft=help:norl:

View File

@@ -1,4 +1,4 @@
*various.txt* For Vim version 8.2. Last change: 2022 Jan 15
*various.txt* For Vim version 8.2. Last change: 2022 Feb 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -424,7 +424,7 @@ m *+mzscheme* Mzscheme interface |mzscheme|
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
m *+netbeans_intg* |netbeans|
T *+num64* 64-bit Number support |Number|
Always enabled since 8.2.0271, use v:numbersize to
Always enabled since 8.2.0271, use v:numbersize to
check the actual size of a Number.
m *+ole* Win32 GUI only: |ole-interface|
N *+packages* Loading |packages|
@@ -549,7 +549,7 @@ N *+X11* Unix only: can restore window title |X11|
backward compatibility, the ">" after the register
name can be omitted.
:redi[r] @">> Append messages to the unnamed register.
*E1092*
:redi[r] => {var} Redirect messages to a variable.
In legacy script: If the variable doesn't exist, then
it is created. If the variable exists, then it is
@@ -566,7 +566,7 @@ N *+X11* Unix only: can restore window title |X11|
:redi[r] =>> {var} Append messages to an existing variable. Only string
variables can be used.
*E1185*
:redi[r] END End redirecting messages.
*:filt* *:filter*
@@ -649,7 +649,7 @@ N *+X11* Unix only: can restore window title |X11|
used. In this example |:silent| is used to avoid the
message about reading the file and |:unsilent| to be
able to list the first line of each file. >
:silent argdo unsilent echo expand('%') . ": " . getline(1)
:silent argdo unsilent echo expand('%') . ": " . getline(1)
<
*:verb* *:verbose*

View File

@@ -1,4 +1,4 @@
*version8.txt* For Vim version 8.2. Last change: 2021 Jul 24
*version8.txt* For Vim version 8.2. Last change: 2022 Feb 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -25971,7 +25971,7 @@ Added functions:
|test_getvalue()|
|test_null_blob()|
|test_refcount()|
|test_scrollbar()|
test_scrollbar() (later replaced with |test_gui_event()|)
|test_setmouse()|
|win_execute()|
|win_splitmove()|

View File

@@ -1,4 +1,4 @@
*vim9.txt* For Vim version 8.2. Last change: 2022 Jan 30
*vim9.txt* For Vim version 8.2. Last change: 2022 Feb 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -56,12 +56,12 @@ Vim9 script and legacy Vim script can be mixed. There is no requirement to
rewrite old scripts, they keep working as before. You may want to use a few
`:def` functions for code that needs to be fast.
:vim9[cmd] {cmd} *:vim9* *:vim9cmd*
:vim9[cmd] {cmd} *:vim9* *:vim9cmd* *E1164*
Execute {cmd} using Vim9 script syntax and semantics.
Useful when typing a command and in a legacy script or
function.
:leg[acy] {cmd} *:leg* *:legacy*
:leg[acy] {cmd} *:leg* *:legacy* *E1189* *E1234*
Execute {cmd} using legacy script syntax and semantics. Only
useful in a Vim9 script or a :def function.
Note that {cmd} cannot use local variables, since it is parsed
@@ -72,7 +72,7 @@ rewrite old scripts, they keep working as before. You may want to use a few
2. Differences from legacy Vim script *vim9-differences*
Overview ~
*E1146*
Brief summary of the differences you will most often encounter when using Vim9
script and `:def` functions; details are below:
- Comments start with #, not ": >
@@ -128,7 +128,7 @@ To improve readability there must be a space between a command and the #
that starts a comment: >
var name = value # comment
var name = value# error!
< *E1170*
Do not start a comment with #{, it looks like the legacy dictionary literal
and produces an error where this might be confusing. #{{ or #{{{ are OK,
these can be used to start a fold.
@@ -153,7 +153,7 @@ Compilation is done when any of these is encountered:
- `:disassemble` is used for the function.
- a function that is compiled calls the function or uses it as a function
reference (so that the argument and return types can be checked)
*E1091*
*E1091* *E1191*
If compilation fails it is not tried again on the next call, instead this
error is given: "E1091: Function is not compiled: {name}".
Compilation will fail when encountering a user command that has not been
@@ -183,14 +183,14 @@ You can call a legacy dict function though: >
var d = {func: Legacy, value: 'text'}
d.func()
enddef
< *E1096*
< *E1096* *E1174* *E1175*
The argument types and return type need to be specified. The "any" type can
be used, type checking will then be done at runtime, like with legacy
functions.
*E1106*
Arguments are accessed by name, without "a:", just like any other language.
There is no "a:" dictionary or "a:000" list.
*vim9-variable-arguments* *E1055*
*vim9-variable-arguments* *E1055* *E1160* *E1180*
Variable arguments are defined as the last argument, with a name and have a
list type, similar to TypeScript. For example, a list of numbers: >
def MyFunc(...itemlist: list<number>)
@@ -206,7 +206,7 @@ should use its default value. Example: >
enddef
MyFunc(v:none, 'LAST') # first argument uses default value 'one'
<
*vim9-ignored-argument*
*vim9-ignored-argument* *E1181*
The argument "_" (an underscore) can be used to ignore the argument. This is
most useful in callbacks where you don't need it, but do need to give an
argument to match the call. E.g. when using map() two arguments are passed,
@@ -221,12 +221,12 @@ Functions and variables are script-local by default ~
When using `:function` or `:def` to specify a new function at the script level
in a Vim9 script, the function is local to the script, as if "s:" was
prefixed. Using the "s:" prefix is optional. To define a global function or
variable the "g:" prefix must be used. For functions in an autoload script
the "name#" prefix is sufficient. >
variable the "g:" prefix must be used. For functions in a script that is to
be imported and in an autoload script "export" needs to be used. >
def ThisFunction() # script-local
def s:ThisFunction() # script-local
def g:ThatFunction() # global
def scriptname#function() # autoload
export def Function() # for import and import autoload
< *E1058* *E1075*
When using `:function` or `:def` to specify a nested function inside a `:def`
function and no namespace was given, this nested function is local to the code
@@ -264,7 +264,7 @@ You can use an autoload function if needed, or call a legacy function and have
Reloading a Vim9 script clears functions and variables by default ~
*vim9-reload*
*vim9-reload* *E1149* *E1150*
When loading a legacy Vim script a second time nothing is removed, the
commands will replace existing variables and functions and create new ones.
@@ -280,7 +280,9 @@ You want to use this in scripts that use a `finish` command to bail out at
some point when loaded again. E.g. when a buffer local option is set: >
vim9script noclear
setlocal completefunc=SomeFunc
if exists('*g:SomeFunc') | finish | endif
if exists('*g:SomeFunc')
finish
endif
def g:SomeFunc()
....
@@ -345,7 +347,8 @@ And with autocommands: >
}
Although using a :def function probably works better.
*E1022* *E1103* *E1130* *E1131* *E1133* *E1134*
*E1022* *E1103* *E1130* *E1131* *E1133*
*E1134* *E1235*
Declaring a variable with a type but without an initializer will initialize to
false (for bool), empty (for string, list, dict, etc.) or zero (for number,
any, etc.). This matters especially when using the "any" type, the value will
@@ -355,13 +358,13 @@ In Vim9 script `:let` cannot be used. An existing variable is assigned to
without any command. The same for global, window, tab, buffer and Vim
variables, because they are not really declared. Those can also be deleted
with `:unlet`.
*E1178*
`:lockvar` does not work on local variables. Use `:const` and `:final`
instead.
The `exists()` and `exists_compiled()` functions do not work on local variables
or arguments.
*E1006* *E1041*
*E1006* *E1041* *E1167* *E1168* *E1213*
Variables, functions and function arguments cannot shadow previously defined
or imported variables and functions in the same script file.
Variables may shadow Ex commands, rename the variable if needed.
@@ -414,7 +417,7 @@ similar to how a function argument can be ignored: >
[a, _, c] = theList
To ignore any remaining items: >
[a, b; _] = longList
< *E1163*
Declaring more than one variable at a time, using the unpack notation, is
possible. Each variable can have a type or infer it from the value: >
var [v1: number, v2] = GetValues()
@@ -456,7 +459,7 @@ The constant only applies to the value itself, not what it refers to. >
Omitting :call and :eval ~
*E1190*
Functions can be called without `:call`: >
writefile(lines, 'file')
Using `:call` is still possible, but this is discouraged.
@@ -516,7 +519,8 @@ because of the use of argument types.
To avoid these problems Vim9 script uses a different syntax for a lambda,
which is similar to JavaScript: >
var Lambda = (arg) => expression
var Lambda = (arg): type => expression
< *E1157*
No line break is allowed in the arguments of a lambda up to and including the
"=>" (so that Vim can tell the difference between an expression in parentheses
and lambda arguments). This is OK: >
@@ -532,7 +536,7 @@ But you can use a backslash to concatenate the lines before parsing: >
filter(list, (k,
\ v)
\ => v > 0)
< *vim9-lambda-arguments*
< *vim9-lambda-arguments* *E1172*
In legacy script a lambda could be called with any number of extra arguments,
there was no way to warn for not using them. In Vim9 script the number of
arguments must match. If you do want to accept any arguments, or any further
@@ -541,7 +545,7 @@ arguments, use "..._", which makes the function accept
var Callback = (..._) => 'anything'
echo Callback(1, 2, 3) # displays "anything"
< *inline-function*
< *inline-function* *E1171*
Additionally, a lambda can contain statements in {}: >
var Lambda = (arg) => {
g:was_called = 'yes'
@@ -735,7 +739,7 @@ Notes:
White space ~
*E1004* *E1068* *E1069* *E1074* *E1127*
*E1004* *E1068* *E1069* *E1074* *E1127* *E1202*
Vim9 script enforces proper use of white space. This is no longer allowed: >
var name=234 # Error!
var name= 234 # Error!
@@ -769,7 +773,7 @@ White space is not allowed:
Func(
arg # OK
)
< *E1205*
White space is not allowed in a `:set` command between the option name and a
following "&", "!", "<", "=", "+=", "-=" or "^=".
@@ -779,6 +783,11 @@ No curly braces expansion ~
|curly-braces-names| cannot be used.
Command modifiers are not ignored ~
*E1176*
Using a command modifier for a command that does not use it gives an error.
Dictionary literals ~
*vim9-literal-dict* *E1014*
Traditionally Vim has supported dictionary literals with a {} syntax: >
@@ -837,7 +846,7 @@ error. Example: >
For loop ~
*E1254*
The loop variable must not be declared yet: >
var i = 1
for i in [1, 2, 3] # Error!
@@ -1103,7 +1112,7 @@ Using ++var or --var in an expression is not supported yet.
later in Vim9 script. They can only be removed by
reloading the same script.
*:enddef* *E1057*
*:enddef* *E1057* *E1152* *E1173*
:enddef End of a function defined with `:def`. It should be on
a line by its own.
@@ -1182,6 +1191,67 @@ for each closure call a function to define it: >
echo range(5)->map((i, _) => flist[i]())
# Result: [0, 1, 2, 3, 4]
In some situations, especially when calling a Vim9 closure from legacy
context, the evaluation will fail. *E1248*
Converting a function from legacy to Vim9 ~
*convert_legacy_function_to_vim9*
These are the most changes that need to be made to convert a legacy function
to a Vim9 function:
- Change `func` or `function` to `def`.
- Change `endfunc` or `endfunction` to `enddef`.
- Add types to the function arguments.
- If the function returns something, add the return type.
- Change comments to start with # instead of ".
For example, a legacy function: >
func MyFunc(text)
" function body
endfunc
< Becomes: >
def MyFunc(text: string): number
# function body
enddef
- Remove "a:" used for arguments. E.g.: >
return len(a:text)
< Becomes: >
return len(text)
- Change `let` used to declare a variable to `var`.
- Remove `let` used to assign a value to a variable. This is for local
variables already declared and b: w: g: and t: variables.
For example, legacy function: >
let lnum = 1
let lnum += 3
let b:result = 42
< Becomes: >
var lnum = 1
lnum += 3
b:result = 42
- Insert white space in expressions where needed.
- Change "." used for concatenation to "..".
For example, legacy function: >
echo line(1).line(2)
< Becomes: >
echo line(1) .. line(2)
- line continuation does not always require a backslash: >
echo ['one',
\ 'two',
\ 'three'
\ ]
< Becomes: >
echo ['one',
'two',
'three'
]
==============================================================================
4. Types *vim9-types*
@@ -1208,7 +1278,7 @@ Not supported yet:
These types can be used in declarations, but no simple value will actually
have the "void" type. Trying to use a void (e.g. a function without a
return value) results in error *E1031* .
return value) results in error *E1031* *E1186* .
There is no array type, use list<{type}> instead. For a list constant an
efficient implementation is used that avoids allocating lot of small pieces of
@@ -1330,14 +1400,24 @@ Results in:
For script-local variables in Vim9 script the type is checked, also when the
variable was declared in a legacy function.
When a type has been declared this is attached to a list or string. When
When a type has been declared this is attached to a List or Dictionary. When
later some expression attempts to change the type an error will be given: >
var ll: list<number> = [1, 2, 3]
ll->extend(['x']) # Error, 'x' is not a number
If the type is inferred then the type is allowed to change: >
If the type is not declared then it is allowed to change: >
[1, 2, 3]->extend(['x']) # result: [1, 2, 3, 'x']
For a variable declaration an inferred type matters: >
var ll = [1, 2, 3]
ll->extend(['x']) # Error, 'x' is not a number
That is because the declaration looks like a list of numbers, thus is
equivalent to: >
var ll: list<number> = [1, 2, 3]
If you do want a more permissive list you need to declare the type: >
var ll: list<any = [1, 2, 3]
ll->extend(['x']) # OK
Stricter type checking ~
*type-checking*
@@ -1346,7 +1426,7 @@ automatically converted to a number. This was convenient for an actual number
such as "123", but leads to unexpected problems (and no error message) if the
string doesn't start with a number. Quite often this leads to hard-to-find
bugs.
*E1206* *E1210* *E1212*
In Vim9 script this has been made stricter. In most places it works just as
before, if the value used matches the expected type. There will sometimes be
an error, thus breaking backwards compatibility. For example:
@@ -1368,9 +1448,15 @@ type. E.g. when a list of mixed types gets changed to a list of strings: >
# typename(mylist) == "list<any>"
map(mylist, (i, v) => 'item ' .. i)
# typename(mylist) == "list<string>", no error
< *E1158*
Same for |extend()|, use |extendnew()| instead, and for |flatten()|, use
|flattennew()| instead.
*E1211* *E1217* *E1218* *E1219* *E1220* *E1221*
*E1222* *E1223* *E1224* *E1225* *E1226* *E1227*
*E1228* *E1238* *E1250* *E1251* *E1252* *E1253*
*E1256*
Types are checked for most builtin functions to make it easier to spot
mistakes.
==============================================================================
@@ -1459,16 +1545,16 @@ be exported. {not implemented yet: class, interface}
Import ~
*:import* *:imp* *E1094* *E1047*
*E1048* *E1049* *E1053* *E1071*
*:import* *:imp* *E1094* *E1047* *E1262*
*E1048* *E1049* *E1053* *E1071* *E1236*
The exported items can be imported in another Vim9 script: >
import "myscript.vim"
This makes each item available as "myscript.item".
*:import-as*
*:import-as* *E1257* *E1261*
In case the name is long or ambiguous, another name can be specified: >
import "thatscript.vim" as that
< *E1060*
< *E1060* *E1258* *E1259* *E1260*
Then you can use "that.EXPORTED_CONST", "that.someValue", etc. You are free
to choose the name "that". Use something that will be recognized as referring
to the imported script. Avoid command names, command modifiers and builtin
@@ -1526,17 +1612,19 @@ line, there can be no line break: >
echo that
.name # Error!
< *:import-cycle*
The `import` commands are executed when encountered. If that script (directly
or indirectly) imports the current script, then items defined after the
`import` won't be processed yet. Therefore cyclic imports can exist, but may
result in undefined items.
The `import` commands are executed when encountered. If script A imports
script B, and B (directly or indirectly) imports A, this will be skipped over.
At this point items in A after "import B" will not have been processed and
defined yet. Therefore cyclic imports can exist and not result in an error
directly, but may result in an error for items in A after "import B" not being
defined. This does not apply to autoload imports, see the next section.
Importing an autoload script ~
*vim9-autoload*
For optimal startup speed, loading scripts should be postponed until they are
actually needed. Using the autoload mechanism is recommended:
*E1264*
1. In the plugin define user commands, functions and/or mappings that refer to
items imported from an autoload script. >
import autoload 'for/search.vim'

View File

@@ -1,4 +1,4 @@
*windows.txt* For Vim version 8.2. Last change: 2022 Jan 08
*windows.txt* For Vim version 8.2. Last change: 2022 Feb 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -168,7 +168,7 @@ CTRL-W CTRL-S *CTRL-W_CTRL-S*
Note: CTRL-S does not work on all terminals and might block
further input, use CTRL-Q to get going again.
Also see |++opt| and |+cmd|.
*E242*
*E242* *E1159*
Be careful when splitting a window in an autocommand, it may
mess up the window layout if this happens while making other
window layout changes.

View File

@@ -1,35 +1,42 @@
" Vim support file to switch on loading plugins for file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2006 Apr 30
vim9script noclear
if exists("did_load_ftplugin")
# Vim support file to switch on loading plugins for file types
#
# Maintainer: Bram Moolenaar <Bram@vim.org>
# Last change: 2022 Feb 09
if exists("g:did_load_ftplugin")
finish
endif
let did_load_ftplugin = 1
g:did_load_ftplugin = 1
augroup filetypeplugin
au FileType * call s:LoadFTPlugin()
func! s:LoadFTPlugin()
if exists("b:undo_ftplugin")
exe b:undo_ftplugin
unlet! b:undo_ftplugin b:did_ftplugin
endif
let s = expand("<amatch>")
if s != ""
if &cpo =~# "S" && exists("b:did_ftplugin")
" In compatible mode options are reset to the global values, need to
" set the local values also when a plugin was already used.
unlet b:did_ftplugin
endif
" When there is a dot it is used to separate filetype names. Thus for
" "aaa.bbb" load "aaa" and then "bbb".
for name in split(s, '\.')
exe 'runtime! ftplugin/' . name . '.vim ftplugin/' . name . '_*.vim ftplugin/' . name . '/*.vim'
endfor
endif
endfunc
au FileType * call LoadFTPlugin()
augroup END
if exists('*LoadFTPlugin')
# No need to define the function again.
finish
endif
def LoadFTPlugin()
if exists("b:undo_ftplugin")
exe b:undo_ftplugin
unlet! b:undo_ftplugin b:did_ftplugin
endif
var s = expand("<amatch>")
if s != ""
if &cpo =~# "S" && exists("b:did_ftplugin")
# In compatible mode options are reset to the global values, need to
# set the local values also when a plugin was already used.
unlet b:did_ftplugin
endif
# When there is a dot it is used to separate filetype names. Thus for
# "aaa.bbb" load "aaa" and then "bbb".
for name in split(s, '\.')
exe 'runtime! ftplugin/' .. name .. '.vim ftplugin/' .. name .. '_*.vim ftplugin/' .. name .. '/*.vim'
endfor
endif
enddef

View File

@@ -1,13 +1,15 @@
" Vim support file to switch off loading plugins for file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2011 Oct 20
vim9script
if exists("did_load_ftplugin")
unlet did_load_ftplugin
# Vim support file to switch off loading plugins for file types
#
# Maintainer: Bram Moolenaar <Bram@vim.org>
# Last Change: 2022 Feb 09
if exists("g:did_load_ftplugin")
unlet g:did_load_ftplugin
endif
" Remove all autocommands in the filetypeplugin group, if any exist.
# Remove all autocommands in the filetypeplugin group, if any exist.
if exists("#filetypeplugin")
silent! au! filetypeplugin *
endif

View File

@@ -6,6 +6,7 @@ Name[de]=GVim
Name[eo]=GVim
Name[fi]=GVim
Name[fr]=GVim
Name[ga]=GVim
Name[it]=GVim
Name[ru]=GVim
Name[sr]=GVim
@@ -16,6 +17,7 @@ GenericName[de]=Texteditor
GenericName[eo]=Tekstoredaktilo
GenericName[fi]=Tekstinmuokkain
GenericName[fr]=Éditeur de texte
GenericName[ga]=Eagarthóir Téacs
GenericName[it]=Editor di testi
GenericName[ja]=テキストエディタ
GenericName[ru]=Текстовый редактор
@@ -27,6 +29,7 @@ Comment[de]=Textdateien bearbeiten
Comment[eo]=Redakti tekstajn dosierojn
Comment[fi]=Muokkaa tekstitiedostoja
Comment[fr]=Éditer des fichiers texte
Comment[ga]=Cuir comhaid téacs in eagar
Comment[it]=Edita file di testo
Comment[ja]=テキストファイルを編集します
Comment[ru]=Редактирование текстовых файлов
@@ -57,7 +60,6 @@ Comment[es]=Edita archivos de texto
Comment[et]=Redigeeri tekstifaile
Comment[eu]=Editatu testu-fitxategiak
Comment[fa]=ویرایش پرونده‌های متنی
Comment[ga]=Eagar comhad Téacs
Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
Comment[he]=ערוך קבצי טקסט
Comment[hi]=पाठ फ़ाइलें संपादित करें
@@ -107,6 +109,7 @@ Keywords[de]=Text;Editor;
Keywords[eo]=Teksto;redaktilo;
Keywords[fi]=Teksti;muokkain;editori;
Keywords[fr]=Texte;éditeur;
Keywords[ga]=Téacs;eagarthóir;
Keywords[it]=Testo;editor;
Keywords[ja]=テキスト;エディタ;
Keywords[ru]=текст;текстовый редактор;

View File

@@ -1,7 +1,7 @@
" Vim support file to switch on loading indent files for file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2008 Feb 22
" Last Change: 2022 Feb 04
if exists("did_indent_on")
finish
@@ -10,22 +10,23 @@ let did_indent_on = 1
augroup filetypeindent
au FileType * call s:LoadIndent()
func! s:LoadIndent()
if exists("b:undo_indent")
exe b:undo_indent
unlet! b:undo_indent b:did_indent
endif
let s = expand("<amatch>")
if s != ""
if exists("b:did_indent")
unlet b:did_indent
endif
" When there is a dot it is used to separate filetype names. Thus for
" "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim".
for name in split(s, '\.')
exe 'runtime! indent/' . name . '.vim'
endfor
endif
endfunc
augroup END
def s:LoadIndent()
if exists("b:undo_indent")
exe b:undo_indent
unlet! b:undo_indent b:did_indent
endif
var s = expand("<amatch>")
if s != ""
if exists("b:did_indent")
unlet b:did_indent
endif
# When there is a dot it is used to separate filetype names. Thus for
# "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim".
for name in split(s, '\.')
exe 'runtime! indent/' .. name .. '.vim'
endfor
endif
enddef

View File

@@ -1,52 +1,54 @@
" Script to define the syntax menu in synmenu.vim
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2019 Dec 07
vim9script
" This is used by "make menu" in the src directory.
# Script to define the syntax menu in synmenu.vim
# Maintainer: Bram Moolenaar <Bram@vim.org>
# Last Change: 2022 Feb 04
# This is used by "make menu" in the src directory.
edit <sfile>:p:h/synmenu.vim
/The Start Of The Syntax Menu/+1,/The End Of The Syntax Menu/-1d
let s:lnum = line(".") - 1
call append(s:lnum, "")
let s:lnum = s:lnum + 1
:/The Start Of The Syntax Menu/+1,/The End Of The Syntax Menu/-1d
var lnum = line(".") - 1
call append(lnum, "")
lnum += 1
" Use the SynMenu command and function to define all menu entries
command! -nargs=* SynMenu call <SID>Syn(<q-args>)
# Use the SynMenu command and function to define all menu entries
command! -nargs=* SynMenu call Syn(<q-args>)
let s:cur_menu_name = ""
let s:cur_menu_nr = 0
let s:cur_menu_item = 0
let s:cur_menu_char = ""
var cur_menu_name = ""
var cur_menu_nr = 0
var cur_menu_item = 0
var cur_menu_char = ""
fun! <SID>Syn(arg)
" isolate menu name: until the first dot
let i = match(a:arg, '\.')
let menu_name = strpart(a:arg, 0, i)
let r = strpart(a:arg, i + 1, 999)
" isolate submenu name: until the colon
let i = match(r, ":")
let submenu_name = strpart(r, 0, i)
" after the colon is the syntax name
let syntax_name = strpart(r, i + 1, 999)
def Syn(arg: string)
# isolate menu name: until the first dot
var i = match(arg, '\.')
var menu_name = strpart(arg, 0, i)
var r = strpart(arg, i + 1, 999)
# isolate submenu name: until the colon
i = match(r, ":")
var submenu_name = strpart(r, 0, i)
# after the colon is the syntax name
var syntax_name = strpart(r, i + 1, 999)
if s:cur_menu_name != menu_name
let s:cur_menu_name = menu_name
let s:cur_menu_nr = s:cur_menu_nr + 10
let s:cur_menu_item = 100
let s:cur_menu_char = submenu_name[0]
if cur_menu_name != menu_name
cur_menu_name = menu_name
cur_menu_nr += 10
cur_menu_item = 100
cur_menu_char = submenu_name[0]
else
" When starting a new letter, insert a menu separator.
let c = submenu_name[0]
# When starting a new letter, insert a menu separator.
var c = submenu_name[0]
if c != s:cur_menu_char
exe 'an 50.' . s:cur_menu_nr . '.' . s:cur_menu_item . ' &Syntax.' . menu_name . ".-" . c . '- <nul>'
let s:cur_menu_item = s:cur_menu_item + 10
let s:cur_menu_char = c
exe 'an 50.' .. s:cur_menu_nr .. '.' .. s:cur_menu_item .. ' &Syntax.' .. menu_name .. ".-" .. c .. '- <nul>'
cur_menu_item += 10
cur_menu_char = c
endif
endif
call append(s:lnum, 'an 50.' . s:cur_menu_nr . '.' . s:cur_menu_item . ' &Syntax.' . menu_name . "." . submenu_name . ' :cal SetSyn("' . syntax_name . '")<CR>')
let s:cur_menu_item = s:cur_menu_item + 10
let s:lnum = s:lnum + 1
endfun
append(lnum, 'an 50.' .. s:cur_menu_nr .. '.' .. s:cur_menu_item .. ' &Syntax.' .. menu_name .. "." .. submenu_name .. ' :cal SetSyn("' .. syntax_name .. '")<CR>')
cur_menu_item += 10
lnum += 1
enddef
SynMenu AB.A2ps\ config:a2ps
SynMenu AB.Aap:aap
@@ -676,6 +678,6 @@ SynMenu WXYZ.YAML:yaml
SynMenu WXYZ.Yacc:yacc
SynMenu WXYZ.Zimbu:zimbu
call append(s:lnum, "")
append(lnum, "")
wq

File diff suppressed because it is too large Load Diff

View File

@@ -2,31 +2,26 @@
" This file is normally sourced from menu.vim.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2017 Oct 28
" Last Change: 2022 Feb 04
" Define the SetSyn function, used for the Syntax menu entries.
" Set 'filetype' and also 'syntax' if it is manually selected.
fun! SetSyn(name)
if a:name == "fvwm1"
let use_fvwm_1 = 1
let use_fvwm_2 = 0
let name = "fvwm"
elseif a:name == "fvwm2"
let use_fvwm_2 = 1
let use_fvwm_1 = 0
let name = "fvwm"
else
let name = a:name
def SetSyn(name: string)
var filetype = name
if name == "fvwm1" || name == "fvwm2"
g:use_fvwm_1 = name == "fvwm1"
g:use_fvwm_2 = name == "fvwm2"
filetype = "fvwm"
endif
if !exists("s:syntax_menu_synonly")
exe "set ft=" . name
exe "set ft=" .. filetype
if exists("g:syntax_manual")
exe "set syn=" . name
exe "set syn=" .. filetype
endif
else
exe "set syn=" . name
exe "set syn=" .. filetype
endif
endfun
enddef
" <> notation is used here, remove '<' from 'cpoptions'
let s:cpo_save = &cpo
@@ -404,7 +399,6 @@ an 50.90.120 &Syntax.PQ.Pam\ config :cal SetSyn("pamconf")<CR>
an 50.90.130 &Syntax.PQ.PApp :cal SetSyn("papp")<CR>
an 50.90.140 &Syntax.PQ.Pascal :cal SetSyn("pascal")<CR>
an 50.90.150 &Syntax.PQ.Password\ file :cal SetSyn("passwd")<CR>
an 50.90.490 &Syntax.PQ.Pbtxt :cal SetSyn("pbtxt")<CR>
an 50.90.160 &Syntax.PQ.PCCTS :cal SetSyn("pccts")<CR>
an 50.90.170 &Syntax.PQ.PDF :cal SetSyn("pdf")<CR>
an 50.90.180 &Syntax.PQ.Perl.Perl :cal SetSyn("perl")<CR>
@@ -457,19 +451,20 @@ an 50.100.180 &Syntax.R.RCS.RCS\ file :cal SetSyn("rcs")<CR>
an 50.100.190 &Syntax.R.Readline\ config :cal SetSyn("readline")<CR>
an 50.100.200 &Syntax.R.Rebol :cal SetSyn("rebol")<CR>
an 50.100.210 &Syntax.R.ReDIF :cal SetSyn("redif")<CR>
an 50.100.220 &Syntax.R.Relax\ NG :cal SetSyn("rng")<CR>
an 50.100.230 &Syntax.R.Remind :cal SetSyn("remind")<CR>
an 50.100.240 &Syntax.R.Relax\ NG\ compact :cal SetSyn("rnc")<CR>
an 50.100.250 &Syntax.R.Renderman.Renderman\ Shader\ Lang :cal SetSyn("sl")<CR>
an 50.100.260 &Syntax.R.Renderman.Renderman\ Interface\ Bytestream :cal SetSyn("rib")<CR>
an 50.100.270 &Syntax.R.Resolv\.conf :cal SetSyn("resolv")<CR>
an 50.100.280 &Syntax.R.Reva\ Forth :cal SetSyn("reva")<CR>
an 50.100.290 &Syntax.R.Rexx :cal SetSyn("rexx")<CR>
an 50.100.300 &Syntax.R.Robots\.txt :cal SetSyn("robots")<CR>
an 50.100.310 &Syntax.R.RockLinux\ package\ desc\. :cal SetSyn("desc")<CR>
an 50.100.320 &Syntax.R.Rpcgen :cal SetSyn("rpcgen")<CR>
an 50.100.330 &Syntax.R.RPL/2 :cal SetSyn("rpl")<CR>
an 50.100.340 &Syntax.R.ReStructuredText :cal SetSyn("rst")<CR>
an 50.100.220 &Syntax.R.Rego :cal SetSyn("rego")<CR>
an 50.100.230 &Syntax.R.Relax\ NG :cal SetSyn("rng")<CR>
an 50.100.240 &Syntax.R.Remind :cal SetSyn("remind")<CR>
an 50.100.250 &Syntax.R.Relax\ NG\ compact :cal SetSyn("rnc")<CR>
an 50.100.260 &Syntax.R.Renderman.Renderman\ Shader\ Lang :cal SetSyn("sl")<CR>
an 50.100.270 &Syntax.R.Renderman.Renderman\ Interface\ Bytestream :cal SetSyn("rib")<CR>
an 50.100.280 &Syntax.R.Resolv\.conf :cal SetSyn("resolv")<CR>
an 50.100.290 &Syntax.R.Reva\ Forth :cal SetSyn("reva")<CR>
an 50.100.300 &Syntax.R.Rexx :cal SetSyn("rexx")<CR>
an 50.100.310 &Syntax.R.Robots\.txt :cal SetSyn("robots")<CR>
an 50.100.320 &Syntax.R.RockLinux\ package\ desc\. :cal SetSyn("desc")<CR>
an 50.100.330 &Syntax.R.Rpcgen :cal SetSyn("rpcgen")<CR>
an 50.100.340 &Syntax.R.RPL/2 :cal SetSyn("rpl")<CR>
an 50.100.350 &Syntax.R.ReStructuredText :cal SetSyn("rst")<CR>
an 50.110.100 &Syntax.M.ReStructuredText\ with\ R\ statements :cal SetSyn("rrst")<CR>
an 50.120.100 &Syntax.R.RTF :cal SetSyn("rtf")<CR>
an 50.120.110 &Syntax.R.Ruby :cal SetSyn("ruby")<CR>
@@ -652,11 +647,11 @@ an 50.170.440 &Syntax.WXYZ.Zimbu :cal SetSyn("zimbu")<CR>
an 50.195 &Syntax.-SEP1- <Nop>
an <silent> 50.200 &Syntax.Set\ '&syntax'\ Only :call <SID>Setsynonly()<CR>
fun! s:Setsynonly()
fun s:Setsynonly()
let s:syntax_menu_synonly = 1
endfun
an <silent> 50.202 &Syntax.Set\ '&filetype'\ Too :call <SID>Nosynonly()<CR>
fun! s:Nosynonly()
fun s:Nosynonly()
if exists("s:syntax_menu_synonly")
unlet s:syntax_menu_synonly
endif

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 8.2 script
" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" Last Change: January 30, 2022
" Version: 8.2-26
" Last Change: February 09, 2022
" Version: 8.2-28
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
" Automatically generated keyword lists: {{{1
@@ -66,8 +66,8 @@ syn keyword vimErrSetting contained bioskey biosk conskey consk autoprint beauti
" AutoCmd Events {{{2
syn case ignore
syn keyword vimAutoEvent contained BufAdd BufDelete BufFilePost BufHidden BufNew BufRead BufReadPost BufUnload BufWinLeave BufWrite BufWritePost CmdlineChanged CmdlineLeave CmdwinEnter ColorScheme ColorSchemePre CompleteChanged CompleteDone CompleteDonePre CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileExplorer FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SafeStateAgain SessionLoadPost ShellCmdPost ShellFilterPost SigUSR1 SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TerminalWinOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew
syn keyword vimAutoEvent contained BufCreate BufEnter BufFilePre BufLeave BufNewFile BufReadCmd BufReadPre BufWinEnter BufWipeout BufWriteCmd BufWritePre CmdlineEnter CmdUndefined CmdwinLeave
syn keyword vimAutoEvent contained BufAdd BufDelete BufFilePost BufHidden BufNew BufRead BufReadPost BufUnload BufWinLeave BufWrite BufWritePost CmdlineChanged CmdlineLeave CmdwinEnter ColorScheme CompleteChanged CompleteDone CompleteDonePre CursorHold CursorHoldI CursorMoved CursorMovedI DiffUpdated DirChanged DirChangedPre EncodingChanged ExitPre FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileExplorer FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave InsertLeavePre MenuPopup ModeChanged OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SafeState SafeStateAgain SessionLoadPost ShellCmdPost ShellFilterPost SigUSR1 SourceCmd SourcePost SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TerminalOpen TerminalWinOpen TermResponse TextChanged TextChangedI TextChangedP TextYankPost User VimEnter VimLeave VimLeavePre VimResized VimResume VimSuspend WinClosed WinEnter WinLeave WinNew
syn keyword vimAutoEvent contained BufCreate BufEnter BufFilePre BufLeave BufNewFile BufReadCmd BufReadPre BufWinEnter BufWipeout BufWriteCmd BufWritePre CmdlineEnter CmdUndefined CmdwinLeave ColorSchemePre
" Highlight commonly used Groupnames {{{2
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
@@ -78,12 +78,12 @@ syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
syn keyword vimFuncName contained abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getmarklist getreg gettagstack getwinvar has_key histget hlset input inputsecret isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_channel test_null_partial test_scrollbar test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winnr win_splitmove
syn keyword vimFuncName contained acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmatches getreginfo gettext glob haslocaldir histnr hostname inputdialog insert isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_dict test_null_string test_setmouse timer_info tolower type values wincol win_gettype winlayout winrestcmd winwidth
syn keyword vimFuncName contained add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmousepos getregtype getwininfo glob2regpat hasmapto hlexists iconv inputlist internal_get_nv_cmdchar islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_event test_null_function test_option_not_set test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline winrestview wordcount
syn keyword vimFuncName contained and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getpid gettabinfo getwinpos globpath histadd hlget indent inputrestore interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_ignore_error test_null_job test_override test_srand_seed timer_start tr undofile visualmode win_execute winheight win_move_separator winsaveview writefile
syn keyword vimFuncName contained append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpos gettabvar getwinposx has histdel hlID index inputsave invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_null_blob test_null_list test_refcount test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin win_move_statusline win_screenpos xor
syn keyword vimFuncName contained appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize getloclist getqflist gettabwinvar getwinposy
syn keyword vimFuncName contained abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getmarklist getreg gettabwinvar getwinposx globpath histadd hlget indent inputrestore invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_null_blob test_null_list test_refcount test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winnr win_splitmove
syn keyword vimFuncName contained acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmatches getreginfo gettagstack getwinposy has histdel hlID index inputsave isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_channel test_null_partial test_setmouse timer_info tolower type values wincol win_gettype winlayout winrestcmd winwidth
syn keyword vimFuncName contained add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmousepos getregtype gettext getwinvar has_key histget hlset input inputsecret isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_dict test_null_string test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline winrestview wordcount
syn keyword vimFuncName contained and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getpid gettabinfo getwininfo glob haslocaldir histnr hostname inputdialog insert islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_event test_null_function test_option_not_set test_srand_seed timer_start tr undofile visualmode win_execute winheight win_move_separator winsaveview writefile
syn keyword vimFuncName contained append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpos gettabvar getwinpos glob2regpat hasmapto hlexists iconv inputlist interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_ignore_error test_null_job test_override test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin win_move_statusline win_screenpos xor
syn keyword vimFuncName contained appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize getloclist getqflist
"--- syntax here and above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1

View File

@@ -955,7 +955,7 @@ NOTE: Completion works for many commands. Just try pressing CTRL-D and
Publisher: New Riders
The first book completely dedicated to Vim. Especially useful for beginners.
There are many examples and pictures.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
This book is older and more about Vi than Vim, but also recommended:
Learning the Vi Editor - by Linda Lamb

View File

@@ -954,7 +954,7 @@ Anm
Verlaag: New Riders
Dös ist dös eerste Buech, wo ganz yn n Wimm gwidmt ist, netty dös Grechte für
Anfönger. Es haat ayn Wösn Beispiler und aau Bilder drinn.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
Dös folgete Buech ist schoon ölter und meerer über n Urwimm als wie über n
Wimm, aber aau zo n Empfelhen: Textbearbeitung mit dem vi-Editor - von dyr
@@ -968,7 +968,7 @@ Anm
mitp-Verlaag, Buechlaittzal 978-3-8266-1781-2
Trotz dyr recht pfrengen Darstöllung ist s durch seine viln nützlichnen Bei-
spiler aau für Einsteiger grad grecht. Probhaeupster und de Beispilschripfer
seind zesig zo n Kriegn; see http://iccf-holland.org/click5.html
seind zesig zo n Kriegn; see https://iccf-holland.org/click5.html
Verfasst habnd dönn Schainer dyr PIERCE Michael C. und WARE Robert K. von dyr
Kolraader Knappnschuel (Colorado School of Mines). Er beruet auf Entwürff, wo

View File

@@ -954,7 +954,7 @@ Anmörkung: D Vergöntzung geit s für aynn Hauffen Faudungen. Versuech ainfa
Verlaag: New Riders
Dös ist dös eerste Buech, wo ganz yn n Wimm gwidmt ist, netty dös Grechte für
Anfönger. Es haat ayn Wösn Beispiler und aau Bilder drinn.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
Dös folgete Buech ist schoon ölter und meerer über n Urwimm als wie über n
Wimm, aber aau zo n Empfelhen: Textbearbeitung mit dem vi-Editor - von dyr
@@ -968,7 +968,7 @@ Anmörkung: D Vergöntzung geit s für aynn Hauffen Faudungen. Versuech ainfa
mitp-Verlaag, Buechlaittzal 978-3-8266-1781-2
Trotz dyr recht pfrengen Darstöllung ist s durch seine viln nützlichnen Bei-
spiler aau für Einsteiger grad grecht. Probhaeupster und de Beispilschripfer
seind zesig zo n Kriegn; see http://iccf-holland.org/click5.html
seind zesig zo n Kriegn; see https://iccf-holland.org/click5.html
Verfasst habnd dönn Schainer dyr PIERCE Michael C. und WARE Robert K. von dyr
Kolraader Knappnschuel (Colorado School of Mines). Er beruet auf Entwürff, wo

View File

@@ -1017,7 +1017,7 @@
Издател: New Riders
Това е първата книга, изцяло посветена на Vim. Особено полезна е за
начинаещи. В нея ще намерите много примери и картинки.
Вижте http://iccf-holland.org/click5.html
Вижте https://iccf-holland.org/click5.html
Следната книга е по-стара и по-скоро за Vi отколкото за Vim, но също се препоръчва:
Learning the Vi Editor - от Linda Lamb

View File

@@ -792,7 +792,7 @@ Nota: Aix
Editorial: New Riders
És el primer llibre dedicat completament al Vim, especialment útil per a
usuaris novells. Conté molts exemples i diagrames.
Vegeu http://iccf-holland.org/click5.html
Vegeu https://iccf-holland.org/click5.html
Aquest altre és més vell i tracta més sobre el Vi que sobre el Vim:
Learning the Vi Editor - de Linda Lamb

View File

@@ -792,7 +792,7 @@ Nota: Així s'evita haver de prémer i , l'últim caràcter, el text a inserir,
Editorial: New Riders
És el primer llibre dedicat completament al Vim, especialment útil per a
usuaris novells. Conté molts exemples i diagrames.
Vegeu http://iccf-holland.org/click5.html
Vegeu https://iccf-holland.org/click5.html
Aquest altre és més vell i tracta més sobre el Vi que sobre el Vim:
Learning the Vi Editor - de Linda Lamb

View File

@@ -791,7 +791,7 @@ Pozn
Nakladatel: New Riders
První kniha určená pro Vim. Obzvláště vhodná pro začátečníky.
Obsahuje množství příkladů a obrázků.
viz http://iccf-holland.org/click5.html
viz https://iccf-holland.org/click5.html
Tato kniha je starší a více věnovaná Vi než Vim, ale také doporučená:
Learning the Vi Editor - od Linda Lamb

View File

@@ -791,7 +791,7 @@ Pozn
Nakladatel: New Riders
První kniha určená pro Vim. Obzvláště vhodná pro začátečníky.
Obsahuje množství příkladů a obrázků.
viz http://iccf-holland.org/click5.html
viz https://iccf-holland.org/click5.html
Tato kniha je starší a více věnovaná Vi než Vim, ale také doporučená:
Learning the Vi Editor - od Linda Lamb

View File

@@ -791,7 +791,7 @@ Poznámka: Tímto se vyhneš stisknutí i , posledního znaku, textu na vlože
Nakladatel: New Riders
První kniha určená pro Vim. Obzvláště vhodná pro začátečníky.
Obsahuje množství příkladů a obrázků.
viz http://iccf-holland.org/click5.html
viz https://iccf-holland.org/click5.html
Tato kniha je starší a více věnovaná Vi než Vim, ale také doporučená:
Learning the Vi Editor - od Linda Lamb

View File

@@ -953,7 +953,7 @@ BEM
Forlag: New Riders
Den første bog som helt er tilegnet Vim. Specielt nyttig for begyndere.
Der er mange eksempler og billeder.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne bog er ældre og mere om Vi end Vim, men anbefales også:
Learning the Vi Editor - af Linda Lamb

View File

@@ -953,7 +953,7 @@ BEMÆRK: Fuldførelse virker til mange kommandoer. Prøv blot at trykke på
Forlag: New Riders
Den første bog som helt er tilegnet Vim. Specielt nyttig for begyndere.
Der er mange eksempler og billeder.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne bog er ældre og mere om Vi end Vim, men anbefales også:
Learning the Vi Editor - af Linda Lamb

View File

@@ -956,7 +956,7 @@ Anmerkung: Vervollst
Verlag: New Riders
Das erste Buch, welches durchgängig Vim gewidmet ist. Besonders nützlich
für Anfänger. Viele Beispiele und Bilder sind enthalten.
Siehe http://iccf-holland.org/click5.html
Siehe https://iccf-holland.org/click5.html
Folgendes Buch ist älter und mehr über Vi als Vim, aber auch empfehlenswert:
Textbearbeitung mit dem Vi-Editor - von Linda Lamb und Arnold Robbins
@@ -970,7 +970,7 @@ Anmerkung: Vervollst
mitp-Verlag, ISBN 3-8266-1425-9
Trotz der kompakten Darstellung ist es durch viele nützliche Beispiele auch
für Einsteiger empfehlenswert. Probekapitel und die Beispielskripte sind
online erhältlich. Siehe http://iccf-holland.org/click5.html
online erhältlich. Siehe https://iccf-holland.org/click5.html
Dieses Tutorial wurde geschrieben von Michael C. Pierce und Robert K. Ware,
Colorado School of Mines. Es benutzt Ideen, die Charles Smith, Colorado State

View File

@@ -956,7 +956,7 @@ Anmerkung: Vervollständigung funktioniert für viele Kommandos. Probiere
Verlag: New Riders
Das erste Buch, welches durchgängig Vim gewidmet ist. Besonders nützlich
für Anfänger. Viele Beispiele und Bilder sind enthalten.
Siehe http://iccf-holland.org/click5.html
Siehe https://iccf-holland.org/click5.html
Folgendes Buch ist älter und mehr über Vi als Vim, aber auch empfehlenswert:
Textbearbeitung mit dem Vi-Editor - von Linda Lamb und Arnold Robbins
@@ -970,7 +970,7 @@ Anmerkung: Vervollständigung funktioniert für viele Kommandos. Probiere
mitp-Verlag, ISBN 3-8266-1425-9
Trotz der kompakten Darstellung ist es durch viele nützliche Beispiele auch
für Einsteiger empfehlenswert. Probekapitel und die Beispielskripte sind
online erhältlich. Siehe http://iccf-holland.org/click5.html
online erhältlich. Siehe https://iccf-holland.org/click5.html
Dieses Tutorial wurde geschrieben von Michael C. Pierce und Robert K. Ware,
Colorado School of Mines. Es benutzt Ideen, die Charles Smith, Colorado State

View File

@@ -796,7 +796,7 @@
Το πρώτο βιβλίο πλήρως αφιερωμένο στον Vim.
Ιδιαίτερα χρήσιμο για αρχάριους.
Υπάρχουν πολλά παραδείγματα και εικόνες.
Δείτε την http://iccf-holland.org/click5.html
Δείτε την https://iccf-holland.org/click5.html
Αυτό το βιβλίο είναι παλιότερο και περισσότερο για τον Vi παρά για τον Vim,
αλλά επίσης συνιστώμενο:

View File

@@ -796,7 +796,7 @@
’¦ §¨é«¦ ™ ™¢å¦ §¢ã¨àª ˜­ œ¨à£â¤¦ ©«¦¤ Vim.
ˆ› ˜å«œ¨˜ ®¨ã© £¦ š ˜ ˜¨®á¨ ¦¬ª.
“§á¨®¦¬¤ §¦¢¢á §˜¨˜›œåš£˜«˜ ¡˜  œ ¡æ¤œª.
ƒœå«œ «ž¤ http://iccf-holland.org/click5.html
ƒœå«œ «ž¤ https://iccf-holland.org/click5.html
€¬«æ «¦ ™ ™¢å¦ œå¤˜  §˜¢ æ«œ¨¦ ¡˜  §œ¨ ©©æ«œ¨¦ š ˜ «¦¤ Vi §˜¨á š ˜ «¦¤ Vim,
˜¢¢á œ§å©žª ©¬¤ ©«é£œ¤¦:

View File

@@ -796,7 +796,7 @@
Το πρώτο βιβλίο πλήρως αφιερωμένο στον Vim.
Ιδιαίτερα χρήσιμο για αρχάριους.
Υπάρχουν πολλά παραδείγματα και εικόνες.
Δείτε την http://iccf-holland.org/click5.html
Δείτε την https://iccf-holland.org/click5.html
Αυτό το βιβλίο είναι παλιότερο και περισσότερο για τον Vi παρά για τον Vim,
αλλά επίσης συνιστώμενο:

View File

@@ -951,7 +951,7 @@ NAPOMENA: Mogu
Izdavač: New Riders
Prva knjiga potpuno posvećena Vim-u. Vrlo korisna za početnike.
Sa mnogo primjera i slika.
Posjetite http://iccf-holland.org/click5.html
Posjetite https://iccf-holland.org/click5.html
Sljedeća knjiga je nešto starija i više o Vi-u nego o Vim-u, preporučamo:
Learning the Vi Editor - by Linda Lamb

View File

@@ -951,7 +951,7 @@ NAPOMENA: Mogu
Izdavač: New Riders
Prva knjiga potpuno posvećena Vim-u. Vrlo korisna za početnike.
Sa mnogo primjera i slika.
Posjetite http://iccf-holland.org/click5.html
Posjetite https://iccf-holland.org/click5.html
Sljedeća knjiga je nešto starija i više o Vi-u nego o Vim-u, preporučamo:
Learning the Vi Editor - by Linda Lamb

View File

@@ -951,7 +951,7 @@ NAPOMENA: Moguće je dopuniti mnoge naredbe. Koristite CTRL-D i <TAB>.
Izdavač: New Riders
Prva knjiga potpuno posvećena Vim-u. Vrlo korisna za početnike.
Sa mnogo primjera i slika.
Posjetite http://iccf-holland.org/click5.html
Posjetite https://iccf-holland.org/click5.html
Sljedeća knjiga je nešto starija i više o Vi-u nego o Vim-u, preporučamo:
Learning the Vi Editor - by Linda Lamb

View File

@@ -810,7 +810,7 @@ Megj: A Vimben a sor legv
Publisher: New Riders
The first book completely dedicated to Vim. Especially useful for beginners.
There are many examples and pictures.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
This book is older and more about Vi than Vim, but also recommended:
Learning the Vi Editor - by Linda Lamb

View File

@@ -810,7 +810,7 @@ Megj: A Vimben a sor legv
Publisher: New Riders
The first book completely dedicated to Vim. Especially useful for beginners.
There are many examples and pictures.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
This book is older and more about Vi than Vim, but also recommended:
Learning the Vi Editor - by Linda Lamb

View File

@@ -810,7 +810,7 @@ Megj: A Vimben a sor legvégére is lehet állni, azonban ez elődjében
Publisher: New Riders
The first book completely dedicated to Vim. Especially useful for beginners.
There are many examples and pictures.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
This book is older and more about Vi than Vim, but also recommended:
Learning the Vi Editor - by Linda Lamb

View File

@@ -951,7 +951,7 @@ NOTA: Il completamento
Vim - Vi Improved - di Steve Oualline Editore: New Riders
Il primo libro completamente dedicato a Vim. Utile specie per principianti.
Contiene molti esempi e figure.
Vedi http://iccf-holland.org/click5.html
Vedi https://iccf-holland.org/click5.html
Quest'altro libro è più su Vi che su Vim, ma è pure consigliato:
Learning the Vi Editor - di Linda Lamb e Arnold Robbins

View File

@@ -951,7 +951,7 @@ NOTA: Il completamento è disponibile per molti comandi. Prova a battere
Vim - Vi Improved - di Steve Oualline Editore: New Riders
Il primo libro completamente dedicato a Vim. Utile specie per principianti.
Contiene molti esempi e figure.
Vedi http://iccf-holland.org/click5.html
Vedi https://iccf-holland.org/click5.html
Quest'altro libro è più su Vi che su Vim, ma è pure consigliato:
Learning the Vi Editor - di Linda Lamb e Arnold Robbins

View File

@@ -955,7 +955,7 @@ NOTE:
出版社: New Riders
最初の本は完全に Vim のために書かれました。とりわけ初心者にはお奨めです。
多くの例題や図版が掲載されています。
次のURLを参照して下さい http://iccf-holland.org/click5.html
次のURLを参照して下さい https://iccf-holland.org/click5.html
次は Vim よりも Vi について書かれた古い本ですが推薦します:
Learning the Vi Editor - by Linda Lamb

View File

@@ -955,7 +955,7 @@ NOTE:
出版社: New Riders
最初の本は完全に Vim のために書かれました。とりわけ初心者にはお奨めです。
多くの例題や図版が掲載されています。
次のURLを参照して下さい http://iccf-holland.org/click5.html
次のURLを参照して下さい https://iccf-holland.org/click5.html
次は Vim よりも Vi について書かれた古い本ですが推薦します:
Learning the Vi Editor - by Linda Lamb

View File

@@ -955,7 +955,7 @@ NOTE: 補完は多くのコマンドで動作します。そして CTRL-D と <T
出版社: New Riders
最初の本は完全に Vim のために書かれました。とりわけ初心者にはお奨めです。
多くの例題や図版が掲載されています。
次のURLを参照して下さい http://iccf-holland.org/click5.html
次のURLを参照して下さい https://iccf-holland.org/click5.html
次は Vim よりも Vi について書かれた古い本ですが推薦します:
Learning the Vi Editor - by Linda Lamb

View File

@@ -949,7 +949,7 @@ ce 는 단어를 치환하는 것 뿐만 아니라, 내용을 삽입할 수 있
출판사: New Riders
이 책은 완전히 빔에 대해서만 다루고 있습니다. 특히 초보자들에게 유용합니다.
많은 예제와 그림이 있습니다.
다음을 참고하십시오: http://iccf-holland.org/click5.html
다음을 참고하십시오: https://iccf-holland.org/click5.html
다음 책은 좀 오래된 책으로 빔보다는 Vi에 대해 다루고 있지만, 역시 추천할 만
합니다:

View File

@@ -949,7 +949,7 @@ ce
출판사: New Riders
이 책은 완전히 빔에 대해서만 다루고 있습니다. 특히 초보자들에게 유용합니다.
많은 예제와 그림이 있습니다.
다음을 참고하십시오: http://iccf-holland.org/click5.html
다음을 참고하십시오: https://iccf-holland.org/click5.html
다음 책은 좀 오래된 책으로 빔보다는 Vi에 대해 다루고 있지만, 역시 추천할 만
합니다:

View File

@@ -949,7 +949,7 @@ ce 는 단어를 치환하는 것 뿐만 아니라, 내용을 삽입할 수 있
출판사: New Riders
이 책은 완전히 빔에 대해서만 다루고 있습니다. 특히 초보자들에게 유용합니다.
많은 예제와 그림이 있습니다.
다음을 참고하십시오: http://iccf-holland.org/click5.html
다음을 참고하십시오: https://iccf-holland.org/click5.html
다음 책은 좀 오래된 책으로 빔보다는 Vi에 대해 다루고 있지만, 역시 추천할 만
합니다:

View File

@@ -986,7 +986,7 @@ PIEZĪME: Pabeigšana strādā dažādām komandām.
Vim - Vi Improved, Steve Oualline, New Riders
Šī grāmata ir tieši par Vim, un ir ļoti ieteicama iesācējiem.
Daudzi piemēri un attēli no tās pieejami: http://iccf-holland.org/click5.html
Daudzi piemēri un attēli no tās pieejami: https://iccf-holland.org/click5.html
Otra, vecāka grāmata ir par Vi, nevis Vim, bet arī ir ļoti noderīga:

View File

@@ -953,7 +953,7 @@ MERK: Fullf
Utgiver: New Riders
Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for
nybegynnere. Inneholder mange eksempler og illustrasjoner.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også:
«Learning the Vi Editor» av Linda Lamb

View File

@@ -953,7 +953,7 @@ MERK: Fullføring fungerer for mange kommandoer. Prøv ved å trykke CTRL-D og
Utgiver: New Riders
Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for
nybegynnere. Inneholder mange eksempler og illustrasjoner.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også:
«Learning the Vi Editor» av Linda Lamb

View File

@@ -927,7 +927,7 @@
Uitgever: New Riders
Dit is het eerste boek dat geheel aan Vim is gewijd. Speciaal geschikt
voor beginners. Met veel voorbeelden en afbeeldingen.
Zie http://iccf-holland.org/click5.html
Zie https://iccf-holland.org/click5.html
Het volgende boek is ouder en gaat meer over Vi dan Vim, maar het wordt
toch aanbevolen:

View File

@@ -927,7 +927,7 @@
Uitgever: New Riders
Dit is het eerste boek dat geheel aan Vim is gewijd. Speciaal geschikt
voor beginners. Met veel voorbeelden en afbeeldingen.
Zie http://iccf-holland.org/click5.html
Zie https://iccf-holland.org/click5.html
Het volgende boek is ouder en gaat meer over Vi dan Vim, maar het wordt
toch aanbevolen:

View File

@@ -953,7 +953,7 @@ MERK: Fullf
Utgiver: New Riders
Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for
nybegynnere. Inneholder mange eksempler og illustrasjoner.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også:
«Learning the Vi Editor» av Linda Lamb

View File

@@ -953,7 +953,7 @@ MERK: Fullføring fungerer for mange kommandoer. Prøv ved å trykke CTRL-D og
Utgiver: New Riders
Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for
nybegynnere. Inneholder mange eksempler og illustrasjoner.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også:
«Learning the Vi Editor» av Linda Lamb

View File

@@ -954,7 +954,7 @@ UWAGA: Uzupe
Wydawca: New Riders
Pierwsza książka całkowicie poświęcona Vimowi. Użyteczna zwłaszcza dla
początkujących. Zawiera wiele przykładów i ilustracji.
Zobacz http://iccf-holland.org./click5.html
Zobacz https://iccf-holland.org./click5.html
Starsza pozycja i bardziej o Vi niż o Vimie, ale także warta
polecenia:

View File

@@ -954,7 +954,7 @@ UWAGA: Uzupe
Wydawca: New Riders
Pierwsza książka całkowicie poświęcona Vimowi. Użyteczna zwłaszcza dla
początkujących. Zawiera wiele przykładów i ilustracji.
Zobacz http://iccf-holland.org./click5.html
Zobacz https://iccf-holland.org./click5.html
Starsza pozycja i bardziej o Vi niż o Vimie, ale także warta
polecenia:

View File

@@ -954,7 +954,7 @@ UWAGA: Uzupełnianie działa dla wielu poleceń. Spróbuj wcisnąć CTRL-D i <TA
Wydawca: New Riders
Pierwsza książka całkowicie poświęcona Vimowi. Użyteczna zwłaszcza dla
początkujących. Zawiera wiele przykładów i ilustracji.
Zobacz http://iccf-holland.org./click5.html
Zobacz https://iccf-holland.org./click5.html
Starsza pozycja i bardziej o Vi niż o Vimie, ale także warta
polecenia:

View File

@@ -975,7 +975,7 @@ NOTA: A completa
Editora: New Riders
Este é o primeiro livro completamente dedicado ao Vim. Especialmente útil
para iniciantes, com muitos exemplos e ilustrações.
Veja http://iccf-holland.org/click5.html
Veja https://iccf-holland.org/click5.html
Esse livro é mais antigo e mais sobre o Vi do que sobre o Vim, mas também é
recomendado:

View File

@@ -975,7 +975,7 @@ NOTA: A completação funciona com muitos comandos. Basta pressionar CTRL-D e
Editora: New Riders
Este é o primeiro livro completamente dedicado ao Vim. Especialmente útil
para iniciantes, com muitos exemplos e ilustrações.
Veja http://iccf-holland.org/click5.html
Veja https://iccf-holland.org/click5.html
Esse livro é mais antigo e mais sobre o Vi do que sobre o Vim, mas também é
recomendado:

View File

@@ -980,7 +980,7 @@
Эта книга полностью посвящена Vim. Особенно полезна она будет новичкам.
Содержит множество примеров и иллюстраций.
См. http://iccf-holland.org/click5.html
См. https://iccf-holland.org/click5.html
Следующая книга более почтенного возраста и посвящена больше Vi, чем Vim,
однако также рекомендуется:

View File

@@ -980,7 +980,7 @@
Эта книга полностью посвящена Vim. Особенно полезна она будет новичкам.
Содержит множество примеров и иллюстраций.
См. http://iccf-holland.org/click5.html
См. https://iccf-holland.org/click5.html
Следующая книга более почтенного возраста и посвящена больше Vi, чем Vim,
однако также рекомендуется:

View File

@@ -980,7 +980,7 @@
Эта книга полностью посвящена Vim. Особенно полезна она будет новичкам.
Содержит множество примеров и иллюстраций.
См. http://iccf-holland.org/click5.html
См. https://iccf-holland.org/click5.html
Следующая книга более почтенного возраста и посвящена больше Vi, чем Vim,
однако также рекомендуется:

View File

@@ -986,7 +986,7 @@ POZN
Vydavateľ: New Riders
Prvá kniha určená pre Vim. Špeciálne vhodná pre začiatočníkov.
Obsahuje množstvo príkladov a obrázkov.
Pozri na http://iccf-holland.org/click5.html
Pozri na https://iccf-holland.org/click5.html
Táto kniha je staršia a je viac o Vi ako o Vim, ale je tiež odporúčaná:
Learning the Vi Editor - od Linda Lamb

View File

@@ -986,7 +986,7 @@ POZN
Vydavateľ: New Riders
Prvá kniha určená pre Vim. Špeciálne vhodná pre začiatočníkov.
Obsahuje množstvo príkladov a obrázkov.
Pozri na http://iccf-holland.org/click5.html
Pozri na https://iccf-holland.org/click5.html
Táto kniha je staršia a je viac o Vi ako o Vim, ale je tiež odporúčaná:
Learning the Vi Editor - od Linda Lamb

View File

@@ -986,7 +986,7 @@ POZNÁMKA: Dokončovanie funguje pre veľa príkazov. Vyskúšaj stlačenie
Vydavateľ: New Riders
Prvá kniha určená pre Vim. Špeciálne vhodná pre začiatočníkov.
Obsahuje množstvo príkladov a obrázkov.
Pozri na http://iccf-holland.org/click5.html
Pozri na https://iccf-holland.org/click5.html
Táto kniha je staršia a je viac o Vi ako o Vim, ale je tiež odporúčaná:
Learning the Vi Editor - od Linda Lamb

View File

@@ -951,7 +951,7 @@ NAPOMENA: Mogu
Izdavač: New Riders
Prva knjiga potpuno posvećena Vim-u. Naročito korisna za početnike.
Ima mnoštvo primera i slika.
Vidite http://iccf-holland.org/click5.html
Vidite https://iccf-holland.org/click5.html
Sledeća knjiga je starija i više govori o Vi-u nego o Vim-u, ali je takođe
preporučujemo:

View File

@@ -951,7 +951,7 @@ NAPOMENA: Moguće je dopuniti mnoge komande. Samo probajte CTRL-D i <TAB>.
Izdavač: New Riders
Prva knjiga potpuno posvećena Vim-u. Naročito korisna za početnike.
Ima mnoštvo primera i slika.
Vidite http://iccf-holland.org/click5.html
Vidite https://iccf-holland.org/click5.html
Sledeća knjiga je starija i više govori o Vi-u nego o Vim-u, ali je takođe
preporučujemo:

View File

@@ -812,7 +812,7 @@ Notera: Detta undviker att beh
Förlag: New Riders
Den första boken som är endast behandlar Vim. Speciellt användbar för
nybörjare. Det finns många exempel och bilder.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Den här boken är äldre och behandlar mer Vi än Vim, men rekommenderas också:
Learning the Vi Editor - av Linda Lamb

View File

@@ -812,7 +812,7 @@ Notera: Detta undviker att behöva skriva i , det sista tecknet, texten att
Förlag: New Riders
Den första boken som är endast behandlar Vim. Speciellt användbar för
nybörjare. Det finns många exempel och bilder.
Se http://iccf-holland.org/click5.html
Se https://iccf-holland.org/click5.html
Den här boken är äldre och behandlar mer Vi än Vim, men rekommenderas också:
Learning the Vi Editor - av Linda Lamb

View File

@@ -956,7 +956,7 @@ Not: Arama dosyan
Tümüyle Vim için hazırlanmış ilk kitaptır. Özellikle ilk kullanıcılar için
çok uygundur.
Kitapta birçok örnek ve resim bulunmaktadır.
http://iccf-holland.org/click5.html adresine bakabilirsiniz.
https://iccf-holland.org/click5.html adresine bakabilirsiniz.
Bu kitap daha eskidir ve Vim'den daha çok Vi içindir ancak tavsiye edilir:

View File

@@ -956,7 +956,7 @@ Not: Arama dosyanın sonuna ulaştığında dosyanın başından sürecektir. Bu
Tümüyle Vim için hazırlanmış ilk kitaptır. Özellikle ilk kullanıcılar için
çok uygundur.
Kitapta birçok örnek ve resim bulunmaktadır.
http://iccf-holland.org/click5.html adresine bakabilirsiniz.
https://iccf-holland.org/click5.html adresine bakabilirsiniz.
Bu kitap daha eskidir ve Vim'den daha çok Vi içindir ancak tavsiye edilir:

View File

@@ -965,7 +965,7 @@
Publisher: New Riders
Особливо корисна для початківців.
Там багато прикладів і ілюстрацій.
Дивіться http://iccf-holland.org/click5.html
Дивіться https://iccf-holland.org/click5.html
Ці уроки були написані Майклом С. Пірсом та Робертом Уаром.

View File

@@ -955,7 +955,7 @@ NOTE: Completion works for many commands. Just try pressing CTRL-D and
Publisher: New Riders
The first book completely dedicated to Vim. Especially useful for beginners.
There are many examples and pictures.
See http://iccf-holland.org/click5.html
See https://iccf-holland.org/click5.html
This book is older and more about Vi than Vim, but also recommended:
Learning the Vi Editor - by Linda Lamb

View File

@@ -792,7 +792,7 @@ Chú ý: Lệnh này thay cho việc gõ i , ký tự cuối cùng, văn bản
Nhà xuất bản: New Riders
Cuốn sách đầu tiên dành hoàn toàn cho Vim. Đặc biệt có ích cho người mới.
Có rất nhiều ví dụ và tranh ảnh.
Hãy xem: http://iccf-holland.org/click5.html
Hãy xem: https://iccf-holland.org/click5.html
Cuốn sách tiếp theo này xuất bản sớm hơn và nói nhiều về Vi hơn là Vim,
nhưng cũng rất nên đọc:

View File

@@ -805,7 +805,7 @@ Open up a line above this by typing Shift-O while the cursor is on this line.
出版社New Riders
這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例
和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html
和圖示。欲知詳情,請訪問 https://iccf-holland.org/click5.html
以下這本書比較老了而且內容主要是vi而不是vim但是也值得推薦

View File

@@ -953,7 +953,7 @@
出版社New Riders
这是第一本完全讲解 Vim 的书籍。它对于初学者特别有用。其中包含有大量实例
和图示。
欲知详情,请访问 http://iccf-holland.org/click5.html
欲知详情,请访问 https://iccf-holland.org/click5.html
以下这本书比较老了而且内容更多是关于 Vi 而非 Vim但是也值得推荐
Learning the Vi Editor - 作者Linda Lamb

View File

@@ -805,7 +805,7 @@ Open up a line above this by typing Shift-O while the cursor is on this line.
出版社New Riders
這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例
和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html
和圖示。欲知詳情,請訪問 https://iccf-holland.org/click5.html
以下這本書比較老了而且內容主要是vi而不是vim但是也值得推薦

View File

@@ -953,7 +953,7 @@
出版社New Riders
这是第一本完全讲解 Vim 的书籍。它对于初学者特别有用。其中包含有大量实例
和图示。
欲知详情,请访问 http://iccf-holland.org/click5.html
欲知详情,请访问 https://iccf-holland.org/click5.html
以下这本书比较老了而且内容更多是关于 Vi 而非 Vim但是也值得推荐
Learning the Vi Editor - 作者Linda Lamb

View File

@@ -805,7 +805,7 @@ Open up a line above this by typing Shift-O while the cursor is on this line.
出版社New Riders
這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例
和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html
和圖示。欲知詳情,請訪問 https://iccf-holland.org/click5.html
以下這本書比較老了而且內容主要是vi而不是vim但是也值得推薦

View File

@@ -6,6 +6,7 @@ Name[de]=Vim
Name[eo]=Vim
Name[fi]=Vim
Name[fr]=Vim
Name[ga]=Vim
Name[it]=Vim
Name[ru]=Vim
Name[sr]=Vim
@@ -16,6 +17,7 @@ GenericName[de]=Texteditor
GenericName[eo]=Tekstoredaktilo
GenericName[fi]=Tekstinmuokkain
GenericName[fr]=Éditeur de texte
GenericName[ga]=Eagarthóir Téacs
GenericName[it]=Editor di testi
GenericName[ja]=テキストエディタ
GenericName[ru]=Текстовый редактор
@@ -27,6 +29,7 @@ Comment[de]=Textdateien bearbeiten
Comment[eo]=Redakti tekstajn dosierojn
Comment[fi]=Muokkaa tekstitiedostoja
Comment[fr]=Éditer des fichiers texte
Comment[ga]=Cuir comhaid téacs in eagar
Comment[it]=Edita file di testo
Comment[ja]=テキストファイルを編集します
Comment[ru]=Редактирование текстовых файлов
@@ -57,7 +60,6 @@ Comment[es]=Edita archivos de texto
Comment[et]=Redigeeri tekstifaile
Comment[eu]=Editatu testu-fitxategiak
Comment[fa]=ویرایش پرونده‌های متنی
Comment[ga]=Eagar comhad Téacs
Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
Comment[he]=ערוך קבצי טקסט
Comment[hi]=पाठ फ़ाइलें संपादित करें
@@ -107,6 +109,7 @@ Keywords[de]=Text;Editor;
Keywords[eo]=Teksto;redaktilo;
Keywords[fi]=Teksti;muokkain;editori;
Keywords[fr]=Texte;éditeur;
Keywords[ga]=Téacs;eagarthóir;
Keywords[it]=Testo;editor;
Keywords[ja]=テキスト;エディタ;
Keywords[ru]=текст;текстовый редактор;

View File

@@ -2053,9 +2053,6 @@ PRO_AUTO = \
$(ALL_GUI_PRO) \
$(TCL_PRO)
# Resources used for the Mac are in one directory.
RSRC_DIR = os_mac_rsrc
PRO_MANUAL = os_amiga.pro os_win32.pro \
os_mswin.pro winclip.pro os_vms.pro $(PERL_PRO)
@@ -2999,11 +2996,6 @@ shadow: runtime pixmaps
cd $(SHADOWDIR)/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
$(MKDIR_P) $(SHADOWDIR)/xdiff
cd $(SHADOWDIR)/xdiff; ln -s ../../xdiff/*.[ch] .
if test -d $(RSRC_DIR); then \
cd $(SHADOWDIR); \
ln -s ../infplist.xml .; \
ln -s ../$(RSRC_DIR) ../os_mac.rsr.hqx ../dehqx.py .; \
fi
$(MKDIR_P) $(SHADOWDIR)/testdir
cd $(SHADOWDIR)/testdir; ln -s ../../testdir/Makefile \
../../testdir/Make_all.mak \

View File

@@ -969,9 +969,9 @@ do_arg_all(
old_curwin = curwin;
old_curtab = curtab;
# ifdef FEAT_GUI
#ifdef FEAT_GUI
need_mouse_correct = TRUE;
# endif
#endif
// Try closing all windows that are not in the argument list.
// Also close windows that are not full width;

View File

@@ -119,6 +119,7 @@ static struct event_name
{"CursorMovedI", EVENT_CURSORMOVEDI},
{"DiffUpdated", EVENT_DIFFUPDATED},
{"DirChanged", EVENT_DIRCHANGED},
{"DirChangedPre", EVENT_DIRCHANGEDPRE},
{"EncodingChanged", EVENT_ENCODINGCHANGED},
{"ExitPre", EVENT_EXITPRE},
{"FileEncoding", EVENT_ENCODINGCHANGED},

View File

@@ -1430,8 +1430,14 @@ do_buffer_ext(
buf = buflist_findnr(curwin->w_jumplist[jumpidx].fmark.fnum);
if (buf != NULL)
{
if (buf == curbuf || !buf->b_p_bl)
buf = NULL; // skip current and unlisted bufs
// Skip current and unlisted bufs. Also skip a quickfix
// buffer, it might be deleted soon.
if (buf == curbuf || !buf->b_p_bl
#if defined(FEAT_QUICKFIX)
|| bt_quickfix(buf)
#endif
)
buf = NULL;
else if (buf->b_ml.ml_mfp == NULL)
{
// skip unloaded buf, but may keep it for later
@@ -1467,7 +1473,11 @@ do_buffer_ext(
continue;
}
// in non-help buffer, try to skip help buffers, and vv
if (buf->b_help == curbuf->b_help && buf->b_p_bl)
if (buf->b_help == curbuf->b_help && buf->b_p_bl
#if defined(FEAT_QUICKFIX)
&& !bt_quickfix(buf)
#endif
)
{
if (buf->b_ml.ml_mfp != NULL) // found loaded buffer
break;
@@ -1485,7 +1495,11 @@ do_buffer_ext(
if (buf == NULL) // No loaded buffer, find listed one
{
FOR_ALL_BUFFERS(buf)
if (buf->b_p_bl && buf != curbuf)
if (buf->b_p_bl && buf != curbuf
#if defined(FEAT_QUICKFIX)
&& !bt_quickfix(buf)
#endif
)
break;
}
if (buf == NULL) // Still no buffer, just take one
@@ -1494,6 +1508,10 @@ do_buffer_ext(
buf = curbuf->b_next;
else
buf = curbuf->b_prev;
#if defined(FEAT_QUICKFIX)
if (bt_quickfix(buf))
buf = NULL;
#endif
}
}

Some files were not shown because too many files have changed in this diff Show More