mirror of
https://github.com/neovim/neovim
synced 2025-07-16 01:01:49 +00:00
docs: vim.fs.dir.Opts type #34546
Follow the pattern of vim.fs.find.Opts
(cherry picked from commit 496691f985
)
This commit is contained in:
committed by
github-actions[bot]
parent
ea8db9003b
commit
6396bfb29f
@ -2939,11 +2939,13 @@ vim.fs.dir({path}, {opts}) *vim.fs.dir()*
|
||||
iterate over. The path is first normalized
|
||||
|vim.fs.normalize()|.
|
||||
• {opts} (`table?`) Optional keyword arguments:
|
||||
• depth: integer|nil How deep the traverse (default 1)
|
||||
• skip: (fun(dir_name: string): boolean)|nil Predicate to
|
||||
• {depth}? (`integer`, default: `1`) How deep the traverse.
|
||||
• {skip}? (`fun(dir_name: string): boolean`) Predicate to
|
||||
control traversal. Return false to stop searching the
|
||||
current directory. Only useful when depth > 1
|
||||
• follow: boolean|nil Follow symbolic links. (default: false)
|
||||
current directory. Only useful when depth > 1 Return an
|
||||
iterator over the items located in {path}
|
||||
• {follow}? (`boolean`, default: `false`) Follow symbolic
|
||||
links.
|
||||
|
||||
Return: ~
|
||||
(`Iterator`) over items in {path}. Each iteration yields two values:
|
||||
@ -3005,7 +3007,7 @@ vim.fs.find({names}, {opts}) *vim.fs.find()*
|
||||
|
||||
The function should return `true` if the given item is
|
||||
considered a match.
|
||||
• {opts} (`table`) Optional keyword arguments:
|
||||
• {opts} (`table?`) Optional keyword arguments:
|
||||
• {path}? (`string`) Path to begin searching from. If
|
||||
omitted, the |current-directory| is used.
|
||||
• {upward}? (`boolean`, default: `false`) Search upward
|
||||
|
@ -124,6 +124,23 @@ function M.joinpath(...)
|
||||
return (path:gsub('//+', '/'))
|
||||
end
|
||||
|
||||
--- @class vim.fs.dir.Opts
|
||||
--- @inlinedoc
|
||||
---
|
||||
--- How deep the traverse.
|
||||
--- (default: `1`)
|
||||
--- @field depth? integer
|
||||
---
|
||||
--- Predicate to control traversal.
|
||||
--- Return false to stop searching the current directory.
|
||||
--- Only useful when depth > 1
|
||||
--- Return an iterator over the items located in {path}
|
||||
--- @field skip? (fun(dir_name: string): boolean)
|
||||
---
|
||||
--- Follow symbolic links.
|
||||
--- (default: `false`)
|
||||
--- @field follow? boolean
|
||||
|
||||
---@alias Iterator fun(): string?, string?
|
||||
|
||||
--- Return an iterator over the items located in {path}
|
||||
@ -131,13 +148,7 @@ end
|
||||
---@since 10
|
||||
---@param path (string) An absolute or relative path to the directory to iterate
|
||||
--- over. The path is first normalized |vim.fs.normalize()|.
|
||||
--- @param opts table|nil Optional keyword arguments:
|
||||
--- - depth: integer|nil How deep the traverse (default 1)
|
||||
--- - skip: (fun(dir_name: string): boolean)|nil Predicate
|
||||
--- to control traversal. Return false to stop searching the current directory.
|
||||
--- Only useful when depth > 1
|
||||
--- - follow: boolean|nil Follow symbolic links. (default: false)
|
||||
---
|
||||
---@param opts? vim.fs.dir.Opts Optional keyword arguments:
|
||||
---@return Iterator over items in {path}. Each iteration yields two values: "name" and "type".
|
||||
--- "name" is the basename of the item relative to {path}.
|
||||
--- "type" is one of the following:
|
||||
@ -256,7 +267,7 @@ end
|
||||
---
|
||||
--- The function should return `true` if the given item is considered a match.
|
||||
---
|
||||
---@param opts vim.fs.find.Opts Optional keyword arguments:
|
||||
---@param opts? vim.fs.find.Opts Optional keyword arguments:
|
||||
---@return (string[]) # Normalized paths |vim.fs.normalize()| of all matching items
|
||||
function M.find(names, opts)
|
||||
opts = opts or {}
|
||||
|
Reference in New Issue
Block a user