Don't pulse the indentation, or the newline

* lisp/cedet/pulse.el (pulse-lighten-highlight)
(pulse-reset-face): Fall back to the inherited background
attribute in FACE.
(pulse-momentary-highlight-region): Add autoload cookie.

* lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
indentation, or the newline, if the line's non-empty
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
This commit is contained in:
Dmitry Gutov 2015-05-04 23:16:12 +03:00
parent 255a011f0e
commit 943c45f68b
2 changed files with 13 additions and 3 deletions

View file

@ -133,7 +133,8 @@ Return t if there is more drift to do, nil if completed."
(let* ((frame (color-values (face-background 'default)))
(start (color-values (face-background
(get 'pulse-highlight-face
:startface))))
:startface)
nil t)))
(frac (list (/ (- (nth 0 frame) (nth 0 start)) pulse-iterations)
(/ (- (nth 1 frame) (nth 1 start)) pulse-iterations)
(/ (- (nth 2 frame) (nth 2 start)) pulse-iterations)))
@ -154,7 +155,7 @@ Return t if there is more drift to do, nil if completed."
"Reset the pulse highlighting FACE."
(set-face-background 'pulse-highlight-face
(if face
(face-background face)
(face-background face nil t)
(face-background 'pulse-highlight-start-face)
))
(put 'pulse-highlight-face :startface (or face
@ -238,6 +239,7 @@ Optional argument FACE specifies the face to do the highlighting."
(point))))
(pulse-momentary-highlight-region start end face))))
;;;###autoload
(defun pulse-momentary-highlight-region (start end &optional face)
"Highlight between START and END, unhighlighting before next command.
Optional argument FACE specifies the face to do the highlighting."

View file

@ -313,7 +313,15 @@ or when the command has been called with the prefix argument."
(defun xref--maybe-pulse ()
(when xref-pulse-on-jump
(pulse-momentary-highlight-one-line (point))))
(let (beg end)
(save-excursion
(back-to-indentation)
(if (eolp)
(setq beg (line-beginning-position)
end (1+ (point)))
(setq beg (point)
end (line-end-position))))
(pulse-momentary-highlight-region beg end 'next-error))))
;; etags.el needs this
(defun xref-clear-marker-stack ()