nvim.nix/config/plugins/utils/telescope.nix

100 lines
2 KiB
Nix
Raw Normal View History

2024-08-08 09:58:48 +08:00
{...}: {
2024-08-06 13:11:01 +08:00
imports = [
2024-08-08 09:58:48 +08:00
./neoclip.nix # Persistent clipboard.
2024-08-06 13:11:01 +08:00
./software-licenses.nix # View common software licenses.
];
2024-08-04 21:19:37 +08:00
plugins.telescope = {
enable = true;
2024-08-06 13:11:01 +08:00
# Install some telescope extensions.
extensions = {
# Enable native fuzzy finder.
fzf-native = {
enable = true;
};
};
# Configure our telescope keymaps.
2024-08-04 21:19:37 +08:00
keymaps = {
2024-08-07 14:27:36 +08:00
# File Pickers
2024-08-04 21:19:37 +08:00
"<leader>ff" = {
action = "find_files";
2024-08-06 13:11:01 +08:00
options = {
desc = "Find project files";
};
2024-08-04 21:19:37 +08:00
};
2024-08-06 13:11:01 +08:00
"<leader>/" = {
action = "live_grep";
options = {
desc = "Grep (root dir)";
};
};
2024-08-07 14:27:36 +08:00
# Vim Pickers
"<leader>fb" = {
action = "buffers";
options = {
desc = "Find open buffers";
};
};
2024-08-06 13:11:01 +08:00
"<leader>:" = {
action = "command_history";
options = {
desc = "Command History";
};
};
"<leader>sc" = {
action = "commands";
options = {
desc = "Search Commands";
};
};
2024-08-07 14:27:36 +08:00
# Git Pickers
"<leader>lc" = {
action = "git_bcommits";
options = {
desc = "List buffers commits";
};
};
"<leader>lC" = {
action = "git_commits";
options = {
desc = "List git commits";
};
};
"<leader>lb" = {
action = "git_branches";
options = {
desc = "List git branches";
};
};
"<leader>ld" = {
action = "git_status";
options = {
desc = "List git diff";
};
};
"<leader>ls" = {
action = "git_stash";
options = {
desc = "List git stash";
};
};
# Extensions
"<leader>p" = {
action = "neoclip";
options.desc = "Persistent Clipboard";
};
2024-08-06 13:11:01 +08:00
"<leader>sl" = {
action = "software-licenses find";
options = {
desc = "Search Software Licenses";
};
2024-08-04 21:19:37 +08:00
};
};
};
}