From 70ac4c0cf5ab1ae0fda4d8dd36ae9b56acf5e5e4 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sat, 6 Jul 2019 14:19:49 +0200 Subject: [PATCH] tools/debugger: add rudimentary dap-mode support --- modules/tools/debugger/config.el | 27 +++++++++++++++++++++++++++ modules/tools/debugger/packages.el | 2 ++ 2 files changed, 29 insertions(+) diff --git a/modules/tools/debugger/config.el b/modules/tools/debugger/config.el index c0ebc2947..f640e7bb1 100644 --- a/modules/tools/debugger/config.el +++ b/modules/tools/debugger/config.el @@ -1,5 +1,32 @@ ;;; tools/debugger/config.el -*- lexical-binding: t; -*- +(def-package! dap-mode + :when (featurep! :tools lsp) + :hook (dap-mode . dap-ui-mode) + :after lsp-mode + :config + (dap-mode 1) + (dolist (module '(((:lang . java) lsp-java dap-java) + ((:lang . go) go-mode dap-go) + ((:lang . elixir) elixir-mode dap-elixir) + ((:lang . php) php-mode dap-php) + ((:lang . ruby) enh-ruby-mode dap-ruby) + ((:lang . python) python dap-python))) + (when (doom-module-p (caar module) (cdar module) '+lsp) + (with-eval-after-load (nth 1 module) + (require (nth 2 module))))) + + (when (featurep! :lang javascript +lsp) + (with-eval-after-load 'js2-mode + (require 'dap-chrome) + (require 'dap-firefox) + (when IS-WINDOWS + (require 'dap-edge)) + (when (executable-find "node") + (require 'dap-node))))) + + +;; FIXME wildly outdated and untested; rewrite me! (def-package! realgud :commands (realgud:gdb realgud:trepanjs realgud:bashdb realgud:zshdb) :config diff --git a/modules/tools/debugger/packages.el b/modules/tools/debugger/packages.el index cb2b24789..b3f8c957e 100644 --- a/modules/tools/debugger/packages.el +++ b/modules/tools/debugger/packages.el @@ -2,3 +2,5 @@ ;;; tools/debugger/packages.el (package! realgud) +(when (featurep! :tools lsp) + (package! dap-mode))