From 9132a79ec92b04adb83d4a4ceada5aa828347406 Mon Sep 17 00:00:00 2001 From: Marco Wahl Date: Sat, 11 Jul 2015 12:01:02 +0200 Subject: [PATCH] contrib/org-eww: Quote leading stars at kill * contrib/lisp/org-eww.el (org-eww-copy-for-org-mode): Lines starting with '*' get quoted at special kill. This allows yanking content containing lines starting with a '*' without changing the outline structure. --- contrib/lisp/org-eww.el | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/contrib/lisp/org-eww.el b/contrib/lisp/org-eww.el index 08dac1132..42af0c996 100644 --- a/contrib/lisp/org-eww.el +++ b/contrib/lisp/org-eww.el @@ -87,7 +87,10 @@ Return t if there is no next link; otherwise, return nil." "Copy current buffer content or active region with `org-mode' style links. This will encode `link-title' and `link-location' with `org-make-link-string', and insert the transformed test into the kill ring, -so that it can be yanked into an Org-mode buffer with links working correctly." +so that it can be yanked into an Org-mode buffer with links working correctly. + +Further lines starting with a star get quoted with a comma to keep +the structure of the org file." (interactive) (let* ((regionp (org-region-active-p)) (transform-start (point-min)) @@ -138,7 +141,13 @@ so that it can be yanked into an Org-mode buffer with links working correctly." (setq return-content (concat return-content (buffer-substring (point) transform-end)))) - (org-kill-new return-content) + ;; quote lines starting with * + (org-kill-new + (with-temp-buffer + (insert return-content) + (goto-char 0) + (replace-regexp "^\*" ",*") + (buffer-string))) (message "Transforming links...done, use C-y to insert text into Org-mode file"))))