GNU bug report logs - #16907
24.3.50; [ruby-mode] %w/W literals have incorrect indentation

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: Bozhidar Batsov <bozhidar@HIDDEN>; dated Fri, 28 Feb 2014 15:41:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

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


Received: (at 16907) by debbugs.gnu.org; 1 Mar 2014 14:00:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 09:00:54 2014
Received: from localhost ([127.0.0.1]:45478 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WJkTG-00020N-4o
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2014 09:00:54 -0500
Received: from mail-ee0-f52.google.com ([74.125.83.52]:51466)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <bozhidar.batsov@HIDDEN>) id 1WJkTD-00020E-SY
 for 16907 <at> debbugs.gnu.org; Sat, 01 Mar 2014 09:00:52 -0500
Received: by mail-ee0-f52.google.com with SMTP id c41so2920128eek.39
 for <16907 <at> debbugs.gnu.org>; Sat, 01 Mar 2014 06:00:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:date:from:to:cc:message-id:in-reply-to:references:subject
 :mime-version:content-type;
 bh=mvkoST2QfJxuH7Vvj++B8x8W3yCxuuO+mu0dThqOIMs=;
 b=QY8XXbM89h7pxnw/NHBuh+b1JR+dMITJODMHHKQ6oqDdRLlyRxNHhjSPbnMsZr+Rxf
 Fiao/lcGNyu8GIllkck9/IwRMomAVOWgcQoO11xwg7rMKxIvRG4o8U0KcVGiixIP/k9o
 Dee7NR2fSkSwbST3WLwYkY7jsOKBmzf9IC+9G63LQxOuq/ApRQfJPfJqMHJPFmyLw3gU
 byAXRsQIn64C8i9ru2D+Vlw/AMqwaW0w8T9OyRYAAkG0FNOwfbH+XHCJ2kvgzNNQzQrN
 ensyNl1tQjZKOyQEKLh0R9PIQHTh7biO+rz1s7bHwwz8IckQp30ge5LkR2/CYwm8K5Fx
 jNoQ==
X-Received: by 10.15.52.66 with SMTP id o42mr221485eew.89.1393682450957;
 Sat, 01 Mar 2014 06:00:50 -0800 (PST)
Received: from [192.168.1.28] ([95.87.231.111])
 by mx.google.com with ESMTPSA id 43sm23852419eeh.13.2014.03.01.06.00.49
 for <multiple recipients>
 (version=TLSv1 cipher=RC4-SHA bits=128/128);
 Sat, 01 Mar 2014 06:00:50 -0800 (PST)
Date: Sat, 1 Mar 2014 16:00:52 +0200
From: Bozhidar Batsov <bozhidar@HIDDEN>
To: Dmitry Gutov <dgutov@HIDDEN>
Message-ID: <C7343E6E53AD47B78FE0B79305218275@HIDDEN>
In-Reply-To: <5311E75B.9010700@HIDDEN>
References: <m2ha7jutyl.fsf@HIDDEN> <874n3in0nd.fsf@HIDDEN>
 <EEE11950A9324F769B6F4A079B10788E@HIDDEN> <5311E75B.9010700@HIDDEN>
Subject: Re: bug#16907: 24.3.50; [ruby-mode] %w/W literals have
 incorrect indentation
X-Mailer: sparrow 1.6.4 (build 1178)
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="5311e814_51f79246_c8"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 16907
Cc: 16907 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://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: <http://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: -0.7 (/)

--5311e814_51f79246_c8
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On Saturday, March 1, 2014 at 3:57 PM, Dmitry Gutov wrote:
> (Please keep it in Cc).
> 
> 

I know. Sorry about that. 
> 
> On 01.03.2014 13:00, Bozhidar Batsov wrote:
> > > 2. Tokenize the elements inside the above literals without regard to
> > > characters used in them. `ruby-smie--backward-token' and its counterpart
> > > would have to be able to easily know when it's inside such literal.
> > > 
> > > Alternatively, still propertize them as "general strings", but replace
> > > `smie-indent-inside-string' in `smie-indent-functions' with a
> > > specialized version that would look at what the string begins with.
> > > 
> > 
> > Option 1 seems better/cleaner to me,
> > 
> 
> 
> Option 1 is everything before "Alternatively". I'm not sure how to 
> implement the item 2 in it.
> 
> 


Oops. I should have read your comments more carefully.   


--5311e814_51f79246_c8
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline


                <div><span style=3D=22color: rgb(160, 160, 168);=22>On Sa=
