From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Brand Subject: Fwd: Cut and paste an entry programmatically Date: Thu, 27 Jun 2019 15:50:35 +0200 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:39880) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hgUne-0007Df-CZ for emacs-orgmode@gnu.org; Thu, 27 Jun 2019 09:50:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hgUnc-0004WL-Ae for emacs-orgmode@gnu.org; Thu, 27 Jun 2019 09:50:54 -0400 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]:40607) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hgUna-0004UD-Dw for emacs-orgmode@gnu.org; Thu, 27 Jun 2019 09:50:50 -0400 Received: by mail-lj1-x229.google.com with SMTP id a21so2430218ljh.7 for ; Thu, 27 Jun 2019 06:50:48 -0700 (PDT) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: Org Mode Hi all I am still blocked with this issue. It looks like the content that is pasted with the second invocation of org-paste-subtree is not just the second org-cut-subtree but the accumulation of the first and the second org-cut-subtree together. This MCE seems better to me than the previous one as it does not use save-excursion: #+begin_src emacs-lisp :results silent (defun temp () (goto-char (point-min)) (org-cut-subtree) (forward-line 2) (org-paste-subtree)) #+end_src #+begin_src org ,* 1 ,* 2 ,* 3 ,* 4 #+end_src ~M-: (temp) RET M-: (temp) RET~ results in #+begin_src org ,* 3 ,* 1 ,* 1 ,* 2 ,* 4 #+end_src with an unexpected reinsertion of "1" when inserting "2" resulting in a duplicate "1". Michael ---------- Forwarded message --------- From: Michael Brand Date: Thu, May 16, 2019 at 6:40 PM Subject: Cut and paste an entry programmatically To: Org Mode Hi all I would like to ask for some help to understand what am I doing wrong with this minimal complete example: #+begin_src org ,* 1 ,* 2 ,* 3 ,* 4 #+end_src #+begin_src emacs-lisp :results silent (defun temp () (org-cut-subtree) (org-forward-heading-same-level 2) (org-paste-subtree)) #+end_src When with point on 1 you do M-: (progn (save-excursion (temp)) (save-excursion (temp))) RET the resulting buffer is the expected reordered 3, 1, 2, 4. When you do M-: (save-excursion (temp)) RET M-: (save-excursion (temp)) RET the resulting buffer is 3, 1, 1, 2, 4 which is not what I want (Emacs 26.1 and today's Org mode master). Why is this and how to resolve? Michael