emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Samuel Wales <samologist@gmail.com>
To: emacs-orgmode@gnu.org
Subject: re created using regexp-opt fails in an org agenda command
Date: Sun, 12 Dec 2021 20:59:43 -0700	[thread overview]
Message-ID: <CAJcAo8tP4RYo4VPekTgO8wsG=s+8iEAQBuP1mH5oStvA0ahnbw@mail.gmail.com> (raw)

this bug is strange because it appears as if regexp-opt is broken, but
the only likely difference is an org upgrade via git clone.

in an org agenda command, the same set of org todo kw works if a
regexp was created using mapconcat, but not with regexp-opt.

i expected that regexp-opt with 'words is identical to the mapconcat
version in functionality in this context.

===

i am trying to upgrade to recent org 9.5 main.  [goal is to eventually
use bugfix branch with a couple of patches.]  [on main, however, i
intend to first try the batch agenda archive speedups.  current is org
9.4.6.  thank you very very much for those.]

i am running 25.1.1
i used git clone from savannah to get the org repo
i have not tried -Q yet as that woudl require a lot of setup
i compiled with make which defaulted to make oldorg

in my current versin of org, this bug does not exist, even though
regexp-opt should not have changed.

===

here is the org-agenda-custom-commands command.  i have provided some
raw strings produced by the commands.

this version errors with "and: Invalid regexp: "Unmatched ( or \\("".
toggling backtrace on does not produce a backtrace.

but if the regexp-opt is commented out and mapconcat is uncommented,
it does not produce an error and it works.

it also works with the string /produced by/ mapconcat.  but it still
fails with the string produced by regexp-opt.  i confirmed that the
string version of the regexp-opt works using re-search-forward, so idk
why it would not work from one version of org.

            ("ne" "clean up by expired CLOSED"
             tags (concat
                   ;; the + makes no difference seemingly
                   "+CLOSED<\"<-1w>\"&TODO={^"
                   ;; "DONE"
                   ;; (alpha-org-todo-of--regexp :doneish)
                   ;; (apply #'append (mapcar #'alpha-org-todo-of '(:doneish)))
                   (regexp-opt '("DONEKA" "DONE" "MOSTKA" "MOST"
"ANYWAY" "DUPLICATEKA" "DUPLICATE" "MOOTKA" "MOOT" "WAKARANAI")
'words)
                   ;;
"\\<\\(ANYWAY\\|D\\(?:ONE\\(?:KA\\)?\\|UPLICATE\\(?:KA\\)?\\)\\|MO\\(?:OT\\(?:KA\\)?\\|ST\\(?:KA\\)?\\)\\|WAKARANAI\\)\\>"
                   ;; (re-search-forward
"\\<\\(ANYWAY\\|D\\(?:ONE\\(?:KA\\)?\\|UPLICATE\\(?:KA\\)?\\)\\|MO\\(?:OT\\(?:KA\\)?\\|ST\\(?:KA\\)?\\)\\|WAKARANAI\\)\\>")
;; this line works
                   ;; (mapconcat #'identity (apply #'append (mapcar
#'alpha-org-todo-of '(:doneish))) "\\|")
                   ;; this line works
                   ;;
"DONEKA\\|DONE\\|MOSTKA\\|MOST\\|ANYWAY\\|DUPLICATEKA\\|DUPLICATE\\|MOOTKA\\|MOOT\\|WAKARANAI"
                   "$}")

thanks.

-- 
The Kafka Pandemic

A blog about science, health, human rights, and misopathy:
https://thekafkapandemic.blogspot.com


             reply	other threads:[~2021-12-13  4:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-13  3:59 Samuel Wales [this message]
2021-12-18  8:52 ` re created using regexp-opt fails in an org agenda command Samuel Wales
2021-12-18  9:59   ` Ihor Radchenko
2021-12-18 14:37 ` Ihor Radchenko

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.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJcAo8tP4RYo4VPekTgO8wsG=s+8iEAQBuP1mH5oStvA0ahnbw@mail.gmail.com' \
    --to=samologist@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /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/org-mode.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).