[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] org-capture does not fully clean up after C-c C-k
From: |
Bastien |
Subject: |
Re: [O] org-capture does not fully clean up after C-c C-k |
Date: |
Tue, 12 Jul 2011 01:00:01 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Hi Leo,
Leo <address@hidden> writes:
> On 2011-06-16 15:51 +0800, Carsten Dominik wrote:
>> Hi Leo,
>>
>> I am unable to reproduce this. I do get an empty line the first time,
>> but when the empty line is already there, then there is no problem.
>>
>> Do you find the insertion of this one empty line a problem?
>>
>> - Carsten
>
> Sorry for the long delay. I can reproduce this in Emacs -q with
>
> (setq org-blank-before-new-entry '((heading)))
Please let me know if the attached patch fixes this issue.
Thanks,
>From 38334f29f4c949cad76c199433f60250a824878d Mon Sep 17 00:00:00 2001
From: Bastien Guerry <address@hidden>
Date: Tue, 12 Jul 2011 00:57:57 +0200
Subject: [PATCH] org-capture.el: Fix bug about insert blank line when
aborting.
* org-capture.el (org-capture-finalize): bugfix about
inserted blank line when killing the capture buffer and
`org-blank-before-new-entry' tells to not insert anything
before a heading.
Thanks to Leo for reporting this.
---
lisp/org-capture.el | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/lisp/org-capture.el b/lisp/org-capture.el
index d547f3d..dd74ecc 100644
--- a/lisp/org-capture.el
+++ b/lisp/org-capture.el
@@ -551,6 +551,9 @@ captured item after finalizing."
(m2 (org-capture-get :end-marker 'local)))
(if (and m1 m2 (= m1 beg) (= m2 end))
(progn
+ (setq m2 (if (cdr (assoc 'heading org-blank-before-new-entry))
+ m2 (1+ m2))
+ m2 (if (< (point-max) m2) (point-max) m2))
(setq abort-note 'clean)
(kill-region m1 m2))
(setq abort-note 'dirty)))
@@ -576,16 +579,14 @@ captured item after finalizing."
(org-at-table-p))
(if (org-table-get-stored-formulas)
(org-table-recalculate 'all) ;; FIXME: Should we iterate???
- (org-table-align)))
- )
+ (org-table-align))))
;; Store this place as the last one where we stored something
;; Do the marking in the base buffer, so that it makes sense after
;; the indirect buffer has been killed.
(org-capture-bookmark-last-stored-position)
;; Run the hook
- (run-hooks 'org-capture-before-finalize-hook)
- )
+ (run-hooks 'org-capture-before-finalize-hook))
;; Kill the indirect buffer
(save-buffer)
@@ -665,7 +666,8 @@ already gone. Any prefix argument will be passed to the
refile command."
(interactive)
;; FIXME: This does not do the right thing, we need to remove the new stuff
;; By hand it is easy: undo, then kill the buffer
- (let ((org-note-abort t) (org-capture-before-finalize-hook nil))
+ (let ((org-note-abort t)
+ (org-capture-before-finalize-hook nil))
(org-capture-finalize)))
(defun org-capture-goto-last-stored ()
--
1.7.5.2
--
Bastien