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#71209: [PATCH] Add font-locking for variables in go-ts-mode range clauses Date: Sun, 26 May 2024 05:41:37 -0700 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="00000000000069cead06195ab9f9" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1452"; mail-complaints-to="usenet@ciao.gmane.io" To: 71209@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun May 26 14:43:21 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 1sBDDb-0000Cw-RY for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 26 May 2024 14:43:19 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sBDDE-0000Mi-Gs; Sun, 26 May 2024 08:42:56 -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 1sBDDC-0000LV-II for bug-gnu-emacs@gnu.org; Sun, 26 May 2024 08:42:54 -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 1sBDDC-0004iL-9Z for bug-gnu-emacs@gnu.org; Sun, 26 May 2024 08:42:54 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sBDDK-0000q8-3E for bug-gnu-emacs@gnu.org; Sun, 26 May 2024 08:43: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: Sun, 26 May 2024 12:43:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 71209 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.17167273263151 (code B ref -1); Sun, 26 May 2024 12:43:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 26 May 2024 12:42:06 +0000 Original-Received: from localhost ([127.0.0.1]:38559 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sBDCP-0000ol-Fy for submit@debbugs.gnu.org; Sun, 26 May 2024 08:42:05 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:58364) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sBDCM-0000oc-Cv for submit@debbugs.gnu.org; Sun, 26 May 2024 08:42:03 -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 1sBDCD-0008Pp-W7 for bug-gnu-emacs@gnu.org; Sun, 26 May 2024 08:41:54 -0400 Original-Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sBDCC-0004b2-7J for bug-gnu-emacs@gnu.org; Sun, 26 May 2024 08:41:53 -0400 Original-Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-24ca03ad307so1386397fac.3 for ; Sun, 26 May 2024 05:41:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716727309; x=1717332109; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=+WlLBGcgI/UkQrJb9hrktJOzR9r3qgx+AmdM9cEqZnQ=; b=RfvuYh1XtxYj63fwxyVXp1NiDtaYfkZ2pohR2hEVRZaHldN/vJC9gRsXqvmQAjNK9z X3GSO6G10IPXteMhEFKxs4hDSdWmnhbbV+I0+entCFZbiRaLY+Xv6MG6xiYJFTuNU/SC hba1YgaJ8+UxvEdsgDL5Gaarr3CLzei3V2ft5LsG/el4OXmJVdgUkjFTrCElUkjUS2ox sAMntibtEKzL1NP1G0yeCDCLmSdgAesC14hq0P7XasLC8gzEdII1CC+Lw2ogmtpxULjf jcw0eBvpaCWNrvZUENO0j388R4BaliUJ4HdKCS6KjR77Xj/eRpc6CnAxUu1fzWyefZjN pa9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716727309; x=1717332109; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=+WlLBGcgI/UkQrJb9hrktJOzR9r3qgx+AmdM9cEqZnQ=; b=lFqkrPP50bSCSDPa78tQXvpLcU0e8BGTip82t7LeU87Ad1JtTHOIAuwz1QH2jue4aX w8vT8ZRu+7cfE+ShRj2QM0XTZQpcE6h93faUG+ibjuVk6nkIMxHuKFkFGHRcjqvJuesK RH6OACe97cQ2D75D7Es7j6wDqdCt0nPAwkNztQDP5HLZXiEy8aLg5Sc0Esk1miZazI2W qOxF8pam66iNs1v65GJRmx2h95EmKQEMaP4xNjzrY5/E+HpvOBc2JLGcX//aLNkniRJc A8/S1I+kqCYTeWN13lRARlUofNZUBG1BC2xxkBOiQYblTR7XRTedcQYF79RUioVYCGqy ZkYQ== X-Gm-Message-State: AOJu0YyYaBFirrQeeLk+Ef+D4LMavxUObLGFqoyxZhgS+wXW+VgbWaKL JRCK8gnjk/4STSymJYWsTc71n0KYNqZgVKFfvEao/h8Ly4MK50ssctW5WQAjLr2IbSoSr4rHjuP BFM3FI4cawprlBwDoBkkxag/kwI6ZJYBPVOHa+w== X-Google-Smtp-Source: AGHT+IFyXfhfa3cRlHA1Fx0FNvljCB+SnGPWyUzRbL/NZoYFBBH074FOBfJBNcLO4f1VdhFxri8YxZjC4gYeSNz6W0I= X-Received: by 2002:a05:6870:718f:b0:24d:c894:81f6 with SMTP id 586e51a60fabf-24dc8948c59mr5469057fac.33.1716727308710; Sun, 26 May 2024 05:41:48 -0700 (PDT) Received-SPF: pass client-ip=2001:4860:4864:20::30; envelope-from=noah.v.peart@gmail.com; helo=mail-oa1-x30.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-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:285958 Archived-At: --00000000000069cead06195ab9f9 Content-Type: multipart/alternative; boundary="00000000000069ceab06195ab9f7" --00000000000069ceab06195ab9f7 Content-Type: text/plain; charset="UTF-8" Tags: patch Adds font-locking rule in go-ts-mode to give variables in range clauses font-lock-variable-name-face (in feature 'definition). For example, the following font-locking is added: for idx, val := range arr {} // ^ font-lock-variable-name-face // ^ font-lock-variable-name-face The patch also adds a test case. 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-05-21 built on noah-X580VD Repository revision: 63d914e377f7cc37056de2503bfbeea831875037 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' --00000000000069ceab06195ab9f7 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Tags: patch

