41 lines
2.3 KiB
Nix
41 lines
2.3 KiB
Nix
{pkgs, ...}: {
|
|
vim = {
|
|
extraPlugins = with pkgs.vimPlugins; {
|
|
harpoon2 = {
|
|
package = harpoon2;
|
|
setup = ''require("harpoon"):setup()'';
|
|
};
|
|
};
|
|
|
|
|
|
session.nvim-session-manager = {
|
|
enable = true;
|
|
setupOpts.autoload_mode = "Disabled";
|
|
};
|
|
|
|
keymaps = [
|
|
# Harpoon
|
|
{key = "<leader>ha"; mode = ["n"]; lua = true; action = ''function() require("harpoon"):list():add() end''; desc = "Harpoon add";}
|
|
{key = "<leader>hh"; mode = ["n"]; lua = true; action = ''function() local h = require("harpoon") h.ui:toggle_quick_menu(h:list()) end''; desc = "Harpoon menu";}
|
|
{key = "<leader>1"; mode = ["n"]; lua = true; action = ''function() require("harpoon"):list():select(1) end''; desc = "Harpoon file 1";}
|
|
{key = "<leader>2"; mode = ["n"]; lua = true; action = ''function() require("harpoon"):list():select(2) end''; desc = "Harpoon file 2";}
|
|
{key = "<leader>3"; mode = ["n"]; lua = true; action = ''function() require("harpoon"):list():select(3) end''; desc = "Harpoon file 3";}
|
|
{key = "<leader>4"; mode = ["n"]; lua = true; action = ''function() require("harpoon"):list():select(4) end''; desc = "Harpoon file 4";}
|
|
|
|
# Mini.files
|
|
{key = "-"; mode = ["n"]; lua = true; action = ''function() MiniFiles.open() end''; desc = "Open file explorer";}
|
|
{key = "<leader>-"; mode = ["n"]; lua = true; action = ''function() MiniFiles.open(vim.api.nvim_buf_get_name(0)) end''; desc = "Open file explorer (current file)";}
|
|
|
|
# Snacks picker
|
|
{key = "<leader>ff"; mode = ["n"]; lua = true; action = "function() Snacks.picker.files() end"; desc = "Find Files";}
|
|
{key = "<leader>fg"; mode = ["n"]; lua = true; action = "function() Snacks.picker.grep() end"; desc = "Live Grep";}
|
|
{key = "<leader>fb"; mode = ["n"]; lua = true; action = "function() Snacks.picker.buffers() end"; desc = "Buffer List";}
|
|
{key = "<leader>fh"; mode = ["n"]; lua = true; action = "function() Snacks.picker.help() end"; desc = "Help Tags";}
|
|
{key = "<leader>fo"; mode = ["n"]; lua = true; action = "function() Snacks.picker.recent() end"; desc = "Recent Files";}
|
|
{key = "<leader>fn"; mode = ["n"]; action = "<cmd>Noice<cr>"; desc = "Notifications";}
|
|
|
|
# Sessions
|
|
{key = "<leader>fp"; mode = ["n"]; action = "<cmd>SessionManager load_session<CR>"; desc = "Session List";}
|
|
];
|
|
};
|
|
}
|