[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 77d6482 14/14: Merge branch 'master' of github.com:leoliu/
From: |
Leo Liu |
Subject: |
[elpa] master 77d6482 14/14: Merge branch 'master' of github.com:leoliu/ggtags |
Date: |
Mon, 14 Dec 2015 21:52:44 +0000 |
branch: master
commit 77d648214c46565de8c63087ee35d9ee319d7686
Merge: 979b09b d4fb6d4
Author: Leo Liu <address@hidden>
Commit: Leo Liu <address@hidden>
Merge branch 'master' of github.com:leoliu/ggtags
---
packages/ggtags/README.rst | 23 ++++++++----
packages/ggtags/ggtags.el | 83 +++++++++++++++++++++++++++-----------------
2 files changed, 67 insertions(+), 39 deletions(-)
diff --git a/packages/ggtags/README.rst b/packages/ggtags/README.rst
index 08640b4..eda0427 100644
--- a/packages/ggtags/README.rst
+++ b/packages/ggtags/README.rst
@@ -4,7 +4,7 @@
This package is part of `GNU ELPA <http://elpa.gnu.org>`_ (``M-x
list-packages``) and is also available on `MELPA
-<http://melpa.milkbox.net/#/ggtags>`_.
+<https://melpa.org/#/ggtags>`_.
The goal is to make working with GNU Global in Emacs as effortlessly
and intuitively as possible and to integrate tightly with standard
@@ -61,10 +61,11 @@ Install Global and plugins
./configure --prefix=<PREFIX> --with-exuberant-ctags=/usr/local/bin/ctags
make && make install
- The executable ``ctags`` is unfortunately named because ``emacs`` also
- includes a command of the same name. So make sure it is from
- http://ctags.sourceforge.net. See ``plugin-factory/README`` in GNU
- Global source for further information.
+ The executable ``ctags`` is unfortunately named because ``emacs``
+ also includes a command of the same name. So make sure it is from
+ http://ctags.sourceforge.net. See ``plugin-factory/PLUGIN_HOWTO``
+ (``plugin-factory/README`` for Global < 6.5) in GNU Global
+ source for further information.
2. Install ``pygments`` plugin
@@ -222,7 +223,7 @@ turned on to facilitate locating the right match.
Miscellaneous commands
++++++++++++++++++++++
-Commands are avaiable from the ``Ggtags`` menu in ``ggtags-mode``.
+Commands are available from the ``Ggtags`` menu in ``ggtags-mode``.
ggtags-prev-mark
@@ -271,7 +272,7 @@ ggtags-explain-tags
ggtags-browse-file-as-hypertext
Use ``htags`` to generate HTML of the source tree. This allows
- browsing the porject in a browser with cross-references.
+ browsing the project in a browser with cross-references.
Integration with other packages
+++++++++++++++++++++++++++++++
@@ -312,6 +313,14 @@ Integration with other packages
NEWS
~~~~
+[2015-12-15 Tue] 0.8.11
++++++++++++++++++++++++
+
+#. ``ggtags-highlight-tag-delay`` is renamed to
+ ``ggtags-highlight-tag``.
+#. Tag highlighting can be disabled by setting
+ ``ggtags-highlight-tag`` to nil.
+
[2015-06-12 Fri] 0.8.10
+++++++++++++++++++++++
diff --git a/packages/ggtags/ggtags.el b/packages/ggtags/ggtags.el
index 52b96cf..08fb4c8 100644
--- a/packages/ggtags/ggtags.el
+++ b/packages/ggtags/ggtags.el
@@ -3,7 +3,7 @@
;; Copyright (C) 2013-2015 Free Software Foundation, Inc.
;; Author: Leo Liu <address@hidden>
-;; Version: 0.8.10
+;; Version: 0.8.11
;; Keywords: tools, convenience
;; Created: 2013-01-29
;; URL: https://github.com/leoliu/ggtags
@@ -36,13 +36,11 @@
;;
;; All commands are available from the `Ggtags' menu in `ggtags-mode'.
-;;; NEWS 0.8.10 (2015-06-12):
+;;; NEWS 0.8.11 (2015-12-15):
-;; - Tags update on save is configurable by `ggtags-update-on-save'.
-;; - New command `ggtags-explain-tags' to explain how each file is
-;; indexed in current project.
-;; - New user option `ggtags-sort-by-nearness' that sorts matched tags
-;; by nearness to current directory.
+;; - `ggtags-highlight-tag-delay' is renamed to `ggtags-highlight-tag'
+;; - Tag highlighting can be disabled by setting
+;; `ggtags-highlight-tag' to nil.
;;
;; See full NEWS on https://github.com/leoliu/ggtags#news
@@ -331,13 +329,17 @@ Nil means using the value of `completing-read-function'."
function)
:group 'ggtags)
-(defcustom ggtags-highlight-tag-delay 0.25
- "Time in seconds before highlighting tag at point."
+(define-obsolete-variable-alias 'ggtags-highlight-tag-delay
'ggtags-highlight-tag
+ "0.8.11")
+
+(defcustom ggtags-highlight-tag 0.25
+ "If non-nil time in seconds before highlighting tag at point.
+Set to `nil' to disable tag highlighting."
:set (lambda (sym value)
- (when (bound-and-true-p ggtags-highlight-tag-timer)
- (timer-set-idle-time ggtags-highlight-tag-timer value t))
+ (when (fboundp 'ggtags-setup-highlight-tag-at-point)
+ (ggtags-setup-highlight-tag-at-point value))
(set-default sym value))
- :type 'number
+ :type '(choice (const :tag "Disable" nil) number)
:group 'ggtags)
(defcustom ggtags-bounds-of-tag-function (lambda ()
@@ -647,7 +649,7 @@ When called with a prefix \\[universal-argument], choose
from past projects."
(ggtags-ensure-localname
(directory-file-name
(ggtags-current-project-root)))))
(process-environment
- (append (let ((process-environment process-environment))
+ (append (let ((process-environment (copy-sequence
process-environment)))
(and ,gtagsroot (setenv "GTAGSROOT" ,gtagsroot))
(mapcar #'substitute-env-vars
ggtags-process-environment))
process-environment
@@ -703,7 +705,7 @@ If file gtags.files exists in ROOT, it should be a list of
source
files to index, which can be used to speed gtags up in large
source trees. See Info node `(global)gtags' for details."
(interactive "DRoot directory: ")
- (let ((process-environment process-environment))
+ (let ((process-environment (copy-sequence process-environment)))
(when (zerop (length root)) (error "No root directory provided"))
(setenv "GTAGSROOT" (ggtags-ensure-localname
(expand-file-name
@@ -929,7 +931,8 @@ blocking emacs."
(let* ((default-directory (or directory (ggtags-current-project-root)))
(split-window-preferred-function ggtags-split-window-function)
(env ggtags-process-environment))
- (unless (markerp ggtags-global-start-marker)
+ (unless (and (markerp ggtags-global-start-marker)
+ (marker-position ggtags-global-start-marker))
(setq ggtags-global-start-marker (point-marker)))
;; Record the file name for `ggtags-navigation-start-file'.
(setq ggtags-global-start-file buffer-file-name)
@@ -1622,19 +1625,23 @@ commands `next-error' and `previous-error'.
ggtags-auto-jump-to-match-target))
(ggtags-forward-to-line ggtags-auto-jump-to-match-target)
(setq-local ggtags-auto-jump-to-match-target nil)
- ;;
- ;; Can't call `compile-goto-error' here becuase
+ (ggtags-delay-finish-functions
+ (with-display-buffer-no-window
+ (condition-case nil
+ (let ((compilation-auto-jump-to-first-error t))
+ (compilation-auto-jump (current-buffer) (point)))
+ (error (message "\
+ggtags: history match invalid, jump to first match instead")
+ (first-error)))))
;; `compilation-filter' restores point and as a result commands
;; dependent on point such as `ggtags-navigation-next-file' and
;; `ggtags-navigation-previous-file' fail to work.
- (run-with-idle-timer 0 nil (lambda (buf pt)
- (and (buffer-live-p buf)
- (with-current-buffer buf
- (ggtags-delay-finish-functions
- (let
((compilation-auto-jump-to-first-error t))
- (with-display-buffer-no-window
- (compilation-auto-jump buf
pt)))))))
- (current-buffer) (point)))
+ (run-with-idle-timer
+ 0 nil
+ (lambda (buf pt)
+ (and (buffer-live-p buf)
+ (with-current-buffer buf (goto-char pt))))
+ (current-buffer) (point)))
(make-local-variable 'ggtags-global-large-output)
(when (> ggtags-global-output-lines ggtags-global-large-output)
(cl-incf ggtags-global-large-output 500)
@@ -2022,6 +2029,7 @@ When finished invoke CALLBACK in BUFFER with process exit
status."
(delay-mode-hooks (funcall mode))
(setq font-lock-mode t)
(funcall font-lock-function font-lock-mode)
+ (setq jit-lock-mode nil)
(current-buffer))))
(with-current-buffer (prepare-buffer)
(let ((inhibit-read-only t))
@@ -2198,10 +2206,7 @@ to nil disables displaying this information.")
;;;###autoload
(define-minor-mode ggtags-mode nil
:lighter (:eval (if ggtags-navigation-mode "" " GG"))
- (unless (timerp ggtags-highlight-tag-timer)
- (setq ggtags-highlight-tag-timer
- (run-with-idle-timer
- ggtags-highlight-tag-delay t #'ggtags-highlight-tag-at-point)))
+ (ggtags-setup-highlight-tag-at-point ggtags-highlight-tag)
(if ggtags-mode
(progn
(add-hook 'after-save-hook 'ggtags-after-save-function nil t)
@@ -2224,9 +2229,7 @@ to nil disables displaying this information.")
(remove-function (local 'eldoc-documentation-function)
'ggtags-eldoc-function)
(setq mode-line-buffer-identification
(delq 'ggtags-mode-line-project-name
mode-line-buffer-identification))
- (and (overlayp ggtags-highlight-tag-overlay)
- (delete-overlay ggtags-highlight-tag-overlay))
- (setq ggtags-highlight-tag-overlay nil)))
+ (ggtags-cancel-highlight-tag-at-point 'keep-timer)))
(defvar ggtags-highlight-tag-map
(let ((map (make-sparse-keymap)))
@@ -2246,6 +2249,22 @@ to nil disables displaying this information.")
(put 'ggtags-active-tag 'help-echo
"S-mouse-1 for definitions\nS-mouse-3 for references")
+(defun ggtags-setup-highlight-tag-at-point (flag)
+ (cond ((null flag) (ggtags-cancel-highlight-tag-at-point))
+ ((not (timerp ggtags-highlight-tag-timer))
+ (setq ggtags-highlight-tag-timer
+ (run-with-idle-timer flag t #'ggtags-highlight-tag-at-point)))
+ (t (timer-set-idle-time ggtags-highlight-tag-timer flag t))))
+
+(defun ggtags-cancel-highlight-tag-at-point (&optional keep-timer)
+ (when (and (not keep-timer)
+ (timerp ggtags-highlight-tag-timer))
+ (cancel-timer ggtags-highlight-tag-timer)
+ (setq ggtags-highlight-tag-timer nil))
+ (when ggtags-highlight-tag-overlay
+ (delete-overlay ggtags-highlight-tag-overlay)
+ (setq ggtags-highlight-tag-overlay nil)))
+
(defun ggtags-highlight-tag-at-point ()
(when (and ggtags-mode ggtags-project-root (ggtags-find-project))
(unless (overlayp ggtags-highlight-tag-overlay)
- [elpa] master 5eeb0a1 04/14: Correctly set ggtags-global-start-marker, (continued)
- [elpa] master 5eeb0a1 04/14: Correctly set ggtags-global-start-marker, Leo Liu, 2015/12/14
- [elpa] master ec3c6bb 09/14: Correct misspellings, Leo Liu, 2015/12/14
- [elpa] master 7e2a915 11/14: Merge pull request #117 from syohex/typo, Leo Liu, 2015/12/14
- [elpa] master d30ae7d 08/14: For #116: Provide a way to disable highlighting tag at point, Leo Liu, 2015/12/14
- [elpa] master d2a8892 12/14: Merge pull request #118 from syohex/update-url, Leo Liu, 2015/12/14
- [elpa] master d4fb6d4 13/14: Doc fix, Leo Liu, 2015/12/14
- [elpa] master ad3ae8d 07/14: Merge pull request #111 from kanru/patch-1, Leo Liu, 2015/12/14
- [elpa] master f155c3c 06/14: Avoid the jit-lock-mode to kick in when fontify code, Leo Liu, 2015/12/14
- [elpa] master 0cc4a4a 10/14: Update MELPA URL, Leo Liu, 2015/12/14
- [elpa] master 2b8d33f 05/14: Handle invalid history match in ggtags-global-filter, Leo Liu, 2015/12/14
- [elpa] master 77d6482 14/14: Merge branch 'master' of github.com:leoliu/ggtags,
Leo Liu <=