mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 00:25:42 +02:00
plugins/todo-comments: support conditional key mapping
This commit is contained in:
parent
4e5bd1d79b
commit
87e3c4a1b2
2 changed files with 26 additions and 1 deletions
|
@ -373,8 +373,11 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin {
|
|||
defaults = {
|
||||
inherit action;
|
||||
mode = "n";
|
||||
key = null;
|
||||
};
|
||||
|
||||
key.type = with types; nullOr str;
|
||||
|
||||
extraOptions = {
|
||||
cwd = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
|
@ -430,7 +433,7 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin {
|
|||
extraPackages = [ cfg.ripgrepPackage ];
|
||||
|
||||
keymaps = lib.pipe cfg.keymaps [
|
||||
(filterAttrs (n: keymap: keymap != null))
|
||||
(filterAttrs (n: keymap: keymap != null && keymap.key != null))
|
||||
(mapAttrsToList (
|
||||
name: keymap: {
|
||||
inherit (keymap) key mode options;
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
{ lib, ... }:
|
||||
{
|
||||
empty = {
|
||||
plugins.todo-comments.enable = true;
|
||||
|
@ -166,6 +167,27 @@
|
|||
};
|
||||
};
|
||||
|
||||
conditional-mappings =
|
||||
{ config, ... }:
|
||||
{
|
||||
plugins.telescope.enable = true;
|
||||
plugins.todo-comments = {
|
||||
enable = true;
|
||||
|
||||
keymaps = {
|
||||
todoTrouble.key = lib.mkIf config.plugins.trouble.enable "<leader>xq";
|
||||
todoTelescope = lib.mkIf config.plugins.telescope.enable {
|
||||
key = "<leader>ft";
|
||||
keywords = [
|
||||
"TODO"
|
||||
"FIX"
|
||||
"FIX"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
without-ripgrep = {
|
||||
plugins.todo-comments = {
|
||||
enable = true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue