tangled
alpha
login
or
join now
dekker.one
/
dotfiles
0
fork
atom
The general configuration of my development environment and many other general computer things.
0
fork
atom
overview
issues
pulls
pipelines
Add debug configuration to NVIM
dekker.one
4 years ago
4b6091d8
6e6fbed0
+57
-3
5 changed files
expand all
collapse all
unified
split
dot_config
nvim
init.lua
lua
lang
debug.lua
options.lua
plugins
appearance.lua
keymap.lua
+10
-2
dot_config/nvim/init.lua
···
27
27
use {
28
28
'SmiteshP/nvim-gps', -- Status line
29
29
requires = 'nvim-treesitter/nvim-treesitter',
30
30
-
config = function() require("nvim-gps").setup({ disable_icons = true }) end,
30
30
+
config = function() require("nvim-gps").setup({
31
31
+
disable_icons = true,
32
32
+
depth = 3,
33
33
+
}) end,
31
34
}
32
35
use {
33
36
'nvim-lualine/lualine.nvim', -- Status line
···
73
76
end,
74
77
}
75
78
use {
79
79
+
'mfussenegger/nvim-dap',
80
80
+
config = require('lang.debug').conf_debug,
81
81
+
}
82
82
+
use {
76
83
'pianocomposer321/yabs.nvim', -- Build System
77
84
config = require('lang.build').conf_yabs,
78
85
}
···
85
92
'hrsh7th/cmp-buffer',
86
93
'hrsh7th/cmp-nvim-lsp',
87
94
'hrsh7th/cmp-nvim-lua',
95
95
+
'hrsh7th/cmp-vsnip',
96
96
+
-- Further Requirements
88
97
'hrsh7th/vim-vsnip',
89
89
-
-- Further Requirements
90
98
'nvim-lua/plenary.nvim'
91
99
},
92
100
config = require('plugins.completion').conf_cmp,
+29
dot_config/nvim/lua/lang/debug.lua
···
1
1
+
-- DAP
2
2
+
function conf_debug()
3
3
+
local dap = require('dap')
4
4
+
dap.adapters.lldb = {
5
5
+
type = 'executable',
6
6
+
command = '/opt/homebrew/opt/llvm/bin/lldb-vscode', -- adjust as needed
7
7
+
name = "lldb"
8
8
+
}
9
9
+
dap.configurations.cpp = {
10
10
+
{
11
11
+
name = "Launch",
12
12
+
type = "lldb",
13
13
+
request = "launch",
14
14
+
program = function()
15
15
+
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
16
16
+
end,
17
17
+
cwd = '${workspaceFolder}',
18
18
+
stopOnEntry = false,
19
19
+
args = {},
20
20
+
runInTerminal = false,
21
21
+
},
22
22
+
}
23
23
+
-- Use the same configuration for C and Rust
24
24
+
dap.configurations.c = dap.configurations.cpp
25
25
+
dap.configurations.rust = dap.configurations.cpp
26
26
+
27
27
+
end
28
28
+
29
29
+
return { conf_debug = conf_debug }
+6
dot_config/nvim/lua/options.lua
···
82
82
vim.opt.smartindent = true
83
83
vim.opt.expandtab = false
84
84
85
85
+
-- Code Folding
86
86
+
vim.opt.foldmethod = 'expr'
87
87
+
vim.opt.foldexpr = 'nvim_treesitter#foldexpr()'
88
88
+
vim.opt.foldminlines = 5
89
89
+
vim.opt.foldnestmax = 2
90
90
+
85
91
-- Save when lost focus
86
92
vim.cmd('au FocusLost * silent! wa')
87
93
+1
dot_config/nvim/lua/plugins/appearance.lua
···
22
22
},
23
23
sections = {
24
24
lualine_c = {
25
25
+
'filename',
25
26
{ gps.get_location, cond = gps.is_available },
26
27
},
27
28
}
+11
-1
dot_config/nvim/lua/plugins/keymap.lua
···
21
21
["<tab>"] = { "<C-^>", "Reopen Last Buffer" },
22
22
-- Buffer
23
23
b = {
24
24
-
name = "buffer",
24
24
+
name = "Buffer",
25
25
b = { "<cmd>lua require('telescope.builtin').buffers()<cr>", "Find Buffer" },
26
26
d = { "<cmd>bd<cr>", "Delete Buffer" },
27
27
m = { "<cmd>%bd|e#<cr>", "Delete Other Buffers" },
28
28
y = { "ggyG<C-o>", "Copy Buffer" },
29
29
+
},
30
30
+
-- Debug
31
31
+
d = {
32
32
+
name = "Debug",
33
33
+
b = {"<cmd>lua require('dap').toggle_breakpoint()<cr>", "Breakpoint"},
34
34
+
B = {"<cmd>lua require('dap').set_breakpoint(vim.fn.input('Breakpoint condition: '))<cr>", "Conditional Breakpoint"},
35
35
+
l = {"<cmd>require('dap').set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<cr>", "Logpoint"},
36
36
+
r = {"<cmd>lua require('dap').repl.open()<cr>", "Open REPL"},
37
37
+
c = {"<cmd>lua require('dap').continue()<cr>", "Continue"},
38
38
+
q = {"<cmd>lua require('dap').close()<cr>", "Close"},
29
39
},
30
40
-- File
31
41
f = {