* fix: bookmark filter include marked-directory's children
* fix(perf): add path_type to filter functions
* fix: replace undefined type
* fix: correct Node.fs_stat type
* fix: file info popup check fs_stat not nil
* refactor: add stat to should_filter, Node constructor
* perf: early return if bookmark is empty
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* Add update_focused_file.exclude and move update_focused_file.ignore_list to update_focused_file.update_root.ignore_list
* Pass ci checks
* Add config migration for update_root and ignore_list
* Missed one mention of update root in find_file.lua
* Update migration code
Co-authored-by: Alexander Courtis <alex@courtis.org>
* make docs consistent
* match on filename instead of entire path
* exclude as a function
* fix docs
* default exclude value
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* Added creating of directories when renaming files
* Style check error? fixed
* Forgot, I added back the line of code that creates a directory named as the file and forgot to remove it
* Added a check for file already exists and also switched the is_error values as they were mismatched
* I don't know how but this somehow fixed the creation of a directory?
* feat(#1389): add next recursive for git and diag moves
The recurse opt can be used to directly go to the next item showing
git/diagnostic status recursively.
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* refactor: status logic in single function
Rename get_status to status_is_valid.
Use status_is_valid function in multiple place to avoid duplicating
code.
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* feat(#1389): add prev recursive for git and diag moves
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* fix(#1389): next recursive: take root node into account
The root node cannot have a status. Previously if moving from the root
node, status_is_valid was trying to fetch the status from it and errored.
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* fix(#1389): doc: remove show_on_open_dirs limitation
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* feat(#1389): move find_node_line to utils
Signed-off-by: Antonin Godard <antoningodard@pm.me>
* feat(#1389): doc: note recursive moves are to files only, tidy
---------
Signed-off-by: Antonin Godard <antoningodard@pm.me>
Co-authored-by: Alexander Courtis <alex@courtis.org>
* fix(#2507): icon in message after rename-file
* fix(#2507): icon in message after rename-file
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* feat(#2148): add rename_full in API
* feat(#2148): add default mapping 'u' for rename_full
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* fix(#2382): use --absolute-git-dir when available
* fix(#2382): use --absolute-git-dir when available
* fix(#2382): rename private git members, destroy git watchers on purge
* fix(#2382): consistent naming of toplevel
* fix(#2382): more doc and safety
* fix(#2382): consistent naming of toplevel
* fix(#2382): consistent naming of toplevel
* Changed the default y/n prompt to default to N in most cases(all delete cases) and made it so that the copy paste same name conflict defaults to R(ename)
* Removed all No conditions as they are not used and not needed
* Made item_short into lowercase and also fixed prompts in dressing.nvim and telescope-select.nvim
* Fixed the exception which occurs on pressing esc in the prompt and also made rename to be blank or r.*/R.*
* Fix escape special characters on windows
fixes#2362
* use utils for windows check
* Add function to escape special chars on windows
* Change escape string function to use and/or
* Add nil check in escape special chars function
---------
Co-authored-by: Davis Sanders <dsanders@smartlink.city>
Co-authored-by: Alexander Courtis <alex@courtis.org>
* fix: trash.cmd defaults to 'trash' on macos
* fix: macOS and windows default trash commands, allow trash on all OS
* fix: windows default trash command doc
* fix: trash.cmd message
* feat(trash): support 'trash' on Windows
* feat(trash): need sync wait on Windows to avoid switch to other app from nvim process
* doc: remove 'Only available for UNIX'
* doc(trash): highlight 'Trash' on Windows is syncrhonized
* doc(trash): highlight 'trash' on Windows is synchronized
* doc(trash): remove dot
* fix(trash): check for unix and windows
* fix(trash): comment
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* refactor: move `reload` function into `utils` module
* docs: add annotations to `utils.focus_node_or_parent`
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>
* feat(live-filter): focus selected node after clear
* fix(#1785): retain focused node on filter toggle
* fix(#1785): apply requested changes
* fix(live-filter): focus last focused node when cleared on prompt
* refactor: store last focused node in `view` module
* refactor: store last focused node in view module
---------
Co-authored-by: Alexander Courtis <alex@courtis.org>