-*usr_02.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_02.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
< You can see the user guide topics |03.9| and |usr_27.txt| in the
introduction.
-3) Options are enclosed in single apostrophes. To go to the help topic for the
- list option: >
+3) Options are enclosed in single apostrophes. To go to the help topic for
+ the list option: >
:help 'list'
< If you only know you are looking for a certain option, you can also do: >
:help options.txt
-*usr_09.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_09.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
system for using the mouse. Unfortunately, these two standards are not the
same.
Fortunately, you can customize Vim. You can make the behavior of the mouse
-work like an X Window system mouse or a Microsoft Windows mouse. The following
-command makes the mouse behave like an X Window mouse: >
+work like an X Window system mouse or a Microsoft Windows mouse. The
+following command makes the mouse behave like an X Window mouse: >
:behave xterm
-*usr_10.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_10.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
USING MARKS
-Instead of figuring out the line numbers of certain positions, remembering them
-and typing them in a range, you can use marks.
+Instead of figuring out the line numbers of certain positions, remembering
+them and typing them in a range, you can use marks.
Place the marks as mentioned in chapter 3. For example, use "mt" to mark
the top of an area and "mb" to mark the bottom. Then you can use this range
to specify the lines between the marks (including the lines with the marks): >
line 44 line 55
last line last line
-The "!!" command filters the current line through a filter. In Unix the "date"
-command prints the current time and date. "!!date<Enter>" replaces the current
-line with the output of "date". This is useful to add a timestamp to a file.
+The "!!" command filters the current line through a filter. In Unix the
+"date" command prints the current time and date. "!!date<Enter>" replaces the
+current line with the output of "date". This is useful to add a timestamp to
+a file.
Note: There is a difference between "!cmd" (e.g. using it without any file
range) and "{range}!cmd". While the former will simply execute the external
-*usr_22.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_22.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
Through the magic of autocommands and Vim scripts, the window will be filled
with the contents of the directory. It looks like this (slightly cleaned up
-so that it fits within 80 chars): >
+so that it fits within 78 chars): >
- " ===========================================================================
- " Netrw Directory Listing (netrw v180)
+ " ==========================================================================
+ " Netrw Directory Listing (netrw v180)
" /path/to/vim/runtime/doc
" Sorted by name
" Sort sequence: [\/]$,*,\(\.bak\|\~\|\.o\|\.h\|\.info\|\.swp\)[*@]\=$
" Quick Help: <F1>:help -:go up dir D:delete R:rename s:sort-by x:special
- " ===========================================================================
+ " ==========================================================================
../
./
check/
-*usr_24.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_24.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
Note:
The digraphs depend on the character set that Vim assumes you are
- using. Always use ":digraphs" to find out which digraphs are currently
- available.
+ using. Always use ":digraphs" to find out which digraphs are
+ currently available.
You can define your own digraphs by specifying the target character with a
decimal number. Example: >
-*usr_30.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_30.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
If errors were generated, they are captured and the editor positions you where
the first error occurred.
- Take a look at an example ":make" session. (Typical :make sessions generate
-far more errors and fewer stupid ones.) After typing ":make" the screen looks
-like this:
+ Take a look at an example ":make" session. (Typical :make sessions
+generate far more errors and fewer stupid ones.) After typing ":make" the
+screen looks like this:
:!make | &tee /tmp/vim215953.err ~
gcc -g -Wall -o prog main.c sub.c ~
-*usr_40.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_40.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
-count={number} The command can take a count whose default is
{number}. The resulting count can be used
through the <count> keyword.
- -bang You can use a !. If present, using <bang> will
- result in a !.
+ -bang You can use a !. If present, using <bang>
+ will result in a !.
-register You can specify a register. (The default is
the unnamed register.)
The register specification is available as
GROUPS
-The {group} item, used when defining an autocommand, groups related autocommands
-together. This can be used to delete all the autocommands in a certain group,
-for example.
+The {group} item, used when defining an autocommand, groups related
+autocommands together. This can be used to delete all the autocommands in a
+certain group, for example.
When defining several autocommands for a certain group, use the ":augroup"
command. For example, let's define autocommands for C programs: >
-*usr_41.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_41.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
charclass() class of a character
match() position where a pattern matches in a string
matchbufline() all the matches of a pattern in a buffer
- matchend() position where a pattern match ends in a string
+ matchend() position where a pattern match ends in a
+ string
matchfuzzy() fuzzy matches a string in a list of strings
matchfuzzypos() fuzzy matches a string in a list of strings
matchstr() match of a pattern in a string
indexof() index in a List where an expression is true
max() maximum value in a List
min() minimum value in a List
- count() count number of times a value appears in a List
+ count() count number of times a value appears in a
+ List
repeat() repeat a List multiple times
flatten() flatten a List
flattennew() flatten a copy of a List
Testing: *test-functions*
assert_equal() assert that two expressions values are equal
assert_equalfile() assert that two file contents are equal
- assert_notequal() assert that two expressions values are not equal
+ assert_notequal() assert that two expressions values are not
+ equal
assert_inrange() assert that an expression is inside a range
assert_match() assert that a pattern matches the value
assert_notmatch() assert that a pattern does not match the value
-*usr_44.txt* For Vim version 9.1. Last change: 2025 Oct 26
+*usr_44.txt* For Vim version 9.1. Last change: 2025 Nov 07
VIM USER MANUAL by Bram Moolenaar
ADDING TO AN EXISTING SYNTAX FILE
-We were assuming you were adding a completely new syntax file. When an existing
-syntax file works, but is missing some items, you can add items in a separate
-file. That avoids changing the distributed syntax file, which will be lost
-when installing a new version of Vim.
+We were assuming you were adding a completely new syntax file. When an
+existing syntax file works, but is missing some items, you can add items in a
+separate file. That avoids changing the distributed syntax file, which will
+be lost when installing a new version of Vim.
Write syntax commands in your file, possibly using group names from the
existing syntax. For example, to add new variable types to the C syntax file:
>