diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2bf553d2a..025079e46 100755 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,10 @@ 2009-12-09 Carsten Dominik + * org.el (org-make-link-regexps): Use John Gruber's regexp for + urls. + + * org-macs.el (org-re): Interpret :punct: in regexps. + * org-exp.el (org-export-replace-src-segments-and-examples): Also take the final newline after the END line. diff --git a/lisp/org-macs.el b/lisp/org-macs.el index 171ae103a..e1e8f98fd 100644 --- a/lisp/org-macs.el +++ b/lisp/org-macs.el @@ -63,6 +63,8 @@ Also, do not record undo information." (setq ss (replace-match "a-zA-Z0-9" t t ss))) (while (string-match "\\[:alpha:\\]" ss) (setq ss (replace-match "a-zA-Z" t t ss))) + (while (string-match "\\[:punct:\\]" ss) + (setq ss (replace-match "\001-@[-`{-~" t t ss))) ss)) s)) diff --git a/lisp/org.el b/lisp/org.el index 02b32e3e7..06a6ef8c5 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -4384,7 +4384,8 @@ This should be called after the variable `org-link-types' has changed." org-plain-link-re (concat "\\<\\(" (mapconcat 'identity org-link-types "\\|") "\\):" - "\\([^]\t\n\r<>() ]+[^]\t\n\r<>,.;() ]\\)") + (org-re "[^ \t\n()<>]+\\(?:([[:word:]0-9]+)\\|\\([^[:punct:] \t\n]\\|/\\)\\)")) + ;; "\\([^]\t\n\r<>() ]+[^]\t\n\r<>,.;() ]\\)") org-bracket-link-regexp "\\[\\[\\([^][]+\\)\\]\\(\\[\\([^][]+\\)\\]\\)?\\]" org-bracket-link-analytic-regexp