emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: No Wayman <iarchivedmywholelife@gmail.com>
To: Allen Li <darkfeline@felesatra.moe>
Cc: emacs-orgmode@gnu.org
Subject: Re: [BUG] [BUG] inconsistent behavior when reading multiple tags [9.4.6 (9.4.6-g366444 @ /home/n/.emacs.d/straight/build/org/)]
Date: Mon, 06 Sep 2021 19:23:36 -0400	[thread overview]
Message-ID: <87fsuhi7o2.fsf@gmail.com> (raw)
In-Reply-To: <80mtoqttpu.fsf@felesatra.moe>


Allen Li <darkfeline@felesatra.moe> writes:

> green-blue is recoverable, and green:blue is not.  Consider a 
> file where
> some headings are tagged :green:blue: and some are tagged 
> :green_blue:.
> If green-blue gets changed into :green:blue:, then it is no 
> longer
> possible to tell which :green:blue: headings are supposed to be
> :green_blue:.  If they were left as green-blue, it is trivial to 
> fix
> them with a search-replace.  It is also easy to notice that they 
> were
> typed incorrectly because the tags would be highlighted 
> differently (as
> they are invalid).

It's not so easy to notice such corruption in the case of captures 
which are filed away and then searched for (by tag) at a later 
time.
But that's neither here nor there. We both agree the behavior 
should be more consistent, and the patch I've proposed takes care 
of that.

> Yes, I think using only ":" and "," is the best default option. 
> I still
> don't think there is a need to make it customizable (I doubt 
> anyone is
> typing tags separated with ! or @ or #), but I suppose
> there's minimal harm from doing so.

I don't see the need to prevent customization here, either.
There may be use cases we don't anticiapte and it adds very little 
in the way of maitenance.
Consider if the author of crm.el decided to hardcode the 
separator.
Your original patch would not have been so trivial.

> I am -0.5 on showing the delimiters since this is not 
> conventional for
> completing-read-multiple, especially after we add support for 
> "," like
> most other uses of completing-read-multiple.  It needlessly 
> inflates the
> length of the prompt.

I don't know what you mean by -0.5, but I wouldn't say it's 
needless.
`org-todo-list' adds the following to the prompt:

> "Keyword (or KWD1|KWD2|...): "

We're talking a handful of characters at most. e.g.

> "Tags (: , to delimit): "

Actually shorter than what `org-todo-list' does now.
I'm open to suggestions on improving that prompt format as well.

> I suggest adding a helper function for the:
>
>   (separators (or org-tags-crm-separators '(?: ?,)))
>    (crm-separator (org-tags-crm-regexp separators))
>
> so you can call it like:
>
>   (crm-separator (org-tags--crm-separator-regexp))
>
> since you repeat this verbatim below.

The separators are stored in a separate variable for use in the 
prompt.
I'll have to take another look to see if we can eliminate the 
duplicate code.
I do agree the function can be "private" and named more 
appropriately.
I'll change that in the next revision.

> You should make the :type a list of characters so the widget is 
> more
> user friendly
 
Agreed. I'll tidy that up as well once a solution is agreed upon.
(IME Org/Emacs patches require more discussion up front, so I'd 
rather deal with that first
instead of putting too much time into a trivial patch up front)

So it looks like the remaining issue is whether or not it's worth 
displaying the tag delimiters in the prompt. I'll think on it some 
more and give it some time to see if anyone else has any arguments 
in favor or against the idea. If I don't see anything by the 
weekend, I'll amend the patch with the changes suggested above.


  reply	other threads:[~2021-09-06 23:53 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-26 17:04 [BUG] [BUG] inconsistent behavior when reading multiple tags [9.4.6 (9.4.6-g366444 @ /home/n/.emacs.d/straight/build/org/)] No Wayman
2021-08-31 10:17 ` Timothy
2021-09-03  2:05   ` No Wayman
2021-09-03  7:22     ` Timothy
2021-09-03 17:00       ` No Wayman
2021-09-03  6:51 ` Allen Li
2021-09-03  8:08   ` Timothy
2021-09-03 19:20     ` No Wayman
2021-09-17 17:09     ` No Wayman
2021-09-03 17:13   ` No Wayman
2021-09-03 19:42     ` No Wayman
2021-09-03 23:37       ` No Wayman
2021-09-27  8:35         ` Bastien
2021-09-27 15:19           ` No Wayman
2021-09-27 15:49             ` Bastien
2021-09-27 15:56               ` No Wayman
2021-09-06  0:48     ` Allen Li
2021-09-06 23:23       ` No Wayman [this message]
2021-09-12  3:37         ` Allen Li

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=87fsuhi7o2.fsf@gmail.com \
    --to=iarchivedmywholelife@gmail.com \
    --cc=darkfeline@felesatra.moe \
    --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).