2024-12-02 23:56:19 -05:00
|
|
|
(use-package emacs
|
|
|
|
:ensure nil
|
|
|
|
:hook ((prog-mode . electric-pair-mode)))
|
|
|
|
|
2024-12-08 13:59:12 -05:00
|
|
|
;; (use-package idle-highlight-mode
|
|
|
|
;; :ensure t
|
|
|
|
;; :hook ((prog-mode . idle-highlight-mode)))
|
2024-12-03 20:57:26 -05:00
|
|
|
|
2024-12-02 23:56:19 -05:00
|
|
|
(use-package treesit-auto
|
2024-12-03 11:09:25 -05:00
|
|
|
:ensure t
|
2024-12-02 23:56:19 -05:00
|
|
|
:custom
|
|
|
|
(treesit-auto-install 'prompt)
|
|
|
|
:config
|
|
|
|
(treesit-auto-add-to-auto-mode-alist 'all)
|
|
|
|
(global-treesit-auto-mode))
|
2024-12-07 17:40:32 -05:00
|
|
|
|
|
|
|
(defun gud-quit ()
|
|
|
|
"Quits out of the current GDB session."
|
|
|
|
(interactive)
|
|
|
|
(gud-basic-call "quit"))
|
|
|
|
|
|
|
|
(defun gud-start ()
|
|
|
|
"Starts execution of the program in GDB."
|
|
|
|
(interactive)
|
|
|
|
(gud-basic-call "start"))
|
|
|
|
|
|
|
|
(defun gud-kill ()
|
|
|
|
"Terminates execution of the running program in GDB."
|
|
|
|
(interactive)
|
|
|
|
(gud-basic-call "kill"))
|
|
|
|
|
|
|
|
(defun gud-step-into ()
|
|
|
|
"Steps execution to the next line."
|
|
|
|
(interactive)
|
|
|
|
(gud-step 1))
|
|
|
|
|
|
|
|
(defun gud-step-over ()
|
|
|
|
"Steps execution to the next line, skipping over functions."
|
|
|
|
(interactive)
|
|
|
|
(gud-next 1))
|
|
|
|
|
|
|
|
(defun gud-step-out ()
|
|
|
|
"Steps execution out of the current function."
|
|
|
|
(interactive)
|
|
|
|
(gud-finish 1))
|
|
|
|
|
|
|
|
(defun gud-set-breakpoint ()
|
|
|
|
"Sets a debugger breakpoint on the current line."
|
|
|
|
(interactive)
|
|
|
|
(gud-break 1))
|
|
|
|
|
|
|
|
(defun gud-remove-breakpoint ()
|
|
|
|
"Removes a debugger breakpoint from the current line."
|
|
|
|
(interactive)
|
|
|
|
(gud-remove 1))
|
|
|
|
|
|
|
|
(use-package gdb-mi
|
|
|
|
:bind
|
|
|
|
( :map gud-minor-mode-map
|
|
|
|
("<f5>" . 'gud-start)
|
|
|
|
("S-<f5>" . 'gud-kill)
|
|
|
|
("<f9>" . 'gud-cont)
|
|
|
|
("<f7>" . 'gud-step-into)
|
|
|
|
("<f8>" . 'gud-step-over)
|
|
|
|
("S-<f8>" . 'gud-step-out)
|
2024-12-08 19:14:51 -05:00
|
|
|
("C-c C-d b" . 'gud-set-breakpoint)
|
|
|
|
("C-c C-d B" . 'gud-remove-breakpoint)
|
2024-12-07 17:40:32 -05:00
|
|
|
("C-q" . 'gud-quit))
|
|
|
|
:config
|
|
|
|
(setq gdb-many-windows t)
|
|
|
|
(setq gdb-restore-window-configuration-after-quit 'if-gdb-many-windows)
|
|
|
|
(setq gdb-debuginfod-enable-setting nil)
|
|
|
|
(gud-tooltip-mode t))
|
|
|
|
|
2024-12-08 17:31:13 -05:00
|
|
|
(defun gered/enable-lsp ()
|
|
|
|
(interactive)
|
|
|
|
(add-hook 'prog-mode-hook 'lsp)
|
|
|
|
(message "Adding lsp hook to prog-modes"))
|
|
|
|
|
|
|
|
(defun gered/disable-lsp ()
|
|
|
|
(interactive)
|
|
|
|
(remove-hook 'prog-mode-hook 'lsp)
|
|
|
|
(message "Removing lsp hook from prog-modes"))
|
|
|
|
|
|
|
|
(use-package lsp-mode
|
|
|
|
:ensure t
|
|
|
|
:init
|
|
|
|
(setq lsp-keymap-prefix "M-z")
|
|
|
|
:hook
|
|
|
|
((prog-mode . lsp)
|
|
|
|
(lsp-mode . lsp-enable-which-key-integration))
|
|
|
|
:config
|
|
|
|
(setq lsp-enable-on-type-formatting nil)
|
|
|
|
(setq lsp-headerline-breadcrumb-enable nil)
|
|
|
|
(setq lsp-enable-snippet nil)
|
|
|
|
;; seems to remove the semi-annoying "Unable to autoconfigure company-mode" warning
|
|
|
|
;; but still leaves completion via corfu working?
|
|
|
|
(setq lsp-completion-provider :none)
|
|
|
|
:commands lsp)
|
|
|
|
|
|
|
|
(use-package lsp-ui
|
|
|
|
:ensure t
|
|
|
|
:commands lsp-ui)
|
|
|
|
|
|
|
|
(use-package lsp-treemacs
|
|
|
|
:ensure t
|
|
|
|
:after lsp-mode
|
|
|
|
:commands lsp-treemacs-errors-list)
|
|
|
|
|
|
|
|
(use-package dap-mode
|
|
|
|
:ensure t
|
2024-12-08 19:14:26 -05:00
|
|
|
:bind
|
|
|
|
( :map dap-mode-map
|
|
|
|
("<f9>" . 'dap-continue)
|
|
|
|
("<f7>" . 'dap-step-in)
|
|
|
|
("<f8>" . 'dap-next)
|
|
|
|
("S-<f8>" . 'dap-step-out)
|
|
|
|
("C-c C-d b" . 'dap-breakpoint-add)
|
|
|
|
("C-c C-d B" . 'dap-breakpoint-delete)
|
|
|
|
("C-c C-d e" . 'dap-eval-thing-at-point)
|
|
|
|
("C-c C-d E" . 'dap-eval)
|
|
|
|
("C-c C-d s" . 'dap-switch-stack-frame)
|
|
|
|
("C-q" . 'dap-disconnect)
|
|
|
|
("M-<prior>" . 'dap-up-stack-frame)
|
|
|
|
("M-<next>" . 'dap-down-stack-frame))
|
2024-12-08 17:31:13 -05:00
|
|
|
:commands dap-mode
|
2024-12-08 19:14:26 -05:00
|
|
|
:init
|
|
|
|
(setq dap-auto-configure-features '(sessions locals tooltip breakpoints expressions))
|
2024-12-08 17:31:13 -05:00
|
|
|
:config
|
|
|
|
(use-package dap-gdb))
|