Use diff faces for compare-windows
* lisp/vc/compare-w.el: Require diff-mode for diff faces. (compare-windows-removed, compare-windows-added): New faces inheriting from diff faces. (compare-windows): Define obsolete face alias. (compare-windows-highlight): Replace face `compare-windows' with new faces `compare-windows-added' and `compare-windows-removed'. (compare-windows-get-recent-window): Signal an error when no other window is found. Fixes: debbugs:19451
This commit is contained in:
parent
2cb7592275
commit
d143df5a4e
3 changed files with 34 additions and 8 deletions
5
etc/NEWS
5
etc/NEWS
|
|
@ -401,10 +401,13 @@ and comments.
|
|||
the color range from `vc-annotate-color-map' is applied to the
|
||||
background or to the foreground.
|
||||
|
||||
*** compare-windows now compares text with the most recently used window
|
||||
*** `compare-windows' now compares text with the most recently used window
|
||||
instead of the next window. The new option `compare-windows-get-window-function'
|
||||
allows to customize this.
|
||||
|
||||
*** Two new faces `compare-windows-removed' and `compare-windows-added'
|
||||
replace the obsolete face `compare-windows'.
|
||||
|
||||
** Calculator: decimal display mode uses "," groups, so it's more
|
||||
fitting for use in money calculations; factorial works with
|
||||
non-integer inputs.
|
||||
|
|
|
|||
|
|
@ -1,3 +1,15 @@
|
|||
2014-12-28 Juri Linkov <juri@linkov.net>
|
||||
|
||||
* vc/compare-w.el: Require diff-mode for diff faces.
|
||||
(compare-windows-removed, compare-windows-added): New faces
|
||||
inheriting from diff faces.
|
||||
(compare-windows): Define obsolete face alias.
|
||||
(compare-windows-highlight): Replace face `compare-windows' with
|
||||
new faces `compare-windows-added' and `compare-windows-removed'
|
||||
(bug#19451).
|
||||
(compare-windows-get-recent-window): Signal an error when
|
||||
no other window is found (bug#19170).
|
||||
|
||||
2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
|
||||
|
||||
* progmodes/elisp-mode.el (elisp--xref-identifier-file):
|
||||
|
|
|
|||
|
|
@ -30,6 +30,8 @@
|
|||
|
||||
;;; Code:
|
||||
|
||||
(require 'diff-mode) ; For diff faces.
|
||||
|
||||
(defgroup compare-windows nil
|
||||
"Compare text between windows."
|
||||
:prefix "compare-"
|
||||
|
|
@ -128,11 +130,19 @@ out all highlighting later with the command `compare-windows-dehighlight'."
|
|||
:group 'compare-windows
|
||||
:version "22.1")
|
||||
|
||||
(defface compare-windows
|
||||
'((t :inherit lazy-highlight))
|
||||
"Face for highlighting of compare-windows difference regions."
|
||||
(defface compare-windows-removed
|
||||
'((t :inherit diff-removed))
|
||||
"Face for highlighting of compare-windows removed regions."
|
||||
:group 'compare-windows
|
||||
:version "22.1")
|
||||
:version "25.1")
|
||||
|
||||
(defface compare-windows-added
|
||||
'((t :inherit diff-added))
|
||||
"Face for highlighting of compare-windows added regions."
|
||||
:group 'compare-windows
|
||||
:version "25.1")
|
||||
|
||||
(define-obsolete-face-alias 'compare-windows 'compare-windows-added "25.1")
|
||||
|
||||
(defvar compare-windows-overlay1 nil)
|
||||
(defvar compare-windows-overlay2 nil)
|
||||
|
|
@ -158,7 +168,8 @@ then try to get a window on an iconified frame, and finally
|
|||
consider all existing frames."
|
||||
(or (get-mru-window 'visible t t)
|
||||
(get-mru-window 0 t t)
|
||||
(get-mru-window t t t)))
|
||||
(get-mru-window t t t)
|
||||
(error "No other window")))
|
||||
|
||||
(defun compare-windows-get-next-window ()
|
||||
"Return the window next in the cyclic ordering of windows.
|
||||
|
|
@ -393,13 +404,13 @@ on third call it again advances points to the next difference and so on."
|
|||
(if compare-windows-overlay1
|
||||
(move-overlay compare-windows-overlay1 beg1 end1 b1)
|
||||
(setq compare-windows-overlay1 (make-overlay beg1 end1 b1))
|
||||
(overlay-put compare-windows-overlay1 'face 'compare-windows)
|
||||
(overlay-put compare-windows-overlay1 'face 'compare-windows-added)
|
||||
(overlay-put compare-windows-overlay1 'priority 1000))
|
||||
(overlay-put compare-windows-overlay1 'window w1)
|
||||
(if compare-windows-overlay2
|
||||
(move-overlay compare-windows-overlay2 beg2 end2 b2)
|
||||
(setq compare-windows-overlay2 (make-overlay beg2 end2 b2))
|
||||
(overlay-put compare-windows-overlay2 'face 'compare-windows)
|
||||
(overlay-put compare-windows-overlay2 'face 'compare-windows-removed)
|
||||
(overlay-put compare-windows-overlay2 'priority 1000))
|
||||
(overlay-put compare-windows-overlay2 'window w2)
|
||||
(if (not (eq compare-windows-highlight 'persistent))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue