From: Keith David Bershatsky <esq@lawlist.com>
To: Nicolas Richard <theonewiththeevillook@yahoo.fr>
Cc: 16265@debbugs.gnu.org
Subject: bug#16265: 24.3.50; re-search-forward (error "Invalid search bound (wrong side of point)")
Date: Sat, 28 Dec 2013 00:00:36 -0800 [thread overview]
Message-ID: <m2ppohmml7.wl%esq@lawlist.com> (raw)
In-Reply-To: <m2fvpezvid.wl%esq@lawlist.com>
Nicolas:
I'm still working on narrowing down the issue. A likely suspect is a failed `org-sort-entries` before running the *second* round of org-capture. The `org-sort-entries` kicks in `recursive-edit`, which does not go back to the top level after an error. re-search-forward and re-search-backward apparently throw errors when the org buffer is in `recursive-edit`. Last night I had to create a work-around to search the org buffer to update my calendar while org-capture was in use because I couldn't search the buffer either. So it may not be only recursive edit that causes re-search-forward / backward to throw errors -- it may be linked to whatever org-capture is doing to the main org file buffer -- e.g., narrowing. The org-sort-entries worked fine in the Emacs Trunk version from October 5, 2
013, but not the recent version of Emacs Trunk built a few days ago.
Keith
Debugger entered--Lisp error: (error "Nothing to sort")
signal(error ("Nothing to sort"))
error("Nothing to sort")
(if (>= beg end) (error "Nothing to sort"))
(let ((case-func (if with-case (quote identity) (quote downcase))) (cmstr (if (equal (marker-buffer org-clock-marker) (current-buffer)) (progn (save-excursion (goto-char org-clock-marker) (looking-back "^.*") (match-string-no-properties 0))))) start beg end stars re re2 txt what tmp) (cond ((org-region-active-p) (setq end (region-end) what "region") (goto-char (region-beginning)) (if (not (org-at-heading-p)) (outline-next-heading)) (setq start (point))) ((or (org-at-heading-p) (condition-case nil (progn (org-back-to-heading t) t) (error nil))) (org-back-to-heading t) (setq start (point) end (progn (org-end-of-subtree t t) (or (bolp) (insert "\n")) (org-back-over-empty-lines) (point)) what "children") (goto-char start) (show-subtree) (outline-next-heading)) (t (goto-char (point-min)) (or
(org-at-heading-p) (outline-next-heading)) (setq start (point)) (goto-char (point-max)) (beginning-of-line 1) (if (looking-at ".*?\\S-") (progn (end-of-line 1) (insert "\n"))) (setq end (point-max)) (setq what "top-level") (goto-char start) (show-all))) (setq beg (point)) (if (>= beg end) (error "Nothing to sort")) (looking-at "\\(\\*+\\)") (setq stars (match-string 1) re (concat "^" (regexp-quote stars) " +") re2 (concat "^" (regexp-quote (substring stars 0 -1)) "[ \n]") txt (buffer-substring beg end)) (if (not (equal (substring txt -1) "\n")) (setq txt (concat txt "\n"))) (if (and (not (equal stars "*")) (string-match re2 txt)) (error "Region to sort contains a level above the first entry")) (if sorting-type nil (message "Sort %s: [a]lpha [n]umeric [p]riority p[r]operty todo[o]rde
r [f]unc\n [t]ime [s]cheduled [d]eadline [c]reated\n A/N/P/R/O/F/T/S/D/C means reversed:" what) (setq sorting-type (read-char-exclusive)) (and (= (downcase sorting-type) 102) (setq getkey-func (org-icompleting-read "Sort using function: " obarray (quote fboundp) t nil nil)) (setq getkey-func (intern getkey-func))) (and (= (downcase sorting-type) 114) (setq property (org-icompleting-read "Property: " (mapcar (quote list) (org-buffer-property-keys t)) nil t)))) (save-restriction (narrow-to-region start end) (let ((dcst (downcase sorting-type)) (case-fold-search nil) (now (current-time))) (sort-subr (/= dcst sorting-type) (function (lambda nil (if (re-search-forward re nil t) (goto-char ...) (goto-char ...)))) (function (lambda nil (let (...) (unwind-protect .
.. ...)))) (function (lambda nil (cond (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (... ...) (t ...)))) nil (cond ((= dcst 97) (quote string<)) ((= dcst 102) compare-func) ((member dcst (quote ...)) (quote <)))))) (run-hooks (quote org-after-sorting-entries-or-items-hook)) (if cmstr (progn (save-excursion (goto-char start) (search-forward cmstr nil t) (move-marker org-clock-marker (point))))))
org-sort-entries(t 97)
(while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116))
(let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote law
list-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter))
(progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-qu
ote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter)))
(if (not (get-buffer-window "*Org Agenda*" (selected-frame))) (progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter) (sit-for 2) (isearch-dehig
hlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter))))
(let* (beg end (lawlist-item-new (lawlist-org-get-heading)) (month-regexp "January\\|February\\|March\\|April\\|May\\|June\\|July\\|August\\|September\\|October\\|November\\|December")) (org-capture-finalize) (if (get-buffer-window "*Org Agenda*" (selected-frame)) (progn (set-buffer "*Org Agenda*") (goto-char (point-min)) (cond ((save-excursion (re-search-forward "tags: " nil t)) (re-search-forward "tags: " nil t) (let ((tag-beg ...)) (end-of-line) (let* (tag-match ...) (setq tag-match ...) (switch-to-buffer ...) (let ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) (tag nil tag-match) (if ... ...)))) ((save-excursion (re-search-forward month-regexp nil t)) (let ((date-beg ...)) (end-of-line) (let* (date-match ...) (setq date-match ...) (let* ... ...
... ... ... ... ...))))))) (if (not (get-buffer-window "*Org Agenda*" (selected-frame))) (progn (let (lawlist-item-old) (switch-to-buffer (get-file-buffer lawlist-todo-file)) (setq lawlist-item-old (lawlist-org-get-heading)) (goto-char (point-max)) (while (re-search-backward "^* " nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112) (org-sort-entries t 116)) (goto-char (point-max)) (while (re-search-backward "^* DONE" nil t) (org-sort-entries t 97) (org-sort-entries t 111) (org-sort-entries t 112)) (lawlist-org-cleanup) (org-cycle-hide-drawers (quote all)) (hs-hide-all) (re-search-backward (regexp-quote lawlist-item-new) nil t) (setq beg (point)) (re-search-forward (regexp-quote lawlist-item-new) nil t) (setq end (point)) (isearch-highlight beg end) (recenter
) (sit-for 2) (isearch-dehighlight) (goto-char (point-max)) (re-search-backward (regexp-quote lawlist-item-old) nil t) (save-buffer) (setq buffer-read-only t) (recenter)))))
lawlist-org-capture-finalize()
call-interactively(lawlist-org-capture-finalize nil nil)
command-execute(lawlist-org-capture-finalize)
next prev parent reply other threads:[~2013-12-28 8:00 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-27 5:57 bug#16265: 24.3.50; re-search-forward (error "Invalid search bound (wrong side of point)") Keith David Bershatsky
2013-12-27 12:55 ` Nicolas Richard
2013-12-27 17:35 ` Keith David Bershatsky
2013-12-28 8:00 ` Keith David Bershatsky [this message]
[not found] ` <m2eh4sgbw4.wl%esq@lawlist.com>
2014-01-01 9:46 ` Nicolas Richard
2014-01-01 17:50 ` Eli Zaretskii
2014-01-02 1:30 ` Keith David Bershatsky
2014-01-02 3:38 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m2ppohmml7.wl%esq@lawlist.com \
--to=esq@lawlist.com \
--cc=16265@debbugs.gnu.org \
--cc=theonewiththeevillook@yahoo.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).