return { -- depends on the git extra for highlighting and auto-completion of github issues/prs { import = "lazyvim.plugins.extras.lang.git" }, -- Octo { "pwntester/octo.nvim", cmd = "Octo", event = { { event = "BufReadCmd", pattern = "octo://*" } }, init = function() vim.treesitter.language.register("markdown", "octo") end, opts = { enable_builtin = true, default_to_projects_v2 = true, default_merge_method = "squash", picker = "telescope", }, keys = { { "gi", "Octo issue list", desc = "List Isues (Octo)" }, { "gI", "Octo issue search", desc = "Search Isues (Octo)" }, { "gp", "Octo pr list", desc = "List PRs (Octo)" }, { "gP", "Octo pr search", desc = "Search PRs (Octo)" }, { "gr", "Octo repo list", desc = "List Repos (Octo)" }, { "gS", "Octo search", desc = "Search (Octo)" }, { "a", "", desc = "+assignee (Otco)", ft = "octo" }, { "c", "", desc = "+comment/code (Otco)", ft = "octo" }, { "l", "", desc = "+label (Otco)", ft = "octo" }, { "i", "", desc = "+issue (Otco)", ft = "octo" }, { "r", "", desc = "+react (Otco)", ft = "octo" }, { "p", "", desc = "+pr (Otco)", ft = "octo" }, { "v", "", desc = "+review (Otco)", ft = "octo" }, { "@", "@", mode = "i", ft = "octo", silent = true }, { "#", "#", mode = "i", ft = "octo", silent = true }, }, }, -- Octo Picker { "pwntester/octo.nvim", opts = function(_, opts) if LazyVim.has("telescope.nvim") then opts.picker = "telescope" elseif LazyVim.has("fzf-lua") then opts.picker = "fzf-lua" else LazyVim.error("`octo.nvim` requires `telescope.nvim` or `fzf-lua`") end end, }, }