mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
docs(api): pattern is not expanded for autocommands (#20812)
Problem: Unlike `:autocmd`, `nvim_create_autocommand()` does not expand environment variables in the `pattern`, which is unexpected. Solution: Add a note to the documentation explaining this and suggesting using `expand()` explicitly.
This commit is contained in:
parent
f3268652ab
commit
f44ad75380
@ -3267,6 +3267,12 @@ nvim_create_autocmd({event}, {*opts}) *nvim_create_autocmd()*
|
|||||||
pattern = { "*.py", "*.pyi" }
|
pattern = { "*.py", "*.pyi" }
|
||||||
<
|
<
|
||||||
|
|
||||||
|
Note: The `pattern` is passed to callbacks and commands as a literal string; environment
|
||||||
|
variables like `$HOME` and `~` are not automatically expanded as they are by |:autocmd|. Instead,
|
||||||
|
|expand()| such variables explicitly: >
|
||||||
|
pattern = vim.fn.expand("~") .. "/some/path/*.py"
|
||||||
|
<
|
||||||
|
|
||||||
Example values for event: >
|
Example values for event: >
|
||||||
"BufWritePre"
|
"BufWritePre"
|
||||||
{"CursorHold", "BufWritePre", "BufWritePost"}
|
{"CursorHold", "BufWritePre", "BufWritePost"}
|
||||||
@ -3279,7 +3285,7 @@ nvim_create_autocmd({event}, {*opts}) *nvim_create_autocmd()*
|
|||||||
• group (string|integer) optional: the autocommand group name
|
• group (string|integer) optional: the autocommand group name
|
||||||
or id to match against.
|
or id to match against.
|
||||||
• pattern (string|array) optional: pattern or patterns to
|
• pattern (string|array) optional: pattern or patterns to
|
||||||
match against |autocmd-pattern|.
|
match literally against |autocmd-pattern|.
|
||||||
• buffer (integer) optional: buffer number for buffer local
|
• buffer (integer) optional: buffer number for buffer local
|
||||||
autocommands |autocmd-buflocal|. Cannot be used with
|
autocommands |autocmd-buflocal|. Cannot be used with
|
||||||
{pattern}.
|
{pattern}.
|
||||||
|
@ -401,6 +401,13 @@ cleanup:
|
|||||||
/// pattern = { "*.py", "*.pyi" }
|
/// pattern = { "*.py", "*.pyi" }
|
||||||
/// </pre>
|
/// </pre>
|
||||||
///
|
///
|
||||||
|
/// Note: The `pattern` is passed to callbacks and commands as a literal string; environment
|
||||||
|
/// variables like `$HOME` and `~` are not automatically expanded as they are by |:autocmd|.
|
||||||
|
/// Instead, |expand()| such variables explicitly:
|
||||||
|
/// <pre>
|
||||||
|
/// pattern = vim.fn.expand("~") .. "/some/path/*.py"
|
||||||
|
/// </pre>
|
||||||
|
///
|
||||||
/// Example values for event:
|
/// Example values for event:
|
||||||
/// <pre>
|
/// <pre>
|
||||||
/// "BufWritePre"
|
/// "BufWritePre"
|
||||||
@ -411,7 +418,7 @@ cleanup:
|
|||||||
/// @param opts Dictionary of autocommand options:
|
/// @param opts Dictionary of autocommand options:
|
||||||
/// - group (string|integer) optional: the autocommand group name or
|
/// - group (string|integer) optional: the autocommand group name or
|
||||||
/// id to match against.
|
/// id to match against.
|
||||||
/// - pattern (string|array) optional: pattern or patterns to match
|
/// - pattern (string|array) optional: pattern or patterns to match literally
|
||||||
/// against |autocmd-pattern|.
|
/// against |autocmd-pattern|.
|
||||||
/// - buffer (integer) optional: buffer number for buffer local autocommands
|
/// - buffer (integer) optional: buffer number for buffer local autocommands
|
||||||
/// |autocmd-buflocal|. Cannot be used with {pattern}.
|
/// |autocmd-buflocal|. Cannot be used with {pattern}.
|
||||||
|
Loading…
Reference in New Issue
Block a user