GNU bug report logs - #72745
`bash-mode` doesn't recognize comments inside command substitution

Previous Next

Package: emacs;

Reported by: "shynur ." <one.last.kiss <at> outlook.com>

Date: Wed, 21 Aug 2024 13:09:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: "shynur ." <one.last.kiss <at> outlook.com>, 72745 <at> debbugs.gnu.org
Subject: bug#72745: `bash-mode` doesn't recognize comments inside command substitution
Date: Sat, 24 Aug 2024 11:12:06 -0400
>> Reproduce:
>>   1. echo -e 'echo $(echo 42  # print 42)\n)' > /tmp/a.bash
>>      Content of `/tmp/a.bash`:
>>           echo $(echo 42  # print 42)                                                                                         
>>           )
>>   2. emacs -Q, version 29.4
>>   3. eval: (set-face-italic font-lock-comment-face t)
>>   4. Open file `/tmp/a.bash`.
>> 
>> Only the first `)` is italic; "# print 42" is not.
>
> I'm not sure this is not the right behavior.
> Does anyone else have an opinion here?

Too many "not"s in one sentence, and too many nested "echo"s in
the other.

But when I try to run

    #!/bin/bash
    echo $(echo 42  # print 42)
    )
    echo there

it returns

    42
    there

as expected.  IOW, I agree with the title of this bug report (and in my
test, Emacs doesn't highlighted any part of that script with the comment face).


        Stefan





This bug report was last modified 295 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.