[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/svg-tag-mode e9d0df33a6 12/63: Better default
From: |
ELPA Syncer |
Subject: |
[elpa] externals/svg-tag-mode e9d0df33a6 12/63: Better default |
Date: |
Mon, 27 Dec 2021 15:57:55 -0500 (EST) |
branch: externals/svg-tag-mode
commit e9d0df33a696433a777c88932c0260f297cb59bf
Author: Nicolas P. Rougier <Nicolas.Rougier@inria.fr>
Commit: Nicolas P. Rougier <Nicolas.Rougier@inria.fr>
Better default
---
svg-tag-mode.el | 43 +++++++++++++++++++++++++++++++++----------
1 file changed, 33 insertions(+), 10 deletions(-)
diff --git a/svg-tag-mode.el b/svg-tag-mode.el
index 9623050cbf..c1a7dc4423 100644
--- a/svg-tag-mode.el
+++ b/svg-tag-mode.el
@@ -86,6 +86,11 @@
:type 'integer
:group 'svg-tag)
+(defcustom svg-tag-default-line-width 1
+ "Default border line width (in pixels, null or positive)"
+ :type 'integer
+ :group 'svg-tag)
+
(defcustom svg-tag-vertical-offset 0
"Vertical offset for text (in pixels).
This should be zero for most fonts but some fonts may need this."
@@ -108,13 +113,31 @@ This should be zero for most fonts but some fonts may
need this."
"Default face for tag"
:group 'svg-tag)
+;; (defcustom svg-tag-tags
+;; '((":TODO:" . (svg-tag-make "TODO")))
+;; "An alist mapping keywords to tags used to display them.
+
+;; Each entry has the form (keyword . tag). Keyword is used as part
+;; of a regular expression and tag can be either a svg tag
+;; previously created by svg-tag-make or a function that takes a
+;; string as argument and returns a tag. When tag is a function, this
+;; allows to create dynamic tags."
+
+;; :group 'svg-tag-mode
+;; :type '(repeat (cons (string :tag "Keyword")
+;; (sexp :tag "Tag"))))
+
+
(defun svg-tag-make (text &optional face inner-padding outer-padding radius)
(let* ((face (or face 'svg-tag-default-face))
(foreground (face-attribute face :foreground))
(background (face-attribute face :background))
- (border (plist-get (face-attribute face :box) :color))
- (stroke 1)
- ;; (stroke (plist-get (face-attribute face :box) :line-width))
+ (box (face-attribute face :box))
+ (stroke (or (plist-get (face-attribute face :box) :color)
+ foreground))
+ ;; This does not seem to get the actual box line-width
+ (line-width (or (plist-get (face-attribute face :box) :line-width)
+ svg-tag-default-line-width))
(family (face-attribute face :family))
(weight (face-attribute face :weight))
(size (/ (face-attribute face :height) 10))
@@ -136,18 +159,18 @@ This should be zero for most fonts but some fonts may
need this."
(tag-x (/ (- svg-width tag-width) 2))
(text-x (+ tag-x (/ (- tag-width (* (length text) tag-char-width))
2)))
(text-y (- tag-char-height (- txt-char-height tag-char-height)))
-
+
(radius (or radius svg-tag-default-radius))
(svg (svg-create svg-width svg-height)))
-
+
(svg-rectangle svg tag-x 0 tag-width tag-height
- :fill border
+ :fill stroke
:rx radius)
- (svg-rectangle svg (+ tag-x (/ stroke 2.0)) (/ stroke 2.0)
- (- tag-width stroke) (- tag-height stroke)
+ (svg-rectangle svg (+ tag-x (/ line-width 2.0)) (/ line-width 2.0)
+ (- tag-width line-width) (- tag-height line-width)
:fill background
- :rx (- radius (/ stroke 2.0)))
- (svg-text svg text
+ :rx (- radius (/ line-width 2.0)))
+ (svg-text svg text
:font-family family
:font-weight weight
:font-size size
- [elpa] externals/svg-tag-mode 837dfbdd06 48/63: Fixed documentation., (continued)
- [elpa] externals/svg-tag-mode 837dfbdd06 48/63: Fixed documentation., ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode ede0edb5c3 25/63: Lint correction, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 607d05d972 37/63: Fix conflict, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 60d56f3f41 29/63: Fixed terminal mode error, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 4fb494db21 43/63: Changed style of date, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 3dd9bef838 59/63: Removed `org-plist-delete` dependency., ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 60140b7526 62/63: Remove ununsed local variables., ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode c78500db2c 60/63: Fix bugs (typos)., ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode de9aba3f37 09/63: Fix style and naming, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 90c15ebc07 05/63: Load subr-x for string-trim, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode e9d0df33a6 12/63: Better default,
ELPA Syncer <=
- [elpa] externals/svg-tag-mode a5af3041c4 07/63: Added customizable options, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 0944bb3bce 14/63: Simplified tag setup and added custom variable for tags, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode db4d223352 18/63: Fixed documentation, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 9649055e90 20/63: Trying to fix header, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode cec780a16f 21/63: Added version, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 4fdc7ffbb3 23/63: Fixed font weights, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 609ed7cc32 24/63: Removed free variable, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 0125ceca29 22/63: Fix README, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode a9e8d9e705 27/63: Fixes followign review at https://github.com/melpa/melpa/pull/7217, ELPA Syncer, 2021/12/27
- [elpa] externals/svg-tag-mode 40d7820143 28/63: Moved examples into a directory, ELPA Syncer, 2021/12/27