Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 71776) by debbugs.gnu.org; 28 Jun 2024 05:51:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 28 01:51:44 2024 Received: from localhost ([127.0.0.1]:51374 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sN4WO-0000Qg-7r for submit <at> debbugs.gnu.org; Fri, 28 Jun 2024 01:51:44 -0400 Received: from fhigh6-smtp.messagingengine.com ([103.168.172.157]:51851) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1sN4WM-0000QN-9j for 71776 <at> debbugs.gnu.org; Fri, 28 Jun 2024 01:51:42 -0400 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailfhigh.nyi.internal (Postfix) with ESMTP id 1CA43114023F; Thu, 27 Jun 2024 20:50:14 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Thu, 27 Jun 2024 20:50:14 -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=1719535814; x=1719622214; bh=w8SAd9MI0gS/XVeTw1caZfOEwdJu5VZUDKuz1ZNg5/0=; b= hQWVzu71uHKRWzap883EItDnC/BgVAMFvVS4u4w59DLL1y3bjIaLUC7PStfcwrWN /DEwiw6vZyUYkbo5YAQy96xXTA6PUt8pAao0CPAqApb8oWPcpzvi2nnr7T6cC6q5 KAvY/zazfzsNUsP+MK+2jshdlxy2HGCOASVhlHZ1FIOlhD8ZzQGkk5kVrFMYkPOZ z5WhUKGfUpg7LamER98q8XNaGCmNjAxBGabafcbhjhEMLk5hIgjk4kA2STAaM6Vp pNVOlrOUOH8as+9RoFdFqg7ufmz2TpMwNtKN9FgnZPNpCIYuFZRZRD6nGMNuXwsK 3QpwRqhIAR2GVUp/2IY9YA== 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=1719535814; x= 1719622214; bh=w8SAd9MI0gS/XVeTw1caZfOEwdJu5VZUDKuz1ZNg5/0=; b=n g37FlOyEP/4pbeKSCSYjZkmmJJdIaCw+/531VypG3FPaRmE06T5hGT0xnSMKgz0G fGr5gI5MvhNksC6GiTb1uSiMEApwRSjhdRqz8/1b1CnF+Q9z/JixVaP08d8aiEGG R5iybU5+1W5CAx/KAkT6529tF9q+vCgX7hKH3fPbZlfQAeBkco9ZB5Wghfgw3buN g6/WAapcWWh1yvMErEkxJCrxiyX7C35VR5WG3t2TiT858hFWHfxyuxlGrFjb0qhs YkY5L4vaunLrMrkVFr4/5rgwQiMDZlZYbfbrlAaaKoHIKQy1n0cRNuGgTwwAXA1I dftgpjkk1RRZ42b8Mm8ag== X-ME-Sender: <xms:xQh-ZgoE0ZH0kWYDMrWVjPEFQl4rKfVdhRWp-ZBe91BDLI7cMbRZBQ> <xme:xQh-ZmrQzYzWju7NIW3Y4cny-SDuAtcF2qBfWVlH78-ONwVzA3xzEEmw6mlCuIxFC zFBM4lNRCCuZAXESwY> X-ME-Received: <xmr:xQh-ZlNR-eFnsw6-jrbmNZm4KvfAfdLowAHocPj7R2DtsrOGLXFfvobcJhYhxkm1GKr0> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddrtdehgdegtdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhmihht rhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrghtth gvrhhnpeetudeljeegheetgfehgeejkeeuhedvveeikeeufedtvddtveefhfdvveegudej heenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegumh hithhrhiesghhuthhovhdruggvvh X-ME-Proxy: <xmx:xQh-Zn6en22cl5GMc1oli-3lY1AbpIZsGEFAjOa77ceq1-LDxqHtJg> <xmx:xQh-Zv5zx7Fi9kjhgmVgG2M9-AUw1ZOAvvfMc-XQshpBjpVG1Z7Tbw> <xmx:xQh-ZngzMZePriuZlWRO5cZV1KaHWJ_--e9bt15MAxf11KQN5UIvIQ> <xmx:xQh-Zp5LbolzrJ8J22ykf7ukgDINIOLcKhJbgE22AU1-lUCpl8QZUQ> <xmx:xgh-Zi1w9pxLq_nSgvJ3gHTp8S9iRP57uOcQaYiiNPCWW9TGblbLrnzg> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 27 Jun 2024 20:50:12 -0400 (EDT) Message-ID: <beac41b3-42e6-47e8-8540-98c659cc075a@HIDDEN> Date: Fri, 28 Jun 2024 03:50:10 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#71776: 31.0.50; [PATCH] js-ts-mode: conforming use of font lock faces in jsdoc. To: Eli Zaretskii <eliz@HIDDEN>, Vincenzo Pupillo <v.pupillo@HIDDEN> References: <2796980.fDdHjke4Dd@HIDDEN> <86bk3m67kn.fsf@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <86bk3m67kn.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 71776 Cc: Damien Cassou <damien@HIDDEN>, 71776 <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 (-) Hi! On 27/06/2024 12:47, Eli Zaretskii wrote: >> From: Vincenzo Pupillo<v.pupillo@HIDDEN> >> Date: Tue, 25 Jun 2024 16:16:21 +0200 >> >> The use of font lock faces by jsdoc in js-ts-mode is different from that done in >> other major-modes such as java-mode or c++-mode. This patch makes them more similar. > Thanks. > > Dmitry, any comments? On which branch should we install this, if you > agree with the changes? It looks like an improvement (thanks!), and as a change to the feature added just recently, should go to emacs-30 - the second revision of the patch, naturally. Also Cc'ing Damien who did the original work.
bug-gnu-emacs@HIDDEN
:bug#71776
; Package emacs
.
Full text available.Received: (at 71776) by debbugs.gnu.org; 27 Jun 2024 20:31:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 27 16:31:56 2024 Received: from localhost ([127.0.0.1]:43471 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sMvme-0003oX-4U for submit <at> debbugs.gnu.org; Thu, 27 Jun 2024 16:31:56 -0400 Received: from mail-wr1-f45.google.com ([209.85.221.45]:56333) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <v.pupillo@HIDDEN>) id 1sMvmb-0003oL-V3 for 71776 <at> debbugs.gnu.org; Thu, 27 Jun 2024 16:31:54 -0400 Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-364a3d5d901so5526088f8f.0 for <71776 <at> debbugs.gnu.org>; Thu, 27 Jun 2024 13:31:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719520245; x=1720125045; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5VhPns0i4QnJsepnN+Zhnj1adpoFpFgtfqL364fjyE0=; b=eVtNEcEGWJNe7OxWIdVBNgk4VwcbTTnnxUKE5dLMPgPKXIn/AZzMjCPBwlwM94xqWq 03DZMBsV8CSgGBCAn2lK5Zw7C8TH/dtCwMDZpRtTKlP8B6AxC1D+owgUtgpPQm7oMFKU qjAr4hcVC568xHR0ZqNBx6lIAGkJFeCkh+ezRF101xQsLju6PGJ2UqfEZ6twKeIBUWkk uE1ddo81msiSmDaH/YXtE1DacZkwep9I4WHuyNez/2/JQGecq/FN/RE0L8riB0+sEmZ6 eEKTG5TO87knaWcttJAOuKR6Ogdgi4pYdyp3NVkf6s10FcZ3lFCzH94Bkg0Ga3DaxD+J y8zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719520245; x=1720125045; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5VhPns0i4QnJsepnN+Zhnj1adpoFpFgtfqL364fjyE0=; b=ukS3u/0g4XpFUjC4v+S9PDVC6MLv3KUwWcoJ4KVCO02P4kahjFOQtiji+29qmyKAoR cURTabk5uz0/6VgNnuJNnKAaR6tAkf7xP+X5ROHcClwH9qsyCfFUxFF/qOlfo2vYPpZJ p0ONZZZ4KnRIsWdfB9oBqoiueT/rOb3TuRBQ1dx4wL1cDog4SMig6y5htUt950wclLq5 wE3j7aJa4ade6iNXtQKZXixF60HiH/bFjB2eCN4sxWr9I1RbQvictjffzU5JaXkajAUF TGKluqScY/0Em8ZnSQCBC0QcH+nqBCXABqwJy7QagQ+QZE3ESAFsDIB+k+6Yqy37QkCn PODQ== X-Gm-Message-State: AOJu0YyY1DZnmyYakD/wVHsf2KusxBmCxwBxwHHWrC2YEVjWsAPu3dOb tdQ1c0eucFYGcVakbe5t43lT72WwFwPTOG6/8CHRDk2ji8uzF/1dwSCODrkGzYc= X-Google-Smtp-Source: AGHT+IE4ljaDEaIJJfCxrH7xDHI2YQeS7+vnU1PrGo3cUp1R/857llHokqZQMlwnSxoK8dVpcp2haQ== X-Received: by 2002:a2e:3218:0:b0:2ec:55f3:40d with SMTP id 38308e7fff4ca-2ec5b346102mr86472911fa.30.1719516034791; Thu, 27 Jun 2024 12:20:34 -0700 (PDT) Received: from fedora.localnet (2-230-139-124.ip202.fastwebnet.it. [2.230.139.124]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-58612c835b9sm64786a12.3.2024.06.27.12.20.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Jun 2024 12:20:33 -0700 (PDT) From: Vincenzo Pupillo <v.pupillo@HIDDEN> To: Dmitry Gutov <dmitry@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#71776: 31.0.50; [PATCH] js-ts-mode: conforming use of font lock faces in jsdoc. Date: Thu, 27 Jun 2024 21:20:32 +0200 Message-ID: <2641653.vYhyI6sBWr@fedora> In-Reply-To: <26457965.1r3eYUQgxm@fedora> References: <2796980.fDdHjke4Dd@HIDDEN> <86bk3m67kn.fsf@HIDDEN> <26457965.1r3eYUQgxm@fedora> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="nextPart5106780.Qq0lBPeGtt" Content-Transfer-Encoding: 7Bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 71776 Cc: 71776 <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 (-) This is a multi-part message in MIME format. --nextPart5106780.Qq0lBPeGtt Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" In data gioved=C3=AC 27 giugno 2024 12:33:15 CEST, Vincenzo Pupillo ha scri= tto: > In data gioved=C3=AC 27 giugno 2024 11:47:20 CEST, Eli Zaretskii ha scrit= to: > > > From: Vincenzo Pupillo <v.pupillo@HIDDEN> > > > Date: Tue, 25 Jun 2024 16:16:21 +0200 > > >=20 > > > The use of font lock faces by jsdoc in js-ts-mode is different from t= hat > > > done in other major-modes such as java-mode or c++-mode. This patch > > > makes > > > them more similar. > >=20 > > Thanks. > >=20 > > Dmitry, any comments? On which branch should we install this, if you > > agree with the changes? >=20 > Please wait. I noticed this morning that there are problems with multiple > comment blocks in the same file. >=20 > Thanks. > V. Hi, this patch fix the treesit range rule for the jsdoc parser.=20 As you can see from the attached screenshots, with the previous rule the=20 parser throws an error (look at the modeline). With the new one, it doesn't= =20 happen anymore, and now the font lock is correct (I applied both patches I= =20 sent for this bug). Thanks. Vincenzo --nextPart5106780.Qq0lBPeGtt Content-Disposition: attachment; filename="0001-Fix-treesit-range-rule-for-jsdoc.patch" Content-Transfer-Encoding: 7Bit Content-Type: text/x-patch; charset="x-UTF_8J"; name="0001-Fix-treesit-range-rule-for-jsdoc.patch" From 0002186ff06659407ec32e76b18b4cf45e6f35f9 Mon Sep 17 00:00:00 2001 From: Vincenzo Pupillo <v.pupillo@HIDDEN> Date: Thu, 27 Jun 2024 16:13:58 +0200 Subject: [PATCH] Fix treesit range rule for jsdoc The parser for jsdoc is local, so it is necessary for the range rule to take this into account. * lisp/progmodes/js.el (js-ts-mode): Add ':local' keyword. * lisp/progmodes/js.el (js-ts-language-at-point): Removed 'js-ts-language-at-point'. --- lisp/progmodes/js.el | 33 +++++++++++---------------------- 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el index 529b31669ed..31e8f2924ac 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el @@ -3636,10 +3636,16 @@ js--treesit-font-lock-settings :override t '((escape_sequence) @font-lock-escape-face) + ;; "document" should be first, to avoid overlap. + :language 'jsdoc + :override t + :feature 'document + '((document) @font-lock-doc-face) + :language 'jsdoc :override t :feature 'keyword - '((tag_name) @font-lock-keyword-face) + '((tag_name) @font-lock-constant-face) :language 'jsdoc :override t @@ -3649,17 +3655,12 @@ js--treesit-font-lock-settings :language 'jsdoc :override t :feature 'property - '((type) @font-lock-variable-use-face) + '((type) @font-lock-type-face) :language 'jsdoc :override t :feature 'definition - '((identifier) @font-lock-variable-name-face) - - :language 'jsdoc - :override t - :feature 'comment - '((description) @font-lock-comment-face)) + '((identifier) @font-lock-variable-name-face)) "Tree-sitter font-lock settings.") (defun js--fontify-template-string (node override start end &rest _) @@ -3933,7 +3934,7 @@ js-ts-mode ;; Fontification. (setq-local treesit-font-lock-settings js--treesit-font-lock-settings) (setq-local treesit-font-lock-feature-list - '(( comment definition) + '(( comment document definition) ( keyword string) ( assignment constant escape-sequence jsx number pattern string-interpolation) @@ -3944,10 +3945,9 @@ js-ts-mode (treesit-range-rules :embed 'jsdoc :host 'javascript + :local t `(((comment) @capture (:match ,js--treesit-jsdoc-beginning-regexp @capture)))))) - (setq-local treesit-language-at-point-function #'js-ts-language-at-point) - ;; Imenu (setq-local treesit-simple-imenu-settings `(("Function" "\\`function_declaration\\'" nil nil) @@ -3989,17 +3989,6 @@ js-ts--syntax-propertize (put-text-property ns (1+ ns) 'syntax-table syntax) (put-text-property (1- ne) ne 'syntax-table syntax))))) -(defun js-ts-language-at-point (point) - "Return the language at POINT." - (let ((node (treesit-node-at point 'javascript))) - (if (and (treesit-ready-p 'jsdoc) - (equal (treesit-node-type node) "comment") - (string-match-p - js--treesit-jsdoc-beginning-regexp - (treesit-node-text node))) - 'jsdoc - 'javascript))) - ;;;###autoload (define-derived-mode js-json-mode prog-mode "JSON" :syntax-table js-mode-syntax-table -- 2.45.2 --nextPart5106780.Qq0lBPeGtt Content-Disposition: attachment; filename="js-jsdoc-master.png" Content-Transfer-Encoding: base64 Content-Type: image/png; name="js-jsdoc-master.png" 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 --nextPart5106780.Qq0lBPeGtt Content-Disposition: attachment; filename="js_jsdoc_with_patch.png" Content-Transfer-Encoding: base64 Content-Type: image/png; name="js_jsdoc_with_patch.png" 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 --nextPart5106780.Qq0lBPeGtt--
bug-gnu-emacs@HIDDEN
:bug#71776
; Package emacs
.
Full text available.Received: (at 71776) by debbugs.gnu.org; 27 Jun 2024 10:34:26 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 27 06:34:26 2024 Received: from localhost ([127.0.0.1]:41101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sMmSQ-00027m-Il for submit <at> debbugs.gnu.org; Thu, 27 Jun 2024 06:34:26 -0400 Received: from mail-ej1-f53.google.com ([209.85.218.53]:49456) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <v.pupillo@HIDDEN>) id 1sMmSP-00027a-0m for 71776 <at> debbugs.gnu.org; Thu, 27 Jun 2024 06:34:25 -0400 Received: by mail-ej1-f53.google.com with SMTP id a640c23a62f3a-a727d9dd367so331741966b.3 for <71776 <at> debbugs.gnu.org>; Thu, 27 Jun 2024 03:34:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719484396; x=1720089196; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WOcdVIBNgrGrMHZC0tdEKjExZeSYJgSeHwgR0UvK+HQ=; b=TmCSFaUz9W5dG5pEp6OZ5BHiApXO29fsrxPQm9Nem/JLLQnlrfD8er3vb7g6IP1ecc RDDSPRn0DqOiml6UlaF9RBsRzCLXL5XLh+e9bAlHyyP2vVUNjkbtjROZ0m1TdOBB4pb0 JAFFyUAJa+misxcf51xp+pHuMos6fSdq4Q5pcHmf/WidtLnsme6N1jXVO2HcLRgiOwNO hcBC8DhUODrXinu2XhaWaGlkxUPr1q27STbO3vcrBPFUxUfxNvtYZZJyGcZZr2EfoCak xYcRzwq7XZqXmYhdHAmt9sh/etWktvDk7SB+AdNYgrHUD0b5shLtQa+P4e+FYLOgy2l+ B5QQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719484396; x=1720089196; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WOcdVIBNgrGrMHZC0tdEKjExZeSYJgSeHwgR0UvK+HQ=; b=vprjOm00ooUM9ubmZ+6Wctljh9OpACpXF548CEQmbKSJnVNtutT27bM6JgKL5MEm11 cEAyevliIbOPGCYlgDk2dX8NiEqAlaTkukgDDU4zSAiCLHEHg8hc3JZgSKCzn0a/0BSa vnIqwD4+OLj9V18u6B/DEkLR6EgBmaNSIkoFiId7rbNBWCWJSPw/EXKr4im+/R+7QYOr 7K6yMeC6tLbSidAsxXNSu6ai7SowfCHmRv+wbsA1voqiJCbtYv0BdL7qCM3/TEQZbGcV 16kdX/Q3Ma7Ktqt6hCmw5T4WZdYxngFvKDrbnScLu0LEEYErpQ0uQrMC6EuzWpVWOOc/ YMlw== X-Gm-Message-State: AOJu0Ywm7nLaA0e2DYJfx1QIt/c27FKxwAFz+pS0xmqLwSHE6Q5z9o14 3HSK12VYlXxK3xWeyzlIZbXy0aiYBL4oU7wJYGOB0ScdZeCveEGs X-Google-Smtp-Source: AGHT+IGmFKaFl59c9I2wBtH2yC7UnVazOoXfcGo9RiIIgqo4PI+iP9JY55RymxhnXHnx+2XOAs8Iow== X-Received: by 2002:a17:906:278d:b0:a6e:fad9:6dbb with SMTP id a640c23a62f3a-a7242b95324mr996374766b.0.1719484396362; Thu, 27 Jun 2024 03:33:16 -0700 (PDT) Received: from fedora.localnet (2-230-139-124.ip202.fastwebnet.it. [2.230.139.124]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a729d7ca3a9sm46209666b.223.2024.06.27.03.33.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Jun 2024 03:33:16 -0700 (PDT) From: Vincenzo Pupillo <v.pupillo@HIDDEN> To: Dmitry Gutov <dmitry@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#71776: 31.0.50; [PATCH] js-ts-mode: conforming use of font lock faces in jsdoc. Date: Thu, 27 Jun 2024 12:33:15 +0200 Message-ID: <26457965.1r3eYUQgxm@fedora> In-Reply-To: <86bk3m67kn.fsf@HIDDEN> References: <2796980.fDdHjke4Dd@HIDDEN> <86bk3m67kn.fsf@HIDDEN> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 71776 Cc: 71776 <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 (-) In data gioved=C3=AC 27 giugno 2024 11:47:20 CEST, Eli Zaretskii ha scritto: > > From: Vincenzo Pupillo <v.pupillo@HIDDEN> > > Date: Tue, 25 Jun 2024 16:16:21 +0200 > >=20 > > The use of font lock faces by jsdoc in js-ts-mode is different from that > > done in other major-modes such as java-mode or c++-mode. This patch mak= es > > them more similar. > Thanks. >=20 > Dmitry, any comments? On which branch should we install this, if you > agree with the changes? Please wait. I noticed this morning that there are problems with multiple=20 comment blocks in the same file.=20 Thanks. V.
bug-gnu-emacs@HIDDEN
:bug#71776
; Package emacs
.
Full text available.Received: (at 71776) by debbugs.gnu.org; 27 Jun 2024 09:47:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 27 05:47:33 2024 Received: from localhost ([127.0.0.1]:41046 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sMlj3-0000xE-Cq for submit <at> debbugs.gnu.org; Thu, 27 Jun 2024 05:47:33 -0400 Received: from eggs.gnu.org ([209.51.188.92]:60322) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sMlj1-0000wz-Kp for 71776 <at> debbugs.gnu.org; Thu, 27 Jun 2024 05:47:31 -0400 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 <eliz@HIDDEN>) id 1sMlit-0004F0-Eg; Thu, 27 Jun 2024 05:47:23 -0400 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=WQQuVGPiiZQGRTZgD7mckgQbBfsJ/doj4+GRDUkteUc=; b=bXrhaCWrkAYf PTo4wnmSPE6rr4016aQ0XPtIomgpDaifRclN5+rSBdgORQqEOCsUBX/UVwfCiJVGIONdwVwf1tf9/ YAId/bwpFNBHRunuNZuHWZhKWtf1QvIdroAynYKdx41a3N2et2iSWhlyMM14iJmvRGQirOS7+F0CI 77lo9NQRq+AbkvdVCModbgoMpPbSOL1pIFbGroFuOAa4bB9Q7xuGDv3+454dUF+k5njEVbWjPW2H+ ZPm0eLw9kqDNPuYuYgDySEZVEYZldtZS4jsHopqReSH8mZyiGJQpcah3NIY/4vOF+79aVy01D4BoE PclU/HmeD5/iYScsnL/whA==; Date: Thu, 27 Jun 2024 12:47:20 +0300 Message-Id: <86bk3m67kn.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Vincenzo Pupillo <v.pupillo@HIDDEN>, Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <2796980.fDdHjke4Dd@HIDDEN> (message from Vincenzo Pupillo on Tue, 25 Jun 2024 16:16:21 +0200) Subject: Re: bug#71776: 31.0.50; [PATCH] js-ts-mode: conforming use of font lock faces in jsdoc. References: <2796980.fDdHjke4Dd@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71776 Cc: 71776 <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: -3.3 (---) > From: Vincenzo Pupillo <v.pupillo@HIDDEN> > Date: Tue, 25 Jun 2024 16:16:21 +0200 > > The use of font lock faces by jsdoc in js-ts-mode is different from that done in > other major-modes such as java-mode or c++-mode. This patch makes them more similar. Thanks. Dmitry, any comments? On which branch should we install this, if you agree with the changes?
bug-gnu-emacs@HIDDEN
:bug#71776
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 25 Jun 2024 14:16:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 25 10:16:35 2024 Received: from localhost ([127.0.0.1]:37515 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sM6yJ-0005T9-8b for submit <at> debbugs.gnu.org; Tue, 25 Jun 2024 10:16:35 -0400 Received: from lists.gnu.org ([209.51.188.17]:37240) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <v.pupillo@HIDDEN>) id 1sM6yD-0005Sw-TO for submit <at> debbugs.gnu.org; Tue, 25 Jun 2024 10:16:33 -0400 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 <v.pupillo@HIDDEN>) id 1sM6yB-0001E1-V4 for bug-gnu-emacs@HIDDEN; Tue, 25 Jun 2024 10:16:27 -0400 Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <v.pupillo@HIDDEN>) id 1sM6yA-0003ih-6i for bug-gnu-emacs@HIDDEN; Tue, 25 Jun 2024 10:16:27 -0400 Received: by mail-ej1-x62d.google.com with SMTP id a640c23a62f3a-a72477a6096so324784766b.1 for <bug-gnu-emacs@HIDDEN>; Tue, 25 Jun 2024 07:16:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719324983; x=1719929783; darn=gnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=TWDenCdXRZfHQkPOJqI8pikbWEaAhIFv6OxBU9nRBNk=; b=gFQKoUREOHZRaSVaBHJ9zPBPk+XyBlxgn/ePcR4CLEmLIUEQgca4i0Ys95vTgdLdM6 wRQWl/YnRobDOuivTKcgJ8v0pSavPM3whyEhLKNwTK49uBz5u05LvtkVocyVxjsP3hPz Cxf4G5Ei0erwheTp6wPAxX3lCpM5LUSJlTrHRq8FObtlhzmk9E7fW3iLDlCKJSg/0Vcx ZRFGEZzorXm8AotFb8YMArqR7x7z0ZwMWsc89aaFYfLfWHsT3x8ookz+qmuY2Uv4Ed1H eZ7+E6mrAzFR+oLhqp0ngeBr/tu8x4noSVZ+jEYBFKc5FH/iM2BijG3q6TC9VJVDpVH/ sECw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719324983; x=1719929783; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=TWDenCdXRZfHQkPOJqI8pikbWEaAhIFv6OxBU9nRBNk=; b=VtVvio8g0DbJDPgirkseOgrtgnxV+J6o1DC1DMmzAlliGXMovGYh4E6B23cHWpsF8D 6pRNLiLEmg8OqgW3gG3OBAa657pMdUia+Du2TyVyVIPjj+T4UMFSrv8rMxkibxwYrAR6 HxKsgO8z8aHy1iSqfv7Od3N0fjMakVawP/HzGOXlyoZO7TxLjVvJMnVQkOdp8gY2CJVe 2pK1gM/6t1RXmgUGFKOX7Tlbg+34/EfU+3gOOHRHPn0L2twD5mXDdoQ4j3FzOJYNHI3Q hVKjwqRRJJapZoNjj43+ly4VT1vZIyevgoMCsizziv8CimkStCozeueEWMPwt/jB2ebk AihA== X-Gm-Message-State: AOJu0YyNoLcHEc8/OA3zAZ0f9dYqy+yNUDCeIKpBdJ2ZzWXK6tXd5QSO z3HogDcgbrji1eu1mcMmmPSJYmBNn/VAZFLLLW+YJwzyz/4l5ChPeV66Vw== X-Google-Smtp-Source: AGHT+IFZYdBfpXar3aje8ItjWDdbKTHwYNeJ0MDeeIs0j7Hj7yH9u3wLuJp07l4qnPwHkDGHl2GxAQ== X-Received: by 2002:a17:906:37cf:b0:a70:3a15:110d with SMTP id a640c23a62f3a-a7245c642damr427181266b.69.1719324983083; Tue, 25 Jun 2024 07:16:23 -0700 (PDT) Received: from 3-191.divsi.unimi.it (3-191.divsi.unimi.it. [159.149.3.191]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a6fe4eeb106sm394521166b.167.2024.06.25.07.16.22 for <bug-gnu-emacs@HIDDEN> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Jun 2024 07:16:22 -0700 (PDT) From: Vincenzo Pupillo <v.pupillo@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: 31.0.50; [PATCH] js-ts-mode: conforming use of font lock faces in jsdoc. Date: Tue, 25 Jun 2024 16:16:21 +0200 Message-ID: <2796980.fDdHjke4Dd@HIDDEN> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="nextPart2788866.vYhyI6sBWr" Content-Transfer-Encoding: 7Bit Received-SPF: pass client-ip=2a00:1450:4864:20::62d; envelope-from=v.pupillo@HIDDEN; helo=mail-ej1-x62d.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, 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-Spam-Score: -1.3 (-) 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: -2.3 (--) This is a multi-part message in MIME format. --nextPart2788866.vYhyI6sBWr Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="utf-8" Hi, The use of font lock faces by jsdoc in js-ts-mode is different from that done in other major-modes such as java-mode or c++-mode. This patch makes them more similar. Thanks. Vincenzo --nextPart2788866.vYhyI6sBWr Content-Disposition: attachment; filename="0001-Conforming-use-of-font-lock-faces-in-jsdoc.patch" Content-Transfer-Encoding: 7Bit Content-Type: text/x-patch; charset="x-UTF_8J"; name="0001-Conforming-use-of-font-lock-faces-in-jsdoc.patch" From a81051ab74bd8bb29843206beaf481cf8270b4aa Mon Sep 17 00:00:00 2001 From: Vincenzo Pupillo <v.pupillo@HIDDEN> Date: Tue, 25 Jun 2024 15:54:17 +0200 Subject: [PATCH] Conforming use of font lock faces in jsdoc * lisp/progmodes/js.el (js--treesit-font-lock-settings): Use 'font-lock-doc-face' for 'document' node type, font-lock-constant-face for 'tag_name' and 'font-lock-type' face for 'type'. * lisp/progmodes/js.el (js-ts-mode): Add 'document' to 'treesit-font-lock-feature-list'. --- lisp/progmodes/js.el | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el index 529b31669ed..e9962c36a46 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el @@ -3636,10 +3636,16 @@ js--treesit-font-lock-settings :override t '((escape_sequence) @font-lock-escape-face) + ;; "document" should be first, to avoid overlap. + :language 'jsdoc + :override t + :feature 'document + '((document) @font-lock-doc-face) + :language 'jsdoc :override t :feature 'keyword - '((tag_name) @font-lock-keyword-face) + '((tag_name) @font-lock-constant-face) :language 'jsdoc :override t @@ -3649,17 +3655,12 @@ js--treesit-font-lock-settings :language 'jsdoc :override t :feature 'property - '((type) @font-lock-variable-use-face) + '((type) @font-lock-type-face) :language 'jsdoc :override t :feature 'definition - '((identifier) @font-lock-variable-name-face) - - :language 'jsdoc - :override t - :feature 'comment - '((description) @font-lock-comment-face)) + '((identifier) @font-lock-variable-name-face)) "Tree-sitter font-lock settings.") (defun js--fontify-template-string (node override start end &rest _) @@ -3933,7 +3934,7 @@ js-ts-mode ;; Fontification. (setq-local treesit-font-lock-settings js--treesit-font-lock-settings) (setq-local treesit-font-lock-feature-list - '(( comment definition) + '(( comment document definition) ( keyword string) ( assignment constant escape-sequence jsx number pattern string-interpolation) -- 2.45.2 --nextPart2788866.vYhyI6sBWr--
Vincenzo Pupillo <v.pupillo@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#71776
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.