From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 13 03:33:57 2023 Received: (at submit) by debbugs.gnu.org; 13 Dec 2023 08:33:57 +0000 Received: from localhost ([127.0.0.1]:58165 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDKgm-0003wT-So for submit@debbugs.gnu.org; Wed, 13 Dec 2023 03:33:57 -0500 Received: from lists.gnu.org ([2001:470:142::17]:32890) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDKgj-0003w9-F7 for submit@debbugs.gnu.org; Wed, 13 Dec 2023 03:33:55 -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 ) id 1rDKgN-0004Nl-TT for bug-gnu-emacs@gnu.org; Wed, 13 Dec 2023 03:33:31 -0500 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 1rDKgL-0008UK-Nv for bug-gnu-emacs@gnu.org; Wed, 13 Dec 2023 03:33:31 -0500 Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-1eb39505ba4so3972602fac.0 for ; Wed, 13 Dec 2023 00:33:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702456408; x=1703061208; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Ha+acjWpv7RSZMTRZrAlXmW+WftexhsCBkNyp0fnHMw=; b=XU4W6UhzR4Db7W9kkPrgqUgIl3/7dnQxJxV3sM7ovc4Bc9gE7FV8Tw/x0QaaXv+Orl pPy2sv1gmUs7kXn639tQoqg8xc4h2WJK8IN1z0aJBcc9NS9QPhpHjF6yBYRpxVexM6oo CvlbWx5H9d5w3MOj3kTgy8AkKuwU03SX3aLPNhatXQsBEiBXKDrkl+8TejkEVOR+Fls+ jooVxkptbvr7vjbeG8/NxLl+u69mGS31ICTbwXU2vIcfjW5nhQxwSfo3u0mSgc7K10Z5 NIwJf9f8yOKbzT5Y7FHGBYzmT2Sq98Exg0Y4FhX8+YtTPHobX4b7I0BUykkp3lnFBmxb c80g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702456408; x=1703061208; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Ha+acjWpv7RSZMTRZrAlXmW+WftexhsCBkNyp0fnHMw=; b=Bw66zz4A3jdWJsCmB3EBivSi1cfU0TK7uNQoAXGIIt3oUHOk1//JinV2DXLG8Thsws S8jf/uUUfx8cgWdr55NKoDpshVYV8ZWrbblz2oZ3a21D1+bSJf+3hZhGrtqoAsVAtpmO DBw3U53eq+uXeu0VWhpQCBLcMX1FgIXSN9KH4nE88WX8UfQECJrYGynaIRN0vSWAt/H+ Qk1W3A5JTiZewls+HGZZbmtz65cjVwyIBBo5BKWdVu3lBTcxC9R6TWT/fVxb8kIO63I3 k0KF4hXJhFjJ7Ghv8XQWlVYcxiigw75KbPbSGUhHtTpth3qY8BOwbhssM39sIfH3wis3 +zSA== X-Gm-Message-State: AOJu0Yx1Zu2NG/Zk+t5E8Mc+O0063O6f/L9NITGYyjHGHLPgUWp/Lk08 PyDcdzhjHHPbJjdCwbpQ5tmtGzOHvXn/pMtEa2qM6JJYI7qjEMRa X-Google-Smtp-Source: AGHT+IFJ8hxcImc47bb4tBoj7Ad5Z21aQnEDSDaEj7wjRpLkbiWkF54K648Ub/+NIed4rPXJXGZ6dc7YwG77XL1PaIs= X-Received: by 2002:a05:6870:cb8b:b0:1f0:d96:8d9c with SMTP id ov11-20020a056870cb8b00b001f00d968d9cmr10623557oab.9.1702456407677; Wed, 13 Dec 2023 00:33:27 -0800 (PST) MIME-Version: 1.0 From: Noah Peart Date: Wed, 13 Dec 2023 00:33:16 -0800 Message-ID: Subject: [PATCH] Add font-locking for assignments in typescript-ts-mode To: bug-gnu-emacs@gnu.org Content-Type: multipart/mixed; boundary="0000000000006d1e3e060c6005af" 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, 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@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --0000000000006d1e3e060c6005af Content-Type: multipart/alternative; boundary="0000000000006d1e3d060c6005ad" --0000000000006d1e3d060c6005ad Content-Type: text/plain; charset="UTF-8" Tags: patch This patch adds fontification for the left-hand side of assignments in typescript-ts-mode. The object and/or property being assigned to is fontified with `font-lock-variable-name-face` and/or `font-lock-property-name-face`, while any other identifiers/properties on the left-hand side used in index expressions are fontified with `font-lock-variable-use-face`/`font-lock-property-use-face`. For example, fontification is added in `typescript-ts-mode` for identifiers in statements like the following: arr[obj.x * obj.x] = 1; //^ font-lock-variable-name-face // ^ font-lock-variable-use-face // ^ font-lock-property-use-face obj.x.y = 0; //^ font-lock-variable-name-face // ^ font-lock-property-name-face // ^ font-lock-property-name-face ++mat[x][arr[0]]; // ^ font-lock-variable-name-face // ^ font-lock-variable-use-face 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-12 built on noah-X580VD Repository revision: 75fd7550ed6cede6c9e8224f1f2d62637c43fdd4 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' --0000000000006d1e3d060c6005ad Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Tags: patch


This patch adds fontification for t= he left-hand side of assignments in
typescript-ts-mode.

The objec= t and/or property being assigned to is fontified with
`font-lock-variabl= e-name-face` and/or `font-lock-property-name-face`,
while any other iden= tifiers/properties on the left-hand side used in
index expressions are f= ontified with
`font-lock-variable-use-face`/`font-lock-property-use-face= `.

For example, fontification is added in `typescript-ts-mode` foridentifiers in statements like the following:

=C2=A0 =C2=A0 arr[ob= j.x * obj.x] =3D 1;
=C2=A0 =C2=A0 //^ font-lock-variable-name-face
= =C2=A0 =C2=A0 //=C2=A0 =C2=A0 ^ font-lock-variable-use-face
=C2=A0 =C2= =A0 // =C2=A0 =C2=A0 =C2=A0^ font-lock-property-use-face
=C2=A0 =C2=A0 o= bj.x.y =3D 0;
=C2=A0 =C2=A0 //^ font-lock-variable-name-face
=C2=A0 = =C2=A0 // =C2=A0^ font-lock-property-name-face
=C2=A0 =C2=A0 // =C2=A0 = =C2=A0^ font-lock-property-name-face
=C2=A0 =C2=A0 ++mat[x][arr[0]];
= =C2=A0 =C2=A0 // ^ font-lock-variable-name-face
=C2=A0 =C2=A0 // =C2=A0 = =C2=A0 =C2=A0 =C2=A0^ font-lock-variable-use-face

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-12 built on noah-X580VD
Repository revi= sion: 75fd7550ed6cede6c9e8224f1f2d62637c43fdd4
Repository branch: master=
Windowing system distributor 'The X.Org Foundation', version 11= .0.12101004
System Description: Ubuntu 22.04.3 LTS

