GNU bug report logs - #22719
25.0.91; sh-mode indentation bug following LF/CR char variable assignments

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Severity: minor; Reported by: Phil Sainty <psainty@HIDDEN>; dated Wed, 17 Feb 2016 13:40:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 18 Feb 2016 06:12:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 18 01:12:31 2016
Received: from localhost ([127.0.0.1]:60147 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aWHpH-0002WB-DW
	for submit <at> debbugs.gnu.org; Thu, 18 Feb 2016 01:12:31 -0500
Received: from eggs.gnu.org ([208.118.235.92]:43432)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <psainty@HIDDEN>) id 1aWHpB-0002Vv-Fi
 for submit <at> debbugs.gnu.org; Thu, 18 Feb 2016 01:12:30 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aWHp5-0003md-BN
 for submit <at> debbugs.gnu.org; Thu, 18 Feb 2016 01:12:20 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:57678)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aWHp5-0003mZ-8X
 for submit <at> debbugs.gnu.org; Thu, 18 Feb 2016 01:12:19 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:34401)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aWHp3-0004O1-6x
 for bug-gnu-emacs@HIDDEN; Thu, 18 Feb 2016 01:12:19 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aWHoz-0003l2-29
 for bug-gnu-emacs@HIDDEN; Thu, 18 Feb 2016 01:12:17 -0500
Received: from [219.88.242.62] (port=48736 helo=mail.orcon.net.nz)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aWHoy-0003ke-Hc
 for bug-gnu-emacs@HIDDEN; Thu, 18 Feb 2016 01:12:12 -0500
Received: from [10.1.1.4] (default-rdns.callplus.co.nz [202.150.106.218] (may
 be forged)) (authenticated bits=0)
 by mail.orcon.net.nz (8.14.3/8.14.3/Debian-9.4) with ESMTP id u1I6C7AF029953
 for <bug-gnu-emacs@HIDDEN>; Thu, 18 Feb 2016 19:12:08 +1300
Subject: Re: 25.0.91; sh-mode indentation bug following FF/CR char variable
 assignments
To: bug-gnu-emacs@HIDDEN
References: <56C476EC.8010004@HIDDEN>
From: Phil Sainty <psainty@HIDDEN>
Message-ID: <56C560B7.40303@HIDDEN>
Date: Thu, 18 Feb 2016 19:12:07 +1300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
 Thunderbird/38.5.1
MIME-Version: 1.0
In-Reply-To: <56C476EC.8010004@HIDDEN>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Bayes-Prob: 0.0001 (Score 0: No Bayes scoring rules defined,
 tokens from: outbound)
X-CanIt-Geo: ip=202.150.106.218; country=NZ; region=Wellington;
 city=Featherston; latitude=-41.1169; longitude=175.2937;
 http://maps.google.com/maps?q=-41.1169,175.2937&z=6
X-CanItPRO-Stream: base:outbound
X-Canit-Stats-ID: 01QjGc74h - 75d40e0b03a2 - 20160218
X-Scanned-By: CanIt (www . roaringpenguin . com)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

Rather than LF/line-feed, I did of course mean FF/form-feed!

I shouldn't write bug reports whilst tired.

(Carriage return was correct, at least.)

So: the issue occurs with either a ^M or ^L character.

Apologies for any confusion. I've edited the subject and the
quote below to correct these mistakes.


