docs(extmarks): add undocumented "details" array fields

This commit is contained in:
Luuk van Baal
2024-01-17 15:55:00 +01:00
parent 437d35dbf7
commit 2645c9d576
3 changed files with 26 additions and 9 deletions

View File

@@ -2594,8 +2594,8 @@ nvim_buf_get_extmark_by_id({buffer}, {ns_id}, {id}, {*opts})
*nvim_buf_get_extmarks()* *nvim_buf_get_extmarks()*
nvim_buf_get_extmarks({buffer}, {ns_id}, {start}, {end}, {*opts}) nvim_buf_get_extmarks({buffer}, {ns_id}, {start}, {end}, {*opts})
Gets |extmarks| (including |signs|) in "traversal order" from a |charwise| Gets |extmarks| in "traversal order" from a |charwise| region defined by
region defined by buffer positions (inclusive, 0-indexed |api-indexing|). buffer positions (inclusive, 0-indexed |api-indexing|).
Region can be given as (row,col) tuples, or valid extmark ids (whose Region can be given as (row,col) tuples, or valid extmark ids (whose
positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1) positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1)
@@ -2611,6 +2611,10 @@ nvim_buf_get_extmarks({buffer}, {ns_id}, {start}, {end}, {*opts})
the `overlap` option might be useful. Otherwise only the start position of the `overlap` option might be useful. Otherwise only the start position of
an extmark will be considered. an extmark will be considered.
Note: legacy signs placed through the |:sign| commands are implemented as
extmarks and will show up here. Their details array will contain a
`sign_name` field.
Example: >lua Example: >lua
local api = vim.api local api = vim.api
local pos = api.nvim_win_get_cursor(0) local pos = api.nvim_win_get_cursor(0)
@@ -2742,7 +2746,9 @@ nvim_buf_set_extmark({buffer}, {ns_id}, {line}, {col}, {*opts})
text around the mark was deleted and then restored by text around the mark was deleted and then restored by
undo. Defaults to true. undo. Defaults to true.
• invalidate : boolean that indicates whether to hide the • invalidate : boolean that indicates whether to hide the
extmark if the entirety of its range is deleted. If extmark if the entirety of its range is deleted. For
hidden marks, an "invalid" key is added to the "details"
array of |nvim_buf_get_extmarks()| and family. If
"undo_restore" is false, the extmark is deleted instead. "undo_restore" is false, the extmark is deleted instead.
• priority: a priority value for the highlight group or sign • priority: a priority value for the highlight group or sign
attribute. For example treesitter highlighting uses a attribute. For example treesitter highlighting uses a

View File

@@ -323,8 +323,8 @@ function vim.api.nvim_buf_get_commands(buffer, opts) end
--- @return integer[] --- @return integer[]
function vim.api.nvim_buf_get_extmark_by_id(buffer, ns_id, id, opts) end function vim.api.nvim_buf_get_extmark_by_id(buffer, ns_id, id, opts) end
--- Gets `extmarks` (including `signs`) in "traversal order" from a `charwise` --- Gets `extmarks` in "traversal order" from a `charwise` region defined by
--- region defined by buffer positions (inclusive, 0-indexed `api-indexing`). --- buffer positions (inclusive, 0-indexed `api-indexing`).
--- Region can be given as (row,col) tuples, or valid extmark ids (whose --- Region can be given as (row,col) tuples, or valid extmark ids (whose
--- positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1) --- positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1)
--- respectively, thus the following are equivalent: --- respectively, thus the following are equivalent:
@@ -339,6 +339,9 @@ function vim.api.nvim_buf_get_extmark_by_id(buffer, ns_id, id, opts) end
--- Note: when using extmark ranges (marks with a end_row/end_col position) --- Note: when using extmark ranges (marks with a end_row/end_col position)
--- the `overlap` option might be useful. Otherwise only the start position of --- the `overlap` option might be useful. Otherwise only the start position of
--- an extmark will be considered. --- an extmark will be considered.
--- Note: legacy signs placed through the `:sign` commands are implemented as
--- extmarks and will show up here. Their details array will contain a
--- `sign_name` field.
--- Example: --- Example:
--- ---
--- ```lua --- ```lua
@@ -567,7 +570,9 @@ function vim.api.nvim_buf_line_count(buffer) end
--- text around the mark was deleted and then restored by --- text around the mark was deleted and then restored by
--- undo. Defaults to true. --- undo. Defaults to true.
--- • invalidate : boolean that indicates whether to hide the --- • invalidate : boolean that indicates whether to hide the
--- extmark if the entirety of its range is deleted. If --- extmark if the entirety of its range is deleted. For
--- hidden marks, an "invalid" key is added to the "details"
--- array of `nvim_buf_get_extmarks()` and family. If
--- "undo_restore" is false, the extmark is deleted instead. --- "undo_restore" is false, the extmark is deleted instead.
--- • priority: a priority value for the highlight group or sign --- • priority: a priority value for the highlight group or sign
--- attribute. For example treesitter highlighting uses a --- attribute. For example treesitter highlighting uses a

View File

@@ -215,8 +215,8 @@ ArrayOf(Integer) nvim_buf_get_extmark_by_id(Buffer buffer, Integer ns_id,
return extmark_to_array(extmark, false, details, hl_name); return extmark_to_array(extmark, false, details, hl_name);
} }
/// Gets |extmarks| (including |signs|) in "traversal order" from a |charwise| /// Gets |extmarks| in "traversal order" from a |charwise| region defined by
/// region defined by buffer positions (inclusive, 0-indexed |api-indexing|). /// buffer positions (inclusive, 0-indexed |api-indexing|).
/// ///
/// Region can be given as (row,col) tuples, or valid extmark ids (whose /// Region can be given as (row,col) tuples, or valid extmark ids (whose
/// positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1) /// positions define the bounds). 0 and -1 are understood as (0,0) and (-1,-1)
@@ -234,6 +234,10 @@ ArrayOf(Integer) nvim_buf_get_extmark_by_id(Buffer buffer, Integer ns_id,
/// the `overlap` option might be useful. Otherwise only the start position /// the `overlap` option might be useful. Otherwise only the start position
/// of an extmark will be considered. /// of an extmark will be considered.
/// ///
/// Note: legacy signs placed through the |:sign| commands are implemented
/// as extmarks and will show up here. Their details array will contain a
/// `sign_name` field.
///
/// Example: /// Example:
/// ///
/// ```lua /// ```lua
@@ -434,7 +438,9 @@ Array nvim_buf_get_extmarks(Buffer buffer, Integer ns_id, Object start, Object e
/// if text around the mark was deleted and then restored by undo. /// if text around the mark was deleted and then restored by undo.
/// Defaults to true. /// Defaults to true.
/// - invalidate : boolean that indicates whether to hide the /// - invalidate : boolean that indicates whether to hide the
/// extmark if the entirety of its range is deleted. If /// extmark if the entirety of its range is deleted. For
/// hidden marks, an "invalid" key is added to the "details"
/// array of |nvim_buf_get_extmarks()| and family. If
/// "undo_restore" is false, the extmark is deleted instead. /// "undo_restore" is false, the extmark is deleted instead.
/// - priority: a priority value for the highlight group or sign /// - priority: a priority value for the highlight group or sign
/// attribute. For example treesitter highlighting uses a /// attribute. For example treesitter highlighting uses a