aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2019-08-02 19:22:23 +0200
committerGitHub <noreply@github.com>2019-08-02 19:22:23 +0200
commita270c33b3a49d7a47b1bb6e6b9eb2073d98e0602 (patch)
tree7561e413d75fdb008c2bdf81dc63f31806116d5c /runtime/doc
parent1aedb9ed00e40f54bb3303ab6d2da4a0f6e2fbb6 (diff)
parente2e220256e7e62b6b7df9ba65cd3fdf32390652b (diff)
downloadrneovim-a270c33b3a49d7a47b1bb6e6b9eb2073d98e0602.tar.gz
rneovim-a270c33b3a49d7a47b1bb6e6b9eb2073d98e0602.tar.bz2
rneovim-a270c33b3a49d7a47b1bb6e6b9eb2073d98e0602.zip
Merge #10675 from justinmk/vim-runtime
fix #10572
Diffstat (limited to 'runtime/doc')
-rw-r--r--runtime/doc/autocmd.txt36
-rw-r--r--runtime/doc/change.txt11
-rw-r--r--runtime/doc/diff.txt4
-rw-r--r--runtime/doc/editing.txt2
-rw-r--r--runtime/doc/eval.txt42
-rw-r--r--runtime/doc/filetype.txt10
-rw-r--r--runtime/doc/fold.txt2
-rw-r--r--runtime/doc/if_lua.txt14
-rw-r--r--runtime/doc/if_pyth.txt19
-rw-r--r--runtime/doc/if_ruby.txt14
-rw-r--r--runtime/doc/indent.txt39
-rw-r--r--runtime/doc/index.txt2
-rw-r--r--runtime/doc/map.txt14
-rw-r--r--runtime/doc/mbyte.txt75
-rw-r--r--runtime/doc/message.txt3
-rw-r--r--runtime/doc/motion.txt5
-rw-r--r--runtime/doc/options.txt2
-rw-r--r--runtime/doc/pattern.txt1
-rw-r--r--runtime/doc/pi_netrw.txt453
-rw-r--r--runtime/doc/print.txt2
-rw-r--r--runtime/doc/quickfix.txt18
-rw-r--r--runtime/doc/quickref.txt3
-rw-r--r--runtime/doc/repeat.txt16
-rw-r--r--runtime/doc/scroll.txt3
-rw-r--r--runtime/doc/spell.txt10
-rw-r--r--runtime/doc/starting.txt5
-rw-r--r--runtime/doc/syntax.txt21
-rw-r--r--runtime/doc/tabpage.txt2
-rw-r--r--runtime/doc/tagsrch.txt20
-rw-r--r--runtime/doc/usr_05.txt1
-rw-r--r--runtime/doc/usr_06.txt3
-rw-r--r--runtime/doc/usr_27.txt12
-rw-r--r--runtime/doc/usr_41.txt18
-rw-r--r--runtime/doc/usr_toc.txt13
-rw-r--r--runtime/doc/various.txt3
-rw-r--r--runtime/doc/visual.txt2
-rw-r--r--runtime/doc/windows.txt22
37 files changed, 543 insertions, 379 deletions
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index e37fe9e5ce..ba89c207c2 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -877,12 +877,33 @@ MenuPopup Just before showing the popup menu (under the
*OptionSet*
OptionSet After setting an option (except during
|startup|). The |autocmd-pattern| is matched
- against the long option name.
- |v:option_old| indicates the old option value,
- |v:option_new| indicates the new value,
+ against the long option name. |<amatch>|
+ indicates what option has been set.
+
|v:option_type| indicates whether it's global
- or local scoped and |<amatch>| indicates which
- option was set.
+ or local scoped.
+ |v:option_command| indicates what type of
+ set/let command was used (follow the tag to
+ see the table).
+ |v:option_new| indicates the newly set value.
+ |v:option_oldlocal| has the old local value.
+ |v:option_oldglobal| has the old global value.
+ |v:option_old| indicates the old option value.
+
+ |v:option_oldlocal| is only set when |:set|
+ or |:setlocal| or a |modeline| was used to set
+ the option. Similarly |v:option_oldglobal| is
+ only set when |:set| or |:setglobal| was used.
+
+ Note that when setting a |global-local| string
+ option with |:set|, then |v:option_old| is the
+ old global value. However, for all other kinds
+ of options (local string options, global-local
+ number options, ...) it is the old local
+ value.
+
+ OptionSet is not triggered on startup and for
+ the 'key' option for obvious reasons.
Usage example: Check for the existence of the
directory in the 'backupdir' and 'undodir'
@@ -1051,8 +1072,7 @@ TextChanged After a change was made to the text in the
was defined).
Not triggered when there is typeahead or when
an operator is pending.
- Note: This can not be skipped with
- `:noautocmd`.
+ Note: Cannot be skipped with `:noautocmd`.
Careful: This is triggered very often, don't
do anything that the user does not expect or
that is slow.
@@ -1352,7 +1372,7 @@ have changed autocommands, or when Vim has executed the wrong autocommands
Note that the 'eventignore' option applies here too. Events listed in this
option will not cause any commands to be executed.
- *:do* *:doau* *:doautocmd* *E217*
+ *:do* *:doau* *:doaut* *:doautocmd* *E217*
:do[autocmd] [<nomodeline>] [group] {event} [fname]
Apply the autocommands matching [fname] (default:
current file name) for {event} to the current buffer.
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index 2259eddb6a..bd3f22a371 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -162,8 +162,6 @@ gR Enter Virtual Replace mode: Each character you type
<Tab> may replace several characters at once.
Repeat the entered text [count]-1 times. See
|Virtual-Replace-mode| for more details.
- {not available when compiled without the |+vreplace|
- feature}
*c*
["x]c{motion} Delete {motion} text [into register x] and start
@@ -282,14 +280,11 @@ gr{char} Replace the virtual characters under the cursor with
space. See |gR| and |Virtual-Replace-mode| for more
details. As with |r| a count may be given.
{char} can be entered like with |r|.
- {not available when compiled without the |+vreplace|
- feature}
*digraph-arg*
The argument for Normal mode commands like |r| and |t| is a single character.
When 'cpo' doesn't contain the 'D' flag, this character can also be entered
like |digraphs|. First type CTRL-K and then the two digraph characters.
-{not available when compiled without the |+digraphs| feature}
*case*
The following commands change the case of letters. The currently active
@@ -1137,9 +1132,9 @@ There are ten types of registers: *registers* *E354*
2. 10 numbered registers "0 to "9
3. The small delete register "-
4. 26 named registers "a to "z or "A to "Z
-5. three read-only registers ":, "., "%
-6. alternate buffer register "#
-7. the expression register "=
+5. Three read-only registers ":, "., "%
+6. Alternate buffer register "#
+7. The expression register "=
8. The selection registers "* and "+
9. The black hole register "_
10. Last search pattern register "/
diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt
index ab002b4dcb..dcc3035d41 100644
--- a/runtime/doc/diff.txt
+++ b/runtime/doc/diff.txt
@@ -175,7 +175,7 @@ hidden buffers. You can use ":hide" to close a window without unloading the
buffer. If you don't want a buffer to remain used for the diff do ":set
nodiff" before hiding it.
- *:dif* *:diffupdate*
+ *:dif* *:diff* *:diffupdate*
:dif[fupdate][!] Update the diff highlighting and folds.
Vim attempts to keep the differences updated when you make changes to the
@@ -325,7 +325,7 @@ After setting this variable, reload the syntax script: >
FINDING THE DIFFERENCES *diff-diffexpr*
The 'diffexpr' option can be set to use something else than the standard
-"diff" program to compare two files and find the differences.
+"diff" program to compare two files and find the differences. *E959*
When 'diffexpr' is empty, Vim uses this command to find the differences
between file1 and file2: >
diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt
index f4d3164dbc..23a65f16e4 100644
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -555,7 +555,7 @@ You can use the argument list with the following commands, and with the
expression functions |argc()| and |argv()|. These all work on the argument
list of the current window.
- *:ar* *:args*
+ *:ar* *:arg* *:args*
:ar[gs] Print the argument list, with the current file in
square brackets.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 57ef380cc5..697e456817 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1010,8 +1010,9 @@ There must not be white space before or after the dot.
Examples: >
:let dict = {"one": 1, 2: "two"}
- :echo dict.one
- :echo dict .2
+ :echo dict.one " shows "1"
+ :echo dict.2 " shows "two"
+ :echo dict .2 " error because of space before the dot
Note that the dot is also used for String concatenation. To avoid confusion
always put spaces around the dot for String concatenation.
@@ -1588,7 +1589,7 @@ v:exception The value of the exception most recently caught and not
:try
: throw "oops"
:catch /.*/
- : echo "caught" v:exception
+ : echo "caught " .. v:exception
:endtry
< Output: "caught oops".
@@ -3982,7 +3983,10 @@ get({list}, {idx} [, {default}]) *get()*
get({dict}, {key} [, {default}])
Get item with key {key} from |Dictionary| {dict}. When this
item is not available return {default}. Return zero when
- {default} is omitted.
+ {default} is omitted. Useful example: >
+ let val = get(g:, 'var_name', 'default')
+< This gets the value of g:var_name if it exists, and uses
+ 'default' when it does not exist.
get({func}, {what})
Get item {what} from Funcref {func}. Possible values for
{what} are:
@@ -5038,7 +5042,6 @@ iconv({expr}, {from}, {to}) *iconv()*
Note that Vim uses UTF-8 for all Unicode encodings, conversion
from/to UCS-2 is automatically changed to use UTF-8. You
cannot use UCS-2 in a string anyway, because of the NUL bytes.
- {only available when compiled with the |+multi_byte| feature}
*indent()*
indent({lnum}) The result is a Number, which is indent of line {lnum} in the
@@ -5470,8 +5473,6 @@ libcall({libname}, {funcname}, {argument})
the DLL is not in the usual places.
For Unix: When compiling your own plugins, remember that the
object code must be compiled as position-independent ('PIC').
- {only in Win32 and some Unix versions, when the |+libcall|
- feature is present}
Examples: >
:echo libcall("libc.so", "getenv", "HOME")
<
@@ -5479,8 +5480,6 @@ libcall({libname}, {funcname}, {argument})
libcallnr({libname}, {funcname}, {argument})
Just like |libcall()|, but used for a function that returns an
int instead of a string.
- {only in Win32 on some Unix versions, when the |+libcall|
- feature is present}
Examples: >
:echo libcallnr("/usr/lib/libc.so", "getpid", "")
:call libcallnr("libc.so", "printf", "Hello World!\n")
@@ -6408,7 +6407,6 @@ py3eval({expr}) *py3eval()*
Lists are represented as Vim |List| type.
Dictionaries are represented as Vim |Dictionary| type with
keys converted to strings.
- {only available when compiled with the |+python3| feature}
*E858* *E859*
pyeval({expr}) *pyeval()*
@@ -6419,7 +6417,6 @@ pyeval({expr}) *pyeval()*
Lists are represented as Vim |List| type.
Dictionaries are represented as Vim |Dictionary| type,
non-string keys result in error.
- {only available when compiled with the |+python| feature}
pyxeval({expr}) *pyxeval()*
Evaluate Python expression {expr} and return its result
@@ -6553,7 +6550,6 @@ remote_expr({server}, {string} [, {idvar} [, {timeout}]])
seconds. Otherwise a timeout of 600 seconds is used.
See also |clientserver| |RemoteReply|.
This function is not available in the |sandbox|.
- {only available when compiled with the |+clientserver| feature}
Note: Any errors will cause a local error message to be issued
and the result will be the empty string.
@@ -6589,7 +6585,6 @@ remote_peek({serverid} [, {retvar}]) *remote_peek()*
Returns -1 if something is wrong.
See also |clientserver|.
This function is not available in the |sandbox|.
- {only available when compiled with the |+clientserver| feature}
Examples: >
:let repl = ""
:echo "PEEK: ".remote_peek(id, "repl").": ".repl
@@ -6600,7 +6595,6 @@ remote_read({serverid}, [{timeout}]) *remote_read()*
reply is available.
See also |clientserver|.
This function is not available in the |sandbox|.
- {only available when compiled with the |+clientserver| feature}
Example: >
:echo remote_read(id)
<
@@ -6614,7 +6608,6 @@ remote_send({server}, {string} [, {idvar}])
there.
See also |clientserver| |RemoteReply|.
This function is not available in the |sandbox|.
- {only available when compiled with the |+clientserver| feature}
Note: Any errors will be reported in the server and may mess
up the display.
@@ -6631,7 +6624,6 @@ remote_send({server}, {string} [, {idvar}])
remote_startserver({name})
Become the server {name}. This fails if already running as a
server, when |v:servername| is not empty.
- {only available when compiled with the |+clientserver| feature}
remove({list}, {idx} [, {end}]) *remove()*
Without {end}: Remove the item at {idx} from |List| {list} and
@@ -6645,7 +6637,8 @@ remove({list}, {idx} [, {end}]) *remove()*
:echo "last item: " . remove(mylist, -1)
:call remove(mylist, 0, 9)
remove({dict}, {key})
- Remove the entry from {dict} with key {key}. Example: >
+ Remove the entry from {dict} with key {key} and return it.
+ Example: >
:echo "removed " . remove(dict, "one")
< If there is no {key} in {dict} this is an error.
@@ -6802,7 +6795,6 @@ search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
{timeout} is 500 the search stops after half a second.
The value must not be negative. A zero value is like not
giving the argument.
- {only available when compiled with the |+reltime| feature}
*search()-sub-match*
With the 'p' flag the returned value is one more than the
@@ -6978,7 +6970,6 @@ searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *searchpos()*
server2client({clientid}, {string}) *server2client()*
Send a reply string to {clientid}. The most recent {clientid}
that sent a string can be retrieved with expand("<client>").
- {only available when compiled with the |+clientserver| feature}
Note:
This id has to be stored before the next command can be
received. I.e. before returning from the received command and
@@ -9328,7 +9319,7 @@ This function can then be called with: >
*:cal* *:call* *E107* *E117*
:[range]cal[l] {name}([arguments])
Call a function. The name of the function and its arguments
- are as specified with |:function|. Up to 20 arguments can be
+ are as specified with `:function`. Up to 20 arguments can be
used. The returned value is discarded.
Without a range and for functions that accept a range, the
function is called once. When a range is given the cursor is
@@ -9382,9 +9373,9 @@ Using an autocommand ~
This is introduced in the user manual, section |41.14|.
The autocommand is useful if you have a plugin that is a long Vim script file.
-You can define the autocommand and quickly quit the script with |:finish|.
+You can define the autocommand and quickly quit the script with `:finish`.
That makes Vim startup faster. The autocommand should then load the same file
-again, setting a variable to skip the |:finish| command.
+again, setting a variable to skip the `:finish` command.
Use the FuncUndefined autocommand event with a pattern that matches the
function(s) to be defined. Example: >
@@ -9699,6 +9690,11 @@ This does NOT work: >
register values cannot be used here, since they cannot
be locked.
+:cons[t]
+:cons[t] {var-name}
+ If no argument is given or only {var-name} is given,
+ the behavior is the same as |:let|.
+
:lockv[ar][!] [depth] {name} ... *:lockvar* *:lockv*
Lock the internal variable {name}. Locking means that
it can no longer be changed (until it is unlocked).
@@ -9750,7 +9746,7 @@ This does NOT work: >
opposite of |:lockvar|.
-:if {expr1} *:if* *:endif* *:en* *E171* *E579* *E580*
+:if {expr1} *:if* *:end* *:endif* *:en* *E171* *E579* *E580*
:en[dif] Execute the commands until the next matching ":else"
or ":endif" if {expr1} evaluates to non-zero.
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index ad834e1f6c..1f7d09ae32 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -579,6 +579,16 @@ To disable this behavior, set the following variable in your vimrc: >
let g:python_recommended_style = 0
+QF QUICKFIX *qf.vim* *ft-qf-plugin*
+
+The "qf" filetype is used for the quickfix window, see |quickfix-window|.
+
+The quickfix filetype plugin includes configuration for displaying the command
+that produced the quickfix list in the |status-line|. To disable this setting,
+configure as follows: >
+ :let g:qf_disable_statusline = 1
+
+
R MARKDOWN *ft-rmd-plugin*
By default ftplugin/html.vim is not sourced. If you want it sourced, add to
diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt
index b7d92fb229..f2f6c70b0c 100644
--- a/runtime/doc/fold.txt
+++ b/runtime/doc/fold.txt
@@ -436,7 +436,7 @@ zk Move upwards to the end of the previous fold. A closed fold
EXECUTING COMMANDS ON FOLDS ~
-:[range]foldd[oopen] {cmd} *:foldd* *:folddoopen*
+:[range]foldd[oopen] {cmd} *:foldd* *:folddo* *:folddoopen*
Execute {cmd} on all lines that are not in a closed fold.
When [range] is given, only these lines are used.
Each time {cmd} is executed the cursor is positioned on the
diff --git a/runtime/doc/if_lua.txt b/runtime/doc/if_lua.txt
index 6dcf3f9fa9..f886fd28c5 100644
--- a/runtime/doc/if_lua.txt
+++ b/runtime/doc/if_lua.txt
@@ -189,16 +189,16 @@ To see the LuaJIT version: >
:lua print(jit.version)
<
-:[range]lua << {endmarker}
+:[range]lua << [endmarker]
{script}
{endmarker}
- Execute Lua script {script}.
+ Execute Lua script {script}. Useful for including Lua
+ code in Vim scripts.
-{endmarker} must NOT be preceded by any white space. If {endmarker} is
-omitted from after the "<<", a dot '.' must be used after {script}, like
-for the |:append| and |:insert| commands.
-This form of the |:lua| command is mainly useful for including Lua code
-in Vim scripts.
+The {endmarker} must NOT be preceded by any white space.
+
+If [endmarker] is omitted from after the "<<", a dot '.' must be used after
+{script}, like for the |:append| and |:insert| commands.
Example:
>
diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt
index ac725a9b5d..ed3bdcf277 100644
--- a/runtime/doc/if_pyth.txt
+++ b/runtime/doc/if_pyth.txt
@@ -19,18 +19,17 @@ Commands *python-commands*
the `:python` command is working: >
:python print "Hello"
-:[range]py[thon] << {endmarker}
+:[range]py[thon] << [endmarker]
{script}
{endmarker}
- Execute Python script {script}.
- Note: This command doesn't work when Python isn't
- available. To avoid errors, see |script-here|.
-
-{endmarker} must NOT be preceded by any white space. If {endmarker} is
-omitted from after the "<<", a dot '.' must be used after {script}, like
-for the |:append| and |:insert| commands.
-This form of the |:python| command is mainly useful for including python code
-in Vim scripts.
+ Execute Python script {script}. Useful for including
+ python code in Vim scripts. Requires Python, see
+ |script-here|.
+
+The {endmarker} below the {script} must NOT be preceded by any white space.
+
+If [endmarker] is omitted from after the "<<", a dot '.' must be used after
+{script}, like for the |:append| and |:insert| commands.
Example: >
function! IcecreamInitialize()
diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt
index 3c7c800fbf..6468e4c81e 100644
--- a/runtime/doc/if_ruby.txt
+++ b/runtime/doc/if_ruby.txt
@@ -19,15 +19,19 @@ downloading Ruby there.
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
:ruby print "Hello"
-:rub[y] << {endpattern}
+:rub[y] << [endpattern]
{script}
{endpattern}
Execute Ruby script {script}.
- {endpattern} must NOT be preceded by any white space.
- If {endpattern} is omitted, it defaults to a dot '.'
- like for the |:append| and |:insert| commands. This
- form of the |:ruby| command is mainly useful for
+ The {endpattern} after {script} must NOT be preceded
+ by any white space.
+
+ If [endpattern] is omitted, it defaults to a dot '.'
+ like for the |:append| and |:insert| commands.
+
+ This form of the |:ruby| command is mainly useful for
including ruby code in vim scripts.
+
Note: This command doesn't work when the Ruby feature
wasn't compiled in. To avoid errors, see
|script-here|.
diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt
index e69497e1ab..a99d84e969 100644
--- a/runtime/doc/indent.txt
+++ b/runtime/doc/indent.txt
@@ -827,7 +827,7 @@ PHP indenting can be altered in several ways by modifying the values of some
global variables:
*php-comment* *PHP_autoformatcomment*
-To not enable auto-formatting of comments by default (if you want to use your
+To not enable auto-formating of comments by default (if you want to use your
own 'formatoptions'): >
:let g:PHP_autoformatcomment = 0
@@ -897,7 +897,7 @@ NOTE: Indenting will be a bit slower if this option is used because some
optimizations won't be available.
-------------
- *PHP_vintage_case_default_indent*
+ *PHP_vintage_case_default_indent*
To indent 'case:' and 'default:' statements in switch() blocks: >
:let g:PHP_vintage_case_default_indent = 1
@@ -924,6 +924,41 @@ You will obtain the following result: >
->age()
->info();
+-------------
+
+ *PHP_IndentFunctionCallParameters*
+Extra indentation levels to add to parameters in multi-line function calls. >
+ let g:PHP_IndentFunctionCallParameters = 1
+
+Function call arguments will indent 1 extra level. For two-space indentation: >
+
+ function call_the_thing(
+ $with_this,
+ $and_that
+ ) {
+ $this->do_the_thing(
+ $with_this,
+ $and_that
+ );
+ }
+
+-------------
+
+ *PHP_IndentFunctionDeclarationParameters*
+Extra indentation levels to add to arguments in multi-line function definitions. >
+ let g:PHP_IndentFunctionDeclarationParameters = 1
+
+Function arguments in declarations will indent 1 extra level. For two-space indentation: >
+
+ function call_the_thing(
+ $with_this,
+ $and_that
+ ) {
+ $this->do_the_thing(
+ $with_this,
+ $and_that
+ );
+ }
PYTHON *ft-python-indent*
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index da48f7f84d..47c789713c 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -153,7 +153,6 @@ commands in CTRL-X submode *i_CTRL-X_index*
|i_CTRL-X_CTRL-V| CTRL-X CTRL-V complete like in : command line
|i_CTRL-X_CTRL-]| CTRL-X CTRL-] complete tags
|i_CTRL-X_s| CTRL-X s spelling suggestions
-{not available when compiled without the |+insert_expand| feature}
commands in completion mode (see |popupmenu-keys|)
@@ -1195,6 +1194,7 @@ tag command action ~
|:compiler| :comp[iler] do settings for a specific compiler
|:continue| :con[tinue] go back to :while
|:confirm| :conf[irm] prompt user when confirmation required
+|:const| :cons[t] create a variable as a constant
|:copen| :cope[n] open quickfix window
|:cprevious| :cp[revious] go to previous error
|:cpfile| :cpf[ile] go to last error in previous file
diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt
index a2fdd821ff..abe86749c4 100644
--- a/runtime/doc/map.txt
+++ b/runtime/doc/map.txt
@@ -39,7 +39,7 @@ modes.
:om[ap] {lhs} {rhs} |mapmode-o| *:om* *:omap*
:map! {lhs} {rhs} |mapmode-ic| *:map!*
:im[ap] {lhs} {rhs} |mapmode-i| *:im* *:imap*
-:lm[ap] {lhs} {rhs} |mapmode-l| *:lm* *:lmap*
+:lm[ap] {lhs} {rhs} |mapmode-l| *:lm* *:lma* *:lmap*
:cm[ap] {lhs} {rhs} |mapmode-c| *:cm* *:cmap*
:tma[p] {lhs} {rhs} |mapmode-t| *:tma* *:tmap*
Map the key sequence {lhs} to {rhs} for the modes
@@ -52,12 +52,12 @@ modes.
:nn[oremap] {lhs} {rhs} |mapmode-n| *:nn* *:nnoremap*
:vn[oremap] {lhs} {rhs} |mapmode-v| *:vn* *:vnoremap*
:xn[oremap] {lhs} {rhs} |mapmode-x| *:xn* *:xnoremap*
-:snor[emap] {lhs} {rhs} |mapmode-s| *:snor* *:snoremap*
+:snor[emap] {lhs} {rhs} |mapmode-s| *:snor* *:snore* *:snoremap*
:ono[remap] {lhs} {rhs} |mapmode-o| *:ono* *:onoremap*
:no[remap]! {lhs} {rhs} |mapmode-ic| *:no!* *:noremap!*
-:ino[remap] {lhs} {rhs} |mapmode-i| *:ino* *:inoremap*
+:ino[remap] {lhs} {rhs} |mapmode-i| *:ino* *:inor* *:inoremap*
:ln[oremap] {lhs} {rhs} |mapmode-l| *:ln* *:lnoremap*
-:cno[remap] {lhs} {rhs} |mapmode-c| *:cno* *:cnoremap*
+:cno[remap] {lhs} {rhs} |mapmode-c| *:cno* *:cnor* *:cnoremap*
:tno[remap] {lhs} {rhs} |mapmode-t| *:tno* *:tnoremap*
Map the key sequence {lhs} to {rhs} for the modes
where the map command applies. Disallow mapping of
@@ -74,7 +74,7 @@ modes.
:unm[ap]! {lhs} |mapmode-ic| *:unm!* *:unmap!*
:iu[nmap] {lhs} |mapmode-i| *:iu* *:iunmap*
:lu[nmap] {lhs} |mapmode-l| *:lu* *:lunmap*
-:cu[nmap] {lhs} |mapmode-c| *:cu* *:cunmap*
+:cu[nmap] {lhs} |mapmode-c| *:cu* *:cun* *:cunmap*
:tunma[p] {lhs} |mapmode-t| *:tunma* *:tunmap*
Remove the mapping of {lhs} for the modes where the
map command applies. The mapping may remain defined
@@ -790,8 +790,6 @@ g@{motion} Call the function set by the 'operatorfunc' option.
"block" {motion} was |blockwise-visual|
Although "block" would rarely appear, since it can
only result from Visual mode where "g@" is not useful.
- {not available when compiled without the |+eval|
- feature}
Here is an example that counts the number of spaces with <F4>: >
@@ -972,7 +970,7 @@ See |:verbose-cmd| for more information.
:norea[bbrev] [<expr>] [<buffer>] [lhs] [rhs]
same as ":ab", but no remapping for this {rhs}
- *:ca* *:cabbrev*
+ *:ca* *:cab* *:cabbrev*
:ca[bbrev] [<expr>] [<buffer>] [lhs] [rhs]
same as ":ab", but for Command-line mode only.
diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt
index 24d9d01af0..127c46c27d 100644
--- a/runtime/doc/mbyte.txt
+++ b/runtime/doc/mbyte.txt
@@ -696,80 +696,6 @@ For example, when you are using kinput2 as |IM-server| and sh, >
<
==============================================================================
-Input on MS-Windows *mbyte-IME*
-
-(Windows IME support) *multibyte-ime* *IME*
-
-{only works Windows GUI and compiled with the |+multi_byte_ime| feature}
-
-To input multibyte characters on Windows, you can use an Input Method Editor
-(IME). In process of your editing text, you must switch status (on/off) of
-IME many many many times. Because IME with status on is hooking all of your
-key inputs, you cannot input 'j', 'k', or almost all of keys to Vim directly.
-
-This |+multi_byte_ime| feature help this. It reduce times of switch status of
-IME manually. In normal mode, there are almost no need working IME, even
-editing multibyte text. So exiting insert mode with ESC, Vim memorize last
-status of IME and force turn off IME. When re-enter insert mode, Vim revert
-IME status to that memorized automatically.
-
-This works on not only insert-normal mode, but also search-command input and
-replace mode.
-The options 'iminsert', 'imsearch' and 'imcmdline' can be used to chose
-the different input methods or disable them temporarily.
-
-WHAT IS IME
- IME is a part of East asian version Windows. That helps you to input
- multibyte character. English and other language version Windows does not
- have any IME. (Also there is no need usually.) But there is one that
- called Microsoft Global IME. Global IME is a part of Internet Explorer
- 4.0 or above. You can get more information about Global IME, at below
- URL.
-
-WHAT IS GLOBAL IME *global-ime*
- Global IME enables input of Chinese, Japanese, and Korean text into Vim
- buffer on any language version of Windows. Global IME is built in, and
- the Input Locales can be added through Control Panel/Regional
- Options/Input Locales. Please see below URL for detail of Global IME.
- You can also find various language version of Global IME at same place.
-
- - Global IME detailed information.
- http://search.microsoft.com/results.aspx?q=global+ime
-
- - Active Input Method Manager (Global IME)
- http://msdn.microsoft.com/en-us/library/aa741221(v=VS.85).aspx
-
- Support for Global IME is an experimental feature.
-
-NOTE: For IME to work you must make sure the input locales of your language
-are added to your system. The exact location of this depends on the version
-of Windows you use. For example, on my Windows 2000 box:
-1. Control Panel
-2. Regional Options
-3. Input Locales Tab
-4. Add Installed input locales -> Chinese(PRC)
- The default is still English (United Stated)
-
-
-Cursor color when IME or XIM is on *CursorIM*
- There is a little cute feature for IME. Cursor can indicate status of IME
- by changing its color. Usually status of IME was indicated by little icon
- at a corner of desktop (or taskbar). It is not easy to verify status of
- IME. But this feature help this.
- This works in the same way when using XIM.
-
- You can select cursor color when status is on by using highlight group
- CursorIM. For example, add these lines to your |ginit.vim|: >
-
- if has('multi_byte_ime')
- highlight Cursor guifg=NONE guibg=Green
- highlight CursorIM guifg=NONE guibg=Purple
- endif
-<
- Cursor color with off IME is green. And purple cursor indicates that
- status is on.
-
-==============================================================================
Input with a keymap *mbyte-keymap*
When the keyboard doesn't produce the characters you want to enter in your
@@ -777,7 +703,6 @@ text, you can use the 'keymap' option. This will translate one or more
(English) characters to another (non-English) character. This only happens
when typing text, not when typing Vim commands. This avoids having to switch
between two keyboard settings.
-{only available when compiled with the |+keymap| feature}
The value of the 'keymap' option specifies a keymap file to use. The name of
this file is one of these two:
diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt
index 864eea8f7f..97a1882159 100644
--- a/runtime/doc/message.txt
+++ b/runtime/doc/message.txt
@@ -240,6 +240,9 @@ 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.
*E302* >
Could not rename swap file
diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt
index 818bbf9eb7..97c7d1cc43 100644
--- a/runtime/doc/motion.txt
+++ b/runtime/doc/motion.txt
@@ -46,6 +46,7 @@ or change text. The following operators are available:
|!| ! filter through an external program
|=| = filter through 'equalprg' or C-indenting if empty
|gq| gq text formatting
+ |gw| gw text formatting with no cursor movement
|g?| g? ROT13 encoding
|>| > shift right
|<| < shift left
@@ -923,7 +924,7 @@ These commands are not marks themselves, but jump to a mark:
[` [count] times to lowercase mark before the cursor.
-:loc[kmarks] {command} *:loc* *:lockmarks*
+:loc[kmarks] {command} *:loc* *:lock* *:lockmarks*
Execute {command} without adjusting marks. This is
useful when changing text in a way that the line count
will be the same when the change has completed.
@@ -949,7 +950,7 @@ These commands are not marks themselves, but jump to a mark:
- folds
- diffs
-:kee[pmarks] {command} *:kee* *:keepmarks*
+:kee[pmarks] {command} *:kee* *:keep* *:keepmarks*
Currently only has effect for the filter command
|:range!|:
- When the number of lines after filtering is equal to
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index a206bec44e..ce0e01265b 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -3145,8 +3145,6 @@ A jump table for the options with a short description can be found at |Q_op|.
0 :lmap is off and IM is off
1 :lmap is ON and IM is off
2 :lmap is off and IM is ON
- 2 is available only when compiled with the |+multi_byte_ime|, |+xim|
- or |global-ime|.
To always reset the option to zero when leaving Insert mode with <Esc>
this can be used: >
:inoremap <ESC> <ESC>:set iminsert=0<CR>
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index 7f6a74e3f6..adfab07758 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1189,7 +1189,6 @@ x A single character, with no special meaning, matches itself
To include a "[" use "[[]" and for "]" use []]", e.g.,: >
/index\%[[[]0[]]]
< matches "index" "index[", "index[0" and "index[0]".
- {not available when compiled without the |+syntax| feature}
*/\%d* */\%x* */\%o* */\%u* */\%U* *E678*
diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index 95726324ef..9a75a95f23 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt* Nvim
+*pi_netrw.txt* For Vim version 8.1. Last change: 2019 Jul 17
------------------------------------------------
NETRW REFERENCE MANUAL by Charles E. Campbell
@@ -6,7 +6,7 @@
Author: Charles E. Campbell <NdrOchip@ScampbellPfamily.AbizM>
(remove NOSPAM from Campbell's email first)
-Copyright: Copyright (C) 2016 Charles E Campbell *netrw-copyright*
+Copyright: Copyright (C) 2017 Charles E Campbell *netrw-copyright*
The VIM LICENSE applies to the files in this package, including
netrw.vim, pi_netrw.txt, netrwFileHandlers.vim, netrwSettings.vim, and
syntax/netrw.vim. Like anything else that's free, netrw.vim and its
@@ -17,7 +17,6 @@ Copyright: Copyright (C) 2016 Charles E Campbell *netrw-copyright*
holder be liable for any damages resulting from the use of this
software. Use at your own risk!
-
*netrw*
*dav* *ftp* *netrw-file* *rcp* *scp*
*davs* *http* *netrw.vim* *rsync* *sftp*
@@ -73,7 +72,7 @@ Copyright: Copyright (C) 2016 Charles E Campbell *netrw-copyright*
Improving Browsing..................................|netrw-ssh-hack|
Listing Bookmarks And History.......................|netrw-qb|
Making A New Directory..............................|netrw-d|
- Making The Browsing Directory The Current Directory.|netrw-c|
+ Making The Browsing Directory The Current Directory.|netrw-cd|
Marking Files.......................................|netrw-mf|
Unmarking Files.....................................|netrw-mF|
Marking Files By Location List......................|netrw-qL|
@@ -83,6 +82,7 @@ Copyright: Copyright (C) 2016 Charles E Campbell *netrw-copyright*
Marked Files: Arbitrary Shell Command, En Bloc......|netrw-mX|
Marked Files: Arbitrary Vim Command.................|netrw-mv|
Marked Files: Argument List.........................|netrw-ma| |netrw-mA|
+ Marked Files: Buffer List...........................|netrw-cb| |netrw-cB|
Marked Files: Compression And Decompression.........|netrw-mz|
Marked Files: Copying...............................|netrw-mc|
Marked Files: Diff..................................|netrw-md|
@@ -153,7 +153,7 @@ Windows' ftp doesn't support .netrc; however, one may have in one's .vimrc: >
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\MyUserName\MACHINE'
<
-Netrw will substitute the host's machine name for "MACHINE" from the url it is
+Netrw will substitute the host's machine name for "MACHINE" from the URL it is
attempting to open, and so one may specify >
userid
password
@@ -210,7 +210,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
http: g:netrw_http_cmd = "fetch" elseif fetch is available
http: *g:netrw_http_put_cmd* = "curl -T"
rcp: *g:netrw_rcp_cmd* = "rcp"
- rsync: *g:netrw_rsync_cmd* = "rsync -a"
+ rsync: *g:netrw_rsync_cmd* = "rsync" (see |g:netrw_rsync_sep|)
scp: *g:netrw_scp_cmd* = "scp -q"
sftp: *g:netrw_sftp_cmd* = "sftp"
file: *g:netrw_file_cmd* = "elinks" or "links"
@@ -221,7 +221,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
elinks : "-source >"
links : "-dump >"
- curl : "-o"
+ curl : "-L -o"
wget : "-q -O"
fetch : "-o"
<
@@ -236,7 +236,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
READING *netrw-read* *netrw-nread* {{{2
- Generally, one may just use the url notation with a normal editing
+ Generally, one may just use the URL notation with a normal editing
command, such as >
:e ftp://[user@]machine/path
@@ -258,7 +258,7 @@ READING *netrw-read* *netrw-nread* {{{2
WRITING *netrw-write* *netrw-nwrite* {{{2
- One may just use the url notation with a normal file writing
+ One may just use the URL notation with a normal file writing
command, such as >
:w ftp://[user@]machine/path
@@ -279,7 +279,7 @@ WRITING *netrw-write* *netrw-nwrite* {{{2
SOURCING *netrw-source* {{{2
- One may just use the url notation with the normal file sourcing
+ One may just use the URL notation with the normal file sourcing
command, such as >
:so ftp://[user@]machine/path
@@ -477,7 +477,7 @@ file using root-relative paths, use the full path:
==============================================================================
4. Network-Oriented File Transfer *netrw-xfer* {{{1
-Network-oriented file transfer under Vim is implemented by a VimL-based script
+Network-oriented file transfer under Vim is implemented by a vim script
(<netrw.vim>) using plugin techniques. It currently supports both reading and
writing across networks using rcp, scp, ftp or ftp+<.netrc>, scp, fetch,
dav/cadaver, rsync, or sftp.
@@ -530,7 +530,7 @@ variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to
let g:netrw_sftp_cmd= '"c:\Program Files\PuTTY\psftp.exe"'
<
(note: it has been reported that windows 7 with putty v0.6's "-batch" option
- doesn't work, so it's best to leave it off for that system)
+ doesn't work, so its best to leave it off for that system)
See |netrw-p8| for more about putty, pscp, psftp, etc.
@@ -732,11 +732,11 @@ such as netrw.
The usual read/write commands are supported. There are also a few
additional commands available. Often you won't need to use Nwrite or
Nread as shown in |netrw-transparent| (ie. simply use >
- :e url
- :r url
- :w url
+ :e URL
+ :r URL
+ :w URL
instead, as appropriate) -- see |netrw-urls|. In the explanations
-below, a {netfile} is an url to a remote file.
+below, a {netfile} is a URL to a remote file.
*:Nwrite* *:Nw*
:[range]Nw[rite] Write the specified lines to the current
@@ -866,9 +866,11 @@ variables listed below, and may be modified by the user.
g:netrw_http_cmd var ="fetch -o" if fetch is available
g:netrw_http_cmd var ="wget -O" else if wget is available
g:netrw_http_put_cmd var ="curl -T"
- |g:netrw_list_cmd| var ="ssh USEPORT HOSTNAME ls -Fa"
+ |g:netrw_list_cmd| var ="ssh USEPORT HOSTNAME ls -Fa"
g:netrw_rcp_cmd var ="rcp"
- g:netrw_rsync_cmd var ="rsync -a"
+ g:netrw_rsync_cmd var ="rsync"
+ *g:netrw_rsync_sep* var ="/" used to separate the hostname
+ from the file spec
g:netrw_scp_cmd var ="scp -q"
g:netrw_sftp_cmd var ="sftp" >
-------------------------------------------------------------------------
@@ -1005,7 +1007,7 @@ where [protocol] is typically scp or ftp. As an example, try: >
vim ftp://ftp.home.vim.org/pub/vim/
<
For local directories, the trailing slash is not required. Again, because it's
-easy to miss: to browse remote directories, the url must terminate with a
+easy to miss: to browse remote directories, the URL must terminate with a
slash!
If you'd like to avoid entering the password repeatedly for remote directory
@@ -1075,9 +1077,9 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
<c-r> Browse using a gvim server |netrw-ctrl-r|
<c-tab> Shrink/expand a netrw/explore window |netrw-c-tab|
- Makes Netrw go up one directory |netrw--|
- a Toggles between normal display, |netrw-a|
+ a Cycles between normal display, |netrw-a|
hiding (suppress display of files matching g:netrw_list_hide)
- showing (display only files which match g:netrw_list_hide)
+ and showing (display only files which match g:netrw_list_hide)
c Make browsing directory the current directory |netrw-c|
C Setting the editing window |netrw-C|
d Make a directory |netrw-d|
@@ -1088,6 +1090,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
gh Quick hide/unhide of dot-files |netrw-gh|
gn Make top of tree the directory below the cursor |netrw-gn|
i Cycle between thin, long, wide, and tree listings |netrw-i|
+ I Toggle the displaying of the banner |netrw-I|
mb Bookmark current directory |netrw-mb|
mc Copy marked files to marked-file target directory |netrw-mc|
md Apply diff to marked files (up to 3) |netrw-md|
@@ -1167,25 +1170,26 @@ QUICK REFERENCE: COMMANDS *netrw-explore-cmds* *netrw-browse-cmds* {{{2
BANNER DISPLAY *netrw-I*
-One may toggle the banner display on and off by pressing "I".
+One may toggle the displaying of the banner by pressing "I".
Also See: |g:netrw_banner|
-BOOKMARKING A DIRECTORY *netrw-mb* *netrw-bookmark* *netrw-bookmarks* {{{2
+BOOKMARKING A DIRECTORY *netrw-mb* *netrw-bookmark* *netrw-bookmarks* {{{2
One may easily "bookmark" the currently browsed directory by using >
mb
<
*.netrwbook*
-Bookmarks are retained in between sessions in a $HOME/.netrwbook file, and are
-kept in sorted order.
+Bookmarks are retained in between sessions of vim in a file called .netrwbook
+as a |List|, which is typically stored in the first directory on the user's
+'runtimepath'; entries are kept in sorted order.
If there are marked files and/or directories, mb will add them to the bookmark
list.
-*netrw-:NetrwMB*
+ *netrw-:NetrwMB*
Addtionally, one may use :NetrwMB to bookmark files or directories. >
:NetrwMB[!] [files/directories]
@@ -1204,7 +1208,7 @@ The :NetrwMB command is available outside of netrw buffers (once netrw has been
invoked in the session).
The file ".netrwbook" holds bookmarks when netrw (and vim) is not active. By
-default, it's stored on the first directory on the user's |'runtimepath'|.
+default, its stored on the first directory on the user's |'runtimepath'|.
Related Topics:
|netrw-gb| how to return (go) to a bookmark
@@ -1416,20 +1420,20 @@ Related Topics:
CHANGING TO A PREDECESSOR DIRECTORY *netrw-u* *netrw-updir* {{{2
-Every time you change to a new directory (new for the current session),
-netrw will save the directory in a recently-visited directory history
-list (unless |g:netrw_dirhistmax| is zero; by default, it's ten). With the
-"u" map, one can change to an earlier directory (predecessor). To do
-the opposite, see |netrw-U|.
+Every time you change to a new directory (new for the current session), netrw
+will save the directory in a recently-visited directory history list (unless
+|g:netrw_dirhistmax| is zero; by default, it holds ten entries). With the "u"
+map, one can change to an earlier directory (predecessor). To do the
+opposite, see |netrw-U|.
-The "u" map also accepts counts to go back in the history several slots.
-For your convenience, qb (see |netrw-qb|) lists the history number which may
-be used in that count.
+The "u" map also accepts counts to go back in the history several slots. For
+your convenience, qb (see |netrw-qb|) lists the history number which may be
+used in that count.
*.netrwhist*
See |g:netrw_dirhistmax| for how to control the quantity of history stack
slots. The file ".netrwhist" holds history when netrw (and vim) is not
-active. By default, it's stored on the first directory on the user's
+active. By default, its stored on the first directory on the user's
|'runtimepath'|.
Related Topics:
@@ -1465,10 +1469,10 @@ changing the top of the tree listing.
NETRW CLEAN *netrw-clean* *:NetrwClean* {{{2
-With NetrwClean one may easily remove netrw from one's home directory;
+With :NetrwClean one may easily remove netrw from one's home directory;
more precisely, from the first directory on your |'runtimepath'|.
-With NetrwClean!, netrw will attempt to remove netrw from all directories on
+With :NetrwClean!, netrw will attempt to remove netrw from all directories on
your |'runtimepath'|. Of course, you have to have write/delete permissions
correct to do this.
@@ -1500,7 +1504,7 @@ Netrw determines which special handler by the following method:
If g:netrw_browsex_viewer == '-', then netrwFileHandlers#Invoke() will be
used instead (see |netrw_filehandler|).
- * for Windows 32 or 64, the url and FileProtocolHandler dlls are used.
+ * for Windows 32 or 64, the URL and FileProtocolHandler dlls are used.
* for Gnome (with gnome-open): gnome-open is used.
* for KDE (with kfmclient) : kfmclient is used
* for Mac OS X : open is used.
@@ -1516,9 +1520,10 @@ will apply a special handler to it (like "x" works when in a netrw buffer).
One may also use visual mode (see |visual-start|) to select the text that the
special handler will use. Normally gx uses expand("<cfile>") to pick up the
text under the cursor; one may change what |expand()| uses via the
-|g:netrw_gx| variable. Alternatively, one may select the text to be used by
-gx via first making a visual selection (see |visual-block|) or by changing
-the |'isfname'| option (which is global, so netrw doesn't modify it).
+|g:netrw_gx| variable (options include "<cword>", "<cWORD>"). Note that
+expand("<cfile>") depends on the |'isfname'| setting. Alternatively, one may
+select the text to be used by gx by making a visual selection (see
+|visual-block|) and then pressing gx.
Associated setting variables:
|g:netrw_gx| control how gx picks up the text under the cursor
@@ -1610,6 +1615,11 @@ A further approach is to delete files which match a pattern.
This will cause the matching files to be marked. Then,
press "D".
+If your vim has 7.4 with patch#1107, then |g:netrw_localrmdir| no longer
+is used to remove directories; instead, vim's |delete()| is used with
+the "d" option. Please note that only empty directories may be deleted
+with the "D" mapping. Regular files are deleted with |delete()|, too.
+
The |g:netrw_rm_cmd|, |g:netrw_rmf_cmd|, and |g:netrw_rmdir_cmd| variables are
used to control the attempts to remove remote files and directories. The
g:netrw_rm_cmd is used with files, and its default value is:
@@ -1673,17 +1683,18 @@ DIRECTORY EXPLORATION COMMANDS {{{2
The [N] specifies a |g:netrw_winsize| just for the new :Lexplore
window.
- Those who like this method often also often like tree style displays;
+ Those who like this method often also like tree style displays;
see |g:netrw_liststyle|.
+:[N]Lexplore! [dir] is similar to :Lexplore, except that the full-height
+ Explorer window will open on the right hand side and an
+ uninitialized |g:netrw_chgwin| will be set to 1 (eg. edits will
+ preferentially occur in the leftmost window).
+
Also see: |netrw-C| |g:netrw_browse_split| |g:netrw_wiw|
|netrw-p| |netrw-P| |g:netrw_chgwin|
|netrw-c-tab| |g:netrw_winsize|
-:[N]Lexplore! is like :Lexplore, except that the full-height Explorer window
- will open on the right hand side and an uninitialized |g:netrw_chgwin|
- will be set to 1.
-
*netrw-:Sexplore*
:[N]Sexplore will always split the window before invoking the local-directory
browser. As with Explore, the splitting is normally done
@@ -1845,9 +1856,11 @@ EXECUTING FILE UNDER CURSOR VIA SYSTEM() *netrw-X* {{{2
Pressing X while the cursor is atop an executable file will yield a prompt
using the filename asking for any arguments. Upon pressing a [return], netrw
-will then call |system()| with that command and arguments. The result will
-be displayed by |:echomsg|, and so |:messages| will repeat display of the
-result. Ansi escape sequences will be stripped out.
+will then call |system()| with that command and arguments. The result will be
+displayed by |:echomsg|, and so |:messages| will repeat display of the result.
+Ansi escape sequences will be stripped out.
+
+See |cmdline-window| for directions for more on how to edit the arguments.
FORCING TREATMENT AS A FILE OR DIRECTORY *netrw-gd* *netrw-gf* {{{2
@@ -2070,7 +2083,7 @@ Associated setting variables: |g:netrw_localmkdir| |g:netrw_mkdir_cmd|
|g:netrw_remote_mkdir| |netrw-%|
-MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY *netrw-c* {{{2
+MAKING THE BROWSING DIRECTORY THE CURRENT DIRECTORY *netrw-cd* {{{2
By default, |g:netrw_keepdir| is 1. This setting means that the current
directory will not track the browsing directory. (done for backwards
@@ -2081,10 +2094,13 @@ track netrw's browsing directory.
However, given the default setting for g:netrw_keepdir of 1 where netrw
maintains its own separate notion of the current directory, in order to make
-the two directories the same, use the "c" map (just type c). That map will
+the two directories the same, use the "cd" map (type cd). That map will
set Vim's notion of the current directory to netrw's current browsing
directory.
+*netrw-c* : This map's name has been changed from "c" to cd (see |netrw-cd|).
+ This change was done to allow for |netrw-cb| and |netrw-cB| maps.
+
Associated setting variable: |g:netrw_keepdir|
MARKING FILES *netrw-:MF* *netrw-mf* {{{2
@@ -2129,6 +2145,7 @@ The following netrw maps make use of marked files:
|netrw-mg| Apply vimgrep to marked files
|netrw-mm| Move marked files to target
|netrw-mp| Print marked files
+ |netrw-ms| Netrw will source marked files
|netrw-mt| Set target for |netrw-mm| and |netrw-mc|
|netrw-mT| Generate tags using marked files
|netrw-mv| Apply vim command to marked files
@@ -2203,6 +2220,9 @@ converts "*" into ".*" (see |regexp|) and marks files based on that. In the
future I may make it possible to use |regexp|s instead of glob()-style
expressions (yet-another-option).
+See |cmdline-window| for directions on more on how to edit the regular
+expression.
+
MARKED FILES, ARBITRARY VIM COMMAND *netrw-mv* {{{2
(See |netrw-mf| and |netrw-mr| for how to mark files)
@@ -2216,8 +2236,9 @@ the local marked file list, individually:
* run vim command
* sil! keepalt wq!
-A prompt, "Enter vim command: ", will be issued to elicit the vim command
-you wish used.
+A prompt, "Enter vim command: ", will be issued to elicit the vim command you
+wish used. See |cmdline-window| for directions for more on how to edit the
+command.
MARKED FILES, ARBITRARY SHELL COMMAND *netrw-mx* {{{2
@@ -2268,7 +2289,17 @@ MARKED FILES: ARGUMENT LIST *netrw-ma* *netrw-mA*
Using ma, one moves filenames from the marked file list to the argument list.
Using mA, one moves filenames from the argument list to the marked file list.
-See Also: |netrw-qF| |argument-list| |:args|
+See Also: |netrw-cb| |netrw-cB| |netrw-qF| |argument-list| |:args|
+
+
+MARKED FILES: BUFFER LIST *netrw-cb* *netrw-cB*
+ (See |netrw-mf| and |netrw-mr| for how to mark files)
+ (uses the global marked-file list)
+
+Using cb, one moves filenames from the marked file list to the buffer list.
+Using cB, one copies filenames from the buffer list to the marked file list.
+
+See Also: |netrw-ma| |netrw-mA| |netrw-qF| |buffer-list| |:buffers|
MARKED FILES: COMPRESSION AND DECOMPRESSION *netrw-mz* {{{2
@@ -2304,15 +2335,15 @@ One may also copy directories and their contents (local only) to a target
directory.
Associated setting variables:
- |g:netrw_localcopycmd|
- |g:netrw_localcopydircmd|
+ |g:netrw_localcopycmd| |g:netrw_localcopycmdopt|
+ |g:netrw_localcopydircmd| |g:netrw_localcopydircmdopt|
|g:netrw_ssh_cmd|
MARKED FILES: DIFF *netrw-md* {{{2
(See |netrw-mf| and |netrw-mr| for how to mark files)
(uses the global marked file list)
-Use |diff-mode| to visualize difference between selected files (two or
+Use |vimdiff| to visualize difference between selected files (two or
three may be selected for this). Uses the global marked file list.
MARKED FILES: EDITING *netrw-me* {{{2
@@ -2450,8 +2481,8 @@ When a remote set of files are tagged, the resulting tags file is "obtained";
ie. a copy is transferred to the local system's directory. The now local tags
file is then modified so that one may use it through the network. The
modification made concerns the names of the files in the tags; each filename is
-preceded by the netrw-compatible url used to obtain it. When one subsequently
-uses one of the go to tag actions (|tags|), the url will be used by netrw to
+preceded by the netrw-compatible URL used to obtain it. When one subsequently
+uses one of the go to tag actions (|tags|), the URL will be used by netrw to
edit the desired file and go to the tag.
Associated setting variables: |g:netrw_ctags| |g:netrw_ssh_cmd|
@@ -2553,8 +2584,8 @@ your browsing preferences. (see also: |netrw-settings|)
editing. It will also use the specified tab
and window numbers to perform editing
(see |clientserver|, |netrw-ctrl-r|)
- This option does not affect |:Lexplore|
- windows.
+ This option does not affect the production of
+ |:Lexplore| windows.
Related topics:
|g:netrw_alto| |g:netrw_altv|
@@ -2708,11 +2739,12 @@ your browsing preferences. (see also: |netrw-settings|)
=0 : show all
=1 : show not-hidden files
=2 : show hidden files only
- default: =0
+ default: =1
*g:netrw_home* The home directory for where bookmarks and
history are saved (as .netrwbook and
.netrwhist).
+ Netrw uses |expand()|on the string.
default: the first directory on the
|'runtimepath'|
@@ -2733,7 +2765,7 @@ your browsing preferences. (see also: |netrw-settings|)
default: (if ssh is executable)
"ssh HOSTNAME ls -FLa"
- *g:netrw_list_cmd_options* If this variable exists, then its contents are
+ *g:netrw_list_cmd_options* If this variable exists, then its contents are
appended to the g:netrw_list_cmd. For
example, use "2>/dev/null" to get rid of banner
messages on unix systems.
@@ -2759,26 +2791,52 @@ your browsing preferences. (see also: |netrw-settings|)
let g:netrw_list_hide= netrw_gitignore#Hide().'.*\.swp$'
default: ""
- *g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
- ="copy" Windows
+ *g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
+ =expand("$COMSPEC") Windows
Copies marked files (|netrw-mf|) to target
directory (|netrw-mt|, |netrw-mc|)
- *g:netrw_localcopydircmd* ="cp -R" Linux/Unix/MacOS/Cygwin
- ="xcopy /e /c /h/ /i /k" Windows
+ *g:netrw_localcopycmdopt* ='' Linux/Unix/MacOS/Cygwin
+ =' \c copy' Windows
+ Options for the |g:netrw_localcopycmd|
+
+ *g:netrw_localcopydircmd* ="cp" Linux/Unix/MacOS/Cygwin
+ =expand("$COMSPEC") Windows
Copies directories to target directory.
(|netrw-mc|, |netrw-mt|)
- *g:netrw_localmkdir* command for making a local directory
- default: "mkdir"
+ *g:netrw_localcopydircmdopt* =" -R" Linux/Unix/MacOS/Cygwin
+ =" /c xcopy /e /c /h/ /i /k" Windows
+ Options for |g:netrw_localcopydircmd|
+
+ *g:netrw_localmkdir* ="mkdir" Linux/Unix/MacOS/Cygwin
+ =expand("$COMSPEC") Windows
+ command for making a local directory
- *g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
- ="move" Windows
+ *g:netrw_localmkdiropt* ="" Linux/Unix/MacOS/Cygwin
+ =" /c mkdir" Windows
+ Options for |g:netrw_localmkdir|
+
+ *g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
+ =expand("$COMSPEC") Windows
Moves marked files (|netrw-mf|) to target
directory (|netrw-mt|, |netrw-mm|)
- *g:netrw_localrmdir* remove directory command (rmdir)
- default: "rmdir"
+ *g:netrw_localmovecmdopt* ="" Linux/Unix/MacOS/Cygwin
+ =" /c move" Windows
+ Options for |g:netrw_localmovecmd|
+
+ *g:netrw_localrmdir* ="rmdir" Linux/Unix/MacOS/Cygwin
+ =expand("$COMSPEC") Windows
+ Remove directory command (rmdir)
+ This variable is only used if your vim is
+ earlier than 7.4 or if your vim doesn't
+ have patch#1107. Otherwise, |delete()|
+ is used with the "d" option.
+
+ *g:netrw_localrmdiropt* ="" Linux/Unix/MacOS/Cygwin
+ =" /c rmdir" Windows
+ Options for |g:netrw_localrmdir|
*g:netrw_maxfilenamelen* =32 by default, selected so as to make long
listings fit on 80 column displays.
@@ -2882,26 +2940,41 @@ your browsing preferences. (see also: |netrw-settings|)
netrwBak : *.bak
netrwCompress: *.gz *.bz2 *.Z *.zip
+ netrwCoreDump: core.\d\+
netrwData : *.dat
+ netrwDoc : *.doc,*.txt,*.pdf,
+ *.pdf,*.docx
netrwHdr : *.h
+ netrwLex : *.l *.lex
netrwLib : *.a *.so *.lib *.dll
netrwMakefile: [mM]akefile *.mak
netrwObj : *.o *.obj
+ netrwPix : *.bmp,*.fit,*.fits,*.gif,
+ *.jpg,*.jpeg,*.pcx,*.ppc
+ *.pgm,*.png,*.psd,*.rgb
+ *.tif,*.xbm,*.xcf
netrwTags : tags ANmenu ANtags
netrwTilde : *
netrwTmp : tmp* *tmp
-
- These syntax highlighting groups are linked
- to Folded or DiffChange by default
- (see |hl-Folded| and |hl-DiffChange|), but
- one may put lines like >
+ netrwYacc : *.y
+
+ In addition, those groups mentioned in
+ |'suffixes'| are also added to the special
+ file highlighting group.
+ These syntax highlighting groups are linked
+ to netrwGray or Folded by default
+ (see |hl-Folded|), but one may put lines like >
hi link netrwCompress Visual
< into one's <.vimrc> to use one's own
preferences. Alternatively, one may
- put such specifications into
- .vim/after/syntax/netrw.vim.
-
- As an example, I myself use a dark-background
+ put such specifications into >
+ .vim/after/syntax/netrw.vim.
+< The netrwGray highlighting is set up by
+ netrw when >
+ * netrwGray has not been previously
+ defined
+ * the gui is running
+< As an example, I myself use a dark-background
colorscheme with the following in
.vim/after/syntax/netrw.vim: >
@@ -2968,8 +3041,9 @@ your browsing preferences. (see also: |netrw-settings|)
current netrw buffer's window to be used for
the new window.
If g:netrw_winsize is less than zero, then
- the absolute value of g:netrw_winsize lines
- or columns will be used for the new window.
+ the absolute value of g:netrw_winsize will be
+ used to specify the quantity of lines or
+ columns for the new window.
If g:netrw_winsize is zero, then a normal
split will be made (ie. |'equalalways'| will
take effect, for example).
@@ -3136,8 +3210,8 @@ If there are no marked files: (see |netrw-mf|)
Renaming files and directories involves moving the cursor to the
file/directory to be moved (renamed) and pressing "R". You will then be
- queried for what you want the file/directory to be renamed to You may select
- a range of lines with the "V" command (visual selection), and then
+ queried for what you want the file/directory to be renamed to. You may
+ select a range of lines with the "V" command (visual selection), and then
press "R"; you will be queried for each file as to what you want it
renamed to.
@@ -3169,16 +3243,20 @@ If there are marked files: (see |netrw-mf|)
Note that moving files is a dangerous operation; copies are safer. That's
because a "move" for remote files is actually a copy + delete -- and if
- the copy fails and the delete does not, you may lose the file.
+ the copy fails and the delete succeeds you may lose the file.
Use at your own risk.
-The g:netrw_rename_cmd variable is used to implement remote renaming. By
-default its value is:
+The *g:netrw_rename_cmd* variable is used to implement remote renaming. By
+default its value is: >
ssh HOSTNAME mv
-
+<
One may rename a block of files and directories by selecting them with
-V (|linewise-visual|) when using thin style
+V (|linewise-visual|) when using thin style.
+
+See |cmdline-editing| for more on how to edit the command line; in particular,
+you'll find <ctrl-f> (initiates cmdline window editing) and <ctrl-c> (uses the
+command line under the cursor) useful in conjunction with the R command.
SELECTING SORTING STYLE *netrw-s* *netrw-sort* {{{2
@@ -3199,8 +3277,8 @@ number. Subsequent selection of a file to edit (|netrw-cr|) will use that
window.
* C : by itself, will select the current window holding a netrw buffer
- for editing via |netrw-cr|. The C mapping is only available while in
- netrw buffers.
+ for subsequent editing via |netrw-cr|. The C mapping is only available
+ while in netrw buffers.
* [count]C : the count will be used as the window number to be used
for subsequent editing via |netrw-cr|.
@@ -3213,7 +3291,7 @@ window.
Using >
let g:netrw_chgwin= -1
will restore the default editing behavior
-(ie. editing will use the current window).
+(ie. subsequent editing will use the current window).
Related topics: |netrw-cr| |g:netrw_browse_split|
Associated setting variables: |g:netrw_chgwin|
@@ -3234,9 +3312,9 @@ only if your terminal supports differentiating <c-tab> from a plain
* Else bring up a |:Lexplore| window
-If |g:netrw_usetab| exists or is zero, or if there is a pre-existing mapping
+If |g:netrw_usetab| exists and is zero, or if there is a pre-existing mapping
for <c-tab>, then the <c-tab> will not be mapped. One may map something other
-than a <c-tab>, too: (but you'll still need to have had g:netrw_usetab set) >
+than a <c-tab>, too: (but you'll still need to have had |g:netrw_usetab| set). >
nmap <unique> (whatever) <Plug>NetrwShrink
<
@@ -3269,9 +3347,10 @@ The user function is passed one argument; it resembles >
fun! ExampleUserMapFunc(islocal)
<
-where a:islocal is 1 if it's a local-directory system call or 0 when
+where a:islocal is 1 if its a local-directory system call or 0 when
remote-directory system call.
+ *netrw-call* *netrw-expose* *netrw-modify*
Use netrw#Expose("varname") to access netrw-internal (script-local)
variables.
Use netrw#Modify("varname",newvalue) to change netrw-internal variables.
@@ -3302,7 +3381,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
(This section is likely to grow as I get feedback)
(also see |netrw-debug|)
*netrw-p1*
- P1. I use windows 95, and my ftp dumps four blank lines at the
+ P1. I use windows 95, and my ftp dumps four blank lines at the {{{2
end of every read.
See |netrw-fixup|, and put the following into your
@@ -3311,7 +3390,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
let g:netrw_win95ftp= 1
*netrw-p2*
- P2. I use Windows, and my network browsing with ftp doesn't sort by
+ P2. I use Windows, and my network browsing with ftp doesn't sort by {{{2
time or size! -or- The remote system is a Windows server; why
don't I get sorts by time or size?
@@ -3338,7 +3417,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
*netrw-p3*
- P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw
+ P3. I tried rcp://user@host/ (or protocol other than ftp) and netrw {{{2
used ssh! That wasn't what I asked for...
Netrw has two methods for browsing remote directories: ssh
@@ -3347,7 +3426,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
listing), netrw will use the given protocol to do so.
*netrw-p4*
- P4. I would like long listings to be the default.
+ P4. I would like long listings to be the default. {{{2
Put the following statement into your |.vimrc|: >
@@ -3357,7 +3436,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
you can set.
*netrw-p5*
- P5. My times come up oddly in local browsing
+ P5. My times come up oddly in local browsing {{{2
Does your system's strftime() accept the "%c" to yield dates
such as "Sun Apr 27 11:49:23 1997"? If not, do a
@@ -3367,7 +3446,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
let g:netrw_timefmt= "%X" (where X is the option)
<
*netrw-p6*
- P6. I want my current directory to track my browsing.
+ P6. I want my current directory to track my browsing. {{{2
How do I do that?
Put the following line in your |.vimrc|:
@@ -3375,8 +3454,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
let g:netrw_keepdir= 0
<
*netrw-p7*
- P7. I use Chinese (or other non-ascii) characters in my filenames, and
- netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
+ P7. I use Chinese (or other non-ascii) characters in my filenames, {{{2
+ and netrw (Explore, Sexplore, Hexplore, etc) doesn't display them!
(taken from an answer provided by Wu Yongwei on the vim
mailing list)
@@ -3390,7 +3469,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
(...it is one more reason to recommend that people use utf-8!)
*netrw-p8*
- P8. I'm getting "ssh is not executable on your system" -- what do I
+ P8. I'm getting "ssh is not executable on your system" -- what do I {{{2
do?
(Dudley Fox) Most people I know use putty for windows ssh. It
@@ -3433,7 +3512,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
- Click "Add..."
- Set External Editor (adjust path as needed, include
the quotes and !.! at the end):
- "c:\Program Files\Vim\vim81\gvim.exe" !.!
+ "c:\Program Files\Vim\vim70\gvim.exe" !.!
- Check that the filetype in the box below is
{asterisk}.{asterisk} (all files), or whatever types
you want (cec: change {asterisk} to * ; I had to
@@ -3473,7 +3552,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
default.
*netrw-p9* *netrw-ml_get*
- P9. I'm browsing, changing directory, and bang! ml_get errors
+ P9. I'm browsing, changing directory, and bang! ml_get errors {{{2
appear and I have to kill vim. Any way around this?
Normally netrw attempts to avoid writing swapfiles for
@@ -3484,7 +3563,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
let g:netrw_use_noswf= 0
<
*netrw-p10*
- P10. I'm being pestered with "[something] is a directory" and
+ P10. I'm being pestered with "[something] is a directory" and {{{2
"Press ENTER or type command to continue" prompts...
The "[something] is a directory" prompt is issued by Vim,
@@ -3495,8 +3574,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
your <.vimrc> file.
*netrw-p11*
- P11. I want to have two windows; a thin one on the left and my editing
- window on the right. How may I accomplish this?
+ P11. I want to have two windows; a thin one on the left and my {{{2
+ editing window on the right. How may I accomplish this?
You probably want netrw running as in a side window. If so, you
will likely find that ":[N]Lexplore" does what you want. The
@@ -3521,7 +3600,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
*netrw-p12*
- P12. My directory isn't sorting correctly, or unwanted letters are
+ P12. My directory isn't sorting correctly, or unwanted letters are {{{2
appearing in the listed filenames, or things aren't lining
up properly in the wide listing, ...
@@ -3531,9 +3610,9 @@ Example: Clear netrw's marked file list via a mapping on gu >
You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|.
*netrw-p13*
- P13. I'm a Windows + putty + ssh user, and when I attempt to browse,
- the directories are missing trailing "/"s so netrw treats them
- as file transfers instead of as attempts to browse
+ P13. I'm a Windows + putty + ssh user, and when I attempt to {{{2
+ browse, the directories are missing trailing "/"s so netrw treats
+ them as file transfers instead of as attempts to browse
subdirectories. How may I fix this?
(mikeyao) If you want to use vim via ssh and putty under Windows,
@@ -3552,7 +3631,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
"let g:netrw_scp_cmd = "d:\\dev\\putty\\PSCP.exe"
<
*netrw-p14*
- P14. I would like to speed up writes using Nwrite and scp/ssh
+ P14. I would like to speed up writes using Nwrite and scp/ssh {{{2
style connections. How? (Thomer M. Gil)
Try using ssh's ControlMaster and ControlPath (see the ssh_config
@@ -3579,8 +3658,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
vim scp://host.domain.com//home/user/.bashrc
<
*netrw-p15*
- P15. How may I use a double-click instead of netrw's usual single click
- to open a file or directory? (Ben Fritz)
+ P15. How may I use a double-click instead of netrw's usual single {{{2
+ click to open a file or directory? (Ben Fritz)
First, disable netrw's mapping with >
let g:netrw_mousemaps= 0
@@ -3592,8 +3671,8 @@ Example: Clear netrw's marked file list via a mapping on gu >
(see |g:netrw_mousemaps|)
*netrw-p16*
- P16. When editing remote files (ex. :e ftp://hostname/path/file),
- under Windows I get an |E303| message complaining that it's unable
+ P16. When editing remote files (ex. :e ftp://hostname/path/file), {{{2
+ under Windows I get an |E303| message complaining that its unable
to open a swap file.
(romainl) It looks like you are starting Vim from a protected
@@ -3601,7 +3680,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
directory.
*netrw-p17*
- P17. Netrw is closing buffers on its own.
+ P17. Netrw is closing buffers on its own. {{{2
What steps will reproduce the problem?
1. :Explore, navigate directories, open a file
2. :Explore, open another file
@@ -3615,14 +3694,14 @@ Example: Clear netrw's marked file list via a mapping on gu >
a ":ls!" will show them (although ":ls" does not).
*netrw-P18*
- P18. How to locally edit a file that's only available via
+ P18. How to locally edit a file that's only available via {{{2
another server accessible via ssh?
See http://stackoverflow.com/questions/12469645/
"Using Vim to Remotely Edit A File on ServerB Only
Accessible From ServerA"
*netrw-P19*
- P19. How do I get numbering on in directory listings?
+ P19. How do I get numbering on in directory listings? {{{2
With |g:netrw_bufsettings|, you can control netrw's buffer
settings; try putting >
let g:netrw_bufsettings="noma nomod nu nobl nowrap ro nornu"
@@ -3631,7 +3710,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
let g:netrw_bufsettings="noma nomod nonu nobl nowrap ro rnu"
<
*netrw-P20*
- P20. How may I have gvim start up showing a directory listing?
+ P20. How may I have gvim start up showing a directory listing? {{{2
Try putting the following code snippet into your .vimrc: >
augroup VimStartup
au!
@@ -3644,10 +3723,10 @@ Example: Clear netrw's marked file list via a mapping on gu >
(ie. a "huge" vim version).
*netrw-P21*
- P21. I've made a directory (or file) with an accented character, but
- netrw isn't letting me enter that directory/read that file:
+ P21. I've made a directory (or file) with an accented character, {{{2
+ but netrw isn't letting me enter that directory/read that file:
- It's likely that the shell or o/s is using a different encoding
+ Its likely that the shell or o/s is using a different encoding
than you have vim (netrw) using. A patch to vim supporting
"systemencoding" may address this issue in the future; for
now, just have netrw use the proper encoding. For example: >
@@ -3655,7 +3734,7 @@ Example: Clear netrw's marked file list via a mapping on gu >
au FileType netrw set enc=latin1
<
*netrw-P22*
- P22. I get an error message when I try to copy or move a file:
+ P22. I get an error message when I try to copy or move a file: {{{2
**error** (netrw) tried using g:netrw_localcopycmd<cp>; it doesn't work!
@@ -3683,8 +3762,8 @@ by obtaining a copy of the latest (often developmental) netrw at:
The <netrw.vim> script is typically installed on systems as something like:
>
- /usr/local/share/vim/vim8x/plugin/netrwPlugin.vim
- /usr/local/share/vim/vim8x/autoload/netrw.vim
+ /usr/local/share/vim/vim7x/plugin/netrwPlugin.vim
+ /usr/local/share/vim/vim7x/autoload/netrw.vim
(see output of :echo &rtp)
<
which is loaded automatically at startup (assuming :set nocp). If you
@@ -3719,6 +3798,8 @@ netrw:
or
http://vim.sourceforge.net/scripts/script.php?script_id=120
+ Decho.vim is provided as a "vimball"; see |vimball-intro|.
+
2. Edit the <netrw.vim> file by typing: >
vim netrw.vim
@@ -3761,6 +3842,112 @@ netrw:
==============================================================================
12. History *netrw-history* {{{1
+ v163: Dec 05, 2017 * (Cristi Balan) reported that a setting ('sel')
+ was left changed
+ * (Holger Mitschke) reported a problem with
+ saving and restoring history. Fixed.
+ * Hopefully I fixed a nasty bug that caused a
+ file rename to wipe out a buffer that it
+ should not have wiped out.
+ * (Holger Mitschke) amended this help file
+ with additional |g:netrw_special_syntax|
+ items
+ v162: Sep 19, 2016 * (haya14busa) pointed out two syntax errors
+ with a patch; these are now fixed.
+ Oct 26, 2016 * I started using mate-terminal and found that
+ x and gx (|netrw-x| and |netrw-gx|) were no
+ longer working. Fixed (using atril when
+ $DESKTOP_SESSION is "mate").
+ Nov 04, 2016 * (Martin Vuille) pointed out that @+ was
+ being restored with keepregstar rather than
+ keepregplus.
+ Nov 09, 2016 * Broke apart the command from the options,
+ mostly for Windows. Introduced new netrw
+ settings: |g:netrw_localcopycmdopt|
+ |g:netrw_localcopydircmdopt| |g:netrw_localmkdiropt|
+ |g:netrw_localmovecmdopt| |g:netrw_localrmdiropt|
+ Nov 21, 2016 * (mattn) provided a patch for preview; swapped
+ winwidth() with winheight()
+ Nov 22, 2016 * (glacambre) reported that files containing
+ spaces weren't being obtained properly via
+ scp. Fix: apparently using single quotes
+ such as with 'file name' wasn't enough; the
+ spaces inside the quotes also had to be
+ escaped (ie. 'file\ name').
+ * Also fixed obtain (|netrw-O|) to be able to
+ obtain files with spaces in their names
+ Dec 20, 2016 * (xc1427) Reported that using "I" (|netrw-I|)
+ when atop "Hiding" in the banner also caused
+ the active-banner hiding control to occur
+ Jan 03, 2017 * (Enno Nagel) reported that attempting to
+ apply netrw to a directory that was without
+ read permission caused a syntax error.
+ Jan 13, 2017 * (Ingo Karkat) provided a patch which makes
+ using netrw#Call() better. Now returns
+ value of internal routines return, for example.
+ Jan 13, 2017 * (Ingo Karkat) changed netrw#FileUrlRead to
+ use |:edit| instead of |:read|. I also
+ changed the routine name to netrw#FileUrlEdit.
+ Jan 16, 2017 * (Sayem) reported a problem where :Lexplore
+ could generate a new listing buffer and
+ window instead of toggling the netrw display.
+ Unfortunately, the directions for eliciting
+ the problem weren't complete, so I may or
+ may not have fixed that issue.
+ Feb 06, 2017 * Implemented cb and cB. Changed "c" to "cd".
+ (see |netrw-cb|, |netrw-cB|, and |netrw-cd|)
+ Mar 21, 2017 * previously, netrw would specify (safe) settings
+ even when the setting was already safe for
+ netrw. Netrw now attempts to leave such
+ already-netrw-safe settings alone.
+ (affects s:NetrwOptionRestore() and
+ s:NetrwSafeOptions(); also introduced
+ s:NetrwRestoreSetting())
+ Jun 26, 2017 * (Christian Brabandt) provided a patch to
+ allow curl to follow redirects (ie. -L
+ option)
+ Jun 26, 2017 * (Callum Howard) reported a problem with
+ :Lexpore not removing the Lexplore window
+ after a change-directory
+ Aug 30, 2017 * (Ingo Karkat) one cannot switch to the
+ previously edited file (e.g. with CTRL-^)
+ after editing a file:// URL. Patch to
+ have a "keepalt" included.
+ Oct 17, 2017 * (Adam Faryna) reported that gn (|netrw-gn|)
+ did not work on directories in the current
+ tree
+ v157: Apr 20, 2016 * (Nicola) had set up a "nmap <expr> ..." with
+ a function that returned a 0 while silently
+ invoking a shell command. The shell command
+ activated a ShellCmdPost event which in turn
+ called s:LocalBrowseRefresh(). That looks
+ over all netrw buffers for changes needing
+ refreshes. However, inside a |:map-<expr>|,
+ tab and window changes are disallowed. Fixed.
+ (affects netrw's s:LocalBrowseRefresh())
+ * |g:netrw_localrmdir| not used any more, but
+ the relevant patch that causes |delete()| to
+ take over was #1107 (not #1109).
+ * |expand()| is now used on |g:netrw_home|;
+ consequently, g:netrw_home may now use
+ environment variables
+ * s:NetrwLeftmouse and s:NetrwCLeftmouse will
+ return without doing anything if invoked
+ when inside a non-netrw window
+ Jun 15, 2016 * gx now calls netrw#GX() which returns
+ the word under the cursor. The new
+ wrinkle: if one is in a netrw buffer,
+ then netrw's s:NetrwGetWord().
+ Jun 22, 2016 * Netrw was executing all its associated
+ Filetype commands silently; I'm going
+ to try doing that "noisily" and see if
+ folks have a problem with that.
+ Aug 12, 2016 * Changed order of tool selection for
+ handling http://... viewing.
+ (Nikolay Aleksandrovich Pavlov)
+ Aug 21, 2016 * Included hiding/showing/all for tree
+ listings
+ * Fixed refresh (^L) for tree listings
v156: Feb 18, 2016 * Changed =~ to =~# where appropriate
Feb 23, 2016 * s:ComposePath(base,subdir) now uses
fnameescape() on the base portion
@@ -3792,9 +3979,9 @@ netrw:
tell me how they're useful and should be
retained?
Nov 20, 2015 * Added |netrw-ma| and |netrw-mA| support
- Nov 20, 2015 * gx (|netrw-gx|) on an url downloaded the
+ Nov 20, 2015 * gx (|netrw-gx|) on a URL downloaded the
file in addition to simply bringing up the
- url in a browser. Fixed.
+ URL in a browser. Fixed.
Nov 23, 2015 * Added |g:netrw_sizestyle| support
Nov 27, 2015 * Inserted a lot of <c-u>s into various netrw
maps.
diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt
index b6d781c1ca..d744735b96 100644
--- a/runtime/doc/print.txt
+++ b/runtime/doc/print.txt
@@ -44,8 +44,6 @@ Note: If you have problems printing with |:hardcopy|, an alternative is to use
{filename}.
Things like "%" are expanded |cmdline-special|
Careful: An existing file is silently overwritten.
- {only available when compiled with the |+postscript|
- feature}
On MS-Windows use the "print to file" feature of the
printer driver.
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index ca836fea67..14a25c102d 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -87,7 +87,7 @@ processing a quickfix or location list command, it will be aborted.
:ll[!] [nr] Same as ":cc", except the location list for the
current window is used instead of the quickfix list.
- *:cn* *:cnext* *E553*
+ *:cn* *:cne* *:cnext* *E553*
:[count]cn[ext][!] Display the [count] next error in the list that
includes a file name. If there are no file names at
all, go to the [count] next error. See |:cc| for
@@ -177,7 +177,7 @@ processing a quickfix or location list command, it will be aborted.
'encoding' option, you can use the 'makeencoding'
option to specify the encoding.
- *:lf* *:lfile*
+ *:lf* *:lfi* *:lfile*
:lf[ile][!] [errorfile] Same as ":cfile", except the location list for the
current window is used instead of the quickfix list.
You can not use the -q command-line option to set
@@ -192,7 +192,7 @@ processing a quickfix or location list command, it will be aborted.
option to specify the encoding.
-:lg[etfile] [errorfile] *:lg* *:lgetfile*
+:lg[etfile] [errorfile] *:lg* *:lge* *:lgetfile*
Same as ":cgetfile", except the location list for the
current window is used instead of the quickfix list.
@@ -230,7 +230,7 @@ processing a quickfix or location list command, it will be aborted.
the current window is used instead of the quickfix
list.
- *:cad* *:caddbuffer*
+ *:cad* *:cadd* *:caddbuffer*
:cad[dbuffer] [bufnr] Read the error list from the current buffer and add
the errors to the current quickfix list. If a
quickfix list is not present, then a new list is
@@ -277,7 +277,7 @@ processing a quickfix or location list command, it will be aborted.
Example: >
:g/mypattern/caddexpr expand("%") . ":" . line(".") . ":" . getline(".")
<
- *:lad* *:laddexpr*
+ *:lad* *:addd* *:laddexpr*
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
current window is used instead of the quickfix list.
@@ -557,9 +557,9 @@ You can use CTRL-W <Enter> to open a new window and jump to the error there.
When the quickfix window has been filled, two autocommand events are
triggered. First the 'filetype' option is set to "qf", which triggers the
-FileType event. Then the BufReadPost event is triggered, using "quickfix" for
-the buffer name. This can be used to perform some action on the listed
-errors. Example: >
+FileType event (also see |qf.vim|). Then the BufReadPost event is triggered,
+using "quickfix" for the buffer name. This can be used to perform some action
+on the listed errors. Example: >
au BufReadPost quickfix setlocal modifiable
\ | silent exe 'g/^/s//\=line(".")." "/'
\ | setlocal nomodifiable
@@ -1088,8 +1088,6 @@ need to write down a "todo" list.
If you use ":compiler foo" in "file.foo" and
then ":compiler! bar" in another buffer, Vim
will keep on using "foo" in "file.foo".
- {not available when compiled without the
- |+eval| feature}
The Vim plugins in the "compiler" directory will set options to use the
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index cbfcfa4010..87cb9b54f5 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -771,6 +771,7 @@ Short explanation of each option: *option-list*
'menuitems' 'mis' maximum number of items in a menu
'mkspellmem' 'msm' memory used before |:mkspell| compresses the tree
'modeline' 'ml' recognize modelines at start or end of file
+'modelineexpr' 'mle' allow setting expression options from a modeline
'modelines' 'mls' number of lines checked for modelines
'modifiable' 'ma' changes to the text are not possible
'modified' 'mod' buffer has been modified
@@ -797,6 +798,7 @@ Short explanation of each option: *option-list*
'perldll' name of the Perl dynamic library
'preserveindent' 'pi' preserve the indent structure when reindenting
'previewheight' 'pvh' height of the preview window
+'previewpopup' 'pvp' use popup window for preview
'previewwindow' 'pvw' identifies the preview window
'printdevice' 'pdev' name of the printer to be used for :hardcopy
'printencoding' 'penc' encoding to be used for printing
@@ -927,6 +929,7 @@ Short explanation of each option: *option-list*
'winaltkeys' 'wak' when the windows system handles ALT keys
'window' 'wi' nr of lines to scroll for CTRL-F and CTRL-B
'winheight' 'wh' minimum number of lines for the current window
+'winhighlight' 'winhl' window-local highlighting
'winfixheight' 'wfh' keep window height when opening/closing windows
'winfixwidth' 'wfw' keep window width when opening/closing windows
'winminheight' 'wmh' minimum number of lines for any window
diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt
index d4eb3f0f6e..425ef4e926 100644
--- a/runtime/doc/repeat.txt
+++ b/runtime/doc/repeat.txt
@@ -165,7 +165,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
:so[urce] {file} Read Ex commands from {file}. These are commands that
start with a ":".
Triggers the |SourcePre| autocommand.
-
+ *:source!*
:so[urce]! {file} Read Vim commands from {file}. These are commands
that are executed from Normal mode, like you type
them.
@@ -173,6 +173,7 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
|:bufdo|, in a loop or when another command follows
the display won't be updated while executing the
commands.
+ Cannot be used in the |sandbox|.
*:ru* *:runtime*
:ru[ntime][!] [where] {file} ..
@@ -265,9 +266,16 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|.
after loading your .vimrc file. With this command it
can be done earlier.
- Packages will be loaded only once. After this command
- it won't happen again. When the optional ! is added
- this command will load packages even when done before.
+ Packages will be loaded only once. Using
+ `:packloadall` a second time will have no effect.
+ When the optional ! is added this command will load
+ packages even when done before.
+
+ Note that when using `:packloadall` in the |vimrc|
+ file, the 'runtimepath' option is updated, and later
+ all plugins in 'runtimepath' will be loaded, which
+ means they are loaded again. Plugins are expected to
+ handle that.
An error only causes sourcing the script where it
happens to be aborted, further plugins will be loaded.
diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt
index 7906214111..7d1da3b409 100644
--- a/runtime/doc/scroll.txt
+++ b/runtime/doc/scroll.txt
@@ -80,9 +80,6 @@ CTRL-U Scroll window Upwards in the buffer. The number of
may be a difference). When the cursor is on the first
line of the buffer nothing happens and a beep is
produced. See also 'startofline' option.
- {difference from vi: Vim scrolls 'scroll' screen
- lines, instead of file lines; makes a difference when
- lines wrap}
<S-Up> or *<S-Up>* *<kPageUp>*
<PageUp> or *<PageUp>* *CTRL-B*
diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt
index 955861bd2d..110c6ef221 100644
--- a/runtime/doc/spell.txt
+++ b/runtime/doc/spell.txt
@@ -298,25 +298,25 @@ Exceptions:
spell file is used.
For example, with these values:
- 'runtimepath' is "~/.config/nvim,/usr/local/share/nvim/runtime/,~/.config/nvim/after"
+ 'runtimepath' is "~/.config/nvim,/usr/share/nvim/runtime/,~/.config/nvim/after"
'encoding' is "iso-8859-2"
'spelllang' is "pl"
Vim will look for:
1. ~/.config/nvim/spell/pl.iso-8859-2.spl
-2. /usr/local/share/nvim/runtime/spell/pl.iso-8859-2.spl
+2. /usr/share/nvim/runtime/spell/pl.iso-8859-2.spl
3. ~/.config/nvim/spell/pl.iso-8859-2.add.spl
-4. /usr/local/share/nvim/runtime/spell/pl.iso-8859-2.add.spl
+4. /usr/share/nvim/runtime/spell/pl.iso-8859-2.add.spl
5. ~/.config/nvim/after/spell/pl.iso-8859-2.add.spl
This assumes 1. is not found and 2. is found.
If 'encoding' is "latin1" Vim will look for:
1. ~/.config/nvim/spell/pl.latin1.spl
-2. /usr/local/share/nvim/runtime/spell/pl.latin1.spl
+2. /usr/share/nvim/runtime/spell/pl.latin1.spl
3. ~/.config/nvim/after/spell/pl.latin1.spl
4. ~/.config/nvim/spell/pl.ascii.spl
-5. /usr/local/share/nvim/runtime/spell/pl.ascii.spl
+5. /usr/share/nvim/runtime/spell/pl.ascii.spl
6. ~/.config/nvim/after/spell/pl.ascii.spl
This assumes none of them are found (Polish doesn't make sense when leaving
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index 6e68753292..fa4d87e915 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -257,7 +257,6 @@ argument.
*-D*
-D Debugging. Go to debugging mode when executing the first
command from a script. |debug-mode|
- {not available when compiled without the |+eval| feature}
*-n*
-n No |swap-file| will be used. Recovery after a crash will be
@@ -676,7 +675,7 @@ After doing this once, Nvim sets the $VIMRUNTIME environment variable.
In case you need the value of $VIMRUNTIME in a shell (e.g., for a script that
greps in the help files) you might be able to use this: >
- VIMRUNTIME="$(nvim -e --cmd 'echo $VIMRUNTIME|quit' 2>&1)"
+ VIMRUNTIME="$(nvim --clean --headless --cmd 'echo $VIMRUNTIME|q')"
==============================================================================
4. Suspending *suspend*
@@ -731,7 +730,7 @@ vimrc file.
options to [file] (default ".exrc" in the current
directory).
- *:mkv* *:mkvimrc*
+ *:mkv* *:mkvi* *:mkvimrc*
:mkv[imrc][!] [file] Like ":mkexrc", but the default is ".nvimrc" in the
current directory. The ":version" command is also
written to the file.
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 208e8ea48d..e5b65554d4 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -2591,7 +2591,6 @@ preceding last option and unsetting all other ones): >
Note: only existence of these options matter, not their value. You can replace
1 above with anything.
-
QUAKE *quake.vim* *ft-quake-syntax*
The Quake syntax definition should work for most any FPS (First Person
@@ -3108,7 +3107,7 @@ in your vimrc, and :set fdm=syntax. I suggest doing the latter via a
modeline at the end of your LaTeX file: >
% vim: fdm=syntax
If your system becomes too slow, then you might wish to look into >
- https://vimhelp.appspot.com/vim_faq.txt.html#faq-29.7
+ https://vimhelp.org/vim_faq.txt.html#faq-29.7
<
*g:tex_nospell*
Tex: No Spell Checking Wanted~
@@ -3986,7 +3985,6 @@ This will make each {} block form one fold.
The fold will start on the line where the item starts, and end where the item
ends. If the start and end are within the same line, there is no fold.
The 'foldnestmax' option limits the nesting of syntax folds.
-{not available when Vim was compiled without |+folding| feature}
*:syn-contains* *E405* *E406* *E407* *E408* *E409*
@@ -5124,6 +5122,15 @@ load the syntax file.
The command also deletes the "b:current_syntax" variable, since no syntax is
loaded after this command.
+To clean up specific syntax groups for the current buffer: >
+ :syntax clear {group-name} ..
+This removes all patterns and keywords for {group-name}.
+
+To clean up specific syntax group lists for the current buffer: >
+ :syntax clear @{grouplist-name} ..
+This sets {grouplist-name}'s contents to an empty list.
+
+ *:syntax-off* *:syn-off*
If you want to disable syntax highlighting for all buffers, you need to remove
the autocommands that load the syntax files: >
:syntax off
@@ -5133,14 +5140,6 @@ What this command actually does, is executing the command >
See the "nosyntax.vim" file for details. Note that for this to work
$VIMRUNTIME must be valid. See |$VIMRUNTIME|.
-To clean up specific syntax groups for the current buffer: >
- :syntax clear {group-name} ..
-This removes all patterns and keywords for {group-name}.
-
-To clean up specific syntax group lists for the current buffer: >
- :syntax clear @{grouplist-name} ..
-This sets {grouplist-name}'s contents to an empty list.
-
*:syntax-reset* *:syn-reset*
If you have changed the colors and messed them up, use this command to get the
defaults back: >
diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt
index a0459d27bc..d0a5678179 100644
--- a/runtime/doc/tabpage.txt
+++ b/runtime/doc/tabpage.txt
@@ -74,8 +74,6 @@ For the related autocommands see |tabnew-autocmd|.
:[count]tabf[ind] [++opt] [+cmd] {file} *:tabf* *:tabfind*
Open a new tab page and edit {file} in 'path', like with
|:find|. For [count] see |:tabnew| above.
- {not available when the |+file_in_path| feature was disabled
- at compile time}
:[count]tab {cmd} *:tab*
Execute {cmd} and when it opens a new window open a new tab
diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt
index 4890cf3848..58dd3259fd 100644
--- a/runtime/doc/tagsrch.txt
+++ b/runtime/doc/tagsrch.txt
@@ -79,18 +79,21 @@ changed, to avoid confusion when using ":tnext". It is changed when using
":tag {name}".
The ignore-case matches are not found for a ":tag" command when:
-- the 'ignorecase' option is off and 'tagcase' is "followic"
+- 'tagcase' is "followic" and the 'ignorecase' option is off
+- 'tagcase' is "followscs" and the 'ignorecase' option is off and the
+ 'smartcase' option is off or the pattern contains an upper case character.
- 'tagcase' is "match"
- 'tagcase' is "smart" and the pattern contains an upper case character.
-- 'tagcase' is "followscs" and 'smartcase' option is on and the pattern
- contains an upper case character.
The ignore-case matches are found when:
- a pattern is used (starting with a "/")
- for ":tselect"
-- when 'tagcase' is "followic" and 'ignorecase' is off
-- when 'tagcase' is "match"
-- when 'tagcase' is "followscs" and the 'smartcase' option is off
+- when 'tagcase' is "followic" and 'ignorecase' is on
+- when 'tagcase' is "followscs" and 'ignorecase' is on or the 'smartcase'
+ option is on and the pattern does not contain an upper case character
+- when 'tagcase' is "ignore"
+- when 'tagcase' is "smart" and the patter does not contain an upper case
+ character
Note that using ignore-case tag searching disables binary searching in the
tags file, which causes a slowdown. This can be avoided by fold-case sorting
@@ -300,7 +303,6 @@ message is given.
*tag-preview*
The tag match list can also be used in the preview window. The commands are
the same as above, with a "p" prepended.
-{not available when compiled without the |+quickfix| feature}
*:pts* *:ptselect*
:pts[elect][!] [name] Does ":tselect[!] [name]" and shows the new tag in a
@@ -488,7 +490,7 @@ Some programs that generate tags files:
ctags As found on most Unix systems. Only supports C. Only
does the basic work.
*Exuberant_ctags*
-exuberant ctags This a very good one. It works for C, C++, Java,
+exuberant ctags This is a very good one. It works for C, C++, Java,
Fortran, Eiffel and others. It can generate tags for
many items. See http://ctags.sourceforge.net.
JTags For Java, in Java. It can be found at
@@ -802,7 +804,7 @@ CTRL-W d Open a new window, with the cursor on the first
(default: whole file).
See |:search-args| for [/] and [!].
- *:che* *:checkpath*
+ *:che* *:chec* *:check* *:checkpath*
:che[ckpath] List all the included files that could not be found.
:che[ckpath]! List all the included files.
diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt
index e21481af17..70a0ad97c1 100644
--- a/runtime/doc/usr_05.txt
+++ b/runtime/doc/usr_05.txt
@@ -294,7 +294,6 @@ More information about packages can be found here: |packages|.
Vim's functionality can be extended by adding plugins. A plugin is nothing
more than a Vim script file that is loaded automatically when Vim starts. You
can add a plugin very easily by dropping it in your plugin directory.
-{not available when Vim was compiled without the |+eval| feature}
There are two types of plugins:
diff --git a/runtime/doc/usr_06.txt b/runtime/doc/usr_06.txt
index beffb92877..360f72ec63 100644
--- a/runtime/doc/usr_06.txt
+++ b/runtime/doc/usr_06.txt
@@ -193,13 +193,12 @@ too slow, you might want to disable syntax highlighting for a moment: >
When editing another file (or the same one) the colors will come back.
- *:syn-off*
If you want to stop highlighting completely use: >
:syntax off
This will completely disable syntax highlighting and remove it immediately for
-all buffers.
+all buffers. See |:syntax-off| for more details.
*:syn-manual*
If you want syntax highlighting only for specific files, use this: >
diff --git a/runtime/doc/usr_27.txt b/runtime/doc/usr_27.txt
index cd01308c6e..637523b9ee 100644
--- a/runtime/doc/usr_27.txt
+++ b/runtime/doc/usr_27.txt
@@ -474,19 +474,19 @@ the line break happens, because all items mentioned so far don't match a line
break.
To check for a line break in a specific place, use the "\n" item: >
- /the\nword
+ /one\ntwo
-This will match at a line that ends in "the" and the next line starts with
-"word". To match "the word" as well, you need to match a space or a line
+This will match at a line that ends in "one" and the next line starts with
+"two". To match "one two" as well, you need to match a space or a line
break. The item to use for it is "\_s": >
- /the\_sword
+ /one\_stwo
To allow any amount of white space: >
- /the\_s\+word
+ /one\_s\+two
-This also matches when "the " is at the end of a line and " word" at the
+This also matches when "one " is at the end of a line and " two" at the
start of the next one.
"\s" matches white space, "\_s" matches white space or a line break.
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index a80ab963b1..c806507c3e 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -105,20 +105,21 @@ We won't explain how |:for| and |range()| work until later. Follow the links
if you are impatient.
-THREE KINDS OF NUMBERS
+FOUR KINDS OF NUMBERS
-Numbers can be decimal, hexadecimal or octal. A hexadecimal number starts
-with "0x" or "0X". For example "0x1f" is decimal 31. An octal number starts
-with a zero. "017" is decimal 15. Careful: don't put a zero before a decimal
-number, it will be interpreted as an octal number!
+Numbers can be decimal, hexadecimal, octal or binary. A hexadecimal number
+starts with "0x" or "0X". For example "0x1f" is decimal 31. An octal number
+starts with a zero. "017" is decimal 15. A binary number starts with "0b" or
+"0B". For example "0b101" is decimal 5. Careful: don't put a zero before a
+decimal number, it will be interpreted as an octal number!
The ":echo" command always prints decimal numbers. Example: >
:echo 0x7f 036
< 127 30 ~
-A number is made negative with a minus sign. This also works for hexadecimal
-and octal numbers. A minus sign is also used for subtraction. Compare this
-with the previous example: >
+A number is made negative with a minus sign. This also works for hexadecimal,
+octal and binary numbers. A minus sign is also used for subtraction. Compare
+this with the previous example: >
:echo 0x7f -036
< 97 ~
@@ -612,6 +613,7 @@ String manipulation: *string-functions*
repeat() repeat a string multiple times
eval() evaluate a string expression
execute() execute an Ex command and get the output
+ win_execute() like execute() but in a specified window
trim() trim characters from a string
List manipulation: *list-functions*
diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt
index 148dd161ac..69846f1bcf 100644
--- a/runtime/doc/usr_toc.txt
+++ b/runtime/doc/usr_toc.txt
@@ -99,12 +99,13 @@ Read this from start to end to learn the essential commands.
|usr_05.txt| Set your settings
|05.1| The vimrc file
|05.2| The example vimrc file explained
- |05.3| Simple mappings
- |05.4| Adding a package
- |05.5| Adding a plugin
- |05.6| Adding a help file
- |05.7| The option window
- |05.8| Often used options
+ |05.3| The defaults.vim file explained
+ |05.4| Simple mappings
+ |05.5| Adding a package
+ |05.6| Adding a plugin
+ |05.7| Adding a help file
+ |05.8| The option window
+ |05.9| Often used options
|usr_06.txt| Using syntax highlighting
|06.1| Switching it on
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index 0429341b6f..32551815b0 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -283,7 +283,7 @@ g8 Print the hex values of the bytes used in the
*:!!*
:!! Repeat last ":!{cmd}".
- *:ve* *:version*
+ *:ve* *:ver* *:version*
:ve[rsion] Print editor version and build information.
See also |feature-compile|.
@@ -451,7 +451,6 @@ or an autocommand will also display where it was last defined. If it was
defined manually then there will be no "Last set" message. When it was
defined while executing a function, user command or autocommand, the script in
which it was defined is reported.
-{not available when compiled without the |+eval| feature}
*K*
[count]K Run a program to lookup the keyword under the
diff --git a/runtime/doc/visual.txt b/runtime/doc/visual.txt
index 2062696a4e..ccbbc092ec 100644
--- a/runtime/doc/visual.txt
+++ b/runtime/doc/visual.txt
@@ -292,8 +292,6 @@ mode.
==============================================================================
5. Blockwise operators *blockwise-operators*
-{not available when compiled without the |+visualextra| feature}
-
Reminder: Use 'virtualedit' to be able to select blocks that start or end
after the end of a line or halfway through a tab.
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index b93945a340..76bb096ee3 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -138,6 +138,10 @@ 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*
+ 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.
CTRL-W CTRL-V *CTRL-W_CTRL-V*
CTRL-W v *CTRL-W_v*
@@ -192,7 +196,7 @@ CTRL-W CTRL_N *CTRL-W_CTRL-N*
:[N]sv[iew] [++opt] [+cmd] {file} *:sv* *:sview* *splitview*
Same as ":split", but set 'readonly' option for this buffer.
-:[N]sf[ind] [++opt] [+cmd] {file} *:sf* *:sfind* *splitfind*
+:[N]sf[ind] [++opt] [+cmd] {file} *:sf* *:sfi* *:sfind* *splitfind*
Same as ":split", but search for {file} in 'path' like in
|:find|. Doesn't split if {file} is not found.
@@ -405,7 +409,6 @@ CTRL-W CTRL-P Go to previous (last accessed) window.
*CTRL-W_P* *E441*
CTRL-W P Go to preview window. When there is no preview window this is
an error.
- {not available when compiled without the |+quickfix| feature}
If Visual mode is active and the new window is not for the same buffer, the
Visual mode is ended. If the window is on the same buffer, the cursor
@@ -635,6 +638,8 @@ can also get to them with the buffer list commands, like ":bnext".
|:vertical| was prepended).
Buf/Win Enter/Leave autocommands are not executed for the new
windows here, that's only done when they are really entered.
+ If autocommands change the window layout while this command is
+ busy an error will be given. *E249*
:[N]sa[rgument][!] [++opt] [+cmd] [N] *:sa* *:sargument*
Short for ":split | argument [N]": split window and go to Nth
@@ -782,30 +787,22 @@ CTRL-W CTRL-F Split current window in two. Edit file name under cursor.
If the name is a hypertext link that looks like
"type://machine/path", only "/path" is used.
If a count is given, the count'th matching file is edited.
- {not available when the |+file_in_path| feature was disabled
- at compile time}
CTRL-W F *CTRL-W_F*
Split current window in two. Edit file name under cursor and
jump to the line number following the file name. See |gF| for
details on how the line number is obtained.
- {not available when the |+file_in_path| feature was disabled
- at compile time}
CTRL-W gf *CTRL-W_gf*
Open a new tab page and edit the file name under the cursor.
Like "tab split" and "gf", but the new tab page isn't created
if the file does not exist.
- {not available when the |+file_in_path| feature was disabled
- at compile time}
CTRL-W gF *CTRL-W_gF*
Open a new tab page and edit the file name under the cursor
and jump to the line number following the file name. Like
"tab split" and "gF", but the new tab page isn't created if
the file does not exist.
- {not available when the |+file_in_path| feature was disabled
- at compile time}
CTRL-W gt *CTRL-W_gt*
Go to next tab page, same as `gt`.
@@ -822,7 +819,6 @@ the keyword under the cursor.
The preview window is a special window to show (preview) another file. It is
normally a small window used to show an include file or definition of a
function.
-{not available when compiled without the |+quickfix| feature}
There can be only one preview window (per tab page). It is created with one
of the commands below. The 'previewheight' option can be set to specify the
@@ -949,7 +945,6 @@ is no word under the cursor, and a few other things: >
A hidden buffer is not displayed in a window, but is still loaded into memory.
This makes it possible to jump from file to file, without the need to read or
write the file every time you get another buffer in a window.
-{not available when compiled without the |+listcmds| feature}
*:buffer-!*
If the option 'hidden' ('hid') is set, abandoned buffers are kept for all
@@ -1154,7 +1149,6 @@ list of buffers. |unlisted-buffer|
the way when you're browsing code/text buffers. The next three
commands also work like this.
-
*:sbn* *:sbnext*
:[N]sbn[ext] [+cmd] [N]
Split window and go to [N]th next buffer in buffer list.
@@ -1175,7 +1169,7 @@ list of buffers. |unlisted-buffer|
Uses 'switchbuf'.
Also see |+cmd|.
-:br[ewind][!] [+cmd] *:br* *:brewind*
+:br[ewind][!] [+cmd] *:br* *:bre* *:brewind*
Go to first buffer in buffer list. If the buffer list is
empty, go to the first unlisted buffer.
See |:buffer-!| for [!].