From 3f420834b6f445289aa9d839b68c258d056407a2 Mon Sep 17 00:00:00 2001
From: Gabe Venberg <gabevenberg@gmail.com>
Date: Wed, 26 Feb 2025 16:15:21 +0100
Subject: [PATCH] some keybindings for zk-nvim.

---
 configs/home-manager/zk.nix      |  2 +-
 modules/home-manager/nvim/zk.nix | 26 ++++++++++++++++++++++++++
 2 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/configs/home-manager/zk.nix b/configs/home-manager/zk.nix
index dcecfac..8fbf4f6 100644
--- a/configs/home-manager/zk.nix
+++ b/configs/home-manager/zk.nix
@@ -27,7 +27,7 @@
         bl = ''zk list --link-to $@'';
         i = ''zk edit --interactive'';
         unlinked-mentions = ''zk list --mentioned-by $1 --no-linked-by $1'';
-        wc = ''zk list --format '{{word-count}}\t{{title}}' --sort word-count $@'';
+        short = ''zk list --format '{{word-count}}\t{{title}}' --limit 20 --sort word-count $@'';
         nt = ''zk new --title "''${*:2}" $1'';
       };
 
diff --git a/modules/home-manager/nvim/zk.nix b/modules/home-manager/nvim/zk.nix
index 60c04dc..983c9b1 100644
--- a/modules/home-manager/nvim/zk.nix
+++ b/modules/home-manager/nvim/zk.nix
@@ -8,5 +8,31 @@
     programs.nixvim = {
       plugins.zk.enable = true;
     };
+    plugins.which-key.settings.spec = [
+      {
+        __unkeyed-1 = "<leader>z";
+        group = "+zk";
+      }
+    ];
+    keymaps = [
+      {
+        action = ":ZkNewFromTitleSelection";
+        key = "<leader>zn";
+        mode = "n";
+        options = {
+          silent = true;
+          desc = "New zk note with title from selection";
+        };
+      }
+      {
+        action = ":ZkaMatch";
+        key = "<leader>zs";
+        mode = "n";
+        options = {
+          silent = true;
+          desc = "Search zk notes from selection";
+        };
+      }
+    ];
   };
 }