New format of percent escape table

* org.el (org-link-escape-chars, org-link-escape-chars-browser): New
format of percent escape table.
(org-link-escape): Use new table format.

Just a plain list with the chars that should be escaped.
This commit is contained in:
David Maus 2010-11-21 10:45:06 +01:00
parent 0c4bb0e406
commit 1a68b67939
1 changed files with 5 additions and 22 deletions

View File

@ -8603,32 +8603,15 @@ according to FMT (default from `org-email-link-description-format')."
"]"))
(defconst org-link-escape-chars
'((?\ . "%20")
(?\[ . "%5B")
(?\] . "%5D")
(?\340 . "%E0") ; `a
(?\342 . "%E2") ; ^a
(?\347 . "%E7") ; ,c
(?\350 . "%E8") ; `e
(?\351 . "%E9") ; 'e
(?\352 . "%EA") ; ^e
(?\356 . "%EE") ; ^i
(?\364 . "%F4") ; ^o
(?\371 . "%F9") ; `u
(?\373 . "%FB") ; ^u
(?\; . "%3B")
;; (?? . "%3F")
(?= . "%3D")
(?+ . "%2B")
)
"Association list of escapes for some characters problematic in links.
'(?\ ?\[ ?\] ?\; ?\= ?\+)
"List of characters that should be escaped in link.
This is the list that is used for internal purposes.")
(defvar org-url-encoding-use-url-hexify nil)
(defconst org-link-escape-chars-browser
'((?\ . "%20")) ; 32 for the SPC char
"Association list of escapes for some characters problematic in links.
'(?\ )
"List of escapes for characters that are problematic in links.
This is the list that is used before handing over to the browser.")
(defun org-link-escape (text &optional table)
@ -8638,7 +8621,7 @@ This is the list that is used before handing over to the browser.")
(setq table (or table org-link-escape-chars))
(mapconcat
(lambda (char)
(if (or (assoc char table)
(if (or (member char table)
(< char 32) (> char 126))
(mapconcat (lambda (sequence)
(format "%%%.2X" sequence))