Configured usi= ng:
=C2=A0'configure --prefix=3D/usr/local --with-modules --with-tre= e-sitter
--with-threads --with-x-toolkit=3Dgtk3 --with-xwidgets --with-g= nutls
--with-json --with-mailutils --with-jpeg --with-png --with-rsvg--with-tiff --with-xml2 --with-xpm --with-imagemagick CC=3Dgcc-12
CXX= =3Dgcc-12'
--0000000000006d1e3d060c6005ad-- --0000000000006d1e3e060c6005af Content-Type: text/x-patch; charset="US-ASCII"; name="typescript-ts-fontify-assignments.patch" Content-Disposition: attachment; filename="typescript-ts-fontify-assignments.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lq3ijgyp0 RnJvbSAwYjhhNGFlNjZkMWRkY2MyODZjZjFiN2E1NGZiODI4OTRkY2IwYjlkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBXZWQsIDEzIERlYyAyMDIzIDAwOjEwOjE5IC0wODAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IGZvbnQtbG9ja2luZyBmb3IgYXNzaWdubWVudHMgaW4gdHlwZXNjcmlwdC10cy1tb2RlCgoqIGxp c3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS5lbAoodHlwZXNjcmlwdC10cy1tb2RlLS1m b250LWxvY2stc2V0dGluZ3MpOiBBZGQgZm9udC1sb2NraW5nIGZvcgpsZWZ0LWhhbmQgc2lkZSBv ZiBhc3NpZ25tZW50cy4KKHR5cGVzY3JpcHQtdHMtbW9kZS0tZm9udGlmeS1hc3NpZ25tZW50LWxo cyk6IE5ldyBmdW5jdGlvbiB0bwpmb250aWZ5IHR5cGVzY3JpcHQtdHMtbW9kZSBhc3NpZ25tZW50 cy4KKHR5cGVzY3JpcHQtdHMtbW9kZS0tYXNzaWdubWVudC1saHMtcXVlcnkpOiBBZGQgdHJlZS1z aXR0ZXIgcXVlcnkKdG8gY2FwdHVyZSBhc3NpZ25tZW50IG5vZGVzIGZvciBmb250LWxvY2tpbmcu CiogdGVzdC9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUtdGVzdHMuZWwKKHR5cGVz Y3JpcHQtdHMtbW9kZS10ZXN0LWZvbnQtbG9jayk6IE5ldyB0ZXN0IGZvciBmb250LWxvY2tpbmcg aW4KdHlwZXNjcmlwdC10cy1tb2RlLgoqIHRlc3QvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10 cy1tb2RlLXJlc291cmNlcy9mb250LWxvY2sudHM6Ck5ldyBmaWxlIHdpdGggZm9udC1sb2NrIHRl c3RzIGZvciB0eXBlc2NyaXB0LXRzLW1vZGUuCi0tLQogbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlw dC10cy1tb2RlLmVsICAgICAgICAgIHwgNTEgKysrKysrKysrKysrKysrKysrLQogLi4uL3R5cGVz Y3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvZm9udC1sb2NrLnRzIHwgNTAgKysrKysrKysrKysrKysr KysrCiAuLi4vcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS10ZXN0cy5lbCAgICAgfCAgNiAr KysKIDMgZmlsZXMgY2hhbmdlZCwgMTA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNy ZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS1y ZXNvdXJjZXMvZm9udC1sb2NrLnRzCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvdHlwZXNj cmlwdC10cy1tb2RlLmVsIGIvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2RlLmVsCmlu ZGV4IDdmMGI3MjM2MzAxLi44YzMzNzBkZGM5MyAxMDA2NDQKLS0tIGEvbGlzcC9wcm9nbW9kZXMv dHlwZXNjcmlwdC10cy1tb2RlLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMt bW9kZS5lbApAQCAtMTk5LDYgKzE5OSwzOCBAQCB0c3gtdHMtbW9kZS0tZm9udC1sb2NrLWNvbXBh dGliaWxpdHktYmIxZjk3YgogCSAgICAgIFsobmVzdGVkX2lkZW50aWZpZXIgKGlkZW50aWZpZXIp KSAoaWRlbnRpZmllcildCiAJICAgICAgQHR5cGVzY3JpcHQtdHMtanN4LXRhZy1mYWNlKSkpKSkK IAorKGRlZnZhciB0eXBlc2NyaXB0LXRzLW1vZGUtLWFzc2lnbm1lbnQtbGhzLXF1ZXJ5CisgICh3 aGVuICh0cmVlc2l0LWF2YWlsYWJsZS1wKQorICAgICh0cmVlc2l0LXF1ZXJ5LWNvbXBpbGUKKyAg ICAgJ3R5cGVzY3JpcHQKKyAgICAgJygoc3Vic2NyaXB0X2V4cHJlc3Npb24gb2JqZWN0OiAoaWRl bnRpZmllcikgQGlkKQorICAgICAgIChzdWJzY3JpcHRfZXhwcmVzc2lvbiBpbmRleDogKGlkZW50 aWZpZXIpIEBpbmRleCkKKyAgICAgICAobWVtYmVyX2V4cHJlc3Npb24gb2JqZWN0OiAoaWRlbnRp ZmllcikgQGlkKQorICAgICAgIChtZW1iZXJfZXhwcmVzc2lvbiBwcm9wZXJ0eTogKHByb3BlcnR5 X2lkZW50aWZpZXIpIEBwcm9wZXJ0eSkpKSkKKyAgIlF1ZXJ5IHRoYXQgY2FwdHVyZXMgb2JqZWN0 LCBpbmRleCwgYW5kIHByb3BlcnR5IGlkZW50aWZpZXJzLiIpCisKKyhkZWZ1biB0eXBlc2NyaXB0 LXRzLW1vZGUtLWZvbnRpZnktYXNzaWdubWVudC1saHMgKG5vZGUgb3ZlcnJpZGUgc3RhcnQgZW5k ICZyZXN0IF8pCisgICJGb250aWZ5IHRoZSBsaHMgTk9ERSBvZiBhbiBhc3NpZ25tZW50X2V4cHJl c3Npb24uCitGb3IgT1ZFUlJJREUsIFNUQVJULCBFTkQsIHNlZSBgdHJlZXNpdC1mb250LWxvY2st cnVsZXMnLiIKKyAgOzsgd2hlbiBJTkRFWCA+IDEsIGFwcGx5IGAtKnVzZS1mYWNlJyB0byBpZGVu dGlmaWVycy9wcm9wZXJ0aWVzCisgIChsZXQgKChpbmRleCAwKSkKKyAgICAocGNhc2UtZG9saXN0 IChgKCxuYW1lIC4gLG5vZGUpCisgICAgICAgICAgICAgICAgICAgKHRyZWVzaXQtcXVlcnktY2Fw dHVyZQorICAgICAgICAgICAgICAgICAgICBub2RlIHR5cGVzY3JpcHQtdHMtbW9kZS0tYXNzaWdu bWVudC1saHMtcXVlcnkpKQorICAgICAgKHRyZWVzaXQtZm9udGlmeS13aXRoLW92ZXJyaWRlCisg ICAgICAgKHRyZWVzaXQtbm9kZS1zdGFydCBub2RlKSAodHJlZXNpdC1ub2RlLWVuZCBub2RlKQor ICAgICAgIChwY2FzZSBuYW1lCisgICAgICAgICAoJ2lkIChwcm9nMSAoaWYgKHplcm9wIGluZGV4 KQorICAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNl CisgICAgICAgICAgICAgICAgICAgICAgICdmb250LWxvY2stdmFyaWFibGUtdXNlLWZhY2UpCisg ICAgICAgICAgICAgICAgKGNsLWluY2YgaW5kZXgpKSkKKyAgICAgICAgICgncHJvcGVydHkgKGlm ICg9IDEgaW5kZXgpCisgICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1sb2NrLXByb3BlcnR5 LW5hbWUtZmFjZQorICAgICAgICAgICAgICAgICAgICAgICdmb250LWxvY2stcHJvcGVydHktdXNl LWZhY2UpKQorICAgICAgICAgKCdpbmRleCAnZm9udC1sb2NrLXZhcmlhYmxlLXVzZS1mYWNlKQor ICAgICAgICAgKF8gbmlsKSkKKyAgICAgICBvdmVycmlkZSBzdGFydCBlbmQpKSkpCisKIChkZWZ1 biB0eXBlc2NyaXB0LXRzLW1vZGUtLWZvbnQtbG9jay1zZXR0aW5ncyAobGFuZ3VhZ2UpCiAgICJU cmVlLXNpdHRlciBmb250LWxvY2sgc2V0dGluZ3MuCiBBcmd1bWVudCBMQU5HVUFHRSBpcyBlaXRo ZXIgYHR5cGVzY3JpcHQnIG9yIGB0c3gnLiIKQEAgLTMxNCw2ICszNDYsOCBAQCB0eXBlc2NyaXB0 LXRzLW1vZGUtLWZvbnQtbG9jay1zZXR0aW5ncwogICAgOmZlYXR1cmUgJ3Byb3BlcnR5CiAgICBg KChwcm9wZXJ0eV9zaWduYXR1cmUKICAgICAgIG5hbWU6IChwcm9wZXJ0eV9pZGVudGlmaWVyKSBA Zm9udC1sb2NrLXByb3BlcnR5LW5hbWUtZmFjZSkKKyAgICAgKGluZGV4X3NpZ25hdHVyZQorICAg ICAgbmFtZTogKGlkZW50aWZpZXIpIEBmb250LWxvY2stcHJvcGVydHktbmFtZS1mYWNlKQogICAg ICAocHVibGljX2ZpZWxkX2RlZmluaXRpb24KICAgICAgIG5hbWU6IChwcm9wZXJ0eV9pZGVudGlm aWVyKSBAZm9udC1sb2NrLXByb3BlcnR5LW5hbWUtZmFjZSkKIApAQCAtMzUzLDYgKzM4NywyMSBA QCB0eXBlc2NyaXB0LXRzLW1vZGUtLWZvbnQtbG9jay1zZXR0aW5ncwogICAgKGFwcGVuZCAodHN4 LXRzLW1vZGUtLWZvbnQtbG9jay1jb21wYXRpYmlsaXR5LWJiMWY5N2IgbGFuZ3VhZ2UpCiAJICAg YCgoanN4X2F0dHJpYnV0ZSAocHJvcGVydHlfaWRlbnRpZmllcikgQHR5cGVzY3JpcHQtdHMtanN4 LWF0dHJpYnV0ZS1mYWNlKSkpCiAKKyAgIDpsYW5ndWFnZSBsYW5ndWFnZQorICAgOmZlYXR1cmUg J2Fzc2lnbm1lbnQKKyAgICcoKGFzc2lnbm1lbnRfZXhwcmVzc2lvbgorICAgICAgbGVmdDogKGlk ZW50aWZpZXIpIEBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlKQorICAgICAoYXNzaWdubWVu dF9leHByZXNzaW9uCisgICAgICBsZWZ0OiAoXykgQHR5cGVzY3JpcHQtdHMtbW9kZS0tZm9udGlm eS1hc3NpZ25tZW50LWxocykKKyAgICAgKGF1Z21lbnRlZF9hc3NpZ25tZW50X2V4cHJlc3Npb24K KyAgICAgIGxlZnQ6IChpZGVudGlmaWVyKSBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkK KyAgICAgKGF1Z21lbnRlZF9hc3NpZ25tZW50X2V4cHJlc3Npb24KKyAgICAgIGxlZnQ6IChfKSBA dHlwZXNjcmlwdC10cy1tb2RlLS1mb250aWZ5LWFzc2lnbm1lbnQtbGhzKQorICAgICAodXBkYXRl X2V4cHJlc3Npb24KKyAgICAgIGFyZ3VtZW50OiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay12YXJp YWJsZS1uYW1lLWZhY2UpCisgICAgICh1cGRhdGVfZXhwcmVzc2lvbgorICAgICAgYXJndW1lbnQ6 IChfKSBAdHlwZXNjcmlwdC10cy1tb2RlLS1mb250aWZ5LWFzc2lnbm1lbnQtbGhzKSkKKwogICAg Omxhbmd1YWdlIGxhbmd1YWdlCiAgICA6ZmVhdHVyZSAnbnVtYmVyCiAgICBgKChudW1iZXIpIEBm b250LWxvY2stbnVtYmVyLWZhY2UKQEAgLTQ4Niw3ICs1MzUsNyBAQCB0eXBlc2NyaXB0LXRzLW1v ZGUKICAgICAgICAgICAgICAgICAnKChjb21tZW50IGRlY2xhcmF0aW9uKQogICAgICAgICAgICAg ICAgICAgKGtleXdvcmQgc3RyaW5nIGVzY2FwZS1zZXF1ZW5jZSkKICAgICAgICAgICAgICAgICAg IChjb25zdGFudCBleHByZXNzaW9uIGlkZW50aWZpZXIgbnVtYmVyIHBhdHRlcm4gcHJvcGVydHkp Ci0gICAgICAgICAgICAgICAgICAob3BlcmF0b3IgZnVuY3Rpb24gYnJhY2tldCBkZWxpbWl0ZXIp KSkKKyAgICAgICAgICAgICAgICAgIChhc3NpZ25tZW50IG9wZXJhdG9yIGZ1bmN0aW9uIGJyYWNr ZXQgZGVsaW1pdGVyKSkpCiAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rp b24gIyd0eXBlc2NyaXB0LXRzLS1zeW50YXgtcHJvcGVydGl6ZSkKIAogICAgICh0cmVlc2l0LW1h am9yLW1vZGUtc2V0dXApKSkKZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvdHlwZXNj cmlwdC10cy1tb2RlLXJlc291cmNlcy9mb250LWxvY2sudHMgYi90ZXN0L2xpc3AvcHJvZ21vZGVz L3R5cGVzY3JpcHQtdHMtbW9kZS1yZXNvdXJjZXMvZm9udC1sb2NrLnRzCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5mOTY4MDg4NmM1NwotLS0gL2Rldi9udWxsCisrKyBi L3Rlc3QvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10cy1tb2RlLXJlc291cmNlcy9mb250LWxv Y2sudHMKQEAgLTAsMCArMSw1MCBAQAorLy8gVGVzdCBhc3NpZ25tZW50IGxlZnQtaGFuZCBzaWRl IGZvbnRpZmljYXRpb24KK2NvbnN0IGFzc2lnbm1lbnQgPSAoKTogbnVtYmVyID0+IHsKKyAgLy8g IF4gZm9udC1sb2NrLWZ1bmN0aW9uLW5hbWUtZmFjZQorICAvLyAgICAgICAgICAgICAgICAgICBe IGZvbnQtbG9jay10eXBlLWZhY2UKKyAgbGV0IGZvbyA9IDA7CisgIC8vICAgXiBmb250LWxvY2st dmFyaWFibGUtbmFtZS1mYWNlCisgIGZvbyArPSAxOworICAvL14gZm9udC1sb2NrLXZhcmlhYmxl LW5hbWUtZmFjZQorICBsZXQgb2JqOiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9OworICAvLyAg XiBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlCisgIC8vICAgICAgICAgIF4gZm9udC1sb2Nr LXByb3BlcnR5LW5hbWUtZmFjZQorICAvLyAgICAgICAgICAgICAgICBeIGZvbnQtbG9jay10eXBl LWZhY2UKKyAgLy8gICAgICAgICAgICAgICAgICAgICAgICBeIGZvbnQtbG9jay10eXBlLWZhY2UK KyAgb2JqLngueSA9IDA7CisgIC8vXiBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlCisgIC8v ICBeIGZvbnQtbG9jay1wcm9wZXJ0eS1uYW1lLWZhY2UKKyAgLy8gICAgXiBmb250LWxvY2stcHJv cGVydHktbmFtZS1mYWNlCisgICsrb2JqLngrKzsKKyAgLy8gXiBmb250LWxvY2stdmFyaWFibGUt bmFtZS1mYWNlCisgIC8vICAgIF4gZm9udC1sb2NrLXByb3BlcnR5LW5hbWUtZmFjZQorICBhcnJb b2JqLnggKiBvYmoueF0gPSAxOworICAvL14gZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZQor ICAvLyAgIF4gZm9udC1sb2NrLXZhcmlhYmxlLXVzZS1mYWNlCisgIC8vICAgICAgXiBmb250LWxv Y2stcHJvcGVydHktdXNlLWZhY2UKKyAgbGV0IHggPSAwLCB5ID0gMCwgYXJyID0gWzAsMF0sIG1h dCA9IFtbMF0sWzBdXTsKKyAgWyB4LCB5XSA9IFt5LCB4XTsKKyAgLy9eIGZvbnQtbG9jay12YXJp YWJsZS1uYW1lLWZhY2UKKyAgLy8gICBeIGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UKKyAg aWYgKCh4ID0gMSkpIHgrKzsKKyAgLy8gICBeIGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UK KyAgLy8gICAgICAgICAgIF4gZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZQorICBhcnJbYXJy WzBdXSA9IDI7CisgIC8vXiBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlCisgIC8vICAgXiBm b250LWxvY2stdmFyaWFibGUtdXNlLWZhY2UKKyAgLy8gICAgICBeIGZvbnQtbG9jay1udW1iZXIt ZmFjZQorICArK21hdFt4XVthcnJbMF1dOworICAvLyBeIGZvbnQtbG9jay12YXJpYWJsZS1uYW1l LWZhY2UKKyAgLy8gICAgICAgIF4gZm9udC1sb2NrLXZhcmlhYmxlLXVzZS1mYWNlCisgIG1hdFtt YXRbYXJyW2FycltvYmoueF1dXVt4XV1bYXJyWzBdXSA9IDI7CisgIC8vXiBmb250LWxvY2stdmFy aWFibGUtbmFtZS1mYWNlCisgIC8vICAgXiBmb250LWxvY2stdmFyaWFibGUtdXNlLWZhY2UKKyAg Ly8gICAgICAgXiBmb250LWxvY2stdmFyaWFibGUtdXNlLWZhY2UKKyAgLy8gICAgICAgICAgIF4g Zm9udC1sb2NrLXZhcmlhYmxlLXVzZS1mYWNlCisgIC8vICAgICAgICAgICAgICAgXiBmb250LWxv Y2stdmFyaWFibGUtdXNlLWZhY2UKKyAgLy8gICAgICAgICAgICAgICAgICBeIGZvbnQtbG9jay1w cm9wZXJ0eS11c2UtZmFjZQorICAvLyAgICAgICAgICAgICAgICAgICAgICAgXiBmb250LWxvY2st dmFyaWFibGUtdXNlLWZhY2UKKyAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgXiBmb250 LWxvY2stdmFyaWFibGUtdXNlLWZhY2UKKyAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXiBmb250LWxvY2stbnVtYmVyLWZhY2UKKyAgcmV0dXJuIDA7Cit9OwpkaWZmIC0tZ2l0IGEv dGVzdC9saXNwL3Byb2dtb2Rlcy90eXBlc2NyaXB0LXRzLW1vZGUtdGVzdHMuZWwgYi90ZXN0L2xp c3AvcHJvZ21vZGVzL3R5cGVzY3JpcHQtdHMtbW9kZS10ZXN0cy5lbAppbmRleCAxMjZmNWUzMjk4 Zi4uZDQyNmM0ZTUwZWIgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlw dC10cy1tb2RlLXRlc3RzLmVsCisrKyBiL3Rlc3QvbGlzcC9wcm9nbW9kZXMvdHlwZXNjcmlwdC10 cy1tb2RlLXRlc3RzLmVsCkBAIC0yNyw1ICsyNywxMSBAQCB0eXBlc2NyaXB0LXRzLW1vZGUtdGVz dC1pbmRlbnRhdGlvbgogICAoc2tpcC11bmxlc3MgKHRyZWVzaXQtcmVhZHktcCAndHlwZXNjcmlw dCkpCiAgIChlcnQtdGVzdC1lcnRzLWZpbGUgKGVydC1yZXNvdXJjZS1maWxlICJpbmRlbnQuZXJ0 cyIpKSkKIAorKGVydC1kZWZ0ZXN0IHR5cGVzY3JpcHQtdHMtbW9kZS10ZXN0LWZvbnQtbG9jayAo KQorICAoc2tpcC11bmxlc3MgKHRyZWVzaXQtcmVhZHktcCAndHlwZXNjcmlwdCkpCisgIChsZXQg KCh0cmVlc2l0LWZvbnQtbG9jay1sZXZlbCA0KSkKKyAgICAoZXJ0LWZvbnQtbG9jay10ZXN0LWZp bGUKKyAgICAgKGVydC1yZXNvdXJjZS1maWxlICJmb250LWxvY2sudHMiKSAndHlwZXNjcmlwdC10 cy1tb2RlKSkpCisKIChwcm92aWRlICd0eXBlc2NyaXB0LXRzLW1vZGUtdGVzdHMpCiA7OzsgdHlw ZXNjcmlwdC10cy1tb2RlLXRlc3RzLmVsIGVuZHMgaGVyZQotLSAKMi4zNC4xCgo= --0000000000006d1e3e060c6005af-- From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 13 13:31:32 2023 Received: (at 67809) by debbugs.gnu.org; 13 Dec 2023 18:31:32 +0000 Received: from localhost ([127.0.0.1]:59667 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDU16-0006Xr-5W for submit@debbugs.gnu.org; Wed, 13 Dec 2023 13:31:32 -0500 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:57509) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDU14-0006Xe-Is for 67809@debbugs.gnu.org; Wed, 13 Dec 2023 13:31:31 -0500 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 4F5105C03CB; Wed, 13 Dec 2023 13:31:09 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Wed, 13 Dec 2023 13:31:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=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=fm3; t=1702492269; x=1702578669; bh=rQn4yD4YkBHWYXUDVM3oD7HVwAg8cIawznzNOQ0wnvE=; b= PH3dCTOzJcrWzushHsIVK5dpGQbPynkdFT7slV/U5lA3WueHjpAOqdr2EKk4gvDh 7Q44pSVUyZGawSD5fUFZ648V/noXBXX9eUM4VcU+dP8DLZ0YGB3JiSoKomkki6N2 n0sGgzWhtVdHzyU8kSofqagj/ioVBiwZQO7nO21rLZ7JH8O0ZxuUjNdeIewej4fB EzxnarA1rKSUGXtKGNYmyOgLPdS/NTQZYtzI8ga3GKpcVIySAoNP74i4o0dEsXBn ijcSll9PU8A5WWpqeAixTefk+2FDzxvM+U+g8eH/MAzjOMqEF0HH4a8sFRZQ0QZp +4WmIfDw6GXtAPEnisGuYA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=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=fm1; t=1702492269; x= 1702578669; bh=rQn4yD4YkBHWYXUDVM3oD7HVwAg8cIawznzNOQ0wnvE=; b=C Ojc4uxD4tXBm0UyD4Xe9z21NC+5MB3SIwwIJf0ZgvwiicDfIyrVWhButgz+7M8UT a8vxRTwSqJUg2DYD4PCoT5Euydplw4qz0zOd5DHqKpVcMDjsprAU9X3kg6LP1Qll wiKM7UPjyMtBZImR8wPvlu6+o2PEueyyoimFketSO6/TYGJn9JyAaHX/5nL3Ii9n 88JPwz+0WhaoqpFmehXnyh6EPlHMW98IhqdH8Z/Bxhf9/m75e8LbUtkWBD7yyiZY EknfmVN0ntEu//LCL0LRi/CakOi/4lpkInNdcmNnLH0FgvieK+UfzoYQCr2qS9aH 6/wd3YutFym6bFPna6SBQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrudeljedgheefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvfhfhjggtgfesthekredttdefjeenucfhrhhomhepffhmihht rhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrghtth gvrhhnpeefjeekvedvfeelfedufeevgeetvdevkeelvddtueetteefudefgfduieekffei leenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegumh hithhrhiesghhuthhovhdruggvvh X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Dec 2023 13:31:07 -0500 (EST) Message-ID: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> Date: Wed, 13 Dec 2023 20:31:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode Content-Language: en-US To: Noah Peart , 67809@debbugs.gnu.org References: From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 67809 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.9 (---) Hi! On 13/12/2023 10:33, Noah Peart wrote: >     arr[obj.x * obj.x] = 1; >     //^ font-lock-variable-name-face >     //    ^ font-lock-variable-use-face >     //      ^ font-lock-property-use-face >     obj.x.y = 0; >     //^ font-lock-variable-name-face >     //  ^ font-lock-property-name-face >     //    ^ font-lock-property-name-face >     ++mat[x][arr[0]]; >     // ^ font-lock-variable-name-face >     //        ^ font-lock-variable-use-face I think in all of these cases font-lock-variable-name-face should not be used, since arr, and obj, and mat, are all introduced (declared) at a different place. font-lock-variable-use-face is more appropriate. From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 13 14:27:32 2023 Received: (at 67809) by debbugs.gnu.org; 13 Dec 2023 19:27:32 +0000 Received: from localhost ([127.0.0.1]:59698 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDUtH-00080Z-Lg for submit@debbugs.gnu.org; Wed, 13 Dec 2023 14:27:32 -0500 Received: from mail-oi1-x231.google.com ([2607:f8b0:4864:20::231]:49573) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDUtF-00080K-GD for 67809@debbugs.gnu.org; Wed, 13 Dec 2023 14:27:30 -0500 Received: by mail-oi1-x231.google.com with SMTP id 5614622812f47-3b9db318839so5224392b6e.3 for <67809@debbugs.gnu.org>; Wed, 13 Dec 2023 11:27:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702495627; x=1703100427; 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=aL39ggbZf4vr8x9dZU4P+7Vjhaoooxg4pZujpIcKta8=; b=SnW0UB14/XYmgmaAv9XdpeZJsBZ1Bg/9TVRAhpD3Z/SbrjT66nFUWlldimGNkqyM0K M5SukPtUVgFFsY0VsqOyfezAD32t5EEHV5MglJnbVn5FrRysraBawzF7OXslzHuV7fUH XLKKNYlGd3BnEiHrRXX83DGOg6CM6l23WlUYmb9T1IEBPKImDBQ88h04ymHf4L3nf3Ah T56bLuOrc66vTpm5dCcxQkW0EmTcbehOaOdwkmkVhBljau/h6u/5JQNMDvnRrIAsIBx+ cMdMZ9Q0hOlLDB09R45gr/vpI6mV7IJhZV+dibF3dIuxDXZ1a9ElGSSpuMcxyeeeswnq pmNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702495627; x=1703100427; 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=aL39ggbZf4vr8x9dZU4P+7Vjhaoooxg4pZujpIcKta8=; b=nU0Wg/XFplzMQ68CRK4WVaZXZY+pTV65KApgS/Elkje62YwtcduA1JaulS2ma1zVoH Rlz/NE3/AOGmF3bEZamn3Ll+U38MAy7n+642RGmDS4kXUdytefDH+nF1GMcDeEUwnKMK Yh/J28Z4LUKHYH3GjTjakQ8zzGJ4zIQxAhSi8rWMRnewuU+mITyzW3uaP28TqGRCnVli /dIwjmoRFhELrCHNGHIXyju7kS/5dZdg5oGyht8exYqEk0vj0UbBRXW54E0T4BSuf5OE +4QHQR5cfTrF6aPwovKg2uyuTfjelDzTXO6iMP1VQV/9/pES8dnI6EtlcUn99rLsGkeF GGAQ== X-Gm-Message-State: AOJu0YyMy5Ta56WbjRHEXDvIbjpAVvyeTM312j2wDrX9/yDL7K27jbfr ljYSLQa61TnkXybfE+opVRBW3EvLJGeQ0snwntk= X-Google-Smtp-Source: AGHT+IEYCz95S07l+xg1oncY0Ht7KjEECDADupfKDOeuRHgeSIWiznntgdfb9ihr3hceEYVBsC7ePFy4UFyOCMIMHok= X-Received: by 2002:a05:6870:8dc8:b0:1fb:75a:c420 with SMTP id lq8-20020a0568708dc800b001fb075ac420mr9225708oab.73.1702495627229; Wed, 13 Dec 2023 11:27:07 -0800 (PST) MIME-Version: 1.0 References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> In-Reply-To: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> From: Noah Peart Date: Wed, 13 Dec 2023 11:26:55 -0800 Message-ID: Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode To: Dmitry Gutov Content-Type: multipart/alternative; boundary="00000000000017bc75060c69275f" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67809 Cc: 67809@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000017bc75060c69275f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I thought `font-lock-variable-name-face` was standard for assignments? It's what is applied in ruby-ts-mode, python-ts-mode, and c-ts-mode for example. I like it personally, cause it allows for visual distinction between l/r values. Either way, I think the patch can be simplified to only highlight the variable being assigned and not any others on the left-hand side. It would be simpler and more customizable to highlight any remaining variables in a `variable` feature in a following rule. I noticed another issue where I forgot to handle `this.var =3D ` cases as well. I could take another stab at it unless there's no interest in this feature. On Wed, Dec 13, 2023 at 10:31=E2=80=AFAM Dmitry Gutov wr= ote: > Hi! > > On 13/12/2023 10:33, Noah Peart wrote: > > arr[obj.x * obj.x] =3D 1; > > //^ font-lock-variable-name-face > > // ^ font-lock-variable-use-face > > // ^ font-lock-property-use-face > > obj.x.y =3D 0; > > //^ font-lock-variable-name-face > > // ^ font-lock-property-name-face > > // ^ font-lock-property-name-face > > ++mat[x][arr[0]]; > > // ^ font-lock-variable-name-face > > // ^ font-lock-variable-use-face > > I think in all of these cases font-lock-variable-name-face should not be > used, since arr, and obj, and mat, are all introduced (declared) at a > different place. > > font-lock-variable-use-face is more appropriate. > --00000000000017bc75060c69275f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I thought `font-lock-variable-name-face` was standard for = assignments?=C2=A0 It's what is applied
in ruby-ts-mode, python-ts-= mode, and c-ts-mode for example.=C2=A0 I like it personally, cause
it allows for visual distinction between l/r values.