turday, March 1, 2014 at 3:57 PM, Dmitry Gutov wrote:</span></div>
                <blockquote type=3D=22cite=22 style=3D=22border-left-styl=
e:solid;border-width:1px;margin-left:0px;padding-left:10px;=22>
                    <span><div><div><div>(Please keep it in Cc).</div></d=
iv></div></span></blockquote><div><font face=3D=22Trebuchet MS=22>I know.=
 Sorry about that.</font>&nbsp;</div><blockquote type=3D=22cite=22 style=3D=
=22border-left-style:solid;border-width:1px;margin-left:0px;padding-left:=
10px;=22><span><div><div><div><br></div><div>On 01.03.2014 13:00, Bozhida=
r Batsov wrote:</div><blockquote type=3D=22cite=22><div><blockquote type=3D=
=22cite=22><div><div>2. Tokenize the elements inside the above literals w=
ithout regard to</div><div>characters used in them. =60ruby-smie--backwar=
d-token' and its counterpart</div><div>would have to be able to easily kn=
ow when it's inside such literal.</div><div><br></div><div>Alternatively,=
 still propertize them as =22general strings=22, but replace</div><div>=60=
smie-indent-inside-string' in =60smie-indent-functions' with a</div><div>=
specialized version that would look at what the string begins with.</div>=
</div></blockquote><div>Option 1 seems better/cleaner to me,</div></div><=
/blockquote><div><br></div><div>Option 1 is everything before =22Alternat=
ively=22. I'm not sure how to </div><div>implement the item 2 in it.</div=
></div></div></span></blockquote><div><br></div><div><font face=3D=22Treb=
uchet MS=22>Oops. I should have read your comments more carefully.&nbsp;<=
/font>&nbsp;</div>
                =20
                <div>
                    <br>
                </div>
            
--5311e814_51f79246_c8--





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

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


Received: (at 16907) by debbugs.gnu.org; 1 Mar 2014 13:57:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 08:57:58 2014
Received: from localhost ([127.0.0.1]:45473 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WJkQP-0001tz-T8
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2014 08:57:58 -0500
Received: from mail-ee0-f45.google.com ([74.125.83.45]:33418)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <raaahh@HIDDEN>) id 1WJkQK-0001tl-7h
 for 16907 <at> debbugs.gnu.org; Sat, 01 Mar 2014 08:57:52 -0500
Received: by mail-ee0-f45.google.com with SMTP id d17so2873167eek.18
 for <16907 <at> debbugs.gnu.org>; Sat, 01 Mar 2014 05:57:50 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject
 :references:in-reply-to:content-type:content-transfer-encoding;
 bh=j95xz0hNVWIAmOdE2szXXo9s29E7hMFXRfAKRu4sGcA=;
 b=VBGJRULzXVkA8MBU7syp0x0thkrhASwysrd8wwHJ312l1hlJGCBeYXM5loLng/K3uo
 nzjVB1njTlxE6mir7+lNB7KtLdfz/20uxHQASF/Cc57iBc40DeoiGhBn+xslR+Qk35YP
 pftSV8OdcIEOILKd6BM5Mqj0gjRy44zJ1z9io3bqSALWonYNurIcpt1uFbElPfEciQlQ
 BYV8zXuPQH1hRbGmjVMuMt9Ll9e/L22mvrtMZ1Gv2zgy8UwnjqjBQCF7hQ+0DjlWYIFA
 4YUHVZfoT5Vfazd0DXOfnpafS2z7RoBDhRX7MPQg0FgGp/c5hoRlcFsu5OvcxfNMjn6r
 xShQ==
X-Received: by 10.14.220.193 with SMTP id o41mr28497242eep.22.1393682270784;
 Sat, 01 Mar 2014 05:57:50 -0800 (PST)
Received: from [192.168.10.2] ([93.109.195.252])
 by mx.google.com with ESMTPSA id x3sm23820134eep.17.2014.03.01.05.57.48
 for <multiple recipients>
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Sat, 01 Mar 2014 05:57:50 -0800 (PST)
Message-ID: <5311E75B.9010700@HIDDEN>
Date: Sat, 01 Mar 2014 15:57:47 +0200
From: Dmitry Gutov <dgutov@HIDDEN>
User-Agent: Mozilla/5.0 (X11; Linux x86_64;
 rv:24.0) Gecko/20100101 Thunderbird/24.3.0
