Hi all,

the attached patch appends the value of #+HTML_LINK_HOME
to links with relative paths in the HTML export.

I need this for RSS feeds, in which relative paths are not
allowed.

This should not break anything, but I'd be glad if someone
can test this heavily against his HTML publishing setup.

Thanks!

diff --git a/lisp/ox-html.el b/lisp/ox-html.el
index c0509ff..b4000b4 100644
--- a/lisp/ox-html.el
+++ b/lisp/ox-html.el
@@ -2485,7 +2485,8 @@ standalone images, do the following.
 DESC is the description part of the link, or the empty string.
 INFO is a plist holding contextual information.  See
 `org-export-data'."
-  (let* ((link-org-files-as-html-maybe
+  (let* ((home (org-trim (plist-get info :html-link-home)))
+	 (link-org-files-as-html-maybe
 	  (function
 	   (lambda (raw-path info)
 	     "Treat links to `file.org' as links to `file.html', if needed.
@@ -2511,9 +2512,12 @@ INFO is a plist holding contextual information.  See
 		  (funcall link-org-files-as-html-maybe raw-path info))
 	    ;; If file path is absolute, prepend it with protocol
 	    ;; component - "file://".
-	    (when (file-name-absolute-p raw-path)
-	      (setq raw-path
-		    (concat "file://" (expand-file-name raw-path))))
+	    (cond ((file-name-absolute-p raw-path)
+		   (setq raw-path
+			 (concat "file://" (expand-file-name
+					    raw-path))))
+		  (home
+		   (setq raw-path (concat (file-name-as-directory home) raw-path))))
 	    ;; Add search option, if any.  A search option can be
 	    ;; relative to a custom-id or a headline title.  Any other
 	    ;; option is ignored.
-- 
 Bastien

Reply via email to