mirror of
https://github.com/stevearc/aerial.nvim
synced 2024-09-08 02:35:44 +02:00
doc: better type annotations for API methods
This commit is contained in:
parent
97a838ccc0
commit
bd5f141a54
4 changed files with 50 additions and 42 deletions
|
@ -452,10 +452,11 @@ open({opts}) *aerial.ope
|
|||
Open the aerial window for the current buffer.
|
||||
|
||||
Parameters:
|
||||
{opts} `nil|table`
|
||||
{focus} `boolean` If true, jump to aerial window if it is opened
|
||||
(default true)
|
||||
{direction} `"left"|"right"|"float"` Direction to open aerial window
|
||||
{opts} `nil|aerial.openOpts`
|
||||
{focus} `nil|boolean` If true, jump to aerial window if it is
|
||||
opened (default true)
|
||||
{direction} `nil|"left"|"right"|"float"` Direction to open aerial
|
||||
window
|
||||
|
||||
open_in_win({target_win}, {source_win}) *aerial.open_in_win*
|
||||
Open aerial in an existing window
|
||||
|
@ -479,10 +480,11 @@ toggle({opts}) *aerial.toggl
|
|||
Open or close the aerial window for the current buffer.
|
||||
|
||||
Parameters:
|
||||
{opts} `nil|table`
|
||||
{focus} `boolean` If true, jump to aerial window if it is opened
|
||||
(default true)
|
||||
{direction} `"left"|"right"|"float"` Direction to open aerial window
|
||||
{opts} `nil|aerial.openOpts`
|
||||
{focus} `nil|boolean` If true, jump to aerial window if it is
|
||||
opened (default true)
|
||||
{direction} `nil|"left"|"right"|"float"` Direction to open aerial
|
||||
window
|
||||
|
||||
refetch_symbols({bufnr}) *aerial.refetch_symbols*
|
||||
Refresh the symbols for a buffer
|
||||
|
@ -498,7 +500,7 @@ select({opts}) *aerial.selec
|
|||
Jump to a specific symbol.
|
||||
|
||||
Parameters:
|
||||
{opts} `nil|table`
|
||||
{opts} `nil|aerial.selectOpts`
|
||||
{index} `nil|integer` The symbol to jump to. If nil, will jump to the
|
||||
symbol under the cursor (in the aerial buffer)
|
||||
{split} `nil|string` Jump to the symbol in a new split. Can be "v" for
|
||||
|
|
20
doc/api.md
20
doc/api.md
|
@ -92,10 +92,10 @@ Close all visible aerial windows except for the one currently focused or for the
|
|||
Open the aerial window for the current buffer.
|
||||
|
||||
| Param | Type | Desc | |
|
||||
| ----- | ------------ | -------------------------- | ------------------------------------------------------------- |
|
||||
| opts | `nil\|table` | | |
|
||||
| | focus | `boolean` | If true, jump to aerial window if it is opened (default true) |
|
||||
| | direction | `"left"\|"right"\|"float"` | Direction to open aerial window |
|
||||
| ----- | ---------------------- | ------------------------------- | ------------------------------------------------------------- |
|
||||
| opts | `nil\|aerial.openOpts` | | |
|
||||
| | focus | `nil\|boolean` | If true, jump to aerial window if it is opened (default true) |
|
||||
| | direction | `nil\|"left"\|"right"\|"float"` | Direction to open aerial window |
|
||||
|
||||
## open_in_win(target_win, source_win)
|
||||
|
||||
|
@ -130,10 +130,10 @@ Jump to the aerial window for the current buffer, if it is open
|
|||
Open or close the aerial window for the current buffer.
|
||||
|
||||
| Param | Type | Desc | |
|
||||
| ----- | ------------ | -------------------------- | ------------------------------------------------------------- |
|
||||
| opts | `nil\|table` | | |
|
||||
| | focus | `boolean` | If true, jump to aerial window if it is opened (default true) |
|
||||
| | direction | `"left"\|"right"\|"float"` | Direction to open aerial window |
|
||||
| ----- | ---------------------- | ------------------------------- | ------------------------------------------------------------- |
|
||||
| opts | `nil\|aerial.openOpts` | | |
|
||||
| | focus | `nil\|boolean` | If true, jump to aerial window if it is opened (default true) |
|
||||
| | direction | `nil\|"left"\|"right"\|"float"` | Direction to open aerial window |
|
||||
|
||||
## refetch_symbols(bufnr)
|
||||
|
||||
|
@ -156,8 +156,8 @@ call this if you change something in the config (e.g. by setting vim.b.aerial_ba
|
|||
Jump to a specific symbol.
|
||||
|
||||
| Param | Type | Desc | |
|
||||
| ----- | ------------ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| opts | `nil\|table` | | |
|
||||
| ----- | ------------------------ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| opts | `nil\|aerial.selectOpts` | | |
|
||||
| | index | `nil\|integer` | The symbol to jump to. If nil, will jump to the symbol under the cursor (in the aerial buffer) |
|
||||
| | split | `nil\|string` | Jump to the symbol in a new split. Can be "v" for vertical or "h" for horizontal. Can also be a raw command to execute (e.g. "belowright split") |
|
||||
| | jump | `nil\|boolean` | If false and in the aerial window, do not leave the aerial window. (Default true) |
|
||||
|
|
|
@ -261,10 +261,12 @@ M.close_all = lazy("window", "close_all")
|
|||
---Close all visible aerial windows except for the one currently focused or for the currently focused window.
|
||||
M.close_all_but_current = lazy("window", "close_all_but_current")
|
||||
|
||||
---@class (exact) aerial.openOpts
|
||||
---@field focus? boolean If true, jump to aerial window if it is opened (default true)
|
||||
---@field direction? "left"|"right"|"float" Direction to open aerial window
|
||||
|
||||
---Open the aerial window for the current buffer.
|
||||
---@param opts? table
|
||||
--- focus boolean If true, jump to aerial window if it is opened (default true)
|
||||
--- direction "left"|"right"|"float" Direction to open aerial window
|
||||
---@param opts? aerial.openOpts
|
||||
M.open = function(opts)
|
||||
do_setup()
|
||||
was_closed = false
|
||||
|
@ -293,9 +295,7 @@ M.open_all = lazy("window", "open_all")
|
|||
M.focus = lazy("window", "focus")
|
||||
|
||||
---Open or close the aerial window for the current buffer.
|
||||
---@param opts? table
|
||||
--- focus boolean If true, jump to aerial window if it is opened (default true)
|
||||
--- direction "left"|"right"|"float" Direction to open aerial window
|
||||
---@param opts? aerial.openOpts
|
||||
M.toggle = function(opts)
|
||||
do_setup()
|
||||
opts = vim.tbl_extend("keep", opts or {}, {
|
||||
|
@ -327,11 +327,13 @@ M.refetch_symbols = function(bufnr)
|
|||
end
|
||||
end
|
||||
|
||||
---@class (exact) aerial.selectOpts
|
||||
---@field index? integer The symbol to jump to. If nil, will jump to the symbol under the cursor (in the aerial buffer)
|
||||
---@field split? string Jump to the symbol in a new split. Can be "v" for vertical or "h" for horizontal. Can also be a raw command to execute (e.g. "belowright split")
|
||||
---@field jump? boolean If false and in the aerial window, do not leave the aerial window. (Default true)
|
||||
|
||||
---Jump to a specific symbol.
|
||||
---@param opts? table
|
||||
--- index? integer The symbol to jump to. If nil, will jump to the symbol under the cursor (in the aerial buffer)
|
||||
--- split? string Jump to the symbol in a new split. Can be "v" for vertical or "h" for horizontal. Can also be a raw command to execute (e.g. "belowright split")
|
||||
--- jump? boolean If false and in the aerial window, do not leave the aerial window. (Default true)
|
||||
---@param opts? aerial.selectOpts
|
||||
M.select = lazy("navigation", "select", true)
|
||||
|
||||
---Jump forwards in the symbol list.
|
||||
|
|
|
@ -13,11 +13,11 @@ from nvim_doc_tools import (
|
|||
format_vimdoc_commands,
|
||||
generate_md_toc,
|
||||
indent,
|
||||
parse_functions,
|
||||
parse_directory,
|
||||
read_nvim_json,
|
||||
read_section,
|
||||
render_md_api,
|
||||
render_vimdoc_api,
|
||||
render_md_api2,
|
||||
render_vimdoc_api2,
|
||||
replace_section,
|
||||
)
|
||||
|
||||
|
@ -61,8 +61,9 @@ def add_md_link_path(path: str, lines: List[str]) -> List[str]:
|
|||
|
||||
|
||||
def update_md_api():
|
||||
funcs = parse_functions(os.path.join(ROOT, "lua", "aerial", "init.lua"))
|
||||
lines = ["\n"] + render_md_api(funcs, 2) + ["\n"]
|
||||
types = parse_directory(os.path.join(ROOT, "lua"))
|
||||
funcs = types.files["aerial/init.lua"].functions
|
||||
lines = ["\n"] + render_md_api2(funcs, types, 2) + ["\n"]
|
||||
api_doc = os.path.join(DOC, "api.md")
|
||||
replace_section(
|
||||
api_doc,
|
||||
|
@ -138,12 +139,15 @@ def get_notes_vimdoc() -> "VimdocSection":
|
|||
|
||||
def generate_vimdoc():
|
||||
doc = Vimdoc("aerial.txt", "aerial")
|
||||
funcs = parse_functions(os.path.join(ROOT, "lua", "aerial", "init.lua"))
|
||||
types = parse_directory(os.path.join(ROOT, "lua"))
|
||||
funcs = types.files["aerial/init.lua"].functions
|
||||
doc.sections.extend(
|
||||
[
|
||||
get_options_vimdoc(),
|
||||
get_commands_vimdoc(),
|
||||
VimdocSection("API", "aerial-api", render_vimdoc_api("aerial", funcs)),
|
||||
VimdocSection(
|
||||
"API", "aerial-api", render_vimdoc_api2("aerial", funcs, types)
|
||||
),
|
||||
get_notes_vimdoc(),
|
||||
]
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue