feat: add filters.git_ignored (prev git.ignore), apply "Toggle Filter:" prefix to mapping descriptions (#2325)
This commit is contained in:
parent
a6daf50b9d
commit
697bfaccac
@ -154,9 +154,9 @@ Show the mappings: `g?`
|
||||
`a` Create |nvim-tree-api.fs.create()|
|
||||
`bd` Delete Bookmarked |nvim-tree-api.marks.bulk.delete()|
|
||||
`bmv` Move Bookmarked |nvim-tree-api.marks.bulk.move()|
|
||||
`B` Toggle No Buffer |nvim-tree-api.tree.toggle_no_buffer_filter()|
|
||||
`B` Toggle Filter: No Buffer |nvim-tree-api.tree.toggle_no_buffer_filter()|
|
||||
`c` Copy |nvim-tree-api.fs.copy.node()|
|
||||
`C` Toggle Git Clean |nvim-tree-api.tree.toggle_git_clean_filter()|
|
||||
`C` Toggle Filter: Git Clean |nvim-tree-api.tree.toggle_git_clean_filter()|
|
||||
`[c` Prev Git |nvim-tree-api.node.navigate.git.prev()|
|
||||
`]c` Next Git |nvim-tree-api.node.navigate.git.next()|
|
||||
`d` Delete |nvim-tree-api.fs.remove()|
|
||||
@ -169,8 +169,8 @@ Show the mappings: `g?`
|
||||
`f` Filter |nvim-tree-api.live_filter.start()|
|
||||
`g?` Help |nvim-tree-api.tree.toggle_help()|
|
||||
`gy` Copy Absolute Path |nvim-tree-api.fs.copy.absolute_path()|
|
||||
`H` Toggle Dotfiles |nvim-tree-api.tree.toggle_hidden_filter()|
|
||||
`I` Toggle Git Ignore |nvim-tree-api.tree.toggle_gitignore_filter()|
|
||||
`H` Toggle Filter: Dotfiles |nvim-tree-api.tree.toggle_hidden_filter()|
|
||||
`I` Toggle Filter: Git Ignore |nvim-tree-api.tree.toggle_gitignore_filter()|
|
||||
`J` Last Sibling |nvim-tree-api.node.navigate.sibling.last()|
|
||||
`K` First Sibling |nvim-tree-api.node.navigate.sibling.first()|
|
||||
`m` Toggle Bookmark |nvim-tree-api.marks.toggle()|
|
||||
@ -183,7 +183,7 @@ Show the mappings: `g?`
|
||||
`R` Refresh |nvim-tree-api.tree.reload()|
|
||||
`s` Run System |nvim-tree-api.node.run.system()|
|
||||
`S` Search |nvim-tree-api.tree.search_node()|
|
||||
`U` Toggle Hidden |nvim-tree-api.tree.toggle_custom_filter()|
|
||||
`U` Toggle Filter: Hidden |nvim-tree-api.tree.toggle_custom_filter()|
|
||||
`W` Collapse |nvim-tree-api.tree.collapse_all()|
|
||||
`x` Cut |nvim-tree-api.fs.cut()|
|
||||
`y` Copy Name |nvim-tree-api.fs.copy.filename()|
|
||||
@ -448,6 +448,7 @@ applying configuration.
|
||||
},
|
||||
},
|
||||
filters = {
|
||||
git_ignored = true,
|
||||
dotfiles = false,
|
||||
git_clean = false,
|
||||
no_buffer = false,
|
||||
@ -461,7 +462,6 @@ applying configuration.
|
||||
},
|
||||
git = {
|
||||
enable = true,
|
||||
ignore = true,
|
||||
show_on_dirs = true,
|
||||
show_on_open_dirs = true,
|
||||
disable_for_dirs = {},
|
||||
@ -738,11 +738,6 @@ Git integration with icons and colors.
|
||||
Enable / disable the feature.
|
||||
Type: `boolean`, Default: `true`
|
||||
|
||||
*nvim-tree.git.ignore*
|
||||
Ignore files based on `.gitignore`. Requires |git.enable| `= true`
|
||||
Toggle via the `toggle_git_ignored` action, default mapping `I`.
|
||||
Type: `boolean`, Default: `true`
|
||||
|
||||
*nvim-tree.git.show_on_dirs*
|
||||
Show status icons of children when directory itself has no status icon.
|
||||
Type: `boolean`, Default: `true`
|
||||
@ -1113,20 +1108,25 @@ UI rendering setup
|
||||
*nvim-tree.filters*
|
||||
Filtering options.
|
||||
|
||||
*nvim-tree.filters.git_ignored* (previously `git.ignore`)
|
||||
Ignore files based on `.gitignore`. Requires |git.enable| `= true`
|
||||
Toggle via |nvim-tree-api.tree.toggle_gitignore_filter()|, default `I`
|
||||
Type: `boolean`, Default: `true`
|
||||
|
||||
*nvim-tree.filters.dotfiles*
|
||||
Do not show dotfiles: files starting with a `.`
|
||||
Toggle via the `toggle_dotfiles` action, default mapping `H`.
|
||||
Toggle via |nvim-tree-api.tree.toggle_hidden_filter()|, default `H`
|
||||
Type: `boolean`, Default: `false`
|
||||
|
||||
*nvim-tree.filters.git_clean*
|
||||
Do not show files with no git status. This will show ignored files when
|
||||
|nvim-tree.git.ignore| is set, as they are effectively dirty.
|
||||
Toggle via the `toggle_git_clean` action, default mapping `C`.
|
||||
|nvim-tree.filters.git_ignored| is set, as they are effectively dirty.
|
||||
Toggle via |nvim-tree-api.tree.toggle_git_clean_filter()|, default `C`
|
||||
Type: `boolean`, Default: `false`
|
||||
|
||||
*nvim-tree.filters.no_buffer*
|
||||
Do not show files that have no |buflisted()| buffer.
|
||||
Toggle via the `toggle_no_buffer` action, default mapping `B`.
|
||||
Toggle via |nvim-tree-api.tree.toggle_no_buffer_filter()|, default `B`
|
||||
For performance reasons this may not immediately update on buffer
|
||||
delete/wipe. A reload or filesystem event will result in an update.
|
||||
Type: `boolean`, Default: `false`
|
||||
@ -1134,12 +1134,12 @@ Filtering options.
|
||||
*nvim-tree.filters.custom*
|
||||
Custom list of vim regex for file/directory names that will not be shown.
|
||||
Backslashes must be escaped e.g. "^\\.git". See |string-match|.
|
||||
Toggle via the `toggle_custom` action, default mapping `U`.
|
||||
Toggle via |nvim-tree-api.tree.toggle_custom_filter()|, default `U`
|
||||
Type: {string}, Default: `{}`
|
||||
|
||||
*nvim-tree.filters.exclude*
|
||||
List of directories or files to exclude from filtering: always show them.
|
||||
Overrides `git.ignore`, `filters.dotfiles` and `filters.custom`.
|
||||
Overrides `filters.git_ignored`, `filters.dotfiles` and `filters.custom`.
|
||||
Type: {string}, Default: `{}`
|
||||
|
||||
*nvim-tree.trash*
|
||||
@ -1503,7 +1503,7 @@ tree.expand_all() *nvim-tree-api.tree.expand_all()*
|
||||
|
||||
*nvim-tree-api.tree.toggle_gitignore_filter()*
|
||||
tree.toggle_gitignore_filter()
|
||||
Toggle |nvim-tree.git.ignore| filter.
|
||||
Toggle |nvim-tree.filters.git_ignored| filter.
|
||||
|
||||
*nvim-tree-api.tree.toggle_git_clean_filter()*
|
||||
tree.toggle_git_clean_filter()
|
||||
@ -1961,9 +1961,9 @@ You are encouraged to copy these to your own |nvim-tree.on_attach| function.
|
||||
vim.keymap.set('n', 'a', api.fs.create, opts('Create'))
|
||||
vim.keymap.set('n', 'bd', api.marks.bulk.delete, opts('Delete Bookmarked'))
|
||||
vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle No Buffer'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle Filter: No Buffer'))
|
||||
vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Filter: Git Clean'))
|
||||
vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git'))
|
||||
vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git'))
|
||||
vim.keymap.set('n', 'd', api.fs.remove, opts('Delete'))
|
||||
@ -1976,8 +1976,8 @@ You are encouraged to copy these to your own |nvim-tree.on_attach| function.
|
||||
vim.keymap.set('n', 'f', api.live_filter.start, opts('Filter'))
|
||||
vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help'))
|
||||
vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Filter: Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Filter: Git Ignore'))
|
||||
vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling'))
|
||||
vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling'))
|
||||
vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark'))
|
||||
@ -1990,7 +1990,7 @@ You are encouraged to copy these to your own |nvim-tree.on_attach| function.
|
||||
vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh'))
|
||||
vim.keymap.set('n', 's', api.node.run.system, opts('Run System'))
|
||||
vim.keymap.set('n', 'S', api.tree.search_node, opts('Search'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Hidden'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Filter: Hidden'))
|
||||
vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse'))
|
||||
vim.keymap.set('n', 'x', api.fs.cut, opts('Cut'))
|
||||
vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name'))
|
||||
|
||||
@ -500,6 +500,7 @@ local DEFAULT_OPTS = { -- BEGIN_DEFAULT_OPTS
|
||||
},
|
||||
},
|
||||
filters = {
|
||||
git_ignored = true,
|
||||
dotfiles = false,
|
||||
git_clean = false,
|
||||
no_buffer = false,
|
||||
@ -513,7 +514,6 @@ local DEFAULT_OPTS = { -- BEGIN_DEFAULT_OPTS
|
||||
},
|
||||
git = {
|
||||
enable = true,
|
||||
ignore = true,
|
||||
show_on_dirs = true,
|
||||
show_on_open_dirs = true,
|
||||
disable_for_dirs = {},
|
||||
|
||||
@ -131,7 +131,7 @@ function M.setup(opts)
|
||||
M.config = {
|
||||
filter_custom = true,
|
||||
filter_dotfiles = opts.filters.dotfiles,
|
||||
filter_git_ignored = opts.git.ignore,
|
||||
filter_git_ignored = opts.filters.git_ignored,
|
||||
filter_git_clean = opts.filters.git_clean,
|
||||
filter_no_buffer = opts.filters.no_buffer,
|
||||
}
|
||||
|
||||
@ -102,9 +102,9 @@ local DEFAULT_ON_ATTACH = [[
|
||||
vim.keymap.set('n', 'a', api.fs.create, opts('Create'))
|
||||
vim.keymap.set('n', 'bd', api.marks.bulk.delete, opts('Delete Bookmarked'))
|
||||
vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle No Buffer'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle Filter: No Buffer'))
|
||||
vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Filter: Git Clean'))
|
||||
vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git'))
|
||||
vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git'))
|
||||
vim.keymap.set('n', 'd', api.fs.remove, opts('Delete'))
|
||||
@ -117,8 +117,8 @@ local DEFAULT_ON_ATTACH = [[
|
||||
vim.keymap.set('n', 'f', api.live_filter.start, opts('Filter'))
|
||||
vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help'))
|
||||
vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Filter: Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Filter: Git Ignore'))
|
||||
vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling'))
|
||||
vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling'))
|
||||
vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark'))
|
||||
@ -131,7 +131,7 @@ local DEFAULT_ON_ATTACH = [[
|
||||
vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh'))
|
||||
vim.keymap.set('n', 's', api.node.run.system, opts('Run System'))
|
||||
vim.keymap.set('n', 'S', api.tree.search_node, opts('Search'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Hidden'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Filter: Hidden'))
|
||||
vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse'))
|
||||
vim.keymap.set('n', 'x', api.fs.cut, opts('Cut'))
|
||||
vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name'))
|
||||
|
||||
@ -45,9 +45,9 @@ function M.default_on_attach(bufnr)
|
||||
vim.keymap.set('n', 'a', api.fs.create, opts('Create'))
|
||||
vim.keymap.set('n', 'bd', api.marks.bulk.delete, opts('Delete Bookmarked'))
|
||||
vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle No Buffer'))
|
||||
vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle Filter: No Buffer'))
|
||||
vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean'))
|
||||
vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Filter: Git Clean'))
|
||||
vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git'))
|
||||
vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git'))
|
||||
vim.keymap.set('n', 'd', api.fs.remove, opts('Delete'))
|
||||
@ -60,8 +60,8 @@ function M.default_on_attach(bufnr)
|
||||
vim.keymap.set('n', 'f', api.live_filter.start, opts('Filter'))
|
||||
vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help'))
|
||||
vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore'))
|
||||
vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Filter: Dotfiles'))
|
||||
vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Filter: Git Ignore'))
|
||||
vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling'))
|
||||
vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling'))
|
||||
vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark'))
|
||||
@ -74,7 +74,7 @@ function M.default_on_attach(bufnr)
|
||||
vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh'))
|
||||
vim.keymap.set('n', 's', api.node.run.system, opts('Run System'))
|
||||
vim.keymap.set('n', 'S', api.tree.search_node, opts('Search'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Hidden'))
|
||||
vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Filter: Hidden'))
|
||||
vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse'))
|
||||
vim.keymap.set('n', 'x', api.fs.cut, opts('Cut'))
|
||||
vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name'))
|
||||
|
||||
@ -44,6 +44,9 @@ local function refactored(opts)
|
||||
|
||||
-- 2023/07/15
|
||||
utils.move_missing_val(opts, "", "sort_by", opts, "sort", "sorter", true)
|
||||
|
||||
-- 2023/07/16
|
||||
utils.move_missing_val(opts, "git", "ignore", opts, "filters", "git_ignored", true)
|
||||
end
|
||||
|
||||
local function deprecated(opts)
|
||||
|
||||
@ -44,7 +44,7 @@ echo > /tmp/DEFAULT_ON_ATTACH.help
|
||||
sed -E "s/^ *vim.keymap.set\('n', '(.*)',.*api(.*),.*opts\('(.*)'.*$/'\`\1\`' '\3' '|nvim-tree-api\2()|'/g
|
||||
" /tmp/DEFAULT_ON_ATTACH.lua | while read line
|
||||
do
|
||||
eval "printf '%-17.17s %-23.23s %s\n' ${line}" >> /tmp/DEFAULT_ON_ATTACH.help
|
||||
eval "printf '%-17.17s %-26.26s %s\n' ${line}" >> /tmp/DEFAULT_ON_ATTACH.help
|
||||
done
|
||||
echo >> /tmp/DEFAULT_ON_ATTACH.help
|
||||
begin="Show the mappings:"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user