=
Either way, I think the patch can be simplified to only highlight the = variable being assigned
and not any others on the left-hand side.= =C2=A0 It would be simpler and more customizable
to highlight any= remaining variables in a `variable` feature in a following rule.

I noticed another issue where I forgot to handle `this.var = =3D ` cases as well. I could take
another stab at it unless there= 's no interest in this feature.

On Wed, Dec 13, 2023 at 10:31=E2= =80=AFAM Dmitry Gutov <dmitry@gutov.= dev> wrote:
Hi!

On 13/12/2023 10:33, Noah Peart wrote:
>=C2=A0 =C2=A0 =C2=A0 arr[obj.x * obj.x] =3D 1;
>=C2=A0 =C2=A0 =C2=A0 //^ font-lock-variable-name-face
>=C2=A0 =C2=A0 =C2=A0 //=C2=A0 =C2=A0 ^ font-lock-variable-use-face
>=C2=A0 =C2=A0 =C2=A0 // =C2=A0 =C2=A0 =C2=A0^ font-lock-property-use-fa= ce
>=C2=A0 =C2=A0 =C2=A0 obj.x.y =3D 0;
>=C2=A0 =C2=A0 =C2=A0 //^ font-lock-variable-name-face
>=C2=A0 =C2=A0 =C2=A0 // =C2=A0^ font-lock-property-name-face
>=C2=A0 =C2=A0 =C2=A0 // =C2=A0 =C2=A0^ font-lock-property-name-face
>=C2=A0 =C2=A0 =C2=A0 ++mat[x][arr[0]];
>=C2=A0 =C2=A0 =C2=A0 // ^ font-lock-variable-name-face
>=C2=A0 =C2=A0 =C2=A0 // =C2=A0 =C2=A0 =C2=A0 =C2=A0^ font-lock-variable= -use-face