Adds font-locking rule in go-ts-mode to= give variables in range clauses
font-lock-variable-name-face (in featur= e 'definition).

For example, the following font-locking is added= :

for idx, val :=3D range arr {}
//=C2=A0 =C2=A0 =C2=A0^ font-loc= k-variable-name-face
//=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^ font-l= ock-variable-name-face

The patch also adds a test case.


I= n GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.33,= cairo version 1.16.0) of 2024-05-21 built on noah-X580VD
Repository rev= ision: 63d914e377f7cc37056de2503bfbeea831875037
Repository branch: maste= r
Windowing system distributor 'The X.Org Foundation', version 1= 1.0.12101004
System Description: Ubuntu 22.04.4 LTS

Configured us= ing:
=C2=A0'configure --prefix=3D/usr/local --with-modules --with-tr= ee-sitter
--with-threads --with-x-toolkit=3Dgtk3 --with-xwidgets --with-= gnutls
--with-json --with-mailutils --with-jpeg --with-png --with-rsvg--with-tiff --with-xml2 --with-xpm --with-imagemagick CC=3Dgcc-12
CXX= =3Dgcc-12'
--00000000000069ceab06195ab9f7-- --00000000000069cead06195ab9f9 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-font-locking-for-variables-in-go-ts-mode-range-c.patch" Content-Disposition: attachment; filename="0001-Add-font-locking-for-variables-in-go-ts-mode-range-c.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lwnj2otl0 RnJvbSAxYjZiMmE3MDAxZmYwNzlkODFhZjdkNDJjN2VlOThlOGU3MzE4MzkwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFBlYXJ0IDxub2FoLnYucGVhcnRAZ21haWwuY29tPgpE YXRlOiBTdW4sIDI2IE1heSAyMDI0IDA1OjM0OjM0IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IGZvbnQtbG9ja2luZyBmb3IgdmFyaWFibGVzIGluIGdvLXRzLW1vZGUgcmFuZ2UgY2xhdXNlcwoK KiBsaXNwL3Byb2dtb2Rlcy9nby10cy1tb2RlLmVsIChnby10cy1tb2RlLS1mb250LWxvY2stc2V0 dGluZ3MpOgpBZGQgZm9udC1sb2NraW5nIHJ1bGUgZm9yIHZhcmlhYmxlIG5hbWVzIGluIHJhbmdl IGNsYXVzZXMuCiogdGVzdC9saXNwL3Byb2dtb2Rlcy9nby10cy1tb2RlLXRlc3RzLmVsIChnby10 cy10ZXN0LWZvbnQtbG9jayk6CkFkZCBmb250LWxvY2tpbmcgdGVzdCBmb3IgZ28tdHMtbW9kZS4K KiB0ZXN0L2xpc3AvcHJvZ21vZGVzL2dvLXRzLW1vZGUtcmVzb3VyY2VzL2ZvbnQtbG9jay5nbzog TmV3IGZpbGUKZm9yIGdvLXRzLW1vZGUgZm9udC1sb2NraW5nIHRlc3RzLgotLS0KIGxpc3AvcHJv Z21vZGVzL2dvLXRzLW1vZGUuZWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgNSArKysrLQog dGVzdC9saXNwL3Byb2dtb2Rlcy9nby10cy1tb2RlLXJlc291cmNlcy9mb250LWxvY2suZ28gfCA1 ICsrKysrCiB0ZXN0L2xpc3AvcHJvZ21vZGVzL2dvLXRzLW1vZGUtdGVzdHMuZWwgICAgICAgICAg ICAgICB8IDUgKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvbGlzcC9wcm9nbW9kZXMvZ28tdHMtbW9k ZS1yZXNvdXJjZXMvZm9udC1sb2NrLmdvCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvZ28t dHMtbW9kZS5lbCBiL2xpc3AvcHJvZ21vZGVzL2dvLXRzLW1vZGUuZWwKaW5kZXggYWVmMjI0YWIz ZmEuLjQzZjdlMDQyNTkwIDEwMDY0NAotLS0gYS9saXNwL3Byb2dtb2Rlcy9nby10cy1tb2RlLmVs CisrKyBiL2xpc3AvcHJvZ21vZGVzL2dvLXRzLW1vZGUuZWwKQEAgLTE4MCw3ICsxODAsMTAgQEAg Z28tdHMtbW9kZS0tZm9udC1sb2NrLXNldHRpbmdzCiAgICAgICAgICAgICAgKGlkZW50aWZpZXIp IEBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlCiAgICAgICAgICAgICAgKCIsIiAoaWRlbnRp ZmllcikgQGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UpKikpCiAgICAgICh2YXJfc3BlYyBu YW1lOiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UKLSAgICAgICAg ICAgICAgICgiLCIgbmFtZTogKGlkZW50aWZpZXIpIEBmb250LWxvY2stdmFyaWFibGUtbmFtZS1m YWNlKSopKQorICAgICAgICAgICAgICAgKCIsIiBuYW1lOiAoaWRlbnRpZmllcikgQGZvbnQtbG9j ay12YXJpYWJsZS1uYW1lLWZhY2UpKikKKyAgICAgKHJhbmdlX2NsYXVzZQorICAgICAgbGVmdDog KGV4cHJlc3Npb25fbGlzdAorICAgICAgICAgICAgIChpZGVudGlmaWVyKSBAZm9udC1sb2NrLXZh cmlhYmxlLW5hbWUtZmFjZSkpKQogCiAgICA6bGFuZ3VhZ2UgJ2dvCiAgICA6ZmVhdHVyZSAnZnVu Y3Rpb24KZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvZ28tdHMtbW9kZS1yZXNvdXJj ZXMvZm9udC1sb2NrLmdvIGIvdGVzdC9saXNwL3Byb2dtb2Rlcy9nby10cy1tb2RlLXJlc291cmNl cy9mb250LWxvY2suZ28KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjRl N2E4ZTE3MTBiCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdC9saXNwL3Byb2dtb2Rlcy9nby10cy1t b2RlLXJlc291cmNlcy9mb250LWxvY2suZ28KQEAgLTAsMCArMSw1IEBACitmb3IgaWR4LCB2YWwg Oj0gcmFuZ2UgYXJyIHt9CisvLyAgIF4gZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZQorLy8g ICAgICAgIF4gZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZQorZm9yIGlkeCA6PSAwOyBpZHgg PCBuOyBpZHgrKyB7fQorLy8gICBeIGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UKZGlmZiAt LWdpdCBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvZ28tdHMtbW9kZS10ZXN0cy5lbCBiL3Rlc3QvbGlz cC9wcm9nbW9kZXMvZ28tdHMtbW9kZS10ZXN0cy5lbAppbmRleCBmZDliNTdlODY5MS4uZjM2ZGJk ZTUxMDMgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvZ28tdHMtbW9kZS10ZXN0cy5l bAorKysgYi90ZXN0L2xpc3AvcHJvZ21vZGVzL2dvLXRzLW1vZGUtdGVzdHMuZWwKQEAgLTI3LDUg KzI3LDEwIEBAIGdvLXRzLW1vZGUtdGVzdC1pbmRlbnRhdGlvbgogICAoc2tpcC11bmxlc3MgKHRy ZWVzaXQtcmVhZHktcCAnZ28pKQogICAoZXJ0LXRlc3QtZXJ0cy1maWxlIChlcnQtcmVzb3VyY2Ut ZmlsZSAiaW5kZW50LmVydHMiKSkpCiAKKyhlcnQtZGVmdGVzdCBnby10cy10ZXN0LWZvbnQtbG9j ayAoKQorICAoc2tpcC11bmxlc3MgKHRyZWVzaXQtcmVhZHktcCAnZ28pKQorICAobGV0ICgodHJl ZXNpdC1mb250LWxvY2stbGV2ZWwgNCkpCisgICAgKGVydC1mb250LWxvY2stdGVzdC1maWxlIChl cnQtcmVzb3VyY2UtZmlsZSAiZm9udC1sb2NrLmdvIikgJ2dvLXRzLW1vZGUpKSkKKwogKHByb3Zp ZGUgJ2dvLXRzLW1vZGUtdGVzdHMpCiA7OzsgZ28tdHMtbW9kZS10ZXN0cy5lbCBlbmRzIGhlcmUK LS0gCjIuMzQuMQoK --00000000000069cead06195ab9f9--