From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#65470: 29.1.50; js-ts-mode: regex pattern can cause incorrect parenthesis matching Date: Sat, 26 Aug 2023 04:52:35 +0300 Message-ID: <8a95e29b-d75d-2e18-7ca6-9a90576b3942@gutov.dev> References: <59d884e2-4190-7111-8a37-548eb5a2c732@gutov.dev> <83fs49q8ui.fsf@gnu.org> <87bkew6x4y.fsf@thornhill.no> <3f955b21-1394-a7bd-ed35-064d8731e751@gutov.dev> <96820db7-cd69-43eb-81d6-3822312cd928@mailo.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------XW08LNuRbxFN1IMT504okNIq" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35537"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Cc: 65470@debbugs.gnu.org To: Augustin =?UTF-8?Q?Ch=C3=A9neau?= (BTuin) Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Aug 26 03:53:25 2023 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 1qZiUO-0008xi-8L for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 26 Aug 2023 03:53:25 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qZiTz-0000g5-M9; Fri, 25 Aug 2023 21:52:59 -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 1qZiTx-0000fc-Px for bug-gnu-emacs@gnu.org; Fri, 25 Aug 2023 21:52:57 -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 1qZiTx-0008Fe-I9 for bug-gnu-emacs@gnu.org; Fri, 25 Aug 2023 21:52:57 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qZiU2-0001Yv-39 for bug-gnu-emacs@gnu.org; Fri, 25 Aug 2023 21:53:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 26 Aug 2023 01:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65470 X-GNU-PR-Package: emacs Original-Received: via spool by 65470-submit@debbugs.gnu.org id=B65470.16930147775995 (code B ref 65470); Sat, 26 Aug 2023 01:53:02 +0000 Original-Received: (at 65470) by debbugs.gnu.org; 26 Aug 2023 01:52:57 +0000 Original-Received: from localhost ([127.0.0.1]:41275 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qZiTw-0001Yc-GL for submit@debbugs.gnu.org; Fri, 25 Aug 2023 21:52:56 -0400 Original-Received: from wout1-smtp.messagingengine.com ([64.147.123.24]:41239) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qZiTr-0001YK-8v for 65470@debbugs.gnu.org; Fri, 25 Aug 2023 21:52:55 -0400 Original-Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.west.internal (Postfix) with ESMTP id 1782432008FE; Fri, 25 Aug 2023 21:52:40 -0400 (EDT) Original-Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Fri, 25 Aug 2023 21:52:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:sender :subject:subject:to:to; s=fm3; t=1693014759; x=1693101159; bh=In 0XP+LxVh4hThl7kRAkDLsw7IQQAIBC36yhySPszrI=; b=HHg9D/U5PF/OVbSFgs 8Hi9K1EH7HC/qyrW5EoGBequ33MxXPvk0NF9mZGh1CQBOVfOAgYVeTbfRhvFViM0 RFjpMv8aUeGTo90PYRgPURA0cqhSN0eUXwsqHk4tBllgMSn6yGfrbdpC6ktTlggX aD5jLE5GoqpUerHvZE0m1968fTbFpik5mx5pg9+eWoem8bVrx+x/jrE7B3TOif10 N+eXwSzpE3PDXB93787bO7ssJaOTj8oM+z3pomx/8fySp97AiQuCAkdMvMlzqPRX +eSiMCB9pcuOm3vsuRJGqmcGZ1yfQg8DlQOm7VHGsToRW3U2vbOJw1T0C0NMns1G v2FQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc: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:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1693014759; x=1693101159; bh=In0XP+LxVh4hT hl7kRAkDLsw7IQQAIBC36yhySPszrI=; b=fbHqVZVs0c2S6+JuaalVjzz7LLGGk wSm8ejIlpJIeVrw2ZsH9S3Hde+BuWA0XJf+qwzbcwa9FHKZWUIlrD7RDBOBYcxIz O/POrFRW8wUB+IEgkX9PUR6gSEliLwSuZgXl7gZ1jylZ/nzDnqdfdczJyRcdR+bE hI2KCveuschQaWV+UsLp3SzEj93uHEIV5OqOly6luu3QDUXdi3i20/L6E81J4OZW BQU9eOSIbFjQ9nlhR//waipG6IsgGMYtwXOKTo7Hy79UIgQygHHqCemvHECSwMvO GCJBiT6KVHjb9wZfSKFrMSbuyHw8bpQZgUZzeYgi5fPVx2L61O7e509HA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedruddvledghedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurheptgfkffggfgfuvfevfhfhjgesmhdtreertdefjeenucfhrhhomhepffhmihht rhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrghtth gvrhhnpeehteekgfetieeujeeuvddtvdelteffleejteduvdefffejieehheeuteffveei jeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegumh hithhrhiesghhuthhovhdruggvvh X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 25 Aug 2023 21:52:38 -0400 (EDT) Content-Language: en-US In-Reply-To: <96820db7-cd69-43eb-81d6-3822312cd928@mailo.com> 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:268455 Archived-At: This is a multi-part message in MIME format. --------------XW08LNuRbxFN1IMT504okNIq Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Augustin! On 25/08/2023 10:17, Augustin Chéneau (BTuin) wrote: > Thanks for the patch, but I still have some issues. I believe that the > START and END arguments of `put-text-property` are off by one. The > attached modified patch seems to work better. Thanks for trying it out. Sorry about missing your first patch: apparently while it was the first time-wise, it was help up in moderation. Anyway, you make a good point about the case with the regexp: since I matched the pattern inside, the bounds of the node are off by one compared to the case with the jsx node. Your patch moves those bounds, but then they'll be wrong for the latter case. Here's an update which tries to handle both, but I guess if we add more node types later we'll just have to stop trying to handle them the same way (and do it closer to ruby-ts--syntax-propertize). Also added the new return_statement case for jsx. --------------XW08LNuRbxFN1IMT504okNIq Content-Type: text/x-patch; charset=UTF-8; name="js-ts--syntax-propertize-v2.diff" Content-Disposition: attachment; filename="js-ts--syntax-propertize-v2.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2pzLmVsIGIvbGlzcC9wcm9nbW9kZXMvanMu ZWwKaW5kZXggOWQyOTkwZTdiYzkuLjliNmRhNGVjMmZjIDEwMDY0NAotLS0gYS9saXNwL3By b2dtb2Rlcy9qcy5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9qcy5lbApAQCAtMzgyOSw2ICsz ODI5LDcgQEAganMtdHMtbW9kZQogICAgICAgICAgICAgICAgIChhcHBlbmQgInt9KCk6Oyw8 Pi8iIGVsZWN0cmljLWluZGVudC1jaGFycykpIDtGSVhNRToganMyLW1vZGUgYWRkcyAiW10q Ii4KICAgICAoc2V0cS1sb2NhbCBlbGVjdHJpYy1sYXlvdXQtcnVsZXMKIAkgICAgICAgICco KD9cOyAuIGFmdGVyKSAoP1x7IC4gYWZ0ZXIpICg/XH0gLiBiZWZvcmUpKSkKKyAgICAoc2V0 cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbiAjJ2pzLXRzLS1zeW50YXgtcHJv cGVydGl6ZSkKIAogICAgIDs7IFRyZWUtc2l0dGVyIHNldHVwLgogICAgICh0cmVlc2l0LXBh cnNlci1jcmVhdGUgJ2phdmFzY3JpcHQpCkBAIC0zODY0LDYgKzM4NjUsMjkgQEAganMtdHMt bW9kZQogICAgIChhZGQtdG8tbGlzdCAnYXV0by1tb2RlLWFsaXN0CiAgICAgICAgICAgICAg ICAgICcoIlxcKFxcLmpzW214XVxcfFxcLmhhclxcKVxcJyIgLiBqcy10cy1tb2RlKSkpKQog CisoZGVmdmFyIGpzLXRzLS1zLXAtcXVlcnkKKyAgKHdoZW4gKHRyZWVzaXQtYXZhaWxhYmxl LXApCisgICAgKHRyZWVzaXQtcXVlcnktY29tcGlsZSAnamF2YXNjcmlwdAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgJygoKHJlZ2V4IHBhdHRlcm46IChyZWdleF9wYXR0ZXJuKSBA cmVnZXhwKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh2YXJpYWJsZV9kZWNs YXJhdG9yIHZhbHVlOiAoanN4X2VsZW1lbnQpIEBqc3gpKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoKGFzc2lnbm1lbnRfZXhwcmVzc2lvbiByaWdodDogKGpzeF9lbGVtZW50 KSBAanN4KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChyZXR1cm5fc3RhdGVt ZW50IChqc3hfZWxlbWVudCkgQGpzeCkpKSkpKQorCisoZGVmdW4ganMtdHMtLXN5bnRheC1w cm9wZXJ0aXplIChiZWcgZW5kKQorICAobGV0ICgoY2FwdHVyZXMgKHRyZWVzaXQtcXVlcnkt Y2FwdHVyZSAnamF2YXNjcmlwdCBqcy10cy0tcy1wLXF1ZXJ5IGJlZyBlbmQpKSkKKyAgICAo cGNhc2UtZG9saXN0IChgKCxuYW1lIC4gLG5vZGUpIGNhcHR1cmVzKQorICAgICAgKGxldCog KChucyAodHJlZXNpdC1ub2RlLXN0YXJ0IG5vZGUpKQorICAgICAgICAgICAgIChuZSAodHJl ZXNpdC1ub2RlLWVuZCBub2RlKSkKKyAgICAgICAgICAgICAoc3ludGF4IChwY2FzZS1leGhh dXN0aXZlIG5hbWUKKyAgICAgICAgICAgICAgICAgICAgICAgKCdyZWdleHAKKyAgICAgICAg ICAgICAgICAgICAgICAgIChjbC1kZWNmIG5zKQorICAgICAgICAgICAgICAgICAgICAgICAg KGNsLWluY2YgbmUpCisgICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nLXRvLXN5bnRh eCAiXCIvIikpCisgICAgICAgICAgICAgICAgICAgICAgICgnanN4CisgICAgICAgICAgICAg ICAgICAgICAgICAoc3RyaW5nLXRvLXN5bnRheCAifCIpKSkpKQorICAgICAgICAocHV0LXRl eHQtcHJvcGVydHkgbnMgKDErIG5zKSAnc3ludGF4LXRhYmxlIHN5bnRheCkKKyAgICAgICAg KHB1dC10ZXh0LXByb3BlcnR5ICgxLSBuZSkgbmUgJ3N5bnRheC10YWJsZSBzeW50YXgpKSkp KQorCiA7OzsjIyNhdXRvbG9hZAogKGRlZmluZS1kZXJpdmVkLW1vZGUganMtanNvbi1tb2Rl IGpzLW1vZGUgIkpTT04iCiAgIChzZXRxLWxvY2FsIGpzLWVuYWJsZWQtZnJhbWV3b3JrcyBu aWwpCg== --------------XW08LNuRbxFN1IMT504okNIq--