flake/modules/home/terminal/nvim/octo.nix
2026-03-03 15:16:52 +00:00

54 lines
1.3 KiB
Nix

{
pkgs,
lib,
config,
...
}: {
options.mods.octo.enable =
lib.mkEnableOption "enables octo";
config = lib.mkIf config.mods.octo.enable {
programs.nvf.settings.vim.lazy.plugins."octo.nvim" = {
package = pkgs.vimPlugins.octo-nvim;
setupModule = "octo";
setupOpts = {
picker = "telescope";
enable_builtin = true;
};
cmd = ["Octo"];
keys = [
{
key = "<leader>oi";
mode = "n";
action = "<CMD>Octo issue list<CR>";
desc = "List GitHub Issues";
}
{
key = "<leader>op";
mode = "n";
action = "<CMD>Octo pr list<CR>";
desc = "List GitHub PullRequests";
}
{
key = "<leader>od";
mode = "n";
action = "<CMD>Octo discussion list<CR>";
desc = "List GitHub Discussions";
}
{
key = "<leader>on";
mode = "n";
action = "<CMD>Octo notification list<CR>";
desc = "List GitHub Notifications";
}
{
key = "<leader>os";
mode = "n";
action = "function() require('octo.utils').create_base_search_command { include_current_repo = true } end";
lua = true;
desc = "Search GitHub";
}
];
};
};
}