summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--org-link-edit.el7
-rw-r--r--test-org-link-edit.el8
2 files changed, 12 insertions, 3 deletions
diff --git a/org-link-edit.el b/org-link-edit.el
index 6e58155..193f8fa 100644
--- a/org-link-edit.el
+++ b/org-link-edit.el
@@ -381,9 +381,10 @@ END."
(delete-region link-beg link-end)
(insert (org-make-link-string
link
- (and desc-bounds
- (delete-and-extract-region (car desc-bounds)
- (cdr desc-bounds))))))))
+ (if desc-bounds
+ (delete-and-extract-region (car desc-bounds)
+ (cdr desc-bounds))
+ orig-desc))))))
(provide 'org-link-edit)
;;; org-link-edit.el ends here
diff --git a/test-org-link-edit.el b/test-org-link-edit.el
index a5fecef..b88592d 100644
--- a/test-org-link-edit.el
+++ b/test-org-link-edit.el
@@ -552,6 +552,14 @@ website"
"Here is<point> Org's website http://orgmode.org/"
(org-link-edit-transport-next-link)
(buffer-string))))
+ ;; Transported links are allow to have an existing description when
+ ;; point is on whitespace.
+ (should
+ (string= "Here is\[\[http://orgmode.org/\]\[descrption\]\] Org's website "
+ (org-test-with-temp-text
+ "Here is<point> Org's website \[\[http://orgmode.org/\]\[descrption\]\]"
+ (org-link-edit-transport-next-link)
+ (buffer-string))))
;; Fail if point is on a link.
(should-error
(org-test-with-temp-text