flake/nixos/nvim/plugins/telescope.nix

114 lines
2.4 KiB
Nix

{ pkgs, ... }:
{
programs.nixvim = {
extraPackages = with pkgs; [
fd
plocate
glow
];
plugins = {
telescope = {
enable = true;
extensions = {
fzf-native.enable = true;
};
enabledExtensions = [
"repo"
];
settings = {
defaults = {
layout_config = {
prompt_position = "bottom";
};
};
};
};
};
extraPlugins = [
(pkgs.vimUtils.buildVimPlugin {
# https://codeberg.org/esensar/nvim-dev-container
name = "telescope-repo.nvim";
src = pkgs.fetchFromGitHub {
owner = "cljoly";
repo = "telescope-repo.nvim";
rev = "a5395a4bf0fd742cc46b4e8c50e657062f548ba9";
sha256 = "sha256-cIovB45hfG4lDK0VBIgK94dk2EvGXZtfAJETkQ+lrcw=";
};
})
];
keymaps = [
{
mode = "n";
key = "<leader>t";
action = ":Telescope<CR>";
options = {
desc = "Telescope";
silent = true;
};
}
{
mode = "n";
key = "<leader>tf";
action = ":Telescope find_files<CR>";
options = {
desc = "Find Files";
silent = true;
};
}
{
mode = "n";
key = "<leader>tg";
action = ":Telescope live_grep<CR>";
options = {
desc = "Live Grep";
silent = true;
};
}
{
mode = "n";
key = "<leader>tb";
action = ":Telescope buffers<CR>";
options = {
desc = "Buffers";
silent = true;
};
}
{
mode = "n";
key = "<leader>fc";
action = ":Telescope colorscheme<CR>";
options = {
desc = "Color Schemes";
silent = true;
};
}
{
mode = "n";
key = "<leader>tk";
action = ":Telescope keymaps<CR>";
options = {
desc = "Keymaps";
silent = true;
};
}
{
mode = "n";
key = "<leader>tp";
action = ":Telescope repo list<CR>";
options = {
desc = "Projects";
silent = true;
};
}
{
mode = "n";
key = "<leader>tc";
action = ":Telescope commands<CR>";
options = {
desc = "Commands";
silent = true;
};
}
];
};
}