I think in all of these cases font-lock-variable-name-face should not be used, since arr, and obj, and mat, are all introduced (declared) at a
different place.

font-lock-variable-use-face is more appropriate.
--00000000000017bc75060c69275f-- From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 13 15:46:24 2023 Received: (at 67809) by debbugs.gnu.org; 13 Dec 2023 20:46:24 +0000 Received: from localhost ([127.0.0.1]:59756 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDW7b-0001d2-49 for submit@debbugs.gnu.org; Wed, 13 Dec 2023 15:46:24 -0500 Received: from out2-smtp.messagingengine.com ([66.111.4.26]:52159) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rDW7V-0001cT-11 for 67809@debbugs.gnu.org; Wed, 13 Dec 2023 15:46:21 -0500 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 7FDBC5C03A9; Wed, 13 Dec 2023 15:45:55 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Wed, 13 Dec 2023 15:45:55 -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=fm3; t=1702500355; x=1702586755; bh=RIZ9Y69GUrz4utjDR2cF48DMuT6HeOnH72acfRkKzZI=; b= SZs2EKRyfmG5ttcM21xMiYR83MsAlXU4qlerzqVUlUS0moxHzUhpIjLk1lTAhRK+ 83gveKkGlIA8a/AN1cedol6b26SUcJLk5wHlfokgCHz2WdlWgK7Mws54gxBmxlKT 8iyJgUqEeI4QFaG4Xf7m3lyKdCY2E3FGlS+I1Z4rlGwr9ukTwtLU9jnjqg2ZDq2p ym9CSAxGTiO9TUsG6SOJ5njtlOSQ1YtQCJn6U+4SJq3Dd2RGCgNcR0w5IlHfw+E+ 18oh+zRUTQBIjC6PaGMzkU9byjvr/xHFKcW89frCeA8ijSOfNFnb9OGTjchLUeqI Me23b731llMh5dwro5txkw== 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=fm1; t=1702500355; x= 1702586755; bh=RIZ9Y69GUrz4utjDR2cF48DMuT6HeOnH72acfRkKzZI=; b=w ic2YdQlCWdzZatm7IAZ5om8Enb/Q7VTV5RkGn/QgD1dr3OrTTsZghg0jt3E+ZH94 mzCTLxrk7TSDvV4f9v7pL6BBTPEaZ7/DPO4B3V+a79RQhEwrCYIFHW2aq+2ZR2mv Nedj5IOgQXd8iL1cWD9mM2v6qA2hQbMsEyCLU2lYdhX4qV5HF2docfgJzIxa9S2g r5MuRddcwzQSOGzLPIVE8iFn7Kkd8r1rs8bzaviYx3XA20Xhf5F2pjh8wbAFHNm4 Uab6gvlFaatfseI19ZA4HxtNzvgWUBBwW37HcDtGYs5lnvwL3I5wvPS3OAnzHb5o Vj67Ymyg41q60p7e+5m8A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrudeljedgkedtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhephfffheeljeffgeffueeghfekkedtfffgheejvdegjeettdduheeufffggfef jeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Dec 2023 15:45:54 -0500 (EST) Message-ID: Date: Wed, 13 Dec 2023 22:45:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode Content-Language: en-US To: Noah Peart References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 67809 Cc: 67809@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.9 (---) On 13/12/2023 21:26, Noah Peart wrote: > I thought `font-lock-variable-name-face` was standard for assignments? > It's what is applied > in ruby-ts-mode, python-ts-mode, and c-ts-mode for example.  I like it > personally, cause > it allows for visual distinction between l/r values. ruby and python's parsers cannot distinguish between assignments that introduce a new variable (thus working as an implicit declaration) and those that reassign an existing variable. Hopefully, we'll be able to improve that in the future. TypeScript, however, has explicit variable declarations. > Either way, I think the patch can be simplified to only highlight the > variable being assigned > and not any others on the left-hand side.  It would be simpler and more > customizable > to highlight any remaining variables in a `variable` feature in a > following rule. I'm also not sure I agree that, for example, 'arr' is the variable being assigned to in the first example. Its value (the reference) doesn't change. But it's totally fine to add a 'variable' feature to typescript-ts-mode's font-lock to apply font-lock-variable-use-face to it. > I noticed another issue where I forgot to handle `this.var = ` cases as > well. I could take > another stab at it unless there's no interest in this feature. > > On Wed, Dec 13, 2023 at 10:31 AM Dmitry Gutov > wrote: > > Hi! > > On 13/12/2023 10:33, Noah Peart wrote: > >      arr[obj.x * obj.x] = 1; > >      //^ font-lock-variable-name-face > >      //    ^ font-lock-variable-use-face > >      //      ^ font-lock-property-use-face > >      obj.x.y = 0; > >      //^ font-lock-variable-name-face > >      //  ^ font-lock-property-name-face > >      //    ^ font-lock-property-name-face > >      ++mat[x][arr[0]]; > >      // ^ font-lock-variable-name-face > >      //        ^ font-lock-variable-use-face > > I think in all of these cases font-lock-variable-name-face should > not be > used, since arr, and obj, and mat, are all introduced (declared) at a > different place. > > font-lock-variable-use-face is more appropriate. > From debbugs-submit-bounces@debbugs.gnu.org Fri Dec 22 10:00:26 2023 Received: (at control) by debbugs.gnu.org; 22 Dec 2023 15:00:26 +0000 Received: from localhost ([127.0.0.1]:47571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGh0k-0005G2-0P for submit@debbugs.gnu.org; Fri, 22 Dec 2023 10:00:26 -0500 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]:57476) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGh0i-0004zz-Av for control@debbugs.gnu.org; Fri, 22 Dec 2023 10:00:24 -0500 Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-54c7744a93fso2247400a12.2 for ; Fri, 22 Dec 2023 07:00:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703257214; x=1703862014; darn=debbugs.gnu.org; h=to:subject:message-id:date:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=ZACMMIroACww58/TjpJiNNjb3go+bmeTW8X2OFt4PN8=; b=MNpckIYAfp6W+SGuCsD4Nn+L+Frg4WjmV8syCb5Pj5F2vYsTTulR9xDGTSUjW/xF3u herto7//51yDwkV/Eg27dkLFBcj/gPBgI28cf68s11Ri8RkiZ/kVKvL9p2EJGd/PKrvn on7hgSxgve0i+lI/rfY/Q1uPu2RtU0iUbxQovixa11t8DOAWx/x4PFfv9qEfBXqVToSJ cEuQmcshdwuxzVUpRTvmG2DK2Os3DkFS1lxw6kH3Omoa6DdR7L6ucuL4C6UnA6buE2+y 47nY9O8xyKagQwCK5I5cduhyzsGqbnwVkfQETsRrj8FnsJ8vO/ricDoeUJa/VQuyh0/d U5Tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703257214; x=1703862014; h=to:subject:message-id:date:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ZACMMIroACww58/TjpJiNNjb3go+bmeTW8X2OFt4PN8=; b=H8/D4JfRYCKCBF5Syn1gyTrHt6wFtTR1/7AezKa9IqUF1lb9HafQUgMOioOC5fQ1td HGOC+rtYBgJCafZjyUN1E8uo8xcKOzNfFfdTiNNQTPnDbNqoIzlHVyAjo3N7zzA6w5sp RGsUfxZtscGv0NRiYWcmF89nHRDx1RMHWw7zRSFYBxUbhFC7/jNPAgmJ4ShVuirL2d1c yPjtZINXFjg2ttaC+GsuDrkgJaMXwXbzN7zaoHw/lExAo7acVNYOkKC9AiicONPojZIx 0P2MyBqNPJn4uKxgGvCWC2iunueM3rg8D3LlzQ3q27NXNFKsL1aU7+il7BwFRf8HGjzE pang== X-Gm-Message-State: AOJu0YxL+TN9p+lg+ClijWnzMLBofOAAViO9FzpNR/gwLFeC0g8cTW/7 iEieXk99FKoP2l3V6C3aX+TNN3o63P/EDMlElVqI+Ds//T2kwQ== X-Google-Smtp-Source: AGHT+IEqxRBPidH4gbbxOwxpxtr+IS/kOCjEeN69pJHrrKkEiKpobLE8xin+Ogm1aiOOYgcH35zm0QGdh043ikYhxtI= X-Received: by 2002:a50:871a:0:b0:553:738a:655f with SMTP id i26-20020a50871a000000b00553738a655fmr829474edb.9.1703257213789; Fri, 22 Dec 2023 07:00:13 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Fri, 22 Dec 2023 07:00:13 -0800 From: Stefan Kangas MIME-Version: 1.0 Date: Fri, 22 Dec 2023 07:00:13 -0800 Message-ID: Subject: control message for bug #67809 To: control@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) severity 67809 wishlist quit From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 23 03:45:44 2023 Received: (at 67809) by debbugs.gnu.org; 23 Dec 2023 08:45:44 +0000 Received: from localhost ([127.0.0.1]:48503 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGxdf-00014a-FB for submit@debbugs.gnu.org; Sat, 23 Dec 2023 03:45:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:47664) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGxdc-0000oL-8J for 67809@debbugs.gnu.org; Sat, 23 Dec 2023 03:45:41 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rGxdR-0000fr-M3; Sat, 23 Dec 2023 03:45:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=sXW9W/eQfi96+flLxq8uRRs7Gy7EWWJTfCZWk+Ka3Aw=; b=QRbvy5fG5iOSeJvpiiry V/2AL1i0ChQfN6AcitNc9EL1gA3AV+Byj14m2Sfngfc3sMkCy/k4fvGlIVWzAwf2T42CyEvCZq0sp ildi34EMgJTxhShkVCyU55rSQcC89UaXFW33qRkkSYvlzQb2p8T1gEYOEJBF4N14CfwTbGR/KCfIm qo9kNSv3+j7Ee9fUnKk8vEAFywumpK+O7WWX/kjkvfdwO2bp3NSEpjoH8h5hbd5afIJoSukT63guC npqnPk1xtzrFpD8FA238x4CMa4hfWFSPE7UcQ0L9WzBJdCiOMN+26gy198BKiShth6LIbuM9oSEIl NtVG20TYgcF6yA==; Date: Sat, 23 Dec 2023 10:45:19 +0200 Message-Id: <83zfy1e28w.fsf@gnu.org> From: Eli Zaretskii To: Dmitry Gutov In-Reply-To: (message from Dmitry Gutov on Wed, 13 Dec 2023 22:45:51 +0200) Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67809 Cc: noah.v.peart@gmail.com, 67809@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Cc: 67809@debbugs.gnu.org > Date: Wed, 13 Dec 2023 22:45:51 +0200 > From: Dmitry Gutov > > On 13/12/2023 21:26, Noah Peart wrote: > > I thought `font-lock-variable-name-face` was standard for assignments? > > It's what is applied > > in ruby-ts-mode, python-ts-mode, and c-ts-mode for example.  I like it > > personally, cause > > it allows for visual distinction between l/r values. > > ruby and python's parsers cannot distinguish between assignments that > introduce a new variable (thus working as an implicit declaration) and > those that reassign an existing variable. Hopefully, we'll be able to > improve that in the future. > > TypeScript, however, has explicit variable declarations. > > > Either way, I think the patch can be simplified to only highlight the > > variable being assigned > > and not any others on the left-hand side.  It would be simpler and more > > customizable > > to highlight any remaining variables in a `variable` feature in a > > following rule. > > I'm also not sure I agree that, for example, 'arr' is the variable being > assigned to in the first example. Its value (the reference) doesn't change. > > But it's totally fine to add a 'variable' feature to > typescript-ts-mode's font-lock to apply font-lock-variable-use-face to it. What is the conclusion here? Do we have an agreed-upon patch to install? Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 23 05:39:43 2023 Received: (at 67809) by debbugs.gnu.org; 23 Dec 2023 10:39:43 +0000 Received: from localhost ([127.0.0.1]:48679 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGzPy-0006ew-Pp for submit@debbugs.gnu.org; Sat, 23 Dec 2023 05:39:43 -0500 Received: from mail-ot1-x334.google.com ([2607:f8b0:4864:20::334]:56467) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGzPv-0006ei-Gg for 67809@debbugs.gnu.org; Sat, 23 Dec 2023 05:39:41 -0500 Received: by mail-ot1-x334.google.com with SMTP id 46e09a7af769-6dbd6a9b8d0so210933a34.0 for <67809@debbugs.gnu.org>; Sat, 23 Dec 2023 02:39:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703327968; x=1703932768; 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=KVAtZrTfNDYTpANMEs7rn8YA16UKyVUWY1QWo4jN+rw=; b=ba6kpbTEPhM75F+PsfBlDQnAoCgMBax27pgcyA0mB7mGi4uALCGIwgQjKEk/xIotGF Pepl3ulRYDeBpmVXexbhvfMHaYi9Dqdj1bN8+85Rep7Sr2gCQQvcomvokyFqpMO3mxtt fSJ2na9IpK4VAIocVVSmBMtuXXfJXYTtiqe/tUWPNAOA6CmYKZXan2fJEoONUWXY6aTT hGfM45ldbtDz052iSeDIs3MWQjotlAOE89v2mAGqjH5oHfdTKscqGeLoWY3pn4Z9KYNJ hTSNSwzSz89rGqYW2ydPQAJ16x24ElEHpERT6/RdKTCu6q1vb9gma9Q72mJXYi1/+HAH ha0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703327968; x=1703932768; 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=KVAtZrTfNDYTpANMEs7rn8YA16UKyVUWY1QWo4jN+rw=; b=wHmmO27AQ0rnH+5OsA5B224BgHCAAFtQL0nLdHs62HbVXdMxwRSi4UAj4fBsVt0ynU f5S9zKtSoAx/r5QzdCzc9vfbCB/VMC+Mua4EmqE/1RP3eD2TIKmkHC6o14FcLXgxW/to wdNiCsKQy/fJAa8tKL9Ku9tAUMYNXIUXvNuUt/c/cFzPH8z0u6aaGVgyRSUUu8FS6qce x5AFjNAVzocWSkrpfCoquV9b/5Xg2nNPL4tFw80IfnPRqIlBBdyiY1dnWpbA8VBt02+J nrWtila6fsDBrhJlOVhqW5fYgySiGxiGcyek5kxkGkzRrPQZxvceStPyiksS60BQxNak yFEg== X-Gm-Message-State: AOJu0YyFDm3rCRFGOV8FRoH+dsv0zUc2d7x42f9zZVOdmKBfNG+zC0gL SRIyZRT5aMPTfIPiwBRj0IE8ST/xPjQPeYQ7w5w= X-Google-Smtp-Source: AGHT+IFsoTL7nDMJzCiywgk0qNdiWH023LQ9WYlhxOk1JVNiYwAZ9sArj5SUKUZejkBI39upLQ+n3QnGXDhsSHL6EQ0= X-Received: by 2002:a05:6871:810:b0:203:f156:3e94 with SMTP id q16-20020a056871081000b00203f1563e94mr3578061oap.92.1703327968394; Sat, 23 Dec 2023 02:39:28 -0800 (PST) MIME-Version: 1.0 References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> <83zfy1e28w.fsf@gnu.org> In-Reply-To: <83zfy1e28w.fsf@gnu.org> From: Noah Peart Date: Sat, 23 Dec 2023 05:39:17 -0500 Message-ID: Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode To: Eli Zaretskii Content-Type: multipart/alternative; boundary="0000000000007e0175060d2af2e1" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67809 Cc: Dmitry Gutov , 67809@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000007e0175060d2af2e1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I think this should be closed for now. On Sat, Dec 23, 2023 at 3:45=E2=80=AFAM Eli Zaretskii wrote: > > Cc: 67809@debbugs.gnu.org > > Date: Wed, 13 Dec 2023 22:45:51 +0200 > > From: Dmitry Gutov > > > > On 13/12/2023 21:26, Noah Peart wrote: > > > I thought `font-lock-variable-name-face` was standard for > assignments? > > > It's what is applied > > > in ruby-ts-mode, python-ts-mode, and c-ts-mode for example. I like i= t > > > personally, cause > > > it allows for visual distinction between l/r values. > > > > ruby and python's parsers cannot distinguish between assignments that > > introduce a new variable (thus working as an implicit declaration) and > > those that reassign an existing variable. Hopefully, we'll be able to > > improve that in the future. > > > > TypeScript, however, has explicit variable declarations. > > > > > Either way, I think the patch can be simplified to only highlight the > > > variable being assigned > > > and not any others on the left-hand side. It would be simpler and > more > > > customizable > > > to highlight any remaining variables in a `variable` feature in a > > > following rule. > > > > I'm also not sure I agree that, for example, 'arr' is the variable bein= g > > assigned to in the first example. Its value (the reference) doesn't > change. > > > > But it's totally fine to add a 'variable' feature to > > typescript-ts-mode's font-lock to apply font-lock-variable-use-face to > it. > > What is the conclusion here? Do we have an agreed-upon patch to > install? > > Thanks. > --0000000000007e0175060d2af2e1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I think this should be closed for now.

On Sat, Dec 23, 2023= at 3:45=E2=80=AFAM Eli Zaretskii <eliz@= gnu.org> wrote:
> Cc: = 67809@debbugs.gnu.org
> Date: Wed, 13 Dec 2023 22:45:51 +0200
> From: Dmitry Gutov <dmitry@gutov.dev>
>
> On 13/12/2023 21:26, Noah Peart wrote:
> > I thought `font-lock-variable-name-face` was standard for assignm= ents?=C2=A0
> > It's what is applied
> > in ruby-ts-mode, python-ts-mode, and c-ts-mode for example.=C2=A0= I like it
> > personally, cause
> > it allows for visual distinction between l/r values.
>
> ruby and python's parsers cannot distinguish between assignments t= hat
> introduce a new variable (thus working as an implicit declaration) and=
> those that reassign an existing variable. Hopefully, we'll be able= to
> improve that in the future.
>
> TypeScript, however, has explicit variable declarations.
>
> > Either way, I think the patch can be simplified to only highlight= the
> > variable being assigned
> > and not any others on the left-hand side.=C2=A0 It would be simpl= er and more
> > customizable
> > to highlight any remaining variables in a `variable` feature in a=
> > following rule.
>
> I'm also not sure I agree that, for example, 'arr' is the = variable being
> assigned to in the first example. Its value (the reference) doesn'= t change.
>
> But it's totally fine to add a 'variable' feature to
> typescript-ts-mode's font-lock to apply font-lock-variable-use-fac= e to it.

What is the conclusion here?=C2=A0 Do we have an agreed-upon patch to
install?

Thanks.
--0000000000007e0175060d2af2e1-- From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 23 06:22:10 2023 Received: (at 67809) by debbugs.gnu.org; 23 Dec 2023 11:22:10 +0000 Received: from localhost ([127.0.0.1]:48726 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rH053-0007CT-N4 for submit@debbugs.gnu.org; Sat, 23 Dec 2023 06:22:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44400) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rH052-0007CC-Ac for 67809@debbugs.gnu.org; Sat, 23 Dec 2023 06:22:08 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rH04r-000894-Ja; Sat, 23 Dec 2023 06:21:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=d8IPbU90GppYAg01K7rUr3V59/msNgr7G6FP5NTiz+c=; b=iBu1xXjkmedT 6scZAocRb2U/RNALLN2CLn9mCsIm5o+a87kXvJqlpYLoTakY9SXfqSZL6TwAgFulrcQwiJCTaCwSh rlxiNjZSr6AjFpJ8dDJ6NOLag07x8lUEFA/Vw/rlaAVBoqSceOzR8DtNptI/1WHyk4TJ7mWrvh9S/ lY2Be5iMonLXYM9yHqoSOKQMuogPlJV19AqCO60ZN3PEzK4g6Va3oC/m2v+cS1MBEbCGv5Ufonbu9 lvFeziJZPArpx+FEZaW5PxJvE5K5dANClpEhLYbz2tVBfBUUCfLsqMKVR6O5mCpwPhwm8OujcU+64 +q/DcEaQUIKzlZrrnS4XEQ==; Date: Sat, 23 Dec 2023 13:21:49 +0200 Message-Id: <83wmt5cgfm.fsf@gnu.org> From: Eli Zaretskii To: Noah Peart In-Reply-To: (message from Noah Peart on Sat, 23 Dec 2023 05:39:17 -0500) Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> <83zfy1e28w.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67809 Cc: dmitry@gutov.dev, 67809@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Noah Peart > Date: Sat, 23 Dec 2023 05:39:17 -0500 > Cc: Dmitry Gutov , 67809@debbugs.gnu.org > > I think this should be closed for now. If Dmitry agrees, it's fine by me. From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 23 15:57:34 2023 Received: (at 67809-done) by debbugs.gnu.org; 23 Dec 2023 20:57:34 +0000 Received: from localhost ([127.0.0.1]:51317 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rH93t-0004OX-QU for submit@debbugs.gnu.org; Sat, 23 Dec 2023 15:57:34 -0500 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:44595) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rH93s-0004OK-3T for 67809-done@debbugs.gnu.org; Sat, 23 Dec 2023 15:57:32 -0500 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 7BFF95C017C; Sat, 23 Dec 2023 15:57:21 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sat, 23 Dec 2023 15:57:21 -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=1703365041; x=1703451441; bh=5SZBXEJnE+W8n3vcgZOdY6HpjepGCBG4ROg96ZO+WhY=; b= VQrIPXI42q3+jpNVQgItW2abegIOhPJ4oc7kbKsn/Vn75NI2aQrT8XOXCh7DVzri reM8v5WYC7/DCCAo+T4qSTMk3am20ok4OqX/dsB5BsrR50gZcQTmRWosOqPCWVil GGNlf00TcerYjBSCOazsMT9Q7WaeruWtPIN4m3GUWKSoeaGwCFQrUGuwvDiLN2MA 3tE4G6WEbUVG6+KCHiCfNzXHSoMtQCRujsPoLmxvkjImOgxUCnNm8wTnFEZMtoj5 H+xmGtxIk6jhvkApYzBNdxu7x7LNnF/tFNZjUFWr8kI7notlQDaIz7Pa3vgGos/e KmlGTKhmX4Z5gep+3TcDgg== 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=1703365041; x= 1703451441; bh=5SZBXEJnE+W8n3vcgZOdY6HpjepGCBG4ROg96ZO+WhY=; b=b aTCZI2tYa5K/ExtkUNTkrCpr842kAJCZxnEQkG0p5AdGP9Xkl5x+D5fS5/17c1YD cAmB9MLeTTX5Yeagzb7As4LjBTZIbsU6t/IqEVawvy6zRk8BnBtkClbUxnjlblDy S3unewYRP4V3EM6gg0ep0Cj1fNZkpYTuUbnlkyPhsMqxAuVmFHe0gRyHr5n2iMri j2xXzsymRpxTZ5iq/zLbEkqNiyLyfy6aFrWNbn3hjo6q92n3F/IDYWNUnMvRj1cY URLKaIzBRneK1dia0ODW2oL80u/Vs2hiwychGo/hl9HzREGPOGS92G3hbVCssaLb GOw5NWma9WBvZhJyWEOKg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdduledgudeghecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhm ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg htthgvrhhnpeetudeljeegheetgfehgeejkeeuhedvveeikeeufedtvddtveefhfdvveeg udejheenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe gumhhithhrhiesghhuthhovhdruggvvh X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 23 Dec 2023 15:57:19 -0500 (EST) Message-ID: Date: Sat, 23 Dec 2023 22:57:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#67809: [PATCH] Add font-locking for assignments in typescript-ts-mode Content-Language: en-US To: Eli Zaretskii , Noah Peart References: <2aa7f05f-7cfa-9a1a-4a75-88c8df53c221@gutov.dev> <83zfy1e28w.fsf@gnu.org> <83wmt5cgfm.fsf@gnu.org> From: Dmitry Gutov In-Reply-To: <83wmt5cgfm.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 67809-done Cc: 67809-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 23/12/2023 13:21, Eli Zaretskii wrote: >> From: Noah Peart >> Date: Sat, 23 Dec 2023 05:39:17 -0500 >> Cc: Dmitry Gutov,67809@debbugs.gnu.org >> >> I think this should be closed for now. > If Dmitry agrees, it's fine by me. Closing. I'm sorry if this was a disappointing response. From unknown Thu Jun 19 16:24:28 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sun, 21 Jan 2024 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator