Skip to content

Commit

Permalink
dap python
Browse files Browse the repository at this point in the history
  • Loading branch information
mosheavni committed Jan 5, 2025
1 parent 5c0d946 commit 7190754
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 45 deletions.
19 changes: 9 additions & 10 deletions nvim/.config/nvim/lazy-lock.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"2048.nvim": { "branch": "main", "commit": "aee7c41a9a9473117465132768ae4b4da97435c3" },
"CopilotChat.nvim": { "branch": "main", "commit": "2ebe591cff06018e265263e71e1dbc4c5aa8281e" },
"CursorLineCurrentWindow": { "branch": "master", "commit": "b4eeea98b0d139772969fd243a8802a9883fd2a8" },
"LuaSnip": { "branch": "master", "commit": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d" },
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" },
"SchemaStore.nvim": { "branch": "main", "commit": "fa47222e29d6f6e80eddcdd0f125c27edf274ad5" },
"animatedbg.nvim": { "branch": "main", "commit": "1f39f064d44537f8bf89c53b2d445697dce4e426" },
"auto-indent.nvim": { "branch": "main", "commit": "46801cf8857d42a20a73c40b0a5d3dfe8b2b6192" },
Expand All @@ -23,12 +23,12 @@
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"fidget.nvim": { "branch": "main", "commit": "9238947645ce17d96f30842e61ba81147185b657" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"fzf-lua": { "branch": "main", "commit": "b27cb583c3185cc9a91f0bcb173b55ae461101c3" },
"fzf-lua": { "branch": "main", "commit": "e1eab469be103bab47d8f1a925fd8712c3a91bbb" },
"git-conflict.nvim": { "branch": "main", "commit": "4bbfdd92d547d2862a75b4e80afaf30e73f7bbb4" },
"git-dev.nvim": { "branch": "master", "commit": "730e700bbe94083ce8ea2676934b5db43d32609f" },
"gitsigns.nvim": { "branch": "main", "commit": "5f808b5e4fef30bd8aca1b803b4e555da07fc412" },
"jsonpath.nvim": { "branch": "main", "commit": "2d889eb9c39893e030e902b854122a1615c042ea" },
"lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" },
"lazy.nvim": { "branch": "main", "commit": "72aa3a2624be5dc240646084f7b6a38eb99eb2ce" },
"lazydev.nvim": { "branch": "main", "commit": "8620f82ee3f59ff2187647167b6b47387a13a018" },
"leap.nvim": { "branch": "main", "commit": "c6bfb191f1161fbabace1f36f578a20ac6c7642c" },
"leetcode.nvim": { "branch": "master", "commit": "db7e1cd6b9191b34b4c1f2f96e4e3949cde9f951" },
Expand All @@ -38,7 +38,7 @@
"luvit-meta": { "branch": "main", "commit": "55709f183b0742a7e4f47688c284f81148ad4dc0" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"markview.nvim": { "branch": "main", "commit": "72cd34279e94ee96ee33bdf30a87b00e6d45319d" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "c6c686781f9841d855bf1b926e10aa5e19430a38" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "97d9f1d3ad205dece6bcafd1d71cf1507608f3c7" },
"mason-null-ls.nvim": { "branch": "main", "commit": "de19726de7260c68d94691afb057fa73d3cc53e7" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "8b9363d83b5d779813cdd2819b8308651cec2a09" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
Expand All @@ -53,35 +53,34 @@
"mini.surround": { "branch": "main", "commit": "aa5e245829dd12d8ff0c96ef11da28681d6049aa" },
"nginx.vim": { "branch": "master", "commit": "cffaec54f0c7f9518de053634413a20e90eac825" },
"none-ls-shellcheck.nvim": { "branch": "main", "commit": "0f84461241e76e376a95fb7391deac82dc3efdbf" },
"none-ls.nvim": { "branch": "main", "commit": "00421b9dc7a4d132ca74cfb4c7e8030d05d6fd0b" },
"none-ls.nvim": { "branch": "main", "commit": "20f5650988cd849e18c7f3d2dce4b0e6a260e126" },
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
"nvim-bqf": { "branch": "main", "commit": "ebb6d2689e4427452180f17c53f29f7e460236f1" },
"nvim-cmp": { "branch": "main", "commit": "b555203ce4bd7ff6192e759af3362f9d217e8c89" },
"nvim-dap": { "branch": "master", "commit": "0e673accbb512e1e191dfb4fecea89cc38c1bcdd" },
"nvim-dap-go": { "branch": "main", "commit": "6aa88167ea1224bcef578e8c7160fe8afbb44848" },
"nvim-dap-python": { "branch": "master", "commit": "34282820bb713b9a5fdb120ae8dd85c2b3f49b51" },
"nvim-dap-ui": { "branch": "master", "commit": "e94d98649dccb6a3884b66aabc2e07beb279e535" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" },
"nvim-dap-vscode-js": { "branch": "main", "commit": "03bd29672d7fab5e515fc8469b7d07cc5994bbf6" },
"nvim-hlslens": { "branch": "main", "commit": "e22f8448b571b56d6140427e27e02406bcf4e059" },
"nvim-lspconfig": { "branch": "master", "commit": "f4ed656e876e45cf914d7beb972830561178e232" },
"nvim-lspconfig": { "branch": "master", "commit": "87cdeb16895d64b306bfe9f440840ff55c2a76c0" },
"nvim-luaref": { "branch": "main", "commit": "9cd3ed50d5752ffd56d88dd9e395ddd3dc2c7127" },
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" },
"nvim-pqf": { "branch": "main", "commit": "148ee2ca8b06d83fd9bf6f9b9497724ad39a07d6" },
"nvim-tree.lua": { "branch": "master", "commit": "68fc4c20f5803444277022c681785c5edd11916d" },
"nvim-treesitter": { "branch": "master", "commit": "fae21737be2846a04ae06a41d70b7fc8ad4bf9eb" },
"nvim-treesitter": { "branch": "master", "commit": "556ac68cd33973a38d3f2abac47f361432593fe2" },
"nvim-treesitter-context": { "branch": "master", "commit": "2bcf700b59bc92850ca83a1c02e86ba832e0fae0" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" },
"nvim-ts-autotag": { "branch": "main", "commit": "1cca23c9da708047922d3895a71032bc0449c52d" },
"nvim-ufo": { "branch": "main", "commit": "32cb247b893a384f1888b9cd737264159ecf183c" },
"nvim-web-devicons": { "branch": "master", "commit": "5740b7382429d20b6ed0bbdb0694185af9507d44" },
"oil.nvim": { "branch": "master", "commit": "c6a39a69b2df7c10466f150dde0bd23e49c1fba3" },
"oil.nvim": { "branch": "master", "commit": "c12fad2d225d8f81fadd48521d253607fe25465c" },
"oklch-color-picker.nvim": { "branch": "master", "commit": "24f46c92c2d8228843a4628530ec873469650d16" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
"rose-pine": { "branch": "main", "commit": "91548dca53b36dbb9d36c10f114385f759731be1" },
"snacks.nvim": { "branch": "main", "commit": "d312053f78b4fb55523def179ac502438dd93193" },
"snacks.nvim": { "branch": "main", "commit": "b5f4f27b28f7803509739bfde93dc0b8a953f3f4" },
"sqlite.lua": { "branch": "master", "commit": "cf482586c4f24e197375235a6e310b9b9e80ba83" },
"statuscol.nvim": { "branch": "0.10", "commit": "b0de00dfcf583bdd94284d844aac1b134d47c578" },
"switch.vim": { "branch": "main", "commit": "21defb202ebb8406b8ed63183a43ea026f2645b3" },
Expand Down
97 changes: 63 additions & 34 deletions nvim/.config/nvim/lua/plugins/dap.lua
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ local M = {
'mxsdev/nvim-dap-vscode-js',
'theHamsta/nvim-dap-virtual-text',
'jay-babu/mason-nvim-dap.nvim',
{ 'leoluz/nvim-dap-go', lazy = true },
},
}

Expand All @@ -68,10 +67,22 @@ M.keys = {
}

M.config = function()
local dap = require 'dap'
local dapui = require 'dapui'
local dap_python = require 'dap-python'
local cmp = require 'cmp'
local mason_nvim_dap = require 'mason-nvim-dap'

dapui.setup()

---@diagnostic disable-next-line: missing-fields
require('nvim-dap-virtual-text').setup {
commented = true, -- Show virtual text alongside comment
}

---@diagnostic disable-next-line: missing-fields
mason_nvim_dap.setup {
automatic_installation = true,
ensure_installed = {
'bash',
'chrome',
Expand All @@ -84,20 +95,21 @@ M.config = function()
-- all sources with no handler get passed here

-- Keep original functionality
require('mason-nvim-dap').default_setup(config)
mason_nvim_dap.default_setup(config)
end,
},
}
-- mason_nvim_dap.setup_handlers()

local dap = require 'dap'
local dapui = require 'dapui'
dapui.setup()
require('nvim-dap-virtual-text').setup { enabled = true }
dap_python.setup 'python3'

vim.fn.sign_define('DapBreakpoint', { text = '🛑', texthl = '', linehl = '', numhl = '' })
vim.fn.sign_define('DapBreakpointRejected', { text = '', texthl = '', linehl = '', numhl = '' })
vim.fn.sign_define('DapStopped', { text = '⭕️', texthl = '', linehl = '', numhl = '' })
vim.fn.sign_define('DapBreakpoint', { text = '', texthl = 'DiagnosticSignError', linehl = '', numhl = '' })
vim.fn.sign_define('DapBreakpointRejected', { text = '', texthl = 'DiagnosticSignError', linehl = '', numhl = '' })
vim.fn.sign_define('DapStopped', { text = '', texthl = 'DiagnosticSignWarn', linehl = 'Visual', numhl = 'DiagnosticSignWarn' })

-- Automatically open/close DAP UI
dap.listeners.after.event_initialized['dapui_config'] = function()
dapui.open()
end

-- Actions
local the_actions = actions()
Expand All @@ -110,30 +122,6 @@ M.config = function()
end)
end)

-- Python
require('dap-python').setup(vim.fn.stdpath 'data' .. '/mason/packages/debugpy/venv/bin/python3')

table.insert(dap.configurations.python, {
justMyCode = false,
})

-- lua
dap.configurations.lua = {
{
type = 'nlua',
request = 'attach',
name = 'Attach to running Neovim instance',
},
}

dap.adapters.nlua = function(callback, config)
---@diagnostic disable-next-line: undefined-field
callback { type = 'server', host = config.host or '127.0.0.1', port = config.port or 8086 }
end

-- go
require('dap-go').setup()

-------------
-- Set CMP --
-------------
Expand All @@ -143,12 +131,53 @@ M.config = function()
{ name = 'dap' },
},
})

