@@ -8,17 +8,42 @@ return {
88 ' nvim-neotest/nvim-nio' ,
99
1010 -- Installs the debug adapters for you
11- ' williamboman/mason.nvim' ,
11+ -- 'williamboman/mason.nvim',
1212 ' jay-babu/mason-nvim-dap.nvim' ,
1313
1414 -- Add your own debuggers here
1515 ' leoluz/nvim-dap-go' ,
16+ ' dotnet/vscode-csharp' ,
17+
18+ -- virtual Text
19+ ' theHamsta/nvim-dap-virtual-text' ,
1620 },
1721 config = function ()
1822 require (' dapui' ).setup ()
1923 require (' dap-go' ).setup ()
20-
24+ require (' nvim-dap-virtual-text' ).setup ()
25+ require (' lspconfig' ).omnisharp .setup {}
26+ require (' dap.ext.vscode' ).load_launchjs (nil , {})
2127 local dap , dapui = require ' dap' , require ' dapui'
28+ local ph_status , dotnet_ph = pcall (require , ' utilities.path_finder' )
29+ dap .adapters .coreclr = {
30+ type = ' executable' ,
31+ command = ' netcoredbg' ,
32+ args = { ' --interpreter=vscode' },
33+ }
34+
35+ dap .configurations .cs = {
36+ {
37+ type = ' coreclr' ,
38+ name = ' launch - netcoredbg' ,
39+ request = ' launch' ,
40+ program = function ()
41+ -- return vim.fn.input('Path to dll:', '/Users/marctalcott/Documents/Projects/DotNetProjects/HelloWorld/bin/Debug/net8.0/', 'file')
42+ return vim .fn .input (' Path to dll: ' , vim .fn .getcwd () .. ' /bin/Debug/net8.0/' , ' file' )
43+ end ,
44+ console = ' integratedTerminal' ,
45+ },
46+ }
2247
2348 dap .listeners .before .attach .dapui_config = function ()
2449 dapui .open ()
@@ -33,9 +58,25 @@ return {
3358 dapui .close ()
3459 end
3560
36- vim .keymap .set (' n' , ' <Leader>db' , ' :DapToggleBreakpoint<CR>' )
37- vim .keymap .set (' n' , ' <Leader>dc' , ' :DapContinue<CR>' )
38- vim .keymap .set (' n' , ' <Leader>dx' , ' :DapTerminate<CR>' )
39- vim .keymap .set (' n' , ' <Leader>do' , ' :DapStepOver<CR>' )
61+ -- Keymaps for all
62+ vim .fn .sign_define (' DapBreakpoint' , { text = ' 🔴' , texthl = ' DapBreakpoint' , linehl = ' DapBreakpoint' , numhl = ' DapBreakpoint' })
63+
64+ vim .keymap .set (' n' , ' <Leader>db' , dap .toggle_breakpoint , { desc = ' [d]ebug toggle [b]reakpoint' })
65+ vim .keymap .set (' n' , ' <Leader>dc' , dap .continue , { desc = ' [d]ebug [c]continue' })
66+ vim .keymap .set (' n' , ' <Leader>dC' , dap .close , { desc = ' [d]ebug [C]lose' })
67+ vim .keymap .set (' n' , ' <F5>' , dap .continue , { desc = ' Debug Continue' })
68+
69+ vim .keymap .set (' n' , ' <F8>' , dap .step_over , { desc = ' Step Over' })
70+ vim .keymap .set (' n' , ' <F9>' , dap .step_out , { desc = ' Step Out' })
71+ vim .keymap .set (' n' , ' <F10>' , dap .step_into , { desc = ' Step Into' })
72+ vim .keymap .set (' n' , ' <F12>' , dap .terminate , { desc = ' Terminate' })
73+ vim .keymap .set (' n' , ' <Leader>dx' , dap .terminate , { desc = ' Terminate' })
74+ vim .keymap .set (' n' , ' <Leader>do' , dap .step_over , { desc = ' Step over' })
75+ vim .keymap .set (' n' , ' <Leader>dr' , dap .restart , { desc = ' Restart' })
76+ vim .api .nvim_set_keymap (' n' , ' <leader>dR' , " :lua require('dapui').open({reset = true})<CR>" , { noremap = true })
77+ vim .api .nvim_set_keymap (' n' , ' <leader>ht' , " :lua require('harpoon.ui').toggle_quick_menu()<CR>" , { noremap = true })
78+ vim .keymap .set (' n' , ' <Leader>?' , function ()
79+ require (' dapui' ).eval (nil , { enter = true })
80+ end , { desc = ' Restart' })
4081 end ,
4182}
0 commit comments