docs(autocmd): generate events enum type #34883

This commit is contained in:
luukvbaal
2025-07-12 16:46:13 +02:00
committed by GitHub
parent 34fbfa3586
commit d2098057a7
6 changed files with 189 additions and 25 deletions

View File

@ -3799,7 +3799,8 @@ nvim_clear_autocmds({opts}) *nvim_clear_autocmds()*
Parameters: ~
• {opts} (`vim.api.keyset.clear_autocmds`) Parameters
• event: (string|table) Examples:
• event: (vim.api.keyset.events|vim.api.keyset.events[])
Examples:
• event: "pat1"
• event: { "pat1" }
• event: { "pat1", "pat2", "pat3" }
@ -3871,8 +3872,8 @@ nvim_create_autocmd({event}, {opts}) *nvim_create_autocmd()*
Since: 0.7.0
Parameters: ~
• {event} (`any`) (string|array) Event(s) that will trigger the handler
(`callback` or `command`).
• {event} (`vim.api.keyset.events|vim.api.keyset.events[]`) Event(s)
that will trigger the handler (`callback` or `command`).
• {opts} (`vim.api.keyset.create_autocmd`) Options dict:
• group (string|integer) optional: autocommand group name or
id to match against.
@ -3890,8 +3891,8 @@ nvim_create_autocmd({event}, {opts}) *nvim_create_autocmd()*
receives one argument, a table with these keys:
*event-args*
• id: (number) autocommand id
• event: (string) name of the triggered event
|autocmd-events|
• event: (vim.api.keyset.events) name of the triggered
event |autocmd-events|
• group: (number|nil) autocommand group id, if any
• file: (string) <afile> (not expanded to a full path)
• match: (string) <amatch> (expanded to a full path)
@ -3965,7 +3966,8 @@ nvim_exec_autocmds({event}, {opts}) *nvim_exec_autocmds()*
Since: 0.7.0
Parameters: ~
• {event} (`any`) (String|Array) The event or events to execute
• {event} (`vim.api.keyset.events|vim.api.keyset.events[]`) The event
or events to execute
• {opts} (`vim.api.keyset.exec_autocmds`) Dict of autocommand options:
• group (string|integer) optional: the autocommand group name
or id to match against. |autocmd-groups|.
@ -4010,8 +4012,8 @@ nvim_get_autocmds({opts}) *nvim_get_autocmds()*
• buffer: (integer) Buffer number or list of buffer numbers
for buffer local autocommands |autocmd-buflocal|. Cannot be
used with {pattern}
• event: (string|table) event or events to match against
|autocmd-events|.
• event: (vim.api.keyset.events|vim.api.keyset.events[]) event
or events to match against |autocmd-events|.
• id: (integer) Autocommand ID to match.
• group: (string|table) the autocommand group name or id to
match against.
@ -4029,7 +4031,7 @@ nvim_get_autocmds({opts}) *nvim_get_autocmds()*
script function which is executed when this autocommand is
triggered.
• desc: (string) the autocommand description.
• event: (string) the autocommand event.
• event: (vim.api.keyset.events) the autocommand event.
• id: (integer) the autocommand id (only when defined with the API).
• group: (integer) the autocommand group id.
• group_name: (string) the autocommand group name.

View File