On 18/02/16 02:34, Phil Sainty wrote:
> n.b. In the following test case, you need an actual form-feed
> char (C-q C-l) in place of the ^L
>
> #!/bin/sh
> var=^L
> echo "this line gets indented"
>
>
> If you auto-indent that script, the code following the form-feed
> char is incorrectly indented.
>
> I also see that the same thing happens with a carriage-return char,
> so maybe it's a white-space control character issue? (Space and Tab
> don't trigger it, but I don't think those can be valid assignments
> when they're not quoted.)
>
> Other control chars don't seem to cause this.
>
> Workarounds are quoting the FF/CR, or suffixing a semicolon.
>
>
> -Phil
>
>
>
>
>
>
>
> In GNU Emacs 25.0.91.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d
> scroll bars)
>   of 2016-02-18 built on shodan
> Repository revision: 14aec913ac3f0dd408487c0e8327403e0f239964
> Windowing system distributor 'The X.Org Foundation', version 11.0.11701000
> System Description:    Ubuntu 15.04
>
> Configured using:
>   'configure --prefix=/home/phil/emacs/trunk/usr/local
>   --with-x-toolkit=lucid --without-sound'
>
> Configured features:
> XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK DBUS GSETTINGS NOTIFY
> GNUTLS LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11
>
> Important settings:
>    value of $LANG: en_NZ.UTF-8
>    value of $XMODIFIERS: @im=ibus
>    locale-coding-system: utf-8
>
> Major mode: Shell-script
>
> Minor modes in effect:
>    sh-electric-here-document-mode: t
>    show-paren-mode: t
>    minibuffer-depth-indicate-mode: t
>    winner-mode: t
>    global-hl-line-mode: t
>    tooltip-mode: t
>    global-eldoc-mode: t
>    electric-indent-mode: t
>    mouse-wheel-mode: t
>    menu-bar-mode: t
>    file-name-shadow-mode: t
>    global-font-lock-mode: t
>    font-lock-mode: t
>    auto-composition-mode: t
>    auto-encryption-mode: t
>    auto-compression-mode: t
>    line-number-mode: t
>    transient-mark-mode: t
>
> Recent messages:
> For information about GNU Emacs and the GNU system, type C-h C-a.
> GNU Emacs 25.0.91.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll
> bars) of 2016-02-18
> Mark set [5 times]
> Setting up indent for shell type sh
> Indentation variables are now local.
> Indentation setup for shell type sh
> Mark activated
> Indenting region...done
> Undo!
> funcall-interactively: End of buffer
>
> Load-path shadows:
> None found.
>
> Features:
> (shadow sort mail-extr emacsbug message dired-x dired format-spec rfc822
> mml mml-sec epg epg-config gnus-util mm-decode mm-bodies mm-encode
> mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
> rfc2045 ietf-drums mm-util help-fns help-mode easymenu cl-loaddefs pcase
> cl-lib mail-prsvr mail-utils sh-script smie executable paren mb-depth
> winner ring hl-line time-date mule-util tooltip eldoc electric uniquify
> ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd
> tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
> elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
> select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
> frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
> thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
> slovak czech european ethiopic indian cyrillic chinese charscript
> case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
> cl-preloaded nadvice loaddefs button faces cus-face macroexp files
> text-properties overlay sha1 md5 base64 format env code-pages mule
> custom widget hashtable-print-readable backquote dbusbind inotify
> dynamic-setting system-font-setting font-render-setting x-toolkit x
> multi-tty make-network-process emacs)
>
> Memory information:
> ((conses 16 93900 8317)
>   (symbols 48 20374 0)
>   (miscs 40 79 221)
>   (strings 32 17885 4311)
>   (string-bytes 1 490436)
>   (vectors 16 12632)
>   (vector-slots 8 440791 5202)
>   (floats 8 168 90)
>   (intervals 56 264 0)
>   (buffers 976 11)
>   (heap 1024 24743 910))
>




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22719; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 17 Feb 2016 13:39:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 17 08:39:40 2016
Received: from localhost ([127.0.0.1]:38936 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aW2KN-0006hD-I7
	for submit <at> debbugs.gnu.org; Wed, 17 Feb 2016 08:39:40 -0500
Received: from eggs.gnu.org ([208.118.235.92]:58218)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <psainty@HIDDEN>) id 1aW2KH-0006gu-LU
 for submit <at> debbugs.gnu.org; Wed, 17 Feb 2016 08:39:34 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aW2K7-0002Yy-Uz
 for submit <at> debbugs.gnu.org; Wed, 17 Feb 2016 08:39:24 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:40663)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aW2K7-0002Yu-SH
 for submit <at> debbugs.gnu.org; Wed, 17 Feb 2016 08:39:19 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:49137)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aW2K3-0004Bm-M5
 for bug-gnu-emacs@HIDDEN; Wed, 17 Feb 2016 08:39:19 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aW2Jz-0002Va-Dp
 for bug-gnu-emacs@HIDDEN; Wed, 17 Feb 2016 08:39:15 -0500
Received: from [219.88.242.22] (port=47217 helo=mail.orcon.net.nz)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <psainty@HIDDEN>) id 1aW2Jy-0002VI-Ro
 for bug-gnu-emacs@HIDDEN; Wed, 17 Feb 2016 08:39:11 -0500
