emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ELPA-diffs] ELPA branch, master, updated. 2a045fc08430e8256233f6a3d3f4e


From: Leo Liu
Subject: [ELPA-diffs] ELPA branch, master, updated. 2a045fc08430e8256233f6a3d3f4e4761a51fb36
Date: Tue, 12 Nov 2013 09:28:13 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "ELPA".

The branch, master has been updated
       via  2a045fc08430e8256233f6a3d3f4e4761a51fb36 (commit)
       via  f5c81a5a432c19f0e38d25a7d1bf8226af8a93e5 (commit)
       via  b97581315bb72b35b00a3457cad0a5e5147d4af3 (commit)
       via  6bcbe01f43456e02768f3aade72535671e6ed812 (commit)
       via  f40bde90c264f058b1e9f2b3e7ecdda2acf39549 (commit)
       via  9e0319fa78efbbdec94fc0dfab0175f2b85fa45e (commit)
       via  8c9cbdde681c9769a313e62073ebf804aae7e009 (commit)
       via  1dc222d382057d34b2e8d76e2130e1602311e8e7 (commit)
       via  fa71cccfe7b607490cd5f19cc9c5d60099577e6d (commit)
       via  21cacd12b35369a55749eb757a0ce3e8c5f437a8 (commit)
       via  41858f93c9f6e4f052d92a5d16323257ebd53378 (commit)
      from  fb2b5ab1c9b1a2425dfc75a63cf7b46619352cc1 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 2a045fc08430e8256233f6a3d3f4e4761a51fb36
Merge: fb2b5ab f5c81a5
Author: Leo Liu <address@hidden>
Date:   Tue Nov 12 17:27:43 2013 +0800

    Merge branch 'master' of github.com:leoliu/ggtags


commit f5c81a5a432c19f0e38d25a7d1bf8226af8a93e5
Author: Leo Liu <address@hidden>
Date:   Tue Nov 12 09:17:19 2013 +0800

    Better ggtags-project-oversize-p and oversize checking

diff --git a/ggtags.el b/ggtags.el
index bd553ae..7f060de 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -3,7 +3,7 @@
 ;; Copyright (C) 2013  Free Software Foundation, Inc.
 
 ;; Author: Leo Liu <address@hidden>
-;; Version: 0.7.3
+;; Version: 0.7.4
 ;; Keywords: tools, convenience
 ;; Created: 2013-01-29
 ;; URL: https://github.com/leoliu/ggtags
@@ -91,10 +91,7 @@
   "The over size limit for the  GTAGS file.
 For large source trees, running 'global -u' can be expensive.
 Thus when GTAGS file is larger than this limit, ggtags
-automatically switches to 'global --single-update'.
-
-Change is effective when a project's information is renewed.
-See also `ggtags-project-duration'."
+automatically switches to 'global --single-update'."
   :safe 'numberp
   :type '(choice (const :tag "None" nil)
                  (const :tag "Always" t)
@@ -289,25 +286,21 @@ properly update `ggtags-mode-map'."
                            (:copier nil)
                            (:type vector)
                            :named)
