From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Thibaut Verron Newsgroups: gmane.emacs.help Subject: Re: Introducing face in comments for various modes Date: Tue, 13 Dec 2022 11:05:03 +0100 Message-ID: <3d77f749-9a47-3a87-40d0-7c7de73b64e7@gmail.com> References: <9ZK1Solghrmps4AarUsz2E6-mAdkrTZoXPs4RTRTd9sZ0Cd8DGhK955im1kuug-EZXU3tc5rgDDd16vQexxpFnMvMFjFqnNnh0noashyLdE=@protonmail.com> <0RJB0bPRTMAqXlUbL2kGUvJtnCNPYwPhqTNi_l9nIpQAciTZYcYCikFVqi2Nr_UZLbT1_DRtX8G0dSkgI4jln5DTYBDxLz4i7L2d9wx-kA8=@protonmail.com> <0icp58GJsK8dY-4h0rYl1g47IKcUW6zTIdHTpT6gRBXa24dgtBv86Vw2KlQPzBMBtEsHJBM6T1S-JX_xg8xrmQ8vXI1k7_OsdXnTX-_iNZE=@protonmail.com> <0413ccbf-68dd-a9f2-7541-1df84853cfd0@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11886"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Cc: Jean Louis , help-gnu-emacs@gnu.org To: Heime Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Tue Dec 13 11:06:07 2022 Return-path: Envelope-to: geh-help-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 1p52An-0002he-Bx for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 13 Dec 2022 11:06:05 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p52AP-00021Q-Hr; Tue, 13 Dec 2022 05:05:41 -0500 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 1p529t-0001zG-Ux for help-gnu-emacs@gnu.org; Tue, 13 Dec 2022 05:05:21 -0500 Original-Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p529r-0004B6-1C for help-gnu-emacs@gnu.org; Tue, 13 Dec 2022 05:05:09 -0500 Original-Received: by mail-wm1-x331.google.com with SMTP id ay8-20020a05600c1e0800b003d0808d2826so618545wmb.1 for ; Tue, 13 Dec 2022 02:05:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=W+diAj8F7/iLhNReohrKBVfr1G9lKzva/ShMQQsZyio=; b=mM6yJDr+GzW8YFKSCaihK+jSBm8RIihBt/8bfvRi9VlUjLWOueSJa7xUvtm5vgW9p5 aPP6i3sG00SVhDghQM3iFpoxSZcXDPeuHEbdbR3pexBRnIntAHlfUQTmjc2/BtvQjeuF Wh7bi2DgBC9DXycells4aL7N+5BAmhTnVRKZAGNqwTEazlbG1aB6kwctcr8DcB/JwPGW wm/X3vqoRsrUsE2BAxDf0OM/V5U0BNK6JZlo6RcJhlC/GuGLQMY+/4nAziru36uNd4HL lURrRSIP8rSejFDjpE8GUSZhDpU/M/cENHt65I6PivyHNbVqoOAeYhjnHmlycyPO9GXX dvaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=W+diAj8F7/iLhNReohrKBVfr1G9lKzva/ShMQQsZyio=; b=8L6B235728eOxSiFJqnMR2TeElNYYqTK7YBlbaKqPg1BA9rBO8qUx0hWTAqdEDTEDQ EfT5wmPlOfxKY6FmRjMsx7+Q8QhMg5/qBq7CcYNXKJZsIVOKfR3yI9Bnr8zq+uPzpb3D H+bPQa97/heuSG7lQrPxQZ3pe2HVkAw8M7ezyo7XmnnpMeh2IXwIWuTM11HTs10HBZnW vvb+ok60MGOPTH+6dxyyg1U6Io4uPr+9BK452tAu1DP5xij1LP3Wgr7wHETPmUs79l8q WYoUWuRz5QWUFx9mQ1Z0jkLYAytA5dbhKL4tyfyO9XWLJ1ikkEbM7OhprkttMZN7q+c6 ZYDw== X-Gm-Message-State: ANoB5pnUuWWbQppVlLledfXXxyAKNS0fTDve18eKeoBQWqtLGcnvqwaD CE7+tI6M+gmMFnwCrd1sDyU= X-Google-Smtp-Source: AA0mqf7eOR8YaKNmTxidTz660eNqUyLYQkwOJtyXbKUgtDvNahqQNNO42Js28pUixwSQWdYSSlisHg== X-Received: by 2002:a7b:c017:0:b0:3cf:8e5d:7184 with SMTP id c23-20020a7bc017000000b003cf8e5d7184mr14840079wmb.28.1670925905253; Tue, 13 Dec 2022 02:05:05 -0800 (PST) Original-Received: from ?IPV6:2001:628:2010:4094:4818:8cf9:4bb1:650a? ([2001:628:2010:4094:4818:8cf9:4bb1:650a]) by smtp.gmail.com with ESMTPSA id l41-20020a05600c1d2900b003c6b874a0dfsm16120387wms.14.2022.12.13.02.05.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 13 Dec 2022 02:05:04 -0800 (PST) Content-Language: en-US In-Reply-To: Received-SPF: pass client-ip=2a00:1450:4864:20::331; envelope-from=thibaut.verron@gmail.com; helo=mail-wm1-x331.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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:141702 Archived-At: On 13/12/2022 10:46, Heime wrote: > ------- Original Message ------- > On Tuesday, December 13th, 2022 at 9:35 AM, Thibaut Verron wrote: > > >> On 13/12/2022 09:30, Heime wrote: >> >>> ------- Original Message ------- >>> On Tuesday, December 13th, 2022 at 8:04 AM, Heime heimeborgia@protonmail.com wrote: >>> >>>> ------- Original Message ------- >>>> On Tuesday, December 13th, 2022 at 7:52 AM, Jean Louis bugs@gnu.support wrote: >>>> >>>>> Heime, I like the idea of highlighting comments, though I do it this >>>>> way to specify (syntax comment-start) as that works for multiple >>>>> modes. >>>>> >>>>> ; one >>>>> ;; two >>>>> ;;; three >>>>> ;;;; and more >>>>> >>>>> ;;; Highlighting comments >>>>> >>>>> (setq rcd-regexp-comment (rx line-start >>>>> (one-or-more (syntax comment-start)) >>>>> (one-or-more space) >>>>> (group (one-or-more not-newline)) >>>>> line-end)) >>>>> >>>>> ;; (highlight-regexp regexp nil 1) >>>>> ;; (unhighlight-regexp regexp) >>>>> >>>>> Jean >>>>> I would like to introduce (syntax comment-start) in place >>>>> of ";;" in "^;;\s+\\[.+\\].*$". >> >> It's not something you can "introduce" in your regexp, it only makes >> sense within the context of a regexp built with rx: >> https://www.gnu.org/software/emacs/manual/html_node/elisp/Rx-Notation.html >> >> Rewriting your regexp as an rx regexp would not be too difficult if you >> want to go that route, Jean's example is a good template. >> >> Otherwise, as an approximation of that feature, you could built your >> regex string using the value of the variable comment-start ( ";" in >> emacs-lisp-mode) instead of hardcoding ;; . > How can one specify two comment characters next to each other? Using the variable, the same way you would normally do for a regexp, by putting \{2\} after the matched regexp. E.g. ELISP> (format "\\(%s\\)\\{2\\}" comment-start) "\\(;\\)\\{2\\}" (don't trust me for the number of escape characters) But I don't think it's really what you want: for example, in a mode where comment-start is "# " (e.g. org or python), this will match "# # " but not "##". Using the syntax table is better here, as the character # alone has the syntax of a comment-start. I had forgotten about the simplest option, that is the regexp equivalent of the rx syntax: \s< in a regexp will match exactly a character with the syntax of a comment-start. So: "\s<\{2\}" should be exactly what you want (at least in languages where comments start with a single character).