GNU bug report logs -
#36496
[PATCH] Describe the rx notation in the lisp manual
Previous Next
Reported by: Mattias EngdegÄrd <mattiase <at> acm.org>
Date: Thu, 4 Jul 2019 12:14:01 UTC
Severity: wishlist
Merged with 31698
Found in version 27.0
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #79 received at 36496 <at> debbugs.gnu.org (full text, mbox):
> > Do you mean they'd accept a quoted `rx' form (list)?
> > What would a use case be - as opposed to accepting
> > the result of macro-expanding such a form? Assuming
> > there's good use case, maybe so.
>
> Quoting is a little more brief than writing (rx ...).
Sorry, but I don't really understand. I know little
about `rx'.
> > [But there may be some functions that already have a
> > (different) interpretation of a list value for the
> > same arg that could alternatively be a regexp string.
> > (So maybe not "all" such functions.)]
>
> Are there any? If so, it would be desirable to change them.
I was responding to this from you:
WHat would people think of making all the functions that want a regexp
accept an rx input equivalently? If the arg is not a string, treat it
as rx format. Compilation could convert a constant non-string, for
such args, to a regexp string.
I see now that you said "an rx input", so presumably
not just a list as arg but a list with car `rx'. I
was thinking you meant just a list. I'd bet there
are some functions that accept an arg that can be a
(nonempty) list or a string, and maybe even a regexp
string. If there are then some minor adjustment
could be called for; that's all.
> > Even assuming such a use case, should the compiler
> > assume that _every_ such list arg should be compiled
> > to a regexp string?
>
> Why not? Is there any case in which it would be better
> to translate the rx to a regexp at run time?
I think I misunderstood you, and might still.
Still, there's a difference between passing
(quote SOME-MACRO-SEXP) as arg and passing
SOME-MACRO-SEXP. We have `quote' for a reason.
If you want macro-expansion at compile time
why wouldn't you just pass (rx...) as the arg,
instead of (quote (rx...))?
But you know all this better than I, so no doubt
I'm just missing your point - in which case feel
free to ignore.
> > > The only problem is, which key would it be?
>
> > Some non-repeatable key. Some key that can't be
> > used (by default) to edit minibuffer text. Maybe
> > something like `C-x x'?
>
> Is there any reasonable one-character key?
There are lots of 1-char keys that are not defined
in a minibuffer keymap by default. And perhaps
even some that are defined there by default but
that aren't useful for reading a regexp (so could
be co-opted when reading regexp input, if needed).
As just one example, `M-R' is not defined (`M-r'
is). `M-R' is `move-to-window-line-top-bottom',
which isn't so useful in a minibuffer window.
(It is a repeatable key, BTW, and its global
binding is a repeatable command. But that command
isn't very useful in the minibuffer.)
This bug report was last modified 3 years and 21 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.