MIME-Version: 1.0
To: Bozhidar Batsov <bozhidar@HIDDEN>
Subject: Re: bug#16907: 24.3.50; [ruby-mode] %w/W literals have incorrect
 indentation
References: <m2ha7jutyl.fsf@HIDDEN> <874n3in0nd.fsf@HIDDEN>
 <EEE11950A9324F769B6F4A079B10788E@HIDDEN>
In-Reply-To: <EEE11950A9324F769B6F4A079B10788E@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 16907
Cc: 16907 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://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: <http://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: -0.7 (/)

(Please keep it in Cc).

On 01.03.2014 13:00, Bozhidar Batsov wrote:
>> 2. Tokenize the elements inside the above literals without regard to
>> characters used in them. `ruby-smie--backward-token' and its counterpart
>> would have to be able to easily know when it's inside such literal.
>>
>> Alternatively, still propertize them as "general strings", but replace
>> `smie-indent-inside-string' in `smie-indent-functions' with a
>> specialized version that would look at what the string begins with.
> Option 1 seems better/cleaner to me,

Option 1 is everything before "Alternatively". I'm not sure how to 
implement the item 2 in it.




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

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


Received: (at 16907) by debbugs.gnu.org; 1 Mar 2014 11:02:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 01 06:02:01 2014
Received: from localhost ([127.0.0.1]:45371 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WJhg8-0004Up-9m
	for submit <at> debbugs.gnu.org; Sat, 01 Mar 2014 06:02:00 -0500
Received: from mail-ea0-f180.google.com ([209.85.215.180]:34556)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <bozhidar.batsov@HIDDEN>) id 1WJhg5-0004Uf-Ld
 for 16907 <at> debbugs.gnu.org; Sat, 01 Mar 2014 06:01:58 -0500
Received: by mail-ea0-f180.google.com with SMTP id m10so3308652eaj.11
 for <16907 <at> debbugs.gnu.org>; Sat, 01 Mar 2014 03:01:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:date:from:to:message-id:in-reply-to:references:subject
 :mime-version:content-type;
 bh=RqSs3aEgZeyXdFklzI6uJnaT9LGUefyDvVvrq8xoUFU=;
 b=fEoXNkp9A41gmTXmHHhoqiX5EHZcsV1n6qmDU9XNeWBRaokLJ37P2xdpp9qnsZRUUr
 RaVTgAZyZbLb7cGD3346SeAj8e7y3advQ7ecmS8WzUhEE0qZefzVQU8afbZI5PPpoGjF
 pGP7NS9qUFKCcLAPqpTF/4tNUdxB7x4Sfg92j84aH6uTaFH2aHXHIBFbnRcKGKkySku9
 iNV3wARLVh8vd1+MIwiNhr/IbLoG7itaoLEvDE+anqR/+Q+um8kFETWoENBidjj2kb9L
 Z9Xr4pQq6R9pdpto2sytXuGDUTtTAAj+C4xveCKQ4EtQh8GqzpT/a22inUX+p8T3BKc3
 2xwA==
X-Received: by 10.14.182.5 with SMTP id n5mr27002073eem.68.1393671716536;
 Sat, 01 Mar 2014 03:01:56 -0800 (PST)
Received: from [192.168.1.28] ([95.87.231.111])
 by mx.google.com with ESMTPSA id j41sm22121989eey.15.2014.03.01.03.01.55
 for <16907 <at> debbugs.gnu.org>
 (version=TLSv1 cipher=RC4-SHA bits=128/128);
 Sat, 01 Mar 2014 03:01:55 -0800 (PST)
Date: Sat, 1 Mar 2014 13:01:54 +0200
From: Bozhidar Batsov <bozhidar@HIDDEN>
To: 16907 <at> debbugs.gnu.org
Message-ID: <423A2EF41D2A443C882C68ED39059EB0@HIDDEN>
In-Reply-To: <EEE11950A9324F769B6F4A079B10788E@HIDDEN>
References: <m2ha7jutyl.fsf@HIDDEN> <874n3in0nd.fsf@HIDDEN>
 <EEE11950A9324F769B6F4A079B10788E@HIDDEN>
Subject: Fw: bug#16907: 24.3.50; [ruby-mode] %w/W literals have
 incorrect indentation
X-Mailer: sparrow 1.6.4 (build 1178)
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="5311be22_3ba0794b_c8"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 16907
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://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: <http://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: -0.7 (/)

--5311be22_3ba0794b_c8
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

