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

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

[nongnu] elpa/annotate f0a71bb148 223/372: Merge pull request #64 from c


From: ELPA Syncer
Subject: [nongnu] elpa/annotate f0a71bb148 223/372: Merge pull request #64 from cage2/fix-face-detection
Date: Fri, 4 Feb 2022 16:59:02 -0500 (EST)

branch: elpa/annotate
commit f0a71bb14806c79f09cb6aacb5ef98a852ef66e2
Merge: 44b378b16a e2c365a376
Author: cage2 <1257703+cage2@users.noreply.github.com>
Commit: GitHub <noreply@github.com>

    Merge pull request #64 from cage2/fix-face-detection
    
    - fixed managing return value of "(get-text-property changed-face-pos 
'face)"
---
 Changelog   | 14 ++++++++++++++
 NEWS.org    |  5 +++++
 annotate.el | 16 +++++++++++++---
 3 files changed, 32 insertions(+), 3 deletions(-)

diff --git a/Changelog b/Changelog
index 380978d404..a1b485adc2 100644
--- a/Changelog
+++ b/Changelog
@@ -76,3 +76,17 @@
          available  overlay.   So  the annotated  text  contained  multiple
          overlays and an  annotation was not the first we  missed the last,
          This means, for example, that the annotation was not modifiable.
+2020-03-16 Bastian Bechtold, cage
+        * annotate.el (annotate-create-annotation)
+
+       - fixed managing return value of
+       "(get-text-property changed-face-pos 'face)"
+
+       When finding  the face of a portion  of buffer, to try to  get the right
+       positioning   of   the    annotation,   using:
+
+       "(get-text-property changed-face-pos 'face)"
+
+       the code  assumed this function returned  a symbol (the face  of the
+       text) or nil: this is  incorrect according to the documentation; the
+       code above can returns a symbol, a plist or even list of symbols.
diff --git a/NEWS.org b/NEWS.org
index d62ed59f45..a40cb8cf55 100644
--- a/NEWS.org
+++ b/NEWS.org
@@ -106,3 +106,8 @@
 
 - 2020-03-16 V0.6.1 Bastian Bechtold, cage ::
   Fixed annotation picking in 'annotate-annotate'.
+
+- 2020-03-25 V0.6.2 Bastian Bechtold, cage ::
+  Fixed bug that prevent annotation of text with complex faces definition.
+  Thanks to the person who filed the issue
+  (see: https://github.com/bastibe/annotate.el/pull/63)
diff --git a/annotate.el b/annotate.el
index a0ecbf8c7b..e3172ae7d7 100644
--- a/annotate.el
+++ b/annotate.el
@@ -7,7 +7,7 @@
 ;; Maintainer: Bastian Bechtold
 ;; URL: https://github.com/bastibe/annotate.el
 ;; Created: 2015-06-10
-;; Version: 0.6.1
+;; Version: 0.6.2
 
 ;; This file is NOT part of GNU Emacs.
 
@@ -55,7 +55,7 @@
 ;;;###autoload
 (defgroup annotate nil
   "Annotate files without changing them."
-  :version "0.6.1"
+  :version "0.6.2"
   :group 'text)
 
 ;;;###autoload
@@ -1538,7 +1538,17 @@ The searched interval can be customized setting the 
variable:
                                all-faces))
                        (setf all-faces-height
                              (mapcar (lambda (face)
-                                       (face-attribute face :height nil 
'default))
+                                       (cond
+                                        ((facep face)
+                                         (face-attribute face :height nil 
'default))
+                                        ((and (consp face)
+                                              (keywordp (cl-first face))) ; a 
plist
+                                         (cl-getf face :height
+                                                  (face-attribute 'default 
:height)))
+                                        ((consp face) ; a list of named face, 
first wins
+                                         (face-attribute (cl-first face) 
:height nil 'default))
+                                        (t
+                                         (face-attribute 'default :height))))
                                      (cl-remove-if #'null all-faces)))
                        (setf force-newline-p
                              (cl-find-if (lambda (a) (/= a 
default-face-height))



reply via email to

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