Adding python
This commit is contained in:
parent
f8d2160bbf
commit
a16fcac463
|
@ -0,0 +1,44 @@
|
|||
return {
|
||||
-- https://github.com/mfussenegger/nvim-dap-python
|
||||
'mfussenegger/nvim-dap-python',
|
||||
ft = 'python',
|
||||
dependencies = {
|
||||
-- https://github.com/mfussenegger/nvim-dap
|
||||
'mfussenegger/nvim-dap',
|
||||
},
|
||||
config = function()
|
||||
-- Update the path passed to setup to point to your system or virtual env python binary
|
||||
require('dap-python').setup '/Library/Frameworks/Python.framework/Versions/3.12/bin/python3'
|
||||
vim.keymap.set('n', '<leader>bb', "<cmd>lua require'dap'.toggle_breakpoint()<cr>")
|
||||
vim.keymap.set('n', '<leader>bc', "<cmd>lua require'dap'.set_breakpoint(vim.fn.input('Breakpoint condition: '))<cr>")
|
||||
vim.keymap.set('n', '<leader>bl', "<cmd>lua require'dap'.set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<cr>")
|
||||
vim.keymap.set('n', '<leader>br', "<cmd>lua require'dap'.clear_breakpoints()<cr>")
|
||||
vim.keymap.set('n', '<leader>ba', '<cmd>Telescope dap list_breakpoints<cr>')
|
||||
vim.keymap.set('n', '<leader>dc', "<cmd>lua require'dap'.continue()<cr>")
|
||||
vim.keymap.set('n', '<leader>dj', "<cmd>lua require'dap'.step_over()<cr>")
|
||||
vim.keymap.set('n', '<leader>dk', "<cmd>lua require'dap'.step_into()<cr>")
|
||||
vim.keymap.set('n', '<leader>do', "<cmd>lua require'dap'.step_out()<cr>")
|
||||
vim.keymap.set('n', '<leader>dd', function()
|
||||
require('dap').disconnect()
|
||||
require('dapui').close()
|
||||
end)
|
||||
vim.keymap.set('n', '<leader>dt', function()
|
||||
require('dap').terminate()
|
||||
require('dapui').close()
|
||||
end)
|
||||
vim.keymap.set('n', '<leader>dr', "<cmd>lua require'dap'.repl.toggle()<cr>")
|
||||
vim.keymap.set('n', '<leader>dl', "<cmd>lua require'dap'.run_last()<cr>")
|
||||
vim.keymap.set('n', '<leader>di', function()
|
||||
require('dap.ui.widgets').hover()
|
||||
end)
|
||||
vim.keymap.set('n', '<leader>d?', function()
|
||||
local widgets = require 'dap.ui.widgets'
|
||||
widgets.centered_float(widgets.scopes)
|
||||
end)
|
||||
vim.keymap.set('n', '<leader>df', '<cmd>Telescope dap frames<cr>')
|
||||
vim.keymap.set('n', '<leader>dh', '<cmd>Telescope dap commands<cr>')
|
||||
vim.keymap.set('n', '<leader>de', function()
|
||||
require('telescope.builtin').diagnostics { default_text = ':E:' }
|
||||
end)
|
||||
end,
|
||||
}
|
|
@ -0,0 +1,115 @@
|
|||
-- Debugging Support
|
||||
return {
|
||||
-- https://github.com/rcarriga/nvim-dap-ui
|
||||
'rcarriga/nvim-dap-ui',
|
||||
event = 'VeryLazy',
|
||||
dependencies = {
|
||||
-- https://github.com/mfussenegger/nvim-dap
|
||||
'mfussenegger/nvim-dap',
|
||||
-- https://github.com/theHamsta/nvim-dap-virtual-text
|
||||
'theHamsta/nvim-dap-virtual-text', -- inline variable text while debugging
|
||||
-- https://github.com/nvim-telescope/telescope-dap.nvim
|
||||
'nvim-telescope/telescope-dap.nvim', -- telescope integration with dap
|
||||
'nvim-neotest/nvim-nio',
|
||||
},
|
||||
opts = {
|
||||
controls = {
|
||||
element = 'repl',
|
||||
enabled = false,
|
||||
icons = {
|
||||
disconnect = '',
|
||||
pause = '',
|
||||
play = '',
|
||||
run_last = '',
|
||||
step_back = '',
|
||||
step_into = '',
|
||||
step_out = '',
|
||||
step_over = '',
|
||||
terminate = '',
|
||||
},
|
||||
},
|
||||
element_mappings = {},
|
||||
expand_lines = true,
|
||||
floating = {
|
||||
border = 'single',
|
||||
mappings = {
|
||||
close = { 'q', '<Esc>' },
|
||||
},
|
||||
},
|
||||
force_buffers = true,
|
||||
icons = {
|
||||
collapsed = '',
|
||||
current_frame = '',
|
||||
expanded = '',
|
||||
},
|
||||
layouts = {
|
||||
{
|
||||
elements = {
|
||||
{
|
||||
id = 'scopes',
|
||||
size = 0.50,
|
||||
},
|
||||
{
|
||||
id = 'stacks',
|
||||
size = 0.30,
|
||||
},
|
||||
{
|
||||
id = 'watches',
|
||||
size = 0.10,
|
||||
},
|
||||
{
|
||||
id = 'breakpoints',
|
||||
size = 0.10,
|
||||
},
|
||||
},
|
||||
size = 40,
|
||||
position = 'left', -- Can be "left" or "right"
|
||||
},
|
||||
{
|
||||
elements = {
|
||||
'repl',
|
||||
'console',
|
||||
},
|
||||
size = 10,
|
||||
position = 'bottom', -- Can be "bottom" or "top"
|
||||
},
|
||||
},
|
||||
mappings = {
|
||||
edit = 'e',
|
||||
expand = { '<CR>', '<2-LeftMouse>' },
|
||||
open = 'o',
|
||||
remove = 'd',
|
||||
repl = 'r',
|
||||
toggle = 't',
|
||||
},
|
||||
render = {
|
||||
indent = 1,
|
||||
max_value_lines = 100,
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
local dap = require 'dap'
|
||||
require('dapui').setup(opts)
|
||||
|
||||
dap.listeners.after.event_initialized['dapui_config'] = function()
|
||||
require('dapui').open()
|
||||
end
|
||||
|
||||
dap.listeners.before.event_terminated['dapui_config'] = function()
|
||||
-- Commented to prevent DAP UI from closing when unit tests finish
|
||||
-- require('dapui').close()
|
||||
end
|
||||
|
||||
dap.listeners.before.event_exited['dapui_config'] = function()
|
||||
-- Commented to prevent DAP UI from closing when unit tests finish
|
||||
-- require('dapui').close()
|
||||
end
|
||||
|
||||
-- Add dap configurations based on your language/adapter settings
|
||||
-- https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation
|
||||
-- dap.configurations.xxxxxxxxxx = {
|
||||
-- {
|
||||
-- },
|
||||
-- }
|
||||
end,
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
-- Inline Debug Text
|
||||
return {
|
||||
-- https://github.com/theHamsta/nvim-dap-virtual-text
|
||||
'theHamsta/nvim-dap-virtual-text',
|
||||
lazy = true,
|
||||
opts = {
|
||||
-- Display debug text as a comment
|
||||
commented = true,
|
||||
-- Customize virtual text
|
||||
display_callback = function(variable, buf, stackframe, node, options)
|
||||
if options.virt_text_pos == 'inline' then
|
||||
return ' = ' .. variable.value
|
||||
else
|
||||
return variable.name .. ' = ' .. variable.value
|
||||
end
|
||||
end,
|
||||
},
|
||||
}
|
Loading…
Reference in New Issue