> =20
> =46rom: Bozhidar Batsov <bozhidar=40batsov.com>
> To: Dmitry Gutov <dgutov=40yandex.ru>
> Date: Saturday, March 1, 2014 at 1:00:52 PM
> Subject: Re: bug=2316907: 24.3.50; =5Bruby-mode=5D %w/W literals have i=
ncorrect indentation
> =20
> =20
> =20
> -- =20
> Cheers,
> Bozhidar
> =20
> =20
> On Saturday, March 1, 2014 at 3:55 AM, Dmitry Gutov wrote:
> =20
> > (This is probably too late for 24.4)
> > =20
> > =20
> > =20
> =20
> Hope it=E2=80=99s not :-) (although it=E2=80=99s not a big deal obvious=
ly). =20
> > =20
> > Bozhidar Batsov <bozhidar=40batsov.com (mailto:bozhidar=40batsov.com)=
> writes:
> > =20
> > > %w/W should be indented like other array literals.
> > =20
> > And %i/I too, I guess.
> Indeed. I forgot about them. =20
> > =20
> > Looks like this'll have to be done in two parts:
> > =20
> > 1. syntax-propertize the above cases differently from the rest of the=

> > percent literals (which are treated like strings).
> > =20
> > =20
> > =20
> =20
> I was thinking more or less the same.  =20
> > =20
> > Don't know exactly what syntax to use. The values can contain any
> > unpaired characters, except those delimiting them. Put syntax =22symb=
ol=22
> > on everything inside them, except whitespace=3F
> > =20
> > And still handle interpolations somehow.
> Sounds reasonable. Not sure how hard it would be to implement. =20
> > =20
> > 2. Tokenize the elements inside the above literals without regard to
> > characters used in them. =60ruby-smie--backward-token' and its counte=
rpart
> > would have to be able to easily know when it's inside such literal.
> > =20
> > Alternatively, still propertize them as =22general strings=22, but re=
place
> > =60smie-indent-inside-string' in =60smie-indent-functions' with a
> > specialized version that would look at what the string begins with.
> > =20
> > =20
> > =20
> =20
> Option 1 seems better/cleaner to me, but obviously I=E2=80=99m not as f=
amiliar as you with the existing code, so
> it=E2=80=99s ultimately your call.
>  =20
> > =20
> > The change in syntax highlighting would have to be handled separately=
. =20
> =20


--5311be22_3ba0794b_c8
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline


                <blockquote type=3D=22cite=22 style=3D=22border-left-styl=
e:solid;border-width:1px;margin-left:0px;padding-left:10px;=22><div><b><b=
r>=46rom:</b> Bozhidar Batsov &lt;bozhidar=40batsov.com&gt;<br>
                        =20
                        =20
                        =20
                        <b>To:</b> Dmitry Gutov &lt;dgutov=40yandex.ru&gt=
;<br>
                        =20
                        =20
                        <b>Date:</b> Saturday, March 1, 2014 at 1:00:52 P=
M<br>
                        <b>Subject:</b> Re: bug=2316907: 24.3.50; =5Bruby=
-mode=5D %w/W literals have incorrect indentation<br>
                    </div>
                    =20
                    <br>
                    =20
                    <div><div><div>
                <div>
                    <br>
                </div>
                <div><div><br></div><div>--&nbsp;</div><div>Cheers,</div>=
<div>Bozhidar</div><div><br></div></div>
                 =20
                <p style=3D=22color: =23A0A0A8;=22>On Saturday, March 1, =
2014 at 3:55 AM, Dmitry Gutov wrote:</p><blockquote type=3D=22cite=22><di=
v>
                    <span><div><div><div>(This is probably too late for 2=
4.4)</div></div></div></span></div></blockquote><div><font face=3D=22Treb=
uchet MS=22>Hope it=E2=80=99s not :-) (although it=E2=80=99s not a big de=
al obviously).</font>&nbsp;</div><blockquote type=3D=22cite=22><div><span=
><div><div><div><br></div><div>Bozhidar Batsov &lt;<a href=3D=22mailto:bo=
zhidar=40batsov.com=22>bozhidar=40batsov.com</a>&gt; writes:</div><div><b=
r></div><blockquote type=3D=22cite=22><div>%w/W should be indented like o=
ther array literals.</div></blockquote><div><br></div><div>And %i/I too, =
I guess.</div></div></div></span></div></blockquote><div><font face=3D=22=
Trebuchet MS=22>Indeed. I forgot about them.</font>&nbsp;</div><blockquot=
e type=3D=22cite=22><div><span><div><div><div><br></div><div>Looks like t=
his'll have to be done in two parts:</div><div><br></div><div>1. syntax-p=
ropertize the above cases differently from the rest of the</div><div>perc=
ent literals (which are treated like strings).</div></div></div></span></=
div></blockquote><div><font face=3D=22Trebuchet MS=22>I was thinking more=
 or less the same.&nbsp;</font>&nbsp;</div><blockquote type=3D=22cite=22>=
