Nvim :help
pages, generated
from source
using the tree-sitter-vimdoc parser.
{count}
most recent messages.{count}
most
recent ones.<Space>
at the hit-enter
prompt. You are then back at the hit-enter prompt and can then scroll further
back.
Note: If the output has been stopped with "q" at the more prompt, it will only
be displayed up to this point.
The previous command output is cleared when another command produces output.
The "g<" output is not redirected.E72: Close error on swap fileor (translated):
E72: Errore durante chiusura swap fileUse:
:help E72If you are lazy, it also works without the shift key:
:help e72
:echo v:errmsgOr view a list of recent messages with:
:messagesSee
:messages
above.Add to read buffer makemap: Illegal mode Cannot create BalloonEval with both message and callback Hangul automata ERROR block was not locked Didn't get block nr {N}? ml_upd_block0(): Didn't get block 0?? pointer block id wrong {N} Updated too many blocks? get_varp ERROR u_undo: line numbers wrong undo list corrupt undo line missing ml_get: cannot find line {N} cannot find line {N} line number out of range: {N} past the end line count wrong in block {N} Internal error Internal error: {function} fatal error in cs_manage_matches Invalid count for del_bytes(): {N}This is an internal error. If you can reproduce it, please send in a bug report. bugs
ATTENTION Found a swap file by the name ...See ATTENTION.
Buffer {N} not foundThe buffer you requested does not exist. This can also happen when you have wiped out a buffer which contains a mark or is referenced in another way. :bwipeout
Buffer with this name already existsYou cannot have two buffers with exactly the same name. This includes the path leading to the file.
Cannot switch buffer. 'winfixbuf' is enabledIf a window has 'winfixbuf' enabled, you cannot change that window's current buffer. You need to set 'nowinfixbuf' before continuing. You may use [!] to force the window to switch buffers, if your command supports it.
Close error on swap fileThe swap-file, that is used to keep a copy of the edited text, could not be closed properly. Mostly harmless.
Command too recursiveThis happens when an Ex command executes an Ex command that executes an Ex command, etc. The limit is 200 or the value of 'maxfuncdepth', whatever is larger. When it's more there probably is an endless loop. Probably a :execute or :source command is involved.
Cannot allocate color {name}The color name
{name}
is unknown. See gui-colors for a list of colors that
are available on most systems.Cannot allocate colormap entry, some colors may be incorrectThis means that there are not enough colors available for Vim. It will still run, but some of the colors will not appear in the specified color. Try stopping other applications that use many colors, or start them after starting gvim. Browsers are known to consume a lot of colors. You can avoid this with netscape by telling it to use its own colormap:
netscape -installOr tell it to limit to a certain number of colors (64 should work well):
netscape -ncols 64This can also be done with a line in your Xdefaults file:
Netscape*installColormap: Yesor
Netscape*maxImageColors: 64
Cannot expand wildcardsA filename contains a strange combination of characters, which causes Vim to attempt expanding wildcards but this fails. This does NOT mean that no matching file names could be found, but that the pattern was illegal.
Cannot go back to previous directoryWhile expanding a file name, Vim failed to go back to the previously used directory. All file names being used may be invalid now! You need to have execute permission on the current directory.
Cannot open "{filename}" for writing Can't open file for writingFor some reason the file you are writing to cannot be created or overwritten. The reason could be that you do not have permission to write in the directory or the file name is not valid.
Can't open linked file for writingYou are trying to write to a file which can't be overwritten, and the file is a link (either a hard link or a symbolic link). Writing might still be possible if the directory that contains the link or the file is writable, but Vim now doesn't know if you want to delete the link and write the file in its place, or if you want to delete the file itself and write the new file in its place. If you really want to write the file under this name, you have to manually delete the link or the file, or change the permissions so that Vim can overwrite.
Cannot change read-only variable "{name}"You are trying to assign a value to an argument of a function a:var or a Vim internal variable v:var which is read-only.
Cannot unload last bufferVim always requires one buffer to be loaded, otherwise there would be nothing to display in the window.
Can't open errorfile <filename>When using the ":make" or ":grep" commands: The file used to save the error messages or grep output cannot be opened. This can have several causes:
Can't open file C:\TEMP\VIoD243.TMPOn MS-Windows, this message appears when the output of an external command was to be read, but the command didn't run successfully. This can be caused by many things. Check the 'shell', 'shellquote', 'shellxquote', 'shellslash' and related options. It might also be that the external command was not found, there is no different error message for that.
Command not allowed from exrc/vimrc in current dir or tag searchSome commands are not allowed for security reasons. These commands mostly come from a .exrc or .nvimrc file in the current directory, or from a tags file. Also see 'secure'.
Command too complexA mapping resulted in a very long command string. Could be caused by a mapping that indirectly calls itself.
CONVERSION ERRORWhen writing a file and the text "CONVERSION ERROR" appears, this means that some bits were lost when converting text from the internally used UTF-8 to the format of the file. The file will not be marked unmodified. If you care about the loss of information, set the 'fileencoding' option to another value that can handle the characters in the buffer and write again. If you don't care, you can abandon the buffer or reset the 'modified' option. If there is a backup file, when 'writebackup' or 'backup' is set, it will not be deleted, so you can move it back into place if you want to discard the changes.
Could not rename swap fileWhen the file name changes, Vim tries to rename the swap-file as well. This failed and the old swap file is now still used. Mostly harmless.
Damaged match string Corrupted regexp programSomething inside Vim went wrong and resulted in a corrupted regexp. If you know how to reproduce this problem, please report it. bugs
Error writing to "{filename}" Error closing "{filename}" Error reading "{filename}"This occurs when Vim is trying to rename a file, but a simple change of file name doesn't work. Then the file will be copied, but somehow this failed. The result may be that both the original file and the destination file exist and the destination file may be incomplete.
Vim: Error reading input, exiting...This occurs when Vim cannot read typed characters while input is required. Vim got stuck, the only thing it can do is exit. This can happen when both stdin and stderr are redirected and executing a script that doesn't exit Vim.
Error while reading errorfileReading the error file was not possible. This is NOT caused by an error message that was not recognized.
Error while writingWriting a file was not completed successfully. The file is probably incomplete.
File exists (add ! to override) "{filename}" exists (add ! to override)You are protected from accidentally overwriting a file. When you want to write anyway, use the same command, but add a "!" just after the command. Example:
:w /tmp/testchanges to:
:w! /tmp/test
Swap file exists: {filename} (:silent! overrides)You are protected from overwriting a file that is being edited by Vim. This happens when you use ":w! filename" and a swapfile is found.
{filename}
to find out information about the
swapfile.
:silent! w! /tmp/test
File is loaded in another bufferYou are trying to write a file under a name which is also used in another buffer. This would result in two versions of the same file.
File not written: Writing is disabled by 'write' optionThe 'write' option is off. This makes all commands that try to write a file generate this message. This could be caused by a -m commandline argument. You can switch the 'write' option on with ":set write".
Nvim does not have a built-in GUINvim does not have a built in GUI, so
:gvim
and :gui
don't work.Invalid scroll sizeThis is caused by setting an invalid value for the 'scroll', 'scrolljump' or 'scrolloff' options.
"{filename}" is a directoryYou tried to write a file with the name of a directory. This is not possible. You probably need to append a file name.
Mark has invalid line numberYou are using a mark that has a line number that doesn't exist. This can happen when you have a mark in another file, and some other program has deleted lines from it.
Missing {. Missing }.Using a {} construct in a file name, but there is a { without a matching } or the other way around. It should be used like this:
{foo,bar}
. This matches
"foo" and "bar".ml_get: invalid lnum: {number}This is an internal Vim error. Please try to find out how it can be reproduced, and submit a bug-report.
{number} more files to editYou are trying to exit, while the last item in the argument list has not been edited. This protects you from accidentally exiting when you still have more files to work on. See argument-list. If you do want to exit, just do it again and it will work.
No alternate file No alternate file name to substitute for '#'The alternate file is not defined yet. See alternate-file.
No file nameThe current buffer has no name. To write it, use ":w fname". Or give the buffer a name with ":file fname".
No file name for buffer {number}One of the buffers that was changed does not have a file name. Therefore it cannot be written. You need to give the buffer a file name:
:buffer {number} :file {filename}
No previous substitute regular expressionWhen using the '~' character in a pattern, it is replaced with the previously used pattern in a ":substitute" command. This fails when no such command has been used yet. See /~. This also happens when using ":s/pat/%/", where the "%" stands for the previous substitute string.
No previous regular expressionWhen using an empty search pattern, the previous search pattern is used. But that is not possible if there was no previous search.
No such abbreviationYou have used an ":unabbreviate" command with an argument which is not an existing abbreviation. All variations of this command give the same message: ":cunabbrev", ":iunabbrev", etc. Check for trailing white space.
No such mappingYou have used an ":unmap" command with an argument which is not an existing mapping. All variations of this command give the same message: ":cunmap", ":unmap!", etc. A few hints:
<buffer>
".
:map-<buffer>
No write since last change (add ! to override) No write since last change for buffer {N} (add ! to override)You are trying to abandon a file that has changes. Vim protects you from losing your work. You can either write the changed file with ":w", or, if you are sure, abandon it anyway, and lose all the changes. This can be done by adding a '!' character just after the command you used. Example:
:e other_filechanges to:
:e! other_file
No write since last change for buffer "{name}"This appears when you try to exit Vim while some buffers are changed. You will either have to write the changed buffer (with :w), or use a command to abandon the buffer forcefully, e.g., with ":qa!". Careful, make sure you don't throw away changes you really want to keep. You might have forgotten about a buffer, especially when 'hidden' is set.
[No write since last change]This appears when executing a shell command while at least one buffer was changed. To avoid the message reset the 'warn' option.
Null argumentSomething inside Vim went wrong and resulted in a NULL pointer. If you know how to reproduce this problem, please report it. bugs
Out of memory! Out of memory! (allocating {number} bytes) Cannot allocate any buffer, exiting... Cannot allocate buffer, using other one...Oh, oh. You must have been doing something complicated, or some other program is consuming your memory. Be careful! Vim is not completely prepared for an out-of-memory situation. First make sure that any changes are saved. Then try to solve the memory shortage. To stay on the safe side, exit Vim and start again.
Pattern too longThis happens on systems with 16 bit ints: The compiled regexp pattern is longer than about 65000 characters. Try using a shorter pattern. It also happens when the offset of a rule doesn't fit in the space available. Try simplifying the pattern.
'readonly' option is set (add ! to override)You are trying to write a file that was marked as read-only. To write the file anyway, either reset the 'readonly' option, or add a '!' character just after the command you used. Example:
:wchanges to:
:w!
Read error in swap file Seek error in swap file read Oops, lost the swap file!!!Vim tried to read text from the swap-file, but something went wrong. The text in the related buffer may now be corrupted! Check carefully before you write a buffer. You may want to write it in another file and check for differences.
Recursive use of :normal too deepYou are using a ":normal" command, whose argument again uses a ":normal" command in a recursive way. This is restricted to 'maxmapdepth' levels. This example illustrates how to get this message:
:map gq :normal gq<CR>If you type "gq", it will execute this mapping, which will call "gq" again.
Scripts nested too deepScripts can be read with the "-s" command-line argument and with the
:source!
command. The script can then again read another script. This can
continue for about 14 levels. When more nesting is done, Vim assumes that
there is a recursive loop and stops with this error message.Swap file already exists (symlink attack?)This message appears when Vim is trying to open a swap file and finds it already exists or finds a symbolic link in its place. This shouldn't happen, because Vim already checked that the file doesn't exist. Either someone else opened the same file at exactly the same moment (very unlikely) or someone is attempting a symlink attack (could happen when editing a file in /tmp or when 'directory' starts with "/tmp", which is a bad choice).
Tags file not sorted: {file name}Vim (and Vi) expect tags files to be sorted in ASCII order. Binary searching can then be used, which is a lot faster than a linear search. If your tags files are not properly sorted, reset the 'tagbsearch' option. This message is only given when Vim detects a problem when searching for a tag. Sometimes this message is not given, even though the tags file is not properly sorted.
Too many different highlighting attributes in useVim can only handle about 223 different kinds of highlighting. If you run into this limit, you have used too many :highlight commands with different arguments. A ":highlight link" is not counted.
Too many file namesWhen expanding file names, more than one match was found. Only one match is allowed for the command that was used.
Unable to open swap file for "{filename}", recovery impossibleVim was not able to create a swap file. You can still edit the file, but if Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of memory when editing a big file. You may want to change the 'directory' option to avoid this error. This error is not given when 'directory' is empty. See swap-file.
Use ! to write partial bufferWhen using a range to write part of a buffer, it is unusual to overwrite the original file. It is probably a mistake (e.g., when Visual mode was active when using ":w"), therefore Vim requires using a ! after the command, e.g.: ":3,10w!".
Warning: Cannot convert string "<Key>Escape,_Key_Cancel" to type VirtualBindingMessages like this appear when starting up. This is not a Vim problem, your X11 configuration is wrong.
Warning: Changing a readonly fileThe file is read-only and you are making a change to it anyway. You can use the FileChangedRO autocommand event to avoid this message (the autocommand must reset the 'readonly' option). See 'modifiable' to completely disallow making changes to a file. This message is only given for the first change after 'readonly' has been set.
Warning: File "{filename}" has been created after editing startedYou are editing a file in Vim when it didn't exist, but it does exist now. You will have to decide if you want to keep the version in Vim or the newly created file. This message is not given when 'buftype' is not empty.
Warning: File "{filename}" has changed since editing startedThe file which you have started editing has got another timestamp and the contents changed (more precisely: When reading the file again with the current option settings and autocommands you would end up with different text). This probably means that some other program changed the file. You will have to find out what happened, and decide which version of the file you want to keep. Set the 'autoread' option if you want to do this automatically. This message is not given when 'buftype' is not empty. Also see the FileChangedShell autocommand.
SET TZ=-1
Warning: File "{filename}" has changed and the buffer was changed in Vim as wellLike the above, and the buffer for the file was changed in this Vim as well. You will have to decide if you want to keep the version in this Vim or the one on disk. This message is not given when 'buftype' is not empty.
Warning: Mode of file "{filename}" has changed since editing startedWhen the timestamp for a buffer was changed and the contents are still the same but the mode (permissions) have changed. This usually occurs when checking out a file from a version control system, which causes the read-only bit to be reset. It should be safe to reload the file. Set 'autoread' to automatically reload the file.
File "{filename}" no longer availableThe file which you have started editing has disappeared, or is no longer accessible. Make sure you write the buffer somewhere to avoid losing changes. This message is not given when 'buftype' is not empty.
Warning: List of file names overflowYou must be using an awful lot of buffers. It's now possible that two buffers have the same number, which causes various problems. You might want to exit Vim and restart it.
Buffer cannot be registeredOut of memory or a duplicate buffer number. May happen after W14. Looking up a buffer will not always work, better restart Vim.
Seek error in swap file write Write error in swap fileThis mostly happens when the disk is full. Vim could not write text into the swap-file. It's not directly harmful, but when Vim unexpectedly exits some text may be lost without recovery being possible. Vim might run out of memory when this problem persists.
\\ should be followed by /, ? or &A command line started with a backslash or the range of a command contained a backslash in a wrong place. This is often caused by command-line continuation being disabled. Remove the 'C' flag from the 'cpoptions' option to enable it.
Argument requiredEx command was executed without a mandatory argument(s).
Invalid argument Invalid argument: {arg} Duplicate argument: {arg}Ex command or function was given an invalid argument. Or jobstart() or system() was given a non-executable command.
Trailing characters Trailing characters: {text}An argument was given to an Ex command that does not permit one. Or the argument has invalid characters and has not been recognized.
No ! allowed Don't panic!You have added a "!" after an Ex command that doesn't permit one.
No range allowedA range was specified for an Ex command that doesn't permit one. See cmdline-ranges.
Can't open file {filename} Can't read file {filename}Vim cannot read a temporary file. Especially on Windows, this can be caused by wrong escaping of special characters for cmd.exe; the approach was changed with patch 7.3.443. Try using shellescape() for all shell arguments given to system(), or explicitly add escaping with ^. Also see 'shellxquote' and 'shellxescape'.
Ambiguous use of user-defined commandThere are two user-defined commands with a common name prefix, and you used Command-line completion to execute one of them. user-cmd-ambiguous Example:
:command MyCommand1 echo "one" :command MyCommand2 echo "two" :MyCommand
Not an editor commandYou tried to execute a command that is neither an Ex command nor a user-defined command.
Cannot set this option after startupYou tried to set an option after startup that only allows changes during startup.
Command table needs to be updated, run 'make'This can only happen when changing the source code, after adding a command in src/ex_cmds.lua. Update the lookup table by re-running the build.
Press ENTER or type command to continueThis message is given when there is something on the screen for you to read, and the screen is about to be redrawn:
<Enter>
or <Space>
to redraw the screen and continue, without that
key being used otherwise.
-> Press ':' or any other Normal mode command character to start that command.
Note that after an external command some special keys, such as the cursor
keys, may not work normally, because the terminal is still set to a state
for executing the external command.
-> Press 'k', <Up>
, 'u', 'b' or 'g' to scroll back in the messages. This
works the same way as at the more-prompt. Only works when 'more' is on.
-> Pressing 'j', 'f', 'd' or <Down>
is ignored when messages scrolled off the
top of the screen and 'more' is on, to avoid that typing one 'j' or 'f' too
many causes the messages to disappear.
-> Press <C-Y>
to copy (yank) a modeless selection to the clipboard register.
-> Use a menu. The characters defined for Cmdline-mode are used.
-> When 'mouse' contains the 'r' flag, clicking the left mouse button works
like pressing <Space>
. This makes it impossible to select text though.
-> For the GUI clicking the left mouse button in the last line works like
pressing <Space>
.<Enter>
or <Space>
and you want to see the displayed
text then use g<. This only works when 'more' is set.:echo
text is within v:echospace screen cells.
-- More -- -- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quitThis message is given when the screen is filled with messages. It is only given when the 'more' option is on. It is highlighted with the hl-MoreMsg group.
<CR>
or <NL>
or j or <Down>
one more line
d down a page (half a screen)
<Space>
or f or <PageDown>
down a screen
G down all the way, until the hit-enter
prompt<BS>
or k or <Up>
one line back
u up a page (half a screen)
b or <PageUp>
back a screen
g back to the start<Esc>
or CTRL-C
stop the listing
: stop the listing and enter a
command-line
<C-Y>
yank (copy) a modeless selection to
the clipboard ("* and "+ registers)
{menu-entry}
what the menu is defined to in
Cmdline-mode.
<LeftMouse>
next page*<Space>
at the hit-enter
prompt.