mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-03 17:24:29 +00:00 
			
		
		
		
	docs(lua): clarify when on_key "typed" will be empty (#30774)
This commit is contained in:
		@@ -1683,12 +1683,15 @@ vim.on_key({fn}, {ns_id})                                       *vim.on_key()*
 | 
			
		||||
      • {fn} will not be cleared by |nvim_buf_clear_namespace()|
 | 
			
		||||
 | 
			
		||||
    Parameters: ~
 | 
			
		||||
      • {fn}     (`fun(key: string, typed: string)?`) Function invoked on
 | 
			
		||||
                 every key press. |i_CTRL-V| {key} is the key after mappings
 | 
			
		||||
                 have been applied, and {typed} is the key(s) before mappings
 | 
			
		||||
                 are applied, which may be empty if {key} is produced by
 | 
			
		||||
                 non-typed keys. When {fn} is nil and {ns_id} is specified,
 | 
			
		||||
                 the callback associated with namespace {ns_id} is removed.
 | 
			
		||||
      • {fn}     (`fun(key: string, typed: string)?`) Function invoked for
 | 
			
		||||
                 every input key, after mappings have been applied but before
 | 
			
		||||
                 further processing. Arguments {key} and {typed} are raw
 | 
			
		||||
                 keycodes, where {key} is the key after mappings are applied,
 | 
			
		||||
                 and {typed} is the key(s) before mappings are applied.
 | 
			
		||||
                 {typed} may be empty if {key} is produced by non-typed key(s)
 | 
			
		||||
                 or by the same typed key(s) that produced a previous {key}.
 | 
			
		||||
                 When {fn} is `nil` and {ns_id} is specified, the callback
 | 
			
		||||
                 associated with namespace {ns_id} is removed.
 | 
			
		||||
      • {ns_id}  (`integer?`) Namespace ID. If nil or 0, generates and returns
 | 
			
		||||
                 a new |nvim_create_namespace()| id.
 | 
			
		||||
 | 
			
		||||
@@ -1696,6 +1699,9 @@ vim.on_key({fn}, {ns_id})                                       *vim.on_key()*
 | 
			
		||||
        (`integer`) Namespace id associated with {fn}. Or count of all
 | 
			
		||||
        callbacks if on_key() is called without arguments.
 | 
			
		||||
 | 
			
		||||
    See also: ~
 | 
			
		||||
      • |keytrans()|
 | 
			
		||||
 | 
			
		||||
vim.paste({lines}, {phase})                                      *vim.paste()*
 | 
			
		||||
    Paste handler, invoked by |nvim_paste()|.
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -662,16 +662,19 @@ local on_key_cbs = {} --- @type table<integer,function>
 | 
			
		||||
---           it won't be invoked for those keys.
 | 
			
		||||
---@note {fn} will not be cleared by |nvim_buf_clear_namespace()|
 | 
			
		||||
---
 | 
			
		||||
---@param fn fun(key: string, typed: string)?
 | 
			
		||||
---                   Function invoked on every key press. |i_CTRL-V|
 | 
			
		||||
---                   {key} is the key after mappings have been applied, and
 | 
			
		||||
---                   {typed} is the key(s) before mappings are applied, which
 | 
			
		||||
---                   may be empty if {key} is produced by non-typed keys.
 | 
			
		||||
---                   When {fn} is nil and {ns_id} is specified, the callback
 | 
			
		||||
---                   associated with namespace {ns_id} is removed.
 | 
			
		||||
---@param fn fun(key: string, typed: string)? Function invoked for every input key,
 | 
			
		||||
---          after mappings have been applied but before further processing. Arguments
 | 
			
		||||
---          {key} and {typed} are raw keycodes, where {key} is the key after mappings
 | 
			
		||||
---          are applied, and {typed} is the key(s) before mappings are applied.
 | 
			
		||||
---          {typed} may be empty if {key} is produced by non-typed key(s) or by the
 | 
			
		||||
---          same typed key(s) that produced a previous {key}.
 | 
			
		||||
---          When {fn} is `nil` and {ns_id} is specified, the callback associated with
 | 
			
		||||
---          namespace {ns_id} is removed.
 | 
			
		||||
---@param ns_id integer? Namespace ID. If nil or 0, generates and returns a
 | 
			
		||||
---                      new |nvim_create_namespace()| id.
 | 
			
		||||
---
 | 
			
		||||
---@see |keytrans()|
 | 
			
		||||
---
 | 
			
		||||
---@return integer Namespace id associated with {fn}. Or count of all callbacks
 | 
			
		||||
---if on_key() is called without arguments.
 | 
			
		||||
function vim.on_key(fn, ns_id)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user