leoliu pushed a commit to branch master in repository elpa. commit e7c5371028912e07c37de2bf1c80c88bf51a1fea Author: Leo Liu <sdl....@gmail.com> Date: Wed Mar 12 17:48:43 2014 +0800
Fix ggtags-with-current-project to include GTAGSCONF --- ggtags.el | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) diff --git a/ggtags.el b/ggtags.el index 18f10b9..fa007a9 100644 --- a/ggtags.el +++ b/ggtags.el @@ -295,13 +295,15 @@ properly update `ggtags-mode-map'." (:copier nil) (:type vector) :named) - root tag-size has-refs has-path-style has-color dirty-p mtime timestamp) + root config tag-size has-refs has-path-style has-color dirty-p mtime timestamp) (defun ggtags-make-project (root) (cl-check-type root string) (pcase (nthcdr 5 (file-attributes (expand-file-name "GTAGS" root))) (`(,mtime ,_ ,tag-size . ,_) (let* ((default-directory (file-name-as-directory root)) + (config (cl-some (lambda (c) (and (file-exists-p c) c)) + '(".globalrc" "gtags.conf"))) (rtags-size (nth 7 (file-attributes "GRTAGS"))) (has-refs (when rtags-size @@ -322,6 +324,7 @@ properly update `ggtags-mode-map'." 'has-color)))) (puthash default-directory (ggtags-project--make :root default-directory + :config config :tag-size tag-size :has-refs has-refs :has-path-style has-path-style @@ -481,7 +484,13 @@ Value is new modtime if updated." (and ,gtagsroot (list (concat "GTAGSROOT=" ,gtagsroot))) (and (ggtags-find-project) (not (ggtags-project-has-refs (ggtags-find-project))) - (list "GTAGSLABEL=ctags"))))) + (list "GTAGSLABEL=ctags")) + (and ggtags-use-project-gtagsconf ,gtagsroot + (ggtags-project-config (ggtags-find-project)) + (list (concat "GTAGSCONF=" + (expand-file-name (ggtags-project-config + (ggtags-find-project)) + ,gtagsroot))))))) (unwind-protect (save-current-buffer ,@body) (setq ggtags-project-root ,root)))))