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.