From 9902836a902e7aa4acbd1aa1eb4c9cbfa1a66ce8 Mon Sep 17 00:00:00 2001 From: Ching Pei Yang Date: Thu, 24 Jul 2025 15:41:10 +0200 Subject: [PATCH] treewide: add global flag to disable default keymaps --- docs/manual/hacking/keybinds.md | 12 +++--- lib/binds.nix | 8 +++- modules/neovim/mappings/options.nix | 3 +- modules/plugins/assistant/chatgpt/chatgpt.nix | 26 ++++++------ .../comments/comment-nvim/comment-nvim.nix | 12 +++--- .../completion/blink-cmp/blink-cmp.nix | 14 +++---- .../plugins/completion/nvim-cmp/nvim-cmp.nix | 14 +++---- .../plugins/debugger/nvim-dap/nvim-dap.nix | 30 +++++++------- .../plugins/git/git-conflict/git-conflict.nix | 12 +++--- modules/plugins/git/gitsigns/gitsigns.nix | 26 ++++++------ modules/plugins/git/neogit/neogit.nix | 8 ++-- modules/plugins/languages/scala.nix | 2 +- .../lsp/nvim-docs-view/nvim-docs-view.nix | 4 +- modules/plugins/lsp/otter/otter.nix | 2 +- modules/plugins/lsp/trouble/trouble.nix | 12 +++--- .../plugins/minimap/codewindow/codewindow.nix | 8 ++-- .../notes/todo-comments/todo-comments.nix | 6 +-- modules/plugins/runner/run-nvim/run-nvim.nix | 6 +-- .../nvim-bufferline/nvim-bufferline.nix | 18 ++++----- .../terminal/toggleterm/toggleterm.nix | 2 +- modules/plugins/treesitter/treesitter.nix | 8 ++-- modules/plugins/utility/ccc/ccc.nix | 6 +-- .../gestures/gesture-nvim/gesture-nvim.nix | 4 +- modules/plugins/utility/harpoon/harpoon.nix | 12 +++--- modules/plugins/utility/motion/hop/hop.nix | 2 +- .../outline/aerial-nvim/aerial-nvim.nix | 2 +- modules/plugins/utility/preview/glow/glow.nix | 2 +- .../utility/smart-splits/smart-splits.nix | 26 ++++++------ .../plugins/utility/telescope/telescope.nix | 40 +++++++++---------- .../plugins/utility/yazi-nvim/yazi-nvim.nix | 6 +-- .../cellular-automaton/cellular-automaton.nix | 2 +- 31 files changed, 170 insertions(+), 165 deletions(-) diff --git a/docs/manual/hacking/keybinds.md b/docs/manual/hacking/keybinds.md index 3940466f..1373b6c1 100644 --- a/docs/manual/hacking/keybinds.md +++ b/docs/manual/hacking/keybinds.md @@ -49,12 +49,12 @@ in { # Mappings should always be inside an attrset called mappings mappings = { - workspaceDiagnostics = mkMappingOption "Workspace diagnostics [trouble]" "lwd"; - documentDiagnostics = mkMappingOption "Document diagnostics [trouble]" "ld"; - lspReferences = mkMappingOption "LSP References [trouble]" "lr"; - quickfix = mkMappingOption "QuickFix [trouble]" "xq"; - locList = mkMappingOption "LOCList [trouble]" "xl"; - symbols = mkMappingOption "Symbols [trouble]" "xs"; + workspaceDiagnostics = mkMappingOption config.vim.enableNvfKeymaps "Workspace diagnostics [trouble]" "lwd"; + documentDiagnostics = mkMappingOption config.vim.enableNvfKeymaps "Document diagnostics [trouble]" "ld"; + lspReferences = mkMappingOption config.vim.enableNvfKeymaps "LSP References [trouble]" "lr"; + quickfix = mkMappingOption config.vim.enableNvfKeymaps "QuickFix [trouble]" "xq"; + locList = mkMappingOption config.vim.enableNvfKeymaps "LOCList [trouble]" "xl"; + symbols = mkMappingOption config.vim.enableNvfKeymaps "Symbols [trouble]" "xs"; }; } ``` diff --git a/lib/binds.nix b/lib/binds.nix index bb40a89e..a87fbc29 100644 --- a/lib/binds.nix +++ b/lib/binds.nix @@ -32,10 +32,14 @@ }; }; - mkMappingOption = description: default: + mkMappingOption = enableDefault: description: default: mkOption { type = nullOr str; - inherit default description; + default = + if enableDefault + then default + else null; + inherit description; }; # Utility function that takes two attrsets: diff --git a/modules/neovim/mappings/options.nix b/modules/neovim/mappings/options.nix index 98e04a65..2bd8d0f0 100644 --- a/modules/neovim/mappings/options.nix +++ b/modules/neovim/mappings/options.nix @@ -1,5 +1,5 @@ {lib, ...}: let - inherit (lib.options) mkOption literalMD; + inherit (lib.options) mkOption literalMD mkEnableOption; inherit (lib.types) either str listOf attrsOf nullOr submodule; inherit (lib.nvim.config) mkBool; @@ -57,6 +57,7 @@ }; in { options.vim = { + enableNvfKeymaps = mkEnableOption "default NVF keymaps for plugins" // {default = true;}; keymaps = mkOption { type = listOf mapType; description = "Custom keybindings."; diff --git a/modules/plugins/assistant/chatgpt/chatgpt.nix b/modules/plugins/assistant/chatgpt/chatgpt.nix index 95dde397..b7562782 100644 --- a/modules/plugins/assistant/chatgpt/chatgpt.nix +++ b/modules/plugins/assistant/chatgpt/chatgpt.nix @@ -7,19 +7,19 @@ in { enable = mkEnableOption "ChatGPT AI assistant. Requires the environment variable OPENAI_API_KEY to be set"; setupOpts = mkPluginSetupOption "chatgpt" {}; mappings = { - chatGpt = mkMappingOption "ChatGPT" "ac"; - editWithInstructions = mkMappingOption "[ChatGPT] Edit with instructions" "ae"; - grammarCorrection = mkMappingOption "[ChatGPT] Grammar correction" "ag"; - translate = mkMappingOption "[ChatGPT] Translate" "at"; - keyword = mkMappingOption "[ChatGPT] Keywords" "ak"; - docstring = mkMappingOption "[ChatGPT] Docstring" "ad"; - addTests = mkMappingOption "[ChatGPT] Add tests" "aa"; - optimize = mkMappingOption "[ChatGPT] Optimize code" "ao"; - summarize = mkMappingOption "[ChatGPT] Summarize" "as"; - fixBugs = mkMappingOption "[ChatGPT] Fix bugs" "af"; - explain = mkMappingOption "[ChatGPT] Explain code" "ax"; - roxygenEdit = mkMappingOption "[ChatGPT] Roxygen edit" "ar"; - readabilityanalysis = mkMappingOption "[ChatGPT] Code reability analysis" "al"; + chatGpt = mkMappingOption config.vim.enableNvfKeymaps "ChatGPT" "ac"; + editWithInstructions = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Edit with instructions" "ae"; + grammarCorrection = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Grammar correction" "ag"; + translate = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Translate" "at"; + keyword = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Keywords" "ak"; + docstring = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Docstring" "ad"; + addTests = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Add tests" "aa"; + optimize = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Optimize code" "ao"; + summarize = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Summarize" "as"; + fixBugs = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Fix bugs" "af"; + explain = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Explain code" "ax"; + roxygenEdit = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Roxygen edit" "ar"; + readabilityanalysis = mkMappingOption config.vim.enableNvfKeymaps "[ChatGPT] Code reability analysis" "al"; }; }; } diff --git a/modules/plugins/comments/comment-nvim/comment-nvim.nix b/modules/plugins/comments/comment-nvim/comment-nvim.nix index 76fd8131..2993b70d 100644 --- a/modules/plugins/comments/comment-nvim/comment-nvim.nix +++ b/modules/plugins/comments/comment-nvim/comment-nvim.nix @@ -7,14 +7,14 @@ in { enable = mkEnableOption "smart and powerful comment plugin for neovim comment-nvim"; mappings = { - toggleCurrentLine = mkMappingOption "Toggle current line comment" "gcc"; - toggleCurrentBlock = mkMappingOption "Toggle current block comment" "gbc"; + toggleCurrentLine = mkMappingOption config.vim.enableNvfKeymaps "Toggle current line comment" "gcc"; + toggleCurrentBlock = mkMappingOption config.vim.enableNvfKeymaps "Toggle current block comment" "gbc"; - toggleOpLeaderLine = mkMappingOption "Toggle line comment" "gc"; - toggleOpLeaderBlock = mkMappingOption "Toggle block comment" "gb"; + toggleOpLeaderLine = mkMappingOption config.vim.enableNvfKeymaps "Toggle line comment" "gc"; + toggleOpLeaderBlock = mkMappingOption config.vim.enableNvfKeymaps "Toggle block comment" "gb"; - toggleSelectedLine = mkMappingOption "Toggle selected comment" "gc"; - toggleSelectedBlock = mkMappingOption "Toggle selected block" "gb"; + toggleSelectedLine = mkMappingOption config.vim.enableNvfKeymaps "Toggle selected comment" "gc"; + toggleSelectedBlock = mkMappingOption config.vim.enableNvfKeymaps "Toggle selected block" "gb"; }; setupOpts = mkPluginSetupOption "Comment-nvim" { diff --git a/modules/plugins/completion/blink-cmp/blink-cmp.nix b/modules/plugins/completion/blink-cmp/blink-cmp.nix index d07c777e..68a33185 100644 --- a/modules/plugins/completion/blink-cmp/blink-cmp.nix +++ b/modules/plugins/completion/blink-cmp/blink-cmp.nix @@ -131,13 +131,13 @@ in { }; mappings = { - complete = mkMappingOption "Complete [blink.cmp]" ""; - confirm = mkMappingOption "Confirm [blink.cmp]" ""; - next = mkMappingOption "Next item [blink.cmp]" ""; - previous = mkMappingOption "Previous item [blink.cmp]" ""; - close = mkMappingOption "Close [blink.cmp]" ""; - scrollDocsUp = mkMappingOption "Scroll docs up [blink.cmp]" ""; - scrollDocsDown = mkMappingOption "Scroll docs down [blink.cmp]" ""; + complete = mkMappingOption config.vim.enableNvfKeymaps "Complete [blink.cmp]" ""; + confirm = mkMappingOption config.vim.enableNvfKeymaps "Confirm [blink.cmp]" ""; + next = mkMappingOption config.vim.enableNvfKeymaps "Next item [blink.cmp]" ""; + previous = mkMappingOption config.vim.enableNvfKeymaps "Previous item [blink.cmp]" ""; + close = mkMappingOption config.vim.enableNvfKeymaps "Close [blink.cmp]" ""; + scrollDocsUp = mkMappingOption config.vim.enableNvfKeymaps "Scroll docs up [blink.cmp]" ""; + scrollDocsDown = mkMappingOption config.vim.enableNvfKeymaps "Scroll docs down [blink.cmp]" ""; }; sourcePlugins = let diff --git a/modules/plugins/completion/nvim-cmp/nvim-cmp.nix b/modules/plugins/completion/nvim-cmp/nvim-cmp.nix index 4391a144..e5fcf24b 100644 --- a/modules/plugins/completion/nvim-cmp/nvim-cmp.nix +++ b/modules/plugins/completion/nvim-cmp/nvim-cmp.nix @@ -62,13 +62,13 @@ in { }; mappings = { - complete = mkMappingOption "Complete [nvim-cmp]" ""; - confirm = mkMappingOption "Confirm [nvim-cmp]" ""; - next = mkMappingOption "Next item [nvim-cmp]" ""; - previous = mkMappingOption "Previous item [nvim-cmp]" ""; - close = mkMappingOption "Close [nvim-cmp]" ""; - scrollDocsUp = mkMappingOption "Scroll docs up [nvim-cmp]" ""; - scrollDocsDown = mkMappingOption "Scroll docs down [nvim-cmp]" ""; + complete = mkMappingOption config.vim.enableNvfKeymaps "Complete [nvim-cmp]" ""; + confirm = mkMappingOption config.vim.enableNvfKeymaps "Confirm [nvim-cmp]" ""; + next = mkMappingOption config.vim.enableNvfKeymaps "Next item [nvim-cmp]" ""; + previous = mkMappingOption config.vim.enableNvfKeymaps "Previous item [nvim-cmp]" ""; + close = mkMappingOption config.vim.enableNvfKeymaps "Close [nvim-cmp]" ""; + scrollDocsUp = mkMappingOption config.vim.enableNvfKeymaps "Scroll docs up [nvim-cmp]" ""; + scrollDocsDown = mkMappingOption config.vim.enableNvfKeymaps "Scroll docs down [nvim-cmp]" ""; }; format = mkOption { diff --git a/modules/plugins/debugger/nvim-dap/nvim-dap.nix b/modules/plugins/debugger/nvim-dap/nvim-dap.nix index ef582091..cb974dbd 100644 --- a/modules/plugins/debugger/nvim-dap/nvim-dap.nix +++ b/modules/plugins/debugger/nvim-dap/nvim-dap.nix @@ -26,25 +26,25 @@ in { }; mappings = { - continue = mkMappingOption "Continue" "dc"; - restart = mkMappingOption "Restart" "dR"; - terminate = mkMappingOption "Terminate" "dq"; - runLast = mkMappingOption "Re-run Last Debug Session" "d."; + continue = mkMappingOption config.vim.enableNvfKeymaps "Continue" "dc"; + restart = mkMappingOption config.vim.enableNvfKeymaps "Restart" "dR"; + terminate = mkMappingOption config.vim.enableNvfKeymaps "Terminate" "dq"; + runLast = mkMappingOption config.vim.enableNvfKeymaps "Re-run Last Debug Session" "d."; - toggleRepl = mkMappingOption "Toggle Repl" "dr"; - hover = mkMappingOption "Hover" "dh"; - toggleBreakpoint = mkMappingOption "Toggle breakpoint" "db"; + toggleRepl = mkMappingOption config.vim.enableNvfKeymaps "Toggle Repl" "dr"; + hover = mkMappingOption config.vim.enableNvfKeymaps "Hover" "dh"; + toggleBreakpoint = mkMappingOption config.vim.enableNvfKeymaps "Toggle breakpoint" "db"; - runToCursor = mkMappingOption "Continue to the current cursor" "dgc"; - stepInto = mkMappingOption "Step into function" "dgi"; - stepOut = mkMappingOption "Step out of function" "dgo"; - stepOver = mkMappingOption "Next step" "dgj"; - stepBack = mkMappingOption "Step back" "dgk"; + runToCursor = mkMappingOption config.vim.enableNvfKeymaps "Continue to the current cursor" "dgc"; + stepInto = mkMappingOption config.vim.enableNvfKeymaps "Step into function" "dgi"; + stepOut = mkMappingOption config.vim.enableNvfKeymaps "Step out of function" "dgo"; + stepOver = mkMappingOption config.vim.enableNvfKeymaps "Next step" "dgj"; + stepBack = mkMappingOption config.vim.enableNvfKeymaps "Step back" "dgk"; - goUp = mkMappingOption "Go up stacktrace" "dvo"; - goDown = mkMappingOption "Go down stacktrace" "dvi"; + goUp = mkMappingOption config.vim.enableNvfKeymaps "Go up stacktrace" "dvo"; + goDown = mkMappingOption config.vim.enableNvfKeymaps "Go down stacktrace" "dvi"; - toggleDapUI = mkMappingOption "Toggle DAP-UI" "du"; + toggleDapUI = mkMappingOption config.vim.enableNvfKeymaps "Toggle DAP-UI" "du"; }; }; } diff --git a/modules/plugins/git/git-conflict/git-conflict.nix b/modules/plugins/git/git-conflict/git-conflict.nix index 44ab79c5..95b71e21 100644 --- a/modules/plugins/git/git-conflict/git-conflict.nix +++ b/modules/plugins/git/git-conflict/git-conflict.nix @@ -12,12 +12,12 @@ in { setupOpts = mkPluginSetupOption "git-conflict" {}; mappings = { - ours = mkMappingOption "Choose Ours [Git-Conflict]" "co"; - theirs = mkMappingOption "Choose Theirs [Git-Conflict]" "ct"; - both = mkMappingOption "Choose Both [Git-Conflict]" "cb"; - none = mkMappingOption "Choose None [Git-Conflict]" "c0"; - prevConflict = mkMappingOption "Go to the previous Conflict [Git-Conflict]" "]x"; - nextConflict = mkMappingOption "Go to the next Conflict [Git-Conflict]" "[x"; + ours = mkMappingOption config.vim.enableNvfKeymaps "Choose Ours [Git-Conflict]" "co"; + theirs = mkMappingOption config.vim.enableNvfKeymaps "Choose Theirs [Git-Conflict]" "ct"; + both = mkMappingOption config.vim.enableNvfKeymaps "Choose Both [Git-Conflict]" "cb"; + none = mkMappingOption config.vim.enableNvfKeymaps "Choose None [Git-Conflict]" "c0"; + prevConflict = mkMappingOption config.vim.enableNvfKeymaps "Go to the previous Conflict [Git-Conflict]" "]x"; + nextConflict = mkMappingOption config.vim.enableNvfKeymaps "Go to the next Conflict [Git-Conflict]" "[x"; }; }; } diff --git a/modules/plugins/git/gitsigns/gitsigns.nix b/modules/plugins/git/gitsigns/gitsigns.nix index 9c2375d8..95322554 100644 --- a/modules/plugins/git/gitsigns/gitsigns.nix +++ b/modules/plugins/git/gitsigns/gitsigns.nix @@ -19,25 +19,25 @@ in { codeActions.enable = mkEnableOption "gitsigns codeactions through null-ls"; mappings = { - nextHunk = mkMappingOption "Next hunk [Gitsigns]" "]c"; - previousHunk = mkMappingOption "Previous hunk [Gitsigns]" "[c"; + nextHunk = mkMappingOption config.vim.enableNvfKeymaps "Next hunk [Gitsigns]" "]c"; + previousHunk = mkMappingOption config.vim.enableNvfKeymaps "Previous hunk [Gitsigns]" "[c"; - stageHunk = mkMappingOption "Stage hunk [Gitsigns]" "hs"; - undoStageHunk = mkMappingOption "Undo stage hunk [Gitsigns]" "hu"; - resetHunk = mkMappingOption "Reset hunk [Gitsigns]" "hr"; + stageHunk = mkMappingOption config.vim.enableNvfKeymaps "Stage hunk [Gitsigns]" "hs"; + undoStageHunk = mkMappingOption config.vim.enableNvfKeymaps "Undo stage hunk [Gitsigns]" "hu"; + resetHunk = mkMappingOption config.vim.enableNvfKeymaps "Reset hunk [Gitsigns]" "hr"; - stageBuffer = mkMappingOption "Stage buffer [Gitsigns]" "hS"; - resetBuffer = mkMappingOption "Reset buffer [Gitsigns]" "hR"; + stageBuffer = mkMappingOption config.vim.enableNvfKeymaps "Stage buffer [Gitsigns]" "hS"; + resetBuffer = mkMappingOption config.vim.enableNvfKeymaps "Reset buffer [Gitsigns]" "hR"; - previewHunk = mkMappingOption "Preview hunk [Gitsigns]" "hP"; + previewHunk = mkMappingOption config.vim.enableNvfKeymaps "Preview hunk [Gitsigns]" "hP"; - blameLine = mkMappingOption "Blame line [Gitsigns]" "hb"; - toggleBlame = mkMappingOption "Toggle blame [Gitsigns]" "tb"; + blameLine = mkMappingOption config.vim.enableNvfKeymaps "Blame line [Gitsigns]" "hb"; + toggleBlame = mkMappingOption config.vim.enableNvfKeymaps "Toggle blame [Gitsigns]" "tb"; - diffThis = mkMappingOption "Diff this [Gitsigns]" "hd"; - diffProject = mkMappingOption "Diff project [Gitsigns]" "hD"; + diffThis = mkMappingOption config.vim.enableNvfKeymaps "Diff this [Gitsigns]" "hd"; + diffProject = mkMappingOption config.vim.enableNvfKeymaps "Diff project [Gitsigns]" "hD"; - toggleDeleted = mkMappingOption "Toggle deleted [Gitsigns]" "td"; + toggleDeleted = mkMappingOption config.vim.enableNvfKeymaps "Toggle deleted [Gitsigns]" "td"; }; }; } diff --git a/modules/plugins/git/neogit/neogit.nix b/modules/plugins/git/neogit/neogit.nix index fa988a32..aa848998 100644 --- a/modules/plugins/git/neogit/neogit.nix +++ b/modules/plugins/git/neogit/neogit.nix @@ -8,10 +8,10 @@ in { setupOpts = mkPluginSetupOption "neogit" {}; mappings = { - open = mkMappingOption "Git Status [Neogit]" "gs"; - commit = mkMappingOption "Git Commit [Neogit]" "gc"; - pull = mkMappingOption "Git pull [Neogit]" "gp"; - push = mkMappingOption "Git push [Neogit]" "gP"; + open = mkMappingOption config.vim.enableNvfKeymaps "Git Status [Neogit]" "gs"; + commit = mkMappingOption config.vim.enableNvfKeymaps "Git Commit [Neogit]" "gc"; + pull = mkMappingOption config.vim.enableNvfKeymaps "Git pull [Neogit]" "gp"; + push = mkMappingOption config.vim.enableNvfKeymaps "Git push [Neogit]" "gP"; }; }; } diff --git a/modules/plugins/languages/scala.nix b/modules/plugins/languages/scala.nix index b5382415..352929c5 100644 --- a/modules/plugins/languages/scala.nix +++ b/modules/plugins/languages/scala.nix @@ -39,7 +39,7 @@ in { }; extraMappings = { - listCommands = mkMappingOption "List Metals commands" "lc"; + listCommands = mkMappingOption config.vim.enableNvfKeymaps "List Metals commands" "lc"; }; extraSettings = mkOption { diff --git a/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix b/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix index df571123..58b147da 100644 --- a/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix +++ b/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix @@ -57,8 +57,8 @@ in { }; mappings = { - viewToggle = mkMappingOption "Open or close the docs view panel" "lvt"; - viewUpdate = mkMappingOption "Manually update the docs view panel" "lvu"; + viewToggle = mkMappingOption config.vim.enableNvfKeymaps "Open or close the docs view panel" "lvt"; + viewUpdate = mkMappingOption config.vim.enableNvfKeymaps "Manually update the docs view panel" "lvu"; }; }; } diff --git a/modules/plugins/lsp/otter/otter.nix b/modules/plugins/lsp/otter/otter.nix index 2ccc393b..8d53941b 100644 --- a/modules/plugins/lsp/otter/otter.nix +++ b/modules/plugins/lsp/otter/otter.nix @@ -10,7 +10,7 @@ in { lsp features and a code completion source for code embedded in other documents [otter-nvim] ''; mappings = { - toggle = mkMappingOption "Activate LSP on Cursor Position [otter-nvim]" "lo"; + toggle = mkMappingOption config.vim.enableNvfKeymaps "Activate LSP on Cursor Position [otter-nvim]" "lo"; }; setupOpts = mkPluginSetupOption "otter.nvim" { lsp = { diff --git a/modules/plugins/lsp/trouble/trouble.nix b/modules/plugins/lsp/trouble/trouble.nix index 5fa5a3df..fdf51223 100644 --- a/modules/plugins/lsp/trouble/trouble.nix +++ b/modules/plugins/lsp/trouble/trouble.nix @@ -10,12 +10,12 @@ in { setupOpts = mkPluginSetupOption "Trouble" {}; mappings = { - workspaceDiagnostics = mkMappingOption "Workspace diagnostics [trouble]" "lwd"; - documentDiagnostics = mkMappingOption "Document diagnostics [trouble]" "ld"; - lspReferences = mkMappingOption "LSP References [trouble]" "lr"; - quickfix = mkMappingOption "QuickFix [trouble]" "xq"; - locList = mkMappingOption "LOCList [trouble]" "xl"; - symbols = mkMappingOption "Symbols [trouble]" "xs"; + workspaceDiagnostics = mkMappingOption config.vim.enableNvfKeymaps "Workspace diagnostics [trouble]" "lwd"; + documentDiagnostics = mkMappingOption config.vim.enableNvfKeymaps "Document diagnostics [trouble]" "ld"; + lspReferences = mkMappingOption config.vim.enableNvfKeymaps "LSP References [trouble]" "lr"; + quickfix = mkMappingOption config.vim.enableNvfKeymaps "QuickFix [trouble]" "xq"; + locList = mkMappingOption config.vim.enableNvfKeymaps "LOCList [trouble]" "xl"; + symbols = mkMappingOption config.vim.enableNvfKeymaps "Symbols [trouble]" "xs"; }; }; }; diff --git a/modules/plugins/minimap/codewindow/codewindow.nix b/modules/plugins/minimap/codewindow/codewindow.nix index 381e3102..eb008bb2 100644 --- a/modules/plugins/minimap/codewindow/codewindow.nix +++ b/modules/plugins/minimap/codewindow/codewindow.nix @@ -6,10 +6,10 @@ in { enable = mkEnableOption "codewindow plugin for minimap view"; mappings = { - open = mkMappingOption "Open minimap [codewindow]" "mo"; - close = mkMappingOption "Close minimap [codewindow]" "mc"; - toggle = mkMappingOption "Toggle minimap [codewindow]" "mm"; - toggleFocus = mkMappingOption "Toggle minimap focus [codewindow]" "mf"; + open = mkMappingOption config.vim.enableNvfKeymaps "Open minimap [codewindow]" "mo"; + close = mkMappingOption config.vim.enableNvfKeymaps "Close minimap [codewindow]" "mc"; + toggle = mkMappingOption config.vim.enableNvfKeymaps "Toggle minimap [codewindow]" "mm"; + toggleFocus = mkMappingOption config.vim.enableNvfKeymaps "Toggle minimap focus [codewindow]" "mf"; }; }; } diff --git a/modules/plugins/notes/todo-comments/todo-comments.nix b/modules/plugins/notes/todo-comments/todo-comments.nix index b5bb76f0..36ba01cb 100644 --- a/modules/plugins/notes/todo-comments/todo-comments.nix +++ b/modules/plugins/notes/todo-comments/todo-comments.nix @@ -53,9 +53,9 @@ in { }; mappings = { - quickFix = mkMappingOption "Open Todo-s in a quickfix list" "tdq"; - telescope = mkMappingOption "Open Todo-s in telescope" "tds"; - trouble = mkMappingOption "Open Todo-s in Trouble" "tdt"; + quickFix = mkMappingOption config.vim.enableNvfKeymaps "Open Todo-s in a quickfix list" "tdq"; + telescope = mkMappingOption config.vim.enableNvfKeymaps "Open Todo-s in telescope" "tds"; + trouble = mkMappingOption config.vim.enableNvfKeymaps "Open Todo-s in Trouble" "tdt"; }; }; } diff --git a/modules/plugins/runner/run-nvim/run-nvim.nix b/modules/plugins/runner/run-nvim/run-nvim.nix index dd24e6c3..55758c36 100644 --- a/modules/plugins/runner/run-nvim/run-nvim.nix +++ b/modules/plugins/runner/run-nvim/run-nvim.nix @@ -9,9 +9,9 @@ in { setupOpts = mkPluginSetupOption "run.nvim" {}; mappings = { - run = mkMappingOption "Run cached" "ri"; - runOverride = mkMappingOption "Run and override" "ro"; - runCommand = mkMappingOption "Run prompt" "rc"; + run = mkMappingOption config.vim.enableNvfKeymaps "Run cached" "ri"; + runOverride = mkMappingOption config.vim.enableNvfKeymaps "Run and override" "ro"; + runCommand = mkMappingOption config.vim.enableNvfKeymaps "Run prompt" "rc"; }; }; }; diff --git a/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix b/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix index ff255c6c..18e11524 100644 --- a/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix +++ b/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix @@ -13,15 +13,15 @@ in { enable = mkEnableOption "neovim bufferline"; mappings = { - closeCurrent = mkMappingOption "Close buffer" null; - cycleNext = mkMappingOption "Next buffer" "bn"; - cyclePrevious = mkMappingOption "Previous buffer" "bp"; - pick = mkMappingOption "Pick buffer" "bc"; - sortByExtension = mkMappingOption "Sort buffers by extension" "bse"; - sortByDirectory = mkMappingOption "Sort buffers by directory" "bsd"; - sortById = mkMappingOption "Sort buffers by ID" "bsi"; - moveNext = mkMappingOption "Move next buffer" "bmn"; - movePrevious = mkMappingOption "Move previous buffer" "bmp"; + closeCurrent = mkMappingOption config.vim.enableNvfKeymaps "Close buffer" null; + cycleNext = mkMappingOption config.vim.enableNvfKeymaps "Next buffer" "bn"; + cyclePrevious = mkMappingOption config.vim.enableNvfKeymaps "Previous buffer" "bp"; + pick = mkMappingOption config.vim.enableNvfKeymaps "Pick buffer" "bc"; + sortByExtension = mkMappingOption config.vim.enableNvfKeymaps "Sort buffers by extension" "bse"; + sortByDirectory = mkMappingOption config.vim.enableNvfKeymaps "Sort buffers by directory" "bsd"; + sortById = mkMappingOption config.vim.enableNvfKeymaps "Sort buffers by ID" "bsi"; + moveNext = mkMappingOption config.vim.enableNvfKeymaps "Move next buffer" "bmn"; + movePrevious = mkMappingOption config.vim.enableNvfKeymaps "Move previous buffer" "bmp"; }; setupOpts = mkPluginSetupOption "Bufferline-nvim" { diff --git a/modules/plugins/terminal/toggleterm/toggleterm.nix b/modules/plugins/terminal/toggleterm/toggleterm.nix index d6c25c1b..a842023f 100644 --- a/modules/plugins/terminal/toggleterm/toggleterm.nix +++ b/modules/plugins/terminal/toggleterm/toggleterm.nix @@ -80,7 +80,7 @@ in { }; mappings = { - open = mkMappingOption "Open lazygit [toggleterm]" "gg"; + open = mkMappingOption config.vim.enableNvfKeymaps "Open lazygit [toggleterm]" "gg"; }; }; }; diff --git a/modules/plugins/treesitter/treesitter.nix b/modules/plugins/treesitter/treesitter.nix index d761d6b3..09e1c646 100644 --- a/modules/plugins/treesitter/treesitter.nix +++ b/modules/plugins/treesitter/treesitter.nix @@ -12,10 +12,10 @@ in { enable = mkEnableOption "treesitter, also enabled automatically through language options"; mappings.incrementalSelection = { - init = mkMappingOption "Init selection [treesitter]" "gnn"; - incrementByNode = mkMappingOption "Increment selection by node [treesitter]" "grn"; - incrementByScope = mkMappingOption "Increment selection by scope [treesitter]" "grc"; - decrementByNode = mkMappingOption "Decrement selection by node [treesitter]" "grm"; + init = mkMappingOption config.vim.enableNvfKeymaps "Init selection [treesitter]" "gnn"; + incrementByNode = mkMappingOption config.vim.enableNvfKeymaps "Increment selection by node [treesitter]" "grn"; + incrementByScope = mkMappingOption config.vim.enableNvfKeymaps "Increment selection by scope [treesitter]" "grc"; + decrementByNode = mkMappingOption config.vim.enableNvfKeymaps "Decrement selection by node [treesitter]" "grm"; }; fold = mkEnableOption "fold with treesitter"; diff --git a/modules/plugins/utility/ccc/ccc.nix b/modules/plugins/utility/ccc/ccc.nix index f900b531..835235fd 100644 --- a/modules/plugins/utility/ccc/ccc.nix +++ b/modules/plugins/utility/ccc/ccc.nix @@ -6,9 +6,9 @@ in { enable = mkEnableOption "ccc color picker for neovim"; mappings = { - quit = mkMappingOption "Cancel and close the UI without replace or insert" ""; - increase10 = mkMappingOption "Increase the value times delta of the slider" ""; - decrease10 = mkMappingOption "Decrease the value times delta of the slider" ""; + quit = mkMappingOption config.vim.enableNvfKeymaps "Cancel and close the UI without replace or insert" ""; + increase10 = mkMappingOption config.vim.enableNvfKeymaps "Increase the value times delta of the slider" ""; + decrease10 = mkMappingOption config.vim.enableNvfKeymaps "Decrease the value times delta of the slider" ""; }; }; } diff --git a/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix b/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix index aad51dc8..57934a43 100644 --- a/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix +++ b/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix @@ -6,8 +6,8 @@ in { enable = mkEnableOption "gesture-nvim: mouse gestures"; mappings = { - draw = mkMappingOption "Start drawing [gesture.nvim]" ""; - finish = mkMappingOption "Finish drawing [gesture.nvim]" ""; + draw = mkMappingOption config.vim.enableNvfKeymaps "Start drawing [gesture.nvim]" ""; + finish = mkMappingOption config.vim.enableNvfKeymaps "Finish drawing [gesture.nvim]" ""; }; }; } diff --git a/modules/plugins/utility/harpoon/harpoon.nix b/modules/plugins/utility/harpoon/harpoon.nix index 6f5b8d0a..1d4668db 100644 --- a/modules/plugins/utility/harpoon/harpoon.nix +++ b/modules/plugins/utility/harpoon/harpoon.nix @@ -7,12 +7,12 @@ in { options.vim.navigation.harpoon = { mappings = { - markFile = mkMappingOption "Mark file [Harpoon]" "a"; - listMarks = mkMappingOption "List marked files [Harpoon]" ""; - file1 = mkMappingOption "Go to marked file 1 [Harpoon]" ""; - file2 = mkMappingOption "Go to marked file 2 [Harpoon]" ""; - file3 = mkMappingOption "Go to marked file 3 [Harpoon]" ""; - file4 = mkMappingOption "Go to marked file 4 [Harpoon]" ""; + markFile = mkMappingOption config.vim.enableNvfKeymaps "Mark file [Harpoon]" "a"; + listMarks = mkMappingOption config.vim.enableNvfKeymaps "List marked files [Harpoon]" ""; + file1 = mkMappingOption config.vim.enableNvfKeymaps "Go to marked file 1 [Harpoon]" ""; + file2 = mkMappingOption config.vim.enableNvfKeymaps "Go to marked file 2 [Harpoon]" ""; + file3 = mkMappingOption config.vim.enableNvfKeymaps "Go to marked file 3 [Harpoon]" ""; + file4 = mkMappingOption config.vim.enableNvfKeymaps "Go to marked file 4 [Harpoon]" ""; }; enable = mkEnableOption "Quick bookmarks on keybinds [Harpoon]"; diff --git a/modules/plugins/utility/motion/hop/hop.nix b/modules/plugins/utility/motion/hop/hop.nix index 19d0318f..7548a9a6 100644 --- a/modules/plugins/utility/motion/hop/hop.nix +++ b/modules/plugins/utility/motion/hop/hop.nix @@ -4,7 +4,7 @@ in { options.vim.utility.motion.hop = { mappings = { - hop = mkMappingOption "Jump to occurrences [hop.nvim]" "h"; + hop = mkMappingOption config.vim.enableNvfKeymaps "Jump to occurrences [hop.nvim]" "h"; }; enable = mkEnableOption "Hop.nvim plugin (easy motion)"; diff --git a/modules/plugins/utility/outline/aerial-nvim/aerial-nvim.nix b/modules/plugins/utility/outline/aerial-nvim/aerial-nvim.nix index beede428..edbe9052 100644 --- a/modules/plugins/utility/outline/aerial-nvim/aerial-nvim.nix +++ b/modules/plugins/utility/outline/aerial-nvim/aerial-nvim.nix @@ -8,7 +8,7 @@ in { setupOpts = mkPluginSetupOption "aerial.nvim" {}; mappings = { - toggle = mkMappingOption "Toggle aerial window" "gO"; + toggle = mkMappingOption config.vim.enableNvfKeymaps "Toggle aerial window" "gO"; }; }; } diff --git a/modules/plugins/utility/preview/glow/glow.nix b/modules/plugins/utility/preview/glow/glow.nix index 69f9f93d..766a0b6d 100644 --- a/modules/plugins/utility/preview/glow/glow.nix +++ b/modules/plugins/utility/preview/glow/glow.nix @@ -10,7 +10,7 @@ in { options.vim.utility.preview = { glow = { enable = mkEnableOption "markdown preview in neovim with glow"; - mappings.openPreview = mkMappingOption "Open preview" "p"; + mappings.openPreview = mkMappingOption config.vim.enableNvfKeymaps "Open preview" "p"; }; }; } diff --git a/modules/plugins/utility/smart-splits/smart-splits.nix b/modules/plugins/utility/smart-splits/smart-splits.nix index dd5c55a3..47c70d6f 100644 --- a/modules/plugins/utility/smart-splits/smart-splits.nix +++ b/modules/plugins/utility/smart-splits/smart-splits.nix @@ -19,19 +19,19 @@ in { setupOpts = mkPluginSetupOption "smart-splits" {}; keymaps = { - resize_left = mkMappingOption "Resize Window/Pane Left" ""; - resize_down = mkMappingOption "Resize Window/Pane Down" ""; - resize_up = mkMappingOption "Resize Window/Pane Up" ""; - resize_right = mkMappingOption "Resize Window/Pane Right" ""; - move_cursor_left = mkMappingOption "Focus Window/Pane on the Left" ""; - move_cursor_down = mkMappingOption "Focus Window/Pane Below" ""; - move_cursor_up = mkMappingOption "Focus Window/Pane Above" ""; - move_cursor_right = mkMappingOption "Focus Window/Pane on the Right" ""; - move_cursor_previous = mkMappingOption "Focus Previous Window/Pane" ""; - swap_buf_left = mkMappingOption "Swap Buffer Left" "h"; - swap_buf_down = mkMappingOption "Swap Buffer Down" "j"; - swap_buf_up = mkMappingOption "Swap Buffer Up" "k"; - swap_buf_right = mkMappingOption "Swap Buffer Right" "l"; + resize_left = mkMappingOption config.vim.enableNvfKeymaps "Resize Window/Pane Left" ""; + resize_down = mkMappingOption config.vim.enableNvfKeymaps "Resize Window/Pane Down" ""; + resize_up = mkMappingOption config.vim.enableNvfKeymaps "Resize Window/Pane Up" ""; + resize_right = mkMappingOption config.vim.enableNvfKeymaps "Resize Window/Pane Right" ""; + move_cursor_left = mkMappingOption config.vim.enableNvfKeymaps "Focus Window/Pane on the Left" ""; + move_cursor_down = mkMappingOption config.vim.enableNvfKeymaps "Focus Window/Pane Below" ""; + move_cursor_up = mkMappingOption config.vim.enableNvfKeymaps "Focus Window/Pane Above" ""; + move_cursor_right = mkMappingOption config.vim.enableNvfKeymaps "Focus Window/Pane on the Right" ""; + move_cursor_previous = mkMappingOption config.vim.enableNvfKeymaps "Focus Previous Window/Pane" ""; + swap_buf_left = mkMappingOption config.vim.enableNvfKeymaps "Swap Buffer Left" "h"; + swap_buf_down = mkMappingOption config.vim.enableNvfKeymaps "Swap Buffer Down" "j"; + swap_buf_up = mkMappingOption config.vim.enableNvfKeymaps "Swap Buffer Up" "k"; + swap_buf_right = mkMappingOption config.vim.enableNvfKeymaps "Swap Buffer Right" "l"; }; }; } diff --git a/modules/plugins/utility/telescope/telescope.nix b/modules/plugins/utility/telescope/telescope.nix index 9ed6f263..6f1a6ac9 100644 --- a/modules/plugins/utility/telescope/telescope.nix +++ b/modules/plugins/utility/telescope/telescope.nix @@ -200,29 +200,29 @@ in { options.vim.telescope = { mappings = { - findProjects = mkMappingOption "Find projects [Telescope]" "fp"; - findFiles = mkMappingOption "Find files [Telescope]" "ff"; - liveGrep = mkMappingOption "Live grep [Telescope]" "fg"; - buffers = mkMappingOption "Buffers [Telescope]" "fb"; - helpTags = mkMappingOption "Help tags [Telescope]" "fh"; - open = mkMappingOption "Open [Telescope]" "ft"; - resume = mkMappingOption "Resume (previous search) [Telescope]" "fr"; + findProjects = mkMappingOption config.vim.enableNvfKeymaps "Find projects [Telescope]" "fp"; + findFiles = mkMappingOption config.vim.enableNvfKeymaps "Find files [Telescope]" "ff"; + liveGrep = mkMappingOption config.vim.enableNvfKeymaps "Live grep [Telescope]" "fg"; + buffers = mkMappingOption config.vim.enableNvfKeymaps "Buffers [Telescope]" "fb"; + helpTags = mkMappingOption config.vim.enableNvfKeymaps "Help tags [Telescope]" "fh"; + open = mkMappingOption config.vim.enableNvfKeymaps "Open [Telescope]" "ft"; + resume = mkMappingOption config.vim.enableNvfKeymaps "Resume (previous search) [Telescope]" "fr"; - gitCommits = mkMappingOption "Git commits [Telescope]" "fvcw"; - gitBufferCommits = mkMappingOption "Git buffer commits [Telescope]" "fvcb"; - gitBranches = mkMappingOption "Git branches [Telescope]" "fvb"; - gitStatus = mkMappingOption "Git status [Telescope]" "fvs"; - gitStash = mkMappingOption "Git stash [Telescope]" "fvx"; + gitCommits = mkMappingOption config.vim.enableNvfKeymaps "Git commits [Telescope]" "fvcw"; + gitBufferCommits = mkMappingOption config.vim.enableNvfKeymaps "Git buffer commits [Telescope]" "fvcb"; + gitBranches = mkMappingOption config.vim.enableNvfKeymaps "Git branches [Telescope]" "fvb"; + gitStatus = mkMappingOption config.vim.enableNvfKeymaps "Git status [Telescope]" "fvs"; + gitStash = mkMappingOption config.vim.enableNvfKeymaps "Git stash [Telescope]" "fvx"; - lspDocumentSymbols = mkMappingOption "LSP Document Symbols [Telescope]" "flsb"; - lspWorkspaceSymbols = mkMappingOption "LSP Workspace Symbols [Telescope]" "flsw"; - lspReferences = mkMappingOption "LSP References [Telescope]" "flr"; - lspImplementations = mkMappingOption "LSP Implementations [Telescope]" "fli"; - lspDefinitions = mkMappingOption "LSP Definitions [Telescope]" "flD"; - lspTypeDefinitions = mkMappingOption "LSP Type Definitions [Telescope]" "flt"; - diagnostics = mkMappingOption "Diagnostics [Telescope]" "fld"; + lspDocumentSymbols = mkMappingOption config.vim.enableNvfKeymaps "LSP Document Symbols [Telescope]" "flsb"; + lspWorkspaceSymbols = mkMappingOption config.vim.enableNvfKeymaps "LSP Workspace Symbols [Telescope]" "flsw"; + lspReferences = mkMappingOption config.vim.enableNvfKeymaps "LSP References [Telescope]" "flr"; + lspImplementations = mkMappingOption config.vim.enableNvfKeymaps "LSP Implementations [Telescope]" "fli"; + lspDefinitions = mkMappingOption config.vim.enableNvfKeymaps "LSP Definitions [Telescope]" "flD"; + lspTypeDefinitions = mkMappingOption config.vim.enableNvfKeymaps "LSP Type Definitions [Telescope]" "flt"; + diagnostics = mkMappingOption config.vim.enableNvfKeymaps "Diagnostics [Telescope]" "fld"; - treesitter = mkMappingOption "Treesitter [Telescope]" "fs"; + treesitter = mkMappingOption config.vim.enableNvfKeymaps "Treesitter [Telescope]" "fs"; }; enable = mkEnableOption "telescope.nvim: multi-purpose search and picker utility"; diff --git a/modules/plugins/utility/yazi-nvim/yazi-nvim.nix b/modules/plugins/utility/yazi-nvim/yazi-nvim.nix index 9a83a1a8..7450f3b8 100644 --- a/modules/plugins/utility/yazi-nvim/yazi-nvim.nix +++ b/modules/plugins/utility/yazi-nvim/yazi-nvim.nix @@ -10,9 +10,9 @@ in { ''; mappings = { - openYazi = mkMappingOption "Open yazi at the current file [yazi.nvim]" "-"; - openYaziDir = mkMappingOption "Open the file manager in nvim's working directory [yazi.nvim]" "cw"; - yaziToggle = mkMappingOption "Resume the last yazi session [yazi.nvim]" ""; + openYazi = mkMappingOption config.vim.enableNvfKeymaps "Open yazi at the current file [yazi.nvim]" "-"; + openYaziDir = mkMappingOption config.vim.enableNvfKeymaps "Open the file manager in nvim's working directory [yazi.nvim]" "cw"; + yaziToggle = mkMappingOption config.vim.enableNvfKeymaps "Resume the last yazi session [yazi.nvim]" ""; }; setupOpts = mkPluginSetupOption "yazi-nvim" { diff --git a/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix b/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix index 6d432e7b..fc8f0611 100644 --- a/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix +++ b/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix @@ -13,7 +13,7 @@ in { enable = mkEnableOption "cellular-automaton to help you cope with stubborn code [cellular-automaton]"; mappings = { - makeItRain = mkMappingOption "Make it rain [cellular-automaton]" "fml"; + makeItRain = mkMappingOption config.vim.enableNvfKeymaps "Make it rain [cellular-automaton]" "fml"; }; animation = {