spacemacs/contrib/gtags/funcs.el
Tu Do 38ce1ea4bd Fix ggtags eldoc integration
- ggtags eldoc works only if we enable ggtags-mode.
- For that reason, move the code that enable eldoc into its own
function.
- Also enable gtags for some other modes that have no layer.
2015-04-26 00:45:58 -04:00

39 lines
1.3 KiB
EmacsLisp

;;; funcs.el --- gtags functions File
;;
;; Copyright (c) 2012-2014 Sylvain Benner
;; Copyright (c) 2014-2015 Sylvain Benner & Contributors
;;
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
(defun spacemacs/helm-gtags-define-keys-for-mode (mode)
"Define key bindings for the specific MODE."
(when (fboundp mode)
(let ((hook (intern (concat (symbol-name mode) "-hook"))))
(add-hook hook 'helm-gtags-mode))
(evil-leader/set-key-for-mode mode
"mgc" 'helm-gtags-create-tags
"mgd" 'helm-gtags-find-tag
"mgf" 'helm-gtags-select-path
"mgg" 'helm-gtags-dwim
"mgi" 'helm-gtags-tags-in-this-function
"mgl" 'helm-gtags-parse-file
"mgn" 'helm-gtags-next-history
"mgp" 'helm-gtags-previous-history
"mgr" 'helm-gtags-find-rtag
"mgR" 'helm-gtags-resume
"mgs" 'helm-gtags-select
"mgS" 'helm-gtags-show-stack
"mgu" 'helm-gtags-update-tags)))
(defun spacemacs/ggtags-enable-eldoc (mode)
(add-hook (intern (concat (symbol-name mode) "-hook"))
(lambda ()
(ggtags-mode 1)
(setq-local eldoc-documentation-function
#'ggtags-eldoc-function))))