Received: from [10.1.1.4] (default-rdns.callplus.co.nz [202.150.106.218] (may
 be forged)) (authenticated bits=0)
 by mail.orcon.net.nz (8.14.3/8.14.3/Debian-9.4) with ESMTP id u1HDYaVr018568
 for <bug-gnu-emacs@HIDDEN>; Thu, 18 Feb 2016 02:34:36 +1300
To: bug-gnu-emacs@HIDDEN
From: Phil Sainty <psainty@HIDDEN>
Subject: 25.0.91; sh-mode indentation bug following LF/CR char variable
 assignments
Message-ID: <56C476EC.8010004@HIDDEN>
Date: Thu, 18 Feb 2016 02:34:36 +1300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101
 Thunderbird/38.5.1
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Bayes-Prob: 0.0001 (Score 0: No Bayes scoring rules defined,
 tokens from: outbound)
X-CanIt-Geo: ip=202.150.106.218; country=NZ; region=Wellington;
 city=Featherston; latitude=-41.1169; longitude=175.2937;
 http://maps.google.com/maps?q=-41.1169,175.2937&z=6
X-CanItPRO-Stream: base:outbound
X-Canit-Stats-ID: 02QjpyAnJ - 9457f42bebde - 20160218
X-Scanned-By: CanIt (www . roaringpenguin . com)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

n.b. In the following test case, you need an actual line-feed
char (C-q C-l) in place of the ^L

#!/bin/sh
var=^L
echo "this line gets indented"


If you auto-indent that script, the code following the line-feed
char is incorrectly indented.

I also see that the same thing happens with a carriage return char,
so maybe it's a white-space control character issue? (Space and Tab
don't trigger it, but I don't think those can be valid assignments
when they're not quoted.)

Other control chars don't seem to cause this.

Workarounds are quoting the LF/CR, or suffixing a semicolon.


-Phil







In GNU Emacs 25.0.91.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d 
scroll bars)
  of 2016-02-18 built on shodan
Repository revision: 14aec913ac3f0dd408487c0e8327403e0f239964
Windowing system distributor 'The X.Org Foundation', version 11.0.11701000
System Description:    Ubuntu 15.04

Configured using:
  'configure --prefix=/home/phil/emacs/trunk/usr/local
  --with-x-toolkit=lucid --without-sound'

Configured features:
XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK DBUS GSETTINGS NOTIFY
GNUTLS LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11

Important settings:
   value of $LANG: en_NZ.UTF-8
   value of $XMODIFIERS: @im=ibus
   locale-coding-system: utf-8

Major mode: Shell-script

Minor modes in effect:
   sh-electric-here-document-mode: t
   show-paren-mode: t
   minibuffer-depth-indicate-mode: t
   winner-mode: t
   global-hl-line-mode: t
   tooltip-mode: t
   global-eldoc-mode: t
   electric-indent-mode: t
   mouse-wheel-mode: t
   menu-bar-mode: t
   file-name-shadow-mode: t
   global-font-lock-mode: t
   font-lock-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t
   line-number-mode: t
   transient-mark-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
GNU Emacs 25.0.91.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll 
bars) of 2016-02-18
Mark set [5 times]
Setting up indent for shell type sh
Indentation variables are now local.
Indentation setup for shell type sh
Mark activated
Indenting region...done
Undo!
funcall-interactively: End of buffer

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message dired-x dired format-spec rfc822
mml mml-sec epg epg-config gnus-util mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util help-fns help-mode easymenu cl-loaddefs pcase
cl-lib mail-prsvr mail-utils sh-script smie executable paren mb-depth
winner ring hl-line time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote dbusbind inotify
dynamic-setting system-font-setting font-render-setting x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 93900 8317)
  (symbols 48 20374 0)
  (miscs 40 79 221)
  (strings 32 17885 4311)
  (string-bytes 1 490436)
  (vectors 16 12632)
  (vector-slots 8 440791 5202)
  (floats 8 168 90)
  (intervals 56 264 0)
  (buffers 976 11)
  (heap 1024 24743 910))





Acknowledgement sent to Phil Sainty <psainty@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#22719; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

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