branch: externals/org-modern commit ae8797c0feeb41fac5206d5460ea4cd1f9edcb89 Author: Daniel Mendler <m...@daniel-mendler.de> Commit: Daniel Mendler <m...@daniel-mendler.de>
Restrict org link target regexps (Fix #68) --- org-modern.el | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/org-modern.el b/org-modern.el index 26f63cf12a..d8089c0703 100644 --- a/org-modern.el +++ b/org-modern.el @@ -582,24 +582,26 @@ You can specify a font `:family'. The font families `Iosevka', `Hack' and `((1 '(face nil display ,x)) (2 '(face nil display ,(propertize "[" 'display x)))) '((2 '(face nil display "["))))))) - (when org-modern-internal-target - `(("\\(<<\\)\\([^<][^\n]*?\\)\\(>>\\)" - (0 '(face org-modern-internal-target) t) - (1 '(face nil display ,(propertize (car org-modern-internal-target) - 'face 'org-modern-symbol))) - (3 '(face nil display ,(propertize (caddr org-modern-internal-target) - 'face 'org-modern-symbol))) - ,@(unless (cadr org-modern-internal-target) - '((2 '(face nil invisible t))))))) - (when org-modern-radio-target - `(("\\(<<<\\)\\([^\n]+?\\)\\(>>>\\)" - (0 '(face org-modern-radio-target) t) - (1 '(face nil display ,(propertize (car org-modern-radio-target) - 'face 'org-modern-symbol))) - (3 '(face nil display ,(propertize (caddr org-modern-radio-target) - 'face 'org-modern-symbol))) - ,@(unless (cadr org-modern-radio-target) - '((2 '(face nil invisible t))))))) + (let ((target "\\([^<>\n\r\t ][^<>\n\r]*?[^<>\n\r\t @$]\\|[^<>\n\r\t @$]\\)")) + (append + (when org-modern-internal-target + `((,(format "\\(<<\\)%s\\(>>\\)" target) + (0 '(face org-modern-internal-target) t) + (1 '(face nil display ,(propertize (car org-modern-internal-target) + 'face 'org-modern-symbol))) + (3 '(face nil display ,(propertize (caddr org-modern-internal-target) + 'face 'org-modern-symbol))) + ,@(unless (cadr org-modern-internal-target) + '((2 '(face nil invisible t))))))) + (when org-modern-radio-target + `((,(format "\\(<<<\\)%s\\(>>>\\)" target) + (0 '(face org-modern-radio-target) t) + (1 '(face nil display ,(propertize (car org-modern-radio-target) + 'face 'org-modern-symbol))) + (3 '(face nil display ,(propertize (caddr org-modern-radio-target) + 'face 'org-modern-symbol))) + ,@(unless (cadr org-modern-radio-target) + '((2 '(face nil invisible t))))))))) (when org-modern-timestamp '(("\\(?:<\\|\\[\\)\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}\\(?: [[:word:]]+\\)?\\(?: [.+-]+[0-9ymwdh/]+\\)*\\)\\(\\(?: [0-9:-]+\\)?\\(?: [.+-]+[0-9ymwdh/]+\\)*\\)\\(?:>\\|\\]\\)" (0 (org-modern--timestamp)))