From fa2f4574d8699ae2cf8175a49315876ed68561bf Mon Sep 17 00:00:00 2001 From: Camden Dixie O'Brien Date: Fri, 1 Jan 2021 00:00:32 +0000 Subject: [PATCH] Add ggtags config for code navigation to C language integration --- config.org | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/config.org b/config.org index e199a84..8a3827f 100644 --- a/config.org +++ b/config.org @@ -282,6 +282,24 @@ needs to be set up to install them if they aren't already. (use-package cmake-mode) #+end_src +*** Code Navigation + Using GNU Global for now, so hook =ggtags-mode= into =c-mode=: + + #+begin_src emacs-lisp + (use-package ggtags + :config + (add-hook 'c-mode-common-hook + (lambda () (ggtags-mode 1)))) + #+end_src + + And, of course, add some keybindings + + #+begin_src emacs-lisp + (define-key ggtags-mode-map (kbd "C-c g r") 'ggtags-find-reference) + (define-key ggtags-mode-map (kbd "C-c g d") 'ggtags-find-definition) + (define-key ggtags-mode-map (kbd "C-c g u") 'ggtags-update-tags) + #+end_src + ** Haskell My workflow with Haskell is very REPL-based, so I always want =interactive-haskell-mode= on.