[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/osm 25d891088f 70/77: Emacs 27 base64 encoding fallback
From: |
ELPA Syncer |
Subject: |
[elpa] externals/osm 25d891088f 70/77: Emacs 27 base64 encoding fallback |
Date: |
Mon, 7 Mar 2022 08:58:09 -0500 (EST) |
branch: externals/osm
commit 25d891088f5ad07d4753309cfb7f240f84f74229
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Emacs 27 base64 encoding fallback
---
osm.el | 24 ++++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/osm.el b/osm.el
index e684770fb6..411e056ce6 100644
--- a/osm.el
+++ b/osm.el
@@ -543,6 +543,7 @@ Should be at least 7 days according to the server usage
policies."
(nconc pins (list (cons "#ff0088" pin)))
pins)))
+(autoload 'svg--image-data "svg")
(defun osm--make-tile (x y)
"Make tile at X/Y from FILE."
(let ((file (osm--tile-file x y osm--zoom)))
@@ -553,15 +554,26 @@ Should be at least 7 days according to the server usage
policies."
(list :type 'svg :base-uri file
:data (concat "<svg width='256' height='256' version='1.1'
xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'>
-<image xlink:href='" (file-name-nondirectory file) "' height='256'
width='256'/>"
-(mapconcat
- (pcase-lambda (`(,color ,x . ,y))
- (format "<g fill='%s' stroke='#000000' transform='translate(%s %s)'>
+<image xlink:href='"
+ (if (> emacs-major-version 27)
+ (file-name-nondirectory file)
+ ;; NOTE: On Emacs 27, :base-uri and
embedding by file
+ ;; path is not supported. Use the less
efficient base64 encoding.
+ (svg--image-data
+ file
+ (if (member (file-name-extension file)
'("jpg" "jpeg"))
+ "image/jpeg" "image/png")
+ nil))
+ "' height='256' width='256'/>"
+ (mapconcat
+ (pcase-lambda (`(,color ,x . ,y))
+ (format "
+<g fill='%s' stroke='#000000' transform='translate(%s %s)'>
<polygon points='0 0 7 -35 -7 -35'/>
<circle cx='0' cy='-35' r='12'/>
</g>" color x y))
- pins "")
-"</svg>"))
+ pins "")
+ "</svg>"))
(list :type
(if (member (file-name-extension file) '("jpg" "jpeg"))
'jpeg 'png)
- [elpa] externals/osm 640c885460 48/77: README: Add example configuration, (continued)
- [elpa] externals/osm 640c885460 48/77: README: Add example configuration, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 548dc8c47c 25/77: Minor cleanup, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 0edc1c77db 13/77: Overwrite more settings, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 21e59942a9 15/77: Handle mouse drag event, ELPA Syncer, 2022/03/07
- [elpa] externals/osm e8ed76566a 11/77: Rename settings, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 5815de2a73 29/77: Store server as part in bookmark and Org link, ELPA Syncer, 2022/03/07
- [elpa] externals/osm e7f38427ca 05/77: Document all variables, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 42b9222e93 06/77: Make download slightly more robust, ELPA Syncer, 2022/03/07
- [elpa] externals/osm ad12c93f57 01/77: Initial commit, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 7a1d920492 59/77: Display bookmarks in map, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 25d891088f 70/77: Emacs 27 base64 encoding fallback,
ELPA Syncer <=
- [elpa] externals/osm ec97b1d1c0 23/77: Add separate hook function, ELPA Syncer, 2022/03/07
- [elpa] externals/osm ee64b96509 56/77: Add map variant, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 1bd4751bcf 34/77: Better link names, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 7a50000e1e 58/77: Add separate resize function, revert tile cache, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 4c9337bf79 69/77: Update README, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 76b41f5fb5 51/77: Add keybindings, ELPA Syncer, 2022/03/07
- [elpa] externals/osm a6335090e9 33/77: Handle multiple windows, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 2fbf12f0ef 46/77: seq is not needed, ELPA Syncer, 2022/03/07
- [elpa] externals/osm c2c7dff887 22/77: Compact server configuration, ELPA Syncer, 2022/03/07
- [elpa] externals/osm 7ce1d26c88 67/77: Extract osm--make-tile, ELPA Syncer, 2022/03/07