Don't search for position in existing list if :exact-position
* org-capture.el (org-capture-place-item): Don't search for position in existing list if :exact-position was supplied. This fixes a bug reported by François Pinard in <http://thread.gmane.org/gmane.emacs.orgmode/49995>.
This commit is contained in:
parent
fce92180d1
commit
cda38d182a
|
@ -911,30 +911,30 @@ it. When it is a variable, retrieve the value. Return whatever we get."
|
||||||
(target-entry-p (org-capture-get :target-entry-p))
|
(target-entry-p (org-capture-get :target-entry-p))
|
||||||
(ind 0)
|
(ind 0)
|
||||||
beg end)
|
beg end)
|
||||||
(cond
|
(if (org-capture-get :exact-position)
|
||||||
((org-capture-get :exact-position)
|
(goto-char (org-capture-get :exact-position))
|
||||||
(goto-char (org-capture-get :exact-position)))
|
(cond
|
||||||
((not target-entry-p)
|
((not target-entry-p)
|
||||||
;; Insert as top-level entry, either at beginning or at end of file
|
;; Insert as top-level entry, either at beginning or at end of file
|
||||||
(setq beg (point-min) end (point-max)))
|
(setq beg (point-min) end (point-max)))
|
||||||
(t
|
(t
|
||||||
(setq beg (1+ (point-at-eol))
|
(setq beg (1+ (point-at-eol))
|
||||||
end (save-excursion (outline-next-heading) (point)))))
|
end (save-excursion (outline-next-heading) (point)))))
|
||||||
(if (org-capture-get :prepend)
|
(if (org-capture-get :prepend)
|
||||||
(progn
|
|
||||||
(goto-char beg)
|
|
||||||
(if (org-list-search-forward (org-item-beginning-re) end t)
|
|
||||||
(progn
|
|
||||||
(goto-char (match-beginning 0))
|
|
||||||
(setq ind (org-get-indentation)))
|
|
||||||
(goto-char end)
|
|
||||||
(setq ind 0)))
|
|
||||||
(goto-char end)
|
|
||||||
(if (org-list-search-backward (org-item-beginning-re) beg t)
|
|
||||||
(progn
|
(progn
|
||||||
(setq ind (org-get-indentation))
|
(goto-char beg)
|
||||||
(org-end-of-item))
|
(if (org-list-search-forward (org-item-beginning-re) end t)
|
||||||
(setq ind 0)))
|
(progn
|
||||||
|
(goto-char (match-beginning 0))
|
||||||
|
(setq ind (org-get-indentation)))
|
||||||
|
(goto-char end)
|
||||||
|
(setq ind 0)))
|
||||||
|
(goto-char end)
|
||||||
|
(if (org-list-search-backward (org-item-beginning-re) beg t)
|
||||||
|
(progn
|
||||||
|
(setq ind (org-get-indentation))
|
||||||
|
(org-end-of-item))
|
||||||
|
(setq ind 0))))
|
||||||
;; Remove common indentation
|
;; Remove common indentation
|
||||||
(setq txt (org-remove-indentation txt))
|
(setq txt (org-remove-indentation txt))
|
||||||
;; Make sure this is indeed an item
|
;; Make sure this is indeed an item
|
||||||
|
|
Loading…
Reference in New Issue