GNU bug report logs -
#3226
[sh-mode] here-document syntax inference and completion is broken
Previous Next
Reported by: Paul Nienaber <phox <at> phox.ca>
Date: Tue, 5 May 2009 22:20:05 UTC
Severity: minor
Tags: fixed
Merged with 19929,
43917
Found in version 24.4
Fixed in version 27.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #15 received at 3226 <at> emacsbugs.donarmstrong.com (full text, mbox):
> Cook yourself up a bash script and type a line of code like:
> for i in $(/bin/vim <<
>
> A default emacs install will complete with "EOF\n\nEOF" (in a more
>clever fashion so the rest of the line is undisturbed), and place the
>cursor on the new blank line. This is incorrect behaviour, as it
>breaks entry of BASH here-strings when the user's intent is still
>ambiguous. This should only respond to things ending in, for example
>"<< " or possibly "<<E", but certainly NOT just "<<".
>
> Further, emacs does something outright wrong: An attempt to fix the
>situation by inserting another '<' between the "<<" and "EOF" +results
>in ANOTHER pair of "EOF" being inserted in a syntactically invalid way.
I fixed the second problem, but I don't see any easy way to solve the
first one.
(The difficulty of fixing the first bug is illustrative of the problems
with individual major modes rolling their own "electric" completion
facilities. It might be nice to have a minor mode that provides a
unified framework for this kind of functionality; which may also need
built-in support.)
This bug report was last modified 4 years and 280 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.