@ -830,7 +830,7 @@ function vim.api.nvim_chan_send(chan, data) end
--- Clears all autocommands selected by {opts}. To delete autocmds see `nvim_del_autocmd()`.
---
--- @param opts vim.api.keyset.clear_autocmds Parameters
--- - event: (string|table)
--- - event: (vim.api.keyset.events|vim.api.keyset.events[])
--- Examples:
--- - event: "pat1"
--- - event: { "pat1" }
@ -939,7 +939,7 @@ function vim.api.nvim_create_augroup(name, opts) end
---
--- @see `:help autocommand`
--- @see vim.api.nvim_del_autocmd
--- @param event any (string|array) Event(s) that will trigger the handler (`callback` or `command`).
--- @param event vim.api.keyset.events|vim.api.keyset.events[] Event(s) that will trigger the handler (`callback` or `command`).
--- @param opts vim.api.keyset.create_autocmd Options dict:
--- - group (string|integer) optional: autocommand group name or id to match against.
--- - pattern (string|array) optional: pattern(s) to match literally `autocmd-pattern`.
@ -951,7 +951,7 @@ function vim.api.nvim_create_augroup(name, opts) end
--- value (not `false` or `nil`) to delete the autocommand, and receives one argument, a
--- table with these keys: [event-args]()
--- - id: (number) autocommand id
--- - event: (string) name of the triggered event `autocmd-events`
--- - event: (vim.api.keyset.events) name of the triggered event `autocmd-events`
--- - group: (number|nil) autocommand group id, if any
--- - file: (string) [<afile>] (not expanded to a full path)
--- - match: (string) [<amatch>] (expanded to a full path)
@ -1176,7 +1176,7 @@ function vim.api.nvim_exec2(src, opts) end
--- Execute all autocommands for {event} that match the corresponding
--- {opts} `autocmd-execute`.
--- @see `:help :doautocmd`
--- @param event any (String|Array) The event or events to execute
--- @param event vim.api.keyset.events|vim.api.keyset.events[] The event or events to execute
--- @param opts vim.api.keyset.exec_autocmds Dict of autocommand options:
--- - group (string|integer) optional: the autocommand group name or
--- id to match against. `autocmd-groups`.
@ -1249,7 +1249,8 @@ function vim.api.nvim_get_all_options_info() end
--- @param opts vim.api.keyset.get_autocmds Dict with at least one of the following:
--- - buffer: (integer) Buffer number or list of buffer numbers for buffer local autocommands
--- `autocmd-buflocal`. Cannot be used with {pattern}
--- - event: (string|table) event or events to match against `autocmd-events`.
--- - event: (vim.api.keyset.events|vim.api.keyset.events[])
--- event or events to match against `autocmd-events`.
--- - id: (integer) Autocommand ID to match.
--- - group: (string|table) the autocommand group name or id to match against.
--- - pattern: (string|table) pattern or patterns to match against `autocmd-pattern`.
@ -1262,7 +1263,7 @@ function vim.api.nvim_get_all_options_info() end
--- - callback: (function|string|nil): Lua function or name of a Vim script function
--- which is executed when this autocommand is triggered.
--- - desc: (string) the autocommand description.
--- - event: (string) the autocommand event.
--- - event: (vim.api.keyset.events) the autocommand event.
--- - id: (integer) the autocommand id (only when defined with the API).
--- - group: (integer) the autocommand group id.
--- - group_name: (string) the autocommand group name.

View File

