From 3305602f746b7a9e1cd8932eda5f9d0a85e75094 Mon Sep 17 00:00:00 2001 From: David Maus Date: Sun, 18 Dec 2011 19:23:57 +0100 Subject: [PATCH] Escape link path only if path contains space or non-ascii character * org.el (org-open-at-point): Escape link path for http:, https:, ftp:, news:, and doi: links only if the path contains space or non-ascii character. This should take care of mistakenly double-escaped links as reported by Jeff Horn in . We are just guessing here and push the responsibility for proper escaping to the target application. --- lisp/org.el | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index 9980d03d7..7e243676a 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -9569,13 +9569,16 @@ application the system uses for this file type." (apply cmd (nreverse args1)))) ((member type '("http" "https" "ftp" "news")) - (browse-url (concat type ":" (org-link-escape - path org-link-escape-chars-browser)))) + (browse-url (concat type ":" (if (org-string-match-p "[[:nonascii:] ]" path) + (org-link-escape + path org-link-escape-chars-browser) + path)))) ((string= type "doi") - (browse-url (concat "http://dx.doi.org/" - (org-link-escape - path org-link-escape-chars-browser)))) + (browse-url (concat "http://dx.doi.org/" (if (org-string-match-p "[[:nonascii:] ]" path) + (org-link-escape + path org-link-escape-chars-browser) + path)))) ((member type '("message")) (browse-url (concat type ":" path)))