[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: general perform-replace REPLACEMENTS arg for regexpquery-replacement
RE: general perform-replace REPLACEMENTS arg for regexpquery-replacement?
Mon, 17 Nov 2008 17:01:09 -0800
> > Actually, after sending the mail and realizing that the
> > sequence would always be not just \@ but \@(, I thought
> > (and think) that perhaps simply \( would be
> > better. This is about passing a list. So I'd propose that.
> > C-M-% RET abc RET \("<xyz>" "</xyz>")
> > WDOT?
> Then we can perfectly use just the current syntax `\,'
> without inventing a new one, e.g.
> C-M-% RET abc RET \,'("<xyz>" "</xyz>")
Have you tried it? That was the first thing I tried.
The problem is that \, converts the sexp that follows it to a string.
> The only place currently preventing this is prin1-to-string that turns
> a list into a string. We could change it to keep the list intact.
Yes, but then you lose the ability to get the current behavior: replace by the
string, "(\"zzz\" \"aaa\")".
IMO, two different syntaxes are needed to separate the two different user
intentions: a sexp that evals to a string "(...)" and a sexp that evals to a
list of strings to pass to `perform-replace'.
For the second case, I think, as I said, that there is no need to provide for a
sexp that evals to the list; it is enough to provide for a literal list. IMO.