[mgr] prepend_keymap = [ ### smart-paste plugin ### { on = "P", run = "plugin smart-paste", desc = "Paste into the hovered directory or CWD" }, ### open-with-cmd plugin ### { on = "o", run = "plugin open-with-cmd -- block", desc = "Open with command in the terminal" }, { on = "O", run = "plugin open-with-cmd", desc = "Open with command" }, ### bypass plugin ### { on = [ "L", ], run = "plugin bypass", desc = "Recursively enter child directory, skipping children with only a single subdirectory" }, { on = [ "H", ], run = "plugin bypass reverse", desc = "Recursively enter parent directory, skipping parents with only a single subdirectory" }, ### recycle-bin plugin { on = [ "R", "b", ], run = "plugin recycle-bin", desc = "Open Recycle Bin menu" }, ### dupes plugin ### { on = [ "", "i", ], run = "plugin dupes interactive", desc = "Run dupes interactive" }, { on = [ "", "o", ], run = "plugin dupes override", desc = "Run dupes override" }, { on = [ "", "d", ], run = "plugin dupes dry", desc = "Run dupes dry" }, { on = [ "", "a", ], run = "plugin dupes apply", desc = "Run dupes apply" }, { on = [ "", "c", ], run = "plugin dupes custom", desc = "Run dupes custom" }, ### toggle-pane plugin ### { on = "W", run = "plugin toggle-pane max-preview", desc = "Maximize or restore the preview pane" }, { on = "E", run = "plugin toggle-pane min-preview", desc = "Minimize or restore the preview pane" }, ### what size plugin ### { on = "i", run = "plugin what-size", desc = "Calc size of selection or cwd" }, ### rsync plugin ### { on = [ "R", ], run = "plugin rsync", desc = "Copy files using rsync" }, ### yafg plugin ### { on = [ "F", "G", ], run = "plugin yafg" }, ###### GIT ###### ### open-git-remote plugin ### { on = [ "g", "l", ], run = "plugin open-git-remote", desc = "open git remote url" }, ### lazygit plugin ### { on = [ "g", "i", ], run = "plugin lazygit", desc = "run lazygit" }, ### vcs-files plugin ### { on = [ "g", "c", ], run = "plugin vcs-files", desc = "Show Git file changes" }, ### mount plugin ### { on = "M", run = "plugin mount" }, # ### smart-enter plugin ### { on = "l", run = "plugin smart-enter", desc = "Enter the child directory, or open the file" }, ### f-char plugin ### { on = "f", run = "plugin fchar", desc = "Jump to char" }, # ### jump-to-char plugin ### # { on = "f", run = "plugin jump-to-char", desc = "Jump to char" }, ### whoosh plugin ### { on = "[", run = "plugin whoosh jump_by_key", desc = "Jump bookmark by key" }, # Direct fuzzy search access { on = "}", run = "plugin whoosh jump_by_fzf", desc = "Direct fuzzy search for bookmarks" }, # Basic bookmark operations { on = [ "]", "a", ], run = "plugin whoosh save", desc = "Add bookmark (hovered file/directory)" }, { on = [ "]", "A", ], run = "plugin whoosh save_cwd", desc = "Add bookmark (current directory)" }, # Temporary bookmarks { on = [ "]", "t", ], run = "plugin whoosh save_temp", desc = "Add temporary bookmark (hovered file/directory)" }, { on = [ "]", "T", ], run = "plugin whoosh save_cwd_temp", desc = "Add temporary bookmark (current directory)" }, # Jump to bookmarks { on = "", run = "plugin whoosh jump_key_k", desc = "Jump directly to bookmark with key k" }, { on = [ "]", "f", ], run = "plugin whoosh jump_by_fzf", desc = "Jump bookmark by fzf" }, # Delete bookmarks { on = [ "]", "d", ], run = "plugin whoosh delete_by_key", desc = "Delete bookmark by key" }, { on = [ "]", "D", ], run = "plugin whoosh delete_by_fzf", desc = "Delete bookmarks by fzf (use TAB to select multiple)" }, { on = [ "]", "C", ], run = "plugin whoosh delete_all", desc = "Delete all user bookmarks" }, # Rename Bookmarks { on = [ "]", "r", ], run = "plugin whoosh rename_by_key", desc = "Rename bookmark by key" }, { on = [ "]", "R", ], run = "plugin whoosh rename_by_fzf", desc = "Rename bookmark by fzf" }, # Navigation { on = [ "", ], run = "escape", desc = "Exit visual mode, clear selected, or cancel search" }, # { on = [ # "q", # "q", # ], run = "quit", desc = "Exit the process" }, { on = [ "", ], run = "close", desc = "Close the current tab, or quit if it is last tab" }, ### projects plugin ### { on = [ "P", "p", ], run = "plugin projects 'load SomeProject'", desc = "Load the 'SomeProject' project" }, { on = [ "P", "s", ], run = "plugin projects save", desc = "Save current project" }, { on = [ "P", "l", ], run = "plugin projects load", desc = "Load project" }, { on = [ "P", "P", ], run = "plugin projects load_last", desc = "Load last project" }, { on = [ "P", "d", ], run = "plugin projects delete", desc = "Delete project" }, { on = [ "P", "D", ], run = "plugin projects delete_all", desc = "Delete all projects" }, { on = [ "P", "m", ], run = "plugin projects 'merge current'", desc = "Merge current tab to other projects" }, { on = [ "P", "M", ], run = "plugin projects 'merge all'", desc = "Merge current project to other projects" }, ### fazif plugin ### { on = [ "b", "d", ], run = "plugin fazif faziffd", desc = "Find files/directories with fd and fzf" }, { on = [ "b", "D", ], run = "plugin fazif faziffdr", desc = "Find files/directories with fd and fzf" }, { on = [ "b", "r", ], run = "plugin fazif fazifrg", desc = "Find content in files with ripgrep and fzf" }, { on = [ "b", "R", ], run = "plugin fazif fazifrga", desc = "Find content in documents with ripgrep-all and fzf" }, ### Tagging plugin ### # TOGGLE TAG(S) { on = [ "t", "t", "k", ], run = "plugin simple-tag -- toggle-tag", desc = "Toggle a tag (press any key)" }, { on = [ "'", ], run = "plugin simple-tag -- toggle-tag --keys=!", desc = "Toggle tag(s) with fixed tag key(s) = (! and 1 and q)" }, { on = [ "-", ], run = "plugin simple-tag -- toggle-tag --keys=1", desc = "Toggle tag(s) with fixed tag key(s) = (! and 1 and q)" }, { on = [ "t", "t", "i", ], run = "plugin simple-tag -- toggle-tag --input", desc = "Toggle tag(s) with value from (input box)" }, # ADD TAG(S) { on = [ "t", "a", "k", ], run = "plugin simple-tag -- add-tag", desc = "Add a tag (press any key)" }, # { on = [ "t", "a", "f" ], run = "plugin simple-tag -- add-tag --keys=!1q", desc = "Add tag(s) with fixed tag keys = (! and 1 and q)" }, { on = [ "t", "a", "i", ], run = "plugin simple-tag -- add-tag --input", desc = "Add tag(s) with value from (input box)" }, # REMOVE/DELETE TAG(S) { on = [ "t", "d", "k", ], run = "plugin simple-tag -- remove-tag", desc = "Remove a tag (press any key)" }, { on = [ "t", "d", "f", ], run = "plugin simple-tag -- remove-tag --keys=!1q", desc = "Remove tag(s) with fixed tag keys = (! and 1 and q)" }, { on = [ "t", "d", "i", ], run = "plugin simple-tag -- remove-tag --input", desc = "Remove tag(s) with value from (input box)" }, # REPLACE ALL OLD TAG(S) WITH NEW TAG(S) { on = [ "t", "r", "k", ], run = "plugin simple-tag -- replace-tag", desc = "Replace with a new tag (press any key)" }, { on = [ "t", "r", "f", ], run = "plugin simple-tag -- replace-tag --keys=!1q", desc = "Replace tag(s) with fixed tag keys = (! and 1 and q)" }, { on = [ "t", "r", "i", ], run = "plugin simple-tag -- replace-tag --input", desc = "Replace tag(s) with value from (input box)" }, # EDIT TAG(S) { on = [ "t", "e", ], run = "plugin simple-tag -- edit-tag ", desc = "Edit tag(s) (input box)" }, # CLEAR TAG(S) { on = [ "t", "c", ], run = "plugin simple-tag -- clear", desc = "Clear all tags from selected or hovered files" }, # CHANGE UI { on = [ "t", "u", "s", ], run = "plugin simple-tag -- toggle-ui", desc = "Toggle tag indicator (icon > tag key > hidden)" }, { on = [ "t", "u", "h", ], run = "plugin simple-tag -- toggle-ui --mode=hidden", desc = "Hide all tags indicator" }, # FILTER FILES/FOLDERS BY TAGS: { on = [ "t", "f", ], run = "plugin simple-tag -- filter", desc = "Filter files/folders by a tag (press any key)" }, { on = [ "t", "F", ], run = "plugin simple-tag -- filter --input", desc = "Filter files/folders by tag(s) (input box)" }, { on = [ "t", "F", ], run = "plugin simple-tag -- filter --input --mode=or", desc = "Filter files/folders by contain tags (input box)" }, # VISUAL SELECT FILES/FOLDERS BY TAGS: # Available selection actions: # replace → Replaces the current selection list with files/folders that have the selected tag. # unite → Combines the currently selected files/folders with those that have the selected tag. # intersect → Keeps only the files/folders that are present in both the current selection and the tagged items. # subtract → Deselects files/folders that have the selected tag from the current selection. # exclude → Combines the currently selected files/folders with the tagged items, then deselects any overlapping items between the current selection and the tagged items. # undo → Undos or redoes the last selection action. { on = [ "t", "s", "t", ], run = "plugin simple-tag -- toggle-select", desc = "Select a selection action then select a tag key (toggle-select)" }, { on = [ "t", "s", "t", ], run = "plugin simple-tag -- toggle-select --keys=!1q", desc = "" }, { on = [ "t", "s", "r", ], run = "plugin simple-tag -- replace-select", desc = "replace-select" }, { on = [ "t", "s", "u", ], run = "plugin simple-tag -- unite-select", desc = "unite-select" }, { on = [ "t", "s", "i", ], run = "plugin simple-tag -- intersect-select", desc = "intersect-select" }, { on = [ "t", "s", "s", ], run = "plugin simple-tag -- subtract-select", desc = "subtract-select" }, { on = [ "t", "s", "e", ], run = "plugin simple-tag -- exclude-select", desc = "exclude-select" }, { on = [ "t", "s", "e", ], run = "plugin simple-tag -- replace-select --keys=!1q", desc = "Replaces the current selection list with files/folders that have (! and 1 and q) tag(s)" }, { on = [ "t", "s", "R", ], run = "plugin simple-tag -- replace-select --input", desc = "replace-select --input" }, { on = [ "t", "s", "U", ], run = "plugin simple-tag -- unite-select --input", desc = "unite-select --input" }, { on = [ "t", "s", "I", ], run = "plugin simple-tag -- intersect-select --input", desc = "intersect-select --input" }, { on = [ "t", "s", "S", ], run = "plugin simple-tag -- subtract-select --input", desc = "subtract-select --input" }, { on = [ "t", "s", "E", ], run = "plugin simple-tag -- exclude-select --input", desc = "exclude-select --input" }, { on = [ "t", "s", "R", ], run = "plugin simple-tag -- replace-select --input --mode=or", desc = "replace-select --input --mode=or" }, { on = [ "t", "s", "R", ], run = "plugin simple-tag -- replace-select --keys=!1q --mode=or", desc = "replace-select --keys=!1q --mode=or" }, # Undo/Redo selection (only works after using 5 modes above) { on = [ "t", "s", "u", ], run = "plugin simple-tag -- undo-select", desc = "Undos/Redos the last selection action" }, # Directory navigation { on = [ "k", ], run = "arrow -1", desc = "Move cursor up" }, { on = [ "j", ], run = "arrow 1", desc = "Move cursor down" }, { on = [ "h", ], run = "leave", desc = "Go back to parent directory" }, { on = [ "l", ], run = "enter", desc = "Enter directory" }, # File operations { on = [ "", ], run = "open", desc = "Open selected files" }, { on = [ "y", ], run = "yank", desc = "Yank selected files (copy)" }, { on = [ "x", ], run = "yank --cut", desc = "Yank selected files (cut)" }, { on = [ "p", ], run = "paste", desc = "Paste yanked files" }, { on = [ "d", ], run = "remove", desc = "Trash selected files" }, { on = [ "D", ], run = "remove --permanently", desc = "Permanently delete selected files" }, { on = [ "a", ], run = "create", desc = "Create a file or directory" }, { on = [ "r", ], run = "rename --cursor=before_ext", desc = "Rename selected file" }, # Selection { on = [ "e", ], run = [ "select --state=none", "arrow 1", ], desc = "Toggle selection" }, { on = [ "v", ], run = "visual_mode", desc = "Enter visual mode" }, { on = [ "V", ], run = "visual_mode --unset", desc = "Enter visual mode (unset)" }, # Search { on = [ "/", ], run = "find --smart", desc = "Find file" }, { on = [ "n", ], run = "find_arrow", desc = "Go to next found" }, { on = [ "N", ], run = "find_arrow --previous", desc = "Go to previous found" }, # Tabs { on = [ "T", ], run = "tab_create --current", desc = "Create new tab" }, { on = [ "1", ], run = "tab_switch 0", desc = "Switch to tab 1" }, { on = [ "2", ], run = "tab_switch 1", desc = "Switch to tab 2" }, { on = [ "3", ], run = "tab_switch 2", desc = "Switch to tab 3" }, ] [tasks] prepend_keymap = [ { on = [ "", ], run = "close", desc = "Close task manager" }, { on = [ "k", ], run = "arrow -1", desc = "Move cursor up" }, { on = [ "j", ], run = "arrow 1", desc = "Move cursor down" }, ] [select] prepend_keymap = [ { on = [ "", ], run = "close", desc = "Cancel selection" }, { on = [ "", ], run = "close --submit", desc = "Submit selection" }, { on = [ "k", ], run = "arrow -1", desc = "Move cursor up" }, { on = [ "j", ], run = "arrow 1", desc = "Move cursor down" }, ] [input] prepend_keymap = [ { on = [ "", ], run = "close", desc = "Cancel input" }, { on = [ "", ], run = "close --submit", desc = "Submit input" }, ] [completion] prepend_keymap = [ { on = [ "", ], run = "close --submit", desc = "Submit completion" }, { on = [ "k", ], run = "arrow -1", desc = "Move cursor up" }, { on = [ "j", ], run = "arrow 1", desc = "Move cursor down" }, ] [help] prepend_keymap = [ { on = [ "", ], run = "escape", desc = "Clear filter or exit help" }, { on = [ "q", ], run = "close", desc = "Exit help" }, { on = [ "k", ], run = "arrow -1", desc = "Move cursor up" }, { on = [ "j", ], run = "arrow 1", desc = "Move cursor down" }, ]