Browse Source

Fix mailto links

* lisp/ox-html.el (org-html-link):
* lisp/ox-latex.el (org-latex-link):
* lisp/ox-man.el (org-man-link):
* lisp/ox-odt.el (org-odt-link):
* contrib/lisp/ox-groff.el (org-groff-link): "mailto" URI do not have
  an authority part, we do not append "//".
Nicolas Goaziou 11 years ago
parent
commit
f61cd6b7a1
5 changed files with 13 additions and 5 deletions
  1. 2 1
      contrib/lisp/ox-groff.el
  2. 5 1
      lisp/ox-html.el
  3. 2 1
      lisp/ox-latex.el
  4. 2 1
      lisp/ox-man.el
  5. 2 1
      lisp/ox-odt.el

+ 2 - 1
contrib/lisp/ox-groff.el

@@ -1251,8 +1251,9 @@ INFO is a plist holding contextual information.  See
          (imagep (org-export-inline-image-p
                   link org-groff-inline-image-rules))
          (path (cond
-                ((member type '("http" "https" "ftp" "mailto"))
+                ((member type '("http" "https" "ftp"))
                  (concat type "://" raw-path))
+		((string= type "mailto") (concat type ":" raw-path))
                 ((string= type "file")
                  (if (file-name-absolute-p raw-path)
                      (concat "file://" (expand-file-name raw-path))

+ 5 - 1
lisp/ox-html.el

@@ -2658,7 +2658,11 @@ INFO is a plist holding contextual information.  See
 	 (desc (org-string-nw-p desc))
 	 (path
 	  (cond
-	   ((member type '("http" "https" "ftp" "mailto"))
+	   ((member type '("http" "https" "ftp"))
+	    (org-link-escape
+	     (org-link-unescape
+	      (concat type "://" raw-path)) org-link-escape-chars-browser))
+	   ((string= type "mailto")
 	    (org-link-escape
 	     (org-link-unescape
 	      (concat type "://" raw-path)) org-link-escape-chars-browser))

+ 2 - 1
lisp/ox-latex.el

@@ -1797,8 +1797,9 @@ INFO is a plist holding contextual information.  See
 	 (imagep (org-export-inline-image-p
 		  link org-latex-inline-image-rules))
 	 (path (cond
-		((member type '("http" "https" "ftp" "mailto"))
+		((member type '("http" "https" "ftp"))
 		 (concat type "://" raw-path))
+		((string= type "mailto") (concat type ":" raw-path))
 		((string= type "file")
 		 (if (not (file-name-absolute-p raw-path)) raw-path
 		   (concat "file://" (expand-file-name raw-path))))

+ 2 - 1
lisp/ox-man.el

@@ -645,8 +645,9 @@ INFO is a plist holding contextual information.  See
          (desc (and (not (string= desc "")) desc))
 
          (path (cond
-                ((member type '("http" "https" "ftp" "mailto"))
+                ((member type '("http" "https" "ftp"))
                  (concat type "://" raw-path))
+		((string= type "mailto") (concat type ":" raw-path))
                 ((string= type "file")
                  (if (file-name-absolute-p raw-path)
                      (concat "file://" (expand-file-name raw-path))

+ 2 - 1
lisp/ox-odt.el

@@ -2711,8 +2711,9 @@ INFO is a plist holding contextual information.  See
 	 (imagep (org-export-inline-image-p
 		  link org-odt-inline-image-rules))
 	 (path (cond
-		((member type '("http" "https" "ftp" "mailto"))
+		((member type '("http" "https" "ftp"))
 		 (concat type "://" raw-path))
+		((string= type "mailto") (concat type ":" raw-path))
 		((string= type "file")
 		 (if (file-name-absolute-p raw-path)
 		     (concat "file://" (expand-file-name raw-path))