diff options
| author | stardiviner <numbchild@gmail.com> | 2022-03-16 16:47:59 +0800 |
|---|---|---|
| committer | stardiviner <numbchild@gmail.com> | 2022-03-16 16:47:59 +0800 |
| commit | 444f686a7f75db788d54f544b923a3532732eb8b (patch) | |
| tree | b663bd5a54517498b69ca533060ceed8e9f3109e | |
| parent | b2d0c0dc9ddfeefc1d3b3fee944a5682a73ed7c5 (diff) | |
Display kiwix library thumbnail URL image in vertico candidates.externals/kiwix
| -rw-r--r-- | kiwix.el | 18 |
1 files changed, 17 insertions, 1 deletions
@@ -57,6 +57,7 @@ (require 'cl-lib) +(require 'url) (require 'request) (require 'subr-x) (require 'thingatpt) @@ -187,7 +188,22 @@ Set it to ‘t’ will use Emacs built-in ‘completing-read’." entry-xml))))) (library-filename (string-trim-left library-link-path "/"))) (propertize library-filename - 'display (format "%s (%s)" title library-filename))))) + 'display (concat + (when-let ((return-buffer (url-retrieve-synchronously thumbnail-url :silent))) + (unwind-protect + (let ((image-data (with-current-buffer return-buffer + (goto-char (point-min)) + (search-forward "\n\n") ; skip HTTP response headers. + (buffer-substring-no-properties (point) (point-max))))) + (kill-buffer return-buffer) + (propertize " " + 'display (create-image image-data nil t + :ascent 'center + :max-height (default-font-height)) + 'read-only t)))) + " " + (format "%s (%s)" title library-filename)) + 'read-only t)))) xml-data)))))) :error (cl-function (lambda (&rest args &key error-thrown &allow-other-keys) |
