From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Noah Peart Newsgroups: gmane.emacs.bugs Subject: bug#70023: [PATCH] Add typescript-ts-mode indentation for interface bodies Date: Tue, 26 Mar 2024 23:20:18 -0700 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="00000000000033e47a06149e6794" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="20463"; mail-complaints-to="usenet@ciao.gmane.io" To: 70023@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Mar 27 07:21:22 2024 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rpMf4-000543-1g for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 27 Mar 2024 07:21:22 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rpMen-00066T-6S; Wed, 27 Mar 2024 02:21:05 -0400 Original-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 ) id 1rpMel-00065W-5j for bug-gnu-emacs@gnu.org; Wed, 27 Mar 2024 02:21:03 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rpMek-0008Bq-Tz for bug-gnu-emacs@gnu.org; Wed, 27 Mar 2024 02:21:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rpMek-0003rJ-HR for bug-gnu-emacs@gnu.org; Wed, 27 Mar 2024 02:21:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Noah Peart Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 27 Mar 2024 06:21:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 70023 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.171152044614800 (code B ref -1); Wed, 27 Mar 2024 06:21:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 27 Mar 2024 06:20:46 +0000 Original-Received: from localhost ([127.0.0.1]:35590 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpMeS-0003qc-Rk for submit@debbugs.gnu.org; Wed, 27 Mar 2024 02:20:46 -0400 Original-Received: from lists.gnu.org ([2001:470:142::17]:53586) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rpMeN-0003qA-I2 for submit@debbugs.gnu.org; Wed, 27 Mar 2024 02:20:44 -0400 Original-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 ) id 1rpMeH-0005tV-Ib for bug-gnu-emacs@gnu.org; Wed, 27 Mar 2024 02:20:34 -0400 Original-Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rpMeE-000835-Mk for bug-gnu-emacs@gnu.org; Wed, 27 Mar 2024 02:20:33 -0400 Original-Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-2220a389390so254472fac.0 for ; Tue, 26 Mar 2024 23:20:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711520429; x=1712125229; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=5vqFUZedQudXBf27rQBIPKoKmxY74/ALu+K0THPIvcg=; b=Ri4zc3JrzZi8zKdwxq0rkNizOuZ7JlZM5swFO/PcJ8FbxYHoavpzZx5igCnbz9TVXv 8EriXiniQXSO2rZCWzdOzcRdH6tq6YC7zNwudzhNHBz6xRgz4EQzUMW7q/tK2dvEpNIC 2/RoqIu2aTFwNPkpfakQCi+CYrMO3AKVQo9O2jpw/kH6iOhVlnmvJebsiZjaBUNaoThw NdAKMaWaBKmMwtx4daAZwu+1+yVRji4rhMK9p8OIUCX/b04hH24YRWfvS01cszPOO54o hNycUJozILQJU9nTrHeEPG6AwWTyHTY32hTbinHROGWqDS76AmWp7MjLwPUNMvUY1Gpl WzyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711520429; x=1712125229; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=5vqFUZedQudXBf27rQBIPKoKmxY74/ALu+K0THPIvcg=; b=hOBm3VXjFtj8Nt+18geahspf0iYcJ6MzeonsZVGqPJJYr48WErwc6GMq+shOML5S4j KHpULTvKY7cyJlLskZVhM9IyF4rcwWgfCAY+83XAI6pieisBAZv8DLhAckUVgfS8dgtW 6ZBgKuyIL9oxCow8wB5Ue4qI3MXzV1E+kTNT9PYXJ9P96t/FGA0afNP9tk484A6z1s+0 jxelw4wyo8iwZN3vMitzyraEEwSwLHN317ORK1UW8uTcA7ZVoIHJocx+mFNN5Oy94z8S TDzGDjQCgU4Zv4B1sH4Nqr4PKtlCzUE0T8cei272VMaCprT7g3YH9w3JznH8YvG0cse5 Dq3w== X-Gm-Message-State: AOJu0YxvavN9FUCJCqnK/ybH5kZTXq+L9kptNfXN6iknzZPO3jyFWBdx SiyGZOZU3uIyIjHltFwt48Vhprr65X3qnUXPHbOEBqjRs4Ah3QOla40pidspH5tMWfRvl9sRV9E LD8b8JZ6PxXex0dDKHNbmPag7ckSP+wGNMSJhuKP7w10= X-Google-Smtp-Source: AGHT+IGWuGBoDo+Bmz2Cm4aVhL2G4j45jIKON893CuS376CpMfPdMHn5uDP0gsC0QMARwYaqNsmbZvhqfrUEz9bjKvk= X-Received: by 2002:a05:6870:a40c:b0:229:ff08:398e with SMTP id m12-20020a056870a40c00b00229ff08398emr1662943oal.21.1711520429097; Tue, 26 Mar 2024 23:20:29 -0700 (PDT) Received-SPF: pass client-ip=2001:4860:4864:20::2c; envelope-from=noah.v.peart@gmail.com; helo=mail-oa1-x2c.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 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:282122 Archived-At: --00000000000033e47a06149e6794 Content-Type: multipart/alternative; boundary="00000000000033e47906149e6792" --00000000000033e47906149e6792 Content-Type: text/plain; charset="UTF-8" Tags: patch Adds missing indentation for typescript interfaces. Currently, there is no indentation for property signatures in typescript interfaces. To reproduce, call `M-x (my-test-typescript-indent)` (defun my-test-typescript-indent () (interactive) (typescript-ts-mode) (setq-local typescript-ts-mode-indent-offset 4) (indent-region (point-min) (point-max))) in buffer with the following typescript code: interface Foo { foo: string; // no matching indent rule bar?: boolean; // no matching indent rule } In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0) of 2024-03-24 built on noah-X580VD Repository revision: c5de73a95a6ecefe46fe1ac07da8e83032be7f5b Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101004 System Description: Ubuntu 22.04.4 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' --00000000000033e47906149e6792 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Tags: patch