@ -18,7 +18,7 @@ error('Cannot require a meta file')
--- @class vim.api.keyset.clear_autocmds
--- @field buffer? integer
--- @field event? string|string[]
--- @field event? vim.api.keyset.events|vim.api.keyset.events[]
--- @field group? integer|string
--- @field pattern? string|string[]
@ -77,6 +77,148 @@ error('Cannot require a meta file')
--- @class vim.api.keyset.create_augroup
--- @field clear? boolean
--- @alias vim.api.keyset.events
--- |'BufAdd'
--- |'BufCreate'
--- |'BufDelete'
--- |'BufEnter'
--- |'BufFilePost'
--- |'BufFilePre'
--- |'BufHidden'
--- |'BufLeave'
--- |'BufModifiedSet'
--- |'BufNew'
--- |'BufNewFile'
--- |'BufRead'
--- |'BufReadCmd'
--- |'BufReadPost'
--- |'BufReadPre'
--- |'BufUnload'
--- |'BufWinEnter'
--- |'BufWinLeave'
--- |'BufWipeout'
--- |'BufWrite'
--- |'BufWriteCmd'
--- |'BufWritePost'
--- |'BufWritePre'
--- |'ChanInfo'
--- |'ChanOpen'
--- |'CmdUndefined'
--- |'CmdlineChanged'
--- |'CmdlineEnter'
--- |'CmdlineLeave'
--- |'CmdlineLeavePre'
--- |'CmdwinEnter'
--- |'CmdwinLeave'
--- |'ColorScheme'
--- |'ColorSchemePre'
--- |'CompleteChanged'
--- |'CompleteDone'
--- |'CompleteDonePre'
--- |'CursorHold'
--- |'CursorHoldI'
--- |'CursorMoved'
--- |'CursorMovedC'
--- |'CursorMovedI'
--- |'DiagnosticChanged'
--- |'DiffUpdated'
--- |'DirChanged'
--- |'DirChangedPre'
--- |'EncodingChanged'
--- |'ExitPre'
--- |'FileAppendCmd'
--- |'FileAppendPost'
--- |'FileAppendPre'
--- |'FileChangedRO'
--- |'FileChangedShell'
--- |'FileChangedShellPost'
--- |'FileEncoding'
--- |'FileReadCmd'
--- |'FileReadPost'
--- |'FileReadPre'
--- |'FileType'
--- |'FileWriteCmd'
--- |'FileWritePost'
--- |'FileWritePre'
--- |'FilterReadPost'
--- |'FilterReadPre'
--- |'FilterWritePost'
--- |'FilterWritePre'
--- |'FocusGained'
--- |'FocusLost'
--- |'FuncUndefined'
--- |'GUIEnter'
--- |'GUIFailed'
--- |'InsertChange'
--- |'InsertCharPre'
--- |'InsertEnter'
--- |'InsertLeave'
--- |'InsertLeavePre'
--- |'LspAttach'
--- |'LspDetach'
--- |'LspNotify'
--- |'LspProgress'
--- |'LspRequest'
--- |'LspTokenUpdate'
--- |'MenuPopup'
--- |'ModeChanged'
--- |'OptionSet'
--- |'PackChanged'
--- |'PackChangedPre'
--- |'QuickFixCmdPost'
--- |'QuickFixCmdPre'
--- |'QuitPre'
--- |'RecordingEnter'
--- |'RecordingLeave'
--- |'RemoteReply'
--- |'SafeState'
--- |'SearchWrapped'
--- |'SessionLoadPost'
--- |'SessionWritePost'
--- |'ShellCmdPost'
--- |'ShellFilterPost'
--- |'Signal'
--- |'SourceCmd'
--- |'SourcePost'
--- |'SourcePre'
--- |'SpellFileMissing'
--- |'StdinReadPost'
--- |'StdinReadPre'
--- |'SwapExists'
--- |'Syntax'
--- |'TabClosed'
--- |'TabEnter'
--- |'TabLeave'
--- |'TabNew'
--- |'TabNewEntered'
--- |'TermChanged'
--- |'TermClose'
--- |'TermEnter'
--- |'TermLeave'
--- |'TermOpen'
--- |'TermRequest'
--- |'TermResponse'
--- |'TextChanged'
--- |'TextChangedI'
--- |'TextChangedP'
--- |'TextChangedT'
--- |'TextYankPost'
--- |'UIEnter'
--- |'UILeave'
--- |'User'
--- |'VimEnter'
--- |'VimLeave'
--- |'VimLeavePre'
--- |'VimResized'
--- |'VimResume'
--- |'VimSuspend'
--- |'WinClosed'
--- |'WinEnter'
--- |'WinLeave'
--- |'WinNew'
--- |'WinResized'
--- |'WinScrolled'
--- @class vim.api.keyset.create_autocmd
--- @field buffer? integer
--- @field callback? string|fun(args: vim.api.keyset.create_autocmd.callback_args): boolean?
@ -114,7 +256,7 @@ error('Cannot require a meta file')
--- @field output? boolean
--- @class vim.api.keyset.get_autocmds
--- @field event? string|string[]
--- @field event? vim.api.keyset.events|vim.api.keyset.events[]
--- @field group? integer|string
--- @field pattern? string|string[]
--- @field buffer? integer|integer[]