<div><span><div><div><div><br></div><div>Don't know exactly what syntax t=
o use. The values can contain any</div><div>unpaired characters, except t=
hose delimiting them. Put syntax =22symbol=22</div><div>on everything ins=
ide them, except whitespace=3F</div><div><br></div><div>And still handle =
interpolations somehow.</div></div></div></span></div></blockquote><div>S=
ounds reasonable. Not sure how hard it would be to implement.&nbsp;</div>=
<blockquote type=3D=22cite=22><div><span><div><div><div><br></div><div>2.=
 Tokenize the elements inside the above literals without regard to</div><=
div>characters used in them. =60ruby-smie--backward-token' and its counte=
rpart</div><div>would have to be able to easily know when it's inside suc=
h literal.</div><div><br></div><div>Alternatively, still propertize them =
as =22general strings=22, but replace</div><div>=60smie-indent-inside-str=
ing' in =60smie-indent-functions' with a</div><div>specialized version th=
at would look at what the string begins with.</div></div></div></span></d=
iv></blockquote><div><font face=3D=22Trebuchet MS=22>Option 1 seems bette=
r/cleaner to me, but obviously I=E2=80=99m not as familiar as you with th=
e existing code, so</font></div><div><font face=3D=22Trebuchet MS=22>it=E2=
=80=99s ultimately your call.</font></div><div>&nbsp;</div><blockquote ty=
pe=3D=22cite=22><div><span><div><div><div><br></div><div>The change in sy=
ntax highlighting would have to be handled separately.</div></div></div><=
/span>
                 =20
                 =20
                 =20
                 =20
                </div></blockquote><div>
                    <br>
                </div>
            </div></div></div>
                </blockquote>
                =20
                <div>
                    <br>
                </div>
            
--5311be22_3ba0794b_c8--





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

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


Received: (at 16907) by debbugs.gnu.org; 1 Mar 2014 01:55:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 20:55:17 2014
Received: from localhost ([127.0.0.1]:45083 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WJZ92-0004UC-Kq
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2014 20:55:17 -0500
Received: from mail-ea0-f169.google.com ([209.85.215.169]:33481)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <raaahh@HIDDEN>) id 1WJZ90-0004U2-74
 for 16907 <at> debbugs.gnu.org; Fri, 28 Feb 2014 20:55:14 -0500
Received: by mail-ea0-f169.google.com with SMTP id h14so226138eaj.0
 for <16907 <at> debbugs.gnu.org>; Fri, 28 Feb 2014 17:55:13 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=sender:from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version:content-type;
 bh=Q0zCDYW/a1JgDQcZNewPBPK1DIlFlpJ/nPa4WOPmeNc=;
 b=JXDzK1ZA3PZRwaBmSN9AJgLfJ6cvv7vDISkdkiouuqgbwcY/EUZLWtpPEFOZh/y3S5
 Dqt+3jjG9MXKzFjKTatmaxbuKJmdIzNmU4/IvVUCQCituvgd0JUSwBZZvmj0VH3dsI0T
 AbQbMla/n/AeCDser8Xjde3rJxe5hKc8sWhY6js4U8bd34xd/B9eK6tgu+Zjg+4fHDnX
 PjpMoeWF2yUv6FlQMIS/XB0YxpQvsLsOfnfNc6s6Ypc3K6wXh7VZzJ2dcZW+H53lXrRT
 scRgG6W6FPFHfiafAbm05egfRle2RId4nx2YWrnqssZLNSOLOj127cp+oASbTCzKhk7b
 W3vA==
X-Received: by 10.14.111.201 with SMTP id w49mr691365eeg.92.1393638912841;
 Fri, 28 Feb 2014 17:55:12 -0800 (PST)
Received: from axl ([93.109.195.252])
 by mx.google.com with ESMTPSA id o5sm3313978eeg.8.2014.02.28.17.55.10
 for <multiple recipients>
 (version=TLSv1.2 cipher=RC4-SHA bits=128/128);
 Fri, 28 Feb 2014 17:55:12 -0800 (PST)
