neovim

Personal neovim configuration files
git clone git://gtms.dev:neovim
Log | Files | Refs

dap.lua (1761B)


      1 local M = {}
      2 
      3 local cpp = function(dap)
      4   dap.adapters.cpp = {
      5     type = 'executable',
      6     attach = {pidProperty = 'pid', pidSelect = 'ask'},
      7     command = 'lldb', -- my binary was called 'lldb-vscode-11'
      8     env = {LLDB_LAUNCH_FLAG_LAUNCH_IN_TTY = 'YES'},
      9     name = 'lldb',
     10   }
     11 
     12   dap.configurations.cpp = {{type = 'cpp', request = 'launch', name = 'Launch File', program = '${file}'}}
     13 end
     14 
     15 local dart = function(dap)
     16   dap.defaults.fallback.external_terminal = {command = '/usr/bin/alacritty', args = {'-e'}}
     17 
     18   dap.adapters.dart = {
     19     type = 'executable',
     20     command = 'node',
     21     args = {os.getenv('HOME') .. '/downloads/Dart-Code/out/dist/debug.js', 'dart'},
     22   }
     23 
     24   dap.configurations.dart = {
     25     {
     26       type = 'dart',
     27       request = 'launch',
     28       name = 'Launch File',
     29       dartSdkPath = os.getenv('HOME') .. '/.local/lib/dart/stable/',
     30       -- flutterSdkPath = os.getenv('HOME') .. "/flutter",
     31       program = '${file}',
     32       cwd = '${workspaceFolder}',
     33     },
     34   }
     35 end
     36 
     37 local function lua(dap)
     38   dap.configurations.lua = {
     39     {
     40       type = 'nlua',
     41       request = 'attach',
     42       name = 'Attach to running Neovim instance',
     43       host = function()
     44         local value = vim.fn.input('Host [127.0.0.1]: ')
     45         if value ~= '' then return value end
     46         return '127.0.0.1'
     47       end,
     48       port = function()
     49         local val = tonumber(vim.fn.input('Port: '))
     50         assert(val, 'Please provide a port number')
     51         return val
     52       end,
     53     },
     54   }
     55 
     56   dap.adapters.nlua = function(callback, config) callback({type = 'server', host = config.host, port = config.port}) end
     57 end
     58 
     59 function M.setup()
     60   local dap = require('dap')
     61   -- cpp(dap)
     62   -- dart(dap)
     63   lua(dap)
     64 end
     65 
     66 function M.setup_ui() require('dapui').setup() end
     67 
     68 return M