aboutsummaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'runtime')
-rw-r--r--runtime/doc/api.txt97
-rw-r--r--runtime/doc/autocmd.txt27
-rw-r--r--runtime/doc/syntax.txt12
-rw-r--r--runtime/doc/ui.txt2
-rw-r--r--runtime/doc/various.txt19
-rw-r--r--runtime/doc/vim_diff.txt3
6 files changed, 110 insertions, 50 deletions
diff --git a/runtime/doc/api.txt b/runtime/doc/api.txt
index ef8b9c7d47..6c2a3a8632 100644
--- a/runtime/doc/api.txt
+++ b/runtime/doc/api.txt
@@ -60,8 +60,7 @@ External programs ("clients") can use the metadata to discover the |rpc-api|.
API contract *api-contract*
The API is made of functions and events. Clients call functions like those
-described at |api-global|, and may "attach" in order to receive rich events,
-described at |rpc-remote-ui|.
+described at |api-global|, and may "attach" to receive rich |ui-events|.
As Nvim develops, its API may change only according the following "contract":
@@ -446,7 +445,11 @@ nvim_get_keymap({mode}) *nvim_get_keymap()*
Array of maparg()-like dictionaries describing mappings
nvim_get_api_info() *nvim_get_api_info()*
- TODO: Documentation
+ Returns a 2-tuple (Array), where item 0 is the current channel
+ id and item 1 is the |api-metadata| map (Dictionary).
+
+ Return:~
+ 2-tuple [{channel-id}, {api-metadata}]
Attributes:~
{async}
@@ -477,6 +480,84 @@ nvim_call_atomic({calls}) *nvim_call_atomic()*
error ocurred, the values from all preceding calls will
still be returned.
+ *nvim_parse_expression()*
+nvim_parse_expression({expr}, {flags}, {highlight})
+ Parse a VimL expression
+
+ Attributes:~
+ {async}
+
+ Parameters:~
+ {expr} Expression to parse. Is always treated as a
+ single line.
+ {flags} Flags: - "m" if multiple expressions in a
+ row are allowed (only the first one will be
+ parsed), - "E" if EOC tokens are not allowed
+ (determines whether they will stop parsing
+ process or be recognized as an
+ operator/space, though also yielding an
+ error). - "l" when needing to start parsing
+ with lvalues for ":let" or ":for". Common
+ flag sets: - "m" to parse like for ":echo". -
+ "E" to parse like for "<C-r>=". - empty
+ string for ":call". - "lm" to parse for
+ ":let".
+ {highlight} If true, return value will also include
+ "highlight" key containing array of 4-tuples
+ (arrays) (Integer, Integer, Integer, String),
+ where first three numbers define the
+ highlighted region and represent line,
+ starting column and ending column (latter
+ exclusive: one should highlight region
+ [start_col, end_col)).
+
+ Return:~
+ AST: top-level dictionary holds keys "error": Dictionary
+ with error, present only if parser saw some error.
+ Contains the following keys: "message": String, error
+ message in printf format, translated. Must contain exactly
+ one "%.*s". "arg": String, error message argument. "len":
+ Amount of bytes successfully parsed. With flags equal to
+ "" that should be equal to the length of expr string.
+ @note: “Sucessfully parsed” here means “participated in
+ AST creation”, not “till the first error”. "ast": AST,
+ either nil or a dictionary with these keys: "type": node
+ type, one of the value names from ExprASTNodeType
+ stringified without "kExprNode" prefix. "start": a pair
+ [line, column] describing where node is “started” where
+ "line" is always 0 (will not be 0 if you will be using
+ nvim_parse_viml() on e.g. ":let", but that is not present
+ yet). Both elements are Integers. "len": “length” of the
+ node. This and "start" are there for debugging purposes
+ primary (debugging parser and providing debug
+ information). "children": a list of nodes described in
+ top/"ast". There always is zero, one or two children, key
+ will not be present if node has no children. Maximum
+ number of children may be found in node_maxchildren array.
+ Local values (present only for certain nodes): "scope": a
+ single Integer, specifies scope for "Option" and
+ "PlainIdentifier" nodes. For "Option" it is one of
+ ExprOptScope values, for "PlainIdentifier" it is one of
+ ExprVarScope values. "ident": identifier (without scope,
+ if any), present for "Option", "PlainIdentifier",
+ "PlainKey" and "Environment" nodes. "name": Integer,
+ register name (one character) or -1. Only present for
+ "Register" nodes. "cmp_type": String, comparison type, one
+ of the value names from ExprComparisonType, stringified
+ without "kExprCmp" prefix. Only present for "Comparison"
+ nodes. "ccs_strategy": String, case comparison strategy,
+ one of the value names from ExprCaseCompareStrategy,
+ stringified without "kCCStrategy" prefix. Only present for
+ "Comparison" nodes. "augmentation": String, augmentation
+ type for "Assignment" nodes. Is either an empty string,
+ "Add", "Subtract" or "Concat" for "=", "+=", "-=" or ".="
+ respectively. "invert": Boolean, true if result of
+ comparison needs to be inverted. Only present for
+ "Comparison" nodes. "ivalue": Integer, integer value for
+ "Integer" nodes. "fvalue": Float, floating-point value for
+ "Float" nodes. "svalue": String, value for
+ "SingleQuotedString" and "DoubleQuotedString" nodes.
+
nvim__id({obj}) *nvim__id()*
Returns object given as argument
@@ -717,9 +798,10 @@ nvim_buf_add_highlight({buffer}, {src_id}, {hl_group}, {line},
or -1 for ungrouped highlight
{hl_group} Name of the highlight group to use
{line} Line to highlight (zero-indexed)
- {col_start} Start of range of columns to highlight
- {col_end} End of range of columns to highlight, or -1
- to highlight to end of line
+ {col_start} Start of (byte-indexed) column range to
+ highlight
+ {col_end} End of (byte-indexed) column range to
+ highlight, or -1 to highlight to end of line
Return:~
The src_id that was used
@@ -953,9 +1035,6 @@ nvim_tabpage_is_valid({tabpage}) *nvim_tabpage_is_valid()*
==============================================================================
UI Functions *api-ui*
-remote_ui_disconnect() *remote_ui_disconnect()*
- TODO: Documentation
-
nvim_ui_attach({width}, {height}, {options}) *nvim_ui_attach()*
TODO: Documentation
diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index 740f44414a..9a04bf2824 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -259,13 +259,12 @@ Name triggered by ~
|BufNew| just after creating a new buffer
|SwapExists| detected an existing swap file
-|TermOpen| when a terminal buffer is starting
-|TermClose| when a terminal buffer ends
+|TermOpen| when a terminal job starts
+|TermClose| when a terminal job ends
Options
|FileType| when the 'filetype' option has been set
|Syntax| when the 'syntax' option has been set
-|TermChanged| after the value of 'term' has changed
|OptionSet| after setting any option
Startup and exit
@@ -933,26 +932,20 @@ TabEnter Just after entering a tab page. |tab-page|
TabLeave Just before leaving a tab page. |tab-page|
A WinLeave event will have been triggered
first.
- {Nvim} *TabNew*
+ *TabNew*
TabNew When creating a new tab page. |tab-page|
After WinEnter and before TabEnter.
- {Nvim} *TabNewEntered*
+ *TabNewEntered*
TabNewEntered After entering a new tab page. |tab-page|
After BufEnter.
- {Nvim} *TabClosed*
+ *TabClosed*
TabClosed After closing a tab page. <afile> can be used
for the tab page number.
- *TermChanged*
-TermChanged After the value of 'term' has changed. Useful
- for re-loading the syntax file to update the
- colors, fonts and other terminal-dependent
- settings. Executed for all loaded buffers.
- {Nvim} *TermClose*
-TermClose When a terminal buffer ends.
- {Nvim} *TermOpen*
-TermOpen When a terminal buffer is starting. This can
- be used to configure the terminal emulator by
- setting buffer variables. |terminal|
+ *TermClose*
+TermClose When a |terminal| job ends.
+ *TermOpen*
+TermOpen When a |terminal| job is starting. Can be
+ used to configure the terminal buffer.
*TermResponse*
TermResponse After the response to |t_RV| is received from
the terminal. The value of |v:termresponse|
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 85330f3dec..ff9773b136 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -4709,17 +4709,7 @@ ctermbg={color-nr} *highlight-ctermbg*
"cterm". For example, on some systems "cterm=bold ctermfg=3" gives
another color, on others you just get color 3.
- For an xterm this depends on your resources, and is a bit
- unpredictable. See your xterm documentation for the defaults. The
- colors for a color-xterm can be changed from the .Xdefaults file.
- Unfortunately this means that it's not possible to get the same colors
- for each user.
-
- The MSDOS standard colors are fixed (in a console window), so these
- have been used for the names. But the meaning of color names in X11
- are fixed, so these color settings have been used, to make the
- highlighting settings portable (complicated, isn't it?). The
- following names are recognized, with the color number used:
+ The following names are recognized, with the color number used:
*cterm-colors*
NR-16 NR-8 COLOR NAME ~
diff --git a/runtime/doc/ui.txt b/runtime/doc/ui.txt
index 685019aed7..abbd063483 100644
--- a/runtime/doc/ui.txt
+++ b/runtime/doc/ui.txt
@@ -9,7 +9,7 @@ Nvim UI protocol *ui*
Type |gO| to see the table of contents.
==============================================================================
-Introduction *ui-intro*
+UI Events *ui-events*
GUIs can be implemented as external processes communicating with Nvim over the
RPC API. The UI model consists of a terminal-like grid with a single,
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index baac72c106..9232cd70c5 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -207,21 +207,18 @@ g8 Print the hex values of the bytes used in the
:sh[ell] Removed. |vim-differences| {Nvim}
*:terminal* *:te*
-:te[rminal][!] [{cmd}] Execute {cmd} with 'shell' in a new |terminal| buffer.
- Equivalent to: >
- :enew
- :call termopen('{cmd}')
-<
- See |termopen()|.
+:te[rminal][!] [{cmd}] Execute {cmd} with 'shell' in a new |terminal-emulator|
+ buffer. Without {cmd}, start an interactive 'shell'.
- Without {cmd}, start an interactive shell.
+ Type |i| to enter |Terminal-mode|, then keys are sent to
+ the job running in the terminal. Type <C-\><C-N> to
+ leave Terminal-mode. |CTRL-\_CTRL-N|
- Creating the terminal buffer fails when changes have been
- made to the current buffer, unless 'hidden' is set.
+ Fails if changes have been made to the current buffer,
+ unless 'hidden' is set.
To enter |Terminal-mode| automatically: >
- autocmd BufEnter term://* startinsert
- autocmd BufLeave term://* stopinsert
+ autocmd TermOpen * startinsert
<
*:!cmd* *:!* *E34*
:!{cmd} Execute {cmd} with 'shell'. See also |:terminal|.
diff --git a/runtime/doc/vim_diff.txt b/runtime/doc/vim_diff.txt
index 1a4a66ed89..7061f01316 100644
--- a/runtime/doc/vim_diff.txt
+++ b/runtime/doc/vim_diff.txt
@@ -302,7 +302,8 @@ Highlight groups:
|hl-ColorColumn|, |hl-CursorColumn| are lower priority than most other
groups
-The variable name "count" is no fallback for |v:count| anymore.
+VimL (Vim script) compatibility:
+ `count` does not alias to |v:count|
==============================================================================
5. Missing legacy features *nvim-features-missing*