mirror of
https://github.com/vim/vim
synced 2025-03-14 22:07:51 +01:00
Problem: style issues with man pages Solution: update man pages and test_xxd.vim, since it uses the xxd man page (RestorerZ) closes: #15489 Signed-off-by: RestorerZ <restorer@mail2k.ru> Signed-off-by: Christian Brabandt <cb@256bit.org>
478 lines
22 KiB
Groff
478 lines
22 KiB
Groff
VIM(1) General Commands Manual VIM(1)
|
||
|
||
NAME
|
||
vim - Vi IMproved, a programmer's text editor
|
||
|
||
SYNOPSIS
|
||
vim [options] [file ..]
|
||
vim [options] -
|
||
vim [options] -t tag
|
||
vim [options] -q [errorfile]
|
||
|
||
ex
|
||
view
|
||
gvim gview evim eview
|
||
rvim rview rgvim rgview
|
||
|
||
DESCRIPTION
|
||
Vim is a text editor that is upwards compatible to Vi. It can be used
|
||
to edit all kinds of plain text. It is especially useful for editing
|
||
programs.
|
||
|
||
There are a lot of enhancements above Vi: multi level undo, multi win‐
|
||
dows and buffers, syntax highlighting, command line editing, filename
|
||
completion, on-line help, visual selection, etc.. See ":help
|
||
vi_diff.txt" for a summary of the differences between Vim and Vi.
|
||
|
||
While running Vim a lot of help can be obtained from the on-line help
|
||
system, with the ":help" command. See the ON-LINE HELP section below.
|
||
|
||
Most often Vim is started to edit a single file with the command
|
||
|
||
vim file
|
||
|
||
More generally Vim is started with:
|
||
|
||
vim [options] [filelist]
|
||
|
||
If the filelist is missing, the editor will start with an empty buffer.
|
||
Otherwise exactly one out of the following four may be used to choose
|
||
one or more files to be edited.
|
||
|
||
file .. A list of filenames. The first one will be the current
|
||
file and read into the buffer. The cursor will be posi‐
|
||
tioned on the first line of the buffer. You can get to the
|
||
other files with the ":next" command. To edit a file that
|
||
starts with a dash, precede the filelist with "--".
|
||
|
||
- The file to edit is read from stdin. Commands are read
|
||
from stderr, which should be a tty.
|
||
|
||
-t {tag} The file to edit and the initial cursor position depends on
|
||
a "tag", a sort of goto label. {tag} is looked up in the
|
||
tags file, the associated file becomes the current file and
|
||
the associated command is executed. Mostly this is used
|
||
for C programs, in which case {tag} could be a function
|
||
name. The effect is that the file containing that function
|
||
becomes the current file and the cursor is positioned on
|
||
the start of the function. See ":help tag-commands".
|
||
|
||
-q [errorfile]
|
||
Start in quickFix mode. The file [errorfile] is read and
|
||
the first error is displayed. If [errorfile] is omitted,
|
||
the filename is obtained from the 'errorfile' option (de‐
|
||
faults to "AztecC.Err" for the Amiga, "errors.err" on other
|
||
systems). Further errors can be jumped to with the ":cn"
|
||
command. See ":help quickfix".
|
||
|
||
Vim behaves differently, depending on the name of the command (the exe‐
|
||
cutable may still be the same file).
|
||
|
||
vim The "normal" way, everything is default.
|
||
|
||
ex Start in Ex mode. Go to Normal mode with the ":vi" command.
|
||
Can also be done with the "-e" argument.
|
||
|
||
view Start in read-only mode. You will be protected from writing
|
||
the files. Can also be done with the "-R" argument.
|
||
|
||
gvim gview
|
||
The GUI version. Starts a new window. Can also be done with
|
||
the "-g" argument.
|
||
|
||
evim eview
|
||
The GUI version in easy mode. Starts a new window. Can also
|
||
be done with the "-y" argument.
|
||
|
||
rvim rview rgvim rgview
|
||
Like the above, but with restrictions. It will not be possi‐
|
||
ble to start shell commands, or suspend Vim. Can also be
|
||
done with the "-Z" argument.
|
||
|
||
OPTIONS
|
||
The options may be given in any order, before or after filenames. Op‐
|
||
tions without an argument can be combined after a single dash.
|
||
|
||
+[num] For the first file the cursor will be positioned on line
|
||
"num". If "num" is missing, the cursor will be positioned
|
||
on the last line.
|
||
|
||
+/{pat} For the first file the cursor will be positioned in the
|
||
line with the first occurrence of {pat}. See ":help
|
||
search-pattern" for the available search patterns.
|
||
|
||
+{command}
|
||
|
||
-c {command}
|
||
{command} will be executed after the first file has been
|
||
read. {command} is interpreted as an Ex command. If the
|
||
{command} contains spaces it must be enclosed in double
|
||
quotes (this depends on the shell that is used). Example:
|
||
vim "+set si" main.c
|
||
Note: You can use up to 10 "+" or "-c" commands.
|
||
|
||
-A If Vim has been compiled with ARABIC support for editing
|
||
right-to-left oriented files and Arabic keyboard mapping,
|
||
this option starts Vim in Arabic mode, i.e. 'arabic' is
|
||
set. Otherwise an error message is given and Vim aborts.
|
||
|
||
-b Binary mode. A few options will be set that makes it pos‐
|
||
sible to edit a binary or executable file.
|
||
|
||
-C Compatible. Set the 'compatible' option. This will make
|
||
Vim behave mostly like Vi, even though a .vimrc file ex‐
|
||
ists.
|
||
|
||
-d Start in diff mode. There should between two to eight file
|
||
name arguments. Vim will open all the files and show dif‐
|
||
ferences between them. Works like vimdiff(1).
|
||
|
||
-d {device}, -dev {device}
|
||
Open {device} for use as a terminal. Only on the Amiga.
|
||
Example: "-d con:20/30/600/150".
|
||
|
||
-D Debugging. Go to debugging mode when executing the first
|
||
command from a script.
|
||
|
||
-e Start Vim in Ex mode, just like the executable was called
|
||
"ex".
|
||
|
||
-E Start Vim in improved Ex mode, just like the executable was
|
||
called "exim".
|
||
|
||
-f Foreground. For the GUI version, Vim will not fork and de‐
|
||
tach from the shell it was started in. On the Amiga, Vim
|
||
is not restarted to open a new window. This option should
|
||
be used when Vim is executed by a program that will wait
|
||
for the edit session to finish (e.g. mail). On the Amiga
|
||
the ":sh" and ":!" commands will not work.
|
||
|
||
-F If Vim has been compiled with FKMAP support for editing
|
||
right-to-left oriented files and Farsi keyboard mapping,
|
||
this option starts Vim in Farsi mode, i.e. 'fkmap' and
|
||
'rightleft' are set. Otherwise an error message is given
|
||
and Vim aborts.
|
||
Note: Farsi support has been removed in patch 8.1.0932.
|
||
|
||
-g If Vim has been compiled with GUI support, this option en‐
|
||
ables the GUI. If no GUI support was compiled in, an error
|
||
message is given and Vim aborts.
|
||
|
||
-H If Vim has been compiled with RIGHTLEFT support for editing
|
||
right-to-left oriented files and Hebrew keyboard mapping,
|
||
this option starts Vim in Hebrew mode, i.e. 'hkmap' and
|
||
'rightleft' are set. Otherwise an error message is given
|
||
and Vim aborts.
|
||
|
||
-i {viminfo}
|
||
Specifies the filename to use when reading or writing the
|
||
viminfo file, instead of the default "~/.viminfo". This
|
||
can also be used to skip the use of the .viminfo file, by
|
||
giving the name "NONE".
|
||
|
||
-l Lisp mode. Sets the 'lisp' and 'showmatch' options on.
|
||
|
||
-L Same as -r.
|
||
|
||
-m Modifying files is disabled. Resets the 'write' option.
|
||
You can still modify the buffer, but writing a file is not
|
||
possible.
|
||
|
||
-M Modifications not allowed. The 'modifiable' and 'write'
|
||
options will be unset, so that changes are not allowed and
|
||
files can not be written. Note that these options can be
|
||
set to enable making modifications.
|
||
|
||
-n No swap file will be used. Recovery after a crash will be
|
||
impossible. Handy if you want to edit a file on a very
|
||
slow medium (e.g. floppy). Can also be done with ":set
|
||
uc=0". Can be undone with ":set uc=200".
|
||
|
||
-N No-compatible mode. Resets the 'compatible' option. This
|
||
will make Vim behave a bit better, but less Vi compatible,
|
||
even though a .vimrc file does not exist.
|
||
|
||
-nb Become an editor server for NetBeans. See the docs for de‐
|
||
tails.
|
||
|
||
-o[N] Open N windows stacked. When N is omitted, open one window
|
||
for each file.
|
||
|
||
-O[N] Open N windows side by side. When N is omitted, open one
|
||
window for each file.
|
||
|
||
-p[N] Open N tab pages. When N is omitted, open one tab page for
|
||
each file.
|
||
|
||
-P {parent-title}
|
||
Win32 GUI only: Specify the title of the parent applica‐
|
||
tion. When possible, Vim will run in an MDI window inside
|
||
the application. {parent-title} must appear in the window
|
||
title of the parent application. Make sure that it is spe‐
|
||
cific enough. Note that the implementation is still primi‐
|
||
tive. It won't work with all applications and the menu
|
||
doesn't work.
|
||
|
||
-r List swap files, with information about using them for re‐
|
||
covery.
|
||
|
||
-r {file} Recovery mode. The swap file is used to recover a crashed
|
||
editing session. The swap file is a file with the same
|
||
filename as the text file with ".swp" appended. See ":help
|
||
recovery".
|
||
|
||
-R Read-only mode. The 'readonly' option will be set. You
|
||
can still edit the buffer, but will be prevented from acci‐
|
||
dentally overwriting a file. If you do want to overwrite a
|
||
file, add an exclamation mark to the Ex command, as in
|
||
":w!". The -R option also implies the -n option (see
|
||
above). The 'readonly' option can be reset with ":set
|
||
noro". See ":help 'readonly'".
|
||
|
||
-s Silent mode. Only when started as "Ex" or when the "-e"
|
||
option was given before the "-s" option.
|
||
|
||
-s {scriptin}
|
||
The script file {scriptin} is read. The characters in the
|
||
file are interpreted as if you had typed them. The same
|
||
can be done with the command ":source! {scriptin}". If the
|
||
end of the file is reached before the editor exits, further
|
||
characters are read from the keyboard.
|
||
|
||
-S {file} {file} will be sourced after the first file has been read.
|
||
This is equivalent to -c "source {file}". {file} cannot
|
||
start with '-'. If {file} is omitted "Session.vim" is used
|
||
(only works when -S is the last argument).
|
||
|
||
-T {terminal}
|
||
Tells Vim the name of the terminal you are using. Only re‐
|
||
quired when the automatic way doesn't work. Should be a
|
||
terminal known to Vim (builtin) or defined in the termcap
|
||
or terminfo file.
|
||
|
||
-u {vimrc} Use the commands in the file {vimrc} for initializations.
|
||
All the other initializations are skipped. Use this to
|
||
edit a special kind of files. It can also be used to skip
|
||
all initializations by giving the name "NONE". See ":help
|
||
initialization" within vim for more details.
|
||
|
||
-U {gvimrc} Use the commands in the file {gvimrc} for GUI initializa‐
|
||
tions. All the other GUI initializations are skipped. It
|
||
can also be used to skip all GUI initializations by giving
|
||
the name "NONE". See ":help gui-init" within vim for more
|
||
details.
|
||
|
||
-v Start Vim in Vi mode, just like the executable was called
|
||
"vi". This only has effect when the executable is called
|
||
"ex".
|
||
|
||
-V[N] Verbose. Give messages about which files are sourced and
|
||
for reading and writing a viminfo file. The optional num‐
|
||
ber N is the value for 'verbose'. Default is 10.
|
||
|
||
-V[N]{filename}
|
||
Like -V and set 'verbosefile' to {filename}. The result is
|
||
that messages are not displayed but written to the file
|
||
{filename}. {filename} must not start with a digit.
|
||
|
||
-w{number} Set the 'window' option to {number}.
|
||
|
||
-w {scriptout}
|
||
All the characters that you type are recorded in the file
|
||
{scriptout}, until you exit Vim. This is useful if you
|
||
want to create a script file to be used with "vim -s" or
|
||
":source!". If the {scriptout} file exists, characters are
|
||
appended.
|
||
|
||
-W {scriptout}
|
||
Like -w, but an existing file is overwritten.
|
||
|
||
-x If Vim has been compiled with encryption support, use en‐
|
||
cryption when writing files. Will prompt for a crypt key.
|
||
|
||
-X Don't connect to the X server. Shortens startup time in a
|
||
terminal, but the window title and clipboard will not be
|
||
used.
|
||
|
||
-y Start Vim in easy mode, just like the executable was called
|
||
"evim" or "eview". Makes Vim behave like a click-and-type
|
||
editor.
|
||
|
||
-Z Restricted mode. Works like the executable starts with
|
||
"r".
|
||
|
||
-- Denotes the end of the options. Arguments after this will
|
||
be handled as a file name. This can be used to edit a
|
||
filename that starts with a '-'.
|
||
|
||
--clean Do not use any personal configuration (vimrc, plugins,
|
||
etc.). Useful to see if a problem reproduces with a clean
|
||
Vim setup.
|
||
|
||
--cmd {command}
|
||
Like using "-c", but the command is executed just before
|
||
processing any vimrc file. You can use up to 10 of these
|
||
commands, independently from "-c" commands.
|
||
|
||
--echo-wid GTK GUI only: Echo the Window ID on stdout.
|
||
|
||
--gui-dialog-file {name}
|
||
When using the GUI, instead of showing a dialog, write the
|
||
title and message of the dialog to file {name}. The file
|
||
is created or appended to. Only useful for testing, to
|
||
avoid that the test gets stuck on a dialog that can't be
|
||
seen. Without the GUI the argument is ignored.
|
||
|
||
--help, -h, -?
|
||
Give a bit of help about the command line arguments and op‐
|
||
tions. After this Vim exits.
|
||
|
||
--literal Take file name arguments literally, do not expand wild‐
|
||
cards. This has no effect on Unix where the shell expands
|
||
wildcards.
|
||
|
||
--log {filename}
|
||
If Vim has been compiled with eval and channel feature,
|
||
start logging and write entries to {filename}. This works
|
||
like calling ch_logfile({filename}, 'ao') very early during
|
||
startup.
|
||
|
||
--nofork Foreground. For the GUI version, Vim will not fork and de‐
|
||
tach from the shell it was started in.
|
||
|
||
--noplugin Skip loading plugins. Implied by -u NONE.
|
||
|
||
--not-a-term
|
||
Tells Vim that the user knows that the input and/or output
|
||
is not connected to a terminal. This will avoid the warn‐
|
||
ing and the two second delay that would happen.
|
||
|
||
--remote Connect to a Vim server and make it edit the files given in
|
||
the rest of the arguments. If no server is found a warning
|
||
is given and the files are edited in the current Vim.
|
||
|
||
--remote-expr {expr}
|
||
Connect to a Vim server, evaluate {expr} in it and print
|
||
the result on stdout.
|
||
|
||
--remote-send {keys}
|
||
Connect to a Vim server and send {keys} to it.
|
||
|
||
--remote-silent
|
||
As --remote, but without the warning when no server is
|
||
found.
|
||
|
||
--remote-wait
|
||
As --remote, but Vim does not exit until the files have
|
||
been edited.
|
||
|
||
--remote-wait-silent
|
||
As --remote-wait, but without the warning when no server is
|
||
found.
|
||
|
||
--serverlist
|
||
List the names of all Vim servers that can be found.
|
||
|
||
--servername {name}
|
||
Use {name} as the server name. Used for the current Vim,
|
||
unless used with a --remote argument, then it's the name of
|
||
the server to connect to.
|
||
|
||
--socketid {id}
|
||
GTK GUI only: Use the GtkPlug mechanism to run gVim in an‐
|
||
other window.
|
||
|
||
--startuptime {file}
|
||
During startup write timing messages to the file {fname}.
|
||
|
||
--ttyfail When stdin or stdout is not a a terminal (tty) then exit
|
||
right away.
|
||
|
||
--version Print version information and exit.
|
||
|
||
--windowid {id}
|
||
Win32 GUI only: Make gVim try to use the window {id} as a
|
||
parent, so that it runs inside that window.
|
||
|
||
ON-LINE HELP
|
||
Type ":help" in Vim to get started. Type ":help subject" to get help
|
||
on a specific subject. For example: ":help ZZ" to get help for the
|
||
"ZZ" command. Use <Tab> and CTRL-D to complete subjects (":help cmd‐
|
||
line-completion"). Tags are present to jump from one place to another
|
||
(sort of hypertext links, see ":help"). All documentation files can be
|
||
viewed in this way, for example ":help syntax.txt".
|
||
|
||
FILES
|
||
/usr/local/share/vim/vim??/doc/*.txt
|
||
The Vim documentation files. Use ":help doc-file-list"
|
||
to get the complete list.
|
||
vim?? is short version number, like vim91 for Vim 9.1
|
||
|
||
/usr/local/share/vim/vim??/doc/tags
|
||
The tags file used for finding information in the docu‐
|
||
mentation files.
|
||
|
||
/usr/local/share/vim/vim??/syntax/syntax.vim
|
||
System wide syntax initializations.
|
||
|
||
/usr/local/share/vim/vim??/syntax/*.vim
|
||
Syntax files for various languages.
|
||
|
||
/usr/local/share/vim/vimrc
|
||
System wide Vim initializations.
|
||
|
||
~/.vimrc, ~/.vim/vimrc, $XDG_CONFIG_HOME/vim/vimrc
|
||
Your personal Vim initializations (first one found is
|
||
used).
|
||
|
||
/usr/local/share/vim/gvimrc
|
||
System wide gvim initializations.
|
||
|
||
~/.gvimrc, ~/.vim/gvimrc, $XDG_CONFIG_HOME/vim/gvimrc
|
||
Your personal gVim initializations (first one found is
|
||
used).
|
||
|
||
/usr/local/share/vim/vim??/optwin.vim
|
||
Script used for the ":options" command, a nice way to
|
||
view and set options.
|
||
|
||
/usr/local/share/vim/vim??/menu.vim
|
||
System wide menu initializations for gVim.
|
||
|
||
/usr/local/share/vim/vim??/bugreport.vim
|
||
Script to generate a bug report. See ":help bugs".
|
||
|
||
/usr/local/share/vim/vim??/filetype.vim
|
||
Script to detect the type of a file by its name. See
|
||
":help 'filetype'".
|
||
|
||
/usr/local/share/vim/vim??/scripts.vim
|
||
Script to detect the type of a file by its contents.
|
||
See ":help 'filetype'".
|
||
|
||
/usr/local/share/vim/vim??/print/*.ps
|
||
Files used for PostScript printing.
|
||
|
||
For recent info read the VIM home page:
|
||
<URL:http://www.vim.org/>
|
||
|
||
SEE ALSO
|
||
vimtutor(1)
|
||
|
||
AUTHOR
|
||
Most of Vim was made by Bram Moolenaar, with a lot of help from others.
|
||
See ":help credits" in Vim.
|
||
Vim is based on Stevie, worked on by: Tim Thompson, Tony Andrews and
|
||
G.R. (Fred) Walter. Although hardly any of the original code remains.
|
||
|
||
BUGS
|
||
Probably. See ":help todo" for a list of known problems.
|
||
|
||
Note that a number of things that may be regarded as bugs by some, are
|
||
in fact caused by a too-faithful reproduction of Vi's behaviour. And
|
||
if you think other things are bugs "because Vi does it differently",
|
||
you should take a closer look at the vi_diff.txt file (or type :help
|
||
vi_diff.txt when in Vim). Also have a look at the 'compatible' and
|
||
'cpoptions' options.
|
||
|
||
2024 Aug 12 VIM(1)
|