Received: (at 68054) by debbugs.gnu.org; 2 May 2024 13:39:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 02 09:39:43 2024 Received: from localhost ([127.0.0.1]:43879 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2Wez-0003Lg-1s for submit <at> debbugs.gnu.org; Thu, 02 May 2024 09:39:42 -0400 Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]:57424) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1s2Wev-0003La-OR for 68054 <at> debbugs.gnu.org; Thu, 02 May 2024 09:39:39 -0400 Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-23d2462c3b3so1259261fac.2 for <68054 <at> debbugs.gnu.org>; Thu, 02 May 2024 06:39:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714657150; x=1715261950; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ORy0nLHztgegQsn1kZ5q85yDVH79ceZkj0NZO7OP60Y=; b=m31M5A2I4xgOC0RH56RHQl/domZYgCqx2ojEkQSrpQrH5wbA3hK4BstSGDs2YoCPrW ALCllKekKjCYN3+WgdX8nzZbjdZ8uKUYo9Xj7cZUPicP0CKSwSROySy6JcKH6cXQ04y5 b34jvkZL7CtqTkkMeoDxdYZKcMDGuyeX1gbuAUxJDftN4xEurtSy8nrUQ8450RbLjqFZ MKlbyI6qR4fVKL0qNyPn6e0678Ma+52CYTldm1MZwSlfJBrx3sJx4LgLXMIoElPc+Wsl UqPJAr+Wbrx3VhPc9GKJCtYd+KwTBrje1QeYNDYnPcCjrncDaLSdH77f6XPVa2d9QwFI 34zQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714657150; x=1715261950; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ORy0nLHztgegQsn1kZ5q85yDVH79ceZkj0NZO7OP60Y=; b=M2lo69Z6hcGB8BSbDIiyPtPyAa0LcKhh1+oVlSzoeSUKBF75270pXWRteW2Stv0riB ynlirj4lZ3i3DbV91bEqY+XAw732ZUItX6m5rZHWlIXBNQx6nHUGEZt0Zelh9+KJ8eR9 KSLIuRctot1IarsJNnk4wi04k2EoVNKeAjr9VFskvPSdTeoEUuQUZHqVMo5wq/D68AAx kux75ijjCl6VcamE3Y9pKC3JqiVrE0G6A5noam+q/ifWl/qFjIRxOFBgmYvXgN5F9zia P3KkqBKPdDEznJuQ/jAvoqU46oYwGDACHcHAhBj7c0AZissU+GY7tx7R4CGCmNOnz4rG srpg== X-Forwarded-Encrypted: i=1; AJvYcCUwkXDdAdWx3D+IEeZhkWkM8sqQM8kLrtME+rGJnVu4zjRTf8c2Twvj6jLtE/Dx0iqOxt3VFq8X3p0seGCgNsUTXiuryZs= X-Gm-Message-State: AOJu0YxlKHphRj64KSaqgDZZDezN62Ar/AxVjzxmAjtQotsVpmPu5jgh hTd5Ws0sYrBSUb4gNIKYLvvaCOj215E/3qWpok/T0gWBTsSBJRXaWTmlYVdFehPFGCEJ5DcueWH 2YhSi9t7ZDoTi99lvwG1BygVWAYY= X-Google-Smtp-Source: AGHT+IHWb17VPxOfqKcWVidWdpYnrjmvQLyBUNDZA15SP0papt5B2IOWwefb7PUT8zXdGVfJbPRvwibGe2HPV8S+dZw= X-Received: by 2002:a05:6871:713:b0:22e:c17e:4aa1 with SMTP id f19-20020a056871071300b0022ec17e4aa1mr2301518oap.20.1714657149281; Thu, 02 May 2024 06:39:09 -0700 (PDT) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> <CAPVBTSdR5UqtJtmzREvEUAGh6+gKKEq_+WF0L1hxb_KuPDgRGw@HIDDEN> <db3096de-803d-41ad-a86b-7c7eda3376b9@HIDDEN> <CAPVBTScNQabge9RM9+RLFr6UmUsuh0pQpt7HL46W+i4MVFi+yg@HIDDEN> In-Reply-To: <CAPVBTScNQabge9RM9+RLFr6UmUsuh0pQpt7HL46W+i4MVFi+yg@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Thu, 2 May 2024 06:38:57 -0700 Message-ID: <CAPVBTScPO4vCMZ9qkJZEw9o54XB7_QM0kygiU2e0DD_DYYtKNg@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Dmitry Gutov <dmitry@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000004b6da2061778baa7" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) --0000000000004b6da2061778baa7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable > js-ts-mode now has the exact same indentation I'm not sure what you meant by this - did you mean js-ts-mode has the same indentation for non-multivar declarations as the examples shown above? js-ts-mode is still missing indentation rules for multiple decl statements. The patch would work for js-ts-mode as well, but I didn't want to copy the code between the files. So much of the grammar is shared between js-ts-mode and typescript-ts-mode, it might be worth combining - neovim uses an ecma grammar from which they both inherit. On Thu, May 2, 2024 at 6:26=E2=80=AFAM Noah Peart <noah.v.peart@HIDDEN> = wrote: > Ok, here is an updated patch for option 3. The indentation looks like th= e > examples > you've provided - it's the same indentation as in js-mode for these cases= . > > > On Thu, Apr 25, 2024 at 6:06=E2=80=AFPM Dmitry Gutov <dmitry@HIDDEN> w= rote: > >> On 26/04/2024 01:48, Noah Peart wrote: >> > Ok, I can make a patch for option 3 (the same as js-mode) instead. It'= s >> > implementation is the simplest also. Would that work? >> >> I'd be okay with it, yes, thank you. If only because it's good to have >> similar defaults in both modes, and evolve them together until one is >> deprecated. >> >> FTR, the option more in line with my previous explanation would be >> option 3, I think. Rhere's no real need to implement it right now, I >> guess, but for illustration: >> >> const a =3D >> (x: string): string =3D> { >> return x + x; >> }, >> bbb =3D >> { >> "x": 0 >> }, >> cccc =3D >> 1, >> ddddd =3D 0; >> >> const bbb =3D >> { >> "x": 0 >> }, a =3D (x: string): string =3D> { >> return x + x; >> }, >> bbb =3D { >> "x": 0 >> }, >> cccc =3D 1, >> ddddd =3D 0; >> >> js-mode also has by necessity the below exceptions: when the first >> variable's value starts on the same line, and it's multiline (usually >> that means that the same line ends with a {), then its indentation level >> goes back to the statement, not to the "const" keyword: >> >> const a =3D (x: string): string =3D> { >> return x + x; >> } >> >> var bbb =3D { >> "x": 0 >> } >> >> This is basically to support the non-multivar declarations better. >> js-ts-mode now has the exact same indentation; these cases might come up >> when you change how the first two cases indent, however. >> > --0000000000004b6da2061778baa7 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">> js-ts-mode now has the exact same indentation<div><br= ></div><div>I'm not sure what you meant by this - did you mean js-ts-mo= de has</div><div>the same indentation for non-multivar declarations as the = examples</div><div>shown above? js-ts-mode is still missing indentation rul= es for multiple decl statements.</div><div>The patch would work for js-ts-m= ode as well, but I didn't want to copy the</div><div>code between the f= iles.=C2=A0</div><div><br></div><div>So much of the grammar is shared betwe= en js-ts-mode and</div><div>typescript-ts-mode, it might be worth combining= - neovim uses an ecma grammar</div><div>from which they both inherit.</div= ></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr"= >On Thu, May 2, 2024 at 6:26=E2=80=AFAM Noah Peart <<a href=3D"mailto:no= ah.v.peart@HIDDEN">noah.v.peart@HIDDEN</a>> wrote:<br></div><block= quote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1= px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr">Ok, here is an= updated patch for option 3.=C2=A0 The indentation looks like the examples<= br><div>you've provided - it's the same indentation as in js-mode f= or these cases.</div><div><br></div></div><br><div class=3D"gmail_quote"><d= iv dir=3D"ltr" class=3D"gmail_attr">On Thu, Apr 25, 2024 at 6:06=E2=80=AFPM= Dmitry Gutov <<a href=3D"mailto:dmitry@HIDDEN" target=3D"_blank">dmi= try@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gmail_quote" sty= le=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddi= ng-left:1ex">On 26/04/2024 01:48, Noah Peart wrote:<br> > Ok, I can make a patch for option 3 (the same as js-mode) instead. It&= #39;s<br> > implementation is the simplest also.=C2=A0 Would that work?<br> <br> I'd be okay with it, yes, thank you. If only because it's good to h= ave <br> similar defaults in both modes, and evolve them together until one is <br> deprecated.<br> <br> FTR, the option more in line with my previous explanation would be <br> option 3, I think. Rhere's no real need to implement it right now, I <b= r> guess, but for illustration:<br> <br> const a =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(x: string): string =3D> {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return x + x;<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0bbb =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0{<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0cccc =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A01,<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0ddddd =3D 0;<br> <br> const bbb =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0{<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0}, a =3D (x: string): string =3D> {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return x + x;<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0bbb =3D {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0cccc =3D 1,<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0ddddd =3D 0;<br> <br> js-mode also has by necessity the below exceptions: when the first <br> variable's value starts on the same line, and it's multiline (usual= ly <br> that means that the same line ends with a {), then its indentation level <b= r> goes back to the statement, not to the "const" keyword:<br> <br> const a =3D (x: string): string =3D> {<br> =C2=A0 =C2=A0return x + x;<br> }<br> <br> var bbb =3D {<br> =C2=A0 =C2=A0"x": 0<br> }<br> <br> This is basically to support the non-multivar declarations better. <br> js-ts-mode now has the exact same indentation; these cases might come up <b= r> when you change how the first two cases indent, however.<br> </blockquote></div> </blockquote></div> --0000000000004b6da2061778baa7--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 2 May 2024 13:26:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 02 09:26:46 2024 Received: from localhost ([127.0.0.1]:43790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2WST-0000SV-7q for submit <at> debbugs.gnu.org; Thu, 02 May 2024 09:26:46 -0400 Received: from mail-oa1-x2f.google.com ([2001:4860:4864:20::2f]:59598) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1s2WSO-0000SI-7y for 68054 <at> debbugs.gnu.org; Thu, 02 May 2024 09:26:43 -0400 Received: by mail-oa1-x2f.google.com with SMTP id 586e51a60fabf-23d4a716ee7so1342954fac.2 for <68054 <at> debbugs.gnu.org>; Thu, 02 May 2024 06:26:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714656372; x=1715261172; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FJjoe4KYRUHZdIUokplWhYVa4229FKnF2E90oHuf3Lg=; b=MUeu4qxjRWajF5+LqL/fzvEaKTeb6e+dWrvoHR3R0tBZuOBm4R3pH1G1IKDa9xmtRL mVG9ROPDseiRy6mCApvXivgsdRZ7qkraLH0bEKcs5swUkvqVJ2YKnyBNg89vJfV38M6S V33MrL4Je8Iyc0q0p+0vUb5ICT/N42O5hUzIKArmMzPH/L4/HvnVArVR4fxR2JyG7lNI taHqb94IBxI+YswUMW2RldsKk5/4aXzT7idcu3ZkiYZT+rr6Dmf2/MEAa+gDwcqc4ODl CSBEcha3QlHbAGiOd2INsdDARlRo26v8BZeZv84BBWaox7L6SZRJyiXMXHC4tuRvbwIw MR9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714656372; x=1715261172; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FJjoe4KYRUHZdIUokplWhYVa4229FKnF2E90oHuf3Lg=; b=W8e9NAIbtg+YSy6xMi0LMY51lZMirvaaMYGJsHDjr/S/Vx3zxtOerAFC+uroi8tp+b qGaYO/BUNVpfgml45Pofg61ZzEEz30GZrkrwxcbrbniViABrSneG60bFEmR5Q1Llw8gq QoqsHPIBb0ecblyWe/nMU5jcwW4Kptko4PZoyO2rhzf+P2tst7Gs2VJZArKiItY4UCz3 tM0/LGHrz8CaK/7d6y0W0IT3uyy6GGBmNVCMjFBx+PHT8DPFfzXO4wWPPi2Q65owmTGQ uYU1Sk+i5YdaRrbVafQEpcTghDIidK6JHQJeTQrHVu1b5le4R6QxeYffkdSyzc02S2Me 1THw== X-Forwarded-Encrypted: i=1; AJvYcCXxHJK14D7W3OahD//PDs4CfuajiTXxOclkLi9xbBohkGJOIyAxgiy83lnyzQJrQxgRqIhopobsOsgDQAnXZ0+BzeX7i1c= X-Gm-Message-State: AOJu0Yz2G2UuFw12t3X4DMFF7Zae5Zk8d94ZceeQJHsS4LA4EvTQxGxj z1MBYa0jHe4ijnQpsQfKPOaNryzhQMGlTpdGGITvmoCYNaioai6pXdl1jpxzUGu1Aw/OrCQqC3I iwszzVnk/AlLoRC4JKnvs0Nc71j4= X-Google-Smtp-Source: AGHT+IG9ktUtZQYgsSagjC4UtNvOjsXqU2KupFkar1N7zcLTm26/vZuXZakLxOCIM5CNahGFR5ch+r6DlC8i2mANcus= X-Received: by 2002:a05:6870:f684:b0:221:9157:b587 with SMTP id el4-20020a056870f68400b002219157b587mr2716469oab.35.1714656371667; Thu, 02 May 2024 06:26:11 -0700 (PDT) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> <CAPVBTSdR5UqtJtmzREvEUAGh6+gKKEq_+WF0L1hxb_KuPDgRGw@HIDDEN> <db3096de-803d-41ad-a86b-7c7eda3376b9@HIDDEN> In-Reply-To: <db3096de-803d-41ad-a86b-7c7eda3376b9@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Thu, 2 May 2024 06:26:00 -0700 Message-ID: <CAPVBTScNQabge9RM9+RLFr6UmUsuh0pQpt7HL46W+i4MVFi+yg@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Dmitry Gutov <dmitry@HIDDEN> Content-Type: multipart/mixed; boundary="000000000000f2412a0617788bd3" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) --000000000000f2412a0617788bd3 Content-Type: multipart/alternative; boundary="000000000000f241290617788bd1" --000000000000f241290617788bd1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Ok, here is an updated patch for option 3. The indentation looks like the examples you've provided - it's the same indentation as in js-mode for these cases. On Thu, Apr 25, 2024 at 6:06=E2=80=AFPM Dmitry Gutov <dmitry@HIDDEN> wro= te: > On 26/04/2024 01:48, Noah Peart wrote: > > Ok, I can make a patch for option 3 (the same as js-mode) instead. It's > > implementation is the simplest also. Would that work? > > I'd be okay with it, yes, thank you. If only because it's good to have > similar defaults in both modes, and evolve them together until one is > deprecated. > > FTR, the option more in line with my previous explanation would be > option 3, I think. Rhere's no real need to implement it right now, I > guess, but for illustration: > > const a =3D > (x: string): string =3D> { > return x + x; > }, > bbb =3D > { > "x": 0 > }, > cccc =3D > 1, > ddddd =3D 0; > > const bbb =3D > { > "x": 0 > }, a =3D (x: string): string =3D> { > return x + x; > }, > bbb =3D { > "x": 0 > }, > cccc =3D 1, > ddddd =3D 0; > > js-mode also has by necessity the below exceptions: when the first > variable's value starts on the same line, and it's multiline (usually > that means that the same line ends with a {), then its indentation level > goes back to the statement, not to the "const" keyword: > > const a =3D (x: string): string =3D> { > return x + x; > } > > var bbb =3D { > "x": 0 > } > > This is basically to support the non-multivar declarations better. > js-ts-mode now has the exact same indentation; these cases might come up > when you change how the first two cases indent, however. > --000000000000f241290617788bd1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Ok, here is an updated patch for option 3.=C2=A0 The inden= tation looks like the examples<br><div>you've provided - it's the s= ame indentation as in js-mode for these cases.</div><div><br></div></div><b= r><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Thu, = Apr 25, 2024 at 6:06=E2=80=AFPM Dmitry Gutov <<a href=3D"mailto:dmitry@g= utov.dev">dmitry@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gma= il_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,2= 04,204);padding-left:1ex">On 26/04/2024 01:48, Noah Peart wrote:<br> > Ok, I can make a patch for option 3 (the same as js-mode) instead. It&= #39;s<br> > implementation is the simplest also.=C2=A0 Would that work?<br> <br> I'd be okay with it, yes, thank you. If only because it's good to h= ave <br> similar defaults in both modes, and evolve them together until one is <br> deprecated.<br> <br> FTR, the option more in line with my previous explanation would be <br> option 3, I think. Rhere's no real need to implement it right now, I <b= r> guess, but for illustration:<br> <br> const a =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(x: string): string =3D> {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return x + x;<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0bbb =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0{<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0cccc =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A01,<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0ddddd =3D 0;<br> <br> const bbb =3D<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0{<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0}, a =3D (x: string): string =3D> {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0return x + x;<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0bbb =3D {<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0"x": 0<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0},<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0cccc =3D 1,<br> =C2=A0 =C2=A0 =C2=A0 =C2=A0ddddd =3D 0;<br> <br> js-mode also has by necessity the below exceptions: when the first <br> variable's value starts on the same line, and it's multiline (usual= ly <br> that means that the same line ends with a {), then its indentation level <b= r> goes back to the statement, not to the "const" keyword:<br> <br> const a =3D (x: string): string =3D> {<br> =C2=A0 =C2=A0return x + x;<br> }<br> <br> var bbb =3D {<br> =C2=A0 =C2=A0"x": 0<br> }<br> <br> This is basically to support the non-multivar declarations better. <br> js-ts-mode now has the exact same indentation; these cases might come up <b= r> when you change how the first two cases indent, however.<br> </blockquote></div> --000000000000f241290617788bd1-- --000000000000f2412a0617788bd3 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-typescript-ts-mode-indentation-for-multi-assignm.patch" Content-Disposition: attachment; filename="0001-Add-typescript-ts-mode-indentation-for-multi-assignm.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lvpa2qzp0> X-Attachment-Id: f_lvpa2qzp0 RnJvbSAxZTIzYjMzYTNiNGI5MzAzODZhOTMyZWU2MTc3ZWFmMWI2ZTZhOTZlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBGcmksIDE5IEFwciAyMDI0IDAxOjQ2OjUwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IHR5cGVzY3JpcHQtdHMtbW9kZSBpbmRlbnRhdGlvbiBmb3IgbXVsdGktYXNzaWdubWVudCBkZWNs cwoKKiBsaXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKKHR5cGVzY3JpcHQtdHMt bW9kZS0taW5kZW50LXJ1bGVzKTogQWRkIGluZGVudGF0aW9uIHJ1bGVzIGZvcgpsZXhpY2FsIGFu ZCB2YXJpYWJsZSBkZWNsYXJhdGlvbnMgd2l0aCBtdWx0aXBsZSBhc3NpZ25tZW50cy4KKiB0ZXN0 L2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHM6 CkFkZCBpbmRlbnQgdGVzdCBmb3IgdmFyaWFibGUgZGVjbGFyYXRpb25zLgotLS0KIGxpc3AvcHJv Z21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbCAgICAgICAgICB8IDE0ICsrKysrKysrLQogLi4u L3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHMgIHwgMzEgKysrKysrKysr KysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2RlLmVsIGIv bGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2RlLmVsCmluZGV4IGFiMWQ3NmFiMjBlLi5l ZDYwODE5Mzg4ZiAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2Rl LmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbApAQCAtOTEsNiAr OTEsMTcgQEAgdHN4LXRzLW1vZGUtLWluZGVudC1jb21wYXRpYmlsaXR5LWI4OTM0MjYKICAgICAg YCgoKG1hdGNoICI8IiAianN4X3RleHQiKSBwYXJlbnQgMCkKICAgICAgICAoKHBhcmVudC1pcyAi anN4X3RleHQiKSBwYXJlbnQgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpKSkpKQog CisoZGVmdW4gdHlwZXNjcmlwdC10cy1tb2RlLS1hbmNob3ItZGVjbCAoX24gcGFyZW50ICZyZXN0 IF8pCisgICJSZXR1cm4gdGhlIHBvc2l0aW9uIGFmdGVyIHRoZSBkZWNsYXJhdGlvbiBrZXl3b3Jk IGJlZm9yZSBQQVJFTlQuCisKK1RoaXMgYW5jaG9yIGFsbG93cyBhbGlnbmluZyB2YXJpYWJsZV9k ZWNsYXJhdG9ycyBpbiB2YXJpYWJsZSBhbmQgbGV4aWNhbAorZGVjbGFyYXRpb25zLCBhY2NvdW50 aW5nIGZvciB0aGUgbGVuZ3RoIG9mIGtleXdvcmQgKHZhciwgbGV0LCBvciBjb25zdCkuIgorICAo bGV0KiAoKGRlY2xhcmF0aW9uICh0cmVlc2l0LXBhcmVudC11bnRpbAorICAgICAgICAgICAgICAg ICAgICAgICBwYXJlbnQgKHJ4IChvciAidmFyaWFibGUiICJsZXhpY2FsIikgIl9kZWNsYXJhdGlv biIpIHQpKQorICAgICAgICAgKGRlY2wgKHRyZWVzaXQtbm9kZS1jaGlsZCBkZWNsYXJhdGlvbiAw KSkpCisgICAgKCsgKHRyZWVzaXQtbm9kZS1zdGFydCBkZWNsYXJhdGlvbikKKyAgICAgICAoLSAo dHJlZXNpdC1ub2RlLWVuZCBkZWNsKSAodHJlZXNpdC1ub2RlLXN0YXJ0IGRlY2wpKSkpKQorCiAo ZGVmdW4gdHlwZXNjcmlwdC10cy1tb2RlLS1pbmRlbnQtcnVsZXMgKGxhbmd1YWdlKQogICAiUnVs ZXMgdXNlZCBmb3IgaW5kZW50YXRpb24uCiBBcmd1bWVudCBMQU5HVUFHRSBpcyBlaXRoZXIgYHR5 cGVzY3JpcHQnIG9yIGB0c3gnLiIKQEAgLTExMyw3ICsxMjQsOCBAQCB0eXBlc2NyaXB0LXRzLW1v ZGUtLWluZGVudC1ydWxlcwogICAgICAoKHBhcmVudC1pcyAic3dpdGNoX2Nhc2UiKSBwYXJlbnQt Ym9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQogICAgICAoKHBhcmVudC1pcyAi c3dpdGNoX2RlZmF1bHQiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zm c2V0KQogICAgICAoKHBhcmVudC1pcyAidHlwZV9hcmd1bWVudHMiKSBwYXJlbnQtYm9sIHR5cGVz Y3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQotICAgICAoKHBhcmVudC1pcyAidmFyaWFibGVf ZGVjbGFyYXRvciIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQp CisgICAgICgocGFyZW50LWlzICwocnggKG9yICJ2YXJpYWJsZSIgImxleGljYWwiKSAiXyIgKG9y ICJkZWNsYXJhdGlvbiIgImRlY2xhcmF0b3IiKSkpCisgICAgICB0eXBlc2NyaXB0LXRzLW1vZGUt LWFuY2hvci1kZWNsIDEpCiAgICAgICgocGFyZW50LWlzICJhcmd1bWVudHMiKSBwYXJlbnQtYm9s IHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQogICAgICAoKHBhcmVudC1pcyAiYXJy YXkiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQogICAgICAo KHBhcmVudC1pcyAiZm9ybWFsX3BhcmFtZXRlcnMiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMt bW9kZS1pbmRlbnQtb2Zmc2V0KQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL3Byb2dtb2Rlcy90eXBl c2NyaXB0LXRzLW1vZGUtcmVzb3VyY2VzL2luZGVudC5lcnRzIGIvdGVzdC9saXNwL3Byb2dtb2Rl cy90eXBlc2NyaXB0LXRzLW1vZGUtcmVzb3VyY2VzL2luZGVudC5lcnRzCmluZGV4IGJlYzk2YWQ4 MmUwLi44NzczODI5NTNjMSAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL3Byb2dtb2Rlcy90eXBlc2Ny aXB0LXRzLW1vZGUtcmVzb3VyY2VzL2luZGVudC5lcnRzCisrKyBiL3Rlc3QvbGlzcC9wcm9nbW9k ZXMvdHlwZXNjcmlwdC10cy1tb2RlLXJlc291cmNlcy9pbmRlbnQuZXJ0cwpAQCAtNjIsNiArNjIs MzcgQEAgY29uc3QgZm9vID0gKHg6IHN0cmluZykgPT4gewogfTsKID0tPS09CiAKK05hbWU6IExl eGljYWwgYW5kIHZhcmlhYmxlIGRlY2xhcmF0aW9ucworCis9LT0KK2NvbnN0IGZvbyA9ICgpID0+ IHsKKyAgbGV0IHggPSAxLAorICAgICAgeXl5eTogeworICAgICAgICBbazogc3RyaW5nIHwgbnVt YmVyXTogc3RyaW5nLAorICAgICAgfSA9IHsKKyAgICAgICAgImZvbyI6ICJmb28iLAorICAgICAg ICAiYmFyIjogImJhciIsCisgICAgICB9OworICB2YXIgb2JhciA9IDEsCisgICAgICBmbzogeyBb eDogYW55XTogYW55IH0gPSB7CisgICAgICAgICJhIjogMSwKKyAgICAgICAgImIiOiAyLAorICAg ICAgfTsKKyAgY29uc3QgY2NjYyA9IDEsCisgICAgICAgIGJiYiA9IHsKKyAgICAgICAgICAieCI6 IDAKKyAgICAgICAgfSwKKyAgICAgICAgZGRkZGQgPSAwOworICAvLyBGaXJzdCBkZWNscyB3aXRo IHZhbHVlIHN0YXJ0aW5nIG9uIHNhbWUgbGluZQorICBjb25zdCBhID0gKHg6IHN0cmluZyk6IHN0 cmluZyA9PiB7CisgICAgcmV0dXJuIHggKyB4OworICB9OworICB2YXIgYmJiID0geworICAgICJ4 IjogMAorICB9OworfTsKKz0tPS09CisKIENvZGU6CiAgIChsYW1iZGEgKCkKICAgICAoc2V0cSBp bmRlbnQtdGFicy1tb2RlIG5pbCkKLS0gCjIuMzQuMQoK --000000000000f2412a0617788bd3--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 26 Apr 2024 01:06:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Apr 25 21:06:41 2024 Received: from localhost ([127.0.0.1]:33497 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s0A2w-0001At-7V for submit <at> debbugs.gnu.org; Thu, 25 Apr 2024 21:06:40 -0400 Received: from wfout8-smtp.messagingengine.com ([64.147.123.151]:57353) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1s0A2q-00018Z-W1 for 68054 <at> debbugs.gnu.org; Thu, 25 Apr 2024 21:06:35 -0400 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailfout.west.internal (Postfix) with ESMTP id 6BE0A1C000F1; Thu, 25 Apr 2024 21:06:08 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 25 Apr 2024 21:06:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1714093567; x=1714179967; bh=CRPRLT/JIRJXBqn2l3qdLdXSzGc16lWT7nIqS8GlDaE=; b= YoFz39+0Rd7uS5YZddJ7/L/q1FH3gErrcqddLzdogO4HUYGOIrnDfj5lrvhlAQ19 2/eyQqWibFVw/xT0xklFKoOQtzOU5X40u/aFzq+NWYRgwyOigs5cHiAGLx0QspM9 oMlLhmsLqo3bLr6ACHWZFFNZeROOecQjglGPqLqmJAtfZtGG/9rjZEzq+SdIsT/t xD3pE55Vv4URLOWWrIYyVILpg8h0RDqiWMcGT+OW4vBE08ljqahrVeaJB1nMF+M+ SUbS79hTZNbsm6V7CauD9ue5eK1AkepnYA8iFhhMx8ka7pT8NhZT2V6X2+fJCBZf LI89IgTPIHJKu+yL7+dHVA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1714093567; x= 1714179967; bh=CRPRLT/JIRJXBqn2l3qdLdXSzGc16lWT7nIqS8GlDaE=; b=G WaUd0SwCtskHsrKs0wDXhqwZVeX2RpswyK5zGaNF/LOOnkAFq2PGiZgYNUWU8auG MycNupTu5RxWyF26VhU4paDsF8rkI7tsemUsLlDTX2mSMF6wM+N9Wx8aNeNlLJ3G GJJR/jd8VGqSzONGs5ZmXYfDIMoa/Xvgq6g3szgSAqq7r+MpkWXFTaA1vuC/KW9y NidQKbWgPzboKxABgoJHwm/aNHXXBnUlDuRrMWAIVyhoTU3gchtQXyHc+w8Rt5Z8 qDOhn65xNKRi/aOBn51dZMfeqET5ilKhBuO+aDPGrKxQ7O+S/Qfw0zX8TLKPRRpI tUKytpXz6uIi4Pqu/r48w== X-ME-Sender: <xms:__0qZns3OFXaq6nn6RWkwJYrOaORhcvDAu8c6DhhYf1-YQS5PASXhg> <xme:__0qZoc9IuLuCC7xHprsCq75m47hBpdrpxw9FxYUnvcR86FLQH7CXbqiQnUk6HRWB Xp_8PrDCG1v8tkuiS0> X-ME-Received: <xmr:__0qZqzUr81tvOfarqmrbN292kIcRkEjrmvy84ODK0lcD5d1lVHUkOYla0t9OYJaNaM1> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudelkedggeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepgeelfeetkefghfdvhfdtgeevveevteetgeetveegtedthefhudekteehffeu keeknecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:__0qZmOBYwh7OBpujHgN6L8xYQXr96Ue5EhBnBpQtbd52IU6F7i9UQ> <xmx:__0qZn_NJFYUR55SffT7_Ya8ZXKdCJIQDtEcU8drWcbGB9PIpW7jvA> <xmx:__0qZmU1RtKvYqPApkwhILDgtKDi78chBk1eBiVWqnk-3W5jSTVeTg> <xmx:__0qZocLl903MqdHMla4OedsGqT19BSkHNkKE4X-9OgfdUSVN3397Q> <xmx:__0qZqYCeA7QKxNYgSSEstxjlVjvwEDJRADdxP4Yb7IuWybP12Ty9VXH> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 25 Apr 2024 21:06:06 -0400 (EDT) Message-ID: <db3096de-803d-41ad-a86b-7c7eda3376b9@HIDDEN> Date: Fri, 26 Apr 2024 04:06:05 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Noah Peart <noah.v.peart@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> <CAPVBTSdR5UqtJtmzREvEUAGh6+gKKEq_+WF0L1hxb_KuPDgRGw@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <CAPVBTSdR5UqtJtmzREvEUAGh6+gKKEq_+WF0L1hxb_KuPDgRGw@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) On 26/04/2024 01:48, Noah Peart wrote: > Ok, I can make a patch for option 3 (the same as js-mode) instead. It's > implementation is the simplest also. Would that work? I'd be okay with it, yes, thank you. If only because it's good to have similar defaults in both modes, and evolve them together until one is deprecated. FTR, the option more in line with my previous explanation would be option 3, I think. Rhere's no real need to implement it right now, I guess, but for illustration: const a = (x: string): string => { return x + x; }, bbb = { "x": 0 }, cccc = 1, ddddd = 0; const bbb = { "x": 0 }, a = (x: string): string => { return x + x; }, bbb = { "x": 0 }, cccc = 1, ddddd = 0; js-mode also has by necessity the below exceptions: when the first variable's value starts on the same line, and it's multiline (usually that means that the same line ends with a {), then its indentation level goes back to the statement, not to the "const" keyword: const a = (x: string): string => { return x + x; } var bbb = { "x": 0 } This is basically to support the non-multivar declarations better. js-ts-mode now has the exact same indentation; these cases might come up when you change how the first two cases indent, however.
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 25 Apr 2024 22:49:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Apr 25 18:49:31 2024 Received: from localhost ([127.0.0.1]:33458 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s07u8-0006Wa-I3 for submit <at> debbugs.gnu.org; Thu, 25 Apr 2024 18:49:31 -0400 Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]:51347) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1s07ty-0006Tp-B9 for 68054 <at> debbugs.gnu.org; Thu, 25 Apr 2024 18:49:20 -0400 Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-2351c03438cso648029fac.2 for <68054 <at> debbugs.gnu.org>; Thu, 25 Apr 2024 15:48:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714085329; x=1714690129; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Cbcap2Of2dGk93QKztO4Hf/0rBd96kXJE1D9lODFmzM=; b=X4QuY9ONV0NgHpvoHC3NqG2u7SCyxCI+HMSW2L1nTDhHN/pEjREsHkDsC1Qu83xwqB Zf/yhwU3waXxePfpx4T74sy9GLVL5CQdV2WbEFhbobSeZfcD8J2+jHV/BgMv/Vziz+3F 5A4xZNV5ICPxsg3qXJC4rxfuaSMrPRa3PB2+zPNuKv/aUZtZyAQx0a1B24OkUiHFx9YL banxm6XIendBJSWqM2cVpXgY7awIa4PTOfl0wnmqJSle2BZLxbJmH7+Jub+INFg0yrjW utLkbeb/83vFzikIpRJnoysmajtrz2N8p8wTKbnSOxQTq6YVoj0Sp7XQ031Y1fbAilMP 51vQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714085329; x=1714690129; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Cbcap2Of2dGk93QKztO4Hf/0rBd96kXJE1D9lODFmzM=; b=YWaVt9S0PUiqFa5w3+AZjHl8z00/98lSqdKboYwSZCAwJSGN+KHGgYzC3BTZz8LmE/ 2R57dCBVWOPwPW8XFagEUOoR07IeQdHeg9rWvGdJ0eqNMzPc5w3DOH5+ikhf6G8fyfKd YgkHqySBE6FoRyeLLQK5m3/ZP2RGqwxu7k0Vu4YnluHdyM1Wq11k7tvNOAo7sq2RO4rO M/dxHx3Bb9IVgrJR+69Jnh0yd+2jQh5grq4raAR8lTcpKegETdw/cWpxX9g6sFx8S2hc WNp66RuCarD0vGtQPrR9D6D22t09Ubl+r5dH4AiS9KPNir3emLS5N91tdnQgd7/Ma4It a3Mg== X-Forwarded-Encrypted: i=1; AJvYcCUKH0XuLkrcscpMZUc7+iUcI7JynjhezlXWtNSXTOdB/05OPrOEa0mjnr3UHwjdK5o1BuVkpobDfmaNgNzJPHxuVr3zaTQ= X-Gm-Message-State: AOJu0YxXkeR4Ny771gdiUlNYPDpdnANOX2RCLHlxHVeuNz0O2CJgrWNf E8EKegIhkCeJ1lGH53l4fDKb0fIq/HqKz4zWG75QNcpcIAL/f5LAFFmN4AnjwlCwBRxIeii4paK Mboh6qT7PKQyEm+J+A7zZGCiwBAcdNaZ5FK0= X-Google-Smtp-Source: AGHT+IE/8u4uXGnWn0rGEaj6nzFfUH/l9NzMfFHR6yiLb8D38zve1myM/w8z5/Ir5WSqU2qBDv/3i6M4aJdVdejom80= X-Received: by 2002:a05:6870:d38d:b0:238:dcff:90c9 with SMTP id k13-20020a056870d38d00b00238dcff90c9mr961605oag.10.1714085328229; Thu, 25 Apr 2024 15:48:48 -0700 (PDT) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> In-Reply-To: <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Thu, 25 Apr 2024 15:48:37 -0700 Message-ID: <CAPVBTSdR5UqtJtmzREvEUAGh6+gKKEq_+WF0L1hxb_KuPDgRGw@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Dmitry Gutov <dmitry@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000001a9e610616f397d9" X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -0.3 (/) --0000000000001a9e610616f397d9 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Ok, I can make a patch for option 3 (the same as js-mode) instead. It's implementation is the simplest also. Would that work? Thanks On Wed, Apr 24, 2024 at 4:15=E2=80=AFPM Dmitry Gutov <dmitry@HIDDEN> wro= te: > On 24/04/2024 05:36, Noah Peart wrote: > > > What js-mode does (looks like 3) shouldn't be too bad, but I wouldn'= t > > mind an extra indentation level for such cases, too (example 2). > > > > The problem I found with option 2/3 was cases like the following (which > > also seem like the most common) where I expect the start of > > the function be indented according to `typescript-ts-mode-indent-offset= `, > > not with the declaration keyword "const" as in `js-mode` (and option 3)= . > > > > const someFuncWithReallyLongName =3D > > async (x: number, y: number, z: number): Promise<void> =3D> { > > // ... > > }; > > I don't know, in my understanding the line break after the "=3D" (or its > absence) is usually a good enough look to choose between indentation > offsets for a given statement. I.e. with the break after =3D it would be > indented deeply, and without it (keeping "async" on the first line) the > body would have the same base indentation as the "const" statement. > > Though of course some users like it differently anyway. > --0000000000001a9e610616f397d9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Ok, I can make a patch for option 3 (the same as js-mode) = instead. It's<div>implementation is the simplest also.=C2=A0 Would that= work?</div><div><div><br></div><div>Thanks=C2=A0</div></div></div><br><div= class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, Apr 24= , 2024 at 4:15=E2=80=AFPM Dmitry Gutov <<a href=3D"mailto:dmitry@HIDDEN= ev">dmitry@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gmail_quo= te" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204= );padding-left:1ex">On 24/04/2024 05:36, Noah Peart wrote:<br> >=C2=A0 > What js-mode does (looks like 3) shouldn't be too bad, = but I wouldn't<br> > mind an extra indentation level for such cases, too (example 2).<br> > <br> > The problem I found with option 2/3 was cases like the following (whic= h<br> > also seem like the most common) where I expect the start of<br> > the function be indented according to `typescript-ts-mode-indent-offse= t`,<br> > not with the declaration keyword "const" as in `js-mode` (an= d option 3).<br> > <br> >=C2=A0 =C2=A0 =C2=A0 const someFuncWithReallyLongName =3D<br> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 async (x: number, y: number, z: number): Pr= omise<void> =3D> {<br> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 // ...<br> >=C2=A0 =C2=A0 =C2=A0 =C2=A0 };<br> <br> I don't know, in my understanding the line break after the "=3D&qu= ot; (or its <br> absence) is usually a good enough look to choose between indentation <br> offsets for a given statement. I.e. with the break after =3D it would be <b= r> indented deeply, and without it (keeping "async" on the first lin= e) the <br> body would have the same base indentation as the "const" statemen= t.<br> <br> Though of course some users like it differently anyway.<br> </blockquote></div> --0000000000001a9e610616f397d9--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 24 Apr 2024 23:15:51 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Apr 24 19:15:51 2024 Received: from localhost ([127.0.0.1]:60226 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzlqA-0000pT-Hy for submit <at> debbugs.gnu.org; Wed, 24 Apr 2024 19:15:51 -0400 Received: from fout7-smtp.messagingengine.com ([103.168.172.150]:41421) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1rzlq3-0000my-Rw for 68054 <at> debbugs.gnu.org; Wed, 24 Apr 2024 19:15:48 -0400 Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfout.nyi.internal (Postfix) with ESMTP id 1184F13800C8; Wed, 24 Apr 2024 19:15:21 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Wed, 24 Apr 2024 19:15:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1714000521; x=1714086921; bh=ZS9TBSe8zScFtgzwvK7ZKQh2GKDBZP3P3UUz+lDGo+Q=; b= FlgFGNQftCQ13tNghFEhZQBLMy5w1l8wVycUXP9ckTAuQC1rv4OW6SC55J6qzBAH mzG1Ou83jyjMnRBWMnNOkhU5gUWvtwbQaWLNI/bVb5h2HWsNyLDgz5gwJ+TJix1g nA9dLC+83gMYLHuQGD5RAJjNyE1MB5ETkOIWTyADyMVY7gmihyJX90PjoViWfaWf 05T7wiQchb6F3I5ZqACryUOp/4pd4kokazE5Svbh1TrNZcgarvcY79rmu50D1awF 0pVD/hXPHpXVq7QGlxxfRg9VtLR4WiRBn8lpYo/cxl3okm9ixtdbQJzSNmoU7O8L e+FNr20fwqPzab44FStaUg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1714000521; x= 1714086921; bh=ZS9TBSe8zScFtgzwvK7ZKQh2GKDBZP3P3UUz+lDGo+Q=; b=T a+lW/m6AmWRj4SeiXW5VIizvI0xNnWNQsJzRe0vN7HZ8FJMCjFIEv2DyziivOJ7F RmVhC19eIhXfi3mPvIjxHOl6p3Ny+x3cofxc1m7pSSgIKy319RUgXIUUhNXHmd2P DHVVOWWE6EYidCAN9u6ARbWfEKAWcIYdY5D3/wvxeXTD588P+DT4jej/OpZ6GSzE eekP+I3qXJPx+Brk1vuA4c9XJVdzrLiCIzRbMhoHzzsn2sdLP+oZ8KlFBRSGGKzI ZGGqzGwKXZYK7sF6uLtOEYoXUQi78fNfNwTXK5xZ0LnQcZ76NjZ3itbwFbHIZHtM cmreijj80Xy8zImFfI+Ng== X-ME-Sender: <xms:iJIpZrCukP9yXyGEy3KJ3rCMIIrO5pTmLwgP6uCELFe5uWR0qXsQrw> <xme:iJIpZhidwr-ughLRYZp1VLkAMzySlAtTppzqMyeMGq2HqYfJUFZ8__R1jjOC6SkWY EDUMQ7HBj97EIaptyE> X-ME-Received: <xmr:iJIpZmnLgBhJsqtjPyBvR5kKpBT2cd1qjvIBy7M6dE7sNRNntVElKAGH-ihYI7S9s-cq> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudeliedgvdduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepgeelfeetkefghfdvhfdtgeevveevteetgeetveegtedthefhudekteehffeu keeknecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:iJIpZtxdRv1dRP42VV2UUI9Sp_AqxYWm9vQtCrjomMZ854PPU02KWQ> <xmx:iJIpZgRjXZqpnP523vpyBxnuWRqVBYTBXS7UsuTWdQq_KID6vjFQ_g> <xmx:iJIpZgZdT-Gi5-LbzQjfQEIEv6ZUvBtibMpqhiMfi_BZxT6n5UHpzg> <xmx:iJIpZhSRg6TQDMXlHGj8toE4vrCYQdtbl09rxu4Q1loqNWsqXi53pQ> <xmx:iZIpZmcdiGf8sTeIyVzxhPvGpYyjMaJPJheLmnjY72a2oUqg5B5FhEPV> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 24 Apr 2024 19:15:19 -0400 (EDT) Message-ID: <3cf27c4d-d5ee-423c-a0d2-cfae297d36ae@HIDDEN> Date: Thu, 25 Apr 2024 02:15:16 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Noah Peart <noah.v.peart@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) On 24/04/2024 05:36, Noah Peart wrote: > > What js-mode does (looks like 3) shouldn't be too bad, but I wouldn't > mind an extra indentation level for such cases, too (example 2). > > The problem I found with option 2/3 was cases like the following (which > also seem like the most common) where I expect the start of > the function be indented according to `typescript-ts-mode-indent-offset`, > not with the declaration keyword "const" as in `js-mode` (and option 3). > > const someFuncWithReallyLongName = > async (x: number, y: number, z: number): Promise<void> => { > // ... > }; I don't know, in my understanding the line break after the "=" (or its absence) is usually a good enough look to choose between indentation offsets for a given statement. I.e. with the break after = it would be indented deeply, and without it (keeping "async" on the first line) the body would have the same base indentation as the "const" statement. Though of course some users like it differently anyway.
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 24 Apr 2024 02:37:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 22:37:42 2024 Received: from localhost ([127.0.0.1]:55755 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzSVn-0004Ob-ME for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 22:37:42 -0400 Received: from mail-oa1-x29.google.com ([2001:4860:4864:20::29]:53631) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1rzSVc-0004Li-Bm for 68054 <at> debbugs.gnu.org; Tue, 23 Apr 2024 22:37:28 -0400 Received: by mail-oa1-x29.google.com with SMTP id 586e51a60fabf-22ed075a629so2550900fac.3 for <68054 <at> debbugs.gnu.org>; Tue, 23 Apr 2024 19:37:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713926217; x=1714531017; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ch0kXSUE9wxQkpF4dDHtmA/R8uJEt4uKmFdZOW7lBWg=; b=GCz08UoaHmC6DsHZ2GujVkmxAnfSvrDsNuaoonhDw+T0a+jS880XwXTzws5UeaGIxH pj2j4bDznFhW/+6O8dSn0e9fYehDzAzWY8kusY94eptdae4padIbSmuIbGZ0gBvWT3Xh CINxNGVulv3655nAmNZPzBFziOmUfUfkZU/zCic7Fz20f1XdSmTRne+16cMgdbfU5kee +XNs0SNySoQdsQTk+FMCsrvvLHPKVSqrI8x7Eh7sNe7Q0WqcAmHChUqvizRKYAFTFQmv Ljl8vMaX8ugQVxIvpH9l3PmmwgqcgGD5fOSLsg5E476PHLSyQaMB4kH7r2gBt+Qn5+3k c9xA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713926218; x=1714531018; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ch0kXSUE9wxQkpF4dDHtmA/R8uJEt4uKmFdZOW7lBWg=; b=TodNC3xRRKG+o6/qc9SCvqjr6CdjRjRbaMj+3keebmv7PA+K28SQCytjbYh/yxhps3 zZCkPmoYaChBvpc3qozPDyMpHP2tZ1a6SW9+c038hJG/groFQcqgukl3O9XFGuRKTOKC X/ms9QdhpH0UvY7HHTxFhtNrOpXD2bU+R++NhQ37qYMw+naL0gE3mCo+LBOcL6D2/EG9 QvHVfIDGl22PvBluGbQnSqsN+/VtMiCYZ+wZjMKEb0npzWIEtIlrAsA2x80Km6Ekm+qa vdoxZMb0LmwK4iYVV5dwqtH7FLsrNTWixZJSA9PsuOIspN5aHGMVYrIpJickq3cyzmac ypDw== X-Forwarded-Encrypted: i=1; AJvYcCWKDBQThXlRU5yNm3bL6B0czDCqpSHtDnnvEzW0NmGO8Al1V4sf8JMn/abKGF6WaN2IbVDuKj/GQxmywahwMWRmmqcoW84= X-Gm-Message-State: AOJu0YzeasXUBah4p04Q4UkMng7Dwe4Lj7e/c/VNhcs2gt9T5+gY7wlj iw7WL0vYP7fVixO45K/Wl41QnNMnVj18qiaiMd1h/1CW82w85Ri8xZDHAM2TKqPsFGYWDykLHHb CczFsYHjLVCsHBOcI0FzUGR2UF0Y= X-Google-Smtp-Source: AGHT+IFdsBFYJibnNJpL5sztNG2+b/wJ8YA4F+f/BngFBYMnrxba/mbqYU8eGB67ghKKRcuyyXLqNVCQCeByRhkUHfE= X-Received: by 2002:a05:6870:3104:b0:22e:959b:cf74 with SMTP id v4-20020a056870310400b0022e959bcf74mr1166551oaa.40.1713926217328; Tue, 23 Apr 2024 19:36:57 -0700 (PDT) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> In-Reply-To: <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Tue, 23 Apr 2024 19:36:45 -0700 Message-ID: <CAPVBTSd+TcBx=Qvq0177syGnMKaRMtMd2sd1o83C=iNEWTUmkg@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Dmitry Gutov <dmitry@HIDDEN> Content-Type: multipart/mixed; boundary="0000000000005b0b060616ce8b96" X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -0.3 (/) --0000000000005b0b060616ce8b96 Content-Type: multipart/alternative; boundary="0000000000005b0b040616ce8b94" --0000000000005b0b040616ce8b94 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable > What js-mode does (looks like 3) shouldn't be too bad, but I wouldn't mind an extra indentation level for such cases, too (example 2). The problem I found with option 2/3 was cases like the following (which also seem like the most common) where I expect the start of the function be indented according to `typescript-ts-mode-indent-offset`, not with the declaration keyword "const" as in `js-mode` (and option 3). const someFuncWithReallyLongName =3D async (x: number, y: number, z: number): Promise<void> =3D> { // ... }; > This seems like a rare enough case, so it probably doesn't matter too much, so I'd suggest picking one style and implementing it, and then adjusting based on user feedback later. I've attached a patch implementing option 1 for now (with a test), but I'm happy to change the style whenever. Thanks! On Tue, Apr 23, 2024 at 5:15=E2=80=AFPM Dmitry Gutov <dmitry@HIDDEN> wro= te: > On 23/04/2024 08:07, Yuan Fu wrote: > >> 1) indent the dangling values with respect to start of the declaration > >> > >> const a =3D > >> (x: string): string =3D> { > >> return x + x; > >> }, > >> bbb =3D > >> { > >> "x": 0 > >> }, > >> cccc =3D > >> 1, > >> ddddd =3D 0; > >> > >> 2) indent them with respect to the start of the variable_declarator > >> > >> const a =3D > >> (x: string): string =3D> { > >> return x + x; > >> }, > >> bbb =3D > >> { > >> "x": 0 > >> }, > >> cccc =3D > >> 1, > >> ddddd =3D 0; > >> > >> 3) align with the variable declarators (this is the same as js-mode) > >> > >> const a =3D > >> (x: string): string =3D> { > >> return x + x; > >> }, > >> bbb =3D > >> { > >> "x": 0 > >> }, > >> cccc =3D > >> 1, > >> ddddd =3D 0; > >> > >> I've attached a patch with with the rules for the 3 options here. > > I don=E2=80=99t really know what=E2=80=99s the convention, if there is = one. Maybe Dmitry > has better idea. Personally I like option 1. > > What js-mode does (looks like 3) shouldn't be too bad, but I wouldn't > mind an extra indentation level for such cases, too (example 2). > > This seems like a rare enough case, so it probably doesn't matter too > much, so I'd suggest picking one style and implementing it, and then > adjusting based on user feedback later. > --0000000000005b0b040616ce8b94 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">> What js-mode does (looks like 3) shouldn't be too= bad, but I wouldn't<br>mind an extra indentation level for such cases,= too (example 2).<br><div><br></div><div>The problem I found with option 2/= 3 was cases like the following (which</div><div>also seem like the most com= mon) where I expect the start of</div><div>the function be indented accordi= ng to `typescript-ts-mode-indent-offset`,</div><div>not with the declaratio= n keyword "const" as in `js-mode` (and option 3).</div><div><br><= /div><div>=C2=A0 =C2=A0 const someFuncWithReallyLongName =3D<br>=C2=A0 =C2= =A0 =C2=A0 async (x: number, y: number, z: number): Promise<void> =3D= > {<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 // ...<br>=C2=A0 =C2=A0 =C2=A0 };<br>= </div><div><br></div><div>> This seems like a rare enough case, so it pr= obably doesn't matter too</div>much, so I'd suggest picking one sty= le and implementing it, and then<br>adjusting based on user feedback later.= <div class=3D"gmail-yj6qo"></div><br class=3D"gmail-Apple-interchange-newli= ne"><div>I've attached a patch implementing option 1 for now (with a te= st), but=C2=A0</div><div>I'm happy to change the style whenever.</div><= div><br></div><div>Thanks!<br></div></div><br><div class=3D"gmail_quote"><d= iv dir=3D"ltr" class=3D"gmail_attr">On Tue, Apr 23, 2024 at 5:15=E2=80=AFPM= Dmitry Gutov <<a href=3D"mailto:dmitry@HIDDEN">dmitry@HIDDEN</a>&= gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0= px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 23= /04/2024 08:07, Yuan Fu wrote:<br> >> 1) indent the dangling values with respect to start of the declara= tion<br> >><br> >>=C2=A0 =C2=A0 =C2=A0 const a =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (x: string): string =3D> {<br= > >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return x + x;<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 bbb =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 {<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "x": 0<b= r> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1,<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br> >>=C2=A0 =C2=A0 <br> >> 2) indent them with respect to the start of the variable_declarato= r<br> >><br> >>=C2=A0 =C2=A0 =C2=A0 const a =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (x: string)= : string =3D> {<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 return x + x;<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 bbb =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 {<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 "x": 0<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1,<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br> >><br> >> 3) align with the variable declarators (this is the same as js-mod= e)<br> >><br> >>=C2=A0 =C2=A0 =C2=A0 const a =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (x: string): string =3D&g= t; {<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return x + = x;<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 bbb =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 {<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "x&quo= t;: 0<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1,<br> >>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br> >><br> >> I've attached a patch with with the rules for the 3 options he= re.<br> > I don=E2=80=99t really know what=E2=80=99s the convention, if there is= one. Maybe Dmitry has better idea. Personally I like option 1.<br> <br> What js-mode does (looks like 3) shouldn't be too bad, but I wouldn'= ;t <br> mind an extra indentation level for such cases, too (example 2).<br> <br> This seems like a rare enough case, so it probably doesn't matter too <= br> much, so I'd suggest picking one style and implementing it, and then <b= r> adjusting based on user feedback later.<br> </blockquote></div> --0000000000005b0b040616ce8b94-- --0000000000005b0b060616ce8b96 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-typescript-ts-mode-indentation-for-multi-assignm.patch" Content-Disposition: attachment; filename="0001-Add-typescript-ts-mode-indentation-for-multi-assignm.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lvd7bbkb0> X-Attachment-Id: f_lvd7bbkb0 RnJvbSBmMjAyMzU1MDQ4YzhkOTE1YzY5NzhmNmU5MzAwZGQ2MzEwNGI4YTUyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBGcmksIDE5IEFwciAyMDI0IDAxOjQ2OjUwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IHR5cGVzY3JpcHQtdHMtbW9kZSBpbmRlbnRhdGlvbiBmb3IgbXVsdGktYXNzaWdubWVudCBkZWNs cwoKKiBsaXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKKHR5cGVzY3JpcHQtdHMt bW9kZS0taW5kZW50LXJ1bGVzKTogQWRkIGluZGVudGF0aW9uIHJ1bGVzIGZvcgpsZXhpY2FsIGFu ZCB2YXJpYWJsZSBkZWNsYXJhdGlvbnMgd2l0aCBtdWx0aXBsZSBhc3NpZ25tZW50cy4KKiB0ZXN0 L2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHM6 CkFkZCBpbmRlbnQgdGVzdCBmb3IgdmFyaWFibGUgZGVjbGFyYXRpb25zLgotLS0KIC5sYXN0LWJ1 aWxkLWhhc2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxICsKIGxpc3AvcHJvZ21v ZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbCAgICAgICAgICB8IDE1ICsrKysrKysrKy0KIC4uLi90 eXBlc2NyaXB0LXRzLW1vZGUtcmVzb3VyY2VzL2luZGVudC5lcnRzICB8IDI4ICsrKysrKysrKysr KysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigt KQogY3JlYXRlIG1vZGUgMTAwNjQ0IC5sYXN0LWJ1aWxkLWhhc2gKCmRpZmYgLS1naXQgYS8ubGFz dC1idWlsZC1oYXNoIGIvLmxhc3QtYnVpbGQtaGFzaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uNzdmZTQ0NDZkZjUKLS0tIC9kZXYvbnVsbAorKysgYi8ubGFzdC1idWls ZC1oYXNoCkBAIC0wLDAgKzEgQEAKK2EyZTMyN2NiY2ExZTc1NjM3MzEwOWQ0Nzg4ZWE2MzUyNTBk MjMyMjQKZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbCBi L2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbAppbmRleCBhYjFkNzZhYjIwZS4u M2MxMGExOWU3MTIgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9k ZS5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKQEAgLTkxLDYg KzkxLDE3IEBAIHRzeC10cy1tb2RlLS1pbmRlbnQtY29tcGF0aWJpbGl0eS1iODkzNDI2CiAgICAg IGAoKChtYXRjaCAiPCIgImpzeF90ZXh0IikgcGFyZW50IDApCiAgICAgICAgKChwYXJlbnQtaXMg ImpzeF90ZXh0IikgcGFyZW50IHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KSkpKSkK IAorKGRlZnVuIHR5cGVzY3JpcHQtdHMtbW9kZS0tYW5jaG9yLWRlY2wgKF9uIHBhcmVudCAmcmVz dCBfKQorICAiUmV0dXJuIHRoZSBwb3NpdGlvbiBhZnRlciB0aGUgZGVjbGFyYXRpb24ga2V5d29y ZCBiZWZvcmUgUEFSRU5ULgorCitUaGlzIGFuY2hvciBhbGxvd3MgYWxpZ25pbmcgdmFyaWFibGVf ZGVjbGFyYXRvcnMgaW4gdmFyaWFibGUgYW5kIGxleGljYWwKK2RlY2xhcmF0aW9ucywgYWNjb3Vu dGluZyBmb3IgdGhlIGxlbmd0aCBvZiBrZXl3b3JkICh2YXIsIGxldCwgb3IgY29uc3QpLiIKKyAg KGxldCogKChkZWNsYXJhdGlvbiAodHJlZXNpdC1wYXJlbnQtdW50aWwKKyAgICAgICAgICAgICAg ICAgICAgICAgcGFyZW50IChyeCAob3IgInZhcmlhYmxlIiAibGV4aWNhbCIpICJfZGVjbGFyYXRp b24iKSB0KSkKKyAgICAgICAgIChkZWNsICh0cmVlc2l0LW5vZGUtY2hpbGQgZGVjbGFyYXRpb24g MCkpKQorICAgICgrICh0cmVlc2l0LW5vZGUtc3RhcnQgZGVjbGFyYXRpb24pCisgICAgICAgKC0g KHRyZWVzaXQtbm9kZS1lbmQgZGVjbCkgKHRyZWVzaXQtbm9kZS1zdGFydCBkZWNsKSkpKSkKKwog KGRlZnVuIHR5cGVzY3JpcHQtdHMtbW9kZS0taW5kZW50LXJ1bGVzIChsYW5ndWFnZSkKICAgIlJ1 bGVzIHVzZWQgZm9yIGluZGVudGF0aW9uLgogQXJndW1lbnQgTEFOR1VBR0UgaXMgZWl0aGVyIGB0 eXBlc2NyaXB0JyBvciBgdHN4Jy4iCkBAIC0xMTMsNyArMTI0LDkgQEAgdHlwZXNjcmlwdC10cy1t b2RlLS1pbmRlbnQtcnVsZXMKICAgICAgKChwYXJlbnQtaXMgInN3aXRjaF9jYXNlIikgcGFyZW50 LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKICAgICAgKChwYXJlbnQtaXMg InN3aXRjaF9kZWZhdWx0IikgcGFyZW50LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9m ZnNldCkKICAgICAgKChwYXJlbnQtaXMgInR5cGVfYXJndW1lbnRzIikgcGFyZW50LWJvbCB0eXBl c2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKLSAgICAgKChwYXJlbnQtaXMgInZhcmlhYmxl X2RlY2xhcmF0b3IiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0 KQorICAgICAoKHBhcmVudC1pcyAidmFyaWFibGVfZGVjbGFyYXRvciIpIGdyYW5kLXBhcmVudCB0 eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKKyAgICAgKChwYXJlbnQtaXMgLChyeCAo b3IgInZhcmlhYmxlIiAibGV4aWNhbCIpICJfZGVjbGFyYXRpb24iKSkKKyAgICAgIHR5cGVzY3Jp cHQtdHMtbW9kZS0tYW5jaG9yLWRlY2wgMSkKICAgICAgKChwYXJlbnQtaXMgImFyZ3VtZW50cyIp IHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpCiAgICAgICgocGFy ZW50LWlzICJhcnJheSIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZz ZXQpCiAgICAgICgocGFyZW50LWlzICJmb3JtYWxfcGFyYW1ldGVycyIpIHBhcmVudC1ib2wgdHlw ZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvcHJv Z21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHMgYi90ZXN0L2xp c3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHMKaW5k ZXggYmVjOTZhZDgyZTAuLjkwOGRkODEwM2I1IDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvcHJvZ21v ZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvaW5kZW50LmVydHMKKysrIGIvdGVzdC9s aXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUtcmVzb3VyY2VzL2luZGVudC5lcnRzCkBA IC02Miw2ICs2MiwzNCBAQCBjb25zdCBmb28gPSAoeDogc3RyaW5nKSA9PiB7CiB9OwogPS09LT0K IAorTmFtZTogTGV4aWNhbCBhbmQgdmFyaWFibGUgZGVjbGFyYXRpb25zCisKKz0tPQorY29uc3Qg Zm9vID0gKCkgPT4geworICBsZXQgeCA9IDEsCisgICAgICB5eXl5OiB7CisgICAgICAgIFtrOiBz dHJpbmcgfCBudW1iZXJdOiBzdHJpbmcsCisgICAgICB9ID0geworICAgICAgICAiZm9vIjogImZv byIsCisgICAgICAgICJiYXIiOiAiYmFyIiwKKyAgICAgIH07CisgIHZhciBvYmFyID0gMSwKKyAg ICAgIGZvOiB7IFt4OiBhbnldOiBhbnkgfSA9IHsKKyAgICAgICAgImEiOiAxLAorICAgICAgICAi YiI6IDIsCisgICAgICB9OworICBjb25zdCBzb21lRnVuY1dpdGhSZWFsbHlMb25nTmFtZSA9Cisg ICAgYXN5bmMgKHg6IG51bWJlciwgeTogbnVtYmVyLCB6OiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+ ID0+IHsKKyAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgpOworICAgIH07CisgIGNvbnN0IGNjY2Mg PSAxLAorICAgICAgICBiYmIgPSB7CisgICAgICAgICAgIngiOiAwCisgICAgICAgIH0sCisgICAg ICAgIGRkZGRkID0gMDsKK307Cis9LT0tPQorCiBDb2RlOgogICAobGFtYmRhICgpCiAgICAgKHNl dHEgaW5kZW50LXRhYnMtbW9kZSBuaWwpCi0tIAoyLjM0LjEKCg== --0000000000005b0b060616ce8b96--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 24 Apr 2024 00:15:39 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 20:15:39 2024 Received: from localhost ([127.0.0.1]:55151 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzQIU-00055z-QS for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 20:15:39 -0400 Received: from fout1-smtp.messagingengine.com ([103.168.172.144]:41277) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1rzQIQ-00054G-By for 68054 <at> debbugs.gnu.org; Tue, 23 Apr 2024 20:15:37 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfout.nyi.internal (Postfix) with ESMTP id 000BC138011A; Tue, 23 Apr 2024 20:15:11 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Tue, 23 Apr 2024 20:15:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1713917711; x=1714004111; bh=2DhB3gForYNnQzOJSNNGKX13hWOjiRICHI+PjAcZ/gY=; b= Li7WdwKx3lbsHqmKUKElgab3SLxweHx6deQ87qle99fRu8RxzSzn586O97i+bO0X ECp8Wt5LrZFJ/6tZGA23/U6FwzHABNgT8pvekniwUM36Elwb6qoQwAp45r3UNhpr iKX6no/hcmE9qf3ghnjBuDLf5js81bBwSQXlEstY6TxeMZ7IJh6/J7f7g2He9l1q aesb04P/AWRdwpoBzGAbpAHGSpaFM+8Jh0iY71xiG7JQzq4+rdZLOSTUvqyXsJuH laqdjLeur+3v7esMuT2CX2GqNVbbcjM0oOg+ovMWQDgIP6ZMG3ivOLMtNxih/qQU wsdJrdhaAE35P0t+DioRKw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1713917711; x= 1714004111; bh=2DhB3gForYNnQzOJSNNGKX13hWOjiRICHI+PjAcZ/gY=; b=F bM5feBGS6OvLkaYG9ft9ll2qtmHz6gyDktp86fCSXEXqkYuDwPfYLBEgQ7gj4vKa YstsBMN9YfnwGxu4Ve7WcJ0puQacm5cRShgCM8+HiKpXXfC5AwXpaT1RpXEEAHJy FnBelvqJt/zx17AQeuTDUXFUIdxSXGOnz7nNU0xDSHYcgh5QA638Se2kPqrOXaxK tx4bURhV395s6uLKgmzVA7xLMwNasqTnhu6RYGKrGgdq5NCOtS7Nl564SmPDQESD J5nTePJSaHHYA7vVIHP4tnern7lG5hwWMyCcEwMo0xkXaXW7nOZ9rJuBqpNnxnVL M+3lfkegG9Tlio9yPlC0A== X-ME-Sender: <xms:D08oZsoB7gRjyJJduml4A2X5FERBOn4sSurNxY6ow_CIFrLybiXb8Q> <xme:D08oZipbIAmZkV3B_pgLS5B3Zszx4bpDW9m6RFaWlXlU9g87f1r-FNCeYDxzV1HPL m8XqdKyg6n_gHIcxl4> X-ME-Received: <xmr:D08oZhPlxmKixoyKk-4C7vr3w-K1J9EsXq0GssXY14g-oGlUogaaPBa1AKJfCOewAbK-> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudelvddgfeefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepgeelfeetkefghfdvhfdtgeevveevteetgeetveegtedthefhudekteehffeu keeknecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:D08oZj4H5qwCbMM32p1zcTrdtsqCCBFlywp0Qwb26eZeYfsAWQ6sOg> <xmx:D08oZr6N3vU6tWgu9_7bLKOf-e_T2AWpucVWpielfO-32kdehVc-aA> <xmx:D08oZjiqKZN621eLl94UGkX19N7MsPBaGQWeCgMeNKyUPAALxTlXmA> <xmx:D08oZl5b6QVc21B61GbP8PAyDoH5L_rlkVDzGSn30Ex1Vm8nT4FnhA> <xmx:D08oZtke2CCYDOUvEPS_QSKYMPIQJNGay0ZqUM-IJY1zG5185r_LGOM_> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 23 Apr 2024 20:15:10 -0400 (EDT) Message-ID: <661fc11d-6da8-4fe5-a900-80ed1b41823a@HIDDEN> Date: Wed, 24 Apr 2024 03:15:08 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Yuan Fu <casouri@HIDDEN>, Noah Peart <noah.v.peart@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: 68054 <at> debbugs.gnu.org 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: -1.0 (-) On 23/04/2024 08:07, Yuan Fu wrote: >> 1) indent the dangling values with respect to start of the declaration >> >> const a = >> (x: string): string => { >> return x + x; >> }, >> bbb = >> { >> "x": 0 >> }, >> cccc = >> 1, >> ddddd = 0; >> >> 2) indent them with respect to the start of the variable_declarator >> >> const a = >> (x: string): string => { >> return x + x; >> }, >> bbb = >> { >> "x": 0 >> }, >> cccc = >> 1, >> ddddd = 0; >> >> 3) align with the variable declarators (this is the same as js-mode) >> >> const a = >> (x: string): string => { >> return x + x; >> }, >> bbb = >> { >> "x": 0 >> }, >> cccc = >> 1, >> ddddd = 0; >> >> I've attached a patch with with the rules for the 3 options here. > I don’t really know what’s the convention, if there is one. Maybe Dmitry has better idea. Personally I like option 1. What js-mode does (looks like 3) shouldn't be too bad, but I wouldn't mind an extra indentation level for such cases, too (example 2). This seems like a rare enough case, so it probably doesn't matter too much, so I'd suggest picking one style and implementing it, and then adjusting based on user feedback later.
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 23 Apr 2024 05:08:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 01:07:59 2024 Received: from localhost ([127.0.0.1]:49857 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rz8Nq-0005Mp-OA for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 01:07:59 -0400 Received: from mail-pf1-x42f.google.com ([2607:f8b0:4864:20::42f]:60794) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1rz8Nn-0005Lv-5f for 68054 <at> debbugs.gnu.org; Tue, 23 Apr 2024 01:07:57 -0400 Received: by mail-pf1-x42f.google.com with SMTP id d2e1a72fcca58-6ed32341906so5013489b3a.1 for <68054 <at> debbugs.gnu.org>; Mon, 22 Apr 2024 22:07:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713848853; x=1714453653; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=IXuknr/4v4+uq9cEbbP8ay//dgnepy8FCtxHm9nuS7E=; b=hvi5oJMvwfF9z9Rf7Z5UjkiM9U/hHV0x2xhikiioOSn0lT5CAAXP0GjutP/V6gN3fo g3YObTMnCsokuPIk0AsnJWSsxbN3EuYZNCwPgsRTbHLqeihkB0zSThi9Kn1hQRb1ECK7 6q8mWszNkEPbprTxYcYOvkMlMaCKdH4N3M1KjnmVRfUCDLHPSs5ExP0LgRoX4j4LoY7Z B6KUA9731CumYJJphZw821X8mD2K1Fjs5mlZxKzEth26aHfAlfqN/IaskjYH7AXbAaCA g9rxl7oS8uhLiZ2EYF8cU5pOIQgeoE6InSTdbHwurPcL/54WhX0wH356XBWnNLofY1/i Bkyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713848853; x=1714453653; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=IXuknr/4v4+uq9cEbbP8ay//dgnepy8FCtxHm9nuS7E=; b=ctTn3GZh7X5fb4BV1AwnhWPRsuGkI72sBvurAvoSCNucU5jPaiQMlQe315g0TTMGUp AeViC2D/jg29dMJGq+iA8bc/ZKjqK32jZWgXiIiLUJQXf6nR6IsKt7+AWKxVFQOdmIIk k1Nup7gYZKlUDBaJtQ6KwgWgS4yxbpEKS0pwfTPA9dxTpjnalyB0uTao8vRxzdBfsiGh Ar8MHTOFGSVXU/F0mE1iwusLG6DJywBVxWT1PaQSn5XT5AMfBFwznVg+iPiQlTfgQwVb 6//3aFwJQ4WkZ10/Uf8it0hKWF2jI3aD9Jc5F5rO8wxUvBguyN+h+gMm+MMYef3cnOUT ks/A== X-Forwarded-Encrypted: i=1; AJvYcCXmvRKMO67teyU+UrZeWBF0AetpC81ylMs0D4ZQGzB1Ygoejf37v4EOjZoTdjOU6Dt+4DwzLAt83Us4sioXhsm+mUGFMwk= X-Gm-Message-State: AOJu0YxyL/vYJ1C0E14CeXulbZUndW9aqlAAOVzClsH4b/Usb5vTqeZf ZwbN7En4Gd5HQINVKZxRoRRaKqGwaLSWvloPkDbcIcF1bqLXL946 X-Google-Smtp-Source: AGHT+IGTjSZVRl3z/sWl/psXY/ef1O8xClq614r0/bg1NHBFgEs9U/sE05fJ8HvlQkG2VJuFnjTqyQ== X-Received: by 2002:a05:6a00:2181:b0:6ee:1508:edd4 with SMTP id h1-20020a056a00218100b006ee1508edd4mr15664906pfi.7.1713848852695; Mon, 22 Apr 2024 22:07:32 -0700 (PDT) Received: from smtpclient.apple ([2601:641:300:4910:e4f6:f0b8:c91d:e40b]) by smtp.gmail.com with ESMTPSA id d2-20020aa78142000000b006ed007b3596sm8757317pfn.69.2024.04.22.22.07.31 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 22 Apr 2024 22:07:32 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6.1.1\)) Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> Date: Mon, 22 Apr 2024 22:07:20 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <49231C5D-E89E-4AA3-AB02-51340994EA20@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> To: Noah Peart <noah.v.peart@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6.1.1) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Dmitry Gutov <dmitry@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) > On Apr 17, 2024, at 1:21 PM, Noah Peart <noah.v.peart@HIDDEN> = wrote: >=20 > Sorry, I forgot about this. I've just added a rule to align the = variable_declarators > in let, var, and const declarations, but I need some feedback about = the indentation > for values in the variable_declarators following dangling '=3D'. Thanks! >=20 > For example, which of the following would be preferable? >=20 > 1) indent the dangling values with respect to start of the declaration >=20 > const a =3D > (x: string): string =3D> { > return x + x; > }, > bbb =3D > { > "x": 0 > }, > cccc =3D > 1, > ddddd =3D 0; > =20 > 2) indent them with respect to the start of the variable_declarator >=20 > const a =3D > (x: string): string =3D> { > return x + x; > }, > bbb =3D > { > "x": 0 > }, > cccc =3D > 1, > ddddd =3D 0; >=20 > 3) align with the variable declarators (this is the same as js-mode) >=20 > const a =3D > (x: string): string =3D> { > return x + x; > }, > bbb =3D > { > "x": 0 > }, > cccc =3D > 1, > ddddd =3D 0; >=20 > I've attached a patch with with the rules for the 3 options here. I don=E2=80=99t really know what=E2=80=99s the convention, if there is = one. Maybe Dmitry has better idea. Personally I like option 1. Yuan=
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 17 Apr 2024 20:21:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Apr 17 16:21:43 2024 Received: from localhost ([127.0.0.1]:47935 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rxBmp-0000ZL-2n for submit <at> debbugs.gnu.org; Wed, 17 Apr 2024 16:21:43 -0400 Received: from mail-oa1-x2a.google.com ([2001:4860:4864:20::2a]:42456) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1rxBmn-0000YP-0v for 68054 <at> debbugs.gnu.org; Wed, 17 Apr 2024 16:21:42 -0400 Received: by mail-oa1-x2a.google.com with SMTP id 586e51a60fabf-234f5e54446so87982fac.1 for <68054 <at> debbugs.gnu.org>; Wed, 17 Apr 2024 13:21:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713385282; x=1713990082; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=jPOWWBpnAcTr8YCNf8gjD//np925fIrn8m5Zf4ffsHA=; b=CdMXkL/8AxwdGdk27MW4LLlq5BYsFmmWf7Cyv/RsAkSykx05mhQKpR98pM44dnodp4 pt2e/rsDd+bGcEDtUxjKP+xmnX0AUDFrkxaCIIJSaGB+MpthW4axGZARMYLZp4xuH0mw qJeTmtXG0SBzRKjUgy4XlPxF2rDYswQQMkmzLTpa/ucuWicQcv3QKPaskv/hT8bQGOYG tJV+b/JnGR6OOlRfyD9/Ya6YJL0EmsA5OwE+ItLMaoola9Eg7ifFKmi0p4SliBEi1y+k 4pS/uXo5u6rsqZsiPx8rfzmxRB1DkVB52Ja+Q6nWDt5Wq2VZrtIFHWKa5vyoLqRjddUh dlOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713385282; x=1713990082; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=jPOWWBpnAcTr8YCNf8gjD//np925fIrn8m5Zf4ffsHA=; b=Jb5Yy5jOyfhaZm1QfGn32WW/Lub5iOTL9WwyCSKuJ8r2/fqKP1JnDeVX+ch8WlJJo5 +d9CbbNCqwKGetlTKD7gKqTpz9HHwUZ5eWJb2EZhR2xmium8w3iTicBLcgjmgMBeK2kc 1hL15G0JObNxNtY/ZZZ4Q4D6rf9C6NLyCNBNKjyH6QkDlHfzahzUQgzZSRQX9v8cKGcY vxz+jLgVJNmMuNh8d/KepbB/vfUxuuUXHNLEXYTzw6BvAD2FfZolTFNmQ+AkXxaR+WfS bc26PS9Q6CPuVoxAAXhJx3HsAoYL+tG931BxC91UK4VI1qcF6fDafYb3t83EuNNLhHZf /3BA== X-Forwarded-Encrypted: i=1; AJvYcCXbd6MivNW496+vSIJHFrCi4B3kCAZIMCrz45cX/wwqOAZ8BLUgXkORu58wNUvd++snRU6jVJy5EtDCXC/TGCb7RmIqQO8= X-Gm-Message-State: AOJu0YxAccgL2iFO0KMmki9dwknprGmkD4gJgWr9gABidcTR0Lt68DNy 9hg2L9Zf4sO+GGlfiNb6+Dmkm1Z7c4+jmrOinM0UZfC7LS41qZhjj2i/PuI+O9IQPkLrkg7C1Jk 2x/ZyQMBid8EBSagIisUaNMX1x9w= X-Google-Smtp-Source: AGHT+IE1DgUX6ESpq6Oe045VF+6oCltRWu8akdNMSGgHnLGYl2gpT8Zj7AGU4PiWq1ce3E33KAkoUH95YgZIDjj52+E= X-Received: by 2002:a05:6870:a451:b0:22e:83e8:2f13 with SMTP id n17-20020a056870a45100b0022e83e82f13mr82636oal.24.1713385281857; Wed, 17 Apr 2024 13:21:21 -0700 (PDT) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> In-Reply-To: <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Wed, 17 Apr 2024 13:21:10 -0700 Message-ID: <CAPVBTSeLOYuEH6je5AJcXU0cxj5Qjx-FNZdo9Zt5UAngaWbtFQ@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Yuan Fu <casouri@HIDDEN> Content-Type: multipart/mixed; boundary="00000000000016c73b0616509977" X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 68054 Cc: Dmitry Gutov <dmitry@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -0.3 (/) --00000000000016c73b0616509977 Content-Type: multipart/alternative; boundary="00000000000016c73a0616509975" --00000000000016c73a0616509975 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sorry, I forgot about this. I've just added a rule to align the variable_declarators in let, var, and const declarations, but I need some feedback about the indentation for values in the variable_declarators following dangling '=3D'. For example, which of the following would be preferable? 1) indent the dangling values with respect to start of the declaration const a =3D (x: string): string =3D> { return x + x; }, bbb =3D { "x": 0 }, cccc =3D 1, ddddd =3D 0; 2) indent them with respect to the start of the variable_declarator const a =3D (x: string): string =3D> { return x + x; }, bbb =3D { "x": 0 }, cccc =3D 1, ddddd =3D 0; 3) align with the variable declarators (this is the same as js-mode) const a =3D (x: string): string =3D> { return x + x; }, bbb =3D { "x": 0 }, cccc =3D 1, ddddd =3D 0; I've attached a patch with with the rules for the 3 options here. On Sun, Dec 31, 2023 at 8:56=E2=80=AFPM Yuan Fu <casouri@HIDDEN> wrote: > > > > On Dec 31, 2023, at 5:41 AM, Dmitry Gutov <dmitry@HIDDEN> wrote: > > > > On 31/12/2023 07:35, Noah Peart wrote: > >> Yea, I agree that would be better - would you align on start the > variable names, or '=3D' like > >> `c-lineup-assignments`? > > > > Like js-mode would be good. > > > > I'm not familiar with c-lineup-assignments, but we could add different > variations later. > > Also, if you are feeling adventurous, I noticed that the second variable > in a lexical_declaration isn=E2=80=99t fontified in variable-name-face. I= t=E2=80=99d be > nice to fix that as well. > > Yuan --00000000000016c73a0616509975 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Sorry, I forgot about this. I've just added a rule to = align the variable_declarators<div>in let, var, and const declarations, but= I need some feedback about the indentation</div><div>for values in the var= iable_declarators following dangling '=3D'.<div><div><br></div><div= >For example, which of the following would be preferable?</div><div><br></d= iv><div>1) indent the dangling values with respect to start of the declarat= ion</div><div><br>=C2=A0 =C2=A0 const a =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 = (x: string): string =3D> {<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = return x + x;<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br>=C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 bbb =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 {<br>=C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 "x": 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br= >=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0= 1,<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br>=C2=A0=C2=A0<br><= /div><div>2) indent them with respect to the start of the variable_declarat= or<br></div><div><br></div><div>=C2=A0 =C2=A0 const a =3D<br>=C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (x: string): string =3D> {<br>=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return x + x;<br>= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br>=C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 bbb =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = {<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "x= ": 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br>=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 1,<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br></di= v></div></div><div><br></div><div>3) align with the variable declarators (t= his is the same as js-mode)</div><div><br></div><div>=C2=A0 =C2=A0 const a = =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (x: string): string =3D> {<br>= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 return x + x;<br>=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 },<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 bbb = =3D<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 {<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 "x": 0<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= },<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 cccc =3D<br>=C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 1,<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ddddd =3D 0;<br></di= v><div><br></div><div>I've attached a patch with with the rules for the= 3 options here.</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr"= class=3D"gmail_attr">On Sun, Dec 31, 2023 at 8:56=E2=80=AFPM Yuan Fu <<= a href=3D"mailto:casouri@HIDDEN">casouri@HIDDEN</a>> wrote:<br></d= iv><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bord= er-left:1px solid rgb(204,204,204);padding-left:1ex"><br> <br> > On Dec 31, 2023, at 5:41 AM, Dmitry Gutov <<a href=3D"mailto:dmitry= @gutov.dev" target=3D"_blank">dmitry@HIDDEN</a>> wrote:<br> > <br> > On 31/12/2023 07:35, Noah Peart wrote:<br> >> Yea, I agree that would be better - would you align on start the v= ariable names, or '=3D' like<br> >> `c-lineup-assignments`?<br> > <br> > Like js-mode would be good.<br> > <br> > I'm not familiar with c-lineup-assignments, but we could add diffe= rent variations later.<br> <br> Also, if you are feeling adventurous, I noticed that the second variable in= a lexical_declaration isn=E2=80=99t fontified in variable-name-face. It=E2= =80=99d be nice to fix that as well.<br> <br> Yuan</blockquote></div> --00000000000016c73a0616509975-- --00000000000016c73b0616509977 Content-Type: text/x-patch; charset="US-ASCII"; name="typescript-ts-decl-indent.patch" Content-Disposition: attachment; filename="typescript-ts-decl-indent.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lv49byd80> X-Attachment-Id: f_lv49byd80 ZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbCBiL2xpc3Av cHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbAppbmRleCBhYjFkNzZhYjIwZS4uOWRiZTVk ZjgzNjggMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbAor KysgYi9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKQEAgLTkxLDYgKzkxLDE2 IEBAIHRzeC10cy1tb2RlLS1pbmRlbnQtY29tcGF0aWJpbGl0eS1iODkzNDI2CiAgICAgIGAoKCht YXRjaCAiPCIgImpzeF90ZXh0IikgcGFyZW50IDApCiAgICAgICAgKChwYXJlbnQtaXMgImpzeF90 ZXh0IikgcGFyZW50IHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KSkpKSkKIAorKGRl ZnVuIHR5cGVzY3JpcHQtdHMtbW9kZS0tYW5jaG9yLWRlY2wgKF9uIHBhcmVudCAmcmVzdCBfKQor ICAiUmV0dXJuIHRoZSBwb3NpdGlvbiBhZnRlciB0aGUgZGVjbGFyYXRpb24ga2V5d29yZCBiZWZv cmUgUEFSRU5ULgorCitUaGlzIGFuY2hvciBhbGxvd3MgYWxpZ25pbmcgdmFyaWFibGVfZGVjbGFy YXRvcnMgaW4gdmFyaWFibGUgYW5kIGxleGljYWwKK2RlY2xhcmF0aW9ucywgYWNjb3VudGluZyBm b3IgdGhlIGxlbmd0aCBvZiBrZXl3b3JkICh2YXIsIGxldCwgb3IgY29uc3QpLiIKKyAgKGxldCAo KGRlY2wgKHRyZWVzaXQtcGFyZW50LXVudGlsCisgICAgICAgICAgICAgICBwYXJlbnQgKHJ4IChv ciAidmFyaWFibGUiICJsZXhpY2FsIikgIl9kZWNsYXJhdGlvbiIpIHQpKSkKKyAgICAoKyAodHJl ZXNpdC1ub2RlLXN0YXJ0IGRlY2wpCisgICAgICAgKGxlbmd0aCAodHJlZXNpdC1ub2RlLXRleHQg KHRyZWVzaXQtbm9kZS1jaGlsZCBkZWNsIDApKSkpKSkKKwogKGRlZnVuIHR5cGVzY3JpcHQtdHMt bW9kZS0taW5kZW50LXJ1bGVzIChsYW5ndWFnZSkKICAgIlJ1bGVzIHVzZWQgZm9yIGluZGVudGF0 aW9uLgogQXJndW1lbnQgTEFOR1VBR0UgaXMgZWl0aGVyIGB0eXBlc2NyaXB0JyBvciBgdHN4Jy4i CkBAIC0xMTMsNyArMTIzLDI0IEBAIHR5cGVzY3JpcHQtdHMtbW9kZS0taW5kZW50LXJ1bGVzCiAg ICAgICgocGFyZW50LWlzICJzd2l0Y2hfY2FzZSIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1t b2RlLWluZGVudC1vZmZzZXQpCiAgICAgICgocGFyZW50LWlzICJzd2l0Y2hfZGVmYXVsdCIpIHBh cmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpCiAgICAgICgocGFyZW50 LWlzICJ0eXBlX2FyZ3VtZW50cyIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVu dC1vZmZzZXQpCi0gICAgICgocGFyZW50LWlzICJ2YXJpYWJsZV9kZWNsYXJhdG9yIikgcGFyZW50 LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKKworICAgICA7OyAxLiBpbmRl bnQgd2l0aCByZXNwZWN0IHRvIGRlY2xhcmF0aW9uIHN0YXJ0OgorICAgICAoKHBhcmVudC1pcyAi dmFyaWFibGVfZGVjbGFyYXRvciIpIGdyYW5kLXBhcmVudCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5k ZW50LW9mZnNldCkKKyAgICAgKChwYXJlbnQtaXMgLChyeCAob3IgInZhcmlhYmxlIiAibGV4aWNh bCIpICJfZGVjbGFyYXRpb24iKSkKKyAgICAgIHR5cGVzY3JpcHQtdHMtbW9kZS0tYW5jaG9yLWRl Y2wgMSkKKworICAgICA7OyAyLiBpbmRlbnQgd2l0aCByZXNwZWN0IHRvIHZhcmlhYmxlX2RlY2xh cmF0b3Igc3RhcnQ6CisgICAgICgobWF0Y2ggbmlsICJ2YXJpYWJsZV9kZWNsYXJhdG9yIiBuaWwg MCAxKQorICAgICAgcGFyZW50LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkK KyAgICAgKChuLXAtZ3AgbmlsICJ2YXJpYWJsZV9kZWNsYXJhdG9yIiAsKHJ4IChvciAidmFyaWFi bGUiICJsZXhpY2FsIikgIl9kZWNsYXJhdGlvbiIpKQorICAgICAgcGFyZW50IHR5cGVzY3JpcHQt dHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQorICAgICAoKHBhcmVudC1pcyAsKHJ4IChvciAidmFyaWFi bGUiICJsZXhpY2FsIikgIl9kZWNsYXJhdGlvbiIpKQorICAgICAgdHlwZXNjcmlwdC10cy1tb2Rl LS1hbmNob3ItZGVjbCAxKQorCisgICAgIDs7IDMuIGFsaWduIHdpdGggdmFyaWFibGUgZGVjbGFy YXRvciAobGlrZSBqcy1tb2RlKQorICAgICAoKHBhcmVudC1pcyAsKHJ4IChvciAidmFyaWFibGUi ICJsZXhpY2FsIikgIl8iIChvciAiZGVjbGFyYXRpb24iICJkZWNsYXJhdG9yIikpKQorICAgICAg dHlwZXNjcmlwdC10cy1tb2RlLS1hbmNob3ItZGVjbCAxKQorCiAgICAgICgocGFyZW50LWlzICJh cmd1bWVudHMiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQog ICAgICAoKHBhcmVudC1pcyAiYXJyYXkiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1p bmRlbnQtb2Zmc2V0KQogICAgICAoKHBhcmVudC1pcyAiZm9ybWFsX3BhcmFtZXRlcnMiKSBwYXJl bnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQo= --00000000000016c73b0616509977--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 1 Jan 2024 04:56:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 31 23:56:25 2023 Received: from localhost ([127.0.0.1]:47261 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rKALh-0000Vp-2n for submit <at> debbugs.gnu.org; Sun, 31 Dec 2023 23:56:25 -0500 Received: from mail-oi1-x233.google.com ([2607:f8b0:4864:20::233]:46552) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1rKALf-0000Vb-8a for 68054 <at> debbugs.gnu.org; Sun, 31 Dec 2023 23:56:23 -0500 Received: by mail-oi1-x233.google.com with SMTP id 5614622812f47-3bbd6f87959so2094296b6e.1 for <68054 <at> debbugs.gnu.org>; Sun, 31 Dec 2023 20:56:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704084976; x=1704689776; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=m8C/YkiIvyvEk4ta47IOip708gTuKMEsbjEp0laT5Bc=; b=hln3x5tyjs0uvbdLR82t0ysRVqOPniA9cKEvY6z+L71oeqARNXkDN6cYZVGmgJf46r ZWY+BYV+wC5gYNjmAzO/eYWH6LE71AKje4Sbg8Vef+nh2jcxPqfVkNt2cq6seH+tHLnV 0YrizgngVALtTMg6eJesrjiPXTZUugNLSXljAYm49aut15OqiXOa5h9JgL7daQ47nMV3 7jeyyFECmA1YKEsSEfo7nHbmQ3H7cWxhJQ56mBkV1wRNmEYC00LIyZ2Llc2IPKtcuF6U QmPIn21UYNwoKsFjJUwZKS4+NHfyrrqmv42SaYKNsHVWzq102tGLfgk1z/KnQ+DrjqmE xKRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704084976; x=1704689776; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=m8C/YkiIvyvEk4ta47IOip708gTuKMEsbjEp0laT5Bc=; b=JQLsiB83ujHbIKgHg8k2M6lwK6lr+SVUldErXtvb9NvEM8vO8WZBAsqHqb40sUJcf/ 9A9oDjtvQm3cBb3AaKYFnyN3ftpxCsoB5QJozBfIc6juTkhB/6ZLoXT7RWp0BTfiC3ML v2mLFv4PQPW5QY3tgeBZR9uYXFolEewTVFb1xnlGXHGXT1F3vKdv+EwjsXMxQN4+i3yq WgObOLY2vpMf++mxy5GxNqYX1xlTtNnjkEQL/lPgBQPvRf8CoqLy32AVHDagau0jWIdf xX3ONzW88KcEVenJTOAnqAAlHDnYZBvTJXurmLhuibz4iS0GkBPA1RGy396lJtwbfV5t ys/A== X-Gm-Message-State: AOJu0YwsnTEV1idLMEbt7cTd7HK2S5pIrcyo6mwlXWbZbeAzRTQ8rVBR 8G7/i4vEztb/FegtfU23w64= X-Google-Smtp-Source: AGHT+IFU2AifXAL1u6q+QVAKTRDRNY1shYfP0q+CEk0McKx1W1IEUYlZn38RaGn4zAre3mT8xVS4LQ== X-Received: by 2002:a05:6808:7c3:b0:3ba:951:dd57 with SMTP id f3-20020a05680807c300b003ba0951dd57mr13706829oij.107.1704084975886; Sun, 31 Dec 2023 20:56:15 -0800 (PST) Received: from smtpclient.apple (172-117-161-177.res.spectrum.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id s22-20020a62e716000000b006da105deedesm7395196pfh.197.2023.12.31.20.56.15 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 31 Dec 2023 20:56:15 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> Date: Sun, 31 Dec 2023 20:56:04 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <D3C4EDA7-93A3-4698-8A1E-737BD98879AE@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> To: Dmitry Gutov <dmitry@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Noah Peart <noah.v.peart@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) > On Dec 31, 2023, at 5:41 AM, Dmitry Gutov <dmitry@HIDDEN> wrote: >=20 > On 31/12/2023 07:35, Noah Peart wrote: >> Yea, I agree that would be better - would you align on start the = variable names, or '=3D' like >> `c-lineup-assignments`? >=20 > Like js-mode would be good. >=20 > I'm not familiar with c-lineup-assignments, but we could add different = variations later. Also, if you are feeling adventurous, I noticed that the second variable = in a lexical_declaration isn=E2=80=99t fontified in variable-name-face. = It=E2=80=99d be nice to fix that as well. Yuan=
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 31 Dec 2023 13:41:53 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 31 08:41:53 2023 Received: from localhost ([127.0.0.1]:45840 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rJw4f-0003B7-GX for submit <at> debbugs.gnu.org; Sun, 31 Dec 2023 08:41:53 -0500 Received: from out3-smtp.messagingengine.com ([66.111.4.27]:40833) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1rJw4d-0003As-Lk for 68054 <at> debbugs.gnu.org; Sun, 31 Dec 2023 08:41:52 -0500 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 5ABB65C00B2; Sun, 31 Dec 2023 08:41:45 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Sun, 31 Dec 2023 08:41:45 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1704030105; x=1704116505; bh=D3H9MHIHQ51v4S1aKXKoa0h/PJnmj5uTY+2oaJOnbYo=; b= LW+B9i1+JKTl/pw1VpwgF3w/Ix/gMp0yz37czEdEgBSj9JA2g4ZtRjr06FNvwhvW Q9OLjXIny9Dz1j9jUBG2XCw4xfc+A2DyCJ9ZP8knqlIPWuJkLbdbfPmlL2BVMtJg Xbiy5CrEhqbnrEHZD4zZ6u1QSZMrtPhaPb3ASboVIOrdf82zn7shmawZZijlTq6X QqYQtr4cY9oMyA8EUojV8ijVL94/25whZvo9TIwk4mHxp375JQ5huAxwglZcDwer bBAfybBSYndgydE4bsFeCbK/JNhBQPcJT+iwqScbVJnZ6H599olhXl0U2v9PM5B7 ZqSzPvN5m5wFscA2Za3cLw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1704030105; x= 1704116505; bh=D3H9MHIHQ51v4S1aKXKoa0h/PJnmj5uTY+2oaJOnbYo=; b=j +elum7+bTNhw3lbs+tEoJlLfkEUWXuG05VT0ks8JNqjfN7YGAl98dun/ORqnGhTi f5DrtTtDGNIEyW627QdFoInaMR6sbiyrIfBugkZzIYqZ94NUx5WHB8kRrAJz0HHR +wzwjl23xESLuz4xuTp1kJLn1xUmRvpKzCHb7IdegDQ5bb3Nzvh9pK6lW5U9O4bG V6xN3UXHKhKB7hMXTfIB5m6wqn6G7Z9MUua3r9pjYIwTMY7BPGk80h6JWQl2ybFp IksBWl1G/yMChKX1ECbqSmtfgP3wzilS+geJH9Mf0LBLN7u0AnKwHmCx2dQrrUws h6J51XZxV5Sdjjsl5ORiw== X-ME-Sender: <xms:mW-RZUw3VqhSOSEeft4LH_rFpB89TMoTP_JLHEgpYl2bHtTOzUxuLg> <xme:mW-RZYTvaUyVXNZeMHEtRAYOgRlSIK5UvdLhHWrDvkvupeXMQNy0MnILRVE-ysIEC BQ9rfcb-1gRmmL3C9o> X-ME-Received: <xmr:mW-RZWXrW_M8Ch8wHkAjKeaZoFphvycF1xPiBXSh_6kYPyC66I5OqrG3Ud5EUZWA9ossFQ> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdefkedgfedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepteduleejgeehtefgheegjeekueehvdevieekueeftddvtdevfefhvdevgedu jeehnecuvehluhhsthgvrhfuihiivgepudenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:mW-RZShknw8AwcF_Qvj96ea7bBoPz-Up6sYMOxMSEAYt0w1qvSrREA> <xmx:mW-RZWBZ_Rv0Uru6EqURh198ko2eLOygqhab7RVNrb06-b4GkJs5Ug> <xmx:mW-RZTLqka7qdklzzGM98mRXOWeG2CbEPc9G0cNLoI7eiLkwLtQa2Q> <xmx:mW-RZX7M329Uulc_znypQg47pNMkVpdqd3sbUButhi38ZBkbKhfxyg> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 31 Dec 2023 08:41:44 -0500 (EST) Message-ID: <c99e0937-7779-4c7a-aecd-db517b058188@HIDDEN> Date: Sun, 31 Dec 2023 15:41:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript Content-Language: en-US To: Noah Peart <noah.v.peart@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.7 (-) On 31/12/2023 07:35, Noah Peart wrote: > Yea, I agree that would be better - would you align on start the > variable names, or '=' like > `c-lineup-assignments`? Like js-mode would be good. I'm not familiar with c-lineup-assignments, but we could add different variations later.
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 31 Dec 2023 05:36:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 31 00:36:00 2023 Received: from localhost ([127.0.0.1]:45484 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rJoUR-0006Wj-IT for submit <at> debbugs.gnu.org; Sun, 31 Dec 2023 00:35:59 -0500 Received: from mail-oa1-x2d.google.com ([2001:4860:4864:20::2d]:46362) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1rJoUP-0006WT-HE for 68054 <at> debbugs.gnu.org; Sun, 31 Dec 2023 00:35:58 -0500 Received: by mail-oa1-x2d.google.com with SMTP id 586e51a60fabf-2046dee3c14so2767369fac.1 for <68054 <at> debbugs.gnu.org>; Sat, 30 Dec 2023 21:35:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704000950; x=1704605750; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Tb/pqqeHDEqikCsggvSwLgOZAgdYLc8qu8OJT0K6+4k=; b=FQ5Sa+JXwJqnPgI2V8Dh0yImG22TNd+i4Bel5JBOb2kUlAyLPj38FD8s8ZAzgdWUtx j+BDQoHCiLBBbxUOUxXXvxN9/zY97EnZdyPXCmCY5K5902cQrmgVuWHgNSuwFfyoWinz Y92bT+4PSTUGqBqSmJYx2fgf+EIa5XX4DUjYurNKI9JmGgAO9jJbKIL4TPWmkZtp3X/y wPVmonZq4SEuws4Ry9ZdmLVG2mtWHBGUJGCeTkFMi5lFnt0mTnR7w9BxhLqsA1qzHOrh hUHwyUQDmJ14/LKThbEWqY3CmrFYHonuLk4IYsIUtWJMAygpAO9wt/kqJk606qYBXxGQ yTHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704000950; x=1704605750; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Tb/pqqeHDEqikCsggvSwLgOZAgdYLc8qu8OJT0K6+4k=; b=fDmifxwNRTp3tKebdH+tJp6i7si3P79vRS73pz5nAohhXuatkDjyl5fET5wum4jxTz jteDmdUT2tp7UHC4WGNMv/2+c/66ETyoAmTTbAlYX2tNtnEVEoVO/5UG0PN9gj1bZ8R2 gtlmQ4hEY9wvq0eT9DW7Y3G2OfOOg+FVOgGC1sQijsLlLy5WrXkz5/9ucQGg8dZ24VSS S5YVjunK8xWRVdU3/q3PH7QkpudGJ3zClISLAsGy6Rc6/mcoO6kDUaHpnk/9eAv9xzcn ZjQYJmW73+mAGwn55UrQlxaVVu2JSL8aJE9dgAdJVzZlwPEGj4zLlF1bYr005ORyu2lG kQPA== X-Gm-Message-State: AOJu0Ywi+aayH0A0iM9J9NgiJom24Rb8fP5DCMvKeYOCt46qmqyDEtU4 xNl4eaDRh0pCGkSzdoX2ilhRhs9NJ/W+zgQb9ls= X-Google-Smtp-Source: AGHT+IFvAgPCb8qsHfj+xt/uY6Hk5CGSkFkpqEP8sAQ3qCbuDjWEXZPm3rPujyGYNmWxP4gwJ+VZs+FVdXukG+qn5Mw= X-Received: by 2002:a05:6808:169e:b0:3bb:d9c9:b927 with SMTP id bb30-20020a056808169e00b003bbd9c9b927mr3671559oib.48.1704000950666; Sat, 30 Dec 2023 21:35:50 -0800 (PST) MIME-Version: 1.0 References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> In-Reply-To: <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> From: Noah Peart <noah.v.peart@HIDDEN> Date: Sun, 31 Dec 2023 00:35:39 -0500 Message-ID: <CAPVBTScKwa-wsDpsWkcxO8z6UH3B2DZwRDCFWWph1q_2f6CtTA@HIDDEN> Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: Dmitry Gutov <dmitry@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000005c8b22060dc7a3cf" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: Yuan Fu <casouri@HIDDEN>, 68054 <at> debbugs.gnu.org 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: -1.0 (-) --0000000000005c8b22060dc7a3cf Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Yea, I agree that would be better - would you align on start the variable names, or '=3D' like `c-lineup-assignments`? On Sat, Dec 30, 2023 at 7:31=E2=80=AFPM Dmitry Gutov <dmitry@HIDDEN> wro= te: > On 30/12/2023 22:31, Yuan Fu wrote: > > > >> On Dec 29, 2023, at 8:24 PM, Yuan Fu<casouri@HIDDEN> wrote: > >> > >> > >> > >>> On Dec 26, 2023, at 10:21 PM, Noah Peart<noah.v.peart@HIDDEN> > 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 =3D 1, > >>> bar =3D 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? > > Yes, please. This also makes a difference when the variables are > declared with 'const' instead of 'let'. > > We should also support 'var' declarations: the parent node type to match > against is "variable_declaration". > --0000000000005c8b22060dc7a3cf Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Yea, I agree that would be better - would you align on sta= rt the variable names, or '=3D' like<div>`c-lineup-assignments`?</d= iv></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_att= r">On Sat, Dec 30, 2023 at 7:31=E2=80=AFPM Dmitry Gutov <<a href=3D"mail= to:dmitry@HIDDEN">dmitry@HIDDEN</a>> wrote:<br></div><blockquote c= lass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px soli= d rgb(204,204,204);padding-left:1ex">On 30/12/2023 22:31, Yuan Fu wrote:<br= > > <br> >> On Dec 29, 2023, at 8:24 PM, Yuan Fu<<a href=3D"mailto:casouri@= gmail.com" target=3D"_blank">casouri@HIDDEN</a>>=C2=A0 wrote:<br> >><br> >><br> >><br> >>> On Dec 26, 2023, at 10:21 PM, Noah Peart<<a href=3D"mailto:= noah.v.peart@HIDDEN" target=3D"_blank">noah.v.peart@HIDDEN</a>>=C2= =A0 wrote:<br> >>><br> >>> Tags: patch<br> >>><br> >>> * Bug: `js-ts-mode` and `typescript-ts-mode` are missing inden= tation<br> >>> rules for lexical declarations that span multiple lines.<br> >>><br> >>> Recipe to reproduce:<br> >>><br> >>> Using the following function to configure js-ts-mode and inden= t the<br> >>> buffer:<br> >>><br> >>>=C2=A0 =C2=A0 =C2=A0(defun try-indent ()<br> >>>=C2=A0 =C2=A0 =C2=A0 =C2=A0(interactive)<br> >>>=C2=A0 =C2=A0 =C2=A0 =C2=A0(js-ts-mode)<br> >>>=C2=A0 =C2=A0 =C2=A0 =C2=A0(setq-local indent-tabs-mode nil)<br= > >>>=C2=A0 =C2=A0 =C2=A0 =C2=A0(setq-local js-indent-level 4)<br> >>>=C2=A0 =C2=A0 =C2=A0 =C2=A0(indent-region (point-min) (point-ma= x)))<br> >>><br> >>> Add the following example to a buffer and call `try-indent`.<b= r> >>><br> >>>=C2=A0 =C2=A0 =C2=A0let foo =3D 1,<br> >>>=C2=A0 =C2=A0 =C2=A0bar =3D 2; // no indent rule matches this l= ine<br> >>><br> >>> No indentation is applied to the second line.<br> >>><br> >>> This patch adds a simple indentation rules for `js-ts-mode` an= d<br> >>> `typescript-ts-mode` to handle the multi-line lexical declarat= ions.<br> > It seems that js-mode indents bar to align with foo, rather than inden= ting one level. I feel that we should do the same, WDYT?<br> <br> Yes, please. This also makes a difference when the variables are <br> declared with 'const' instead of 'let'.<br> <br> We should also support 'var' declarations: the parent node type to = match <br> against is "variable_declaration".<br> </blockquote></div> --0000000000005c8b22060dc7a3cf--
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 31 Dec 2023 00:32:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Dec 30 19:32:00 2023 Received: from localhost ([127.0.0.1]:45330 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rJjkG-0005Va-0S for submit <at> debbugs.gnu.org; Sat, 30 Dec 2023 19:32:00 -0500 Received: from wout4-smtp.messagingengine.com ([64.147.123.20]:53939) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1rJjkC-0005VL-Kl for 68054 <at> debbugs.gnu.org; Sat, 30 Dec 2023 19:31:57 -0500 Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailout.west.internal (Postfix) with ESMTP id 8B5103200063; Sat, 30 Dec 2023 19:31:49 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute7.internal (MEProxy); Sat, 30 Dec 2023 19:31:49 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1703982709; x=1704069109; bh=UZV9Q+4UezXJq37UnojVBKo8Z2Wty56+DPo34hgyN3U=; b= eBWKS++4xqzJRS04jxBJs1AB/iuamkGrG9UYyEQMzjyAemIIEmfo/vfgY0pg/15e qhGf3WscHkma5H3JqqnIW33IkLcLWhcGm/EL/9kQ4Q9WUeoaj5z49rFt/jNoRdj9 3yZOhxkUn6E6p3ObTxQ8G/oY6S22+aKYCdJTI3FIfc9N0TzJItRfNrcIAqM8Cjpr 7xsH7Jyfc32/EMxAiM3EPLHA9OD0u0vMo1w49mYN3ngKEDCbOjY3HAqyVmhZfEkl 72cLgzlv+O/eyrsyocBL+xBjVMPWDrng0Ltlz3Mt4BzlTIz9uZRj7qXSfCahPLG1 JSHr/RBVO7h70ZbtwjGemw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1703982709; x= 1704069109; bh=UZV9Q+4UezXJq37UnojVBKo8Z2Wty56+DPo34hgyN3U=; b=0 CYv+Y0RnvTZXjyi/B1btzy15itmGDRSFu5n+kOadnWKrYVds1c3k5BrTPPSnsBfI l3I3HaSNXOt/NJgNE+nKcQ8D2FmxP5mR7a7X102otem0OqDOP4jpsbExYSjclWvN naPpufqGs5TShef8ry1HBsAhiRCH48cCXw4BLvkYANDnDwmQ4lANhAg7/CMxgnS3 dfi4s/M2v8++QPEk9KSS5d43bXYrL+HAxhsY3e+wZ2uStM/wj+6xWNNJTfOCnfFw HXjtZXiM1nFuQ1KyDXv+G7T18/XNbY9u8rYDMafBd0N0h+tG2tG82whMQrBU0qzU mNIGLO4D3KJNBbc5QeMpQ== X-ME-Sender: <xms:dLaQZWCtxmp-ANFb4AFL6KKYIpIuFuE-6I6Ese1WUegDPpeDFKtb4g> <xme:dLaQZQgu0lLQOAB-GYwxvG2s9bJxM5w1eNi8L8covE55qmkhfYSPFCL_G6RGJ1uWt UvOsDGiEl_C2seRiOE> X-ME-Received: <xmr:dLaQZZkhmW8w9d8uIp0kf4ZmbP9Wua2wuVWIxASubmXsZmsQ9iEwFpofJ2_-K5vw9OXQaQ> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdefiedgvdegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepteduleejgeehtefgheegjeekueehvdevieekueeftddvtdevfefhvdevgedu jeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:dLaQZUwwUgTRwvy0jUEOBu02ZKqIOn4kw1Xz8ttgsqmFY06jfpJgcg> <xmx:dLaQZbSctlgPRWXjzXPYBVps-J0dK1WNmNpardEaMUk1T_TAVePRQg> <xmx:dLaQZfYMYeXneS2Go9aLGNm0d3fAf757T1r64aFVtc2f5kcPF4vPBw> <xmx:dbaQZSJ56uT6pX4maCJ7xZKIKCzGvxsPnm6JrgBuCG2XZJkJP-F1xA> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 30 Dec 2023 19:31:47 -0500 (EST) Message-ID: <5fd5b131-962a-489d-a674-0e199cdfff25@HIDDEN> Date: Sun, 31 Dec 2023 02:31:46 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript Content-Language: en-US To: Yuan Fu <casouri@HIDDEN>, Noah Peart <noah.v.peart@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 68054 Cc: 68054 <at> debbugs.gnu.org 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: -1.7 (-) On 30/12/2023 22:31, Yuan Fu wrote: > >> On Dec 29, 2023, at 8:24 PM, Yuan Fu<casouri@HIDDEN> wrote: >> >> >> >>> On Dec 26, 2023, at 10:21 PM, Noah Peart<noah.v.peart@HIDDEN> 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? Yes, please. This also makes a difference when the variables are declared with 'const' instead of 'let'. We should also support 'var' declarations: the parent node type to match against is "variable_declaration".
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 30 Dec 2023 20:31:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Dec 30 15:31:43 2023 Received: from localhost ([127.0.0.1]:45122 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rJfzi-0008Bu-Li for submit <at> debbugs.gnu.org; Sat, 30 Dec 2023 15:31:42 -0500 Received: from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b]:50368) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1rJfze-00088d-Kw for 68054 <at> debbugs.gnu.org; Sat, 30 Dec 2023 15:31:41 -0500 Received: by mail-ot1-x32b.google.com with SMTP id 46e09a7af769-6dbfdb41a63so2892364a34.0 for <68054 <at> debbugs.gnu.org>; Sat, 30 Dec 2023 12:31:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703968292; x=1704573092; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=gcaI/JcYusr/1+gar0A+t/kwDXmZvvyCAsHcf2JQZHA=; b=FE6ICX3sws159CGXgwP9joLO4pLb+M5nIfk7K4mtNIzTMESdosiHX9biUcDFf49abg q2WOL+F2B4bnEptMGtlzLqUUNNGbM70hmPiLuYSxiTI6t2jv03ULkX6ONbluMxPjmwjR tS8h7eeHjN0Kyzn2JeCUPRhfGEMiJi0tb5tlW9czo1nTxeuVYCK4/J2IQMsVxrYgbIGY u33BSWgsrLevFTAgoOkII1HfVmY+S8dTHMsyWWjkqmO+S+aRS8LQPzEsH99Ouv9ftEDk TqFXU66ZMH9Fjbu9/+DpyuR2/ew15gTuQt391F0J4MKyqcVm79O6p+cEpArPXqoTQiJ5 SOuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703968292; x=1704573092; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gcaI/JcYusr/1+gar0A+t/kwDXmZvvyCAsHcf2JQZHA=; b=piTP312Ad26Hpu8N4toGJVroCcdBRSLAJmoh1qHf2CU2cBD63XSDDbfs02uuGO+FIp Twn7Tob1YR3G6jATX69q3I4W8Wnhnm98FXDVLM7EfDQkDVti4XR1RVqz1Q744v9LEYEn ScWuyP7bbsPJCbuWdDx3ZRPWjpsXRoJTgr9wzUSd5mK8U3aiOnycf/NAlfZd3QlmQpZU wGw/LdAtJoPmKpDkmLiAK2oX3gaWLzfPb5lUCmKs5IHizAQYCUwJMAjEhiomCtYcdaBA uR7tCd7evEdtFafZ4XvlXakOvkya45HIjMjybVeSn2QVlQI5Z7IHf7fMwZc5yxbUaBlT i6Jg== X-Gm-Message-State: AOJu0Yx+Vl1TVUxmObWZmWffB8Mdioxra8JWMxf3bY6hm5G9EvRx6ZR4 oRhBB0EuWH+Km0iQK0kuEl4= X-Google-Smtp-Source: AGHT+IF+8EBrO/Cl+nLoeZq8OySnm+/mNIdJqniKGgLQnSA9JH5fn+EAwQv4kWImmgUEwB+f9g7x8w== X-Received: by 2002:a05:6870:91d6:b0:203:bf30:bbf3 with SMTP id c22-20020a05687091d600b00203bf30bbf3mr17048768oaf.75.1703968291997; Sat, 30 Dec 2023 12:31:31 -0800 (PST) Received: from smtpclient.apple (172-117-161-177.res.spectrum.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id y42-20020a056a00182a00b006da76842a66sm500445pfa.85.2023.12.30.12.31.31 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 30 Dec 2023 12:31:31 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> Date: Sat, 30 Dec 2023 12:31:20 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <14DD6D3A-B9F5-4E5F-B85B-0A8DF6961723@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> To: Noah Peart <noah.v.peart@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: 68054 <at> debbugs.gnu.org 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: -1.0 (-) > On Dec 29, 2023, at 8:24 PM, Yuan Fu <casouri@HIDDEN> wrote: >=20 >=20 >=20 >> On Dec 26, 2023, at 10:21 PM, Noah Peart <noah.v.peart@HIDDEN> = wrote: >>=20 >> Tags: patch >>=20 >> * Bug: `js-ts-mode` and `typescript-ts-mode` are missing indentation >> rules for lexical declarations that span multiple lines. >>=20 >> Recipe to reproduce: >>=20 >> Using the following function to configure js-ts-mode and indent the >> buffer: >>=20 >> (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))) >>=20 >> Add the following example to a buffer and call `try-indent`. >>=20 >> let foo =3D 1, >> bar =3D 2; // no indent rule matches this line >>=20 >> No indentation is applied to the second line. >>=20 >> 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=
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Received: (at 68054) by debbugs.gnu.org; 30 Dec 2023 04:24:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Dec 29 23:24:32 2023 Received: from localhost ([127.0.0.1]:42793 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rJQtk-0006AF-K4 for submit <at> debbugs.gnu.org; Fri, 29 Dec 2023 23:24:32 -0500 Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]:49429) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1rJQti-0006A2-PB for 68054 <at> debbugs.gnu.org; Fri, 29 Dec 2023 23:24:31 -0500 Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-1d3e8a51e6bso55596155ad.3 for <68054 <at> debbugs.gnu.org>; Fri, 29 Dec 2023 20:24:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703910264; x=1704515064; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=mhMRcyoxUd27Lmm1U+vt4LBEADE4GRanYl3DVbxN2/A=; b=NvOzhPk/7NHkpI1zdy7xodWs2g+wHMvVx7HqGxmyZxvlrn+y8UP8kaX0PB7JzCUjbG vzBuj7mhd+eT7DJHgnZmj1pJvvU49Fuf0SlnrkAs7El7WTVgl53bjig2q77I3j2FuFMy yp0IURUQXkGrL8L1NA1vsf+6sRg8lRsKl3ONU61XNxHBa9H8eMha66ZYp9UQyrQLH0Fx /8kTNuAqx+AW0AyLXam/whqga96HU0Q56Sq4bNX1DahyR8UkhuEw/M4jO78q9QSWwc7u Lj5Gvrle4i4n7w0kboKoDAjBFpxRqWq/5qQAIgwka6OGe2a35Jf3+gu1eGf62wextDAR kYqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703910264; x=1704515064; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mhMRcyoxUd27Lmm1U+vt4LBEADE4GRanYl3DVbxN2/A=; b=I/0itInL8d7Mm7Q0gxt5d7hjjXmwmmtFVT+HDVxArm7wW/UL80IQxr5muGbp4KpDrM nSwOiuhHHzuwuedvFNoSu2GuBZ+Rn/oNYcUVZ3Bla4CD5cbWVkjPOfsdNpEdHLaBYDRr 9xWEM7hL05H+HDywjd+QEho8CWDhNk3knl2BZOPssEqssmMaLcStwORBh+0J4KS7squj X37AU8g+CpO3vvR98rTYJxNEZ//lpFEltVfSLhxnCtT/qoEaRhYVu/beRE2lMoex8A+G 1YF5/J+oy1a62bNezlOSQwKKL2OhVzAOFbQ0Zo30XbrgjufwjPI2FNqTaAO1mcQ71cIt YR4A== X-Gm-Message-State: AOJu0YznfZ+/AbKjAyh66OqhfNmZy90jyuRoZuEM6aCVfA7rOkgLnUJN hCk3sFm8MG/G8YSHBM6c7Uw= X-Google-Smtp-Source: AGHT+IHk+ONWqe+f//Ob1oPbHm/L3sHnqmDlDHQV343djsZQYFWkTRP7eS/e+MTUc1UrQYzYUrAnKw== X-Received: by 2002:a17:903:1107:b0:1d4:85a8:3e93 with SMTP id n7-20020a170903110700b001d485a83e93mr5304071plh.106.1703910264499; Fri, 29 Dec 2023 20:24:24 -0800 (PST) Received: from smtpclient.apple (172-117-161-177.res.spectrum.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id jg11-20020a17090326cb00b001d3ef9edfa7sm16495479plb.58.2023.12.29.20.24.23 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 29 Dec 2023 20:24:24 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6\)) Subject: Re: bug#68054: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript From: Yuan Fu <casouri@HIDDEN> In-Reply-To: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> Date: Fri, 29 Dec 2023 20:24:13 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <797AC075-B0C8-4269-B8E3-A1F2C69FA955@HIDDEN> References: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> To: Noah Peart <noah.v.peart@HIDDEN> X-Mailer: Apple Mail (2.3731.700.6) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68054 Cc: 68054 <at> debbugs.gnu.org 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: -1.0 (-) > On Dec 26, 2023, at 10:21 PM, Noah Peart <noah.v.peart@HIDDEN> = wrote: >=20 > Tags: patch >=20 > * Bug: `js-ts-mode` and `typescript-ts-mode` are missing indentation > rules for lexical declarations that span multiple lines. >=20 > Recipe to reproduce: >=20 > Using the following function to configure js-ts-mode and indent the > buffer: >=20 > (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))) >=20 > Add the following example to a buffer and call `try-indent`. >=20 > let foo =3D 1, > bar =3D 2; // no indent rule matches this line >=20 > No indentation is applied to the second line. >=20 > This patch adds a simple indentation rules for `js-ts-mode` and > `typescript-ts-mode` to handle the multi-line lexical declarations. Thanks, and sorry for not seeing this. I=E2=80=99ll take a look tonight. Yuan=
bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at submit) by debbugs.gnu.org; 27 Dec 2023 06:21:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Dec 27 01:21:27 2023 Received: from localhost ([127.0.0.1]:35241 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rINIE-00056W-Kd for submit <at> debbugs.gnu.org; Wed, 27 Dec 2023 01:21:27 -0500 Received: from lists.gnu.org ([2001:470:142::17]:34100) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <noah.v.peart@HIDDEN>) id 1rINIB-00056J-MK for submit <at> debbugs.gnu.org; Wed, 27 Dec 2023 01:21:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <noah.v.peart@HIDDEN>) id 1rINI7-0001zu-KF for bug-gnu-emacs@HIDDEN; Wed, 27 Dec 2023 01:21:19 -0500 Received: from mail-ot1-x333.google.com ([2607:f8b0:4864:20::333]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <noah.v.peart@HIDDEN>) id 1rINI5-0004Dv-Py for bug-gnu-emacs@HIDDEN; Wed, 27 Dec 2023 01:21:19 -0500 Received: by mail-ot1-x333.google.com with SMTP id 46e09a7af769-6dc076e9e59so23325a34.2 for <bug-gnu-emacs@HIDDEN>; Tue, 26 Dec 2023 22:21:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703658076; x=1704262876; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=sRQH7sWBz8h9Q04GA8N+t3NrMfPcYvRSehORSuwRlZQ=; b=eutM4p63uMooQp02GF56O6XdvqbT3wyyF9Fj3vaeDl7nr+Uum0Jx1/oxQdYexyjy2o XZB3kOc4i6UtvvGTEk7VnhN5g+yqwMNMIKGPYpjL0oqEi2QJNn2Rqq04fd/cZJp0/HdE 8ZSkHCvV6POKEBK29/DiFt2fGyu4GkG42lpmjUdObcN4rLjAtB1ikxiIf9OMWPzHBYc6 1R99CrJnb4RfikU0yll+kZQ38HFoFvobj2h5dab2yGW9TISrSnaqUL7jkp1B+gCA3UN1 AkI97TAo2YUjgskiLuFjFwg7Xo3MIiXH4d/SXEULdcezfkNR1vKwtrphOCIe9K3JZouF zMGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703658076; x=1704262876; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=sRQH7sWBz8h9Q04GA8N+t3NrMfPcYvRSehORSuwRlZQ=; b=SoCJgW3FYX4UUDZzFje7UdzbXZSrivbssqsJBFNnsINhSGJBa+uMfQdP5YYniwD3sL ruMWG16arU4wSQ9FJMnHUqg/yTQw10sTway/WLDZJl+gnh6SLuM9vre8yBnuSWPHdnLc Tm/JcBfQmpSVXiv2OOBB3HBxcldTN+XioyENR5/KM21SNYq+k+GEdo0d+bWJxLePde7L 5xXjWnWDloSpH/Akq2RSxZfiqgYk0aZGhEZnDz5b0nTbUVbvudlejX5ng8m9EE0mHM6S oapdgCGaqh5/kV7LgUi0LHP4cueOGOlzZa5WxMHvARBzzfG7zMWDLL3yc3Las7yUe5I9 OtKw== X-Gm-Message-State: AOJu0YwIFK33wSQ10yU/D89f/znKFnd/CmIPbxR3/jC6YqhHSHyvSlYS /NtwGko8lhR35UW8kvalYeBrqOAmcxXmmblQ+t/GetsO+FrCeTNe X-Google-Smtp-Source: AGHT+IEozu9CYXucLu+tzRf6aHj0N9oH++5eM5h+VT8lTjUYSkk/KOtFiRuo4ugtlsjyqQzOZ+jsnPhtnnIeImYIm5o= X-Received: by 2002:a05:6870:9720:b0:1fa:fd62:18f5 with SMTP id n32-20020a056870972000b001fafd6218f5mr10420660oaq.22.1703658075832; Tue, 26 Dec 2023 22:21:15 -0800 (PST) MIME-Version: 1.0 From: Noah Peart <noah.v.peart@HIDDEN> Date: Wed, 27 Dec 2023 01:21:05 -0500 Message-ID: <CAPVBTSf1Vp8dDtsgDqYP_-jr0a6CYK+1iC-Rmg8_Th+gY0NsCw@HIDDEN> Subject: [PATCH] Add tree-sitter indent rule for lexical decls in js/typescript To: bug-gnu-emacs@HIDDEN Content-Type: multipart/mixed; boundary="0000000000006e83f3060d77ceae" Received-SPF: pass client-ip=2607:f8b0:4864:20::333; envelope-from=noah.v.peart@HIDDEN; helo=mail-ot1-x333.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.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: -0.0 (/) --0000000000006e83f3060d77ceae Content-Type: multipart/alternative; boundary="0000000000006e83f1060d77ceac" --0000000000006e83f1060d77ceac Content-Type: text/plain; charset="UTF-8" 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. In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2023-12-26 built on nverno-XPS-8940 Repository revision: d376462c7183752bf44b9bd20bf5020fe7eaf75a Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101004 System Description: Ubuntu 22.04.3 LTS Configured using: 'configure --prefix=/usr/local --with-modules --with-tree-sitter --with-threads --with-x-toolkit=gtk3 --with-xwidgets --with-gnutls --with-json --with-mailutils --with-jpeg --with-png --with-rsvg --with-tiff --with-xml2 --with-xpm --with-imagemagick CC=gcc-12 CXX=gcc-12' --0000000000006e83f1060d77ceac Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Tags: patch<br><br>* Bug: `js-ts-mode` and `typescript-ts-= mode` are missing indentation<br>rules for lexical declarations that span m= ultiple lines.<br><br>Recipe to reproduce:<br><br>Using the following funct= ion to configure js-ts-mode and indent the<br>buffer:<br><br>=C2=A0 =C2=A0 = (defun try-indent ()<br>=C2=A0 =C2=A0 =C2=A0 (interactive)<br>=C2=A0 =C2=A0= =C2=A0 (js-ts-mode)<br>=C2=A0 =C2=A0 =C2=A0 (setq-local indent-tabs-mode n= il)<br>=C2=A0 =C2=A0 =C2=A0 (setq-local js-indent-level 4)<br>=C2=A0 =C2=A0= =C2=A0 (indent-region (point-min) (point-max)))<br><br>Add the following e= xample to a buffer and call `try-indent`.<br><br>=C2=A0 =C2=A0 let foo =3D = 1,<br>=C2=A0 =C2=A0 bar =3D 2; // no indent rule matches this line<br><br>N= o indentation is applied to the second line.<br><br>This patch adds a simpl= e indentation rules for `js-ts-mode` and<br>`typescript-ts-mode` to handle = the multi-line lexical declarations.<br><br><br>In GNU Emacs 30.0.50 (build= 1, x86_64-pc-linux-gnu, GTK+ Version<br>3.24.33, cairo version 1.16.0) of = 2023-12-26 built on nverno-XPS-8940<br>Repository revision: d376462c7183752= bf44b9bd20bf5020fe7eaf75a<br>Repository branch: master<br>Windowing system = distributor 'The X.Org Foundation', version 11.0.12101004<br>System= Description: Ubuntu 22.04.3 LTS<br><br>Configured using:<br>=C2=A0'con= figure --prefix=3D/usr/local --with-modules --with-tree-sitter<br>--with-th= reads --with-x-toolkit=3Dgtk3 --with-xwidgets --with-gnutls<br>--with-json = --with-mailutils --with-jpeg --with-png --with-rsvg<br>--with-tiff --with-x= ml2 --with-xpm --with-imagemagick CC=3Dgcc-12<br>CXX=3Dgcc-12'<br></div= > --0000000000006e83f1060d77ceac-- --0000000000006e83f3060d77ceae Content-Type: text/x-patch; charset="US-ASCII"; name="js-ts-indent-decls.patch" Content-Disposition: attachment; filename="js-ts-indent-decls.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lqndzgao0> X-Attachment-Id: f_lqndzgao0 RnJvbSA0YzI3OTNmY2RiMTE5OTI1MzM5NjUxMWExM2MxMzUxOWM3NmJiODE3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBXZWQsIDI3IERlYyAyMDIzIDAwOjUwOjQ2IC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IHRyZWUtc2l0dGVyIGluZGVudCBydWxlIGZvciBsZXhpY2FsIGRlY2xzIGluCiBqcy90eXBlc2Ny aXB0CgoqIGxpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbAoodHlwZXNjcmlwdC10 cy1tb2RlLS1pbmRlbnQtcnVsZXMpOiBBZGQgaW5kZW50IHJ1bGUgZm9yCmxleGljYWxfZGVjbGFy YXRpb25zLgoKKiBsaXNwL3Byb2dtb2Rlcy9qcy5lbCAoanMtLXRyZWVzaXQtaW5kZW50LXJ1bGVz KTogQWRkIGluZGVudCBydWxlCmZvciBsZXhpY2FsX2RlY2xhcmF0aW9ucy4KLS0tCiBsaXNwL3By b2dtb2Rlcy9qcy5lbCAgICAgICAgICAgICAgICAgfCAxICsKIGxpc3AvcHJvZ21vZGVzL3R5cGVz Y3JpcHQtdHMtbW9kZS5lbCB8IDEgKwogMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKykK CmRpZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rlcy9qcy5lbCBiL2xpc3AvcHJvZ21vZGVzL2pzLmVs CmluZGV4IDYxYmQ5NDIyMmFjLi45MzU2NTVmNzc5ZiAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9k ZXMvanMuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvanMuZWwKQEAgLTM0NDksNiArMzQ0OSw3IEBA IGpzLS10cmVlc2l0LWluZGVudC1ydWxlcwogICAgICAgICgocGFyZW50LWlzICJuYW1lZF9pbXBv cnRzIikgcGFyZW50LWJvbCBqcy1pbmRlbnQtbGV2ZWwpCiAgICAgICAgKChwYXJlbnQtaXMgInN0 YXRlbWVudF9ibG9jayIpIHBhcmVudC1ib2wganMtaW5kZW50LWxldmVsKQogICAgICAgICgocGFy ZW50LWlzICJ2YXJpYWJsZV9kZWNsYXJhdG9yIikgcGFyZW50LWJvbCBqcy1pbmRlbnQtbGV2ZWwp CisgICAgICAgKChwYXJlbnQtaXMgImxleGljYWxfZGVjbGFyYXRpb24iKSBwYXJlbnQtYm9sIGpz LWluZGVudC1sZXZlbCkKICAgICAgICAoKHBhcmVudC1pcyAiYXJndW1lbnRzIikgcGFyZW50LWJv bCBqcy1pbmRlbnQtbGV2ZWwpCiAgICAgICAgKChwYXJlbnQtaXMgImFycmF5IikgcGFyZW50LWJv bCBqcy1pbmRlbnQtbGV2ZWwpCiAgICAgICAgKChwYXJlbnQtaXMgImZvcm1hbF9wYXJhbWV0ZXJz IikgcGFyZW50LWJvbCBqcy1pbmRlbnQtbGV2ZWwpCmRpZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rl cy90eXBlc2NyaXB0LXRzLW1vZGUuZWwgYi9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1v ZGUuZWwKaW5kZXggN2YwYjcyMzYzMDEuLmEwZjZlN2M5NTAxIDEwMDY0NAotLS0gYS9saXNwL3By b2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvdHlwZXNj cmlwdC10cy1tb2RlLmVsCkBAIC0xMTQsNiArMTE0LDcgQEAgdHlwZXNjcmlwdC10cy1tb2RlLS1p bmRlbnQtcnVsZXMKICAgICAgKChwYXJlbnQtaXMgInN3aXRjaF9kZWZhdWx0IikgcGFyZW50LWJv bCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKICAgICAgKChwYXJlbnQtaXMgInR5 cGVfYXJndW1lbnRzIikgcGFyZW50LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNl dCkKICAgICAgKChwYXJlbnQtaXMgInZhcmlhYmxlX2RlY2xhcmF0b3IiKSBwYXJlbnQtYm9sIHR5 cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQorICAgICAoKHBhcmVudC1pcyAibGV4aWNh bF9kZWNsYXJhdGlvbiIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZz ZXQpCiAgICAgICgocGFyZW50LWlzICJhcmd1bWVudHMiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQt dHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQogICAgICAoKHBhcmVudC1pcyAiYXJyYXkiKSBwYXJlbnQt Ym9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQtb2Zmc2V0KQogICAgICAoKHBhcmVudC1pcyAi Zm9ybWFsX3BhcmFtZXRlcnMiKSBwYXJlbnQtYm9sIHR5cGVzY3JpcHQtdHMtbW9kZS1pbmRlbnQt b2Zmc2V0KQotLSAKMi4zNC4xCgo= --0000000000006e83f3060d77ceae--
Noah Peart <noah.v.peart@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#68054
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.