GNU bug report logs - #60543
29.0.60; c-ts-mode: Labels are not properly indented

Previous Next

Package: emacs;

Reported by: Mohammed Sadiq <sadiq <at> sadiqpk.org>

Date: Wed, 4 Jan 2023 07:29:02 UTC

Severity: normal

Found in version 29.0.60

Done: Yuan Fu <casouri <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Yuan Fu <casouri <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#60543: closed (29.0.60; c-ts-mode: Labels are not properly
 indented)
Date: Mon, 09 Jan 2023 01:07:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 8 Jan 2023 17:06:39 -0800
with message-id <2F43D0CF-3FFC-4252-A5C7-D5EA352B3F4B <at> gmail.com>
and subject line Re: bug#60543: 29.0.60; c-ts-mode: Labels are not properly indented
has caused the debbugs.gnu.org bug report #60543,
regarding 29.0.60; c-ts-mode: Labels are not properly indented
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
60543: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=60543
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Mohammed Sadiq <sadiq <at> sadiqpk.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.60; c-ts-mode: Labels are not properly indented
Date: Wed, 04 Jan 2023 12:58:03 +0530
With the default "gnu" style, labels are not properly indented.

Eg., for the following code:

int
main (void)
{
end:
  clean ();
}


I expect to get the following indentation for "end:" (single space
before "end" for "gnu" style, and no indentation for "linux" style):

int
main (void)
{
 end:
  clean ();
}



In GNU Emacs 29.0.60 (build 5, x86_64-pc-linux-gnu, GTK+ Version
 3.24.35, cairo version 1.16.0) of 2023-01-02 built on purism
Repository revision: 2569ede9c496bb060e0b88428cb541088aaba1f9
Repository branch: emacs-29
Windowing system distributor 'The X.Org Foundation', version 
11.0.12101005
System Description: Debian GNU/Linux bookworm/sid


[Message part 3 (message/rfc822, inline)]
From: Yuan Fu <casouri <at> gmail.com>
To: Mohammed Sadiq <sadiq <at> sadiqpk.org>
Cc: 60543-done <at> debbugs.gnu.org
Subject: Re: bug#60543: 29.0.60; c-ts-mode: Labels are not properly indented
Date: Sun, 8 Jan 2023 17:06:39 -0800
Mohammed Sadiq <sadiq <at> sadiqpk.org> writes:

> On 2023-01-08 07:45, Yuan Fu wrote:
>> After reading the manual for GNU indent, I think Linux style asks for
>> indenting labels to column 1, not the GNU style. And c-ts-mode’s
>> current
>> GNU style indentation agrees with GNU indent.
>> So I only added a rule to indent labels to column 1 in Linux style.
>> Feel
>> free to correct me, of course.
>> Yuan
>
> As per
> https://www.kernel.org/doc/html/v6.0/process/coding-style.html#centralized-exiting-of-functions
> the label has no indent from the parent block
>
> And for GNU style, I couldn't find an example the style manual, nor in
> GNU hello.
> So I except c-ts-mode to have the same behavior as c-mode (even if
> it's wrong
> as per GNU indent,).
>
> In short, I expect c-ts-mode to behave the same as c-mode because
> that's what
> users often expect (ie, for those who uses GNU indent, their code will
> indent
> right regardless of how c-mode or c-ts-mode behave.  But for the users
> who
> migrate from c-mode - the anticipated user base of c-ts-mode - expects
> it to
> be no different from c-mode)

Thanks. You are completely right. Linux style indents to column 0, and
GNU style indents to column 1 in top-level function and base indent
level of the parent in nested blocks (which is ... interesting).

I changed it to indent like that.

Yuan


This bug report was last modified 2 years and 131 days ago.

Previous Next


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