From: Dmitry Gutov <dgutov@HIDDEN>
To: Bozhidar Batsov <bozhidar@HIDDEN>
Subject: Re: bug#16907: 24.3.50;
 [ruby-mode] %w/W literals have incorrect indentation
References: <m2ha7jutyl.fsf@HIDDEN>
Date: Sat, 01 Mar 2014 03:55:02 +0200
In-Reply-To: <m2ha7jutyl.fsf@HIDDEN> (Bozhidar Batsov's message of "Fri,
 28 Feb 2014 17:40:02 +0200")
Message-ID: <874n3in0nd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 16907
Cc: 16907 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://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: <http://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: -0.7 (/)

(This is probably too late for 24.4)

Bozhidar Batsov <bozhidar@HIDDEN> writes:

> %w/W should be indented like other array literals.

And %i/I too, I guess.

Looks like this'll have to be done in two parts:

1. syntax-propertize the above cases differently from the rest of the
percent literals (which are treated like strings).

Don't know exactly what syntax to use. The values can contain any
unpaired characters, except those delimiting them. Put syntax "symbol"
on everything inside them, except whitespace?

And still handle interpolations somehow.

2. Tokenize the elements inside the above literals without regard to
characters used in them. `ruby-smie--backward-token' and its counterpart
would have to be able to easily know when it's inside such literal.

Alternatively, still propertize them as "general strings", but replace
`smie-indent-inside-string' in `smie-indent-functions' with a
specialized version that would look at what the string begins with.

The change in syntax highlighting would have to be handled separately.




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

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


Received: (at submit) by debbugs.gnu.org; 28 Feb 2014 15:40:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 28 10:40:42 2014
Received: from localhost ([127.0.0.1]:44763 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1WJPYD-0003Fk-As
	for submit <at> debbugs.gnu.org; Fri, 28 Feb 2014 10:40:38 -0500
Received: from eggs.gnu.org ([208.118.235.92]:40495)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPY4-0003FQ-GX
 for submit <at> debbugs.gnu.org; Fri, 28 Feb 2014 10:40:29 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPXu-00034s-2Y
 for submit <at> debbugs.gnu.org; Fri, 28 Feb 2014 10:40:27 -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 autolearn=disabled
 version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:53838)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPXt-00034o-Vp
 for submit <at> debbugs.gnu.org; Fri, 28 Feb 2014 10:40:18 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:42139)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPXm-0001ZX-IW
 for bug-gnu-emacs@HIDDEN; Fri, 28 Feb 2014 10:40:17 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPXf-0002vn-1E
 for bug-gnu-emacs@HIDDEN; Fri, 28 Feb 2014 10:40:10 -0500
Received: from mail-ea0-f173.google.com ([209.85.215.173]:49768)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <bozhidar@HIDDEN>) id 1WJPXe-0002uk-ON
 for bug-gnu-emacs@HIDDEN; Fri, 28 Feb 2014 10:40:02 -0500
Received: by mail-ea0-f173.google.com with SMTP id r15so1397993ead.4
 for <bug-gnu-emacs@HIDDEN>; Fri, 28 Feb 2014 07:40:01 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:from:to:subject:date:message-id:mime-version
 :content-type;
 bh=yi3KhKQqISnVEzbgOBKMgKRZpiU2X+mRV34ol97kGSg=;
 b=SrqA5inOtt0RsZe+9gbXEPmVv3qBqNv4v6hBAeRE3U1hSm2n5//nRKFkKskPib3S5h
 aOaTWhY2vosoWobTrRx+a3TAl3ik4kMCFszTFrcIDwv0PTMx4IyH1HfjW8A5qh/osgIA
 gtGetU3UqzMsPe5q5uh2tDxmZCbM/scDz6E9Vs/nGwaKqwML7KRCrdnU0jTNnFqHi0TR
 K7V0LY8dLLl7lmrSFn3XXFx+CDZQyBk18gGnsz9uZMExXO6QsVde34fm5wbJF5Ts8jWL
 hXFo2/B8rSBtdUYqIS1hg8xi8pYb2ohkKEg+Wi+rApDFeL6p78qi1hUI0xPjFke86tfd
 tXzg==
X-Gm-Message-State: ALoCoQltrR4I6nwstZKUj/xiA3EBVG8w9zuCIb2OXcmeuXcilJPzo4OOi7Y5WQjNNLBPgnB2Byoa
X-Received: by 10.14.87.129 with SMTP id y1mr22284309eee.38.1393602001524;
 Fri, 28 Feb 2014 07:40:01 -0800 (PST)
