]> git.eshelyaron.com Git - emacs.git/commitdiff
Allow overriding shr functions from eww
authorLars Ingebrigtsen <larsi@gnus.org>
Thu, 24 Dec 2015 16:34:31 +0000 (17:34 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 24 Dec 2015 16:34:31 +0000 (17:34 +0100)
* eww.el (eww-display-html): Allow overriding elements in
`shr-external-rendering-functions'.

lisp/net/eww.el
lisp/net/shr.el

index 5748e88bbca9d7d2a500bcd7877e230231b549e0..2224b2e74e7d5e1b6ea64dade85c7e3cc9256d0b 100644 (file)
@@ -411,13 +411,15 @@ Currently this means either text/html or application/xhtml+xml."
            (inhibit-modification-hooks t)
            (shr-target-id (url-target (url-generic-parse-url url)))
            (shr-external-rendering-functions
-            '((title . eww-tag-title)
-              (form . eww-tag-form)
-              (input . eww-tag-input)
-              (textarea . eww-tag-textarea)
-              (select . eww-tag-select)
-              (link . eww-tag-link)
-              (a . eww-tag-a))))
+             (append
+              shr-external-rendering-functions
+              '((title . eww-tag-title)
+                (form . eww-tag-form)
+                (input . eww-tag-input)
+                (textarea . eww-tag-textarea)
+                (select . eww-tag-select)
+                (link . eww-tag-link)
+                (a . eww-tag-a)))))
        (erase-buffer)
        (shr-insert-document document)
        (cond
index d51b8c73d109f3bdc2de03f6da213f6ddae7e335..2389952114009c69fbcc96c51cff01a352d97e2a 100644 (file)
@@ -135,6 +135,14 @@ cid: URL as the argument.")
 (defvar shr-inhibit-images nil
   "If non-nil, inhibit loading images.")
 
+(defvar shr-external-rendering-functions nil
+  "Alist of tag/function pairs used to alter how shr renders certain tags.
+For instance, eww uses this to alter rendering of title, forms
+and other things:
+((title . eww-tag-title)
+ (form . eww-tag-form)
+ ...)")
+
 ;;; Internal variables.
 
 (defvar shr-folding-mode nil)
@@ -150,7 +158,6 @@ cid: URL as the argument.")
 (defvar shr-depth 0)
 (defvar shr-warning nil)
 (defvar shr-ignore-cache nil)
-(defvar shr-external-rendering-functions nil)
 (defvar shr-target-id nil)
 (defvar shr-table-separator-length 1)
 (defvar shr-table-separator-pixel-width 0)