diff --git a/home/homemodules/neovim/default.nix b/home/homemodules/neovim/default.nix index 9307618f..fb5da9cc 100644 --- a/home/homemodules/neovim/default.nix +++ b/home/homemodules/neovim/default.nix @@ -552,6 +552,21 @@ in { }; }; + devdocs = rec { + name = "devdocs"; + pkg = pkgs.vimPlugins.devdocs-nvim; + lazy = true; + cmd = ["DevDocs"]; + dependencies = [snacks]; + config = mkDefaultConfig name; + # opts = { + # ensure_installed = [ + # "c" + # "cpp" + # ]; + # }; + }; + direnv = { name = "direnv"; pkg = pkgs.vimPlugins.direnv-vim; @@ -2160,6 +2175,7 @@ in { # dap # Debug adapter protocol # TODO: # dap-ui # Debugger UI # TODO: + devdocs diffview # Git diff # TODO: Check the keybindings direnv # Automatically load local environments diff --git a/home/homemodules/neovim/mappings.nix b/home/homemodules/neovim/mappings.nix index c7ede9da..348e582c 100644 --- a/home/homemodules/neovim/mappings.nix +++ b/home/homemodules/neovim/mappings.nix @@ -505,6 +505,48 @@ _: let action = "lua Snacks.picker.help()"; options.desc = "Helptags Picker"; } + { + mode = "n"; + key = "hd"; + action = "+devdocs"; + } + # { + # mode = "n"; + # key = "hdd"; + # action.__raw = '' + # function() + # local devdocs = require("devdocs") + # local installedDocs = devdocs.GetInstalledDocs() + # vim.ui.select(installedDocs, {}, function(selected) + # if not selected then + # return + # end + # local docDir = devdocs.GetDocDir(selected) + # -- prettify the filename as you wish + # Snacks.picker.files({ cwd = docDir }) + # end) + # end + # ''; + # options.desc = "Open Devdocs"; + # } + { + mode = "n"; + key = "hdd"; + action = "DevDocs get"; + options.desc = "Open Devdocs in Split"; + } + { + mode = "n"; + key = "hdi"; + action = "DevDocs install"; + options.desc = "Install Devdocs"; + } + { + mode = "n"; + key = "hdD"; + action = "DevDocs delete"; + options.desc = "Delete Devdocs"; + } ]; leader-quit = [