Received: from Bozhidars-MacBook-Pro.local ([95.87.231.111])
 by mx.google.com with ESMTPSA id 46sm11796674ees.4.2014.02.28.07.39.59
 for <bug-gnu-emacs@HIDDEN>
 (version=TLSv1 cipher=RC4-SHA bits=128/128);
 Fri, 28 Feb 2014 07:40:00 -0800 (PST)
Received: by Bozhidars-MacBook-Pro.local (Postfix, from userid 501)
 id B7323836E86F; Fri, 28 Feb 2014 17:40:02 +0200 (EET)
From: Bozhidar Batsov <bozhidar@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 24.3.50; [ruby-mode] %w/W literals have incorrect indentation
Date: Fri, 28 Feb 2014 17:40:02 +0200
Message-ID: <m2ha7jutyl.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
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.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://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: <http://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 (-----)


Very briefly put, the following code:

x = %w(
  one
  two
  three
)

is indented like this:

x = %w(
one
two
three
)

%w/W should be indented like other array literals.



In GNU Emacs 24.3.50.1 (x86_64-apple-darwin13.0.0, NS apple-appkit-1265.00)
 of 2014-01-27 on Bozhidars-MacBook-Pro.local
Windowing system distributor `Apple', version 10.3.1265
Configured using:
 `configure --prefix=/usr/local/Cellar/emacs/HEAD --without-dbus
 --enable-locallisppath=/usr/local/share/emacs/site-lisp
 --infodir=/usr/local/Cellar/emacs/HEAD/share/info/emacs
 --without-gnutls --with-ns --disable-ns-self-contained'

Important settings:
  locale-coding-system: utf-8-unix

Major mode: Ruby

Minor modes in effect:
  ruby-tools-mode: t
  inf-ruby-minor-mode: t
  diff-auto-refine-mode: t
  subword-mode: t
  guru-mode: t
  erc-truncate-mode: t
  erc-spelling-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  which-function-mode: t
  flx-ido-mode: t
  ido-ubiquitous-mode: t
  winner-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  whitespace-mode: t
  global-anzu-mode: t
  anzu-mode: t
  projectile-global-mode: t
  projectile-mode: t
  flyspell-mode: t
  volatile-highlights-mode: t
  global-hl-line-mode: t
  shell-dirtrack-mode: t
  recentf-mode: t
  savehist-mode: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  smartparens-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  prelude-global-mode: t
  prelude-mode: t
  tooltip-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
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
p d a t e SPC R b x <backspace> <backspace> u b i n 
i o <backspace> u s SPC t r a v i s c i SPC c o n f 
i g <return> <return> S e e SPC C-y <return> f o r 
SPC d e t a i l s . C-c C-c <return> <down-mouse-1> 
<mouse-1> q P P l l q <down-mouse-1> <mouse-1> C-x 
C-f p o w <backspace> <backspace> <backspace> <backspace> 
p o w e r <return> t r a <return> C-x g F F C-x o C-n 
C-n C-n C-n C-n C-e <backspace> <backspace> <backspace> 
<backspace> C-x C-s C-x C-f g e m <return> C-n C-n 
C-n C-n C-n C-k C-k C-k C-k C-k <backspace> <backspace> 
C-x C-s C-x g C-n C-n C-n C-n C-n C-n s s c c M-p M-n 
C-p C-p C-e C-c C-c P P C-x o C-x b <return> C-p C-p 
<return> - SPC 2 . 1 . 0 C-x C-s C-x g C-n s c c R 
u n SPC s p e c s SPC o n SPC R u b y SPC 2 . 1 SPC 
a s SPC w e l l C-c C-c P P l l q <down-mouse-1> <mouse-1> 
C-x b c i d e r C-g s-g C-g s-p c i d e r <return> 
i n t e r a <return> M-< s-g d o c - h a n d l e r 
<return> <help-echo> <down-mouse-2> <mouse-1> <help-echo> 
<down-mouse-2> <mouse-1> <help-echo> C-l <help-echo> 
<down-mouse-1> <mouse-1> C-x b t e s t . <return> C-p 
C-p C-p C-p C-p C-p C-p C-p C-p C-a C-k C-k C-k C-k 
C-k C-k C-k C-n C-SPC C-n C-n C-n C-n C-n M-w <help-echo> 
<help-echo> M-x r e p o r t <return>

