50 lines
1.4 KiB
Nix
50 lines
1.4 KiB
Nix
{ pkgs, lib, ... }:
|
|
|
|
with builtins;
|
|
{
|
|
config.home-manager.users.moritz.programs.neovim.lazy.plugins = with pkgs.vimPlugins; [
|
|
{
|
|
plugin = nvim-dap;
|
|
keys = [
|
|
{ key = "<leader>cb"; cmd = "<cmd>lua require('dap').toggle_breakpoint()<cr>"; desc = "Toggle breakpoint"; }
|
|
{ key = "<leader>cd"; cmd = "<cmd>lua require('dap').continue()<cr>"; desc = "Continue"; }
|
|
];
|
|
dependencies = [
|
|
{
|
|
plugin = nvim-dap-python;
|
|
ft = [ "python" ];
|
|
conf =
|
|
let
|
|
pythonWithDebugpy = pkgs.python3.withPackages (ps: with ps; [ debugpy ]);
|
|
in
|
|
/* lua */ ''
|
|
require("dap-python").setup("${lib.getExe pythonWithDebugpy}")
|
|
'';
|
|
}
|
|
{
|
|
plugin = nvim-dap-virtual-text;
|
|
opts = { };
|
|
}
|
|
{
|
|
plugin = nvim-dap-ui;
|
|
opts = { };
|
|
conf = /* lua */ ''
|
|
local dap = require("dap")
|
|
local dapui = require("dapui")
|
|
dapui.setup(opts)
|
|
dap.listeners.after.event_initialized["dapui_config"] = function()
|
|
dapui.open({})
|
|
end
|
|
dap.listeners.before.event_terminated["dapui_config"] = function()
|
|
dapui.close({})
|
|
end
|
|
dap.listeners.before.event_exited["dapui_config"] = function()
|
|
dapui.close({})
|
|
end
|
|
'';
|
|
}
|
|
];
|
|
}
|
|
];
|
|
}
|