feat(watcher): add filesystem_watchers.ignore_dirs (#1705)

This commit is contained in:
Alexander Courtis
2022-11-05 10:24:25 +11:00
committed by GitHub
parent 33ce8e3c73
commit ed9db632a8
3 changed files with 16 additions and 0 deletions

View File

@@ -308,6 +308,7 @@ Subsequent calls to setup will replace the previous configuration.
filesystem_watchers = {
enable = true,
debounce_delay = 50,
ignore_dirs = {},
},
git = {
enable = true,
@@ -604,6 +605,12 @@ performance.
Idle milliseconds between filesystem change and action.
Type: `number`, Default: `50` (ms)
*nvim-tree.filesystem_watchers.ignore_dirs*
List of vim regex for absolute directory paths that will not be watched.
Backslashes must be escaped e.g. `"my-project/\\.build$"`. See |string-match|.
Useful when path is not in `.gitignore` or git integration is disabled.
Type: {string}, Default: `{}`
*nvim-tree.on_attach*
Function ran when creating the nvim-tree buffer.
This can be used to attach keybindings to the tree buffer.

View File

@@ -589,6 +589,7 @@ local DEFAULT_OPTS = { -- BEGIN_DEFAULT_OPTS
filesystem_watchers = {
enable = true,
debounce_delay = 50,
ignore_dirs = {},
},
git = {
enable = true,

View File

@@ -36,6 +36,13 @@ local function is_folder_ignored(path)
return true
end
end
for _, ignore_dir in ipairs(M.ignore_dirs) do
if vim.fn.match(path, ignore_dir) ~= -1 then
return true
end
end
return false
end
@@ -78,6 +85,7 @@ end
function M.setup(opts)
M.enabled = opts.filesystem_watchers.enable
M.debounce_delay = opts.filesystem_watchers.debounce_delay
M.ignore_dirs = opts.filesystem_watchers.ignore_dirs
M.uid = 0
end