Recent messages:
Saving file /Users/bozhidar/projects/powerpack/.git/COMMIT_EDITMSG...
Wrote /Users/bozhidar/projects/powerpack/.git/COMMIT_EDITMSG
Git finished
Type a prefix key to toggle it. Run 'actions' with their prefixes. '?' for more help.
Running git push -v origin master:refs/heads/master
Git finished
Type a prefix key to toggle it. Run 'actions' with their prefixes. '?' for more help.
Quit [2 times]
Mark set
Grep finished (matches found)

Load-path shadows:
/Users/bozhidar/.emacs.d/elpa/tabulated-list-20120406.2251/tabulated-list hides /usr/local/Cellar/emacs/HEAD/share/emacs/24.3.50/lisp/emacs-lisp/tabulated-list

Features:
(shadow sort mail-extr emacsbug vc-annotate vc vc-dispatcher nxml-uchnm
rng-xsd xsd-regexp rng-cmpct edebug crm ielm hippie-exp markdown-mode
noutline outline gitignore-mode conf-mode yaml-mode ace-jump-mode ffap
url-parse url-vars ruby-tools inf-ruby ruby-mode-expansions
smartparens-ruby ruby-mode smie misearch multi-isearch jka-compr
eieio-opt speedbar sb-image ezimage dframe mule-util find-dired
magit-key-mode magit view epa derived epg epg-config diff-mode
git-rebase-mode git-commit-mode server log-edit message sendmail rfc822
mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader pcvs-util
add-log executable vc-git lisp-mnt network-stream starttls tls cider
cider-mode cider-repl cider-eldoc clojure-test-mode cider-interaction
arc-mode archive-mode cider-client nrepl-client cider-util ewoc
superword subword clojure-mode-expansions clojure-mode inf-lisp
rainbow-mode color rainbow-delimiters elisp-slime-nav guru-mode
prelude-key-chord key-chord prelude-xml nxml-mode-expansions
html-mode-expansions sgml-mode smartparens-html rng-nxml rng-valid
rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn
nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc
xmltok prelude-web prelude-scss prelude-scheme prelude-ruby prelude-perl
prelude-org prelude-js prelude-erc erc-truncate erc-autoaway
erc-spelling erc-notify erc-log erc-list erc-menu erc-join erc-ring
erc-networks erc-pcomplete erc-track erc-match erc-button erc-fill
erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat
prelude-emacs-lisp prelude-css prelude-common-lisp slime-autoloads
prelude-clojure prelude-lisp prelude-c prelude-programming flycheck
help-mode rx f which-func imenu prelude-ido smex flx-ido flx
ido-ubiquitous warnings ido prelude-osx exec-path-from-shell
prelude-global-keybindings prelude-editor winner undo-tree diff esh-var
esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg eldoc esh-groups eshell
esh-module esh-mode esh-util re-builder whitespace browse-kill-ring
midnight ediff-merg ediff-wind ediff-diff ediff-mult ediff-help
ediff-init ediff-util ediff dired-x dired anzu projectile pkg-info
find-func grep compile s bookmark pp expand-region text-mode-expansions
er-basic-expansions expand-region-core expand-region-custom flyspell
ispell etags volatile-highlights hl-line windmove tramp-cache tramp-sh
tramp tramp-compat auth-source gnus-util mm-util mail-prsvr
password-cache tramp-loaddefs trampver shell pcomplete comint ansi-color
ring format-spec recentf tree-widget wid-edit savehist saveplace
diminish smartparens-config smartparens autorevert filenotify delsel
prelude-mode easy-mmode edmacro kmacro prelude-core epl advice help-fns
dash thingatpt prelude-ui zenburn-theme prelude-packages finder-inf
ack-and-a-half-autoloads diminish-autoloads erlang-autoloads
flx-ido-autoloads eieio byte-opt bytecomp byte-compile cconv eieio-core
grizzl-autoloads key-chord-autoloads logito-autoloads info easymenu
cl-macs gv move-text-autoloads pkg-info-autoloads puppet-mode-autoloads
rainbow-delimiters-autoloads request-autoloads rubocop-autoloads
volatile-highlights-autoloads yaml-mode-autoloads package cl cl-loaddefs
cl-lib time-date tooltip electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel ns-win tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer 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 make-network-process cocoa ns
multi-tty emacs)




Acknowledgement sent to Bozhidar Batsov <bozhidar@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#16907; 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: Fri, 31 Oct 2014 17:00:04 UTC

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