~ruther/emacs.d

d3c93a3771657e11db562f4a88f870ed7214af87 — Rutherther 2 months ago 4f62636
feat: configure lsp-mode, dap-mode
1 files changed, 33 insertions(+), 12 deletions(-)

M init.el
M init.el => init.el +33 -12
@@ 408,11 408,6 @@
    "b B" '(consult-project-buffer :wk "Switch project buffer")
    "," '(consult-buffer :wk "Switch buffer")

    "d h" '(consult-history :wk "Consult history")
    "d k" '(consult-kmacro :wk "Consult kmacro")
    "d m" '(consult-man :wk "Consult uan")
    "d i" '(consult-info :wk "Consult info")

    "y" '(consult-yank-pop :wk "Yank pop")

    "s" '(:keymap search-map :wk "Search")


@@ 757,9 752,6 @@
;; Help
(my-use-package helpful
  :ensure t
  :general
  (my-leader
    "d d" '(helpful-at-point :wk "Helpful at point"))
  :bind (
    ([remap describe-function] . helpful-function)
    ([remap describe-variable] . helpful-variable)


@@ 1298,7 1290,9 @@
   "gR" '(lsp-rename :wk "Rename identifier")
   "g." '(lsp-execute-code-action :wk "Code actions"))
  :custom
  (lsp-inlay-hint-enable t)
  (lsp-enable-suggest-server-download nil)
  (lsp-auto-execute-action nil)
  :config
  (defun lsp-conditional ()
    "Enable LSP only if already running in project."


@@ 1311,8 1305,19 @@

(my-use-package lsp-ui
  :ensure t
  :general
  (my-leader lsp-mode-map
    "d" '(lsp-ui-doc-show :wk "Show doc"))
  :custom
  (lsp-ui-doc-show-with-mouse nil)
  :hook
  (lsp-mode . lsp-ui-mode))
  (lsp-mode . lsp-ui-mode)
  :config
  (evil-define-key 'normal 'lsp-ui-doc-frame-mode
    [?q] #'lsp-ui-doc-unfocus-frame)
  (evil-normalize-keymaps)
  (evil-define-key 'normal 'lsp-ui-doc-mode
    [?K] #'lsp-ui-doc-focus-frame))

(my-use-package envrc
  :ensure t


@@ 1331,10 1336,26 @@
  :config
  (fancy-compilation-mode))

(my-use-package dape
(my-use-package dap-mode
  :ensure t
  :custom
  (dape-buffer-window-arrangement 'right))
  :general
  (my-leader
    "d q" '(dap-disconnect :wk "Disconnect")
    "d d" '(dap-hydra :wk "Hydra")
    "d Q" '(dap-delete-session :wk "Delete session")
    "d s" '(dap-ui-sessions :wk "List sessions"))
  :config
  (dap-auto-configure-mode)
  (require 'dap-gdb)
  (customize-set-variable 'dap-gdb-debug-program '("rust-gdb" "-i" "dap"))

  (inheritenv-add-advice 'dap-debug)

  ;; Enable dap-mode features
  (dap-ui-mode 1)
  (dap-tooltip-mode 1)
  (tooltip-mode 1)
  (dap-ui-controls-mode 1))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Languages