[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#61026: 29.0.60; c-ts-mode: Broken indentation for loops and conditio
From: |
Yuan Fu |
Subject: |
bug#61026: 29.0.60; c-ts-mode: Broken indentation for loops and conditions without brace |
Date: |
Wed, 25 Jan 2023 23:54:08 -0800 |
Theodor Thornhill <theo@thornhill.no> writes:
> Mohammed Sadiq <sadiq@sadiqpk.org> writes:
>
>> The following code has broken indentation with c-ts-mode:
>>
>> while (true)
>> if (true) {
>> puts ("Hello");
>> }
>>
>> if (true)
>> if (true)
>> {
>> puts ("World");
>> }
>>
>> For which, I expect to get the following indentation (with default config):
>>
>> while (true)
>> if (true) {
>> puts ("Hello");
>> }
>>
>> if (true)
>> if (true)
>> {
>> puts ("World");
>> }
>>
>>
>
> Thanks, Mohammed!
>
> Yuan, I'm not sure the new brace counting method is a good enough
> improvement just yet considering its complexity and the number of issues
> we are seeing. Do you see any simple fixes for these issues?
I fixed it.
> I can try to debug this this weekend, but not sure I really have time to
> fix it. All of these issues work fine in js-ts-mode or java-ts-mode, if
> I'm not mistaken.
Yes, because js and java doesn’t allow omitting brackets. So we only
need to add a special-case for C/C++, so it isn’t too bad.
Yuan