-  root dirty-p has-rtags oversize-p timestamp)
+  root tag-size has-rtags dirty-p timestamp)
 
 (defun ggtags-make-project (root)
   (check-type root string)
   (let* ((default-directory (file-name-as-directory root))
+         (tag-size (or (nth 7 (file-attributes "GTAGS")) -1))
          (rtags-size (nth 7 (file-attributes "GRTAGS")))
          (has-rtags
           (when rtags-size
             (or (> rtags-size (* 32 1024))
                 (with-demoted-errors
-                  (not (equal "" (ggtags-process-string "global" "-crs")))))))
-         (oversize-p (pcase ggtags-oversize-limit
-                       (`nil nil)
-                       (`t t)
-                       (t (> (or (nth 7 (file-attributes "GTAGS")) 0)
-                             ggtags-oversize-limit)))))
+                  (not (equal "" (ggtags-process-string "global" "-crs"))))))))
     (puthash default-directory (ggtags-project--make
                                 :root default-directory :has-rtags has-rtags
-                                :oversize-p oversize-p :timestamp (float-time))
+                                :tag-size tag-size :timestamp (float-time))
              ggtags-projects)))
 
 (defvar-local ggtags-project 'unset)
@@ -317,6 +310,13 @@ properly update `ggtags-mode-map'."
         (ggtags-project-timestamp project))
      ggtags-project-duration))
 
+(defun ggtags-project-oversize-p (&optional project)
+  (pcase ggtags-oversize-limit
+    (`nil nil)
+    (`t t)
+    (size (let ((project (or project (ggtags-find-project))))
+            (and project (> (ggtags-project-tag-size project) size))))))
+
 ;;;###autoload
 (defun ggtags-find-project ()
   (if (ggtags-project-p ggtags-project)
@@ -408,7 +408,7 @@ Do nothing if GTAGS exceeds the oversize limit unless FORCE 
is
 non-nil."
   (interactive "P")
   (when (or force (and (ggtags-find-project)
-                       (not (ggtags-project-oversize-p (ggtags-find-project)))
+                       (not (ggtags-project-oversize-p))
                        (ggtags-project-dirty-p (ggtags-find-project))))
     (ggtags-with-process-environment
      (with-temp-message "Running `global -u'"
@@ -1086,8 +1086,7 @@ Global and Emacs."
   (when (ggtags-find-project)
     (setf (ggtags-project-dirty-p (ggtags-find-project)) t)
     ;; When oversize update on a per-save basis.
-    (when (and buffer-file-name
-               (ggtags-project-oversize-p (ggtags-find-project)))
+    (when (and buffer-file-name (ggtags-project-oversize-p))
       (ggtags-with-process-environment
        (process-file "global" nil 0 nil "--single-update"
                      (file-relative-name buffer-file-name))))))

commit b97581315bb72b35b00a3457cad0a5e5147d4af3
Author: Leo Liu <address@hidden>
Date:   Mon Nov 11 17:22:37 2013 +0800

    Also run ggtags-update-tags in ggtags-global-start

diff --git a/ggtags.el b/ggtags.el
index c775119..bd553ae 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -403,9 +403,12 @@ properly update `ggtags-mode-map'."
           (ggtags-find-project)))))
 
 (defun ggtags-update-tags (&optional force)
-  "Update GNU Global tag database."
+  "Update GNU Global tag database.
+Do nothing if GTAGS exceeds the oversize limit unless FORCE is
+non-nil."
   (interactive "P")
   (when (or force (and (ggtags-find-project)
+                       (not (ggtags-project-oversize-p (ggtags-find-project)))
                        (ggtags-project-dirty-p (ggtags-find-project))))
     (ggtags-with-process-environment
      (with-temp-message "Running `global -u'"
@@ -417,9 +420,7 @@ properly update `ggtags-mode-map'."
 (defvar ggtags-completion-table
   (completion-table-dynamic
    (lambda (prefix)
-     (when (and (ggtags-find-project)
-                (not (ggtags-project-oversize-p (ggtags-find-project))))
-       (ggtags-update-tags))
+     (ggtags-update-tags)
      (unless (equal prefix (car ggtags-completion-cache))
        (setq ggtags-completion-cache
              (cons prefix
@@ -488,6 +489,7 @@ properly update `ggtags-mode-map'."
     (ggtags-navigation-mode +1)
     (setq ggtags-global-exit-status 0
           ggtags-global-match-count 0)
+    (ggtags-update-tags)
     (ggtags-with-process-environment
      (setq ggtags-global-last-buffer
            (compilation-start command 'ggtags-global-mode)))))
@@ -977,8 +979,8 @@ Global and Emacs."
   (ggtags-navigation-mode -1)
   ;; Run after (ggtags-navigation-mode -1) or
   ;; ggtags-global-start-marker might not have been saved.
-  (when (and (not (markerp ggtags-global-start-marker))
-             ggtags-global-start-marker)
+  (when (and ggtags-global-start-marker
+             (not (markerp ggtags-global-start-marker)))
     (setq ggtags-global-start-marker nil)
     (pop-tag-mark))
   (ggtags-navigation-mode-cleanup nil 0))
@@ -1156,7 +1158,7 @@ Global and Emacs."
     (define-key menu [idutils]
       '(menu-item "Query idutils DB" ggtags-idutils-query))
     (define-key menu [grep]
-      '(menu-item "Use grep" ggtags-grep))
+      '(menu-item "Grep" ggtags-grep))
     (define-key menu [find-symbol]
       '(menu-item "Find other symbol" ggtags-find-other-symbol))
     (define-key menu [find-tag-regexp]
@@ -1213,8 +1215,7 @@ Global and Emacs."
     (ggtags-find-project))
   (when (and ggtags-mode ggtags-project)
     (unless (overlayp ggtags-highlight-tag-overlay)
-      (let ((o (make-overlay (point) (point) nil t)))
-        (setq ggtags-highlight-tag-overlay o)))
+      (setq ggtags-highlight-tag-overlay (make-overlay (point) (point) nil t)))
     (let ((bounds (funcall ggtags-bounds-of-tag-function))
           (o ggtags-highlight-tag-overlay))
       (cond

commit 6bcbe01f43456e02768f3aade72535671e6ed812
Author: Leo Liu <address@hidden>
Date:   Mon Nov 11 10:06:50 2013 +0800

    Fix error `variable is void: find-tag-marker-ring'

diff --git a/ggtags.el b/ggtags.el
index 2945684..c775119 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -58,6 +58,7 @@
   (require 'url-parse))
 
 (require 'compile)
+(require 'etags)
 
 (eval-when-compile
   (unless (fboundp 'setq-local)
@@ -476,7 +477,6 @@ properly update `ggtags-mode-map'."
 
 (defun ggtags-global-save-start-marker ()
   (when (markerp ggtags-global-start-marker)
-    (eval-and-compile (require 'etags))
     (setq ggtags-tag-ring-index nil)
     (ring-insert find-tag-marker-ring ggtags-global-start-marker)
     (setq ggtags-global-start-marker t)))
@@ -657,8 +657,7 @@ Global and Emacs."
 (defun ggtags-next-mark (&optional arg)
   "Move to the next (newer) mark in the tag marker ring."
   (interactive)
-  (and (zerop (ring-length find-tag-marker-ring))
-       (user-error "No %s mark" (if arg "previous" "next")))
+  (and (ring-empty-p find-tag-marker-ring) (user-error "Tag ring empty"))
   (setq ggtags-tag-ring-index
         ;; Note `ring-minus1' gets newer item.
         (funcall (if arg #'ring-plus1 #'ring-minus1)
@@ -1127,6 +1126,9 @@ Global and Emacs."
                   (lambda () (interactive) (customize-group 'ggtags))))
     (define-key menu [save-project]
       '(menu-item "Save project settings" ggtags-save-project-settings))
+    (define-key menu [toggle-read-only]
+      '(menu-item "Toggle project read-only" ggtags-toggle-project-read-only
+                  :button (:toggle . buffer-read-only)))
     (define-key menu [sep2] menu-bar-separator)
     (define-key menu [browse-hypertext]
       '(menu-item "Browse as hypertext" ggtags-browse-file-as-hypertext

commit f40bde90c264f058b1e9f2b3e7ecdda2acf39549
Author: Leo Liu <address@hidden>
Date:   Mon Nov 11 09:48:38 2013 +0800

    New command ggtags-toggle-project-read-only

diff --git a/ggtags.el b/ggtags.el
index 0c8b79c..2945684 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -342,7 +342,8 @@ properly update `ggtags-mode-map'."
   "Save Gnu Global's specific environment variables."
   (interactive "P")
   (ggtags-check-project)
-  (let* ((default-directory (ggtags-current-project-root))
+  (let* ((inhibit-read-only t)          ; for `add-dir-local-variable'
+         (default-directory (ggtags-current-project-root))
          ;; Not using `ggtags-with-process-environment' to preserve
          ;; environment variables that may be present in
          ;; `ggtags-process-environment'.
@@ -364,6 +365,21 @@ properly update `ggtags-mode-map'."
     (add-dir-local-variable nil 'ggtags-process-environment envlist)
     (unless confirm (save-buffer) (kill-buffer))))
 
+(defun ggtags-toggle-project-read-only ()
+  (interactive)
+  (ggtags-check-project)
+  (let ((inhibit-read-only t)           ; for `add-dir-local-variable'
+        (val (not buffer-read-only))
+        (default-directory (ggtags-current-project-root)))
+    (add-dir-local-variable nil 'buffer-read-only val)
+    (save-buffer)
+    (kill-buffer)
+    (when buffer-file-name
+      (setq buffer-read-only val))
+    (when (called-interactively-p 'interactive)
+      (message "Project read-only-mode is %s" (if val "on" "off")))
+    val))
+
 (defun ggtags-ensure-project ()
   (interactive)
   (or (ggtags-find-project)

commit 9e0319fa78efbbdec94fc0dfab0175f2b85fa45e
Author: Leo Liu <address@hidden>
Date:   Mon Nov 11 09:02:41 2013 +0800

    Fix sorting key in ggtags-view-tag-history
    
    Don't set tabulated-list-sort-key in tabulated-list-entries because
    the latter is called for refresh and will override buffer's local
    tabulated-list-sort-key.

diff --git a/ggtags.el b/ggtags.el
index 5dc0941..0c8b79c 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -719,7 +719,6 @@ Global and Emacs."
                        :right-align t)
                       ("Contents" 100 t)])
               (tabulated-list-init-header)
-              (setq tabulated-list-sort-key '("ID" . t))
               (mapcar (lambda (x)
                         (prog1
                             (list counter
@@ -736,6 +735,7 @@ Global and Emacs."
                                             "(dead)" "?" "?")))
                           (decf counter)))
                       elements))))
+    (setq tabulated-list-sort-key '("ID" . t))
     (tabulated-list-print)
     (fit-window-to-buffer)))
 

commit 8c9cbdde681c9769a313e62073ebf804aae7e009
Author: Leo Liu <address@hidden>
Date:   Mon Nov 11 08:37:34 2013 +0800

    Provide better control over large global output

diff --git a/ggtags.el b/ggtags.el
index 88e8033..5dc0941 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -165,6 +165,11 @@ If an integer abbreviate only names longer than that 
number."
   :type 'boolean
   :group 'ggtags)
 
+(defcustom ggtags-global-large-output 1000
+  "Number of lines in the Global buffer to indicate large output."
+  :type 'number
+  :group 'ggtags)
+
 (defcustom ggtags-mode-prefix-key "\C-c"
   "Key binding used for `ggtags-mode-prefix-map'.
 Users should change the value using `customize-variable' to
@@ -743,7 +748,9 @@ Global and Emacs."
                    0))))
     (setq ggtags-global-match-count count)
     ;; Clear the start marker in case of zero matches.
-    (and (zerop count) (setq ggtags-global-start-marker nil))
+    (and (zerop count)
+         (markerp ggtags-global-start-marker)
+         (setq ggtags-global-start-marker nil))
     (cons (if (> exit-status 0)
               msg
             (format "found %d %s" count (if (= count 1) "match" "matches")))
@@ -803,13 +810,21 @@ Global and Emacs."
                    (get-text-property (match-beginning sub) 
'compilation-message))
           (ggtags-abbreviate-file (match-beginning sub) (match-end sub)))))))
 
+(defvar-local ggtags-global-output-lines 0)
+
 (defun ggtags-global-filter ()
   "Called from `compilation-filter-hook' (which see)."
   ;; Get rid of line "Using config file '/PATH/TO/.globalrc'."
   (when (re-search-backward "^ *Using config file '.*\n"
                             compilation-filter-start t)
     (replace-match ""))
-  (ansi-color-apply-on-region compilation-filter-start (point)))
+  (ansi-color-apply-on-region compilation-filter-start (point))
+  (incf ggtags-global-output-lines
+        (count-lines compilation-filter-start (point)))
+  (when (> ggtags-global-output-lines ggtags-global-large-output)
+    (let ((message-log-max nil))
+      (message "Output %d lines (Type `C-c C-k' to cancel)"
+               ggtags-global-output-lines))))
 
 (defun ggtags-handle-single-match (buf _how)
   (when (and ggtags-auto-jump-to-first-match
@@ -865,6 +880,9 @@ Global and Emacs."
     (define-key map "\M-{" 'ggtags-navigation-previous-file)
     (define-key map "\M->" 'ggtags-navigation-last-error)
     (define-key map "\M-<" 'ggtags-navigation-first-error)
+    (define-key map "\C-c\C-k"
+      (lambda () (interactive)
+        (ggtags-ensure-global-buffer (kill-compilation))))
     (define-key map "\M-o" 'ggtags-navigation-visible-mode)
     (define-key map [return] 'ggtags-navigation-mode-done)
     (define-key map "\r" 'ggtags-navigation-mode-done)

commit 1dc222d382057d34b2e8d76e2130e1602311e8e7
Author: Leo Liu <address@hidden>
Date:   Sun Nov 10 17:48:57 2013 +0800

    Improve error handling in ggtags-view-tag-history

diff --git a/ggtags.el b/ggtags.el
index bf6e247..88e8033 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -667,6 +667,8 @@ Global and Emacs."
 
 (defun ggtags-view-tag-history ()
   (interactive)
+  (and (ring-empty-p find-tag-marker-ring)
+       (user-error "Tag ring empty"))
   (let ((split-window-preferred-function ggtags-split-window-function)
         (inhibit-read-only t))
     (pop-to-buffer "*Tag Ring*")
@@ -676,7 +678,8 @@ Global and Emacs."
           ;; Use a function so that revert can work properly.
           (lambda ()
             (let ((counter (ring-length find-tag-marker-ring))
-                  (elements (ring-elements find-tag-marker-ring))
+                  (elements (or (ring-elements find-tag-marker-ring)
+                                (user-error "Tag ring empty")))
                   (action
                    (lambda (button) (interactive)
                      (let ((m (button-get button 'marker)))
@@ -727,7 +730,7 @@ Global and Emacs."
                                     (vector (number-to-string counter)
                                             "(dead)" "?" "?")))
                           (decf counter)))
-                      (or elements (user-error "No tags"))))))
+                      elements))))
     (tabulated-list-print)
     (fit-window-to-buffer)))
 

commit fa71cccfe7b607490cd5f19cc9c5d60099577e6d
Author: Leo Liu <address@hidden>
Date:   Sun Nov 10 17:30:22 2013 +0800

    Use buffer-local cache for completion

diff --git a/ggtags.el b/ggtags.el
index a83a698..bf6e247 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -390,26 +390,27 @@ properly update `ggtags-mode-map'."
        (ggtags-process-string "global" "-u")
        (setf (ggtags-project-dirty-p (ggtags-find-project)) nil)))))
 
+(defvar-local ggtags-completion-cache nil)
+
 (defvar ggtags-completion-table
-  (let (cache)
-    (completion-table-dynamic
-     (lambda (prefix)
-       (when (and (ggtags-find-project)
-                  (not (ggtags-project-oversize-p (ggtags-find-project))))
-         (ggtags-update-tags))
-       (unless (equal prefix (car cache))
-         (setq cache
-               (cons prefix
-                     (ggtags-with-process-environment
-                      (split-string
-                       (apply #'ggtags-process-string
-                              "global"
-                              ;; Note -c alone returns only definitions
-                              (if completion-ignore-case
-                                  (list "--ignore-case" "-Tc" prefix)
-                                (list "-Tc" prefix)))
-                       "\n" t)))))
-       (cdr cache)))))
+  (completion-table-dynamic
+   (lambda (prefix)
+     (when (and (ggtags-find-project)
+                (not (ggtags-project-oversize-p (ggtags-find-project))))
+       (ggtags-update-tags))
+     (unless (equal prefix (car ggtags-completion-cache))
+       (setq ggtags-completion-cache
+             (cons prefix
+                   (ggtags-with-process-environment
+                    (split-string
+                     (apply #'ggtags-process-string
+                            "global"
+                            ;; Note -c alone returns only definitions
+                            (if completion-ignore-case
+                                (list "--ignore-case" "-Tc" prefix)
+                              (list "-Tc" prefix)))
+                     "\n" t)))))
+     (cdr ggtags-completion-cache))))
 
 (defun ggtags-read-tag ()
   (ggtags-ensure-project)

commit 21cacd12b35369a55749eb757a0ce3e8c5f437a8
Author: Leo Liu <address@hidden>
Date:   Sun Nov 10 16:01:38 2013 +0800

    New command ggtags-view-tag-history

diff --git a/ggtags.el b/ggtags.el
index bbbcd13..a83a698 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -664,6 +664,72 @@ Global and Emacs."
   (interactive)
   (ggtags-next-mark 'previous))
 
+(defun ggtags-view-tag-history ()
+  (interactive)
+  (let ((split-window-preferred-function ggtags-split-window-function)
+        (inhibit-read-only t))
+    (pop-to-buffer "*Tag Ring*")
+    (erase-buffer)
+    (tabulated-list-mode)
+    (setq tabulated-list-entries
+          ;; Use a function so that revert can work properly.
+          (lambda ()
+            (let ((counter (ring-length find-tag-marker-ring))
+                  (elements (ring-elements find-tag-marker-ring))
+                  (action
+                   (lambda (button) (interactive)
+                     (let ((m (button-get button 'marker)))
+                       (or (markerp m) (user-error "Marker dead"))
+                       (setq ggtags-tag-ring-index
+                             (ring-member find-tag-marker-ring m))
+                       (pop-to-buffer (marker-buffer m))
+                       (goto-char (marker-position m)))))
+                  (get-line
+                   (lambda (m)
+                     (with-current-buffer (marker-buffer m)
+                       (save-excursion
+                         (goto-char m)
+                         (buffer-substring (line-beginning-position)
+                                           (line-end-position)))))))
+              (setq tabulated-list-format
+                    `[("ID" ,(max (1+ (floor (log10 counter))) 2)
+                       (lambda (x y) (< (car x) (car y))))
+                      ("Buffer" ,(max (loop for m in elements
+                                            for b = (marker-buffer m)
+                                            maximize
+                                            (length (and b (buffer-name b))))
+                                      6)
+                       t :right-align t)
+                      ("Position" ,(max (loop for m in elements
+                                              for p = (or (marker-position m) 
1)
+                                              maximize (1+ (floor (log10 p))))
+                                        8)
+                       (lambda (x y)
+                         (< (string-to-number (aref (cadr x) 2))
+                            (string-to-number (aref (cadr y) 2))))
+                       :right-align t)
+                      ("Contents" 100 t)])
+              (tabulated-list-init-header)
+              (setq tabulated-list-sort-key '("ID" . t))
+              (mapcar (lambda (x)
+                        (prog1
+                            (list counter
+                                  (if (marker-buffer x)
+                                      (vector (number-to-string counter)
+                                              `(,(buffer-name (marker-buffer 
x))
+                                                face link
+                                                follow-link t
+                                                marker ,x
+                                                action ,action)
+                                              (number-to-string 
(marker-position x))
+                                              (funcall get-line x))
+                                    (vector (number-to-string counter)
+                                            "(dead)" "?" "?")))
+                          (decf counter)))
+                      (or elements (user-error "No tags"))))))
+    (tabulated-list-print)
+    (fit-window-to-buffer)))
+
 (defun ggtags-global-exit-message-function (_process-status exit-status msg)
   (setq ggtags-global-exit-status exit-status)
   (let ((count (save-excursion
@@ -998,6 +1064,7 @@ Global and Emacs."
     (define-key m "\M-i" 'ggtags-idutils-query)
     (define-key m "\M-b" 'ggtags-browse-file-as-hypertext)
     (define-key m "\M-k" 'ggtags-kill-file-buffers)
+    (define-key m "\M-h" 'ggtags-view-tag-history)
     (define-key m (kbd "M-%") 'ggtags-query-replace)
     m))
 
@@ -1032,6 +1099,8 @@ Global and Emacs."
     (define-key menu [kill-buffers]
       '(menu-item "Kill project file buffers" ggtags-kill-file-buffers
                   :enable (ggtags-find-project)))
+    (define-key menu [view-tag]
+      '(menu-item "View tag history" ggtags-view-tag-history))
     (define-key menu [pop-mark]
       '(menu-item "Pop mark" pop-tag-mark
                   :help "Pop to previous mark and destroy it"))

commit 41858f93c9f6e4f052d92a5d16323257ebd53378
Author: Leo Liu <address@hidden>
Date:   Sat Nov 9 22:22:47 2013 +0800

    Make ggtags-global-output-format buffer-local
    
    So that let-binding ggtags-global-output-format won't fail
    ggtags-abbreviate-files.

diff --git a/ggtags.el b/ggtags.el
index c14bf3a..bbbcd13 100644
--- a/ggtags.el
+++ b/ggtags.el
@@ -624,8 +624,7 @@ Global and Emacs."
           (let ((default-directory (ggtags-current-project-root)))
             (ggtags-with-process-environment (ggtags-process-string "htags")))
         (user-error "Aborted")))
-  (let ((url (ggtags-process-string
-              "gozilla" "-p" (format "+%d" line) file)))
+  (let ((url (ggtags-process-string "gozilla" "-p" (format "+%d" line) file)))
     (or (equal (file-name-extension
                 (url-filename (url-generic-parse-url url))) "html")
         (user-error "No hypertext form for `%s'" file))
@@ -767,6 +766,8 @@ Global and Emacs."
 
 (define-compilation-mode ggtags-global-mode "Global"
   "A mode for showing outputs from gnu global."
+  ;; Make it buffer local for `ggtags-abbreviate-files'.
+  (make-local-variable 'ggtags-global-output-format)
   (setq-local compilation-error-regexp-alist
               (list ggtags-global-output-format))
   (setq-local compilation-auto-jump-to-first-error

-----------------------------------------------------------------------

Summary of changes:
 packages/ggtags/ggtags.el |  206 ++++++++++++++++++++++++++++++++++-----------
 1 files changed, 158 insertions(+), 48 deletions(-)


hooks/post-receive
-- 
ELPA



reply via email to

[Prev in Thread] Current Thread [Next in Thread]