]> code.delx.au - gnu-emacs/blobdiff - lisp/hilit-chg.el
CC Mode: truncate the semi-nonlit cache when applying syntax-table to a quote
[gnu-emacs] / lisp / hilit-chg.el
index 17b91245d609c9965d536d553841af75957b5b93..1e4deb9353e972ee80eab693a96d72d252caf4d1 100644 (file)
@@ -1,6 +1,6 @@
 ;;; hilit-chg.el --- minor mode displaying buffer changes with special face
 
-;; Copyright (C) 1998, 2000-2013 Free Software Foundation, Inc.
+;; Copyright (C) 1998, 2000-2016 Free Software Foundation, Inc.
 
 ;; Author: Richard Sharman <rsharman@pobox.com>
 ;; Keywords: faces
     (t (:inverse-video t)))
   "Face used for highlighting changes."
   :group 'highlight-changes)
-(define-obsolete-face-alias 'highlight-changes-face
-  'highlight-changes "22.1")
 
 ;; This looks pretty ugly, actually.  Maybe the underline should be removed.
 (defface highlight-changes-delete
     (t (:inverse-video t)))
   "Face used for highlighting deletions."
   :group 'highlight-changes)
-(define-obsolete-face-alias 'highlight-changes-delete-face
-  'highlight-changes-delete "22.1")
-
 
 ;; A (not very good) default list of colors to rotate through.
 (define-obsolete-variable-alias 'highlight-changes-colours
@@ -333,7 +328,7 @@ enable the mode if ARG is omitted or nil.
 
 When Highlight Changes is enabled, changes are marked with a text
 property.  Normally they are displayed in a distinctive face, but
-command \\[highlight-changes-visible-mode] can be used to toggles
+command \\[highlight-changes-visible-mode] can be used to toggle
 this on and off.
 
 Other functions for buffers in this mode include:
@@ -379,7 +374,7 @@ in a distinctive face.
 The default value can be customized with variable
 `highlight-changes-visibility-initial-state'.
 
-This command does not itself set highlight-changes mode."
+This command does not itself set Highlight Changes mode."
 
   t            ;; init-value
   nil          ;; lighter
@@ -455,7 +450,7 @@ Otherwise, this list will be constructed when needed from
   "Call function FUNC for each region used by Highlight Changes mode.
 If START-POSITION is nil, (point-min) is used.
 If END-POSITION is nil, (point-max) is used.
-FUNC is called with 3 params: PROPERTY START STOP."
+FUNC is called with three params: PROPERTY START STOP."
   (let ((start (or start-position (point-min)))
        (limit (or end-position (point-max)))
        prop end)
@@ -470,8 +465,8 @@ FUNC is called with 3 params: PROPERTY START STOP."
 (defun hilit-chg-display-changes (&optional beg end)
   "Display face information for Highlight Changes mode.
 
-An overlay from BEG to END containing a change face is added from the
-information in the text property of type `hilit-chg'.
+An overlay from BEG to END containing a change face is added
+from the information in the text property of type `hilit-chg'.
 
 This is the opposite of `hilit-chg-hide-changes'."
   (hilit-chg-map-changes 'hilit-chg-make-ov beg end))
@@ -731,7 +726,7 @@ You can automatically rotate colors when the buffer is saved by adding
 this function to `write-file-functions' as a buffer-local value.  To do
 this, eval the following in the buffer to be saved:
 
-  \(add-hook 'write-file-functions 'highlight-changes-rotate-faces nil t)"
+  (add-hook \\='write-file-functions \\='highlight-changes-rotate-faces nil t)"
   (interactive)
   (when (and highlight-changes-mode highlight-changes-visible-mode)
     (let ((modified (buffer-modified-p))
@@ -782,7 +777,7 @@ is non-nil."
           a-start a-end len-a
           b-start b-end len-b
           (bufa-modified (buffer-modified-p buf-a))
-          (bufb-modified (buffer-modified-p buf-b))
+          (bufb-modified (and (not (eq buf-a buf-b)) (buffer-modified-p buf-b)))
           (buf-a-read-only (with-current-buffer buf-a buffer-read-only))
           (buf-b-read-only (with-current-buffer buf-b buffer-read-only))
           temp-a temp-b)
@@ -860,7 +855,7 @@ changes are made, so \\[highlight-changes-next-change] and
     (get-buffer (read-buffer "buffer-a " (current-buffer) t))
     (get-buffer
      (read-buffer "buffer-b "
-                 (window-buffer (next-window (selected-window))) t))))
+                 (window-buffer (next-window)) t))))
   (let ((file-a (buffer-file-name buf-a))
        (file-b (buffer-file-name buf-b)))
     (highlight-markup-buffers buf-a file-a buf-b file-b)
@@ -913,7 +908,7 @@ changes are made, so \\[highlight-changes-next-change] and
   (let (hilit-e hilit-x hilit-y)
     (ediff-setup buf-a file-a buf-b file-b
               nil nil   ; buf-c file-C
-              'hilit-chg-get-diff-list-hk
+              '(hilit-chg-get-diff-list-hk)
               (list (cons 'ediff-job-name 'something))
               )
     (ediff-with-current-buffer hilit-e (ediff-really-quit nil))
@@ -1022,6 +1017,12 @@ This is called when `global-highlight-changes-mode' is turned on."
 ;;
 ;; ================== end of debug ===============
 
+(defun hilit-chg-unload-function ()
+  "Unload the Highlight Changes library."
+  (global-hi-lock-mode -1)
+  ;; continue standard unloading
+  nil)
+
 (provide 'hilit-chg)
 
 ;;; hilit-chg.el ends here