---@diagnostic disable-next-line: missing-fields
cmp.setup {
enabled = function()
return vim.api.nvim_get_option_value('buftype', { buf = 0 }) ~= 'prompt' or require('cmp_dap').is_dap_buffer()
end,
}

-------------
-- keymaps --
-------------
local opts = { noremap = true, silent = true, buffer = true }

-- Toggle breakpoint
vim.keymap.set('n', '<leader>db', function()
dap.toggle_breakpoint()
end, opts)

-- Continue / Start
vim.keymap.set('n', '<leader>dc', function()
dap.continue()
end, opts)

-- Step Over
vim.keymap.set('n', '<leader>do', function()
dap.step_over()
end, opts)

-- Step Into
vim.keymap.set('n', '<leader>di', function()
dap.step_into()
end, opts)

-- Step Out
vim.keymap.set('n', '<leader>dO', function()
dap.step_out()
end, opts)

-- Keymap to terminate debugging
vim.keymap.set('n', '<leader>dq', function()
require('dap').terminate()
end, opts)

-- Toggle DAP UI
vim.keymap.set('n', '<leader>du', function()
dapui.toggle()
end, opts)
end

return M
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
ansicolor
boto3
botocore
debugpy
docutils
isort
jedi
jmespath
msgpack
iterm2
neovim
pathspec
protobuf
Expand Down

0 comments on commit 7190754

Please sign in to comment.