Adds missing indentation for typesc= ript interfaces.

Currently, there is no indentation for property sig= natures in typescript
interfaces.

To reproduce, call `M-x (my-tes= t-typescript-indent)`

=C2=A0 =C2=A0 (defun my-test-typescript-indent= ()
=C2=A0 =C2=A0 =C2=A0 (interactive)
=C2=A0 =C2=A0 =C2=A0 (typescri= pt-ts-mode)
=C2=A0 =C2=A0 =C2=A0 (setq-local typescript-ts-mode-indent-o= ffset 4)
=C2=A0 =C2=A0 =C2=A0 (indent-region (point-min) (point-max)))

in buffer with the following typescript code:

=C2=A0 =C2= =A0 interface Foo {
=C2=A0 =C2=A0 foo: string; =C2=A0 // no matching ind= ent rule
=C2=A0 =C2=A0 bar?: boolean; // no matching indent rule
=C2= =A0 =C2=A0 }


In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu,= GTK+ Version
3.24.33, cairo version 1.16.0) of 2024-03-24 built on noah= -X580VD
Repository revision: c5de73a95a6ecefe46fe1ac07da8e83032be7f5bRepository branch: master
Windowing system distributor 'The X.Org F= oundation', version 11.0.12101004
System Description: Ubuntu 22.04.4= LTS

Configured using:
=C2=A0'configure --prefix=3D/usr/local= --with-modules --with-tree-sitter
--with-threads --with-x-toolkit=3Dgtk= 3 --with-xwidgets --with-gnutls
--with-json --with-mailutils --with-jpeg= --with-png --with-rsvg
--with-tiff --with-xml2 --with-xpm --with-imagem= agick CC=3Dgcc-12
CXX=3Dgcc-12'
--00000000000033e47906149e6792-- --00000000000033e47a06149e6794 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-typescript-ts-mode-indentation-for-interface-bod.patch" Content-Disposition: attachment; filename="0001-Add-typescript-ts-mode-indentation-for-interface-bod.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lu9f1ycw0 RnJvbSBhMzlmMjM2NDk3Mzk5ODMxOGI1NmQ5MWNiMjgwMWEwNmIyMzdiODhhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBUdWUsIDI2IE1hciAyMDI0IDIyOjQ0OjQ4IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IHR5cGVzY3JpcHQtdHMtbW9kZSBpbmRlbnRhdGlvbiBmb3IgaW50ZXJmYWNlIGJvZGllcwoKKiBs aXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKKHR5cGVzY3JpcHQtdHMtbW9kZS0t aW5kZW50LXJ1bGVzKTogQWRkIGluZGVudGF0aW9uIHJ1bGUgZm9yCmludGVyZmFjZSBib2RpZXMu Ci0tLQogbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2RlLmVsIHwgMSArCiAxIGZpbGUg Y2hhbmdlZCwgMSBpbnNlcnRpb24oKykKCmRpZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rlcy90eXBl c2NyaXB0LXRzLW1vZGUuZWwgYi9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUuZWwK aW5kZXggZWE0ZjY0MTdjNWEuLmFiMWQ3NmFiMjBlIDEwMDY0NAotLS0gYS9saXNwL3Byb2dtb2Rl cy90eXBlc2NyaXB0LXRzLW1vZGUuZWwKKysrIGIvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10 cy1tb2RlLmVsCkBAIC0xMjQsNiArMTI0LDcgQEAgdHlwZXNjcmlwdC10cy1tb2RlLS1pbmRlbnQt cnVsZXMKICAgICAgKChwYXJlbnQtaXMgIm9iamVjdF90eXBlIikgcGFyZW50LWJvbCB0eXBlc2Ny aXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKICAgICAgKChwYXJlbnQtaXMgImVudW1fYm9keSIp IHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpCiAgICAgICgocGFy ZW50LWlzICJjbGFzc19ib2R5IikgcGFyZW50LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50 LW9mZnNldCkKKyAgICAgKChwYXJlbnQtaXMgImludGVyZmFjZV9ib2R5IikgcGFyZW50LWJvbCB0 eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkKICAgICAgKChwYXJlbnQtaXMgImFycm93 X2Z1bmN0aW9uIikgcGFyZW50LWJvbCB0eXBlc2NyaXB0LXRzLW1vZGUtaW5kZW50LW9mZnNldCkK ICAgICAgKChwYXJlbnQtaXMgInBhcmVudGhlc2l6ZWRfZXhwcmVzc2lvbiIpIHBhcmVudC1ib2wg dHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZzZXQpCiAgICAgICgocGFyZW50LWlzICJiaW5h cnlfZXhwcmVzc2lvbiIpIHBhcmVudC1ib2wgdHlwZXNjcmlwdC10cy1tb2RlLWluZGVudC1vZmZz ZXQpCi0tIAoyLjM0LjEKCg== --00000000000033e47a06149e6794--