1
0

Add debug configuration to NVIM

This commit is contained in:
Jip J. Dekker 2022-02-28 17:11:38 +11:00
parent 6e6fbed02c
commit 4b6091d8e9
No known key found for this signature in database
GPG Key ID: 517DF4A00618C9C3
5 changed files with 57 additions and 3 deletions

View File

@ -27,7 +27,10 @@ return require('packer').startup(function(use)
use {
'SmiteshP/nvim-gps', -- Status line
requires = 'nvim-treesitter/nvim-treesitter',
config = function() require("nvim-gps").setup({ disable_icons = true }) end,
config = function() require("nvim-gps").setup({
disable_icons = true,
depth = 3,
}) end,
}
use {
'nvim-lualine/lualine.nvim', -- Status line
@ -72,6 +75,10 @@ return require('packer').startup(function(use)
require('lang.zinc')
end,
}
use {
'mfussenegger/nvim-dap',
config = require('lang.debug').conf_debug,
}
use {
'pianocomposer321/yabs.nvim', -- Build System
config = require('lang.build').conf_yabs,
@ -85,8 +92,9 @@ return require('packer').startup(function(use)
'hrsh7th/cmp-buffer',
'hrsh7th/cmp-nvim-lsp',
'hrsh7th/cmp-nvim-lua',
'hrsh7th/vim-vsnip',
'hrsh7th/cmp-vsnip',
-- Further Requirements
'hrsh7th/vim-vsnip',
'nvim-lua/plenary.nvim'
},
config = require('plugins.completion').conf_cmp,

View File

@ -0,0 +1,29 @@
-- DAP
function conf_debug()
local dap = require('dap')
dap.adapters.lldb = {
type = 'executable',
command = '/opt/homebrew/opt/llvm/bin/lldb-vscode', -- adjust as needed
name = "lldb"
}
dap.configurations.cpp = {
{
name = "Launch",
type = "lldb",
request = "launch",
program = function()
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
end,
cwd = '${workspaceFolder}',
stopOnEntry = false,
args = {},
runInTerminal = false,
},
}
-- Use the same configuration for C and Rust
dap.configurations.c = dap.configurations.cpp
dap.configurations.rust = dap.configurations.cpp
end
return { conf_debug = conf_debug }

View File

@ -82,6 +82,12 @@ vim.opt.tabstop = 2
vim.opt.smartindent = true
vim.opt.expandtab = false
-- Code Folding
vim.opt.foldmethod = 'expr'
vim.opt.foldexpr = 'nvim_treesitter#foldexpr()'
vim.opt.foldminlines = 5
vim.opt.foldnestmax = 2
-- Save when lost focus
vim.cmd('au FocusLost * silent! wa')

View File

@ -22,6 +22,7 @@ local conf_theme = function()
},
sections = {
lualine_c = {
'filename',
{ gps.get_location, cond = gps.is_available },
},
}

View File

@ -21,12 +21,22 @@ local mappings = {
["<tab>"] = { "<C-^>", "Reopen Last Buffer" },
-- Buffer
b = {
name = "buffer",
name = "Buffer",
b = { "<cmd>lua require('telescope.builtin').buffers()<cr>", "Find Buffer" },
d = { "<cmd>bd<cr>", "Delete Buffer" },
m = { "<cmd>%bd|e#<cr>", "Delete Other Buffers" },
y = { "ggyG<C-o>", "Copy Buffer" },
},
-- Debug
d = {
name = "Debug",
b = {"<cmd>lua require('dap').toggle_breakpoint()<cr>", "Breakpoint"},
B = {"<cmd>lua require('dap').set_breakpoint(vim.fn.input('Breakpoint condition: '))<cr>", "Conditional Breakpoint"},
l = {"<cmd>require('dap').set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<cr>", "Logpoint"},
r = {"<cmd>lua require('dap').repl.open()<cr>", "Open REPL"},
c = {"<cmd>lua require('dap').continue()<cr>", "Continue"},
q = {"<cmd>lua require('dap').close()<cr>", "Close"},
},
-- File
f = {
name = "File",