Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript

From: Yuan Fu <[email-masked]>
Date: Sat, 30 Dec 2023 12:31:20 -0800

> On Dec 29, 2023, at 8:24 PM, Yuan Fu <[email-masked]> wrote:
> 
> 
> 
>> On Dec 26, 2023, at 10:21 PM, Noah Peart <[email-masked]> wrote:
>> 
>> Tags: patch
>> 
>> * Bug: `js-ts-mode` and `typescript-ts-mode` are missing indentation
>> rules for lexical declarations that span multiple lines.
>> 
>> Recipe to reproduce:
>> 
>> Using the following function to configure js-ts-mode and indent the
>> buffer:
>> 
>>    (defun try-indent ()
>>      (interactive)
>>      (js-ts-mode)
>>      (setq-local indent-tabs-mode nil)
>>      (setq-local js-indent-level 4)
>>      (indent-region (point-min) (point-max)))
>> 
>> Add the following example to a buffer and call `try-indent`.
>> 
>>    let foo = 1,
>>    bar = 2; // no indent rule matches this line
>> 
>> No indentation is applied to the second line.
>> 
>> This patch adds a simple indentation rules for `js-ts-mode` and
>> `typescript-ts-mode` to handle the multi-line lexical declarations.

It seems that js-mode indents bar to align with foo, rather than indenting one level. I feel that we should do the same, WDYT?

Yuan