GNU bug report logs -
#54227
29.0.50; [PATCH] Inconsistencies with Eshell variable interpolation
Previous Next
Reported by: Jim Porter <jporterbugs <at> gmail.com>
Date: Thu, 3 Mar 2022 06:36:01 UTC
Severity: normal
Tags: patch
Found in version 29.0.50
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #25 received at 54227 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 3/3/2022 10:43 AM, Eli Zaretskii wrote:
>> Cc: 54227 <at> debbugs.gnu.org
>> From: Jim Porter <jporterbugs <at> gmail.com>
>> Date: Thu, 3 Mar 2022 09:56:14 -0800
>>
>> If you have any ideas about how to improve the wording, I'm happy to
>> update it though. I'll try to keep thinking as well.
>
> Something like the below:
>
> (defmacro eshell-with-temp-command (region &rest body)
> "Narrow the buffer to REGION and execute the forms in BODY.
>
> REGION is a cons cell (START . END) that specifies the region
> to which to narrow the buffer. REGION can also be a string,
> in which case the macro temporarily inserts it into the
> buffer at point, and narrows the buffer to the inserted string.
> Before executing BODY, point is set to the beginning of the
> narrowed REGION.
Thanks, updated to use that docstring.
>> diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi
>> index 5581e5cd9e..47f8902d5a 100644
>> --- a/doc/misc/eshell.texi
>> +++ b/doc/misc/eshell.texi
>> @@ -1043,15 +1043,16 @@ Dollars Expansion
[snip]
>>
>> -Multiple sets of indices can also be specified. For example, if
>> -@var{var} is a list of lists, @samp{$@var{var}[0][0]} is equivalent to
>> -@samp{(caar @var{var})}.
>> +Multiple sets of indices can also be specified. For example, if
>> +@var{var} is @samp{((1 2) (3 4))}, then @samp{$@var{var}[0][1]} will
>> +expand to @code{2}.
>
> I would add to the last sentence: ", i.e.@: the second element of the
> first list member (all indices are zero-based)."
Ok, added.
> Also, it sounds like you just dropped the ball on the alist use case?
I think we just had different ideas of how much detail was necessary.
Given your above comment, I think I have a better idea of the level of
detail, so I've expanded this section into a table. The single paragraph
was a little too dense, so breaking it out into separate blocks for each
data type makes it easier to provide a more thorough explanation.
>> -(defun eshell-parse-inner-double-quote (bound)
>> - "Parse the inner part of a double quoted string.
>> +(defun eshell-unescape-inner-double-quote (bound)
>> + "Unescape the inner part of a double quoted string.
>
> "Unescape escaped characters of a double-quoted string."
Done, though I worded it as, "Unescape escaped characters inside a
double-quoted string." I wanted to be extra-clear that this only
operates on the bits *between* the double-quotes, but doesn't do
anything with the surrounding double-quotes themselves.
[0001-Improve-wording-of-Eshell-variable-interpolation-cod.patch (text/plain, attachment)]
This bug report was last modified 3 years and 136 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.