Aloha all, I've started to use John Kitchin's unlinkify function, which he posted to the list last year.
(defun jk/unlinkify () "Replace an org-link with the description, or if this absent, the path." (interactive) (let ((eop (org-element-context))) (when (eq 'link (car eop)) (message "%s" eop) (let* ((start (org-element-property :begin eop)) (end (org-element-property :end eop)) (contents-begin (org-element-property :contents-begin eop)) (contents-end (org-element-property :contents-end eop)) (path (org-element-property :path eop)) (desc (and contents-begin contents-end (buffer-substring contents-begin contents-end)))) (setf (buffer-substring start end) (or desc path)))))) However, I get different results depending on whether the link ends with a space or a character, e.g. Foo [[http:www.tsdye.com][desc]] bar. Foo [[http:www.tsdye.com][desc]], bar. Foo descbar. Foo desc, bar. How can I fix this? I'm guessing that org-element-context sets :end differently depending on the character following the link? All the best, Tom -- Thomas S. Dye http://www.tsdye.com