Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 12:40:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 09 08:40:35 2024 Received: from localhost ([127.0.0.1]:35327 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sGHqc-00087C-Ey for submit <at> debbugs.gnu.org; Sun, 09 Jun 2024 08:40:35 -0400 Received: from mail-ed1-f48.google.com ([209.85.208.48]:43154) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1sGGsH-0005Ob-Er for 53749 <at> debbugs.gnu.org; Sun, 09 Jun 2024 07:38:14 -0400 Received: by mail-ed1-f48.google.com with SMTP id 4fb4d7f45d1cf-57c6d3e6606so1408786a12.0 for <53749 <at> debbugs.gnu.org>; Sun, 09 Jun 2024 04:37:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717933011; x=1718537811; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=lGEanGL/eI+IHlXaBTXXBQ8rgrD/tE6Ym/ePXGV0MoY=; b=AVMeHwX1w/eL8DyCVobcjyuOh+quC3n6Ea3WwRLo5J90t0WAtJcE+Uk2W4cTbCBd8V A1uzX0a/5U2vAJn/o/Hsqhh11LU3JG+m89SfROSbXzEjy9i/OsXZPUGYtRHaOWmlS7K2 2XIXeusrWRxQbW80s0NdYo/1rLFhuH0nDvrmfLeje/Lj4E/yIq/GzciDIOrd57jOA5in QEsBEIq2xPi0gJdEiRmjMso/LcrWoC5LsW+BYvMlG1HSSWcXK9WPXZHzTuc1lcTefVPJ lcgUtOX2QTpFvnbp4MALkFV4w5DmuAGDwGcnEyFSRR3oYxjS842LHXIrZl0ubYMUeECa 9rVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717933011; x=1718537811; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lGEanGL/eI+IHlXaBTXXBQ8rgrD/tE6Ym/ePXGV0MoY=; b=uch6vWq/BNpc9htQE65zGvITQE1sjpyE6MDrUWMUQWpmLd1aDhgXZPBGKny+AujTYP 3jjjE82OYlG74PbGF/1xNzD1sBBQ4NW67WCt+cbpBvFcIe3wdnej+br/eOyoxKxNRpuK G+3uCtqVQGGxUPtWc5rhZzEHMXAsYpxUZRNxNSd9qtQiTCs9ClwOGqzRKyx10eITiFGX u5Ha7S6vCPzYV0a2CC9kitLO23u8llYXyym0F2j1ItsjmApQtiHmynsX8LbkO9YPpJ7x GPGuOdZwiAV0YPLHUySnSfvKJpeDKYVcF3lBBB04VZYGzD4h72z7+nFNPf45q+IJr4W5 K7tg== X-Forwarded-Encrypted: i=1; AJvYcCWBemmNCZx9xLG7owMfHh+k7F76HJqWgTcWH3Kx9Tfkm95qdnbpX2knTcB47bwiYc93zDr1LogMktEXr4AbwgmV4isKLxc= X-Gm-Message-State: AOJu0YxMtxzIe3eRqLMOx47TkmT4cKE+ZLG4IQp9rlu41IXaek+LVA14 Zrr7VABcuJsdi9P25oNzYv6+UnTnFHDrrFY2+MEU/zMTezjE9ISJ0BTAPy9ULVYeDPUn+EwGuMG vVZuNZdQ2KzZVKgk7gJt3sH32PC8= X-Google-Smtp-Source: AGHT+IE1ErbOS8Vo+eVOncFmg/XUSUg07iJaCcuM4Kwl8NAaxfByglW8Y/t17TTjm8RjoeW4U/zMUyfEs3Tbn7QTZ8s= X-Received: by 2002:a17:907:94c3:b0:a6f:1c58:754a with SMTP id a640c23a62f3a-a6f1c587594mr57380866b.24.1717933011172; Sun, 09 Jun 2024 04:36:51 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 9 Jun 2024 07:36:50 -0400 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> <86v832z5lp.fsf@HIDDEN> <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> MIME-Version: 1.0 Date: Sun, 9 Jun 2024 07:36:50 -0400 Message-ID: <CADwFkmkY_gRVR=x-N=9Jb-1jt-y_598BfvG4PQD5g18vZhH+7A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, dgutov@HIDDEN, arash@HIDDEN, Stefan Monnier <monnier@HIDDEN>, tsdh@HIDDEN 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 (-) David Fussner <dfussner@HIDDEN> writes: > In case the changeset might prove acceptable for version 30, I attach > the latest patch, which clears out the code I was using to simplify > testing of the AUCTeX modes. I have some comments and questions: - Does this need a NEWS entry? - I see the brief text you added to tex-mode.el explaining more about expl3, but perhaps there should be a clear explanation in the commit message too. - [Optional: In most places you use spaces for indentation, but here and there, there is a single tab followed by one or more spaces. Consider using only spaces.] > From: David Fussner <dfussner@HIDDEN> > Date: Wed, 5 Jun 2024 10:26:18 +0100 > Subject: [PATCH] Provide a modified xref backend for TeX buffers [Don't forget to add the bug number to the ChangeLog.] > diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi > index 579098c81b1..a064103aa25 100644 > --- a/doc/emacs/maintaining.texi > +++ b/doc/emacs/maintaining.texi > @@ -2529,6 +2529,15 @@ Identifier Search > referenced. The XREF mode commands are available in this buffer, see > @ref{Xref Commands}. > > +When invoked in a buffer whose major mode uses the @code{etags} backend, > +@kbd{M-?} searches files and buffers whose major mode matches that of > +the original buffer. It guesses that mode from file extensions, so if > +@kbd{M-?} seems to be skipping relevant buffers or files, try > +customizing either the variable @code{semantic-symref-filepattern-alist} Why does this speak of Semantic? Does `xref-find-references` depend on it somehow? > diff --git a/lib-src/etags.c b/lib-src/etags.c > index 03bc55de03d..6bc734e7df0 100644 > --- a/lib-src/etags.c > +++ b/lib-src/etags.c > @@ -5740,11 +5756,25 @@ Scheme_functions (FILE *inf) > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2024) Add variants of '\def', some additional LaTeX (and > + former xparse) commands, common variants from the > + 'etoolbox' package, and the main expl3 commands. */ Do we really need this comment? Isn't the git log enough? > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index 97c950267c6..fbf08840699 100644 > --- a/lisp/textmodes/tex-mode.el > +++ b/lisp/textmodes/tex-mode.el > @@ -636,6 +636,14 @@ tex-font-lock-keywords-2 > 3 '(tex-font-lock-append-prop 'bold) 'append))))) > "Gaudy expressions to highlight in TeX modes.") > > +(defvar-local tex-expl-region-list nil > + "List of region boundaries where expl3 syntax is active. > +It will be nil in buffers where expl3 syntax is always active, e.g., Please prefer "for example" to "e.g.". > +(defvar-local tex-expl-buffer-p nil > + "Non-nil in buffers where expl3 syntax is always active.") What does "always active" mean as compared to just "active"? Does this need to be elaborated? > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > +;; AUCTeX is doing the same for its modes. > +(with-eval-after-load 'semantic/symref/grep > + (defvar semantic-symref-filepattern-alist) > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > + "*.bbl" "*.drv" "*.hva") > + semantic-symref-filepattern-alist) > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > + semantic-symref-filepattern-alist) > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) Doesn't this stuff rather belong in semantic itself? > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > + "Find references of IDENTIFIER in TeX buffers and files." > + (require 'semantic/symref/grep) Are we sure that we want to make this depend on semantic? Is there any way around that?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 9 Jun 2024 11:19:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 09 07:19:35 2024 Received: from localhost ([127.0.0.1]:60158 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sGGaE-0001fM-Lf for submit <at> debbugs.gnu.org; Sun, 09 Jun 2024 07:19:35 -0400 Received: from mail-lf1-f45.google.com ([209.85.167.45]:56351) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1sGGaC-0001f3-Ma for 53749 <at> debbugs.gnu.org; Sun, 09 Jun 2024 07:19:33 -0400 Received: by mail-lf1-f45.google.com with SMTP id 2adb3069b0e04-52c8973ff29so144585e87.0 for <53749 <at> debbugs.gnu.org>; Sun, 09 Jun 2024 04:19:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717931890; x=1718536690; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=M2Os0Lqq1aA3QPLDA+oHGppvsHCv45DO87ZipYXaLP4=; b=MOTXvEjLsit300BKqIgtwOHyHzArZvyAbKyoT09TwwacmMoTiEajLuAXNpFQkUfHfO ZanOhO5xtg+mSFPrHItL3OCDf6tYjjdKyauIarbRcslPg9yrbjZbapDcfHrF2+MZevB4 jM2gHMu/oKCxgMMGFuCH9MZe+ilzIrRExTnmsiktb3dI86WZcRs1K0pCbCeK0dp3w+0i 0j0AK9o5fVaG21IkF2QFP/XnbjYZitZIeEgO/uaig68VGCHnU3OPQHMdlyUhSrp/Jaai sXKoWeOFwC6r5RPPAT/oJyNR0Cl42BNuAVBBM5uMq4SGVphCEpOsPn+fUwBmaqjQC7f3 PQgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717931890; x=1718536690; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=M2Os0Lqq1aA3QPLDA+oHGppvsHCv45DO87ZipYXaLP4=; b=U9KAclgvc9YwFhjXYwgt0W/k69ofj4FE44jOa8ShkaC/lFv3sj5wWOeyQ2tPcTe12U 3p6Ya3q3yOrdTotxZ8dedroGV/kCFalMfvIk3F7Z9FUGtD1eonhsAXxjoJrQhsvLTAd0 SpGkmcXAQVLgOhT2C2AO6XAlsyIgMu6H9TPuYh4o521hPOiSn0ZagNnsBZ9mPLcdPV5+ UJJk3VUFl380LBBURUcm5Rf8PW/Xf/Mj/jeTH7NqCqcDfxED9llI+V+Hp4L6R8JLIsUi 6LSdNA/J4aqY/ctSbio3UEe7f8D5T7nSm5+SR+GLxvjSq24NseWafB47suM9GqsRMeCa qyfg== X-Forwarded-Encrypted: i=1; AJvYcCUv0MvkBVPUMsKtCnj9+fVPrVVQGGmoNzYX8TjWiNjycD+sNzrdFmsSYmAmEcac3amGNUs2NZ7+M6s1/zAkqphXX/5XxiI= X-Gm-Message-State: AOJu0YxtmSRuHPLUuPzJcP97Ms/bIRYkblF5uw758qvrAVazvFEzqqjS qdVLC8NwJpufsjgIGKiQj+I/sWGzmPmpPiX35skHoUpXGK/edAvptaY1KNKLJkuU0jd4polbhLT pjiaAS0PVxR6YyCqc6vT+3GkFlB81Awai X-Google-Smtp-Source: AGHT+IHTPY+Urh+cg1ut5Lpc6xEjy0Jlr5VEyVI33KbwcXaSO6BedrSS3swhAp9+tyaGKgNJePUzBrFfA4M7ci7gVgc= X-Received: by 2002:a50:f685:0:b0:57c:620c:8f76 with SMTP id 4fb4d7f45d1cf-57c620c92b9mr2729522a12.26.1717931442727; Sun, 09 Jun 2024 04:10:42 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 9 Jun 2024 04:10:42 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> <86v832z5lp.fsf@HIDDEN> <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> MIME-Version: 1.0 Date: Sun, 9 Jun 2024 04:10:42 -0700 Message-ID: <CADwFkmnUD+CHJ9wm+MBwqYH-xXGC-_WQcxZfPk10bcEs3XuB=A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, dgutov@HIDDEN, arash@HIDDEN, Stefan Monnier <monnier@HIDDEN>, tsdh@HIDDEN 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 (-) David Fussner <dfussner@HIDDEN> writes: > I can if requested send a patch for the manual etags tests, also, in > case that might prove helpful down the line. I believe that such tests would help, yes. Thanks in advance.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Jun 2024 21:55:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 08 17:55:22 2024 Received: from localhost ([127.0.0.1]:42571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sG41v-0004Cl-HN for submit <at> debbugs.gnu.org; Sat, 08 Jun 2024 17:55:22 -0400 Received: from fout2-smtp.messagingengine.com ([103.168.172.145]:35987) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dmitry@HIDDEN>) id 1sG3fF-0003C4-Pl for 53749 <at> debbugs.gnu.org; Sat, 08 Jun 2024 17:31:55 -0400 Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfout.nyi.internal (Postfix) with ESMTP id 899991380095; Sat, 8 Jun 2024 16:54:35 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Sat, 08 Jun 2024 16:54:35 -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=fm3; t=1717880075; x=1717966475; bh=xBwPa8nNyV6oPO7Y//Omz3LND3l9ulOTNZBEZ05cNK0=; b= EKYd1m1KWsnasmo2JhXxMdmWVM20LlkitVGbwN7DKhenaBm5oXTbNBjTEICGCwtJ 6vXYSS9srJtTbgi9UaBKrNrRI/DzNQHnt0QWc+EGVeFxda+b6IEq1/Cn9t1ddLj5 rPjLSnevO0BLNsvm30edizTryU0Ah6YV75jG6eVdl13xmkWxw2FnddVTacHABJWh yR+7wAdQtXkXz9NrzKS+A+MCsyO0jlT/sulJmvYcYIMVfDoamvFgP2bZIpasUYLj BJtxyms0DDoqHrdjQQmu4QLasKQKQ1Zvbh+KKaQh5bTAeckzFb1p0fYBYloOXGeL xHs7d/nJPjL/GpuTHyOinw== 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=1717880075; x= 1717966475; bh=xBwPa8nNyV6oPO7Y//Omz3LND3l9ulOTNZBEZ05cNK0=; b=A Q8Kw4DvTlI3hyTsAhnhNpAEt+KIavRK8Rc54AmsMLCprcKNAZSULfDCroTj2UILt evY/a7K7X7hLBfosjOPY4sofW19h+RaeJNR5zbKXDq0xTLBjFzADt/BLgUfKwZ9g wuExQUVbD7FYcRlLkjuV31HxUakIF2x6m0Zg2IdeLhuHr9jgXuetKqHlNvb1tG+O MKhHASLONNzGtOVkiQOC5qIvlG2hgTmg+bsSUJsowam6WhLbXZRRBEPLM0DvlOlR CkbqmDa6wv/aa2E/NyxwHEa6HfIbl6V8IFTk5GLikodeZ6JIuVrKdUUZVYtuZzvo +PwAD5DDdwlybwjsCQwig== X-ME-Sender: <xms:CsVkZoIwara7sjxtKI66CjpPXrmMTasHr5ETXUtSnZrapwjdrJNWJQ> <xme:CsVkZoKPmc7HvW9bk7CvHBrMtDJUGkH1nHpBtz1OHaXf4X6SeDrp7j6xAwpCX7Ehu ZB1e-YR_Vf_1sDgkG0> X-ME-Received: <xmr:CsVkZos-ie3M4lTzSKA0gsx2Fcswk5vyujpBR-QdFxc4I3dtbIU1AKAUEA_kYZRGE2uY> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrfedtgedgledtucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepteduleejgeehtefgheegjeekueehvdevieekueeftddvtdevfefhvdevgedu jeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: <xmx:CsVkZlbvp-gLsep5AyLV3_THQvAXHqyw-M5upjC4r065tS8JdIRVNQ> <xmx:CsVkZvbvE2RJcx9-Ob25KUajGCQq7TojyNrT2xVRDvr-f-X0FI1z6Q> <xmx:CsVkZhDMwpGrDFKY_W6jK5JXDqG_sN_fv3R4PzzKRkeSGXltc3aMnQ> <xmx:CsVkZlbUpIRgfr9v_GYNvofJdhunPrqJwZuv-7f4QcKW3x13FTcDbg> <xmx:C8VkZtPfABHOc48Gd61KyYcNsVBHJbnuXwfmz6m7lQXuSvzwm8DQr9Vx> Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 8 Jun 2024 16:54:32 -0400 (EDT) Message-ID: <2e6fec89-272a-4b52-a635-017d0fa52a4e@HIDDEN> Date: Sat, 8 Jun 2024 23:54:30 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Eli Zaretskii <eliz@HIDDEN>, David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> <86v832z5lp.fsf@HIDDEN> <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> <86h6e3d2yu.fsf@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dmitry@HIDDEN> In-Reply-To: <86h6e3d2yu.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, arash@HIDDEN, stefankangas@HIDDEN, tsdh@HIDDEN, monnier@HIDDEN 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 (-) On 08/06/2024 15:38, Eli Zaretskii wrote: >> From: David Fussner<dfussner@HIDDEN> >> Date: Wed, 5 Jun 2024 10:46:10 +0100 >> Cc: Stefan Monnier<monnier@HIDDEN>,dgutov@HIDDEN,53749 <at> debbugs.gnu.org, >> ikumi@HIDDEN,arash@HIDDEN,stefankangas@HIDDEN,tsdh@HIDDEN >> >> Hi Eli, Stefan, and Dmitry, >> >> In case the changeset might prove acceptable for version 30, I attach >> the latest patch, which clears out the code I was using to simplify >> testing of the AUCTeX modes. I can if requested send a patch for the >> manual etags tests, also, in case that might prove helpful down the >> line. > Thanks, I'm still waiting for answers to my question: > >> On Sat, 25 May 2024 at 12:01, Eli Zaretskii<eliz@HIDDEN> wrote: >>> How should we proceed about this bug report? Is David's last >>> changeset acceptable or isn't it? To the extent that I can evaluate the code, it look pretty good. And it's an additive change, so I don't see blockers to installing it.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Jun 2024 12:38:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 08 08:38:49 2024 Received: from localhost ([127.0.0.1]:37742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sFvLN-0003jk-FJ for submit <at> debbugs.gnu.org; Sat, 08 Jun 2024 08:38:49 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34136) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sFvLL-0003jX-2A for 53749 <at> debbugs.gnu.org; Sat, 08 Jun 2024 08:38:48 -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 1sFvKx-0007R6-Ud; Sat, 08 Jun 2024 08:38: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=3ix8XTfHQ33tuoTKr8qpkwNMDgbxKeFg7HkLb8mf484=; b=K/gwQHr1VdyZ h/pqnVTl46OgAo7w1hPQvM3sUjCC8dn8UicnvGTMY9+H8b7vW/UZF9Yjk68VdmuDagMkNFRn5Y2VJ AWXn3aiCFLm3QKRJXfuDtNsjAx4cjz/ShGZstA+IQPIMkr5zn8TNW3rYzIzt2lnuls1UgKjpUu6Nc loajoEUcNRUnNiL/E3dwIu/aPK51gjtp8wm4pS/XpPq05z+DuwVSBqwdnuqoPcs+XLkG0FVNDidz+ 4bbJWn1EMVtOeGhkAQgbbHEVFUCYylM7pKWPSHgTzhGiQ9d3D/lpepmGOjsb8pSEq7jLMlzENPcAE jGltk2a/20yUKUAWfLLLYg==; Date: Sat, 08 Jun 2024 15:38:17 +0300 Message-Id: <86h6e3d2yu.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: David Fussner <dfussner@HIDDEN> In-Reply-To: <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> (message from David Fussner on Wed, 5 Jun 2024 10:46:10 +0100) Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> <86v832z5lp.fsf@HIDDEN> <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, tsdh@HIDDEN, arash@HIDDEN, stefankangas@HIDDEN, dgutov@HIDDEN, monnier@HIDDEN 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: David Fussner <dfussner@HIDDEN> > Date: Wed, 5 Jun 2024 10:46:10 +0100 > Cc: Stefan Monnier <monnier@HIDDEN>, dgutov@HIDDEN, 53749 <at> debbugs.gnu.org, > ikumi@HIDDEN, arash@HIDDEN, stefankangas@HIDDEN, tsdh@HIDDEN > > Hi Eli, Stefan, and Dmitry, > > In case the changeset might prove acceptable for version 30, I attach > the latest patch, which clears out the code I was using to simplify > testing of the AUCTeX modes. I can if requested send a patch for the > manual etags tests, also, in case that might prove helpful down the > line. Thanks, I'm still waiting for answers to my question: > On Sat, 25 May 2024 at 12:01, Eli Zaretskii <eliz@HIDDEN> wrote: > > > > How should we proceed about this bug report? Is David's last > > changeset acceptable or isn't it?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 5 Jun 2024 09:47:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 05 05:47:21 2024 Received: from localhost ([127.0.0.1]:47240 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sEnEl-0001i9-36 for submit <at> debbugs.gnu.org; Wed, 05 Jun 2024 05:47:21 -0400 Received: from mail-pj1-f44.google.com ([209.85.216.44]:52673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1sEnEi-0001hl-4a for 53749 <at> debbugs.gnu.org; Wed, 05 Jun 2024 05:47:18 -0400 Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-2c1b9152848so4569378a91.1 for <53749 <at> debbugs.gnu.org>; Wed, 05 Jun 2024 02:47:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1717580756; x=1718185556; 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=6xcB4dDywNWqrmS9WwCGbBnodSdryJgU1FXuZ1VjoVw=; b=jYS1sggxtwZ4iYRP04QFezIcng2kU17bR81dPf9Asd2uT9pW/pu+HWf1UATy7geXTE MQJ7qZNQpooaEiL+haOfs+ZGbQEZwi8wfUfzFRwyi1CPfg1Hf320Cpo6r8D1tiWo/fLy a4eyF5w4I0xMsuLRVcW3akhyl/mBRE3/Z4Sy7IVn4/DphOSCjxoGaXzVQ0w+A8m5VdTL yNjGNAlJKIpHbnSUfV3+7WedOSWL9ELthR+Wuo3Q1DATLVmwhzh329MRiMk+kGK4BjWd 6LT9EnKKMTp9DUl93YAs/VFsojVOyLyHCkHcV3rUTKQAvLgm8jnJJHfRMOv1CpUIezT6 GB2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717580756; x=1718185556; 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=6xcB4dDywNWqrmS9WwCGbBnodSdryJgU1FXuZ1VjoVw=; b=jein2bfNyvalg2ijotgOklgqLYnktEz9kUHtd4v1CN7FQDBDNMhpZoiZ5N2cpiur6d 8qqKK1t3EIPZGShagUXN0cu0ptMc323ND6k4SHn+65OtW72o1r8qrmKh+yQjmPf/ZAi8 TNi/tH5DgnD6rqdfLxjWidhrxT2ECdhR0118IcXM+vh7KpdXKUslDOS8BtKgnf+BA3tM TcyqNzB3e/m1iyQNj4lMild+NEGTtyKfcysFNBSR/LTX0qY89CJjd7pPrw6spa5MY6LU /UUw8n+tpb5zgO5+F9HjLIwS7CxPwP53a7M0VsJ9945vVZDxUwpxCEScRK4u3YC3oU1C uCvA== X-Forwarded-Encrypted: i=1; AJvYcCUjZBWrmFUFjDuVUS/AnLT8z8bH50dbotH1Ab96z5u1TMV2raDfMK27dBG2cTQuI0KyHAE/UIYGvgsvYsfvouZmgkLKEXo= X-Gm-Message-State: AOJu0YxA+XVu6Icy8v88LMJaU2D4Fliv8hhGyrxfOoaeMe4EGrXgDvdg B1g2TpdCyqx+BhcqY1bgnOlIrUjpGKg5nrojNKquiYFd2hH43HqzBmvAkSF5iMdMpgbW3M3DptL PmU3QOZcffrL0R2ufSjB+LGqgk78= X-Google-Smtp-Source: AGHT+IFZceVh8OD+9IzXkXCctIiPolst2kEpfgubEiHhGScC/KO8tIaAVofFkvDybiCArA+sJDNSkiImfogFtaD32wk= X-Received: by 2002:a17:90b:1018:b0:2c1:a052:d6b4 with SMTP id 98e67ed59e1d1-2c27db1fc28mr1868853a91.27.1717580756180; Wed, 05 Jun 2024 02:45:56 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> <86v832z5lp.fsf@HIDDEN> In-Reply-To: <86v832z5lp.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 5 Jun 2024 10:46:10 +0100 Message-ID: <CADF+Rtjn52wJ2ikWcVaw8gBzKV9PGqjnSEb7+8tiifi=LzyAbg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Eli Zaretskii <eliz@HIDDEN> Content-Type: multipart/mixed; boundary="000000000000d8a2b5061a216eeb" X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, tsdh@HIDDEN, arash@HIDDEN, stefankangas@HIDDEN, dgutov@HIDDEN, Stefan Monnier <monnier@HIDDEN> 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 (-) --000000000000d8a2b5061a216eeb Content-Type: text/plain; charset="UTF-8" Hi Eli, Stefan, and Dmitry, In case the changeset might prove acceptable for version 30, I attach the latest patch, which clears out the code I was using to simplify testing of the AUCTeX modes. I can if requested send a patch for the manual etags tests, also, in case that might prove helpful down the line. Best, David. On Sat, 25 May 2024 at 12:01, Eli Zaretskii <eliz@HIDDEN> wrote: > > How should we proceed about this bug report? Is David's last > changeset acceptable or isn't it? > > > From: Stefan Monnier <monnier@HIDDEN> > > Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner > > <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, > > stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii > > <eliz@HIDDEN> > > Date: Sun, 19 May 2024 22:38:45 -0400 > > > > >> Hmm... not sure it's worth the trouble, then. > > >> Also, it might be worth trying to see where those 4-10% are spent: this > > >> is done in a temp buffer where there should presumably be very little > > >> need for before/after-change-functions, so maybe we can get rid of the > > >> specific offenders rather than inhibit all modification hooks. > > > Given the relatively low percentages, it might be difficult to glance from > > > a profiler report. I was assuming the time was mostly spent in > > > syntax-ppss-flush-cache, but the function is pretty simple. > > > > Rather than a profiler report, maybe a better approach would be to > > remove things from the non-inhibited-modification-hooks paths and see > > how/if they change the performance. > > E.g. replace the `inhibit-modification-hooks` binding by one that binds > > `before/after-change-functions` to nil. > > > > >> I wonder what we do during those 20% of the time if the buffer is left > > >> in fundamental-mode. > > > Good question. > > > > It's probably the better case to investigate since it might be easier to > > see the effects. > > > > >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? > > >>> The other two are used while the contents of the Xref buffer are printed (or > > >>> re-printed), so there's none of the syntax-ppss complications there. The > > >>> performance difference is 8.5% in my last measurement. > > >> Is this 8.5% of a function that's fast anyway of 8.5% of a function > > >> which takes a fair bit of time? > > > When there are a lot of matches, it can take some time. Note that 100% in > > > this case is the whole list-files-do-search-print-results pipeline, not just > > > the printing phase. So printing is sped up by more than 8% (my last test > > > says it's by 27%). > > > > I guess during printing if it's done in many small steps we may indeed > > run modification hooks many times, so that could explain the > > higher percentage. > > > > It still seems hard to justify 27% since those modification hooks should > > usually do nothing, AFAICT. Maybe there's something silly going on. > > > > > > Stefan > > > > --000000000000d8a2b5061a216eeb Content-Type: text/x-patch; charset="US-ASCII"; name="0004-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0004-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lx1n84cf0> X-Attachment-Id: f_lx1n84cf0 RnJvbSBkMjk2MTI2ZjM2YWFiY2FhMzBlNDMxNDBkMWM5YjdjMGUyOTEyMzUzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCA1IEp1biAyMDI0IDEwOjI2OjE4ICswMTAwClN1YmplY3Q6IFtQQVRDSF0g UHJvdmlkZSBhIG1vZGlmaWVkIHhyZWYgYmFja2VuZCBmb3IgVGVYIGJ1ZmZlcnMKCiogbGliLXNy Yy9ldGFncy5jIChUZVhfY29tbWFuZHMpOiBJbXByb3ZlIHBhcnNpbmcgb2YgY29tbWFuZHMgaW4g VGVYCmJ1ZmZlcnMuCihURVhfZGVmZW52KTogRXhwYW5kIGxpc3Qgb2YgY29tbWFuZHMgdG8gdGFn IGJ5IGRlZmF1bHQgaW4gVGVYCmJ1ZmZlcnMuCihUZVhfaGVscCk6CiogZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkgKFRhZyBTeW50YXgpOiBEb2N1bWVudCBuZXcgdGFnZ2VkCmNvbW1hbmRzLgoo SWRlbnRpZmllciBTZWFyY2gpOiBBZGQgbm90ZSBhYm91dCBzZW1hbnRpYy1zeW1yZWYtZmlsZXBh dHRlcm4tYWxpc3QsCmF1dG8tbW9kZS1hbGlzdCwgYW5kIHhyZWYtZmluZC1yZWZlcmVuY2VzLgoK KiBsaXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCAodGV4LWZvbnQtbG9jay1zdXNjcmlwdCk6IFRl c3QgZm9yCnVuZGVyc2NvcmUgaW4gZXhwbDMgZmlsZXMgYW5kIHJlZ2lvbnMsIGRpc2FibGUgc3Vi c2NyaXB0IGZhY2UgdGhlcmUuCih0ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uKTogU2V0IHVwIHhy ZWYgYmFja2VuZCBmb3IgaW4tdHJlZSBUZVgKbW9kZXMuIERldGVjdCBleHBsMyBmaWxlcywgYW5k IGluIG90aGVycyBzZXQgdXAgYSBsaXN0IG9mIGV4cGwzCnJlZ2lvbnMuCih0ZXgtZXhwbC1idWZm ZXItcGFyc2UpOiBOZXcgZnVuY3Rpb24gY2FsbGVkIGluIHByZXZpb3VzLgoodGV4LWV4cGwtYnVm ZmVyLXApOiBOZXcgdmFyIHRvIGhvbGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC1leHBs LXJlZ2lvbi1zZXQpOiBOZXcgZnVuY3Rpb24gYWRkZWQgdG8KJ3N5bnRheC1wcm9wZXJ0aXplLWV4 dGVuZC1yZWdpb24tZnVuY3Rpb25zJyBob29rLgoodGV4LWV4cGwtcmVnaW9uLWxpc3QpOiBOZXcg dmFyIHRvIGhvbGQgdGhlIHJlc3VsdCBvZiBwcmV2aW91cy4KKHRleC0teHJlZi1iYWNrZW5kKTog TmV3IGZ1bmN0aW9uIHRvIGlkZW50aWZ5IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLXRoaW5nLWF0 LXBvaW50LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRw dC0tZW5kLW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1 bmN0aW9ucyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4 LXRoaW5nYXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYt YmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBw cm92aWRlCnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVu dGlmaWVyLWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0 aW9uLWlnbm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQt YXByb3Bvcyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYg YmFja2VuZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNh bGwgdGhlIGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2 YW50IGZpbGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRp emUtZnVuY3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMs IHRleC14cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3Vz LgoodGV4LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoo dGV4LS14cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJz IGZvciBzYW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxp Yi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgMTkxICsrKysrKysrKysrKysrKysrKy0tCiBsaXNw L3RleHRtb2Rlcy90ZXgtbW9kZS5lbCB8IDM1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKystCiAzIGZpbGVzIGNoYW5nZWQsIDU2NyBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSBiL2RvYy9lbWFj cy9tYWludGFpbmluZy50ZXhpCmluZGV4IDU3OTA5OGM4MWIxLi5hMDY0MTAzYWEyNSAxMDA2NDQK LS0tIGEvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWlu aW5nLnRleGkKQEAgLTI1MjksNiArMjUyOSwxNSBAQCBJZGVudGlmaWVyIFNlYXJjaAogcmVmZXJl bmNlZC4gIFRoZSBYUkVGIG1vZGUgY29tbWFuZHMgYXJlIGF2YWlsYWJsZSBpbiB0aGlzIGJ1ZmZl ciwgc2VlCiBAcmVme1hyZWYgQ29tbWFuZHN9LgogCitXaGVuIGludm9rZWQgaW4gYSBidWZmZXIg d2hvc2UgbWFqb3IgbW9kZSB1c2VzIHRoZSBAY29kZXtldGFnc30gYmFja2VuZCwKK0BrYmR7TS0/ fSBzZWFyY2hlcyBmaWxlcyBhbmQgYnVmZmVycyB3aG9zZSBtYWpvciBtb2RlIG1hdGNoZXMgdGhh dCBvZgordGhlIG9yaWdpbmFsIGJ1ZmZlci4gIEl0IGd1ZXNzZXMgdGhhdCBtb2RlIGZyb20gZmls ZSBleHRlbnNpb25zLCBzbyBpZgorQGtiZHtNLT99IHNlZW1zIHRvIGJlIHNraXBwaW5nIHJlbGV2 YW50IGJ1ZmZlcnMgb3IgZmlsZXMsIHRyeQorY3VzdG9taXppbmcgZWl0aGVyIHRoZSB2YXJpYWJs ZSBAY29kZXtzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3R9CisoaWYgeW91ciBidWZm ZXIncyBtYWpvciBtb2RlIGFscmVhZHkgaGFzIGFuIGVudHJ5IGluIGl0KSwgb3IKK0Bjb2Rle2F1 dG8tbW9kZS1hbGlzdH0gKGlmIG5vdCksIHRoZXJlYnkgaW5mb3JtaW5nIEBjb2Rle3hyZWZ9IG9m IHRoZQorbWlzc2luZyBleHRlbnNpb25zIChAcHhyZWZ7Q2hvb3NpbmcgTW9kZXN9KS4KKwogQHZp bmRleCB4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmCiAgIElmIHRoZSB2YWx1ZSBvZiB0aGUg dmFyaWFibGUgQGNvZGV7eHJlZi1hdXRvLWp1bXAtdG8tZmlyc3QteHJlZn0gaXMKIEBjb2Rle3R9 LCBAY29kZXt4cmVmLWZpbmQtcmVmZXJlbmNlc30gYXV0b21hdGljYWxseSBqdW1wcyB0byB0aGUg Zmlyc3QKQEAgLTI3NDcsMTAgKzI3NTYsMzIgQEAgVGFnIFN5bnRheAogQGl0ZW0KIEluIEBMYVRl WHt9IGRvY3VtZW50cywgdGhlIGFyZ3VtZW50cyBmb3IgQGNvZGV7XGNoYXB0ZXJ9LAogQGNvZGV7 XHNlY3Rpb259LCBAY29kZXtcc3Vic2VjdGlvbn0sIEBjb2Rle1xzdWJzdWJzZWN0aW9ufSwKLUBj b2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJlZn0sIEBjb2Rle1xjaXRlfSwKLUBj b2Rle1xiaWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LCBAY29kZXtcZW50 cnl9LAotQGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xuZXdjb21tYW5kfSwgQGNv ZGV7XHJlbmV3Y29tbWFuZH0sCi1AY29kZXtcbmV3ZW52aXJvbm1lbnR9IGFuZCBAY29kZXtccmVu ZXdlbnZpcm9ubWVudH0gYXJlIHRhZ3MuCitAY29kZXtcZXFub30sIEBjb2Rle1xsYWJlbH0sIEBj b2Rle1xyZWZ9LCBAY29kZXtcUmVmfSwgQGNvZGV7XGZvb3RyZWZ9LAorQGNvZGV7XGNpdGV9LCBA Y29kZXtcYmliaXRlbX0sIEBjb2Rle1xwYXJ0fSwgQGNvZGV7XGFwcGVuZGl4fSwKK0Bjb2Rle1xl bnRyeX0sIEBjb2Rle1xpbmRleH0sIEBjb2Rle1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rle1xn ZGVmfSwKK0Bjb2Rle1x4ZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21t YW5kfSwKK0Bjb2Rle1xuZXdlbnZpcm9ubWVudH0sIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSwK K0Bjb2Rle1xEZWNsYXJlUm9idXN0Q29tbWFuZH0sIEBjb2Rle1xuZXdyb2J1c3RjbWR9LAorQGNv ZGV7XHJlbmV3cm9idXN0Y21kfSwgQGNvZGV7XHByb3ZpZGVjb21tYW5kfSwKK0Bjb2Rle1xwcm92 aWRlcm9idXN0Y21kfSwgQGNvZGV7XE5ld0RvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUmVuZXdE b2N1bWVudENvbW1hbmR9LCBAY29kZXtcUHJvdmlkZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtc RGVjbGFyZURvY3VtZW50Q29tbWFuZH0sIEBjb2Rle1xOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21t YW5kfSwKK0Bjb2Rle1xSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFBy b3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJlRXhwYW5kYWJs ZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcTmV3RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rl e1xSZW5ld0RvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XFByb3ZpZGVEb2N1bWVudEVudmly b25tZW50fSwgQGNvZGV7XERlY2xhcmVEb2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xjc2Rl Zn0sIEBjb2Rle1xjc2VkZWZ9LCBAY29kZXtcY3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29k ZXtcY3NsZXRjc30sIEBjb2Rle1xjc2xldH0sIEBjb2Rle1xsZXRjc30sIEBjb2Rle1xsZXR9LAor QGNvZGV7XGNzX25ld19wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X3Byb3RlY3RlZH0s CitAY29kZXtcY3NfbmV3X25vcGFyfSwgQGNvZGV7XGNzX25ld19lcX0sIEBjb2Rle1xjc19uZXd9 LAorQGNvZGV7XGNzX3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X3Byb3RlY3Rl ZH0sCitAY29kZXtcY3Nfc2V0X25vcGFyfSwgQGNvZGV7XGNzX3NldF9lcX0sIEBjb2Rle1xjc19z ZXR9LAorQGNvZGV7XGNzX2dzZXRfcHJvdGVjdGVkX25vcGFyfSwgQGNvZGV7XGNzX2dzZXRfcHJv dGVjdGVkfSwKK0Bjb2Rle1xjc19nc2V0X25vcGFyfSwgQGNvZGV7XGNzX2dzZXRfZXF9LCBAY29k ZXtcY3NfZ3NldH0sCitAY29kZXtcY3NfZ2VuZXJhdGVfZnJvbV9hcmdfY291bnR9LCBhbmQgQGNv ZGV7XGNzX2dlbmVyYXRlX3ZhcmlhbnR9IGFyZQordGFncy4gIFNvIHRvbyBhcmUgdGhlIGFyZ3Vt ZW50cyBvZiBhbnkgc3RhcnJlZCB2YXJpYW50cyBvZiB0aGVzZQorY29tbWFuZHMuCiAKIE90aGVy IGNvbW1hbmRzIGNhbiBtYWtlIHRhZ3MgYXMgd2VsbCwgaWYgeW91IHNwZWNpZnkgdGhlbSBpbiB0 aGUKIGVudmlyb25tZW50IHZhcmlhYmxlIEBlbnZ7VEVYVEFHU30gYmVmb3JlIGludm9raW5nIEBj b21tYW5ke2V0YWdzfS4gIFRoZQpkaWZmIC0tZ2l0IGEvbGliLXNyYy9ldGFncy5jIGIvbGliLXNy Yy9ldGFncy5jCmluZGV4IDAzYmM1NWRlMDNkLi42YmM3MzRlN2RmMCAxMDA2NDQKLS0tIGEvbGli LXNyYy9ldGFncy5jCisrKyBiL2xpYi1zcmMvZXRhZ3MuYwpAQCAtNzkzLDExICs3OTMsMjcgQEAg I2RlZmluZSBTVERJTiAweDEwMDEJCS8qIHJldHVybmVkIGJ5IGdldG9wdF9sb25nIG9uIC0tcGFy c2Utc3RkaW4gKi8KIHN0YXRpYyBjb25zdCBjaGFyICpUZVhfc3VmZml4ZXMgW10gPQogICB7ICJi aWIiLCAiY2xvIiwgImNscyIsICJsdHgiLCAic3R5IiwgIlRlWCIsICJ0ZXgiLCBOVUxMIH07CiBz dGF0aWMgY29uc3QgY2hhciBUZVhfaGVscCBbXSA9Ci0iSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3Vt ZW50IG9mIGFueSBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsXG5cCi0nXFxzZWN0aW9uJywg J1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxu XAotJ1xccmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgn LCAnXFxlbnRyeScsXG5cCi0nXFxpbmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxy ZW5ld2NvbW1hbmQnLFxuXAotJ1xcbmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1l bnQnIGlzIGEgdGFnLlxuXAorIkluIExhVGVYIHRleHQsIHRoZSBhcmd1bWVudCBvZiB0aGUgY29t bWFuZHMgJ1xcY2hhcHRlcicsICdcXHNlY3Rpb24nLFxuXAorJ1xcc3Vic2VjdGlvbicsICdcXHN1 YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLCAnXFxyZWYnLFxuXAorJ1xcUmVmJywg J1xcZm9vdHJlZicsICdcXGNpdGUnLCAnXFxiaWJpdGVtJywgJ1xccGFydCcsICdcXGFwcGVuZGl4 JyxcblwKKydcXGVudHJ5JywgJ1xcaW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZics ICdcXHhkZWYnLFxuXAorJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29tbWFuZCcsICdcXG5ld3Jv YnVzdGNtZCcsICdcXHJlbmV3cm9idXN0Y21kJyxcblwKKydcXG5ld2Vudmlyb25tZW50JywgJ1xc cmVuZXdlbnZpcm9ubWVudCcsICdcXERlY2xhcmVSb2J1c3RDb21tYW5kJyxcblwKKydcXHByb3Zp ZGVjb21tYW5kJywgJ1xccHJvdmlkZXJvYnVzdGNtZCcsICdcXE5ld0RvY3VtZW50Q29tbWFuZCcs XG5cCisnXFxSZW5ld0RvY3VtZW50Q29tbWFuZCcsICdcXFByb3ZpZGVEb2N1bWVudENvbW1hbmQn LFxuXAorJ1xcRGVjbGFyZURvY3VtZW50Q29tbWFuZCcsICdcXE5ld0V4cGFuZGFibGVEb2N1bWVu dENvbW1hbmQnLFxuXAorJ1xcUmVuZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kJywgJ1xcUHJv dmlkZUV4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLFxuXAorJ1xcRGVjbGFyZUV4cGFuZGFibGVE b2N1bWVudENvbW1hbmQnLCAnXFxOZXdEb2N1bWVudEVudmlyb25tZW50JyxcblwKKydcXFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudCcsICdcXFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50JyxcblwK KydcXERlY2xhcmVEb2N1bWVudEVudmlyb25tZW50JywnXFxjc2RlZicsICdcXGNzZWRlZicsICdc XGNzZ2RlZicsXG5cCisnXFxjc3hkZWYnLCAnXFxjc2xldGNzJywgJ1xcY3NsZXQnLCAnXFxsZXRj cycsICdcXGxldCcsXG5cCisnXFxjc19uZXdfcHJvdGVjdGVkX25vcGFyJywgJ1xcY3NfbmV3X3By b3RlY3RlZCcsICdcXGNzX25ld19ub3BhcicsXG5cCisnXFxjc19uZXdfZXEnLCAnXFxjc19uZXcn LCAnXFxjc19zZXRfcHJvdGVjdGVkX25vcGFyJyxcblwKKydcXGNzX3NldF9wcm90ZWN0ZWQnLCAn XFxjc19zZXRfbm9wYXInLCAnXFxjc19zZXRfZXEnLCAnXFxjc19zZXQnLFxuXAorJ1xcY3NfZ3Nl dF9wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19nc2V0X3Byb3RlY3RlZCcsICdcXGNzX2dzZXRfbm9w YXInLFxuXAorJ1xcY3NfZ3NldF9lcScsICdcXGNzX2dzZXQnLCAnXFxjc19nZW5lcmF0ZV9mcm9t X2FyZ19jb3VudCcsIG9yXG5cCisnXFxjc19nZW5lcmF0ZV92YXJpYW50JyBpcyBhIHRhZy4gIFNv IGlzIHRoZSBhcmd1bWVudCBvZiBhbnkgc3RhcnJlZFxuXAordmFyaWFudCBvZiB0aGVzZSBjb21t YW5kcy5cblwKIFxuXAogT3RoZXIgY29tbWFuZHMgY2FuIGJlIHNwZWNpZmllZCBieSBzZXR0aW5n IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXAogJ1RFWFRBR1MnIHRvIGEgY29sb24tc2VwYXJh dGVkIGxpc3QgbGlrZSwgZm9yIGV4YW1wbGUsXG5cCkBAIC01NzQwLDExICs1NzU2LDI1IEBAIFNj aGVtZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIHN0YXRpYyBsaW5lYnVmZmVyICpURVhfdG9rdGFi ID0gTlVMTDsgLyogVGFibGUgd2l0aCB0YWcgdG9rZW5zICovCiAKIC8qIERlZmF1bHQgc2V0IG9m IGNvbnRyb2wgc2VxdWVuY2VzIHRvIHB1dCBpbnRvIFRFWF90b2t0YWIuCi0gICBUaGUgdmFsdWUg b2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuICAqLworICAg VGhlIHZhbHVlIG9mIGVudmlyb25tZW50IHZhciBURVhUQUdTIGlzIHByZXBlbmRlZCB0byB0aGlz LgorICAgKDIwMjQpIEFkZCB2YXJpYW50cyBvZiAnXGRlZicsIHNvbWUgYWRkaXRpb25hbCBMYVRl WCAoYW5kCisgICBmb3JtZXIgeHBhcnNlKSBjb21tYW5kcywgY29tbW9uIHZhcmlhbnRzIGZyb20g dGhlCisgICAnZXRvb2xib3gnIHBhY2thZ2UsIGFuZCB0aGUgbWFpbiBleHBsMyBjb21tYW5kcy4g Ki8KIHN0YXRpYyBjb25zdCBjaGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246 c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpw YXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpu ZXdlbnZpcm9ubWVudDpyZW5ld2Vudmlyb25tZW50IjsKKzpsYWJlbDpyZWY6UmVmOmZvb3RyZWY6 Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vic3Vic2VjdGlvbjplcW5vOmNpdGVcCis6Ymli aXRlbTpwYXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4OmRlZjplZGVmOmdkZWY6eGRlZjpuZXdjb21t YW5kOnJlbmV3Y29tbWFuZFwKKzpuZXdlbnZpcm9ubWVudDpyZW5ld2Vudmlyb25tZW50OkRlY2xh cmVSb2J1c3RDb21tYW5kOnJlbmV3cm9idXN0Y21kXAorOm5ld3JvYnVzdGNtZDpwcm92aWRlY29t bWFuZDpwcm92aWRlcm9idXN0Y21kOk5ld0RvY3VtZW50Q29tbWFuZFwKKzpSZW5ld0RvY3VtZW50 Q29tbWFuZDpQcm92aWRlRG9jdW1lbnRDb21tYW5kOkRlY2xhcmVEb2N1bWVudENvbW1hbmRcCis6 TmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1h bmRcCis6UHJvdmlkZUV4cGFuZGFibGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZUV4cGFuZGFibGVE b2N1bWVudENvbW1hbmRcCis6TmV3RG9jdW1lbnRFbnZpcm9ubWVudDpSZW5ld0RvY3VtZW50RW52 aXJvbm1lbnRcCis6UHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQ6RGVjbGFyZURvY3VtZW50RW52 aXJvbm1lbnQ6Y3NkZWZcCis6Y3NlZGVmOmNzZ2RlZjpjc3hkZWY6Y3NsZXRjczpjc2xldDpsZXRj czpsZXQ6Y3NfbmV3X3Byb3RlY3RlZF9ub3BhclwKKzpjc19uZXdfcHJvdGVjdGVkOmNzX25ld19u b3Bhcjpjc19uZXdfZXE6Y3NfbmV3OmNzX3NldF9wcm90ZWN0ZWRfbm9wYXJcCis6Y3Nfc2V0X3By b3RlY3RlZDpjc19zZXRfbm9wYXI6Y3Nfc2V0X2VxOmNzX3NldDpjc19nc2V0X3Byb3RlY3RlZF9u b3BhclwKKzpjc19nc2V0X3Byb3RlY3RlZDpjc19nc2V0X25vcGFyOmNzX2dzZXRfZXE6Y3NfZ3Nl dFwKKzpjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudDpjc19nZW5lcmF0ZV92YXJpYW50IjsKIAog c3RhdGljIHZvaWQgVEVYX2RlY29kZV9lbnYgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsK IApAQCAtNTgwMywxOSArNTgzMywxMzkgQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJICAg ICAgewogCQljaGFyICpwOwogCQlwdHJkaWZmX3QgbmFtZWxlbiwgbGluZWxlbjsKLQkJYm9vbCBv cGdycCA9IGZhbHNlOworCQlib29sIG9wZ3JwID0gZmFsc2UsIG9uZV9lc2MgPSBmYWxzZSwgaXNf ZXhwbHRocmVlID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBrZXktPmxlbik7 CisKKwkJLyogMS4gVGhlIGNhbm9uaWNhbCBleHBsMyBzeW50YXggbG9va3Mgc29tZXRoaW5nIGxp a2UgdGhpczoKKwkJICAgXGNzX25ldzpOcG4gXF9faG9va190bF9ncHV0Ok5uIHsgXEVSUk9SIH0u ICBGaXJzdCwgaWYgd2UKKwkJICAgd2FudCB0byB0YWcgYW55IHN1Y2ggY29tbWFuZHMsIHdlIGlu Y2x1ZGUgb25seSB0aGUgcGFydAorCQkgICBiZWZvcmUgdGhlIGNvbG9uIChjc19uZXcpIGluIFRF WF9kZWZlbnYgb3IgVEVYVEFHUy4gIFNlY29uZCwKKwkJICAgZXRhZ3Mgc2tpcHMgdGhlIGFyZ3Vt ZW50IHNwZWNpZmllciAoaW5jbHVkaW5nIHRoZSBjb2xvbikKKwkJICAgYWZ0ZXIgdGhlIHRhZyB0 b2tlbiwgc28gdGhhdCBpdCBkb2Vzbid0IGJlY29tZSB0aGUgdGFnIG5hbWUuCisJCSAgIFRoaXJk LCB3ZSBzZXQgdGhlIGJvb2xlYW4gJ2lzX2V4cGx0aHJlZScgdG8gdHJ1ZSBzbyB0aGF0IHdlCisJ CSAgIGNhbiByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmllciBmcm9tIHRoZSBhY3R1YWwgdGFn IG5hbWUKKwkJICAgKF9faG9va190bF9ncHV0KS4gIFRoaXMgYWxsIGFsbG93cyB1cyB0byBpbmNs dWRlIGV4cGwzCisJCSAgIGNvbnN0cnVjdHMgaW4gVEVYX2RlZmVudiBvciBpbiB0aGUgZW52aXJv bm1lbnQgdmFyaWFibGUKKwkJICAgVEVYVEFHUyB3aXRob3V0IHJlcXVpcmluZyBhIGNoYW5nZSBv ZiBzZXBhcmF0b3IsIGFuZCBpdCBhbHNvCisJCSAgIGFsbG93cyB1cyB0byBmaW5kIHRoZSBkZWZp bml0aW9uIG9mIHZhcmlhbnQgY29tbWFuZHMgKHdpdGgKKwkJICAgZGlmZmVyZW50IGFyZ3VtZW50 IHNwZWNpZmllcnMpIGRlZmluZWQgdXNpbmcsIGZvciBleGFtcGxlLAorCQkgICBcY3NfZ2VuZXJh dGVfdmFyaWFudDpObi4gIFBsZWFzZSBub3RlIHRoYXQgdGhlIGV4cGwzIHNwZWMKKwkJICAgcmVx dWlyZXMgZXRhZ3MgdG8gcGF5IG1vcmUgYXR0ZW50aW9uIHRvIHdoaXRlc3BhY2UgaW4gdGhlCisJ CSAgIGNvZGUuCisKKwkJICAgMi4gV2UgYWxzbyBhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgYXN0 ZXJpc2sgZnJvbSBzdGFycmVkCisJCSAgIHZhcmlhbnRzIG9mIGFsbCBjb21tYW5kcywgd2l0aG91 dCB0aGUgbmVlZCB0byBpbmNsdWRlIHRoZQorCQkgICBzdGFycmVkIGNvbW1hbmRzIGV4cGxpY2l0 bHkgaW4gVEVYX2RlZmVudiBvciBURVhUQUdTLiAqLworCQlpZiAoKmNwID09ICc6JykKKwkJICB7 CisJCSAgICB3aGlsZSAoIWNfaXNzcGFjZSAoKmNwKSAmJiAqY3AgIT0gVEVYX29wZ3JwKQorCQkg ICAgICBjcCsrOworCQkgICAgY3AgPSBza2lwX3NwYWNlcyAoY3ApOworCQkgICAgaXNfZXhwbHRo cmVlID0gdHJ1ZTsKKwkJICB9CisJCWVsc2UgaWYgKCpjcCA9PSAnKicpCisJCSAgY3ArKzsKKwor CQkvKiBTa2lwIHRoZSBvcHRpb25hbCBhcmd1bWVudHMgdG8gY29tbWFuZHMgaW4gdGhlIHRhZ3Mg bGlzdCBzbworCQkgICB0aGF0IHRoZXNlIGFyZ3VtZW50cyBkb24ndCBlbmQgdXAgYXMgdGhlIG5h bWUgb2YgdGhlIHRhZy4KKwkJICAgVGhlIG5hbWUgd2lsbCBpbnN0ZWFkIGNvbWUgZnJvbSB0aGUg YXJndW1lbnQgaW4gY3VybHkgYnJhY2VzCisJCSAgIHRoYXQgZm9sbG93cyB0aGUgb3B0aW9uYWwg b25lcy4gIFRoZSAnXGxldCcgY29tbWFuZCBnZXRzCisJCSAgIHNwZWNpYWwgdHJlYXRtZW50LiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJworCQkgICAgICAgJiYgIXN0cmVx IChrZXktPmJ1ZmZlciwgImxldCIpKQorCQkgIHsKKwkJICAgIGlmICgqY3AgPT0gJ1snKQorCQkg ICAgICB7CisJCQl3aGlsZSAoKmNwICE9ICddJyAmJiAqY3AgIT0gJ1wwJyAmJiAqY3AgIT0gJyUn KQorCQkJICBjcCsrOworCQkgICAgICB9CisJCSAgICBlbHNlIGlmICgqY3AgPT0gJygnKQorCQkg ICAgICB7CisJCQl3aGlsZSAoKmNwICE9ICcpJyAmJiAqY3AgIT0gJ1wwJyAmJiAqY3AgIT0gJyUn KQorCQkJICBjcCsrOworCQkgICAgICB9CisJCSAgICBlbHNlIGlmICgqY3AgPT0gJ10nIHx8ICpj cCA9PSAnKScpCisJCSAgICAgIGNwKys7CisJCSAgICBlbHNlCisJCSAgICAgIGJyZWFrOworCQkg IH0KIAkJaWYgKCpjcCA9PSBURVhfb3BncnApCiAJCSAgewogCQkgICAgb3BncnAgPSB0cnVlOwog CQkgICAgY3ArKzsKKwkJICAgIGNwID0gc2tpcF9zcGFjZXMgKGNwKTsgLyogRm9yIGV4cGwzIGNv ZGUuICovCiAJCSAgfQorCisJCS8qIFJlbW92aW5nIHRoZSBUZVggZXNjYXBlIGNoYXJhY3RlciBm cm9tIHRhZyBuYW1lcyBzaW1wbGlmaWVzCisJCSAgIHRoaW5ncyBmb3IgZWRpdG9ycyBmaW5kaW5n IHRhZ2dlZCBjb21tYW5kcyBpbiBUZVggYnVmZmVycy4KKwkJICAgVGhpcyBhcHBsaWVzIHRvIEVt YWNzIGJ1dCBhbHNvIHRvIHRoZSB0YWctZmluZGluZyBiZWhhdmlvcgorCQkgICBvZiBhdCBsZWFz dCBzb21lIG9mIHRoZSBlZGl0b3JzIHRoYXQgdXNlIGN0YWdzLCB0aG91Z2ggaW4KKwkJICAgdGhl IGxhdHRlciBjYXNlIHRoaXMgd2lsbCByZW1haW4gc3Vib3B0aW1hbC4gIFRoZQorCQkgICB1bmRv Y3VtZW50ZWQgY3RhZ3Mgb3B0aW9uICctLW5vLWR1cGxpY2F0ZXMnIG1heSBoZWxwLiAqLworCQlp ZiAoKmNwID09IFRFWF9lc2MpCisJCSAgeworCQkgICAgY3ArKzsKKwkJICAgIG9uZV9lc2MgPSB0 cnVlOworCQkgIH0KKworCQkvKiBUZXN0aW5nICFjX2lzc3BhY2UgJiYgIWNfaXNwdW5jdCBpcyBz aW1wbGVyLCBidXQgaGFsdHMKKwkJICAgcHJvY2Vzc2luZyBhdCB0b28gbWFueSBwbGFjZXMuICBU aGUgbGlzdCBhcyBpdCBzdGFuZHMgdHJpZXMKKwkJICAgYm90aCB0byBlbnN1cmUgdGhhdCB0YWcg bmFtZXMgd2lsbCBkZXJpdmUgZnJvbSBtYWNybyBuYW1lcworCQkgICByYXRoZXIgdGhhbiBmcm9t IG9wdGlvbmFsIHBhcmFtZXRlcnMgdG8gdGhvc2UgbWFjcm9zLCBhbmQKKwkJICAgYWxzbyB0byBy ZXR1cm4gZmluZGFibGUgbmFtZXMgd2hpbGUgc3RpbGwgYWxsb3dpbmcgZm9yCisJCSAgIHVub3J0 aG9kb3ggY29uc3RydWN0cy4gKi8KIAkJZm9yIChwID0gY3A7Ci0JCSAgICAgKCFjX2lzc3BhY2Ug KCpwKSAmJiAqcCAhPSAnIycgJiYKLQkJICAgICAgKnAgIT0gVEVYX29wZ3JwICYmICpwICE9IFRF WF9jbGdycCk7CisJCSAgICAgKCFjX2lzc3BhY2UgKCpwKSAmJiAqcCAhPSAnIycgJiYgKnAgIT0g Jz0nICYmCisJCSAgICAgICpwICE9ICdbJyAmJiAqcCAhPSAnKCcgJiYgKnAgIT0gVEVYX29wZ3Jw ICYmCisJCSAgICAgICpwICE9IFRFWF9jbGdycCAmJiAqcCAhPSAnIicgJiYgKnAgIT0gJ1wnJyAm JgorCQkgICAgICAqcCAhPSAnJScgJiYgKnAgIT0gJywnICYmICpwICE9ICd8JyAmJiAqcCAhPSAn JCcpOwogCQkgICAgIHArKykKLQkJICBjb250aW51ZTsKKwkJICAvKiBJbiBleHBsMyBjb2RlIHdl IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWNhdGlvbiBmcm9tCisJCSAgICAgdGhlIHRhZyBu YW1lLiAgTW9yZSBnZW5lcmFsbHkgd2UgYWxsb3cgb25seSBvbmUgKGRlbGV0ZWQpCisJCSAgICAg ZXNjYXBlIGNoYXIgaW4gYSB0YWcgbmFtZSwgd2hpY2ggKHByaW1hcmlseSkgZW5hYmxlcworCQkg ICAgIHRhZ2dpbmcgYSBUZVggY29tbWFuZCdzIGRpZmZlcmVudCwgcG9zc2libHkgdGVtcG9yYXJ5 LAorCQkgICAgICdcbGV0JyBiaW5kaW5ncy4gKi8KKwkJICBpZiAoaXNfZXhwbHRocmVlICYmICpw ID09ICc6JykKKwkJICAgIGJyZWFrOworCQkgIGVsc2UgaWYgKCpwID09IFRFWF9lc2MpCisJCSAg ICB7IC8qIFNlY29uZCBwYXJ0IG9mIHRlc3QgaXMgZm9yLCBlLmcuLCBcY3NsZXQuICovCisJCSAg ICAgIGlmICghb25lX2VzYyAmJiAhb3BncnApCisJCQl7CisJCQkgIG9uZV9lc2MgPSB0cnVlOwor CQkJICBjb250aW51ZTsKKwkJCX0KKwkJICAgICAgZWxzZQorCQkJYnJlYWs7CisJCSAgICB9CisJ CSAgZWxzZQorCQkgICAgY29udGludWU7CisJCS8qIEZvciBUZVggZmlsZXMsIHRhZ3Mgd2l0aG91 dCBhIG5hbWUgYXJlIGJhc2ljYWxseSBjcnVmdCwgYW5kCisJCSAgIGluIHNvbWUgc2l0dWF0aW9u cyB0aGV5IGNhbiBwcm9kdWNlIHNwdXJpb3VzIGFuZCBjb25mdXNpbmcKKwkJICAgbWF0Y2hlcy4g IFRyeSB0byBjYXRjaCBhcyBtYW55IGNhc2VzIGFzIHBvc3NpYmxlIHdoZXJlIGEKKwkJICAgY29t bWFuZCBuYW1lIGlzIG9mIHRoZSBmb3JtICdcKCcsIGJ1dCBhdm9pZCwgYXMgZmFyIGFzCisJCSAg IHBvc3NpYmxlLCB0aGUgc3B1cmlvdXMgbWF0Y2hlcy4gKi8KKwkJaWYgKHAgPT0gY3ApCisJCSAg eworCQkgICAgc3dpdGNoICgqcCkKKwkJICAgICAgeyAvKiBJbmNsdWRlID0/ICovCisJCSAgICAg IGNhc2UgJygnOiBjYXNlICdbJzogY2FzZSAnIic6IGNhc2UgJ1wnJzoKKwkJICAgICAgY2FzZSAn XFwnOiBjYXNlICchJzogY2FzZSAnPSc6IGNhc2UgJywnOgorCQkgICAgICBjYXNlICd8JzogY2Fz ZSAnJCc6CisJCQlwKys7CisJCQlicmVhazsKKwkJICAgICAgY2FzZSAneyc6IGNhc2UgJ30nOiBj YXNlICc8JzogY2FzZSAnPic6CisJCQlpZiAoIW9wZ3JwKQorCQkJICB7CisJCQkgICAgICBwKys7 CisJCQkgICAgICBpZiAoKnAgPT0gJ1wwJyB8fCAqcCA9PSAnJScpCisJCQkJZ290byB0ZXhfbmV4 dF9saW5lOworCQkJICB9CisJCQlicmVhazsKKwkJICAgICAgZGVmYXVsdDoKKwkJCWJyZWFrOwor CQkgICAgICB9CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNwOwogCQlsaW5lbGVuID0gbGIubGVu OwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkKQEAgLTU4MjQsOSArNTk3NCwxOCBA QCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkJICAgICAgcCsrOwogCQkgICAgbGluZWxlbiA9 IHAgLSBsYi5idWZmZXIgKyAxOwogCQkgIH0KLQkJbWFrZV90YWcgKGNwLCBuYW1lbGVuLCB0cnVl LAotCQkJICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7Ci0JCWdvdG8g dGV4X25leHRfbGluZTsgLyogV2Ugb25seSB0YWcgYSBsaW5lIG9uY2UgKi8KKwkJaWYgKG5hbWVs ZW4pCisJCSAgbWFrZV90YWcgKGNwLCBuYW1lbGVuLCB0cnVlLAorCQkJICAgIGxiLmJ1ZmZlciwg bGluZWxlbiwgbGluZW5vLCBsaW5lY2hhcm5vKTsKKwkJLyogTGluZXMgd2l0aCBtb3JlIHRoYW4g b25lIFxkZWYgb3IgXGxldCBhcmUgc3VycHJpc2luZ2x5CisJCSAgIGNvbW1vbiBpbiBUZVggZmls ZXMsIGVzcGVjaWFsbHkgaW4gdGhlIHN5c3RlbSBmaWxlcyB0aGF0CisJCSAgIGZvcm0gdGhlIGJh c2lzIG9mIHRoZSB2YXJpb3VzIFRlWCBmb3JtYXRzLiAgVGhpcyB0YWdzIHRoZW0KKwkJICAgYWxs LiAqLworCQkvKiBnb3RvIHRleF9uZXh0X2xpbmU7IC9cKiBXZSBvbmx5IHRhZyBhIGxpbmUgb25j ZSAqXC8gKi8KKwkJd2hpbGUgKCpjcCAhPSAnXDAnICYmICpjcCAhPSAnJScgJiYgKmNwICE9IFRF WF9lc2MpCisJCSAgY3ArKzsKKwkJaWYgKCpjcCAhPSBURVhfZXNjKQorCQkgIGdvdG8gdGV4X25l eHRfbGluZTsKIAkgICAgICB9CiAJfQogICAgIHRleF9uZXh0X2xpbmU6CmRpZmYgLS1naXQgYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCmlu ZGV4IDk3Yzk1MDI2N2M2Li5mYmYwODg0MDY5OSAxMDA2NDQKLS0tIGEvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKQEAgLTYzNiw2ICs2 MzYsMTQgQEAgdGV4LWZvbnQtbG9jay1rZXl3b3Jkcy0yCiAJICAgICAgMyAnKHRleC1mb250LWxv Y2stYXBwZW5kLXByb3AgJ2JvbGQpICdhcHBlbmQpKSkpKQogICAgIkdhdWR5IGV4cHJlc3Npb25z IHRvIGhpZ2hsaWdodCBpbiBUZVggbW9kZXMuIikKIAorKGRlZnZhci1sb2NhbCB0ZXgtZXhwbC1y ZWdpb24tbGlzdCBuaWwKKyAgIkxpc3Qgb2YgcmVnaW9uIGJvdW5kYXJpZXMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFjdGl2ZS4KK0l0IHdpbGwgYmUgbmlsIGluIGJ1ZmZlcnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFsd2F5cyBhY3RpdmUsIGUuZy4sCitleHBsMyBjbGFzc2VzIG9yIHBhY2thZ2Vz LiIpCisKKyhkZWZ2YXItbG9jYWwgdGV4LWV4cGwtYnVmZmVyLXAgbmlsCisgICJOb24tbmlsIGlu IGJ1ZmZlcnMgd2hlcmUgZXhwbDMgc3ludGF4IGlzIGFsd2F5cyBhY3RpdmUuIikKKwogKGRlZnVu IHRleC1mb250LWxvY2stc3VzY3JpcHQgKHBvcykKICAgKHVubGVzcyAob3IgKG1lbXEgKGdldC10 ZXh0LXByb3BlcnR5IHBvcyAnZmFjZSkKIAkJICAgICcoZm9udC1sb2NrLWNvbnN0YW50LWZhY2Ug Zm9udC1sb2NrLWJ1aWx0aW4tZmFjZQpAQCAtNjQ1LDcgKzY1MywxNyBAQCB0ZXgtZm9udC1sb2Nr LXN1c2NyaXB0CiAJCSAgICAocG9zIHBvcykpCiAJCSh3aGlsZSAoZXEgKGNoYXItYmVmb3JlIHBv cykgP1xcKQogCQkgIChzZXRxIHBvcyAoMS0gcG9zKSBvZGQgKG5vdCBvZGQpKSkKLQkJb2RkKSkK KwkJb2RkKQorICAgICAgICAgICAgICA7OyBDaGVjayBpZiBQT1MgaXMgaW4gYW4gZXhwbDMgc3lu dGF4IHJlZ2lvbiBvciBhbiBleHBsMyBidWZmZXIKKyAgICAgICAgICAgICAgKHdoZW4gKGVxIChj aGFyLWFmdGVyIHBvcykgP18pCisgICAgICAgICAgICAgICAgKG9yIHRleC1leHBsLWJ1ZmZlci1w CisgICAgICAgICAgICAgICAgICAgIChhbmQKKyAgICAgICAgICAgICAgICAgICAgIHRleC1leHBs LXJlZ2lvbi1saXN0CisgICAgICAgICAgICAgICAgICAgICAoY2F0Y2ggJ3Jlc3VsdAorCSAgICAg ICAgICAgICAgIChkb2xpc3QgKHJhbmdlIHRleC1leHBsLXJlZ2lvbi1saXN0KQorCSAgICAgICAg ICAgICAgICAgKGFuZCAoPiBwb3MgKGNhciByYW5nZSkpCisJICAgICAgICAgICAgICAgICAgICAg ICg8IHBvcyAoY2RyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aHJv dyAncmVzdWx0IHQpKSkpKSkpKQogICAgIChpZiAoZXEgKGNoYXItYWZ0ZXIgcG9zKSA/XykKIAlg KGZhY2Ugc3Vic2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2FyIHRleC1mb250LXNjcmlwdC1kaXNw bGF5KSkpCiAgICAgICBgKGZhY2Ugc3VwZXJzY3JpcHQgZGlzcGxheSAocmFpc2UgLChjYWRyIHRl eC1mb250LXNjcmlwdC1kaXNwbGF5KSkpKSkpCkBAIC0xMjg5LDggKzEzMDcsMTYgQEAgdGV4LWNv bW1vbi1pbml0aWFsaXphdGlvbgogICAgICAgICAgICAgICAgICMndGV4LS1wcmV0dGlmeS1zeW1i b2xzLWNvbXBvc2UtcCkKICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24K IAkgICAgICAoc3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUt cnVsZXMpKQorICA7OyBEb24ndCBhZGQgZXh0cmEgcHJvY2Vzc2luZyB0byBgc3ludGF4LXByb3Bl cnRpemUnIGluIGZpbGVzIHdoZXJlCisgIDs7IGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZl LgorICA6YWZ0ZXItaG9vayAocHJvZ24gKHRleC1leHBsLWJ1ZmZlci1wYXJzZSkKKyAgICAgICAg ICAgICAgICAgICAgICh1bmxlc3MgdGV4LWV4cGwtYnVmZmVyLXAKKyAgICAgICAgICAgICAgICAg ICAgICAgKGFkZC1ob29rICdzeW50YXgtcHJvcGVydGl6ZS1leHRlbmQtcmVnaW9uLWZ1bmN0aW9u cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyd0ZXgtZXhwbC1yZWdpb24tc2V0 IG5pbCB0KSkpCiAgIDs7IFRBQnMgaW4gdmVyYmF0aW0gZW52aXJvbm1lbnRzIGRvbid0IGRvIHdo YXQgeW91IHRoaW5rLgogICAoc2V0cS1sb2NhbCBpbmRlbnQtdGFicy1tb2RlIG5pbCkKKyAgOzsg U2V0IHVwIHhyZWYgYmFja2VuZCBpbiBUZVggYnVmZmVycy4KKyAgKGFkZC1ob29rICd4cmVmLWJh Y2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpCiAgIDs7IE90aGVyIHZh cnMgdGhhdCBzaG91bGQgYmUgYnVmZmVyLWxvY2FsLgogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LWNvbW1hbmQpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtc3RhcnQtb2YtaGVhZGVy KQpAQCAtMTkzNiw2ICsxOTYyLDM2IEBAIHRleC1jb3VudC13b3JkcwogCQkoZm9yd2FyZC1zZXhw IDEpKSkpKSkKICAgICAgIChtZXNzYWdlICIlcyB3b3JkcyIgY291bnQpKSkpCiAKKyhkZWZ1biB0 ZXgtZXhwbC1idWZmZXItcGFyc2UgKCkKKyAgIklkZW50aWZ5IGJ1ZmZlcnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFsd2F5cyBhY3RpdmUuIgorICAoc2F2ZS1leGN1cnNpb24KKyAgICAoZ290by1j aGFyIChwb2ludC1taW4pKQorICAgICh3aGVuICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKwkgICAo cmUtc2VhcmNoLWZvcndhcmQKKwkgICAgIlxcXFxcXCg/OkV4cGxGaWxlXFx8UHJvdmlkZXNFeHBs XFx8X194cGFyc2VfZmlsZVxcKSIKKwkgICAgbmlsIHQpKQorICAgICAgKHNldHEgdGV4LWV4cGwt YnVmZmVyLXAgdCkpKSkKKworKGRlZnVuIHRleC1leHBsLXJlZ2lvbi1zZXQgKF9iZWcgX2VuZCkK KyAgIkNyZWF0ZSBhIGxpc3Qgb2YgcmVnaW9ucyB3aGVyZSBleHBsMyBzeW50YXggaXMgYWN0aXZl LgorVGhpcyBmdW5jdGlvbiB1cGRhdGVzIHRoZSBsaXN0IHdoZW5ldmVyIGBzeW50YXgtcHJvcGVy dGl6ZScgcnVucywgYW5kCitzdG9yZXMgaXQgaW4gdGhlIGJ1ZmZlci1sb2NhbCB2YXJpYWJsZSBg dGV4LWV4cGwtcmVnaW9uLWxpc3QnLiAgVGhlCitsaXN0IHdpbGwgYWx3YXlzIGJlIG5pbCB3aGVu IHRoZSBidWZmZXIgdmlzaXRzIGFuIGV4cGwzIGZpbGUsIGUuZy4sIGFuCitleHBsMyBjbGFzcyBv ciBwYWNrYWdlLCB3aGVyZSBleHBsMyBzeW50YXggaXMgYWx3YXlzIGFjdGl2ZS4iCisgICh1bmxl c3Mgc3ludGF4LXBwc3MtLXVwZGF0ZWQtY2FjaGU7OyBTdG9wIGZvcndhcmQgc2VhcmNoIHJ1bm5p bmcgdHdpY2UuCisgICAgKHNldHEgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsKQorICAgIDs7IExl YXZpbmcgdGhpcyB0ZXN0IGhlcmUgYWxsb3dzIHVzZXJzIHRvIHNldCBgdGV4LWV4cGwtYnVmZmVy LXAnCisgICAgOzsgaW5kZXBlbmRlbnRseSBvZiB0aGUgbW9kZSdzIGF1dG9tYXRpYyBkZXRlY3Rp b24gb2YgYW4gZXhwbDMgZmlsZS4KKyAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisgICAg ICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgICAgKGxldCAoKGNhc2UtZm9sZC1zZWFyY2gg bmlsKSkKKyAgICAgICAgKHdoaWxlICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAg ICAgICAoc2VhcmNoLWZvcndhcmQgIlxcRXhwbFN5bnRheE9uIiBuaWwgdCkpCisgICAgICAgICAg KGxldCAoKG5ldy1iZWcgKHBvaW50KSkKKyAgICAgICAgICAgICAgICAobmV3LWVuZCAob3IgKHRl eC1zZWFyY2gtbm9uY29tbWVudAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlYXJj aC1mb3J3YXJkICJcXEV4cGxTeW50YXhPZmYiIG5pbCB0KSkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKHBvaW50LW1heCkpKSkKKyAgICAgICAgICAgIChwdXNoIChjb25zIG5ldy1iZWcg bmV3LWVuZCkgdGV4LWV4cGwtcmVnaW9uLWxpc3QpKSkpKSkpCiAKIAwKIDs7OyBJbnZva2luZyBU ZVggaW4gYW4gaW5mZXJpb3Igc2hlbGwuCkBAIC0zNzQyLDYgKzM3OTgsMzA2IEBAIHRleC1jaGt0 ZXgKICAgICAgIChwcm9jZXNzLXNlbmQtcmVnaW9uIHRleC1jaGt0ZXgtLXByb2Nlc3MgKHBvaW50 LW1pbikgKHBvaW50LW1heCkpCiAgICAgICAocHJvY2Vzcy1zZW5kLWVvZiB0ZXgtY2hrdGV4LS1w cm9jZXNzKSkpKQogCisMCis7OzsgWHJlZiBiYWNrZW5kCisKKzs7IEhlcmUgd2UgbGlnaHRseSBh ZGFwdCB0aGUgZGVmYXVsdCBldGFncyBiYWNrZW5kIGZvciB4cmVmIHNvIHRoYXQKKzs7IHRoZSBt YWluIHhyZWYgdXNlciBjb21tYW5kcyAoaW5jbHVkaW5nIGB4cmVmLWZpbmQtZGVmaW5pdGlvbnMn LAorOzsgYHhyZWYtZmluZC1hcHJvcG9zJywgYW5kIGB4cmVmLWZpbmQtcmVmZXJlbmNlcycgW29u IE0tLiwgQy1NLS4sIGFuZAorOzsgTS0/LCByZXNwZWN0aXZlbHldKSB3b3JrIGluIFRlWCBidWZm ZXJzLiAgVGhlIG9ubHkgbWV0aG9kcyB3ZQorOzsgYWN0dWFsbHkgbW9kaWZ5IGFyZSBgeHJlZi1i YWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQnIGFuZAorOzsgYHhyZWYtYmFja2VuZC1yZWZlcmVu Y2VzJy4gIE1hbnkgb2YgdGhlIGNvbXBsaWNhdGlvbnMgaGVyZSwgYW5kIGluCis7OyBgZXRhZ3Mn IGl0c2VsZiwgYXJlIGR1ZSB0byB0aGUgbmVjZXNzaXR5IG9mIHBhcnNpbmcgYm90aCB0aGUgb2xk Cis7OyBUZVggc3ludGF4IGFuZCB0aGUgbmV3IGV4cGwzIHN5bnRheCwgd2hpY2ggd2lsbCBjb250 aW51ZSB0byBhcHBlYXIKKzs7IHRvZ2V0aGVyIGluIGRvY3VtZW50cyBmb3IgdGhlIGZvcmVzZWVh YmxlIGZ1dHVyZS4gIFN5bmNocm9uaXppbmcKKzs7IEVtYWNzIGFuZCBgZXRhZ3MnIHRoaXMgd2F5 IGFpbXMgdG8gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlICJvdXQKKzs7IG9mIHRoZSBib3gu IgorCisoZGVmdmFyIHRleC10aGluZ2F0cHQtZXhjbHVkZS1jaGFycyAnKD9cXCA/XHsgP1x9KQor ICAiRXhjbHVkZSB0aGVzZSBjaGFycyBieSBkZWZhdWx0IGZyb20gVGVYIHRoaW5nLWF0LXBvaW50 LgorCitUaGUgVGVYIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCcgbWV0aG9kIHVz ZXMgdGhlIGNoYXJhY3RlcnMKK2xpc3RlZCBpbiB0aGlzIHZhcmlhYmxlIHRvIGRlY2lkZSBvbiB0 aGUgZGVmYXVsdCBzZWFyY2ggc3RyaW5nIHRvCitwcmVzZW50IHRvIHRoZSB1c2VyIHdobyBjYWxs cyBhbiBgeHJlZicgY29tbWFuZC4gIFRoZXNlIGNoYXJhY3RlcnMKK2JlY29tZSBwYXJ0IG9mIGEg cmVnZXhwIHdoaWNoIGFsd2F5cyBleGNsdWRlcyB0aGVtIGZyb20gdGhhdCBkZWZhdWx0CitzdHJp bmcuICBGb3IgdGhlIGB4cmVmJyBjb21tYW5kcyB0byBmdW5jdGlvbiBwcm9wZXJseSBpbiBUZVgg YnVmZmVycywgYXQKK2xlYXN0IHRoZSBUZVggZXNjYXBlIGFuZCB0aGUgdHdvIFRlWCBncm91cGlu ZyBjaGFyYWN0ZXJzIHNob3VsZCBiZQorbGlzdGVkIGhlcmUuICBTaG91bGQgeW91ciBUZVggZG9j dW1lbnRzIGNvbnRhaW4gb3RoZXIgY2hhcmFjdGVycyB3aGljaAoreW91IHdhbnQgdG8gZXhjbHVk ZSBieSBkZWZhdWx0LCB0aGVuIHlvdSBjYW4gYWRkIHRoZW0gdG8gdGhlIGxpc3QsCit0aG91Z2gg eW91IG1heSB3aXNoIHRvIGNvbnN1bHQgdGhlIGZ1bmN0aW9ucworYHRleC10aGluZ2F0cHQtLWJl Z2lubmluZy1vZi1zeW1ib2wnIGFuZCBgdGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCcKK3Rv IHNlZSB3aGF0IHRoZSByZWdleHAgYWxyZWFkeSBjb250YWlucy4gIElmIHlvdXIgZG9jdW1lbnRz IGNvbnRhaW4KK25vbi1zdGFuZGFyZCBlc2NhcGUgYW5kIGdyb3VwaW5nIGNoYXJhY3RlcnMsIHRo ZW4geW91IGNhbiByZXBsYWNlIHRoZQordGhyZWUgbGlzdGVkIGhlcmUgd2l0aCB5b3VyIG93biwg dGhlcmVieSBhbGxvd2luZyB0aGUgdGhyZWUgc3RhbmRhcmQKK2NoYXJhY3RlcnMgdG8gYXBwZWFy IGJ5IGRlZmF1bHQgaW4gc2VhcmNoIHN0cmluZ3MuICBQbGVhc2UgYmUgYXdhcmUsCitob3dldmVy LCB0aGF0IHRoZSBgZXRhZ3MnIHByb2dyYW0gb25seSByZWNvZ25pemVzIGBcXCcgKDkyKSBhbmQg YCEnICgzMykKK2FzIGVzY2FwZSBjaGFyYWN0ZXJzIGluIFRlWCBkb2N1bWVudHMsIGFuZCBpZiBp dCBkZXRlY3RzIHRoZSBsYXR0ZXIgaXQKK2Fsc28gdXNlcyBgPD4nIGFzIHRoZSBUZVggZ3JvdXBp bmcgY29uc3RydWN0IHJhdGhlciB0aGFuIGB7fScuICBTZXR0aW5nCit0aGUgZXNjYXBlIGFuZCBn cm91cGluZyBjaGFycyB0byBhbnl0aGluZyBvdGhlciB0aGFuIGBcXD1cXHt9JyBvciBgITw+Jwor d2lsbCBub3QgYmUgdXNlZnVsIHdpdGhvdXQgY2hhbmdlcyB0byBgZXRhZ3MnLCBhdCBsZWFzdCBm b3IgY29tbWFuZHMKK3RoYXQgc2VhcmNoIHRhZ3MgdGFibGVzLCBzdWNoIGFzIFxcW3hyZWYtZmlu ZC1kZWZpbml0aW9uc10gYW5kIFwKK1xcW3hyZWYtZmluZC1hcHJvcG9zXS4KKworU2hvdWxkIHlv dSB3aXNoIHRvIGNoYW5nZSB0aGUgZGVmYXVsdHMsIHBsZWFzZSBhbHNvIGJlIGF3YXJlIHRoYXQs Cit3aXRob3V0IGZ1cnRoZXIgbW9kaWZpY2F0aW9ucyB0byB0ZXgtbW9kZS5lbCwgdGhlIHVzdWFs IHRleHQtcGFyc2luZworcm91dGluZXMgZm9yIGBmb250LWxvY2snIGFuZCB0aGUgbGlrZSB3b24n dCB3b3JrIGNvcnJlY3RseSwgYXMgdGhlCitkZWZhdWx0IGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hh cmFjdGVycyBhcmUgY3VycmVudGx5IGhhcmQgY29kZWQgaW4gbWFueQorcGxhY2VzLiIpCisKKzs7 IFBvcHVsYXRlIGBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QnIGZvciB0aGUgaW4t dHJlZSBtb2RlczsKKzs7IEFVQ1RlWCBpcyBkb2luZyB0aGUgc2FtZSBmb3IgaXRzIG1vZGVzLgor KHdpdGgtZXZhbC1hZnRlci1sb2FkICdzZW1hbnRpYy9zeW1yZWYvZ3JlcAorICAoZGVmdmFyIHNl bWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhsYXRleC1tb2RlICIq Llt0VF1lW3hYXSIgIioubHR4IiAiKi5zdHkiICIqLmNsW3NvXSIKKyAgICAgICAgICAgICAgICAg ICAgICIqLmJibCIgIiouZHJ2IiAiKi5odmEiKQorICAgICAgICBzZW1hbnRpYy1zeW1yZWYtZmls ZXBhdHRlcm4tYWxpc3QpCisgIChwdXNoICcocGxhaW4tdGV4LW1vZGUgIiouW3RUXWVbeFhdIiAi Ki5pbnMiKQorICAgICAgICBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgIChw dXNoICcoZG9jdGV4LW1vZGUgIiouZHR4Iikgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0KSkKKworKGRlZnVuIHRleC0teHJlZi1iYWNrZW5kICgpICd0ZXgtZXRhZ3MpCisKKyhjbC1k ZWZtZXRob2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQgKChfYmFja2VuZCAoZXFs ICd0ZXgtZXRhZ3MpKSkKKyAgKHJlcXVpcmUgJ2V0YWdzKQorICAodGV4LS10aGluZy1hdC1wb2lu dCkpCisKKzs7IFRoZSBkZXRlY3Rpb24gb2YgYF8nIGFuZCBgOicgaXMgYSBwcmltaXRpdmUgbWV0 aG9kIGZvciBkZXRlcm1pbmluZworOzsgd2hldGhlciBwb2ludCBpcyBvbiBhbiBleHBsMyBjb25z dHJ1Y3QuICBJdCBtYXkgZmFpbCBpbiBzb21lCis7OyBpbnN0YW5jZXMuCisoZGVmdW4gdGV4LS10 aGluZy1hdC1wb2ludCAoKQorICAiRGVtYXJjYXRlIGB0aGluZy1hdC1wb2ludCcgZm9yIHRoZSBU ZVggYHhyZWYnIGJhY2tlbmQuIgorICAobGV0ICgoYm91bmRzICh0ZXgtLWJvdW5kcy1vZi1zeW1i b2wtYXQtcG9pbnQpKSkKKyAgICAod2hlbiBib3VuZHMKKyAgICAgIChsZXQgKCh0ZXhzeW0gKGJ1 ZmZlci1zdWJzdHJpbmctbm8tcHJvcGVydGllcyAoY2FyIGJvdW5kcykgKGNkciBib3VuZHMpKSkp CisgICAgICAgIChpZiAoYW5kIChub3QgKHN0cmluZy1tYXRjaC1wICJyZWZlcmVuY2UiIChzeW1i b2wtbmFtZSB0aGlzLWNvbW1hbmQpKSkKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1w IHRleHN5bSA/XykKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/Oikp CisgICAgICAgICAgICAoc2VxLXRha2UgdGV4c3ltIChzZXEtcG9zaXRpb24gdGV4c3ltID86KSkK KyAgICAgICAgICB0ZXhzeW0pKSkpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5n LW9mLXN5bWJvbCAoKQorICAoYW5kCisgICAocmUtc2VhcmNoLWJhY2t3YXJkIChjb25jYXQgIltd WyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1 b3RlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMn Y2hhci10by1zdHJpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdGV4LXRoaW5nYXRwdC1leGNsdWRlLWNoYXJzKSkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiXCIqYCcjPSYoKSUsfCRbOmNudHJsOl1bOmJsYW5rOl1dIikpCisgICAo Zm9yd2FyZC1jaGFyKSkpCisKKyhkZWZ1biB0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sICgp CisgIChhbmQKKyAgIChyZS1zZWFyY2gtZm9yd2FyZCAoY29uY2F0ICJbXVsiCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1b3RlCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMnY2hhci10by1zdHJpbmcK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LXRo aW5nYXRwdC1leGNsdWRlLWNoYXJzKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJc IipgJyM9JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iKSkKKyAgIChiYWNrd2FyZC1jaGFyKSkp CisKKyhkZWZ1biB0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQgKCkKKyAgIlNpbXBsaWZ5 IGBib3VuZHMtb2YtdGhpbmctYXQtcG9pbnQnIGZvciBUZVggYHhyZWYnIGJhY2tlbmQuIgorICAo bGV0ICgob3JpZyAocG9pbnQpKSkKKyAgICAoaWdub3JlLWVycm9ycworICAgICAgKHNhdmUtZXhj dXJzaW9uCisJKHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wpCisJKHRleC10aGluZ2F0cHQt LWJlZ2lubmluZy1vZi1zeW1ib2wpCisJKGxldCAoKGJlZyAocG9pbnQpKSkKKwkgIChpZiAoPD0g YmVnIG9yaWcpCisJICAgICAgKGxldCAoKHJlYWwtZW5kCisJCSAgICAgKHByb2duCisJCSAgICAg ICAodGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCkKKwkJICAgICAgIChwb2ludCkpKSkKKwkJ KGNvbmQgKChhbmQgKDw9IG9yaWcgcmVhbC1lbmQpICg8IGJlZyByZWFsLWVuZCkpCisJCSAgICAg ICAoY29ucyBiZWcgcmVhbC1lbmQpKQorICAgICAgICAgICAgICAgICAgICAgICgoYW5kICg9IG9y aWcgcmVhbC1lbmQpICg9IGJlZyByZWFsLWVuZCkpCisJCSAgICAgICAoY29ucyBiZWcgKDErIGJl ZykpKSkpKSkpKSkpOzsgRm9yIDEtY2hhciBUZVggY29tbWFuZHMuCisKKyhjbC1kZWZtZXRob2Qg eHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi10YWJsZSAoKF9iYWNrZW5kCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFs ICd0ZXgtZXRhZ3MpKSkKKyAgKHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBsZXRpb24tdGFi bGUgJ2V0YWdzKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21w bGV0aW9uLWlnbm9yZS1jYXNlICgoX2JhY2tlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlcWwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGV4LWV0 YWdzKSkpCisgICh4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWlnbm9yZS1jYXNl ICdldGFncykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zICgoX2Jh Y2tlbmQgKGVxbCAndGV4LWV0YWdzKSkgc3ltYm9sKQorICAoeHJlZi1iYWNrZW5kLWRlZmluaXRp b25zICdldGFncyBzeW1ib2wpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1hcHJvcG9z ICgoX2JhY2tlbmQgKGVxbCAndGV4LWV0YWdzKSkgcGF0dGVybikKKyAgKHhyZWYtYmFja2VuZC1h cHJvcG9zICdldGFncyBwYXR0ZXJuKSkKKworOzsgVGhlIGB4cmVmLWJhY2tlbmQtcmVmZXJlbmNl cycgbWV0aG9kIHJlcXVpcmVzIG1vcmUgY29kZSB0aGFuIHRoZQorOzsgb3RoZXJzIGZvciBhdCBs ZWFzdCB0d28gbWFpbiByZWFzb25zOiBUZVggYXV0aG9ycyBoYXZlIHR5cGljYWxseSBiZWVuCis7 OyBmcmVlIGluIHRoZWlyIGludmVudGlvbiBvZiBuZXcgZmlsZSB0eXBlcyB3aXRoIG5ldyBzdWZm aXhlcywgYW5kIHRoZXkKKzs7IGhhdmUgYWxzbyB0ZW5kZWQgc29tZXRpbWVzIHRvIGluY2x1ZGUg bm9uLXN5bWJvbCBjaGFyYWN0ZXJzIGluCis7OyBjb21tYW5kIG5hbWVzLiAgV2hlbiBjb21iaW5l ZCB3aXRoIHRoZSBkZWZhdWx0IFNlbWFudGljIFN5bWJvbAorOzsgUmVmZXJlbmNlIEFQSSwgdGhl c2UgdHdvIGNoYXJhY3RlcmlzdGljcyBvZiBUZVggY29kZSBtZWFuIHRoYXQgYQorOzsgY29tbWFu ZCBsaWtlIGB4cmVmLWZpbmQtcmVmZXJlbmNlcycgd291bGQgb2Z0ZW4gZmFpbCB0byBmaW5kIGFu eSBoaXRzCis7OyBmb3IgYSBzeW1ib2wgYXQgcG9pbnQsIGluY2x1ZGluZyB0aGUgb25lIHVuZGVy IHBvaW50IGluIHRoZSBjdXJyZW50Cis7OyBidWZmZXIsIG9yIGl0IHdvdWxkIGZpbmQgb25seSBz b21lIGluc3RhbmNlcyBhbmQgc2tpcCBvdGhlcnMuCisKKyhkZWZ1biB0ZXgtZmluZC1yZWZlcmVu Y2VzLXN5bnRheC10YWJsZSAoKQorICAobGV0ICgoc3QgKGlmIChib3VuZHAgJ1RlWC1tb2RlLXN5 bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgICAgKG1ha2Utc3ludGF4LXRhYmxlIFRlWC1tb2Rl LXN5bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgIChtYWtlLXN5bnRheC10YWJsZSB0ZXgtbW9k ZS1zeW50YXgtdGFibGUpKSkpCisgICAgc3QpKQorCisoZGVmdmFyIHRleC0teHJlZi1zeW50YXgt ZnVuIG5pbCkKKworKGRlZnVuIHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiAoc3RyIGJlZyBlbmQp CisgICJQcm92aWRlIGEgYmVzcG9rZSBgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24nIGZvciBc XFt4cmVmLWZpbmQtcmVmZXJlbmNlc10uIgorICAobGV0KiAoZ3JwYiB0ZW1wc3RyCisgICAgICAg ICAgICAgIChzaHJ0c3RyIChpZiBlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChwcm9n bgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSB0ZW1wc3RyIChzZXEtdGFrZSBz dHIgKDEtIChsZW5ndGggc3RyKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaWYg YmVnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSB0ZW1wc3RyIChzZXEt ZHJvcCB0ZW1wc3RyIDEpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBzdHIp KQorICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtZHJvcCBzdHIgMSkpKQorICAgICAgICAg ICAgICAoZ3JwYSAoaWYgKGFuZCBiZWcgZW5kKQorICAgICAgICAgICAgICAgICAgICAgICAgKHBy b2cxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgMSAiXyIpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIChzZXRxIGdycGIgKGxpc3QgMiAiXyIpKSkKKyAgICAgICAgICAgICAg ICAgICAgICAobGlzdCAxICJfIikpKQorICAgICAgICAgICAgICAocmUgKGNvbmNhdCBiZWcgKHJl Z2V4cC1xdW90ZSBzaHJ0c3RyKSBlbmQpKQorICAgICAgICAgICAgICAodGVtcC1ydWxlIChpZiBn cnBiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IHJlIGdycGEgZ3JwYikKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IHJlIGdycGEpKSkpCisgICAgOzsgU2ltcGxl IGJlbmNobWFya3Mgc3VnZ2VzdGVkIHRoYXQgdGhlIHNwZWVkLXVwIGZyb20gY29tcGlsaW5nIHRo aXMKKyAgICA7OyBmdW5jdGlvbiB3YXMgbmVhcmx5IG5pbCwgc28gYGV2YWwnIGFuZCBpdHMgbm9u LWJ5dGUtY29tcGlsZWQKKyAgICA7OyBmdW5jdGlvbiByZW1haW4uCisgICAgKHNldHEgdGV4LS14 cmVmLXN5bnRheC1mdW4gKGV2YWwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYChz eW50YXgtcHJvcGVydGl6ZS1ydWxlcyAsdGVtcC1ydWxlKSkpKSkKKworKGRlZnVuIHRleC0tY29s bGVjdC1maWxlLWV4dGVuc2lvbnMgKCkKKyAgIkdhdGhlciBUZVggZmlsZSBleHRlbnNpb25zIGZy b20gYGF1dG8tbW9kZS1hbGlzdCcuIgorICAobGV0KiAoKG1saXN0ICh3aGVuIChyYXNzcSBtYWpv ci1tb2RlIGF1dG8tbW9kZS1hbGlzdCkKKwkJICAoc2VxLWZpbHRlcgorCQkgICAobGFtYmRhIChl bHQpCisJCSAgICAgKGVxIChjZHIgZWx0KSBtYWpvci1tb2RlKSkKKwkJICAgYXV0by1tb2RlLWFs aXN0KSkpCisJIChsY3N5bSAoaW50ZXJuLXNvZnQgKGRvd25jYXNlIChzeW1ib2wtbmFtZSBtYWpv ci1tb2RlKSkpKQorCSAobGNsaXN0IChhbmQgbGNzeW0KKwkJICAgICAgKG5vdCAoZXEgbGNzeW0g bWFqb3ItbW9kZSkpCisJCSAgICAgIChyYXNzcSBsY3N5bSBhdXRvLW1vZGUtYWxpc3QpCisJCSAg ICAgIChzZXEtZmlsdGVyCisJCSAgICAgICAobGFtYmRhIChlbHQpCisJCQkgKGVxIChjZHIgZWx0 KSBsY3N5bSkpCisJCSAgICAgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKHNob3J0c3ltICh3aGVu IChzdHJpbmdwIG1vZGUtbmFtZSkKKwkJICAgICAoaW50ZXJuLXNvZnQgKGNvbmNhdCAoc3RyaW5n LXRyaW0tcmlnaHQgbW9kZS1uYW1lICIvLioiKQorCQkJCQkgICItbW9kZSIpKSkpCisJIChsY3No b3J0c3ltICh3aGVuIChzdHJpbmdwIG1vZGUtbmFtZSkKKwkJICAgICAgIChpbnRlcm4tc29mdCAo ZG93bmNhc2UKKwkJCQkgICAgIChjb25jYXQKKwkJCQkgICAgICAoc3RyaW5nLXRyaW0tcmlnaHQg bW9kZS1uYW1lICIvLioiKQorCQkJCSAgICAgICItbW9kZSIpKSkpKQorCSAoc2hsaXN0IChhbmQg c2hvcnRzeW0KKwkJICAgICAgKG5vdCAoZXEgc2hvcnRzeW0gbWFqb3ItbW9kZSkpCisJCSAgICAg IChub3QgKGVxIHNob3J0c3ltIGxjc3ltKSkKKwkJICAgICAgKHJhc3NxIHNob3J0c3ltIGF1dG8t bW9kZS1hbGlzdCkKKwkJICAgICAgKHNlcS1maWx0ZXIKKwkJICAgICAgIChsYW1iZGEgKGVsdCkK KwkJCSAoZXEgKGNkciBlbHQpIHNob3J0c3ltKSkKKwkJICAgICAgIGF1dG8tbW9kZS1hbGlzdCkp KQorCSAobGNzaGxpc3QgKGFuZCBsY3Nob3J0c3ltCisJCQkobm90IChlcSBsY3Nob3J0c3ltIG1h am9yLW1vZGUpKQorCQkJKG5vdCAoZXEgbGNzaG9ydHN5bSBsY3N5bSkpCisJCQkocmFzc3EgbGNz aG9ydHN5bSBhdXRvLW1vZGUtYWxpc3QpCisJCQkoc2VxLWZpbHRlcgorCQkJIChsYW1iZGEgKGVs dCkKKwkJCSAgIChlcSAoY2RyIGVsdCkgbGNzaG9ydHN5bSkpCisJCQkgYXV0by1tb2RlLWFsaXN0 KSkpCisJIChleHRzICh3aGVuIChvciBtbGlzdCBsY2xpc3Qgc2hsaXN0IGxjc2hsaXN0KQorCQkg KHNlcS11bmlvbiAoc2VxLW1hcCAjJ2NhciBsY2xpc3QpCisJCQkgICAgKHNlcS11bmlvbiAoc2Vx LW1hcCAjJ2NhciBtbGlzdCkKKwkJCQkgICAgICAgKHNlcS11bmlvbiAoc2VxLW1hcCAjJ2NhciBs Y3NobGlzdCkKKwkJCQkJCSAgKHNlcS1tYXAgIydjYXIgc2hsaXN0KSkpKSkpCisJIChlZC1leHRz ICh3aGVuIGV4dHMKKwkJICAgIChzZXEtbWFwCisJCSAgICAgKGxhbWJkYSAoZWx0KQorCQkgICAg ICAgKGNvbmNhdCAiKiIgKHN0cmluZy10cmltICBlbHQgIlxcXFwiICJcXFxcJyIpKSkKKwkJICAg ICBleHRzKSkpKQorICAgIGVkLWV4dHMpKQorCisoZGVmdmFyIHRleC0tYnVmZmVycy1saXN0IG5p bCkKKyhkZWZ2YXItbG9jYWwgdGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uIG5pbCkKKworKGNsLWRl Zm1ldGhvZCB4cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFn cykpIGlkZW50aWZpZXIpCisgICJGaW5kIHJlZmVyZW5jZXMgb2YgSURFTlRJRklFUiBpbiBUZVgg YnVmZmVycyBhbmQgZmlsZXMuIgorICAocmVxdWlyZSAnc2VtYW50aWMvc3ltcmVmL2dyZXApCisg IChkZWZ2YXIgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQorICAobGV0IChidWZz IHRleGJ1ZnMKKyAgICAgICAgICAgICAobW9kZSBtYWpvci1tb2RlKSkKKyAgICAoZG9saXN0IChi dWYgKGJ1ZmZlci1saXN0KSkKKyAgICAgIChpZiAoZXEgKGJ1ZmZlci1sb2NhbC12YWx1ZSAnbWFq b3ItbW9kZSBidWYpIG1vZGUpCisgICAgICAgICAgKHB1c2ggYnVmIGJ1ZnMpCisgICAgICAgICh3 aGVuIChzdHJpbmctbWF0Y2gtcCAiLipcXC5bdFRdZVt4WF0iIChidWZmZXItbmFtZSBidWYpKQor ICAgICAgICAgIChwdXNoIGJ1ZiB0ZXhidWZzKSkpKQorICAgICh1bmxlc3MgKHNlcS1zZXQtZXF1 YWwtcCB0ZXgtLWJ1ZmZlcnMtbGlzdCBidWZzKQorICAgICAgKGxldCogKChhbWFsaXN0ICh0ZXgt LWNvbGxlY3QtZmlsZS1leHRlbnNpb25zKSkKKwkgICAgIChleHRsaXN0IChhbGlzdC1nZXQgbW9k ZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorCSAgICAgKGV4dGxpc3QtbmV3 IChzZXEtdW5pcQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlcS11bmlvbiBhbWFsaXN0 IGV4dGxpc3QgIydzdHJpbmctbWF0Y2gtcCkpKSkKKwkoc2V0cSB0ZXgtLWJ1ZmZlcnMtbGlzdCBi dWZzKQorCShkb2xpc3QgKGJ1ZiBidWZzKQorCSAgKHdoZW4tbGV0ICgoZmJ1ZiAoYnVmZmVyLWZp bGUtbmFtZSBidWYpKQorCQkgICAgIChleHQgKGZpbGUtbmFtZS1leHRlbnNpb24gZmJ1ZikpCisJ CSAgICAgKGZpbmV4dCAoY29uY2F0ICIqLiIgZXh0KSkKKwkJICAgICAoKG5vdCAoc2VxLWZpbmQg KGxhbWJkYSAoZWx0KSAoc3RyaW5nLW1hdGNoLXAgZWx0IGZpbmV4dCkpCisJCQkJICAgICBleHRs aXN0LW5ldykpKQorCQkgICAgICgocHVzaCBmaW5leHQgZXh0bGlzdC1uZXcpKSkpKQorCSh1bmxl c3MgKHNlcS1zZXQtZXF1YWwtcCBleHRsaXN0LW5ldyBleHRsaXN0KQorCSAgKHNldGYgKGFsaXN0 LWdldCBtb2RlIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgICAgICAgICAg ICAgICBleHRsaXN0LW5ldykpKSkKKyAgICAobGV0KiAoc2V0c3ludGF4CisgICAgICAgICAgIChw dW5jdCAod2l0aC1zeW50YXgtdGFibGUgKHRleC1maW5kLXJlZmVyZW5jZXMtc3ludGF4LXRhYmxl KQorICAgICAgICAgICAgICAgICAgICAoc2VxLXBvc2l0aW9ucyBpZGVudGlmaWVyIChsaXN0ID93 ID9fKQorCQkJICAgICAgICAgICAobGFtYmRhIChlbHQgc3ljb2RlKQorCQkJICAgICAgICAgICAg IChub3QgKG1lbXEgKGNoYXItc3ludGF4IGVsdCkgc3ljb2RlKSkpKSkpCisgICAgICAgICAgIChl bmQgKGFuZCBwdW5jdAorICAgICAgICAgICAgICAgICAgICAgKG1lbXEgKDEtIChsZW5ndGggaWRl bnRpZmllcikpIHB1bmN0KQorICAgICAgICAgICAgICAgICAgICAgKD4gKGxlbmd0aCBpZGVudGlm aWVyKSAxKQorICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiXFwoIgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAocmVnZXhwLXF1b3RlCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoc3RyaW5nIChlbHQgaWRlbnRpZmllcgorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICgxLSAobGVuZ3RoIGlkZW50aWZpZXIpKSkpKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiXFwpIikpKQorICAgICAgICAgICAoYmVnIChhbmQgcHVuY3QKKyAg ICAgICAgICAgICAgICAgICAgIChtZW1xIDAgcHVuY3QpCisgICAgICAgICAgICAgICAgICAgICAo Y29uY2F0ICJcXCgiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUg KHN0cmluZyAoZWx0IGlkZW50aWZpZXIgMCkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiXFwpIikpKQorICAgICAgICAgICAodGV4dC1tb2RlLWhvb2sKKyAgICAgICAgICAgIChpZiAo b3IgZW5kIGJlZykKKyAgICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAgICh0 ZXgteHJlZi1zeW50YXgtZnVuY3Rpb24gaWRlbnRpZmllciBiZWcgZW5kKQorICAgICAgICAgICAg ICAgICAgKHNldHEgc2V0c3ludGF4IChsYW1iZGEgKCkKKwkJICAgICAgICAgICAgICAgICAgICAo c2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LS14cmVmLXN5bnRheC1mdW4pCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBUZVgtc3R5bGUtaG9v ay1hcHBsaWVkLXAgdCkpKQorICAgICAgICAgICAgICAgICAgKGNvbnMgc2V0c3ludGF4IHRleHQt bW9kZS1ob29rKSkKKyAgICAgICAgICAgICAgdGV4dC1tb2RlLWhvb2spKSkKKyAgICAgICh1bmxl c3MgKG1lbXEgJ2RvY3RleC1tb2RlIChkZXJpdmVkLW1vZGUtYWxsLXBhcmVudHMgbW9kZSkpCisg ICAgICAgIChzZXRxIGJ1ZnMgKGFwcGVuZCB0ZXhidWZzIGJ1ZnMpKSkKKyAgICAgICh3aGVuIChv ciBlbmQgYmVnKQorICAgICAgICAoZG9saXN0IChidWYgYnVmcykKKyAgICAgICAgICAod2l0aC1j dXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICh1bmxlc3MgKGxvY2FsLXZhcmlhYmxlLXAg J3RleC0tb2xkLXN5bnRheC1mdW5jdGlvbikKKyAgICAgICAgICAgICAgKHNldHEgdGV4LS1vbGQt c3ludGF4LWZ1bmN0aW9uIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uKSkKKyAgICAgICAgICAg IChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAgICAgICAg ICAgICAgICB0ZXgtLXhyZWYtc3ludGF4LWZ1bikKKyAgICAgICAgICAgIChzeW50YXgtcHBzcy1m bHVzaC1jYWNoZSAocG9pbnQtbWluKSkpKSkKKyAgICAgICh1bndpbmQtcHJvdGVjdAorICAgICAg ICAgICh4cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyBuaWwgaWRlbnRpZmllcikKKyAgICAgICAgKHdo ZW4gKG9yIGVuZCBiZWcpCisgICAgICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAgICAg ICAod2l0aC1jdXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICAgKHdoZW4gYnVmZmVyLWZp bGUtdHJ1ZW5hbWUKKyAgICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6 ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC0tb2xkLXN5bnRheC1m dW5jdGlvbikKKyAgICAgICAgICAgICAgICAoc3ludGF4LXBwc3MtZmx1c2gtY2FjaGUgKHBvaW50 LW1pbikpKSkpKSkpKSkKKwogKG1ha2Utb2Jzb2xldGUtdmFyaWFibGUgJ3RleC1tb2RlLWxvYWQt aG9vawogICAgICAgICAgICAgICAgICAgICAgICAgInVzZSBgd2l0aC1ldmFsLWFmdGVyLWxvYWQn IGluc3RlYWQuIiAiMjguMSIpCiAocnVuLWhvb2tzICd0ZXgtbW9kZS1sb2FkLWhvb2spCi0tIAoy LjM5LjQKCg== --000000000000d8a2b5061a216eeb--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 25 May 2024 23:02:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 25 19:02:22 2024 Received: from localhost ([127.0.0.1]:36923 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sB0P8-0007tU-35 for submit <at> debbugs.gnu.org; Sat, 25 May 2024 19:02:22 -0400 Received: from forward500b.mail.yandex.net ([178.154.239.144]:37722) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1sB0P5-0007ma-PC for 53749 <at> debbugs.gnu.org; Sat, 25 May 2024 19:02:20 -0400 Received: from mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:28a2:0:640:9f07:0]) by forward500b.mail.yandex.net (Yandex) with ESMTPS id D2AF9612FF; Sun, 26 May 2024 02:01:39 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id W1Xcgw19UCg0-XK0M4OmT; Sun, 26 May 2024 02:01:38 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1716678099; bh=WpOWfXCz/GpwFZ6zvI96cu70dWMSrBFHkZD4ZsajbvE=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=Y537bAdyndrjNhh+4zycaiy7tWCqqtCc9HzkqfCFq/Av04Qt3gCIb6rPTCa3NG2vT o25RAdFlVLiJ3SHqz94AzvySEYqNLDb3iyyrL7m/c4s3KITmzOe9azl1MYlktUjprY c2BERKzJ18ESHndO25Lg1MYY0IC7r/ojiIy5a+0s= Authentication-Results: mail-nwsmtp-smtp-production-main-42.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailfauth.nyi.internal (Postfix) with ESMTP id A407E1200032; Sat, 25 May 2024 19:01:32 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Sat, 25 May 2024 19:01:32 -0400 X-ME-Sender: <xms:zG1SZr9q7yP6Kl32UsqYPmzQ8ZHVPy6riPCgP9B7Fe95SKCsaRbBMA> <xme:zG1SZnsp4riR0g_LkYe4qdb0Hqn38-vuhsPG9fGRX9d2InsbYd4E2fMc1ZasES4U1 -4o1xM4etTQNaXYpU0> X-ME-Received: <xmr:zG1SZpCDVMgECPi__Eb7bPaG_3TQxCN9H39FZd3ld_eZ8XF3dH6EocqCNI-Kt01yLTFL> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdejuddgudeiucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:zG1SZnfQ0qdO--nWJJPsDIU3fARn6XP0VAJ-6UV0yFFstUHQZ_pTvQ> <xmx:zG1SZgNxBXgcln1hGgaj2LPFLogPfsinRuwBQHEk5_wzO6sSeXe6tw> <xmx:zG1SZplshEcamK5ivZkEJQEyyR9n3XNplTOvwYeOa8crMm5UDdPfcg> <xmx:zG1SZqtEnaqRJtyNM0qZSV5xWPWzHW1jftXAAo9GLCAZOCPJpSH_Cw> <xmx:zG1SZqur_JCQprM9myxuvOfPpYSilUoCYcraXWkLuMtPSNuxPraSicZo> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 25 May 2024 19:01:30 -0400 (EDT) Message-ID: <a9530d92-b77a-4a3e-bb4a-d9b34a05ac93@HIDDEN> Date: Sun, 26 May 2024 02:01:28 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <jwvv839i58b.fsf-monnier+emacs@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 20/05/2024 05:38, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >>> Hmm... not sure it's worth the trouble, then. >>> Also, it might be worth trying to see where those 4-10% are spent: this >>> is done in a temp buffer where there should presumably be very little >>> need for before/after-change-functions, so maybe we can get rid of the >>> specific offenders rather than inhibit all modification hooks. >> Given the relatively low percentages, it might be difficult to glance from >> a profiler report. I was assuming the time was mostly spent in >> syntax-ppss-flush-cache, but the function is pretty simple. > > Rather than a profiler report, maybe a better approach would be to > remove things from the non-inhibited-modification-hooks paths and see > how/if they change the performance. > E.g. replace the `inhibit-modification-hooks` binding by one that binds > `before/after-change-functions` to nil. > >>> I wonder what we do during those 20% of the time if the buffer is left >>> in fundamental-mode. >> Good question. > > It's probably the better case to investigate since it might be easier to > see the effects. Revisiting this, I haven't been able to reproduce the 20% number. :-( The effect of that specific inhibit-modification-hooks binding seems to stay around 4-8%, and it's actually on the higher end when the set-auto-mode call it present (probably due to text manipulation inside it). Binding before/after-change-functions, both of the hooks have their impact - one more than the other, but like 60/40. Maybe just funcall overhead. >>>>> Also, what about the other two bindings of `inhibit-modification-hooks`? >>>> The other two are used while the contents of the Xref buffer are printed (or >>>> re-printed), so there's none of the syntax-ppss complications there. The >>>> performance difference is 8.5% in my last measurement. >>> Is this 8.5% of a function that's fast anyway of 8.5% of a function >>> which takes a fair bit of time? >> When there are a lot of matches, it can take some time. Note that 100% in >> this case is the whole list-files-do-search-print-results pipeline, not just >> the printing phase. So printing is sped up by more than 8% (my last test >> says it's by 27%). > > I guess during printing if it's done in many small steps we may indeed > run modification hooks many times, so that could explain the > higher percentage. > > It still seems hard to justify 27% since those modification hooks should > usually do nothing, AFAICT. Maybe there's something silly going on. On this step (xref--show-common-initialize) the numbers still hold, however. What's different, is that replacing the inhibit-modification-hooks with two (before-change-functions and after-change-functions both to nil) doesn't have a similar effect. Which makes sense, since the buffer is almost in fundamental-mode, both hooks are nil there. Binding create-lockfiles or select-active-regions to nil doesn't have any impact. And replacing the use of all of the above with combine-change-calls makes performance worse. If we're going to continue this subthread, it's probably better to move it somewhere else (separate bug, or emacs-devel).
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 25 May 2024 07:57:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 25 03:57:43 2024 Received: from localhost ([127.0.0.1]:41930 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sAmHe-000726-Sn for submit <at> debbugs.gnu.org; Sat, 25 May 2024 03:57:43 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59414) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sAmHc-000720-Tv for 53749 <at> debbugs.gnu.org; Sat, 25 May 2024 03:57:41 -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 1sAmHN-0001HF-J1; Sat, 25 May 2024 03:57:25 -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=8QZfVJOwOnKiLuvo7FzL9/ErNaZZFnxYaPA1A9SXbic=; b=oRrMwYgbwwpr ZUEeazV4lggtyYXodhlL4Ga+FMgEoluIGIo2M3z/c0j/mK+0YUIhwXYQ+h2ajQR6+uX3VVY6CA6Kb douxjXMW9xGdml0dVR/FZuyvXVthANHeHLz6aJcmeWxkXcxkrFObZOqdSuJhZ/FOcZmQAhlpdbZ2D 49ToRKXYJapWpa144B26SwMRtc1z5Zktlqrk36SvbaaLD0aGcN6TUMVqaM+5Bd/9zYlLzBH5cHO2z sgluYQqL+kxyghfnMogo3mgMOrLfOpY3rkd5ceMkTeiPRboiwmb4uTMoSu6CunP2AJZPkcCFZK6hF LCqoqy4ZpbzmZuK/vF7KSw==; Date: Sat, 25 May 2024 10:57:22 +0300 Message-Id: <86v832z5lp.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Stefan Monnier <monnier@HIDDEN> In-Reply-To: <jwvv839i58b.fsf-monnier+emacs@HIDDEN> (message from Stefan Monnier on Sun, 19 May 2024 22:38:45 -0400) Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> <jwvv839i58b.fsf-monnier+emacs@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, ikumi@HIDDEN, tsdh@HIDDEN, dfussner@HIDDEN, arash@HIDDEN, stefankangas@HIDDEN, dgutov@HIDDEN 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 (---) How should we proceed about this bug report? Is David's last changeset acceptable or isn't it? > From: Stefan Monnier <monnier@HIDDEN> > Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner > <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, > stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii > <eliz@HIDDEN> > Date: Sun, 19 May 2024 22:38:45 -0400 > > >> Hmm... not sure it's worth the trouble, then. > >> Also, it might be worth trying to see where those 4-10% are spent: this > >> is done in a temp buffer where there should presumably be very little > >> need for before/after-change-functions, so maybe we can get rid of the > >> specific offenders rather than inhibit all modification hooks. > > Given the relatively low percentages, it might be difficult to glance from > > a profiler report. I was assuming the time was mostly spent in > > syntax-ppss-flush-cache, but the function is pretty simple. > > Rather than a profiler report, maybe a better approach would be to > remove things from the non-inhibited-modification-hooks paths and see > how/if they change the performance. > E.g. replace the `inhibit-modification-hooks` binding by one that binds > `before/after-change-functions` to nil. > > >> I wonder what we do during those 20% of the time if the buffer is left > >> in fundamental-mode. > > Good question. > > It's probably the better case to investigate since it might be easier to > see the effects. > > >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? > >>> The other two are used while the contents of the Xref buffer are printed (or > >>> re-printed), so there's none of the syntax-ppss complications there. The > >>> performance difference is 8.5% in my last measurement. > >> Is this 8.5% of a function that's fast anyway of 8.5% of a function > >> which takes a fair bit of time? > > When there are a lot of matches, it can take some time. Note that 100% in > > this case is the whole list-files-do-search-print-results pipeline, not just > > the printing phase. So printing is sped up by more than 8% (my last test > > says it's by 27%). > > I guess during printing if it's done in many small steps we may indeed > run modification hooks many times, so that could explain the > higher percentage. > > It still seems hard to justify 27% since those modification hooks should > usually do nothing, AFAICT. Maybe there's something silly going on. > > > Stefan > >
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 20 May 2024 02:39:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 19 22:39:04 2024 Received: from localhost ([127.0.0.1]:39357 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s8svX-0002Am-O9 for submit <at> debbugs.gnu.org; Sun, 19 May 2024 22:39:04 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:17804) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s8svS-0002AG-T0 for 53749 <at> debbugs.gnu.org; Sun, 19 May 2024 22:39:02 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id A5174443B04; Sun, 19 May 2024 22:38:48 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1716172727; bh=cOM+3kFdKv9PtVZFMTDE7BkCYm59e5Vi5GmZe6tXuAo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=OR+Fyw7RSaXnOCHgirHHeSuSCed5S3tKhh1sN8iGPGVaLLD67Pdb5uKMKN+aCk6aD GpBWTLgnTH10PadN161ddqKqfONgnOiTYGfIzjwh3ajGPvS8mLY2naVsO4qIXHiLPo PaQeVFgtC5CsICE51Nz61Xp851SaVNFi3hUpq6TFl13RFaqD3guMreG4io/4HpoBQ0 rPeU7s2Z4dz1gSFHWb8Da+BBRep0ergE51d7QjUdcXkqAyZSpJP0w6XOQk/1/fFGGU Pqclw9hWl97L90KD6EoUMkniapEu9kgPE1fP125+QlNzDMg+UuFPEop7RMIc+XNEIF 4hV17jjnCEZdg== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 377B2443B0C; Sun, 19 May 2024 22:38:47 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id E222A1204F5; Sun, 19 May 2024 22:38:46 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> (Dmitry Gutov's message of "Mon, 20 May 2024 03:21:33 +0300") Message-ID: <jwvv839i58b.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> Date: Sun, 19 May 2024 22:38:45 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.004 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) >> Hmm... not sure it's worth the trouble, then. >> Also, it might be worth trying to see where those 4-10% are spent: this >> is done in a temp buffer where there should presumably be very little >> need for before/after-change-functions, so maybe we can get rid of the >> specific offenders rather than inhibit all modification hooks. > Given the relatively low percentages, it might be difficult to glance from > a profiler report. I was assuming the time was mostly spent in > syntax-ppss-flush-cache, but the function is pretty simple. Rather than a profiler report, maybe a better approach would be to remove things from the non-inhibited-modification-hooks paths and see how/if they change the performance. E.g. replace the `inhibit-modification-hooks` binding by one that binds `before/after-change-functions` to nil. >> I wonder what we do during those 20% of the time if the buffer is left >> in fundamental-mode. > Good question. It's probably the better case to investigate since it might be easier to see the effects. >>>> Also, what about the other two bindings of `inhibit-modification-hooks`? >>> The other two are used while the contents of the Xref buffer are printed (or >>> re-printed), so there's none of the syntax-ppss complications there. The >>> performance difference is 8.5% in my last measurement. >> Is this 8.5% of a function that's fast anyway of 8.5% of a function >> which takes a fair bit of time? > When there are a lot of matches, it can take some time. Note that 100% in > this case is the whole list-files-do-search-print-results pipeline, not just > the printing phase. So printing is sped up by more than 8% (my last test > says it's by 27%). I guess during printing if it's done in many small steps we may indeed run modification hooks many times, so that could explain the higher percentage. It still seems hard to justify 27% since those modification hooks should usually do nothing, AFAICT. Maybe there's something silly going on. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 20 May 2024 00:22:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun May 19 20:22:32 2024 Received: from localhost ([127.0.0.1]:38829 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s8qnQ-0000WO-2e for submit <at> debbugs.gnu.org; Sun, 19 May 2024 20:22:32 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:56546) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s8qnD-0000WI-OL for 53749 <at> debbugs.gnu.org; Sun, 19 May 2024 20:22:31 -0400 Received: from mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:39ad:0:640:62fe:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id 2739F5E93C; Mon, 20 May 2024 03:21:43 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id bL5igJfOoSw0-O7DXu2nv; Mon, 20 May 2024 03:21:42 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1716164502; bh=xiBVAOKEBCaVJb1350x9Uj83oczA3dV6PvmgZjVoPsk=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=LyxBDByRHimkhaIQ1sxkg4IKUSVFt1C53PJoWmiI89f13lzcdbhluGGM7XAZ3+NFf sJd3jDWACberwcrJAB+xZcXVH5zp/AYROfXOUny3uFYL5M4tSAhCWhQQHmoBUzDmJ7 Hx3KMo9wP/aPgTeXVqldqL/B44pD8kmSoEs1DIHQ= Authentication-Results: mail-nwsmtp-smtp-production-main-78.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfauth.nyi.internal (Postfix) with ESMTP id 8B32A1200032; Sun, 19 May 2024 20:21:37 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sun, 19 May 2024 20:21:37 -0400 X-ME-Sender: <xms:kZdKZuMOGWDpByKBu3O1n3raCKQlYsPRbe_MjqUo7ewPqEO97U8EJQ> <xme:kZdKZs9kRUmNPBwT-cwaUVorIHrs4BUpyD0luiZlbZ0lIPesOGKDgInN6duVQDVce EogpoZ8DsHdVdfzbio> X-ME-Received: <xmr:kZdKZlQ-UvPiqDAkkA5_-e8XOHmb8UPUhak9sTzKaz09JupXU8NxLVg7iffgQizcQbbK> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdehledgfedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:kZdKZuttVxCjjEcYSoT6Abk0o7q9ds1DRB1hrSgqNkZXReEo4Fh0LQ> <xmx:kZdKZmez4twAkQo1bAtQlvmdvFFQDAlO75z2wGRH1ryqrTKDcrXlMA> <xmx:kZdKZi2Jj-8i51RY7zn4IkDe1C-U8dOq6uQte_OAA3VOxL54IOD2PQ> <xmx:kZdKZq9ndeNLiAr2lu-_csm1wVP78BDbsMklskN3J3z1tXIDkzabwQ> <xmx:kZdKZl8sKbTiLQlyDznkyA8m4KKsOSMuY7xTNcGBHiRKICUSc1i2Woeo> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 19 May 2024 20:21:35 -0400 (EDT) Message-ID: <bdd21a1a-f950-4a86-b576-dc2ac252505b@HIDDEN> Date: Mon, 20 May 2024 03:21:33 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 16/05/2024 21:18, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >>> IIUC, in the `syntax-needed` case, the let-binding of >>> `inhibit-modification-hooks` is just not useful very (4-7% is not worth >>> the trouble), so its purpose is to speed up the other case. >> 4-10% is the improvement for both cases (the "syntax needed" and not). > > Hmm... not sure it's worth the trouble, then. > Also, it might be worth trying to see where those 4-10% are spent: this > is done in a temp buffer where there should presumably be very little > need for before/after-change-functions, so maybe we can get rid of the > specific offenders rather than inhibit all modification hooks. Given the relatively low percentages, it might be difficult to glance from a profiler report. I was assuming the time was mostly spent in syntax-ppss-flush-cache, but the function is pretty simple. >> Also, I'm eyeing another performance improvement (simplifying file type >> detection) - the call to set-auto-mode is not fast. Simply commenting this >> call out improves the performance by 4x or so - but we'll need a simpler >> version of it instead, of course. >> >> And with the above change (commenting out the set-auto-mode call), the >> difference that the inhibit-modification-hooks hack makes is amplified: it >> can get up to 20%. > > I wonder what we do during those 20% of the time if the buffer is left > in fundamental-mode. Good question. >>> Also, what about the other two bindings of `inhibit-modification-hooks`? >> The other two are used while the contents of the Xref buffer are printed (or >> re-printed), so there's none of the syntax-ppss complications there. The >> performance difference is 8.5% in my last measurement. > > Is this 8.5% of a function that's fast anyway of 8.5% of a function > which takes a fair bit of time? When there are a lot of matches, it can take some time. Note that 100% in this case is the whole list-files-do-search-print-results pipeline, not just the printing phase. So printing is sped up by more than 8% (my last test says it's by 27%). > But as a start, every such binding should have a comment > mentioning that it's there only to gain a few percents of performance. Sure.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 16 May 2024 18:19:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 16 14:19:11 2024 Received: from localhost ([127.0.0.1]:50193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s7fh8-0001vI-St for submit <at> debbugs.gnu.org; Thu, 16 May 2024 14:19:11 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:15088) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s7fh6-0001uy-RD for 53749 <at> debbugs.gnu.org; Thu, 16 May 2024 14:19:09 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 4AFD84415C0; Thu, 16 May 2024 14:19:00 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1715883534; bh=s7LfnzTOVMyyIaDvTVS8WGyB5p6AjT10cg1oP8XzWFI=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=IdMuu1C7HvZHHkTUHISsnx5QajVakm2C5/uGc4fgWH3928SBY05YLSIxUl+N+bf/W ZpPcecTHhxT9BySZYjPP6h9z4eOdEsku13MvA88kwIrRTwE7dT8azPGI/JDFgDLvPB sC8ASsP+QFkMBXTjy8sUePveONrWbfkMbvGXC8gjXs2laQa/uJKt5LXDBtd58fsICn GCxFCZdaVa3AV2mRhgnWSV5ikJ3/yWG1i56qBborMm3O3IojucDsHzpkFGbLVCB2dN RkKyRNgZ/6hcKZF28zLU6rQaG7mVIx/J7ixhBMO10g2WwMWqVqyZEhY5QGrlUekmh/ yfgD64YPn3cFQ== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id B2B6344137D; Thu, 16 May 2024 14:18:54 -0400 (EDT) Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 9A3DD12047E; Thu, 16 May 2024 14:18:54 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> (Dmitry Gutov's message of "Wed, 15 May 2024 00:24:24 +0300") Message-ID: <jwv7cftbp8i.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> Date: Thu, 16 May 2024 14:18:54 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.099 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) >> IIUC, in the `syntax-needed` case, the let-binding of >> `inhibit-modification-hooks` is just not useful very (4-7% is not worth >> the trouble), so its purpose is to speed up the other case. > 4-10% is the improvement for both cases (the "syntax needed" and not). Hmm... not sure it's worth the trouble, then. Also, it might be worth trying to see where those 4-10% are spent: this is done in a temp buffer where there should presumably be very little need for before/after-change-functions, so maybe we can get rid of the specific offenders rather than inhibit all modification hooks. > Also, I'm eyeing another performance improvement (simplifying file type > detection) - the call to set-auto-mode is not fast. Simply commenting this > call out improves the performance by 4x or so - but we'll need a simpler > version of it instead, of course. > > And with the above change (commenting out the set-auto-mode call), the > difference that the inhibit-modification-hooks hack makes is amplified: it > can get up to 20%. I wonder what we do during those 20% of the time if the buffer is left in fundamental-mode. >> Also, what about the other two bindings of `inhibit-modification-hooks`? > The other two are used while the contents of the Xref buffer are printed (or > re-printed), so there's none of the syntax-ppss complications there. The > performance difference is 8.5% in my last measurement. Is this 8.5% of a function that's fast anyway of 8.5% of a function which takes a fair bit of time? Again, I'm not sure it's worth the trouble. But as a start, every such binding should have a comment mentioning that it's there only to gain a few percents of performance. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 16 May 2024 12:58:01 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 16 08:58:01 2024 Received: from localhost ([127.0.0.1]:48630 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s7agJ-0005vW-Hm for submit <at> debbugs.gnu.org; Thu, 16 May 2024 08:58:01 -0400 Received: from mail-pg1-f171.google.com ([209.85.215.171]:49208) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s7agD-0005vK-PS for 53749 <at> debbugs.gnu.org; Thu, 16 May 2024 08:57:57 -0400 Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-5e4f79007ffso112862a12.2 for <53749 <at> debbugs.gnu.org>; Thu, 16 May 2024 05:57:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715864205; x=1716469005; 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=1J+/msAhJaP0ARxmPxGBOl1H1iGmOhUcxwtRZhtcTwM=; b=PWhcVNK/GReNRxqsd0Ak/7/e5MVWnwwuTEd8ARX+gNCWhNpbPiPA2uAsODwxa+FJFD wYy273+bdo2MNTA70IB7tH/oeRzMurYMnT1SA7Hjer0Bd65EyHsKWyZpb3FdBFAcA+8k KBxy/m0LToOqhWm1qgJtw9V3NbatyHutpwusmVhSFM/YCp9nWah4ZpHU0zJF84GJCwjl +No8u3d0DdHd1+vAHTPkwdE5LrmqZPqaLPxbc4pVvS+1WQGT+1aPhmLop/QTUiNrr0rP KdMazW9nDFIMilAYOZkm2goXV8YaMkb9Z4UqsgkBqH8g/MmeYByvTBgajLF6MrSXv9nJ jSxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715864205; x=1716469005; 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=1J+/msAhJaP0ARxmPxGBOl1H1iGmOhUcxwtRZhtcTwM=; b=FNs2gPWFmK8re8Q+15wo4YYjvjhEIY0WF9EOkhBbLq9In6mZ/aqSjQd2rPiY83SQQC GpViKL1gSYnO1zBWYRSZVgbP1OfrZrfAddIuRif0vh7Xis9sOXvYeK+XqjAdmufSu/h7 uA6SBk4QuWTxXws4xIjL0jON8o31FaOaJ/rzAc9DQYplb81RM7Z/Fl6x/vhBGdNl0cYs spe65ZBZOQfqUX78yViYmTqaYMHwBngblLp6Q+ajazOrosEWLfMAl33EbGAa5ooLKp77 N1ovzExnDhZAwNjLw9lp4xasMDvcZGuAnA0RE2AgO+somOxRrNvPKgGEksPmu3UzhpEI e10g== X-Forwarded-Encrypted: i=1; AJvYcCVOQHpv7ZhttdRELVuLc/Aa126r+NVbKa5jsiIC1/uSLGz7/lAj4Zr8WKd5oruw2q+MUwrI58uJM1jzkWDP/Sd9JofTEHg= X-Gm-Message-State: AOJu0Yz1mqKy8GK+rbw1WPBTEc6lc9jQfNYGUpOi2KQgKS9ZsuzXUZEw ZFyth+c6qWDP2yXEFNYHgSZYLjbok/IiogzjfK6yBYlK8s6zMAC1Fs9R3VWMS9TH/3AqDr+a2Kq 6RgmXjxtkhtVrBNGGZ+ZrEZb24IE= X-Google-Smtp-Source: AGHT+IGi8hW8+E7rJj/a/QeBXqimx1uBG8ETfzuhQ7o17VmCM3o8aAaoG0EHOTiCoaBY40A89pV4NECIHoGkWSK8BUI= X-Received: by 2002:a17:90a:d251:b0:2ae:72a3:2ed4 with SMTP id 98e67ed59e1d1-2b6cc453391mr17311889a91.15.1715864205325; Thu, 16 May 2024 05:56:45 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> <CADF+RtisRw=2rKS+Kx_dFFObGktbbSvD+vqp2n-TuXhgX=8XFQ@HIDDEN> <m2v83eur8o.fsf@HIDDEN> In-Reply-To: <m2v83eur8o.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 16 May 2024 13:56:56 +0100 Message-ID: <CADF+RthKH96e0Vrkfw3kGikTX-edOx2Phdj-vihMfzg5qt=tUg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: multipart/mixed; boundary="00000000000071180b061891c40c" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) --00000000000071180b061891c40c Content-Type: text/plain; charset="UTF-8" Thanks, Arash. Agreed, on all counts. Revised patch attached. Best, David. On Thu, 16 May 2024 at 08:54, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > +(defun tex-expl-buffer-parse () > > + "Identify buffers where expl3 syntax is always active." > > + (save-excursion > > + (goto-char (point-min)) > > + (when (tex-search-noncomment > > + (re-search-forward > > + "\\(?:\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)\\)" > > Is the outer grouping necessary? Why not just: > > "\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)" > > > + nil t)) > > + (setq tex-expl-buffer-p t)))) > > + > > +(defun tex-expl-region-set (_beg _end) > > + "Create a list of regions where expl3 syntax is active. > > +This function updates the list whenever `syntax-propertize' runs, and > > +stores it in the buffer-local variable `tex-expl-region-list'. The > > +list will always be nil when the buffer visits an expl3 file, e.g., an > > +expl3 class or package, where expl3 syntax is always active." > > + (unless syntax-ppss--updated-cache;; Stop forward search running twice. > > + (setq tex-expl-region-list nil) > > + ;; Leaving this test here allows users to set `tex-expl-buffer-p' > > + ;; independently of the mode's automatic detection of an expl3 file. > > + (unless tex-expl-buffer-p > > + (goto-char (point-min)) > > + (while (tex-search-noncomment > > + (re-search-forward "\\ExplSyntaxOn" nil t)) > > This looks wrong, I think you want `search-forward'. > > > + (let ((new-beg (point)) > > + (new-end (or (tex-search-noncomment > > + (re-search-forward "\\ExplSyntaxOff" nil t)) > > Same here. > > > + (point-max)))) > > + (push (cons new-beg new-end) tex-expl-region-list)))))) > > Best, Arash --00000000000071180b061891c40c Content-Type: text/x-patch; charset="US-ASCII"; name="0003-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0003-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lw998l1b0> X-Attachment-Id: f_lw998l1b0 RnJvbSAyODM5Y2JlMTVmOTFhMTI5MmQyNmU5MjA4ZDIxY2U0NzI3MGZkNzJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogVGh1LCAxNiBNYXkgMjAyNCAxMzo1MToxMiArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC1mb250LWxvY2stc3VzY3JpcHQpOiBU ZXN0IGZvcgp1bmRlcnNjb3JlIGluIGV4cGwzIGZpbGVzIGFuZCByZWdpb25zLCBkaXNhYmxlIHN1 YnNjcmlwdCBmYWNlIHRoZXJlLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLiBEZXRlY3QgZXhwbDMgZmlsZXMsIGFu ZCBpbiBvdGhlcnMgc2V0IHVwIGEgbGlzdCBvZiBleHBsMwpyZWdpb25zLgoodGV4LWV4cGwtYnVm ZmVyLXBhcnNlKTogTmV3IGZ1bmN0aW9uIGNhbGxlZCBpbiBwcmV2aW91cy4KKHRleC1leHBsLWJ1 ZmZlci1wKTogTmV3IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtZXhw bC1yZWdpb24tc2V0KTogTmV3IGZ1bmN0aW9uIGFkZGVkIHRvCidzeW50YXgtcHJvcGVydGl6ZS1l eHRlbmQtcmVnaW9uLWZ1bmN0aW9ucycgaG9vay4KKHRleC1leHBsLXJlZ2lvbi1saXN0KTogTmV3 IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtLXRoaW5nLWF0LXBvaW50 LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRwdC0tZW5k LW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1bmN0aW9u cyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBwcm92aWRl CnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYgYmFja2Vu ZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNhbGwgdGhl IGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2YW50IGZp bGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRpemUtZnVu Y3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMsIHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3VzLgoodGV4 LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoodGV4LS14 cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJzIGZvciBz YW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxpYi1zcmMv ZXRhZ3MuYyAgICAgICAgICAgIHwgMTg5ICsrKysrKysrKysrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzczICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0KIDMgZmlsZXMgY2hhbmdlZCwgNTgwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggNTc5MDk4YzgxYjEuLmEwNjQxMDNhYTI1IDEwMDY0NAotLS0gYS9k b2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQorKysgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4 aQpAQCAtMjUyOSw2ICsyNTI5LDE1IEBAIElkZW50aWZpZXIgU2VhcmNoCiByZWZlcmVuY2VkLiAg VGhlIFhSRUYgbW9kZSBjb21tYW5kcyBhcmUgYXZhaWxhYmxlIGluIHRoaXMgYnVmZmVyLCBzZWUK IEByZWZ7WHJlZiBDb21tYW5kc30uCiAKK1doZW4gaW52b2tlZCBpbiBhIGJ1ZmZlciB3aG9zZSBt YWpvciBtb2RlIHVzZXMgdGhlIEBjb2Rle2V0YWdzfSBiYWNrZW5kLAorQGtiZHtNLT99IHNlYXJj aGVzIGZpbGVzIGFuZCBidWZmZXJzIHdob3NlIG1ham9yIG1vZGUgbWF0Y2hlcyB0aGF0IG9mCit0 aGUgb3JpZ2luYWwgYnVmZmVyLiAgSXQgZ3Vlc3NlcyB0aGF0IG1vZGUgZnJvbSBmaWxlIGV4dGVu c2lvbnMsIHNvIGlmCitAa2Jke00tP30gc2VlbXMgdG8gYmUgc2tpcHBpbmcgcmVsZXZhbnQgYnVm ZmVycyBvciBmaWxlcywgdHJ5CitjdXN0b21pemluZyBlaXRoZXIgdGhlIHZhcmlhYmxlIEBjb2Rl e3NlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdH0KKyhpZiB5b3VyIGJ1ZmZlcidzIG1h am9yIG1vZGUgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gaXQpLCBvcgorQGNvZGV7YXV0by1tb2Rl LWFsaXN0fSAoaWYgbm90KSwgdGhlcmVieSBpbmZvcm1pbmcgQGNvZGV7eHJlZn0gb2YgdGhlCitt aXNzaW5nIGV4dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhy ZWYtYXV0by1qdW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJs ZSBAY29kZXt4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rl e3hyZWYtZmluZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApA QCAtMjc0NywxMCArMjc1NiwzMiBAQCBUYWcgU3ludGF4CiBAaXRlbQogSW4gQExhVGVYe30gZG9j dW1lbnRzLCB0aGUgYXJndW1lbnRzIGZvciBAY29kZXtcY2hhcHRlcn0sCiBAY29kZXtcc2VjdGlv bn0sIEBjb2Rle1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAotQGNvZGV7XGVx bm99LCBAY29kZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAotQGNvZGV7XGJp Yml0ZW19LCBAY29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1A Y29kZXtcaW5kZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVu ZXdjb21tYW5kfSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmly b25tZW50fSBhcmUgdGFncy4KK0Bjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJl Zn0sIEBjb2Rle1xSZWZ9LCBAY29kZXtcZm9vdHJlZn0sCitAY29kZXtcY2l0ZX0sIEBjb2Rle1xi aWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LAorQGNvZGV7XGVudHJ5fSwg QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LAor QGNvZGV7XHhkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAor QGNvZGV7XG5ld2Vudmlyb25tZW50fSwgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7 XERlY2xhcmVSb2J1c3RDb21tYW5kfSwgQGNvZGV7XG5ld3JvYnVzdGNtZH0sCitAY29kZXtccmVu ZXdyb2J1c3RjbWR9LCBAY29kZXtccHJvdmlkZWNvbW1hbmR9LAorQGNvZGV7XHByb3ZpZGVyb2J1 c3RjbWR9LCBAY29kZXtcTmV3RG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0RvY3VtZW50 Q29tbWFuZH0sIEBjb2Rle1xQcm92aWRlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRDb21tYW5kfSwgQGNvZGV7XE5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAor QGNvZGV7XFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUHJvdmlkZUV4 cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVFeHBhbmRhYmxlRG9jdW1l bnRDb21tYW5kfSwKK0Bjb2Rle1xOZXdEb2N1bWVudEVudmlyb25tZW50fSwgQGNvZGV7XFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudH0sCitAY29kZXtcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnR9 LCBAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XGNzZGVmfSwgQGNv ZGV7XGNzZWRlZn0sIEBjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwKK0Bjb2Rle1xjc2xl dGNzfSwgQGNvZGV7XGNzbGV0fSwgQGNvZGV7XGxldGNzfSwgQGNvZGV7XGxldH0sCitAY29kZXtc Y3NfbmV3X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwKK0Bjb2Rl e1xjc19uZXdfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X2VxfSwgQGNvZGV7XGNzX25ld30sCitAY29k ZXtcY3Nfc2V0X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwKK0Bj b2Rle1xjc19zZXRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X2VxfSwgQGNvZGV7XGNzX3NldH0sCitA Y29kZXtcY3NfZ3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9 LAorQGNvZGV7XGNzX2dzZXRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9lcX0sIEBjb2Rle1xjc19n c2V0fSwKK0Bjb2Rle1xjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudH0sIGFuZCBAY29kZXtcY3Nf Z2VuZXJhdGVfdmFyaWFudH0gYXJlCit0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9m IGFueSBzdGFycmVkIHZhcmlhbnRzIG9mIHRoZXNlCitjb21tYW5kcy4KIAogT3RoZXIgY29tbWFu ZHMgY2FuIG1ha2UgdGFncyBhcyB3ZWxsLCBpZiB5b3Ugc3BlY2lmeSB0aGVtIGluIHRoZQogZW52 aXJvbm1lbnQgdmFyaWFibGUgQGVudntURVhUQUdTfSBiZWZvcmUgaW52b2tpbmcgQGNvbW1hbmR7 ZXRhZ3N9LiAgVGhlCmRpZmYgLS1naXQgYS9saWItc3JjL2V0YWdzLmMgYi9saWItc3JjL2V0YWdz LmMKaW5kZXggMDNiYzU1ZGUwM2QuLjExZmRkYzE4N2MyIDEwMDY0NAotLS0gYS9saWItc3JjL2V0 YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBAIC03OTMsMTEgKzc5MywyNyBAQCAjZGVmaW5l IFNURElOIDB4MTAwMQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRp biAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRlWF9zdWZmaXhlcyBbXSA9CiAgIHsgImJpYiIsICJj bG8iLCAiY2xzIiwgImx0eCIsICJzdHkiLCAiVGVYIiwgInRleCIsIE5VTEwgfTsKIHN0YXRpYyBj b25zdCBjaGFyIFRlWF9oZWxwIFtdID0KLSJJbiBMYVRlWCB0ZXh0LCB0aGUgYXJndW1lbnQgb2Yg YW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKLSdcXHNlY3Rpb24nLCAnXFxzdWJz ZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsXG5cCi0nXFxy ZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBlbmRpeCcsICdcXGVu dHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29t bWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZpcm9ubWVudCcgaXMg YSB0YWcuXG5cCisiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3VtZW50IG9mIHRoZSBjb21tYW5kcyAn XFxjaGFwdGVyJywgJ1xcc2VjdGlvbicsXG5cCisnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2Vj dGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsICdcXHJlZicsXG5cCisnXFxSZWYnLCAnXFxmb290 cmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgnLFxuXAor J1xcZW50cnknLCAnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxnZGVmJywgJ1xceGRl ZicsXG5cCisnXFxuZXdjb21tYW5kJywgJ1xccmVuZXdjb21tYW5kJywgJ1xcbmV3cm9idXN0Y21k JywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vu dmlyb25tZW50JywgJ1xcRGVjbGFyZVJvYnVzdENvbW1hbmQnLFxuXAorJ1xccHJvdmlkZWNvbW1h bmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9jdW1lbnRDb21tYW5kJyxcblwKKydc XFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURvY3VtZW50Q29tbWFuZCcsXG5cCisn XFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFu ZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcUmVuZXdEb2N1bWVu dEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcRGVj bGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywgJ1xcY3NlZGVmJywgJ1xcY3NnZGVm JyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdcXGxldGNzJywgJ1xc bGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19uZXdfcHJvdGVjdGVk JywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19lcScsICdcXGNzX25ldycsICdcXGNz X3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0X3Byb3RlY3RlZCcsICdcXGNzX3Nl dF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcsXG5cCisnXFxjc19nc2V0X3Byb3Rl Y3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywgJ1xcY3NfZ3NldF9ub3BhcicsXG5c CisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNzX2dlbmVyYXRlX2Zyb21fYXJnX2Nv dW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQnIGlzIGEgdGFnLiAgU28gaXMgdGhl IGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50IG9mIHRoZXNlIGNvbW1hbmRzLlxu XAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHNldHRpbmcgdGhlIGVu dmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8gYSBjb2xvbi1zZXBhcmF0ZWQgbGlz dCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3NDAsMTEgKzU3NTYsMjUgQEAgU2NoZW1lX2Z1 bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIgPSBOVUxM OyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyogRGVmYXVsdCBzZXQgb2YgY29udHJv bCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBvZiBlbnZp cm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisgICBUaGUgdmFs dWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuCisgICAo MjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBhZGRpdGlvbmFsIExhVGVYIChhbmQK KyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24gdmFyaWFudHMgZnJvbSB0aGUKKyAg ICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4cGwzIGNvbW1hbmRzLiAqLwogc3Rh dGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNoYXB0ZXI6c2VjdGlvbjpzdWJzZWN0 aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0ZTpiaWJpdGVtXAotOnBhcnQ6YXBw ZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6cmVuZXdjb21tYW5kOm5ld2Vudmly b25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJlZjpSZWY6Zm9vdHJlZjpjaGFwdGVy OnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZVwKKzpiaWJpdGVtOnBh cnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2NvbW1hbmQ6cmVu ZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVjbGFyZVJvYnVz dENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVjb21tYW5kOnBy b3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1lbnRDb21tYW5k OlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwKKzpOZXdFeHBh bmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpQ cm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRFbnZpcm9ubWVu dFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVu dDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0OmxldGNzOmxldDpj c19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3X25vcGFyOmNz X25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRfcHJvdGVjdGVk OmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVkX25vcGFyXAor OmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19nc2V0XAorOmNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwogCiBzdGF0aWMg dm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwogCkBAIC01 ODAzLDE5ICs1ODMzLDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkgICAgICB7CiAJ CWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29sIG9wZ3JwID0g ZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBpc19leHBsdGhy ZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVuKTsKKworCQkv KiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcgbGlrZSB0aGlz OgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1IgfS4gIEZpcnN0 LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2UgaW5jbHVkZSBv bmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4gVEVYX2RlZmVu diBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJndW1lbnQgc3Bl Y2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFnIHRva2VuLCBz byB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhpcmQsIHdlIHNl dCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UKKwkJICAgY2Fu IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0YWcgbmFtZQor CQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGluY2x1ZGUgZXhw bDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZpcm9ubWVudCB2 YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdlIG9mIHNlcGFy YXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRlZmluaXRpb24g b2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1lbnQgc3BlY2lm aWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5lcmF0ZV92YXJp YW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICByZXF1aXJlcyBl dGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUKKwkJICAgY29k ZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBhc3RlcmlzayBm cm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRob3V0IHRoZSBu ZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGljaXRseSBpbiBU RVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkgIHsKKwkJICAg IHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJCSAgICAgIGNw Kys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBsdGhyZWUgPSB0 cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOworCisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJCSAgICBpZiAo KmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAgZWxzZQorCQkg ICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAg IG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7 IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0aGUgVGVYIGVz Y2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0aGluZ3MgZm9y IGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCisJCSAgIFRo aXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcgYmVoYXZpb3IK KwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncywgdGhv dWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1Ym9wdGltYWwu ICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBsaWNhdGVzJyBt YXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJ CSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19pc3NwYWNlICYm ICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3NpbmcgYXQgdG9v IG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAgIGJvdGggdG8g ZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFtZXMKKwkJICAg cmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1hY3JvcywgYW5k CisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxsIGFsbG93aW5n IGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9IGNwOwotCQkg ICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpwICE9IFRFWF9v cGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAg IT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAgIT0gJygnICYm ICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYgKnAgIT0gJyIn ICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcsJyAmJiAqcCAh PSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7CisJCSAgLyog SW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRpb24gZnJvbQor CQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9ubHkgb25lIChk ZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNoIChwcmltYXJp bHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZmZXJlbnQsIHBv c3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJCSAgaWYgKGlz X2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNlIGlmICgqcCA9 PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZvciwgZS5nLiwg XGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJeworCQkJICBv bmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJy ZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBGb3IgVGVYIGZp bGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFuZAorCQkgICBp biBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQgY29uZnVzaW5n CisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBwb3NzaWJsZSB3 aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBidXQgYXZvaWQs IGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMuICovCisJCWlm IChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsgLyogSW5jbHVk ZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBjYXNlICdcJyc6 CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcsJzoKKwkJICAg ICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAgICAgIGNhc2Ug J3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdycCkKKwkJCSAg eworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAgPT0gJyUnKQor CQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAgICAgIGRlZmF1 bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAgLSBjcDsKIAkJ bGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xncnApCkBAIC01 ODI0LDkgKzU5NzIsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAgICAgIHArKzsK IAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1ha2VfdGFnIChj cCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVj aGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNl ICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKKwkJ CSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJCS8qIExpbmVz IHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmdseQorCQkgICBj b21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmlsZXMgdGhhdAor CQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4gIFRoaXMgdGFn cyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAvXCogV2Ugb25s eSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAmJiAqY3AgIT0g JyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0gVEVYX2VzYykK KwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhfbmV4dF9saW5l OgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgYi9saXNwL3RleHRtb2Rl cy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uNGE1OTVhYTFlYTUgMTAwNjQ0Ci0tLSBh L2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2Rl LmVsCkBAIC02MzYsNiArNjM2LDE0IEBAIHRleC1mb250LWxvY2sta2V5d29yZHMtMgogCSAgICAg IDMgJyh0ZXgtZm9udC1sb2NrLWFwcGVuZC1wcm9wICdib2xkKSAnYXBwZW5kKSkpKSkKICAgICJH YXVkeSBleHByZXNzaW9ucyB0byBoaWdobGlnaHQgaW4gVGVYIG1vZGVzLiIpCiAKKyhkZWZ2YXIt bG9jYWwgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsCisgICJMaXN0IG9mIHJlZ2lvbiBib3VuZGFy aWVzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhY3RpdmUuCitJdCB3aWxsIGJlIG5pbCBpbiBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLCBlLmcuLAorZXhwbDMgY2xh c3NlcyBvciBwYWNrYWdlcy4iKQorCisoZGVmdmFyLWxvY2FsIHRleC1leHBsLWJ1ZmZlci1wIG5p bAorICAiTm9uLW5pbCBpbiBidWZmZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0 aXZlLiIpCisKIChkZWZ1biB0ZXgtZm9udC1sb2NrLXN1c2NyaXB0IChwb3MpCiAgICh1bmxlc3Mg KG9yIChtZW1xIChnZXQtdGV4dC1wcm9wZXJ0eSBwb3MgJ2ZhY2UpCiAJCSAgICAnKGZvbnQtbG9j ay1jb25zdGFudC1mYWNlIGZvbnQtbG9jay1idWlsdGluLWZhY2UKQEAgLTY0NSw3ICs2NTMsMTcg QEAgdGV4LWZvbnQtbG9jay1zdXNjcmlwdAogCQkgICAgKHBvcyBwb3MpKQogCQkod2hpbGUgKGVx IChjaGFyLWJlZm9yZSBwb3MpID9cXCkKIAkJICAoc2V0cSBwb3MgKDEtIHBvcykgb2RkIChub3Qg b2RkKSkpCi0JCW9kZCkpCisJCW9kZCkKKyAgICAgICAgICAgICAgOzsgQ2hlY2sgaWYgUE9TIGlz IGluIGFuIGV4cGwzIHN5bnRheCByZWdpb24gb3IgYW4gZXhwbDMgYnVmZmVyCisgICAgICAgICAg ICAgICh3aGVuIChlcSAoY2hhci1hZnRlciBwb3MpID9fKQorICAgICAgICAgICAgICAgIChvciB0 ZXgtZXhwbC1idWZmZXItcAorICAgICAgICAgICAgICAgICAgICAoYW5kCisgICAgICAgICAgICAg ICAgICAgICB0ZXgtZXhwbC1yZWdpb24tbGlzdAorICAgICAgICAgICAgICAgICAgICAgKGNhdGNo ICdyZXN1bHQKKwkgICAgICAgICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24t bGlzdCkKKwkgICAgICAgICAgICAgICAgIChhbmQgKD4gcG9zIChjYXIgcmFuZ2UpKQorCSAgICAg ICAgICAgICAgICAgICAgICAoPCBwb3MgKGNkciByYW5nZSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAodGhyb3cgJ3Jlc3VsdCB0KSkpKSkpKSkKICAgICAoaWYgKGVxIChjaGFyLWFm dGVyIHBvcykgP18pCiAJYChmYWNlIHN1YnNjcmlwdCBkaXNwbGF5IChyYWlzZSAsKGNhciB0ZXgt Zm9udC1zY3JpcHQtZGlzcGxheSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkg KHJhaXNlICwoY2FkciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQpAQCAtMTI4OSw4ICsx MzA3LDE2IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAgICAgICAjJ3Rl eC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9w ZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzIGxhdGV4LXN5 bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgOzsgRG9uJ3QgYWRkIGV4dHJhIHByb2Nlc3Npbmcg dG8gYHN5bnRheC1wcm9wZXJ0aXplJyBpbiBmaWxlcyB3aGVyZQorICA7OyBleHBsMyBzeW50YXgg aXMgYWx3YXlzIGFjdGl2ZS4KKyAgOmFmdGVyLWhvb2sgKHByb2duICh0ZXgtZXhwbC1idWZmZXIt cGFyc2UpCisgICAgICAgICAgICAgICAgICAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisg ICAgICAgICAgICAgICAgICAgICAgIChhZGQtaG9vayAnc3ludGF4LXByb3BlcnRpemUtZXh0ZW5k LXJlZ2lvbi1mdW5jdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMndGV4 LWV4cGwtcmVnaW9uLXNldCBuaWwgdCkpKQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25t ZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMt bW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChh ZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0 KQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAndGV4 LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTE5MzYsNiArMTk2MiwzNiBAQCB0ZXgtY291bnQtd29yZHMK IAkJKGZvcndhcmQtc2V4cCAxKSkpKSkpCiAgICAgICAobWVzc2FnZSAiJXMgd29yZHMiIGNvdW50 KSkpKQogCisoZGVmdW4gdGV4LWV4cGwtYnVmZmVyLXBhcnNlICgpCisgICJJZGVudGlmeSBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLiIKKyAgKHNhdmUtZXhjdXJz aW9uCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAod2hlbiAodGV4LXNlYXJjaC1u b25jb21tZW50CisJICAgKHJlLXNlYXJjaC1mb3J3YXJkCisJICAgICJcXFxcXFwoPzpFeHBsRmls ZVxcfFByb3ZpZGVzRXhwbFxcfF9feHBhcnNlX2ZpbGVcXCkiCisJICAgIG5pbCB0KSkKKyAgICAg IChzZXRxIHRleC1leHBsLWJ1ZmZlci1wIHQpKSkpCisKKyhkZWZ1biB0ZXgtZXhwbC1yZWdpb24t c2V0IChfYmVnIF9lbmQpCisgICJDcmVhdGUgYSBsaXN0IG9mIHJlZ2lvbnMgd2hlcmUgZXhwbDMg c3ludGF4IGlzIGFjdGl2ZS4KK1RoaXMgZnVuY3Rpb24gdXBkYXRlcyB0aGUgbGlzdCB3aGVuZXZl ciBgc3ludGF4LXByb3BlcnRpemUnIHJ1bnMsIGFuZAorc3RvcmVzIGl0IGluIHRoZSBidWZmZXIt bG9jYWwgdmFyaWFibGUgYHRleC1leHBsLXJlZ2lvbi1saXN0Jy4gIFRoZQorbGlzdCB3aWxsIGFs d2F5cyBiZSBuaWwgd2hlbiB0aGUgYnVmZmVyIHZpc2l0cyBhbiBleHBsMyBmaWxlLCBlLmcuLCBh bgorZXhwbDMgY2xhc3Mgb3IgcGFja2FnZSwgd2hlcmUgZXhwbDMgc3ludGF4IGlzIGFsd2F5cyBh Y3RpdmUuIgorICAodW5sZXNzIHN5bnRheC1wcHNzLS11cGRhdGVkLWNhY2hlOzsgU3RvcCBmb3J3 YXJkIHNlYXJjaCBydW5uaW5nIHR3aWNlLgorICAgIChzZXRxIHRleC1leHBsLXJlZ2lvbi1saXN0 IG5pbCkKKyAgICA7OyBMZWF2aW5nIHRoaXMgdGVzdCBoZXJlIGFsbG93cyB1c2VycyB0byBzZXQg YHRleC1leHBsLWJ1ZmZlci1wJworICAgIDs7IGluZGVwZW5kZW50bHkgb2YgdGhlIG1vZGUncyBh dXRvbWF0aWMgZGV0ZWN0aW9uIG9mIGFuIGV4cGwzIGZpbGUuCisgICAgKHVubGVzcyB0ZXgtZXhw bC1idWZmZXItcAorICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAgIChsZXQgKChj YXNlLWZvbGQtc2VhcmNoIG5pbCkpCisgICAgICAgICh3aGlsZSAodGV4LXNlYXJjaC1ub25jb21t ZW50CisgICAgICAgICAgICAgICAgKHNlYXJjaC1mb3J3YXJkICJcXEV4cGxTeW50YXhPbiIgbmls IHQpKQorICAgICAgICAgIChsZXQgKChuZXctYmVnIChwb2ludCkpCisgICAgICAgICAgICAgICAg KG5ldy1lbmQgKG9yICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChzZWFyY2gtZm9yd2FyZCAiXFxFeHBsU3ludGF4T2ZmIiBuaWwgdCkpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChwb2ludC1tYXgpKSkpCisgICAgICAgICAgICAocHVz aCAoY29ucyBuZXctYmVnIG5ldy1lbmQpIHRleC1leHBsLXJlZ2lvbi1saXN0KSkpKSkpKQogCiAM CiA7OzsgSW52b2tpbmcgVGVYIGluIGFuIGluZmVyaW9yIHNoZWxsLgpAQCAtMzc0Miw2ICszNzk4 LDMyMSBAQCB0ZXgtY2hrdGV4CiAgICAgICAocHJvY2Vzcy1zZW5kLXJlZ2lvbiB0ZXgtY2hrdGV4 LS1wcm9jZXNzIChwb2ludC1taW4pIChwb2ludC1tYXgpKQogICAgICAgKHByb2Nlc3Mtc2VuZC1l b2YgdGV4LWNoa3RleC0tcHJvY2VzcykpKSkKIAorDAorOzs7IFhyZWYgYmFja2VuZAorCis7OyBI ZXJlIHdlIGxpZ2h0bHkgYWRhcHQgdGhlIGRlZmF1bHQgZXRhZ3MgYmFja2VuZCBmb3IgeHJlZiBz byB0aGF0Cis7OyB0aGUgbWFpbiB4cmVmIHVzZXIgY29tbWFuZHMgKGluY2x1ZGluZyBgeHJlZi1m aW5kLWRlZmluaXRpb25zJywKKzs7IGB4cmVmLWZpbmQtYXByb3BvcycsIGFuZCBgeHJlZi1maW5k LXJlZmVyZW5jZXMnIFtvbiBNLS4sIEMtTS0uLCBhbmQKKzs7IE0tPywgcmVzcGVjdGl2ZWx5XSkg d29yayBpbiBUZVggYnVmZmVycy4gIFRoZSBvbmx5IG1ldGhvZHMgd2UKKzs7IGFjdHVhbGx5IG1v ZGlmeSBhcmUgYHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50JyBhbmQKKzs7IGB4cmVm LWJhY2tlbmQtcmVmZXJlbmNlcycuICBNYW55IG9mIHRoZSBjb21wbGljYXRpb25zIGhlcmUsIGFu ZCBpbgorOzsgYGV0YWdzJyBpdHNlbGYsIGFyZSBkdWUgdG8gdGhlIG5lY2Vzc2l0eSBvZiBwYXJz aW5nIGJvdGggdGhlIG9sZAorOzsgVGVYIHN5bnRheCBhbmQgdGhlIG5ldyBleHBsMyBzeW50YXgs IHdoaWNoIHdpbGwgY29udGludWUgdG8gYXBwZWFyCis7OyB0b2dldGhlciBpbiBkb2N1bWVudHMg Zm9yIHRoZSBmb3Jlc2VlYWJsZSBmdXR1cmUuICBTeW5jaHJvbml6aW5nCis7OyBFbWFjcyBhbmQg YGV0YWdzJyB0aGlzIHdheSBhaW1zIHRvIGltcHJvdmUgdGhlIHVzZXIgZXhwZXJpZW5jZSAib3V0 Cis7OyBvZiB0aGUgYm94LiIKKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMg Jyg/XFwgP1x7ID9cfSkKKyAgIkV4Y2x1ZGUgdGhlc2UgY2hhcnMgYnkgZGVmYXVsdCBmcm9tIFRl WCB0aGluZy1hdC1wb2ludC4KKworVGhlIFRlWCBgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQt cG9pbnQnIG1ldGhvZCB1c2VzIHRoZSBjaGFyYWN0ZXJzCitsaXN0ZWQgaW4gdGhpcyB2YXJpYWJs ZSB0byBkZWNpZGUgb24gdGhlIGRlZmF1bHQgc2VhcmNoIHN0cmluZyB0bworcHJlc2VudCB0byB0 aGUgdXNlciB3aG8gY2FsbHMgYW4gYHhyZWYnIGNvbW1hbmQuICBUaGVzZSBjaGFyYWN0ZXJzCiti ZWNvbWUgcGFydCBvZiBhIHJlZ2V4cCB3aGljaCBhbHdheXMgZXhjbHVkZXMgdGhlbSBmcm9tIHRo YXQgZGVmYXVsdAorc3RyaW5nLiAgRm9yIHRoZSBgeHJlZicgY29tbWFuZHMgdG8gZnVuY3Rpb24g cHJvcGVybHkgaW4gVGVYIGJ1ZmZlcnMsIGF0CitsZWFzdCB0aGUgVGVYIGVzY2FwZSBhbmQgdGhl IHR3byBUZVggZ3JvdXBpbmcgY2hhcmFjdGVycyBzaG91bGQgYmUKK2xpc3RlZCBoZXJlLiAgU2hv dWxkIHlvdXIgVGVYIGRvY3VtZW50cyBjb250YWluIG90aGVyIGNoYXJhY3RlcnMgd2hpY2gKK3lv dSB3YW50IHRvIGV4Y2x1ZGUgYnkgZGVmYXVsdCwgdGhlbiB5b3UgY2FuIGFkZCB0aGVtIHRvIHRo ZSBsaXN0LAordGhvdWdoIHlvdSBtYXkgd2lzaCB0byBjb25zdWx0IHRoZSBmdW5jdGlvbnMKK2B0 ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sJyBhbmQgYHRleC10aGluZ2F0cHQtLWVu ZC1vZi1zeW1ib2wnCit0byBzZWUgd2hhdCB0aGUgcmVnZXhwIGFscmVhZHkgY29udGFpbnMuICBJ ZiB5b3VyIGRvY3VtZW50cyBjb250YWluCitub24tc3RhbmRhcmQgZXNjYXBlIGFuZCBncm91cGlu ZyBjaGFyYWN0ZXJzLCB0aGVuIHlvdSBjYW4gcmVwbGFjZSB0aGUKK3RocmVlIGxpc3RlZCBoZXJl IHdpdGggeW91ciBvd24sIHRoZXJlYnkgYWxsb3dpbmcgdGhlIHRocmVlIHN0YW5kYXJkCitjaGFy YWN0ZXJzIHRvIGFwcGVhciBieSBkZWZhdWx0IGluIHNlYXJjaCBzdHJpbmdzLiAgUGxlYXNlIGJl IGF3YXJlLAoraG93ZXZlciwgdGhhdCB0aGUgYGV0YWdzJyBwcm9ncmFtIG9ubHkgcmVjb2duaXpl cyBgXFwnICg5MikgYW5kIGAhJyAoMzMpCithcyBlc2NhcGUgY2hhcmFjdGVycyBpbiBUZVggZG9j dW1lbnRzLCBhbmQgaWYgaXQgZGV0ZWN0cyB0aGUgbGF0dGVyIGl0CithbHNvIHVzZXMgYDw+JyBh cyB0aGUgVGVYIGdyb3VwaW5nIGNvbnN0cnVjdCByYXRoZXIgdGhhbiBge30nLiAgU2V0dGluZwor dGhlIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcnMgdG8gYW55dGhpbmcgb3RoZXIgdGhhbiBgXFw9 XFx7fScgb3IgYCE8PicKK3dpbGwgbm90IGJlIHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0 YWdzJywgYXQgbGVhc3QgZm9yIGNvbW1hbmRzCit0aGF0IHNlYXJjaCB0YWdzIHRhYmxlcywgc3Vj aCBhcyBcXFt4cmVmLWZpbmQtZGVmaW5pdGlvbnNdIGFuZCBcCitcXFt4cmVmLWZpbmQtYXByb3Bv c10uCisKK1Nob3VsZCB5b3Ugd2lzaCB0byBjaGFuZ2UgdGhlIGRlZmF1bHRzLCBwbGVhc2UgYWxz byBiZSBhd2FyZSB0aGF0LAord2l0aG91dCBmdXJ0aGVyIG1vZGlmaWNhdGlvbnMgdG8gdGV4LW1v ZGUuZWwsIHRoZSB1c3VhbCB0ZXh0LXBhcnNpbmcKK3JvdXRpbmVzIGZvciBgZm9udC1sb2NrJyBh bmQgdGhlIGxpa2Ugd29uJ3Qgd29yayBjb3JyZWN0bHksIGFzIHRoZQorZGVmYXVsdCBlc2NhcGUg YW5kIGdyb3VwaW5nIGNoYXJhY3RlcnMgYXJlIGN1cnJlbnRseSBoYXJkIGNvZGVkIGluIG1hbnkK K3BsYWNlcy4iKQorCis7OyBQb3B1bGF0ZSBgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0JyBmb3IgdGhlIGluLXRyZWUgbW9kZXM7Cis7OyBBVUNUZVggaXMgZG9pbmcgdGhlIHNhbWUg Zm9yIGl0cyBtb2Rlcy4KKyh3aXRoLWV2YWwtYWZ0ZXItbG9hZCAnc2VtYW50aWMvc3ltcmVmL2dy ZXAKKyAgKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgIChwdXNo ICcobGF0ZXgtbW9kZSAiKi5bdFRdZVt4WF0iICIqLmx0eCIgIiouc3R5IiAiKi5jbFtzb10iCisg ICAgICAgICAgICAgICAgICAgICAiKi5iYmwiICIqLmRydiIgIiouaHZhIikKKyAgICAgICAgc2Vt YW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQorICAocHVzaCAnKHBsYWluLXRleC1tb2Rl ICIqLlt0VF1lW3hYXSIgIiouaW5zIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0KQorICAocHVzaCAnKGRvY3RleC1tb2RlICIqLmR0eCIpIHNlbWFudGljLXN5bXJl Zi1maWxlcGF0dGVybi1hbGlzdCkpCisKKyhkZWZ1biB0ZXgtLXhyZWYtYmFja2VuZCAoKSAndGV4 LWV0YWdzKQorCis7OyBTZXR1cCBBVUNUZVggbW9kZXMgKGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9u bHkpLgorCisoYWRkLWhvb2sgJ1RlWC1tb2RlLWhvb2sgIyd0ZXgtc2V0LWF1Y3RleC14cmVmLWJh Y2tlbmQpCisKKyhkZWZ1biB0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQgKCkKKyAgKGFkZC1o b29rICd4cmVmLWJhY2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpKQor Cis7OyBgeHJlZi1maW5kLXJlZmVyZW5jZXMnIGN1cnJlbnRseSBtYXkgbmVlZCB0aGlzIHdoZW4g Y2FsbGVkIGZyb20gYQorOzsgbGF0ZXgtbW9kZSBidWZmZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZp bGVzIG9yIGJ1ZmZlcnMgd2l0aCBhIC50ZXgKKzs7IHN1ZmZpeCAoaW5jbHVkaW5nIHRoZSBidWZm ZXIgZnJvbSB3aGljaCBpdCBoYXMgYmVlbiBjYWxsZWQpLiAgV2UKKzs7IGFwcGVuZCBpdCB0byBg YXV0by1tb2RlLWFsaXN0JyBzbyBhcyBub3QgdG8gaW50ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7 OyBtb2RlLXNldHRpbmcgYXBwYXJhdHVzLiAgQ2hhbmdlcyBoZXJlIGFuZCBpbiBBVUNUZVggc2hv dWxkIHNvb24KKzs7IHJlbmRlciBpdCB1bm5lY2Vzc2FyeS4KKyhhZGQtdG8tbGlzdCAnYXV0by1t b2RlLWFsaXN0ICcoIlxcLlt0VF1lW3hYXVxcJyIgLiBsYXRleC1tb2RlKSB0KQorCisoY2wtZGVm bWV0aG9kIHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50ICgoX2JhY2tlbmQgKGVxbCAn dGV4LWV0YWdzKSkpCisgIChyZXF1aXJlICdldGFncykKKyAgKHRleC0tdGhpbmctYXQtcG9pbnQp KQorCis7OyBUaGUgZGV0ZWN0aW9uIG9mIGBfJyBhbmQgYDonIGlzIGEgcHJpbWl0aXZlIG1ldGhv ZCBmb3IgZGV0ZXJtaW5pbmcKKzs7IHdoZXRoZXIgcG9pbnQgaXMgb24gYW4gZXhwbDMgY29uc3Ry dWN0LiAgSXQgbWF5IGZhaWwgaW4gc29tZQorOzsgaW5zdGFuY2VzLgorKGRlZnVuIHRleC0tdGhp bmctYXQtcG9pbnQgKCkKKyAgIkRlbWFyY2F0ZSBgdGhpbmctYXQtcG9pbnQnIGZvciB0aGUgVGVY IGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxldCAoKGJvdW5kcyAodGV4LS1ib3VuZHMtb2Ytc3ltYm9s LWF0LXBvaW50KSkpCisgICAgKHdoZW4gYm91bmRzCisgICAgICAobGV0ICgodGV4c3ltIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMgKGNhciBib3VuZHMpIChjZHIgYm91bmRzKSkpKQor ICAgICAgICAoaWYgKGFuZCAobm90IChzdHJpbmctbWF0Y2gtcCAicmVmZXJlbmNlIiAoc3ltYm9s LW5hbWUgdGhpcy1jb21tYW5kKSkpCisgICAgICAgICAgICAgICAgIChzZXEtY29udGFpbnMtcCB0 ZXhzeW0gP18pCisgICAgICAgICAgICAgICAgIChzZXEtY29udGFpbnMtcCB0ZXhzeW0gPzopKQor ICAgICAgICAgICAgKHNlcS10YWtlIHRleHN5bSAoc2VxLXBvc2l0aW9uIHRleHN5bSA/OikpCisg ICAgICAgICAgdGV4c3ltKSkpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1v Zi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJjaC1iYWNrd2FyZCAoY29uY2F0ICJbXVsi CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNvbmNhdCAjJ3JlZ2V4cC1xdW90 ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNhciAjJ2No YXItdG8tc3RyaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHRleC10aGluZ2F0cHQtZXhjbHVkZS1jaGFycykpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIlwiKmAnIz0mKCklLHwkWzpjbnRybDpdWzpibGFuazpdXSIpKQorICAgKGZv cndhcmQtY2hhcikpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCAoKQor ICAoYW5kCisgICAocmUtc2VhcmNoLWZvcndhcmQgKGNvbmNhdCAiW11bIgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKG1hcGNvbmNhdCAjJ3JlZ2V4cC1xdW90ZQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hcGNhciAjJ2NoYXItdG8tc3RyaW5nCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC10aGlu Z2F0cHQtZXhjbHVkZS1jaGFycykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXCIq YCcjPSYoKSUsfCRbOmNudHJsOl1bOmJsYW5rOl1dIikpCisgICAoYmFja3dhcmQtY2hhcikpKQor CisoZGVmdW4gdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50ICgpCisgICJTaW1wbGlmeSBg Ym91bmRzLW9mLXRoaW5nLWF0LXBvaW50JyBmb3IgVGVYIGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxl dCAoKG9yaWcgKHBvaW50KSkpCisgICAgKGlnbm9yZS1lcnJvcnMKKyAgICAgIChzYXZlLWV4Y3Vy c2lvbgorCSh0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sKQorCSh0ZXgtdGhpbmdhdHB0LS1i ZWdpbm5pbmctb2Ytc3ltYm9sKQorCShsZXQgKChiZWcgKHBvaW50KSkpCisJICAoaWYgKDw9IGJl ZyBvcmlnKQorCSAgICAgIChsZXQgKChyZWFsLWVuZAorCQkgICAgIChwcm9nbgorCQkgICAgICAg KHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wpCisJCSAgICAgICAocG9pbnQpKSkpCisJCShj b25kICgoYW5kICg8PSBvcmlnIHJlYWwtZW5kKSAoPCBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAg KGNvbnMgYmVnIHJlYWwtZW5kKSkKKyAgICAgICAgICAgICAgICAgICAgICAoKGFuZCAoPSBvcmln IHJlYWwtZW5kKSAoPSBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAgKGNvbnMgYmVnICgxKyBiZWcp KSkpKSkpKSkpKTs7IEZvciAxLWNoYXIgVGVYIGNvbW1hbmRzLgorCisoY2wtZGVmbWV0aG9kIHhy ZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAn dGV4LWV0YWdzKSkpCisgICh4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxl ICdldGFncykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxl dGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RleC1ldGFn cykpKQorICAoeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAn ZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAoKF9iYWNr ZW5kIChlcWwgJ3RleC1ldGFncykpIHN5bWJvbCkKKyAgKHhyZWYtYmFja2VuZC1kZWZpbml0aW9u cyAnZXRhZ3Mgc3ltYm9sKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtYXByb3BvcyAo KF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHBhdHRlcm4pCisgICh4cmVmLWJhY2tlbmQtYXBy b3BvcyAnZXRhZ3MgcGF0dGVybikpCisKKzs7IFRoZSBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMn IG1ldGhvZCByZXF1aXJlcyBtb3JlIGNvZGUgdGhhbiB0aGUKKzs7IG90aGVycyBmb3IgYXQgbGVh c3QgdHdvIG1haW4gcmVhc29uczogVGVYIGF1dGhvcnMgaGF2ZSB0eXBpY2FsbHkgYmVlbgorOzsg ZnJlZSBpbiB0aGVpciBpbnZlbnRpb24gb2YgbmV3IGZpbGUgdHlwZXMgd2l0aCBuZXcgc3VmZml4 ZXMsIGFuZCB0aGV5Cis7OyBoYXZlIGFsc28gdGVuZGVkIHNvbWV0aW1lcyB0byBpbmNsdWRlIG5v bi1zeW1ib2wgY2hhcmFjdGVycyBpbgorOzsgY29tbWFuZCBuYW1lcy4gIFdoZW4gY29tYmluZWQg d2l0aCB0aGUgZGVmYXVsdCBTZW1hbnRpYyBTeW1ib2wKKzs7IFJlZmVyZW5jZSBBUEksIHRoZXNl IHR3byBjaGFyYWN0ZXJpc3RpY3Mgb2YgVGVYIGNvZGUgbWVhbiB0aGF0IGEKKzs7IGNvbW1hbmQg bGlrZSBgeHJlZi1maW5kLXJlZmVyZW5jZXMnIHdvdWxkIG9mdGVuIGZhaWwgdG8gZmluZCBhbnkg aGl0cworOzsgZm9yIGEgc3ltYm9sIGF0IHBvaW50LCBpbmNsdWRpbmcgdGhlIG9uZSB1bmRlciBw b2ludCBpbiB0aGUgY3VycmVudAorOzsgYnVmZmVyLCBvciBpdCB3b3VsZCBmaW5kIG9ubHkgc29t ZSBpbnN0YW5jZXMgYW5kIHNraXAgb3RoZXJzLgorCisoZGVmdW4gdGV4LWZpbmQtcmVmZXJlbmNl cy1zeW50YXgtdGFibGUgKCkKKyAgKGxldCAoKHN0IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50 YXgtdGFibGUpCisgICAgICAgICAgICAgICAgIChtYWtlLXN5bnRheC10YWJsZSBUZVgtbW9kZS1z eW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAobWFrZS1zeW50YXgtdGFibGUgdGV4LW1vZGUt c3ludGF4LXRhYmxlKSkpKQorICAgIHN0KSkKKworKGRlZnZhciB0ZXgtLXhyZWYtc3ludGF4LWZ1 biBuaWwpCisKKyhkZWZ1biB0ZXgteHJlZi1zeW50YXgtZnVuY3Rpb24gKHN0ciBiZWcgZW5kKQor ICAiUHJvdmlkZSBhIGJlc3Bva2UgYHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uJyBmb3IgXFxb eHJlZi1maW5kLXJlZmVyZW5jZXNdLiIKKyAgKGxldCogKGdycGIgdGVtcHN0cgorICAgICAgICAg ICAgICAoc2hydHN0ciAoaWYgZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocHJvZ24K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgdGVtcHN0ciAoc2VxLXRha2Ugc3Ry ICgxLSAobGVuZ3RoIHN0cikpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGJl ZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgdGVtcHN0ciAoc2VxLWRy b3AgdGVtcHN0ciAxKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wc3RyKSkK KyAgICAgICAgICAgICAgICAgICAgICAgICAoc2VxLWRyb3Agc3RyIDEpKSkKKyAgICAgICAgICAg ICAgKGdycGEgKGlmIChhbmQgYmVnIGVuZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIChwcm9n MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAoc2V0cSBncnBiIChsaXN0IDIgIl8iKSkpCisgICAgICAgICAgICAgICAg ICAgICAgKGxpc3QgMSAiXyIpKSkKKyAgICAgICAgICAgICAgKHJlIChjb25jYXQgYmVnIChyZWdl eHAtcXVvdGUgc2hydHN0cikgZW5kKSkKKyAgICAgICAgICAgICAgKHRlbXAtcnVsZSAoaWYgZ3Jw YgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCByZSBncnBhIGdycGIpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAobGlzdCByZSBncnBhKSkpKQorICAgIDs7IFNpbXBsZSBi ZW5jaG1hcmtzIHN1Z2dlc3RlZCB0aGF0IHRoZSBzcGVlZC11cCBmcm9tIGNvbXBpbGluZyB0aGlz CisgICAgOzsgZnVuY3Rpb24gd2FzIG5lYXJseSBuaWwsIHNvIGBldmFsJyBhbmQgaXRzIG5vbi1i eXRlLWNvbXBpbGVkCisgICAgOzsgZnVuY3Rpb24gcmVtYWluLgorICAgIChzZXRxIHRleC0teHJl Zi1zeW50YXgtZnVuIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAoc3lu dGF4LXByb3BlcnRpemUtcnVsZXMgLHRlbXAtcnVsZSkpKSkpCisKKyhkZWZ1biB0ZXgtLWNvbGxl Y3QtZmlsZS1leHRlbnNpb25zICgpCisgICJHYXRoZXIgVGVYIGZpbGUgZXh0ZW5zaW9ucyBmcm9t IGBhdXRvLW1vZGUtYWxpc3QnLiIKKyAgKGxldCogKChtbGlzdCAod2hlbiAocmFzc3EgbWFqb3It bW9kZSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgKHNlcS1maWx0ZXIKKwkJICAgKGxhbWJkYSAoZWx0 KQorCQkgICAgIChlcSAoY2RyIGVsdCkgbWFqb3ItbW9kZSkpCisJCSAgIGF1dG8tbW9kZS1hbGlz dCkpKQorCSAobGNzeW0gKGludGVybi1zb2Z0IChkb3duY2FzZSAoc3ltYm9sLW5hbWUgbWFqb3It bW9kZSkpKSkKKwkgKGxjbGlzdCAoYW5kIGxjc3ltCisJCSAgICAgIChub3QgKGVxIGxjc3ltIG1h am9yLW1vZGUpKQorCQkgICAgICAocmFzc3EgbGNzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkgICAg ICAoc2VxLWZpbHRlcgorCQkgICAgICAgKGxhbWJkYSAoZWx0KQorCQkJIChlcSAoY2RyIGVsdCkg bGNzeW0pKQorCQkgICAgICAgYXV0by1tb2RlLWFsaXN0KSkpCisJIChzaG9ydHN5bSAod2hlbiAo c3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgKGludGVybi1zb2Z0IChjb25jYXQgKHN0cmluZy10 cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkJICAiLW1vZGUiKSkpKQorCSAobGNzaG9y dHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgICAoaW50ZXJuLXNvZnQgKGRv d25jYXNlCisJCQkJICAgICAoY29uY2F0CisJCQkJICAgICAgKHN0cmluZy10cmltLXJpZ2h0IG1v ZGUtbmFtZSAiLy4qIikKKwkJCQkgICAgICAiLW1vZGUiKSkpKSkKKwkgKHNobGlzdCAoYW5kIHNo b3J0c3ltCisJCSAgICAgIChub3QgKGVxIHNob3J0c3ltIG1ham9yLW1vZGUpKQorCQkgICAgICAo bm90IChlcSBzaG9ydHN5bSBsY3N5bSkpCisJCSAgICAgIChyYXNzcSBzaG9ydHN5bSBhdXRvLW1v ZGUtYWxpc3QpCisJCSAgICAgIChzZXEtZmlsdGVyCisJCSAgICAgICAobGFtYmRhIChlbHQpCisJ CQkgKGVxIChjZHIgZWx0KSBzaG9ydHN5bSkpCisJCSAgICAgICBhdXRvLW1vZGUtYWxpc3QpKSkK KwkgKGxjc2hsaXN0IChhbmQgbGNzaG9ydHN5bQorCQkJKG5vdCAoZXEgbGNzaG9ydHN5bSBtYWpv ci1tb2RlKSkKKwkJCShub3QgKGVxIGxjc2hvcnRzeW0gbGNzeW0pKQorCQkJKHJhc3NxIGxjc2hv cnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkJKHNlcS1maWx0ZXIKKwkJCSAobGFtYmRhIChlbHQp CisJCQkgICAoZXEgKGNkciBlbHQpIGxjc2hvcnRzeW0pKQorCQkJIGF1dG8tbW9kZS1hbGlzdCkp KQorCSAoZXh0cyAod2hlbiAob3IgbWxpc3QgbGNsaXN0IHNobGlzdCBsY3NobGlzdCkKKwkJIChz ZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNsaXN0KQorCQkJICAgIChzZXEtdW5pb24gKHNlcS1t YXAgIydjYXIgbWxpc3QpCisJCQkJICAgICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNz aGxpc3QpCisJCQkJCQkgIChzZXEtbWFwICMnY2FyIHNobGlzdCkpKSkpKQorCSAoZWQtZXh0cyAo d2hlbiBleHRzCisJCSAgICAoc2VxLW1hcAorCQkgICAgIChsYW1iZGEgKGVsdCkKKwkJICAgICAg IChjb25jYXQgIioiIChzdHJpbmctdHJpbSAgZWx0ICJcXFxcIiAiXFxcXCciKSkpCisJCSAgICAg ZXh0cykpKSkKKyAgICBlZC1leHRzKSkKKworKGRlZnZhciB0ZXgtLWJ1ZmZlcnMtbGlzdCBuaWwp CisoZGVmdmFyLWxvY2FsIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbiBuaWwpCisKKyhjbC1kZWZt ZXRob2QgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3Mp KSBpZGVudGlmaWVyKQorICAiRmluZCByZWZlcmVuY2VzIG9mIElERU5USUZJRVIgaW4gVGVYIGJ1 ZmZlcnMgYW5kIGZpbGVzLiIKKyAgKHJlcXVpcmUgJ3NlbWFudGljL3N5bXJlZi9ncmVwKQorICAo ZGVmdmFyIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKGxldCAoYnVmcyB0 ZXhidWZzCisgICAgICAgICAgICAgKG1vZGUgbWFqb3ItbW9kZSkpCisgICAgKGRvbGlzdCAoYnVm IChidWZmZXItbGlzdCkpCisgICAgICAoaWYgKGVxIChidWZmZXItbG9jYWwtdmFsdWUgJ21ham9y LW1vZGUgYnVmKSBtb2RlKQorICAgICAgICAgIChwdXNoIGJ1ZiBidWZzKQorICAgICAgICAod2hl biAoc3RyaW5nLW1hdGNoLXAgIi4qXFwuW3RUXWVbeFhdIiAoYnVmZmVyLW5hbWUgYnVmKSkKKyAg ICAgICAgICAocHVzaCBidWYgdGV4YnVmcykpKSkKKyAgICAodW5sZXNzIChzZXEtc2V0LWVxdWFs LXAgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKyAgICAgIChsZXQqICgoYW1hbGlzdCAodGV4LS1j b2xsZWN0LWZpbGUtZXh0ZW5zaW9ucykpCisJICAgICAoZXh0bGlzdCAoYWxpc3QtZ2V0IG1vZGUg c2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KSkKKwkgICAgIChleHRsaXN0LW5ldyAo c2VxLXVuaXEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtdW5pb24gYW1hbGlzdCBl eHRsaXN0ICMnc3RyaW5nLW1hdGNoLXApKSkpCisJKHNldHEgdGV4LS1idWZmZXJzLWxpc3QgYnVm cykKKwkoZG9saXN0IChidWYgYnVmcykKKwkgICh3aGVuLWxldCAoKGZidWYgKGJ1ZmZlci1maWxl LW5hbWUgYnVmKSkKKwkJICAgICAoZXh0IChmaWxlLW5hbWUtZXh0ZW5zaW9uIGZidWYpKQorCQkg ICAgIChmaW5leHQgKGNvbmNhdCAiKi4iIGV4dCkpCisJCSAgICAgKChub3QgKHNlcS1maW5kIChs YW1iZGEgKGVsdCkgKHN0cmluZy1tYXRjaC1wIGVsdCBmaW5leHQpKQorCQkJCSAgICAgZXh0bGlz dC1uZXcpKSkKKwkJICAgICAoKHB1c2ggZmluZXh0IGV4dGxpc3QtbmV3KSkpKSkKKwkodW5sZXNz IChzZXEtc2V0LWVxdWFsLXAgZXh0bGlzdC1uZXcgZXh0bGlzdCkKKwkgIChzZXRmIChhbGlzdC1n ZXQgbW9kZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisgICAgICAgICAgICAg ICAgZXh0bGlzdC1uZXcpKSkpCisgICAgKGxldCogKHNldHN5bnRheAorICAgICAgICAgICAocHVu Y3QgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtZmluZC1yZWZlcmVuY2VzLXN5bnRheC10YWJsZSkK KyAgICAgICAgICAgICAgICAgICAgKHNlcS1wb3NpdGlvbnMgaWRlbnRpZmllciAobGlzdCA/dyA/ XykKKwkJCSAgICAgICAgICAgKGxhbWJkYSAoZWx0IHN5Y29kZSkKKwkJCSAgICAgICAgICAgICAo bm90IChtZW1xIChjaGFyLXN5bnRheCBlbHQpIHN5Y29kZSkpKSkpKQorICAgICAgICAgICAoZW5k IChhbmQgcHVuY3QKKyAgICAgICAgICAgICAgICAgICAgIChtZW1xICgxLSAobGVuZ3RoIGlkZW50 aWZpZXIpKSBwdW5jdCkKKyAgICAgICAgICAgICAgICAgICAgICg+IChsZW5ndGggaWRlbnRpZmll cikgMSkKKyAgICAgICAgICAgICAgICAgICAgIChjb25jYXQgIlxcKCIKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHJlZ2V4cC1xdW90ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHN0cmluZyAoZWx0IGlkZW50aWZpZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoMS0gKGxlbmd0aCBpZGVudGlmaWVyKSkpKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAgICAgKGJlZyAoYW5kIHB1bmN0CisgICAg ICAgICAgICAgICAgICAgICAobWVtcSAwIHB1bmN0KQorICAgICAgICAgICAgICAgICAgICAgKGNv bmNhdCAiXFwoIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocmVnZXhwLXF1b3RlIChz dHJpbmcgKGVsdCBpZGVudGlmaWVyIDApKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IlxcKSIpKSkKKyAgICAgICAgICAgKHRleHQtbW9kZS1ob29rCisgICAgICAgICAgICAoaWYgKG9y IGVuZCBiZWcpCisgICAgICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAodGV4 LXhyZWYtc3ludGF4LWZ1bmN0aW9uIGlkZW50aWZpZXIgYmVnIGVuZCkKKyAgICAgICAgICAgICAg ICAgIChzZXRxIHNldHN5bnRheCAobGFtYmRhICgpCisJCSAgICAgICAgICAgICAgICAgICAgKHNl dHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleC0teHJlZi1zeW50YXgtZnVuKQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEtbG9jYWwgVGVYLXN0eWxlLWhvb2st YXBwbGllZC1wIHQpKSkKKyAgICAgICAgICAgICAgICAgIChjb25zIHNldHN5bnRheCB0ZXh0LW1v ZGUtaG9vaykpCisgICAgICAgICAgICAgIHRleHQtbW9kZS1ob29rKSkpCisgICAgICAodW5sZXNz IChtZW1xICdkb2N0ZXgtbW9kZSAoZGVyaXZlZC1tb2RlLWFsbC1wYXJlbnRzIG1vZGUpKQorICAg ICAgICAoc2V0cSBidWZzIChhcHBlbmQgdGV4YnVmcyBidWZzKSkpCisgICAgICAod2hlbiAob3Ig ZW5kIGJlZykKKyAgICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAgICAgKHdpdGgtY3Vy cmVudC1idWZmZXIgYnVmCisgICAgICAgICAgICAodW5sZXNzIChsb2NhbC12YXJpYWJsZS1wICd0 ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pCisgICAgICAgICAgICAgIChzZXRxIHRleC0tb2xkLXN5 bnRheC1mdW5jdGlvbiBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbikpCisgICAgICAgICAgICAo c2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAg ICAgICAgdGV4LS14cmVmLXN5bnRheC1mdW4pCisgICAgICAgICAgICAoc3ludGF4LXBwc3MtZmx1 c2gtY2FjaGUgKHBvaW50LW1pbikpKSkpCisgICAgICAodW53aW5kLXByb3RlY3QKKyAgICAgICAg ICAoeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMgbmlsIGlkZW50aWZpZXIpCisgICAgICAgICh3aGVu IChvciBlbmQgYmVnKQorICAgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQorICAgICAgICAgICAg KHdpdGgtY3VycmVudC1idWZmZXIgYnVmCisgICAgICAgICAgICAgICh3aGVuIGJ1ZmZlci1maWxl LXRydWVuYW1lCisgICAgICAgICAgICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUt ZnVuY3Rpb24KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLW9sZC1zeW50YXgtZnVu Y3Rpb24pCisgICAgICAgICAgICAgICAgKHN5bnRheC1wcHNzLWZsdXNoLWNhY2hlIChwb2ludC1t aW4pKSkpKSkpKSkpCisKIChtYWtlLW9ic29sZXRlLXZhcmlhYmxlICd0ZXgtbW9kZS1sb2FkLWhv b2sKICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2UgYHdpdGgtZXZhbC1hZnRlci1sb2FkJyBp bnN0ZWFkLiIgIjI4LjEiKQogKHJ1bi1ob29rcyAndGV4LW1vZGUtbG9hZC1ob29rKQotLSAKMi4z OS40Cgo= --00000000000071180b061891c40c--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 16 May 2024 07:56:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 16 03:56:31 2024 Received: from localhost ([127.0.0.1]:47270 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s7VyZ-0007gw-6i for submit <at> debbugs.gnu.org; Thu, 16 May 2024 03:56:31 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40342) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1s7VyX-0007gq-LB for 53749 <at> debbugs.gnu.org; Thu, 16 May 2024 03:56:30 -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 <arash@HIDDEN>) id 1s7VwG-0006dN-CO; Thu, 16 May 2024 03:54:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=10MNOxlh0bACDO/SMICNgQIN4kU5DBR9acpu1mW1ZpI=; b=PHyIXq4VKlrmjXPTRmif k0e3b6f0i+9b2lTQfkzNZbxWzGjZJCQiGT8C00msODWwJRu9COQpwM8pGoun+z2XBHlRBzNcaK92B T278JnTDCNLE8fzrcKPYBhGVTPCryx25H28GVMtQIjbVxEY/P02eFbOJS33bUPF3PPL9b60kymztZ FMI/NHdIO/Tznyf1nozOGKbVDwWEOnhJA2Xym/phBrIYzoD08/8KvBXsmw+0fx2lNJp5GSXRKqepx 1Zug6WPkR0jSA7IvcnmdQmwolP748aRWV72kcdqteVnL9PY2yDAbdUvWhNvjQq1aGjmKHurJl07Fo m4TYhINviuBLSA==; From: Arash Esbati <arash@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtisRw=2rKS+Kx_dFFObGktbbSvD+vqp2n-TuXhgX=8XFQ@HIDDEN> (David Fussner's message of "Wed, 15 May 2024 16:47:46 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> <CADF+RtisRw=2rKS+Kx_dFFObGktbbSvD+vqp2n-TuXhgX=8XFQ@HIDDEN> Date: Thu, 16 May 2024 09:53:59 +0200 Message-ID: <m2v83eur8o.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (---) David Fussner <dfussner@HIDDEN> writes: > +(defun tex-expl-buffer-parse () > + "Identify buffers where expl3 syntax is always active." > + (save-excursion > + (goto-char (point-min)) > + (when (tex-search-noncomment > + (re-search-forward > + "\\(?:\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)\\)" Is the outer grouping necessary? Why not just: "\\\\\\(?:ExplFile\\|ProvidesExpl\\|__xparse_file\\)" > + nil t)) > + (setq tex-expl-buffer-p t)))) > + > +(defun tex-expl-region-set (_beg _end) > + "Create a list of regions where expl3 syntax is active. > +This function updates the list whenever `syntax-propertize' runs, and > +stores it in the buffer-local variable `tex-expl-region-list'. The > +list will always be nil when the buffer visits an expl3 file, e.g., an > +expl3 class or package, where expl3 syntax is always active." > + (unless syntax-ppss--updated-cache;; Stop forward search running twice. > + (setq tex-expl-region-list nil) > + ;; Leaving this test here allows users to set `tex-expl-buffer-p' > + ;; independently of the mode's automatic detection of an expl3 file. > + (unless tex-expl-buffer-p > + (goto-char (point-min)) > + (while (tex-search-noncomment > + (re-search-forward "\\ExplSyntaxOn" nil t)) This looks wrong, I think you want `search-forward'. > + (let ((new-beg (point)) > + (new-end (or (tex-search-noncomment > + (re-search-forward "\\ExplSyntaxOff" nil t)) Same here. > + (point-max)))) > + (push (cons new-beg new-end) tex-expl-region-list)))))) Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 15 May 2024 15:48:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 15 11:48:49 2024 Received: from localhost ([127.0.0.1]:42790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s7Gs2-0003Rb-UZ for submit <at> debbugs.gnu.org; Wed, 15 May 2024 11:48:49 -0400 Received: from mail-pf1-f181.google.com ([209.85.210.181]:43228) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s7Grz-0003RT-5L for 53749 <at> debbugs.gnu.org; Wed, 15 May 2024 11:48:45 -0400 Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-6f457853950so5291754b3a.0 for <53749 <at> debbugs.gnu.org>; Wed, 15 May 2024 08:48:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715788055; x=1716392855; 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=wG28VNEHsmBOfD7gbh6Js0uuuI5QZYQmtwXx8QNFuEQ=; b=GiRaRbM5YevgsU+PAwU1o4RgPyGlu9Ejw0pi7uI5EPf0Awi3eIVLgmnZmK3RBwCjfq hcaovSKP5uScHGx2a9Hi6oZabrNfQcmcHoa0YCrZ/wK7c81rNKyReUDoP9EWGlZ+CfcG CYrf2MHXzDr/EGikCp1akSdmTrx0drYUM1u4V8g2gOP770sTfbWSPVk3MZ8mMe2DUesK u6VSRrnxDgiUyUA3iUz6YEK3gu10gcbDASK55wWpKuEOBI62960OP05i1PqO+3OocwpW pXSRYWu0r4iVEdoEQGtGDsmJd0hz+4rO/voQUkokeaUcq+M/l/GXu6STNoWBhlmbu5ZX 9l8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715788055; x=1716392855; 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=wG28VNEHsmBOfD7gbh6Js0uuuI5QZYQmtwXx8QNFuEQ=; b=kGs1ujmhUDFOOl7XKxLfZBoICSGSq6Oe3NpJlfWo+CDxjHxR+uNA/K6U5kuTGVf9Ef KU1vqVuESmjT788nW6a6wr1qSPv6gveAvQQyLHvuSnmaseSGwCwPkKD0GkWVckicDHa8 umkyLYoXic6uyI/FU61hqjsnYRhwFwLB6h2zeVUMVneety7ZT7i+ZrDWrb8pzCBL9OOj alaJjWA9W7x/ou3eKPRrO5OayrMh+CzANALeovvpE/H82qyfTJwAqgaoJCQsrGFUUcek Nd7F5nheIcfjTLH6jRqWHW5dGYUfGrUZBbnzfS9I27EpNBqAlGpTgtWmX0fcrFm20hLs 8vVg== X-Forwarded-Encrypted: i=1; AJvYcCXspdrr5+bLwok69lc6lnXngtyJg/RWz+tD9ED8o+xxjSAFzrA74pdRT2K92ArNYozUHeVDvkpxy8UO6cXYpZBQaLIUu6o= X-Gm-Message-State: AOJu0YywF6B+0Il9CmNpmETo+1e+koJp4BHok4s9Bq1YDKyy1I3HSSYd VSmjCi0wCBpQyKLaqJHmCQ3NJMzjgEZaVqtB1Ghwnz1E5p/NYuW5azpUppIxFZ+4JAmHz+p00mO slyQanld1Z2XTNvysUkPr6GLSN58= X-Google-Smtp-Source: AGHT+IGnwhPLnCUZWy65ZvMBqck5gOzZXq/aBodpiRX8T9dv3a7Cz1b1TYfZKDJgQE/8h17i4e2G788/Par0JzZYo/Y= X-Received: by 2002:a17:90b:4f8d:b0:2a2:fec9:1bbd with SMTP id 98e67ed59e1d1-2b65fe214c7mr28090302a91.17.1715788055297; Wed, 15 May 2024 08:47:35 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> In-Reply-To: <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 15 May 2024 16:47:46 +0100 Message-ID: <CADF+RtisRw=2rKS+Kx_dFFObGktbbSvD+vqp2n-TuXhgX=8XFQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> Content-Type: multipart/mixed; boundary="0000000000008be4640618800951" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Dmitry Gutov <dgutov@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) --0000000000008be4640618800951 Content-Type: text/plain; charset="UTF-8" Hi Stefan, I attach an updated patch for tex-mode and etags, in which I've attempted to include all of your recommendations. A few notes: 1. I changed the name as well as the doc string of the variable holding the TeX escape and grouping chars (now `tex-thingatpt-exclude-chars`). I hope this makes it clearer. 2. I removed the regexp for detecting expl3 constructs, and now rely on the mechanism I outlined in my previous work-in-progress patch: (a) Test for expl3 class or package, set `tex-expl-file-p` to t. (b) If not (a), add `tex-expl-region-set` to the `syntax-propertize-extend-region-functions` hook to list all regions between \ExplSyntaxOn and \ExplSyntaxOff (`tex-expl-region-list`). (c) Add test in `tex-font-lock-suscript` for (a) then (b), don't subscript after the underscore when either is t. 3. I tried benchmarking `syntax-ppss-flush-cache` and `font-lock-flush` before and after the changes. The former had a maximum slowdown of 0.5% (usually less) and the latter a maximum of 0.2%, but if you want to see my methodology or suggest something to try please let me know. 4. I left the bespoke `syntax-propertize-function` in the `xref-backend-references` method uncompiled, as simple benchmarking suggested no perceptible gain from byte compiling it. Using `syntax-ppss-flush-cache` to restore the status quo ante in each file-visiting buffer streamlined the code and made it do what it was supposed to do. Thanks again for your advice, and please let me know what still needs work. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier <monnier@HIDDEN> wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan > --0000000000008be4640618800951 Content-Type: text/x-patch; charset="US-ASCII"; name="0002-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0002-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lw7zw08w0> X-Attachment-Id: f_lw7zw08w0 RnJvbSA4N2Q4Mzc3OGNlOGMzNTM2NTkzNzMyMjE4M2QxMDFiZTIzNGFjODgyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAxNSBNYXkgMjAyNCAxNjozNjoxNSArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC1mb250LWxvY2stc3VzY3JpcHQpOiBU ZXN0IGZvcgp1bmRlcnNjb3JlIGluIGV4cGwzIGZpbGVzIGFuZCByZWdpb25zLCBkaXNhYmxlIHN1 YnNjcmlwdCBmYWNlIHRoZXJlLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLiBEZXRlY3QgZXhwbDMgZmlsZXMsIGFu ZCBpbiBvdGhlcnMgc2V0IHVwIGEgbGlzdCBvZiBleHBsMwpyZWdpb25zLgoodGV4LWV4cGwtYnVm ZmVyLXBhcnNlKTogTmV3IGZ1bmN0aW9uIGNhbGxlZCBpbiBwcmV2aW91cy4KKHRleC1leHBsLWJ1 ZmZlci1wKTogTmV3IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtZXhw bC1yZWdpb24tc2V0KTogTmV3IGZ1bmN0aW9uIGFkZGVkIHRvCidzeW50YXgtcHJvcGVydGl6ZS1l eHRlbmQtcmVnaW9uLWZ1bmN0aW9ucycgaG9vay4KKHRleC1leHBsLXJlZ2lvbi1saXN0KTogTmV3 IHZhciB0byBob2xkIHRoZSByZXN1bHQgb2YgcHJldmlvdXMuCih0ZXgtLXRoaW5nLWF0LXBvaW50 LCB0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQoodGV4LXRoaW5nYXRwdC0tZW5k LW9mLXN5bWJvbCwgdGV4LS1ib3VuZHMtb2Ytc3ltYm9sLWF0LXBvaW50KToKTmV3IGZ1bmN0aW9u cyB0byByZXR1cm4gJ3RoaW5nLWF0LXBvaW50JyBmb3IgeHJlZiBiYWNrZW5kLgoodGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzKTogTmV3IHZhciB0byBkbyB0aGUgc2FtZS4KKHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWF0LXBvaW50KTogTmV3IFRlWCBiYWNrZW5kIG1ldGhvZCB0byBwcm92aWRl CnN5bWJvbHMgZm9yIHByb2Nlc3NpbmcgYnkgeHJlZi4KKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cyk6IFBsYWNlaG9sZGVycyB0bwpjYWxsIHRoZSBzdGFuZGFyZCAnZXRhZ3MnIHhyZWYgYmFja2Vu ZCBtZXRob2RzLgooeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMpOiBXcmFwcGVyIHRvIGNhbGwgdGhl IGRlZmF1bHQgeHJlZiBiYWNrZW5kCm1ldGhvZCwgZmluZGluZyBhcyBtYW55IHJlbGV2YW50IGZp bGVzIGFzIHBvc3NpYmxlIGFuZCB1c2luZyBhIGJlc3Bva2UKc3ludGF4LXByb3BlcnRpemUtZnVu Y3Rpb24gd2hlbiByZXF1aXJlZC4KKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMsIHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbik6IEhlbHBlcgpmdW5jdGlvbnMgZm9yIHByZXZpb3VzLgoodGV4 LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUsIHRleC0tYnVmZmVycy1saXN0KQoodGV4LS14 cmVmLXN5bnRheC1mdW4sIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbik6IE5ldyB2YXJzIGZvciBz YW1lLgotLS0KIGRvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIHwgIDM5ICsrKy0KIGxpYi1zcmMv ZXRhZ3MuYyAgICAgICAgICAgIHwgMTg5ICsrKysrKysrKysrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzcyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0KIDMgZmlsZXMgY2hhbmdlZCwgNTc5IGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggNTc5MDk4YzgxYjEuLmEwNjQxMDNhYTI1IDEwMDY0NAotLS0gYS9k b2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQorKysgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4 aQpAQCAtMjUyOSw2ICsyNTI5LDE1IEBAIElkZW50aWZpZXIgU2VhcmNoCiByZWZlcmVuY2VkLiAg VGhlIFhSRUYgbW9kZSBjb21tYW5kcyBhcmUgYXZhaWxhYmxlIGluIHRoaXMgYnVmZmVyLCBzZWUK IEByZWZ7WHJlZiBDb21tYW5kc30uCiAKK1doZW4gaW52b2tlZCBpbiBhIGJ1ZmZlciB3aG9zZSBt YWpvciBtb2RlIHVzZXMgdGhlIEBjb2Rle2V0YWdzfSBiYWNrZW5kLAorQGtiZHtNLT99IHNlYXJj aGVzIGZpbGVzIGFuZCBidWZmZXJzIHdob3NlIG1ham9yIG1vZGUgbWF0Y2hlcyB0aGF0IG9mCit0 aGUgb3JpZ2luYWwgYnVmZmVyLiAgSXQgZ3Vlc3NlcyB0aGF0IG1vZGUgZnJvbSBmaWxlIGV4dGVu c2lvbnMsIHNvIGlmCitAa2Jke00tP30gc2VlbXMgdG8gYmUgc2tpcHBpbmcgcmVsZXZhbnQgYnVm ZmVycyBvciBmaWxlcywgdHJ5CitjdXN0b21pemluZyBlaXRoZXIgdGhlIHZhcmlhYmxlIEBjb2Rl e3NlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdH0KKyhpZiB5b3VyIGJ1ZmZlcidzIG1h am9yIG1vZGUgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gaXQpLCBvcgorQGNvZGV7YXV0by1tb2Rl LWFsaXN0fSAoaWYgbm90KSwgdGhlcmVieSBpbmZvcm1pbmcgQGNvZGV7eHJlZn0gb2YgdGhlCitt aXNzaW5nIGV4dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhy ZWYtYXV0by1qdW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJs ZSBAY29kZXt4cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rl e3hyZWYtZmluZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApA QCAtMjc0NywxMCArMjc1NiwzMiBAQCBUYWcgU3ludGF4CiBAaXRlbQogSW4gQExhVGVYe30gZG9j dW1lbnRzLCB0aGUgYXJndW1lbnRzIGZvciBAY29kZXtcY2hhcHRlcn0sCiBAY29kZXtcc2VjdGlv bn0sIEBjb2Rle1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAotQGNvZGV7XGVx bm99LCBAY29kZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAotQGNvZGV7XGJp Yml0ZW19LCBAY29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1A Y29kZXtcaW5kZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVu ZXdjb21tYW5kfSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmly b25tZW50fSBhcmUgdGFncy4KK0Bjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJl Zn0sIEBjb2Rle1xSZWZ9LCBAY29kZXtcZm9vdHJlZn0sCitAY29kZXtcY2l0ZX0sIEBjb2Rle1xi aWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5kaXh9LAorQGNvZGV7XGVudHJ5fSwg QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LAor QGNvZGV7XHhkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAor QGNvZGV7XG5ld2Vudmlyb25tZW50fSwgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7 XERlY2xhcmVSb2J1c3RDb21tYW5kfSwgQGNvZGV7XG5ld3JvYnVzdGNtZH0sCitAY29kZXtccmVu ZXdyb2J1c3RjbWR9LCBAY29kZXtccHJvdmlkZWNvbW1hbmR9LAorQGNvZGV7XHByb3ZpZGVyb2J1 c3RjbWR9LCBAY29kZXtcTmV3RG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0RvY3VtZW50 Q29tbWFuZH0sIEBjb2Rle1xQcm92aWRlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRDb21tYW5kfSwgQGNvZGV7XE5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAor QGNvZGV7XFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUHJvdmlkZUV4 cGFuZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVFeHBhbmRhYmxlRG9jdW1l bnRDb21tYW5kfSwKK0Bjb2Rle1xOZXdEb2N1bWVudEVudmlyb25tZW50fSwgQGNvZGV7XFJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudH0sCitAY29kZXtcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnR9 LCBAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LAorQGNvZGV7XGNzZGVmfSwgQGNv ZGV7XGNzZWRlZn0sIEBjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwKK0Bjb2Rle1xjc2xl dGNzfSwgQGNvZGV7XGNzbGV0fSwgQGNvZGV7XGxldGNzfSwgQGNvZGV7XGxldH0sCitAY29kZXtc Y3NfbmV3X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwKK0Bjb2Rl e1xjc19uZXdfbm9wYXJ9LCBAY29kZXtcY3NfbmV3X2VxfSwgQGNvZGV7XGNzX25ld30sCitAY29k ZXtcY3Nfc2V0X3Byb3RlY3RlZF9ub3Bhcn0sIEBjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwKK0Bj b2Rle1xjc19zZXRfbm9wYXJ9LCBAY29kZXtcY3Nfc2V0X2VxfSwgQGNvZGV7XGNzX3NldH0sCitA Y29kZXtcY3NfZ3NldF9wcm90ZWN0ZWRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9 LAorQGNvZGV7XGNzX2dzZXRfbm9wYXJ9LCBAY29kZXtcY3NfZ3NldF9lcX0sIEBjb2Rle1xjc19n c2V0fSwKK0Bjb2Rle1xjc19nZW5lcmF0ZV9mcm9tX2FyZ19jb3VudH0sIGFuZCBAY29kZXtcY3Nf Z2VuZXJhdGVfdmFyaWFudH0gYXJlCit0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9m IGFueSBzdGFycmVkIHZhcmlhbnRzIG9mIHRoZXNlCitjb21tYW5kcy4KIAogT3RoZXIgY29tbWFu ZHMgY2FuIG1ha2UgdGFncyBhcyB3ZWxsLCBpZiB5b3Ugc3BlY2lmeSB0aGVtIGluIHRoZQogZW52 aXJvbm1lbnQgdmFyaWFibGUgQGVudntURVhUQUdTfSBiZWZvcmUgaW52b2tpbmcgQGNvbW1hbmR7 ZXRhZ3N9LiAgVGhlCmRpZmYgLS1naXQgYS9saWItc3JjL2V0YWdzLmMgYi9saWItc3JjL2V0YWdz LmMKaW5kZXggMDNiYzU1ZGUwM2QuLjExZmRkYzE4N2MyIDEwMDY0NAotLS0gYS9saWItc3JjL2V0 YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBAIC03OTMsMTEgKzc5MywyNyBAQCAjZGVmaW5l IFNURElOIDB4MTAwMQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRp biAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRlWF9zdWZmaXhlcyBbXSA9CiAgIHsgImJpYiIsICJj bG8iLCAiY2xzIiwgImx0eCIsICJzdHkiLCAiVGVYIiwgInRleCIsIE5VTEwgfTsKIHN0YXRpYyBj b25zdCBjaGFyIFRlWF9oZWxwIFtdID0KLSJJbiBMYVRlWCB0ZXh0LCB0aGUgYXJndW1lbnQgb2Yg YW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKLSdcXHNlY3Rpb24nLCAnXFxzdWJz ZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsXG5cCi0nXFxy ZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBlbmRpeCcsICdcXGVu dHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcsICdcXHJlbmV3Y29t bWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZpcm9ubWVudCcgaXMg YSB0YWcuXG5cCisiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3VtZW50IG9mIHRoZSBjb21tYW5kcyAn XFxjaGFwdGVyJywgJ1xcc2VjdGlvbicsXG5cCisnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2Vj dGlvbicsICdcXGVxbm8nLCAnXFxsYWJlbCcsICdcXHJlZicsXG5cCisnXFxSZWYnLCAnXFxmb290 cmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgnLFxuXAor J1xcZW50cnknLCAnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxnZGVmJywgJ1xceGRl ZicsXG5cCisnXFxuZXdjb21tYW5kJywgJ1xccmVuZXdjb21tYW5kJywgJ1xcbmV3cm9idXN0Y21k JywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vu dmlyb25tZW50JywgJ1xcRGVjbGFyZVJvYnVzdENvbW1hbmQnLFxuXAorJ1xccHJvdmlkZWNvbW1h bmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9jdW1lbnRDb21tYW5kJyxcblwKKydc XFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURvY3VtZW50Q29tbWFuZCcsXG5cCisn XFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFu ZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcUmVuZXdEb2N1bWVu dEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52aXJvbm1lbnQnLFxuXAorJ1xcRGVj bGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywgJ1xcY3NlZGVmJywgJ1xcY3NnZGVm JyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdcXGxldGNzJywgJ1xc bGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXInLCAnXFxjc19uZXdfcHJvdGVjdGVk JywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19lcScsICdcXGNzX25ldycsICdcXGNz X3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0X3Byb3RlY3RlZCcsICdcXGNzX3Nl dF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcsXG5cCisnXFxjc19nc2V0X3Byb3Rl Y3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywgJ1xcY3NfZ3NldF9ub3BhcicsXG5c CisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNzX2dlbmVyYXRlX2Zyb21fYXJnX2Nv dW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQnIGlzIGEgdGFnLiAgU28gaXMgdGhl IGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50IG9mIHRoZXNlIGNvbW1hbmRzLlxu XAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHNldHRpbmcgdGhlIGVu dmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8gYSBjb2xvbi1zZXBhcmF0ZWQgbGlz dCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3NDAsMTEgKzU3NTYsMjUgQEAgU2NoZW1lX2Z1 bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIgPSBOVUxM OyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyogRGVmYXVsdCBzZXQgb2YgY29udHJv bCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBvZiBlbnZp cm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisgICBUaGUgdmFs dWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRvIHRoaXMuCisgICAo MjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBhZGRpdGlvbmFsIExhVGVYIChhbmQK KyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24gdmFyaWFudHMgZnJvbSB0aGUKKyAg ICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4cGwzIGNvbW1hbmRzLiAqLwogc3Rh dGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNoYXB0ZXI6c2VjdGlvbjpzdWJzZWN0 aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0ZTpiaWJpdGVtXAotOnBhcnQ6YXBw ZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6cmVuZXdjb21tYW5kOm5ld2Vudmly b25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJlZjpSZWY6Zm9vdHJlZjpjaGFwdGVy OnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZVwKKzpiaWJpdGVtOnBh cnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2NvbW1hbmQ6cmVu ZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVjbGFyZVJvYnVz dENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVjb21tYW5kOnBy b3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1lbnRDb21tYW5k OlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwKKzpOZXdFeHBh bmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpQ cm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50 Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRFbnZpcm9ubWVu dFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVu dDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0OmxldGNzOmxldDpj c19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3X25vcGFyOmNz X25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRfcHJvdGVjdGVk OmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVkX25vcGFyXAor OmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19nc2V0XAorOmNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwogCiBzdGF0aWMg dm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwogCkBAIC01 ODAzLDE5ICs1ODMzLDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkgICAgICB7CiAJ CWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29sIG9wZ3JwID0g ZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBpc19leHBsdGhy ZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVuKTsKKworCQkv KiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcgbGlrZSB0aGlz OgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1IgfS4gIEZpcnN0 LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2UgaW5jbHVkZSBv bmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4gVEVYX2RlZmVu diBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJndW1lbnQgc3Bl Y2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFnIHRva2VuLCBz byB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhpcmQsIHdlIHNl dCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UKKwkJICAgY2Fu IHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0YWcgbmFtZQor CQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGluY2x1ZGUgZXhw bDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZpcm9ubWVudCB2 YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdlIG9mIHNlcGFy YXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRlZmluaXRpb24g b2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1lbnQgc3BlY2lm aWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5lcmF0ZV92YXJp YW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICByZXF1aXJlcyBl dGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUKKwkJICAgY29k ZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBhc3RlcmlzayBm cm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRob3V0IHRoZSBu ZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGljaXRseSBpbiBU RVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkgIHsKKwkJICAg IHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJCSAgICAgIGNw Kys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBsdGhyZWUgPSB0 cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOworCisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAq LworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJCSAgICBpZiAo KmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYgKmNwICE9ICdc MCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAgZWxzZSBpZiAo KmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAgZWxzZQorCQkg ICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAg IG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7 IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0aGUgVGVYIGVz Y2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0aGluZ3MgZm9y IGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCisJCSAgIFRo aXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcgYmVoYXZpb3IK KwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncywgdGhv dWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1Ym9wdGltYWwu ICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBsaWNhdGVzJyBt YXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJ CSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19pc3NwYWNlICYm ICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3NpbmcgYXQgdG9v IG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAgIGJvdGggdG8g ZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFtZXMKKwkJICAg cmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1hY3JvcywgYW5k CisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxsIGFsbG93aW5n IGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9IGNwOwotCQkg ICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpwICE9IFRFWF9v cGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAg IT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAgIT0gJygnICYm ICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYgKnAgIT0gJyIn ICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcsJyAmJiAqcCAh PSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7CisJCSAgLyog SW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRpb24gZnJvbQor CQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9ubHkgb25lIChk ZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNoIChwcmltYXJp bHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZmZXJlbnQsIHBv c3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJCSAgaWYgKGlz X2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNlIGlmICgqcCA9 PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZvciwgZS5nLiwg XGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJeworCQkJICBv bmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJy ZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBGb3IgVGVYIGZp bGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFuZAorCQkgICBp biBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQgY29uZnVzaW5n CisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBwb3NzaWJsZSB3 aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBidXQgYXZvaWQs IGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMuICovCisJCWlm IChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsgLyogSW5jbHVk ZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBjYXNlICdcJyc6 CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcsJzoKKwkJICAg ICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAgICAgIGNhc2Ug J3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdycCkKKwkJCSAg eworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAgPT0gJyUnKQor CQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAgICAgIGRlZmF1 bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAgLSBjcDsKIAkJ bGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xncnApCkBAIC01 ODI0LDkgKzU5NzIsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAgICAgIHArKzsK IAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1ha2VfdGFnIChj cCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVj aGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNl ICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKKwkJ CSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJCS8qIExpbmVz IHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmdseQorCQkgICBj b21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmlsZXMgdGhhdAor CQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4gIFRoaXMgdGFn cyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAvXCogV2Ugb25s eSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAmJiAqY3AgIT0g JyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0gVEVYX2VzYykK KwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhfbmV4dF9saW5l OgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgYi9saXNwL3RleHRtb2Rl cy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uMjI0OTMwZDY4YWUgMTAwNjQ0Ci0tLSBh L2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2Rl LmVsCkBAIC02MzYsNiArNjM2LDE0IEBAIHRleC1mb250LWxvY2sta2V5d29yZHMtMgogCSAgICAg IDMgJyh0ZXgtZm9udC1sb2NrLWFwcGVuZC1wcm9wICdib2xkKSAnYXBwZW5kKSkpKSkKICAgICJH YXVkeSBleHByZXNzaW9ucyB0byBoaWdobGlnaHQgaW4gVGVYIG1vZGVzLiIpCiAKKyhkZWZ2YXIt bG9jYWwgdGV4LWV4cGwtcmVnaW9uLWxpc3QgbmlsCisgICJMaXN0IG9mIHJlZ2lvbiBib3VuZGFy aWVzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhY3RpdmUuCitJdCB3aWxsIGJlIG5pbCBpbiBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLCBlLmcuLAorZXhwbDMgY2xh c3NlcyBvciBwYWNrYWdlcy4iKQorCisoZGVmdmFyLWxvY2FsIHRleC1leHBsLWJ1ZmZlci1wIG5p bAorICAiTm9uLW5pbCBpbiBidWZmZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0 aXZlLiIpCisKIChkZWZ1biB0ZXgtZm9udC1sb2NrLXN1c2NyaXB0IChwb3MpCiAgICh1bmxlc3Mg KG9yIChtZW1xIChnZXQtdGV4dC1wcm9wZXJ0eSBwb3MgJ2ZhY2UpCiAJCSAgICAnKGZvbnQtbG9j ay1jb25zdGFudC1mYWNlIGZvbnQtbG9jay1idWlsdGluLWZhY2UKQEAgLTY0NSw3ICs2NTMsMTcg QEAgdGV4LWZvbnQtbG9jay1zdXNjcmlwdAogCQkgICAgKHBvcyBwb3MpKQogCQkod2hpbGUgKGVx IChjaGFyLWJlZm9yZSBwb3MpID9cXCkKIAkJICAoc2V0cSBwb3MgKDEtIHBvcykgb2RkIChub3Qg b2RkKSkpCi0JCW9kZCkpCisJCW9kZCkKKyAgICAgICAgICAgICAgOzsgQ2hlY2sgaWYgUE9TIGlz IGluIGFuIGV4cGwzIHN5bnRheCByZWdpb24gb3IgYW4gZXhwbDMgYnVmZmVyCisgICAgICAgICAg ICAgICh3aGVuIChlcSAoY2hhci1hZnRlciBwb3MpID9fKQorICAgICAgICAgICAgICAgIChvciB0 ZXgtZXhwbC1idWZmZXItcAorICAgICAgICAgICAgICAgICAgICAoYW5kCisgICAgICAgICAgICAg ICAgICAgICB0ZXgtZXhwbC1yZWdpb24tbGlzdAorICAgICAgICAgICAgICAgICAgICAgKGNhdGNo ICdyZXN1bHQKKwkgICAgICAgICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24t bGlzdCkKKwkgICAgICAgICAgICAgICAgIChhbmQgKD4gcG9zIChjYXIgcmFuZ2UpKQorCSAgICAg ICAgICAgICAgICAgICAgICAoPCBwb3MgKGNkciByYW5nZSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAodGhyb3cgJ3Jlc3VsdCB0KSkpKSkpKSkKICAgICAoaWYgKGVxIChjaGFyLWFm dGVyIHBvcykgP18pCiAJYChmYWNlIHN1YnNjcmlwdCBkaXNwbGF5IChyYWlzZSAsKGNhciB0ZXgt Zm9udC1zY3JpcHQtZGlzcGxheSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkg KHJhaXNlICwoY2FkciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQpAQCAtMTI4OSw4ICsx MzA3LDE2IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAgICAgICAjJ3Rl eC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9w ZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzIGxhdGV4LXN5 bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgOzsgRG9uJ3QgYWRkIGV4dHJhIHByb2Nlc3Npbmcg dG8gYHN5bnRheC1wcm9wZXJ0aXplJyBpbiBmaWxlcyB3aGVyZQorICA7OyBleHBsMyBzeW50YXgg aXMgYWx3YXlzIGFjdGl2ZS4KKyAgOmFmdGVyLWhvb2sgKHByb2duICh0ZXgtZXhwbC1idWZmZXIt cGFyc2UpCisgICAgICAgICAgICAgICAgICAgICAodW5sZXNzIHRleC1leHBsLWJ1ZmZlci1wCisg ICAgICAgICAgICAgICAgICAgICAgIChhZGQtaG9vayAnc3ludGF4LXByb3BlcnRpemUtZXh0ZW5k LXJlZ2lvbi1mdW5jdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMndGV4 LWV4cGwtcmVnaW9uLXNldCBuaWwgdCkpKQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25t ZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMt bW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChh ZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0 KQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAndGV4 LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTE5MzYsNiArMTk2MiwzNSBAQCB0ZXgtY291bnQtd29yZHMK IAkJKGZvcndhcmQtc2V4cCAxKSkpKSkpCiAgICAgICAobWVzc2FnZSAiJXMgd29yZHMiIGNvdW50 KSkpKQogCisoZGVmdW4gdGV4LWV4cGwtYnVmZmVyLXBhcnNlICgpCisgICJJZGVudGlmeSBidWZm ZXJzIHdoZXJlIGV4cGwzIHN5bnRheCBpcyBhbHdheXMgYWN0aXZlLiIKKyAgKHNhdmUtZXhjdXJz aW9uCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAod2hlbiAodGV4LXNlYXJjaC1u b25jb21tZW50CisJICAgKHJlLXNlYXJjaC1mb3J3YXJkCisJICAgICJcXCg/OlxcXFxcXCg/OkV4 cGxGaWxlXFx8UHJvdmlkZXNFeHBsXFx8X194cGFyc2VfZmlsZVxcKVxcKSIKKwkgICAgbmlsIHQp KQorICAgICAgKHNldHEgdGV4LWV4cGwtYnVmZmVyLXAgdCkpKSkKKworKGRlZnVuIHRleC1leHBs LXJlZ2lvbi1zZXQgKF9iZWcgX2VuZCkKKyAgIkNyZWF0ZSBhIGxpc3Qgb2YgcmVnaW9ucyB3aGVy ZSBleHBsMyBzeW50YXggaXMgYWN0aXZlLgorVGhpcyBmdW5jdGlvbiB1cGRhdGVzIHRoZSBsaXN0 IHdoZW5ldmVyIGBzeW50YXgtcHJvcGVydGl6ZScgcnVucywgYW5kCitzdG9yZXMgaXQgaW4gdGhl IGJ1ZmZlci1sb2NhbCB2YXJpYWJsZSBgdGV4LWV4cGwtcmVnaW9uLWxpc3QnLiAgVGhlCitsaXN0 IHdpbGwgYWx3YXlzIGJlIG5pbCB3aGVuIHRoZSBidWZmZXIgdmlzaXRzIGFuIGV4cGwzIGZpbGUs IGUuZy4sIGFuCitleHBsMyBjbGFzcyBvciBwYWNrYWdlLCB3aGVyZSBleHBsMyBzeW50YXggaXMg YWx3YXlzIGFjdGl2ZS4iCisgICh1bmxlc3Mgc3ludGF4LXBwc3MtLXVwZGF0ZWQtY2FjaGU7OyBT dG9wIGZvcndhcmQgc2VhcmNoIHJ1bm5pbmcgdHdpY2UuCisgICAgKHNldHEgdGV4LWV4cGwtcmVn aW9uLWxpc3QgbmlsKQorICAgIDs7IExlYXZpbmcgdGhpcyB0ZXN0IGhlcmUgYWxsb3dzIHVzZXJz IHRvIHNldCBgdGV4LWV4cGwtYnVmZmVyLXAnCisgICAgOzsgaW5kZXBlbmRlbnRseSBvZiB0aGUg bW9kZSdzIGF1dG9tYXRpYyBkZXRlY3Rpb24gb2YgYW4gZXhwbDMgZmlsZS4KKyAgICAodW5sZXNz IHRleC1leHBsLWJ1ZmZlci1wCisgICAgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgICAg KHdoaWxlICh0ZXgtc2VhcmNoLW5vbmNvbW1lbnQKKyAgICAgICAgICAgICAgKHJlLXNlYXJjaC1m b3J3YXJkICJcXEV4cGxTeW50YXhPbiIgbmlsIHQpKQorICAgICAgICAobGV0ICgobmV3LWJlZyAo cG9pbnQpKQorICAgICAgICAgICAgICAobmV3LWVuZCAob3IgKHRleC1zZWFyY2gtbm9uY29tbWVu dAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZS1zZWFyY2gtZm9yd2FyZCAiXFxFeHBs U3ludGF4T2ZmIiBuaWwgdCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQtbWF4 KSkpKQorICAgICAgICAgIChwdXNoIChjb25zIG5ldy1iZWcgbmV3LWVuZCkgdGV4LWV4cGwtcmVn aW9uLWxpc3QpKSkpKSkKIAogDAogOzs7IEludm9raW5nIFRlWCBpbiBhbiBpbmZlcmlvciBzaGVs bC4KQEAgLTM3NDIsNiArMzc5NywzMjEgQEAgdGV4LWNoa3RleAogICAgICAgKHByb2Nlc3Mtc2Vu ZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWluKSAocG9pbnQtbWF4KSkKICAg ICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nlc3MpKSkpCiAKKwwKKzs7OyBY cmVmIGJhY2tlbmQKKworOzsgSGVyZSB3ZSBsaWdodGx5IGFkYXB0IHRoZSBkZWZhdWx0IGV0YWdz IGJhY2tlbmQgZm9yIHhyZWYgc28gdGhhdAorOzsgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRz IChpbmNsdWRpbmcgYHhyZWYtZmluZC1kZWZpbml0aW9ucycsCis7OyBgeHJlZi1maW5kLWFwcm9w b3MnLCBhbmQgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyBbb24gTS0uLCBDLU0tLiwgYW5kCis7OyBN LT8sIHJlc3BlY3RpdmVseV0pIHdvcmsgaW4gVGVYIGJ1ZmZlcnMuICBUaGUgb25seSBtZXRob2Rz IHdlCis7OyBhY3R1YWxseSBtb2RpZnkgYXJlIGB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1w b2ludCcgYW5kCis7OyBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnLiAgTWFueSBvZiB0aGUgY29t cGxpY2F0aW9ucyBoZXJlLCBhbmQgaW4KKzs7IGBldGFncycgaXRzZWxmLCBhcmUgZHVlIHRvIHRo ZSBuZWNlc3NpdHkgb2YgcGFyc2luZyBib3RoIHRoZSBvbGQKKzs7IFRlWCBzeW50YXggYW5kIHRo ZSBuZXcgZXhwbDMgc3ludGF4LCB3aGljaCB3aWxsIGNvbnRpbnVlIHRvIGFwcGVhcgorOzsgdG9n ZXRoZXIgaW4gZG9jdW1lbnRzIGZvciB0aGUgZm9yZXNlZWFibGUgZnV0dXJlLiAgU3luY2hyb25p emluZworOzsgRW1hY3MgYW5kIGBldGFncycgdGhpcyB3YXkgYWltcyB0byBpbXByb3ZlIHRoZSB1 c2VyIGV4cGVyaWVuY2UgIm91dAorOzsgb2YgdGhlIGJveC4iCisKKyhkZWZ2YXIgdGV4LXRoaW5n YXRwdC1leGNsdWRlLWNoYXJzICcoP1xcID9ceyA/XH0pCisgICJFeGNsdWRlIHRoZXNlIGNoYXJz IGJ5IGRlZmF1bHQgZnJvbSBUZVggdGhpbmctYXQtcG9pbnQuCisKK1RoZSBUZVggYHhyZWYtYmFj a2VuZC1pZGVudGlmaWVyLWF0LXBvaW50JyBtZXRob2QgdXNlcyB0aGUgY2hhcmFjdGVycworbGlz dGVkIGluIHRoaXMgdmFyaWFibGUgdG8gZGVjaWRlIG9uIHRoZSBkZWZhdWx0IHNlYXJjaCBzdHJp bmcgdG8KK3ByZXNlbnQgdG8gdGhlIHVzZXIgd2hvIGNhbGxzIGFuIGB4cmVmJyBjb21tYW5kLiAg VGhlc2UgY2hhcmFjdGVycworYmVjb21lIHBhcnQgb2YgYSByZWdleHAgd2hpY2ggYWx3YXlzIGV4 Y2x1ZGVzIHRoZW0gZnJvbSB0aGF0IGRlZmF1bHQKK3N0cmluZy4gIEZvciB0aGUgYHhyZWYnIGNv bW1hbmRzIHRvIGZ1bmN0aW9uIHByb3Blcmx5IGluIFRlWCBidWZmZXJzLCBhdAorbGVhc3QgdGhl IFRlWCBlc2NhcGUgYW5kIHRoZSB0d28gVGVYIGdyb3VwaW5nIGNoYXJhY3RlcnMgc2hvdWxkIGJl CitsaXN0ZWQgaGVyZS4gIFNob3VsZCB5b3VyIFRlWCBkb2N1bWVudHMgY29udGFpbiBvdGhlciBj aGFyYWN0ZXJzIHdoaWNoCit5b3Ugd2FudCB0byBleGNsdWRlIGJ5IGRlZmF1bHQsIHRoZW4geW91 IGNhbiBhZGQgdGhlbSB0byB0aGUgbGlzdCwKK3Rob3VnaCB5b3UgbWF5IHdpc2ggdG8gY29uc3Vs dCB0aGUgZnVuY3Rpb25zCitgdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCcgYW5k IGB0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sJwordG8gc2VlIHdoYXQgdGhlIHJlZ2V4cCBh bHJlYWR5IGNvbnRhaW5zLiAgSWYgeW91ciBkb2N1bWVudHMgY29udGFpbgorbm9uLXN0YW5kYXJk IGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcmFjdGVycywgdGhlbiB5b3UgY2FuIHJlcGxhY2UgdGhl Cit0aHJlZSBsaXN0ZWQgaGVyZSB3aXRoIHlvdXIgb3duLCB0aGVyZWJ5IGFsbG93aW5nIHRoZSB0 aHJlZSBzdGFuZGFyZAorY2hhcmFjdGVycyB0byBhcHBlYXIgYnkgZGVmYXVsdCBpbiBzZWFyY2gg c3RyaW5ncy4gIFBsZWFzZSBiZSBhd2FyZSwKK2hvd2V2ZXIsIHRoYXQgdGhlIGBldGFncycgcHJv Z3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScgKDMzKQorYXMgZXNjYXBlIGNo YXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRldGVjdHMgdGhlIGxhdHRlciBp dAorYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBjb25zdHJ1Y3QgcmF0aGVyIHRo YW4gYHt9Jy4gIFNldHRpbmcKK3RoZSBlc2NhcGUgYW5kIGdyb3VwaW5nIGNoYXJzIHRvIGFueXRo aW5nIG90aGVyIHRoYW4gYFxcPVxce30nIG9yIGAhPD4nCit3aWxsIG5vdCBiZSB1c2VmdWwgd2l0 aG91dCBjaGFuZ2VzIHRvIGBldGFncycsIGF0IGxlYXN0IGZvciBjb21tYW5kcwordGhhdCBzZWFy Y2ggdGFncyB0YWJsZXMsIHN1Y2ggYXMgXFxbeHJlZi1maW5kLWRlZmluaXRpb25zXSBhbmQgXAor XFxbeHJlZi1maW5kLWFwcm9wb3NdLgorCitTaG91bGQgeW91IHdpc2ggdG8gY2hhbmdlIHRoZSBk ZWZhdWx0cywgcGxlYXNlIGFsc28gYmUgYXdhcmUgdGhhdCwKK3dpdGhvdXQgZnVydGhlciBtb2Rp ZmljYXRpb25zIHRvIHRleC1tb2RlLmVsLCB0aGUgdXN1YWwgdGV4dC1wYXJzaW5nCityb3V0aW5l cyBmb3IgYGZvbnQtbG9jaycgYW5kIHRoZSBsaWtlIHdvbid0IHdvcmsgY29ycmVjdGx5LCBhcyB0 aGUKK2RlZmF1bHQgZXNjYXBlIGFuZCBncm91cGluZyBjaGFyYWN0ZXJzIGFyZSBjdXJyZW50bHkg aGFyZCBjb2RlZCBpbiBtYW55CitwbGFjZXMuIikKKworOzsgUG9wdWxhdGUgYHNlbWFudGljLXN5 bXJlZi1maWxlcGF0dGVybi1hbGlzdCcgZm9yIHRoZSBpbi10cmVlIG1vZGVzOworOzsgQVVDVGVY IGlzIGRvaW5nIHRoZSBzYW1lIGZvciBpdHMgbW9kZXMuCisod2l0aC1ldmFsLWFmdGVyLWxvYWQg J3NlbWFudGljL3N5bXJlZi9ncmVwCisgIChkZWZ2YXIgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0KQorICAocHVzaCAnKGxhdGV4LW1vZGUgIiouW3RUXWVbeFhdIiAiKi5sdHgiICIq LnN0eSIgIiouY2xbc29dIgorICAgICAgICAgICAgICAgICAgICAgIiouYmJsIiAiKi5kcnYiICIq Lmh2YSIpCisgICAgICAgIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1 c2ggJyhwbGFpbi10ZXgtbW9kZSAiKi5bdFRdZVt4WF0iICIqLmlucyIpCisgICAgICAgIHNlbWFu dGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkKKyAgKHB1c2ggJyhkb2N0ZXgtbW9kZSAiKi5k dHgiKSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpKQorCisoZGVmdW4gdGV4LS14 cmVmLWJhY2tlbmQgKCkgJ3RleC1ldGFncykKKworOzsgU2V0dXAgQVVDVGVYIG1vZGVzIChmb3Ig dGVzdGluZyBwdXJwb3NlcyBvbmx5KS4KKworKGFkZC1ob29rICdUZVgtbW9kZS1ob29rICMndGV4 LXNldC1hdWN0ZXgteHJlZi1iYWNrZW5kKQorCisoZGVmdW4gdGV4LXNldC1hdWN0ZXgteHJlZi1i YWNrZW5kICgpCisgIChhZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0aW9ucyAjJ3RleC0teHJl Zi1iYWNrZW5kIG5pbCB0KSkKKworOzsgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyBjdXJyZW50bHkg bWF5IG5lZWQgdGhpcyB3aGVuIGNhbGxlZCBmcm9tIGEKKzs7IGxhdGV4LW1vZGUgYnVmZmVyIGlu IG9yZGVyIHRvIHNlYXJjaCBmaWxlcyBvciBidWZmZXJzIHdpdGggYSAudGV4Cis7OyBzdWZmaXgg KGluY2x1ZGluZyB0aGUgYnVmZmVyIGZyb20gd2hpY2ggaXQgaGFzIGJlZW4gY2FsbGVkKS4gIFdl Cis7OyBhcHBlbmQgaXQgdG8gYGF1dG8tbW9kZS1hbGlzdCcgc28gYXMgbm90IHRvIGludGVyZmVy ZSB3aXRoIHRoZSB1c3VhbAorOzsgbW9kZS1zZXR0aW5nIGFwcGFyYXR1cy4gIENoYW5nZXMgaGVy ZSBhbmQgaW4gQVVDVGVYIHNob3VsZCBzb29uCis7OyByZW5kZXIgaXQgdW5uZWNlc3NhcnkuCiso YWRkLXRvLWxpc3QgJ2F1dG8tbW9kZS1hbGlzdCAnKCJcXC5bdFRdZVt4WF1cXCciIC4gbGF0ZXgt bW9kZSkgdCkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2lu dCAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpKQorICAocmVxdWlyZSAnZXRhZ3MpCisgICh0 ZXgtLXRoaW5nLWF0LXBvaW50KSkKKworOzsgVGhlIGRldGVjdGlvbiBvZiBgXycgYW5kIGA6JyBp cyBhIHByaW1pdGl2ZSBtZXRob2QgZm9yIGRldGVybWluaW5nCis7OyB3aGV0aGVyIHBvaW50IGlz IG9uIGFuIGV4cGwzIGNvbnN0cnVjdC4gIEl0IG1heSBmYWlsIGluIHNvbWUKKzs7IGluc3RhbmNl cy4KKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50ICgpCisgICJEZW1hcmNhdGUgYHRoaW5nLWF0 LXBvaW50JyBmb3IgdGhlIFRlWCBgeHJlZicgYmFja2VuZC4iCisgIChsZXQgKChib3VuZHMgKHRl eC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2ludCkpKQorICAgICh3aGVuIGJvdW5kcworICAgICAg KGxldCAoKHRleHN5bSAoYnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzIChjYXIgYm91bmRz KSAoY2RyIGJvdW5kcykpKSkKKyAgICAgICAgKGlmIChhbmQgKG5vdCAoc3RyaW5nLW1hdGNoLXAg InJlZmVyZW5jZSIgKHN5bWJvbC1uYW1lIHRoaXMtY29tbWFuZCkpKQorICAgICAgICAgICAgICAg ICAoc2VxLWNvbnRhaW5zLXAgdGV4c3ltID9fKQorICAgICAgICAgICAgICAgICAoc2VxLWNvbnRh aW5zLXAgdGV4c3ltID86KSkKKyAgICAgICAgICAgIChzZXEtdGFrZSB0ZXhzeW0gKHNlcS1wb3Np dGlvbiB0ZXhzeW0gPzopKQorICAgICAgICAgIHRleHN5bSkpKSkpCisKKyhkZWZ1biB0ZXgtdGhp bmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sICgpCisgIChhbmQKKyAgIChyZS1zZWFyY2gtYmFj a3dhcmQgKGNvbmNhdCAiW11bIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBj b25jYXQgIydyZWdleHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpKQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9JigpJSx8JFs6Y250cmw6XVs6 Ymxhbms6XV0iKSkKKyAgIChmb3J3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQt LWVuZC1vZi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJjaC1mb3J3YXJkIChjb25jYXQg IltdWyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjb25jYXQgIydyZWdleHAt cXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIg IydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0ZXgtdGhpbmdhdHB0LWV4Y2x1ZGUtY2hhcnMpKQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlwiKmAnIz0mKCklLHwkWzpjbnRybDpdWzpibGFuazpdXSIpKQorICAg KGJhY2t3YXJkLWNoYXIpKSkKKworKGRlZnVuIHRleC0tYm91bmRzLW9mLXN5bWJvbC1hdC1wb2lu dCAoKQorICAiU2ltcGxpZnkgYGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgZm9yIFRlWCBgeHJl ZicgYmFja2VuZC4iCisgIChsZXQgKChvcmlnIChwb2ludCkpKQorICAgIChpZ25vcmUtZXJyb3Jz CisgICAgICAoc2F2ZS1leGN1cnNpb24KKwkodGV4LXRoaW5nYXRwdC0tZW5kLW9mLXN5bWJvbCkK KwkodGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCkKKwkobGV0ICgoYmVnIChwb2lu dCkpKQorCSAgKGlmICg8PSBiZWcgb3JpZykKKwkgICAgICAobGV0ICgocmVhbC1lbmQKKwkJICAg ICAocHJvZ24KKwkJICAgICAgICh0ZXgtdGhpbmdhdHB0LS1lbmQtb2Ytc3ltYm9sKQorCQkgICAg ICAgKHBvaW50KSkpKQorCQkoY29uZCAoKGFuZCAoPD0gb3JpZyByZWFsLWVuZCkgKDwgYmVnIHJl YWwtZW5kKSkKKwkJICAgICAgIChjb25zIGJlZyByZWFsLWVuZCkpCisgICAgICAgICAgICAgICAg ICAgICAgKChhbmQgKD0gb3JpZyByZWFsLWVuZCkgKD0gYmVnIHJlYWwtZW5kKSkKKwkJICAgICAg IChjb25zIGJlZyAoMSsgYmVnKSkpKSkpKSkpKSk7OyBGb3IgMS1jaGFyIFRlWCBjb21tYW5kcy4K KworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxl ICgoX2JhY2tlbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChlcWwgJ3RleC1ldGFncykpKQorICAoeHJlZi1iYWNrZW5kLWlkZW50aWZp ZXItY29tcGxldGlvbi10YWJsZSAnZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2Vu ZC1pZGVudGlmaWVyLWNvbXBsZXRpb24taWdub3JlLWNhc2UgKChfYmFja2VuZAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVx bAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICd0ZXgtZXRhZ3MpKSkKKyAgKHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNvbXBs ZXRpb24taWdub3JlLWNhc2UgJ2V0YWdzKSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQt ZGVmaW5pdGlvbnMgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3MpKSBzeW1ib2wpCisgICh4cmVm LWJhY2tlbmQtZGVmaW5pdGlvbnMgJ2V0YWdzIHN5bWJvbCkpCisKKyhjbC1kZWZtZXRob2QgeHJl Zi1iYWNrZW5kLWFwcm9wb3MgKChfYmFja2VuZCAoZXFsICd0ZXgtZXRhZ3MpKSBwYXR0ZXJuKQor ICAoeHJlZi1iYWNrZW5kLWFwcm9wb3MgJ2V0YWdzIHBhdHRlcm4pKQorCis7OyBUaGUgYHhyZWYt YmFja2VuZC1yZWZlcmVuY2VzJyBtZXRob2QgcmVxdWlyZXMgbW9yZSBjb2RlIHRoYW4gdGhlCis7 OyBvdGhlcnMgZm9yIGF0IGxlYXN0IHR3byBtYWluIHJlYXNvbnM6IFRlWCBhdXRob3JzIGhhdmUg dHlwaWNhbGx5IGJlZW4KKzs7IGZyZWUgaW4gdGhlaXIgaW52ZW50aW9uIG9mIG5ldyBmaWxlIHR5 cGVzIHdpdGggbmV3IHN1ZmZpeGVzLCBhbmQgdGhleQorOzsgaGF2ZSBhbHNvIHRlbmRlZCBzb21l dGltZXMgdG8gaW5jbHVkZSBub24tc3ltYm9sIGNoYXJhY3RlcnMgaW4KKzs7IGNvbW1hbmQgbmFt ZXMuICBXaGVuIGNvbWJpbmVkIHdpdGggdGhlIGRlZmF1bHQgU2VtYW50aWMgU3ltYm9sCis7OyBS ZWZlcmVuY2UgQVBJLCB0aGVzZSB0d28gY2hhcmFjdGVyaXN0aWNzIG9mIFRlWCBjb2RlIG1lYW4g dGhhdCBhCis7OyBjb21tYW5kIGxpa2UgYHhyZWYtZmluZC1yZWZlcmVuY2VzJyB3b3VsZCBvZnRl biBmYWlsIHRvIGZpbmQgYW55IGhpdHMKKzs7IGZvciBhIHN5bWJvbCBhdCBwb2ludCwgaW5jbHVk aW5nIHRoZSBvbmUgdW5kZXIgcG9pbnQgaW4gdGhlIGN1cnJlbnQKKzs7IGJ1ZmZlciwgb3IgaXQg d291bGQgZmluZCBvbmx5IHNvbWUgaW5zdGFuY2VzIGFuZCBza2lwIG90aGVycy4KKworKGRlZnVu IHRleC1maW5kLXJlZmVyZW5jZXMtc3ludGF4LXRhYmxlICgpCisgIChsZXQgKChzdCAoaWYgKGJv dW5kcCAnVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAobWFrZS1zeW50 YXgtdGFibGUgVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAgICAgICAgICAgKG1ha2Utc3lu dGF4LXRhYmxlIHRleC1tb2RlLXN5bnRheC10YWJsZSkpKSkKKyAgICBzdCkpCisKKyhkZWZ2YXIg dGV4LS14cmVmLXN5bnRheC1mdW4gbmlsKQorCisoZGVmdW4gdGV4LXhyZWYtc3ludGF4LWZ1bmN0 aW9uIChzdHIgYmVnIGVuZCkKKyAgIlByb3ZpZGUgYSBiZXNwb2tlIGBzeW50YXgtcHJvcGVydGl6 ZS1mdW5jdGlvbicgZm9yIFxcW3hyZWYtZmluZC1yZWZlcmVuY2VzXS4iCisgIChsZXQqIChncnBi IHRlbXBzdHIKKyAgICAgICAgICAgICAgKHNocnRzdHIgKGlmIGVuZAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRxIHRl bXBzdHIgKHNlcS10YWtlIHN0ciAoMS0gKGxlbmd0aCBzdHIpKSkpCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChpZiBiZWcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChz ZXRxIHRlbXBzdHIgKHNlcS1kcm9wIHRlbXBzdHIgMSkpCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdGVtcHN0cikpCisgICAgICAgICAgICAgICAgICAgICAgICAgKHNlcS1kcm9wIHN0 ciAxKSkpCisgICAgICAgICAgICAgIChncnBhIChpZiAoYW5kIGJlZyBlbmQpCisgICAgICAgICAg ICAgICAgICAgICAgICAocHJvZzEKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGlzdCAx ICJfIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgZ3JwYiAobGlzdCAyICJfIikp KQorICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKSkpCisgICAgICAgICAgICAgIChy ZSAoY29uY2F0IGJlZyAocmVnZXhwLXF1b3RlIHNocnRzdHIpIGVuZCkpCisgICAgICAgICAgICAg ICh0ZW1wLXJ1bGUgKGlmIGdycGIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3Qg cmUgZ3JwYSBncnBiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxpc3QgcmUgZ3JwYSkp KSkKKyAgICA7OyBTaW1wbGUgYmVuY2htYXJrcyBzdWdnZXN0ZWQgdGhhdCB0aGUgc3BlZWQtdXAg ZnJvbSBjb21waWxpbmcgdGhpcworICAgIDs7IGZ1bmN0aW9uIHdhcyBuZWFybHkgbmlsLCBzbyBg ZXZhbCcgYW5kIGl0cyBub24tYnl0ZS1jb21waWxlZAorICAgIDs7IGZ1bmN0aW9uIHJlbWFpbi4K KyAgICAoc2V0cSB0ZXgtLXhyZWYtc3ludGF4LWZ1biAoZXZhbAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzICx0ZW1wLXJ1bGUpKSkpKQor CisoZGVmdW4gdGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucyAoKQorICAiR2F0aGVyIFRlWCBm aWxlIGV4dGVuc2lvbnMgZnJvbSBgYXV0by1tb2RlLWFsaXN0Jy4iCisgIChsZXQqICgobWxpc3Qg KHdoZW4gKHJhc3NxIG1ham9yLW1vZGUgYXV0by1tb2RlLWFsaXN0KQorCQkgIChzZXEtZmlsdGVy CisJCSAgIChsYW1iZGEgKGVsdCkKKwkJICAgICAoZXEgKGNkciBlbHQpIG1ham9yLW1vZGUpKQor CQkgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGxjc3ltIChpbnRlcm4tc29mdCAoZG93bmNhc2Ug KHN5bWJvbC1uYW1lIG1ham9yLW1vZGUpKSkpCisJIChsY2xpc3QgKGFuZCBsY3N5bQorCQkgICAg ICAobm90IChlcSBsY3N5bSBtYWpvci1tb2RlKSkKKwkJICAgICAgKHJhc3NxIGxjc3ltIGF1dG8t bW9kZS1hbGlzdCkKKwkJICAgICAgKHNlcS1maWx0ZXIKKwkJICAgICAgIChsYW1iZGEgKGVsdCkK KwkJCSAoZXEgKGNkciBlbHQpIGxjc3ltKSkKKwkJICAgICAgIGF1dG8tbW9kZS1hbGlzdCkpKQor CSAoc2hvcnRzeW0gKHdoZW4gKHN0cmluZ3AgbW9kZS1uYW1lKQorCQkgICAgIChpbnRlcm4tc29m dCAoY29uY2F0IChzdHJpbmctdHJpbS1yaWdodCBtb2RlLW5hbWUgIi8uKiIpCisJCQkJCSAgIi1t b2RlIikpKSkKKwkgKGxjc2hvcnRzeW0gKHdoZW4gKHN0cmluZ3AgbW9kZS1uYW1lKQorCQkgICAg ICAgKGludGVybi1zb2Z0IChkb3duY2FzZQorCQkJCSAgICAgKGNvbmNhdAorCQkJCSAgICAgIChz dHJpbmctdHJpbS1yaWdodCBtb2RlLW5hbWUgIi8uKiIpCisJCQkJICAgICAgIi1tb2RlIikpKSkp CisJIChzaGxpc3QgKGFuZCBzaG9ydHN5bQorCQkgICAgICAobm90IChlcSBzaG9ydHN5bSBtYWpv ci1tb2RlKSkKKwkJICAgICAgKG5vdCAoZXEgc2hvcnRzeW0gbGNzeW0pKQorCQkgICAgICAocmFz c3Egc2hvcnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkgICAgICAoc2VxLWZpbHRlcgorCQkgICAg ICAgKGxhbWJkYSAoZWx0KQorCQkJIChlcSAoY2RyIGVsdCkgc2hvcnRzeW0pKQorCQkgICAgICAg YXV0by1tb2RlLWFsaXN0KSkpCisJIChsY3NobGlzdCAoYW5kIGxjc2hvcnRzeW0KKwkJCShub3Qg KGVxIGxjc2hvcnRzeW0gbWFqb3ItbW9kZSkpCisJCQkobm90IChlcSBsY3Nob3J0c3ltIGxjc3lt KSkKKwkJCShyYXNzcSBsY3Nob3J0c3ltIGF1dG8tbW9kZS1hbGlzdCkKKwkJCShzZXEtZmlsdGVy CisJCQkgKGxhbWJkYSAoZWx0KQorCQkJICAgKGVxIChjZHIgZWx0KSBsY3Nob3J0c3ltKSkKKwkJ CSBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGV4dHMgKHdoZW4gKG9yIG1saXN0IGxjbGlzdCBzaGxp c3QgbGNzaGxpc3QpCisJCSAoc2VxLXVuaW9uIChzZXEtbWFwICMnY2FyIGxjbGlzdCkKKwkJCSAg ICAoc2VxLXVuaW9uIChzZXEtbWFwICMnY2FyIG1saXN0KQorCQkJCSAgICAgICAoc2VxLXVuaW9u IChzZXEtbWFwICMnY2FyIGxjc2hsaXN0KQorCQkJCQkJICAoc2VxLW1hcCAjJ2NhciBzaGxpc3Qp KSkpKSkKKwkgKGVkLWV4dHMgKHdoZW4gZXh0cworCQkgICAgKHNlcS1tYXAKKwkJICAgICAobGFt YmRhIChlbHQpCisJCSAgICAgICAoY29uY2F0ICIqIiAoc3RyaW5nLXRyaW0gIGVsdCAiXFxcXCIg IlxcXFwnIikpKQorCQkgICAgIGV4dHMpKSkpCisgICAgZWQtZXh0cykpCisKKyhkZWZ2YXIgdGV4 LS1idWZmZXJzLWxpc3QgbmlsKQorKGRlZnZhci1sb2NhbCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rp b24gbmlsKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzICgoX2JhY2tl bmQgKGVxbCAndGV4LWV0YWdzKSkgaWRlbnRpZmllcikKKyAgIkZpbmQgcmVmZXJlbmNlcyBvZiBJ REVOVElGSUVSIGluIFRlWCBidWZmZXJzIGFuZCBmaWxlcy4iCisgIChyZXF1aXJlICdzZW1hbnRp Yy9zeW1yZWYvZ3JlcCkKKyAgKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxp c3QpCisgIChsZXQgKGJ1ZnMgdGV4YnVmcworICAgICAgICAgICAgIChtb2RlIG1ham9yLW1vZGUp KQorICAgIChkb2xpc3QgKGJ1ZiAoYnVmZmVyLWxpc3QpKQorICAgICAgKGlmIChlcSAoYnVmZmVy LWxvY2FsLXZhbHVlICdtYWpvci1tb2RlIGJ1ZikgbW9kZSkKKyAgICAgICAgICAocHVzaCBidWYg YnVmcykKKyAgICAgICAgKHdoZW4gKHN0cmluZy1tYXRjaC1wICIuKlxcLlt0VF1lW3hYXSIgKGJ1 ZmZlci1uYW1lIGJ1ZikpCisgICAgICAgICAgKHB1c2ggYnVmIHRleGJ1ZnMpKSkpCisgICAgKHVu bGVzcyAoc2VxLXNldC1lcXVhbC1wIHRleC0tYnVmZmVycy1saXN0IGJ1ZnMpCisgICAgICAobGV0 KiAoKGFtYWxpc3QgKHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMpKQorCSAgICAgKGV4dGxp c3QgKGFsaXN0LWdldCBtb2RlIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVybi1hbGlzdCkpCisJ ICAgICAoZXh0bGlzdC1uZXcgKHNlcS11bmlxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAo c2VxLXVuaW9uIGFtYWxpc3QgZXh0bGlzdCAjJ3N0cmluZy1tYXRjaC1wKSkpKQorCShzZXRxIHRl eC0tYnVmZmVycy1saXN0IGJ1ZnMpCisJKGRvbGlzdCAoYnVmIGJ1ZnMpCisJICAod2hlbi1sZXQg KChmYnVmIChidWZmZXItZmlsZS1uYW1lIGJ1ZikpCisJCSAgICAgKGV4dCAoZmlsZS1uYW1lLWV4 dGVuc2lvbiBmYnVmKSkKKwkJICAgICAoZmluZXh0IChjb25jYXQgIiouIiBleHQpKQorCQkgICAg ICgobm90IChzZXEtZmluZCAobGFtYmRhIChlbHQpIChzdHJpbmctbWF0Y2gtcCBlbHQgZmluZXh0 KSkKKwkJCQkgICAgIGV4dGxpc3QtbmV3KSkpCisJCSAgICAgKChwdXNoIGZpbmV4dCBleHRsaXN0 LW5ldykpKSkpCisJKHVubGVzcyAoc2VxLXNldC1lcXVhbC1wIGV4dGxpc3QtbmV3IGV4dGxpc3Qp CisJICAoc2V0ZiAoYWxpc3QtZ2V0IG1vZGUgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFs aXN0KQorICAgICAgICAgICAgICAgIGV4dGxpc3QtbmV3KSkpKQorICAgIChsZXQqIChzZXRzeW50 YXgKKyAgICAgICAgICAgKHB1bmN0ICh3aXRoLXN5bnRheC10YWJsZSAodGV4LWZpbmQtcmVmZXJl bmNlcy1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAgICAgICAgIChzZXEtcG9zaXRpb25zIGlk ZW50aWZpZXIgKGxpc3QgP3cgP18pCisJCQkgICAgICAgICAgIChsYW1iZGEgKGVsdCBzeWNvZGUp CisJCQkgICAgICAgICAgICAgKG5vdCAobWVtcSAoY2hhci1zeW50YXggZWx0KSBzeWNvZGUpKSkp KSkKKyAgICAgICAgICAgKGVuZCAoYW5kIHB1bmN0CisgICAgICAgICAgICAgICAgICAgICAobWVt cSAoMS0gKGxlbmd0aCBpZGVudGlmaWVyKSkgcHVuY3QpCisgICAgICAgICAgICAgICAgICAgICAo PiAobGVuZ3RoIGlkZW50aWZpZXIpIDEpCisgICAgICAgICAgICAgICAgICAgICAoY29uY2F0ICJc XCgiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcgKGVsdCBpZGVudGlmaWVyCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDEtIChsZW5ndGggaWRlbnRpZmllcikp KSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcXCkiKSkpCisgICAgICAgICAgIChi ZWcgKGFuZCBwdW5jdAorICAgICAgICAgICAgICAgICAgICAgKG1lbXEgMCBwdW5jdCkKKyAgICAg ICAgICAgICAgICAgICAgIChjb25jYXQgIlxcKCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKHJlZ2V4cC1xdW90ZSAoc3RyaW5nIChlbHQgaWRlbnRpZmllciAwKSkpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJcXCkiKSkpCisgICAgICAgICAgICh0ZXh0LW1vZGUtaG9vawor ICAgICAgICAgICAgKGlmIChvciBlbmQgYmVnKQorICAgICAgICAgICAgICAgIChwcm9nbgorICAg ICAgICAgICAgICAgICAgKHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiBpZGVudGlmaWVyIGJlZyBl bmQpCisgICAgICAgICAgICAgICAgICAoc2V0cSBzZXRzeW50YXggKGxhbWJkYSAoKQorCQkgICAg ICAgICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLXhyZWYt c3ludGF4LWZ1bikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXRxLWxv Y2FsIFRlWC1zdHlsZS1ob29rLWFwcGxpZWQtcCB0KSkpCisgICAgICAgICAgICAgICAgICAoY29u cyBzZXRzeW50YXggdGV4dC1tb2RlLWhvb2spKQorICAgICAgICAgICAgICB0ZXh0LW1vZGUtaG9v aykpKQorICAgICAgKHVubGVzcyAobWVtcSAnZG9jdGV4LW1vZGUgKGRlcml2ZWQtbW9kZS1hbGwt cGFyZW50cyBtb2RlKSkKKyAgICAgICAgKHNldHEgYnVmcyAoYXBwZW5kIHRleGJ1ZnMgYnVmcykp KQorICAgICAgKHdoZW4gKG9yIGVuZCBiZWcpCisgICAgICAgIChkb2xpc3QgKGJ1ZiBidWZzKQor ICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAgKHVubGVzcyAo bG9jYWwtdmFyaWFibGUtcCAndGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAg ICAoc2V0cSB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gc3ludGF4LXByb3BlcnRpemUtZnVuY3Rp b24pKQorICAgICAgICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24K KyAgICAgICAgICAgICAgICAgICAgICAgIHRleC0teHJlZi1zeW50YXgtZnVuKQorICAgICAgICAg ICAgKHN5bnRheC1wcHNzLWZsdXNoLWNhY2hlIChwb2ludC1taW4pKSkpKQorICAgICAgKHVud2lu ZC1wcm90ZWN0CisgICAgICAgICAgKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzIG5pbCBpZGVudGlm aWVyKQorICAgICAgICAod2hlbiAob3IgZW5kIGJlZykKKyAgICAgICAgICAoZG9saXN0IChidWYg YnVmcykKKyAgICAgICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgICAg ICAod2hlbiBidWZmZXItZmlsZS10cnVlbmFtZQorICAgICAgICAgICAgICAgIChzZXRxLWxvY2Fs IHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg dGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgIChzeW50YXgtcHBzcy1m bHVzaC1jYWNoZSAocG9pbnQtbWluKSkpKSkpKSkpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJs ZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRo LWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2Rl LWxvYWQtaG9vaykKLS0gCjIuMzUuOAoK --0000000000008be4640618800951--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 14 May 2024 21:25:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 14 17:25:11 2024 Received: from localhost ([127.0.0.1]:41479 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s6ze2-0005UE-R1 for submit <at> debbugs.gnu.org; Tue, 14 May 2024 17:25:11 -0400 Received: from forward501c.mail.yandex.net ([178.154.239.209]:44302) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s6zdz-0005U7-2B for 53749 <at> debbugs.gnu.org; Tue, 14 May 2024 17:25:09 -0400 Received: from mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:b1a0:0:640:e983:0]) by forward501c.mail.yandex.net (Yandex) with ESMTPS id AFBB461424; Wed, 15 May 2024 00:24:34 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id TOnPHUBCZa60-ub8Hks1u; Wed, 15 May 2024 00:24:33 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715721873; bh=npKb8gXDgTKlxOOUWnPSoA4Xqz7JZyfV9PZP59i2DFs=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=FyMU2wrsLornY5Jg6N70A4afp4cydLaQi8vLJiEu/b6RoMOBJ5tdjOdSXzxl9X7rS bFhCgDa8fTjixrK+aLXZF/y29iyg2MUZHiEQbs2+bSRCQfvEQgEtuDnrW9SBUTA9EL e2qJY2LWqbYcJxbh6Anzc+uWylckXkrQI1medGoU= Authentication-Results: mail-nwsmtp-smtp-production-main-85.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailfauth.nyi.internal (Postfix) with ESMTP id 543DB1200032; Tue, 14 May 2024 17:24:29 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Tue, 14 May 2024 17:24:29 -0400 X-ME-Sender: <xms:jNZDZmWJwwD95tfGWQPw8IwVqmEeu9_EGWBafb5Tlx-knarUxUOnoA> <xme:jNZDZilaxIdBB0-p03QOpU2syZsWbnqlFbgJkNkWEs6SSBzw9Df0if3shbmeCKiBM 5PJsHcz-RUn_7bfpYQ> X-ME-Received: <xmr:jNZDZqaRx9oRjnfXkZfGW6AK9M0VsfNMT5ySO4KdTc3nHLDjyRwMcqLIFQzl-gxMuGbU> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdegiedgudehlecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhm ihhtrhihucfiuhhtohhvuceoughguhhtohhvseihrghnuggvgidrrhhuqeenucggtffrrg htthgvrhhnpeefleffhfejhfeghedtfeehtdeiheekheetteefleejkefhgeetiedvhefg jeeuveenucffohhmrghinhepghhnuhdrohhrghenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpegughhuthhovhdomhgvshhmthhprghuthhhphgv rhhsohhnrghlihhthidqudeffeefleelheehvddqvdelgeejjeejjeeiqdgughhuthhovh eppeihrghnuggvgidrrhhusehfrghsthhmrghilhdrtghomh X-ME-Proxy: <xmx:jdZDZtWTv_Ehhb_wTtwihflaPUN1rrP8VKvZ9VZlDlNKjSJkT4m0Ig> <xmx:jdZDZgkUA0hrqqVVgTqUE21lXVhUzNwAglsI4ubrcrPQEKL9ffKIsA> <xmx:jdZDZic6gjRxphzawA6D3yAOQdrSFXQVwbXjpiSDdhcdfVyPh63vXA> <xmx:jdZDZiFeQzxFspDQ51eTF-oM4BXAhTs5rMw9cWkYuY2Dj20YypKp8Q> <xmx:jdZDZumGXZyny1b2-jshcA1QD-iiVy_oG-TR6j92e9x46DuegKPH9eCZ> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 14 May 2024 17:24:26 -0400 (EDT) Message-ID: <82993b86-0f34-4adb-a392-c74db5176d14@HIDDEN> Date: Wed, 15 May 2024 00:24:24 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 13/05/2024 23:54, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> For now, I've pushed a fix in 86187d43e2d which seems to handle David's >> scenario and address your review comment as well. > > The let-binding is done outside of `with-current-buffer`, so it relies > on the fact (itself problematic) that `inhibit-modification-hooks` is > not buffer-local. Good point. > Would it be OK to use a patch like the one below? Sure, thank you. Pushed. > IIUC, in the `syntax-needed` case, the let-binding of > `inhibit-modification-hooks` is just not useful very (4-7% is not worth > the trouble), so its purpose is to speed up the other case. 4-10% is the improvement for both cases (the "syntax needed" and not). I could be on the fence whether it's "not useful" - on the one hand 4% might not sound like much - on the other we already have this bit of improvement which has no known bugs. And when you combine a few of such performance hacks, the difference gets more noticeable. Also, I'm eyeing another performance improvement (simplifying file type detection) - the call to set-auto-mode is not fast. Simply commenting this call out improves the performance by 4x or so - but we'll need a simpler version of it instead, of course. And with the above change (commenting out the set-auto-mode call), the difference that the inhibit-modification-hooks hack makes is amplified: it can get up to 20%. Ultimately it'll be somewhere in between, but this sounds better, right? > Also, what about the other two bindings of `inhibit-modification-hooks`? The other two are used while the contents of the Xref buffer are printed (or re-printed), so there's none of the syntax-ppss complications there. The performance difference is 8.5% in my last measurement. > > Stefan > > > diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el > index f9faec1b474..214e9cb6c09 100644 > --- a/lisp/progmodes/xref.el > +++ b/lisp/progmodes/xref.el > @@ -1282,7 +1282,7 @@ xref--show-common-initialize > (erase-buffer) > (setq overlay-arrow-position nil) > (xref--insert-xrefs xref-alist) > - (add-hook 'post-command-hook 'xref--apply-truncation nil t) > + (add-hook 'post-command-hook #'xref--apply-truncation nil t) > (goto-char (point-min)) > (setq xref--original-window (assoc-default 'window alist) > xref--original-window-intent (assoc-default 'display-action alist)) > @@ -2112,10 +2112,7 @@ xref--convert-hits > (defun xref--collect-matches (hit regexp tmp-buffer syntax-needed) > (pcase-let* ((`(,line ,file ,text) hit) > (file (and file (concat xref--hits-remote-id file))) > - (buf (xref--find-file-buffer file)) > - ;; This is fairly dangerouns, but improves performance > - ;; for large lists, see https://debbugs.gnu.org/53749#227 > - (inhibit-modification-hooks t)) > + (buf (xref--find-file-buffer file))) > (if buf > (with-current-buffer buf > (save-excursion > @@ -2130,6 +2130,9 @@ > ;; Using the temporary buffer is both a performance and a buffer > ;; management optimization. > (with-current-buffer tmp-buffer > + ;; This let is fairly dangerouns, but improves performance > + ;; for large lists, see https://debbugs.gnu.org/53749#227 > + (let ((inhibit-modification-hooks t)) > (erase-buffer) > (when (and syntax-needed > (not (equal file xref--temp-buffer-file-name))) > @@ -2144,7 +2147,7 @@ > (setq-local xref--temp-buffer-file-name file) > (setq-local inhibit-read-only t) > (erase-buffer)) > - (insert text) > + (insert text)) > (goto-char (point-min)) > (when syntax-needed > (syntax-ppss-flush-cache (point))) > > > >
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 May 2024 20:54:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 13 16:54:44 2024 Received: from localhost ([127.0.0.1]:34920 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s6ch1-0000n7-Op for submit <at> debbugs.gnu.org; Mon, 13 May 2024 16:54:44 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:27377) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s6cgz-0000n1-OX for 53749 <at> debbugs.gnu.org; Mon, 13 May 2024 16:54:42 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 2B81B4406AB; Mon, 13 May 2024 16:54:35 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1715633673; bh=ZWMWsjI2JLV1tc9Thg3P51foBc998uoEt1i252E81oY=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=N9sQ9ABi6Dn5le1CUh2GmBmSoTQbeSnxr82RFvGJ/rW5hmheYz6bnMbYNh1jupVIB bruZ1rit/VfyoICM6qpUCm61376lEeFNwF+uWOi8Mn7FEkZA9ikDWCU+eUgJX+SCqH MNkMaG6Xg1qiMER0+iTwPAVg/P7pdGv9wqpwnY5QZs9KdVLsw4IPHKXyKZHQ5HL8IM I8kNIJPD9YVfUnOC1e4To13fdpW0O80NeCt2lN+wV+YM6+Q1dXJ4FgVvaLRXWmfOil aJWZkF+TI7GyujiiwJOG+9K1RnD8i0JnWi2lgq8/1eUteE8jo4fKGgAHOyUNMo3rU/ y1jPETlML3gOw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 8039C44444A; Mon, 13 May 2024 16:54:33 -0400 (EDT) Received: from alfajor (bras-base-mtrlpq0776w-grc-16-65-93-169-175.dsl.bell.ca [65.93.169.175]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 598D212024C; Mon, 13 May 2024 16:54:33 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> (Dmitry Gutov's message of "Thu, 9 May 2024 06:00:02 +0300") Message-ID: <jwv7cfxihg2.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> Date: Mon, 13 May 2024 16:54:32 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well. The let-binding is done outside of `with-current-buffer`, so it relies on the fact (itself problematic) that `inhibit-modification-hooks` is not buffer-local. Would it be OK to use a patch like the one below? IIUC, in the `syntax-needed` case, the let-binding of `inhibit-modification-hooks` is just not useful very (4-7% is not worth the trouble), so its purpose is to speed up the other case. Did I understand it right? Also, what about the other two bindings of `inhibit-modification-hooks`? Stefan diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el index f9faec1b474..214e9cb6c09 100644 --- a/lisp/progmodes/xref.el +++ b/lisp/progmodes/xref.el @@ -1282,7 +1282,7 @@ xref--show-common-initialize (erase-buffer) (setq overlay-arrow-position nil) (xref--insert-xrefs xref-alist) - (add-hook 'post-command-hook 'xref--apply-truncation nil t) + (add-hook 'post-command-hook #'xref--apply-truncation nil t) (goto-char (point-min)) (setq xref--original-window (assoc-default 'window alist) xref--original-window-intent (assoc-default 'display-action alist)) @@ -2112,10 +2112,7 @@ xref--convert-hits (defun xref--collect-matches (hit regexp tmp-buffer syntax-needed) (pcase-let* ((`(,line ,file ,text) hit) (file (and file (concat xref--hits-remote-id file))) - (buf (xref--find-file-buffer file)) - ;; This is fairly dangerouns, but improves performance - ;; for large lists, see https://debbugs.gnu.org/53749#227 - (inhibit-modification-hooks t)) + (buf (xref--find-file-buffer file))) (if buf (with-current-buffer buf (save-excursion @@ -2130,6 +2130,9 @@ ;; Using the temporary buffer is both a performance and a buffer ;; management optimization. (with-current-buffer tmp-buffer + ;; This let is fairly dangerouns, but improves performance + ;; for large lists, see https://debbugs.gnu.org/53749#227 + (let ((inhibit-modification-hooks t)) (erase-buffer) (when (and syntax-needed (not (equal file xref--temp-buffer-file-name))) @@ -2144,7 +2147,7 @@ (setq-local xref--temp-buffer-file-name file) (setq-local inhibit-read-only t) (erase-buffer)) - (insert text) + (insert text)) (goto-char (point-min)) (when syntax-needed (syntax-ppss-flush-cache (point)))
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 9 May 2024 10:50:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 09 06:50:08 2024 Received: from localhost ([127.0.0.1]:54586 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s51Lg-0006Ra-HI for submit <at> debbugs.gnu.org; Thu, 09 May 2024 06:50:08 -0400 Received: from mail-pf1-x42a.google.com ([2607:f8b0:4864:20::42a]:60527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s51Lc-0006R8-0d for 53749 <at> debbugs.gnu.org; Thu, 09 May 2024 06:50:03 -0400 Received: by mail-pf1-x42a.google.com with SMTP id d2e1a72fcca58-6ed3cafd766so705938b3a.0 for <53749 <at> debbugs.gnu.org>; Thu, 09 May 2024 03:49:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715251768; x=1715856568; 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=WNAmcjmVJIqoI9BVWGA1fNYnTic5H8WSLVxJWWKmm6Y=; b=Y7tQdy39dK4+lNEcztfW8X+IQViOXeg2mEXWt2nHohAYCYOw1njD/cv+W7GKxx4Cpi TgP4LxOTNcEBDmGKjqH+lCAMytdxzDElAuWleRWAUES1jTH062KhlA8V3WdEB56OLpDR zLN/sYPb7rjugLjntvNvIf//dhALeHqEmM4JzW8MzmbqRQoUD2cxzgFashmgspeyh+op eCNX2UMJE+GQDlYzIcJhYZowQ9jj/wmOyujL4z+/p+iXNlPw0iEbBfbeUYKtw9zJvGBN d7frA3TCBj4QY/FJXP/AUkVJoPaDjoJ+UBhtR/l0I381qLvYDr8ROkzoaQ3gLu2Az8Rs u4ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715251768; x=1715856568; 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=WNAmcjmVJIqoI9BVWGA1fNYnTic5H8WSLVxJWWKmm6Y=; b=D8Kz8I1v9ZtJxVehUUq2wmsSadIk0Da4yu4l7UKvToIr1cDuwr+76zyfUJnXQJBv+e XAYLnUTYi69PZj8t8F5WVdY+vV+VMcSf+Ohoq0+baczQesK943DQBX1fyRs5FwfQkKJ3 xuKC/SQ0C4NM6rJzB3mvgZdgzDIqLHP7Igt8+IDCjyXSyfkt/065sKGGaJR2Pc40OaNW mRACA0UDMTYLmjNek395qrPEAOltJCGAz5Uc3zXiphhXNbSySOeKUIbovE9+tXyCpgPf jQCE8oxrkSLo6RjePJ9XOjT6N9u2LBfsHF5e5ws8bQxGRP0tLgAeT2B310O2a6yGdv6Z 6EAQ== X-Forwarded-Encrypted: i=1; AJvYcCVqqudIn14smGoeNHXwl0AWp/pNRkLtR0tvFZ7nX+lYkTYEJb0DdpuAAFck6ipvVZkzz85zYXUzIWJ8mbPEaSbMy6DJ4V8= X-Gm-Message-State: AOJu0Yx+1NLbAyCuo/eoO/P4HoLg5/2KUFPp4qP5PixQAAywLf2epyJS 7jg0IhGuGZRaVMt4IBdA2VK6o0tVHBnqJtSQrTnU44i/QSN8iIntnHkOnhY+gI4GrtXEE7EqbKE AGNQ3lYjvB7CxsRvGa64rBwzr9sA= X-Google-Smtp-Source: AGHT+IE9F2FUGMz10umrKpnHymx2Hv0GwoxlICFRBHu27Ht1ec5OomVfUacRIShCHoT+SV+o0XKEcHOtoSEGUcrcc+Q= X-Received: by 2002:a05:6a21:c91:b0:1a7:aabc:24ae with SMTP id adf61e73a8af0-1afc8d763efmr5544592637.18.1715251768288; Thu, 09 May 2024 03:49:28 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 9 May 2024 11:49:37 +0100 Message-ID: <CADF+RtikU=oUavqFQKfy+_tjZ+DoXN3j48-7gWpg575a+xQBeA@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, Stefan Monnier <monnier@HIDDEN> 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 (-) Hi Dmitry, All of my tests work well now, thank you. Best, David. On Thu, 9 May 2024 at 04:00, Dmitry Gutov <dgutov@HIDDEN> wrote: > > On 07/05/2024 05:27, Dmitry Gutov wrote: > > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > >>> Thanks for looking over the patch. Here's the recipe for the purported > >>> bug in xref.el: > >> The problem stems from xref.el's constant abuse of > >> `inhibit-modification-hooks`. Binding this var to t should be done only > >> in exceptional circumstances and should ideally be accompanied by a > >> comment explaining why it's necessary. > > > > Well, the reason is performance: I've tried to wring out the most out of > > it, given that we have to parse the buffer for syntax in Elisp, and > > that'll always have a certain overhead. > > > > The difference between inhibiting and not could be up to 20% of runtime. > > > > David's fix makes things slower (just due to having us do the necessary > > work), but still has an edge over having no inhibit-modification-hooks. > > > > That remaining improvement is around 4-7% in my testing, though, so > > maybe it's the point where we should prioritize simplicity. > > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 9 May 2024 06:39:09 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 09 02:39:09 2024 Received: from localhost ([127.0.0.1]:53381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s4xQq-0003sq-MZ for submit <at> debbugs.gnu.org; Thu, 09 May 2024 02:39:09 -0400 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]:61553) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s4xQo-0003sP-4C for 53749 <at> debbugs.gnu.org; Thu, 09 May 2024 02:39:07 -0400 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-1ed904c2280so2917865ad.2 for <53749 <at> debbugs.gnu.org>; Wed, 08 May 2024 23:38:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715236714; x=1715841514; 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=Xf5HSIsrmJ8f17pLsVSc85UxUAYMSIOZiVBmLoDAIxY=; b=jQ9aEHs2QEw0xEkqwIL8DJg1xa3R2g/7JZImpP0n95ji/sqSvB5v1yCCPI/wVNOOHu BGJugXZw7nrEoZnuaI9Z1aSxkDJ6KfqYr37ldI2HxMsaOpwtCpUWPC0xdhC8Yq8exVWt 5E8tKLWivglSQJKYnHFhMDryj/r6BUyVaAvkSdmk1LYA5DZolBP7aPKr46o8wSmiHNfH wWocpPpsX9hSPUgAr+E60MCVUzbRltEzF3uhJzMEFWoQrNdczvFittXoGvAhJnErjyge ++gB2gpLafK3ynDPUUhNiuZ6qf/mx+kGx7M6VNmBPtOEDIHCZTLqSNcoSzE/pcZ4DsAs z8vQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715236714; x=1715841514; 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=Xf5HSIsrmJ8f17pLsVSc85UxUAYMSIOZiVBmLoDAIxY=; b=HTzhiTf5GlPe3zwsiNxMeCs8adjkl72iI53rxHNR9nswPHUpOm3eRZvCXMczJ29882 4fPlnfOkNnxhAi7+G+bdWw8SK7Ye+grDRmIpUfFCFaFC4lsprcf1Zyo9TPTAsoNE8mNZ sBQBweT2wcUSz4B3SaOToqKZtT6C1Xc2nDhSEOeow0jL7pyjFajMHROi2oXGyLRdhRX0 /P0zC7k3PkoVevqUmWZ5T1DsNmsrN7pxYg/mF3aUuoiOuOZCuyuw8nuzixpAtbFg2eXj b8oWOd4jo1Sz5VPaPWCMLafRWpBxiuWxXHtZyIZpL/0+SgExTW2BKAeqPfKHUtWLGSWI ZBpQ== X-Forwarded-Encrypted: i=1; AJvYcCXhhxzoTdlD5l7Ib/4jm+ep3SCIa/swHu3kk9jYOkkpOZBMvVPhs3zbyrgdAXHYcyAJCKtT3SGAXVWT6UI74v7gVBmZLKo= X-Gm-Message-State: AOJu0YxNBzWYvJfeDcnctTumj8Tx8xFrCDns9DZ7u8/E5K5YCS4rd1TE ZT0rxA0dpBxfiuJbffSBADcB0+bfjuuJJB7sEKxkJk5mBQNuSyOe9Ueosr40IbG4lrzWvnKohXK hYkAMPfl22+Cu3ZRhoz5P6fVpMTk= X-Google-Smtp-Source: AGHT+IG3MuPIbTvypdFVQOn57jIgaoYrY4xSr22XWiq0nM9kNBqHZXcjawJ08konXyH6rQTBJp90acoFUlZP375zMCc= X-Received: by 2002:a17:902:f681:b0:1ed:867:9ea0 with SMTP id d9443c01a7336-1eeb09959b0mr48124135ad.57.1715236714278; Wed, 08 May 2024 23:38:34 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> In-Reply-To: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 9 May 2024 07:38:22 +0100 Message-ID: <CADF+RthtwhU3eZEx8gfjix1PEyP6Kn-H-sNAAW_EbQiCM2+5Rw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000000f79e30617ffabba" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, Stefan Monnier <monnier@HIDDEN> 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 (-) --0000000000000f79e30617ffabba Content-Type: text/plain; charset="UTF-8" Thank you, Dmitry! I'll run tests later today and get back to you. David. On Thu, 9 May 2024, 04:00 Dmitry Gutov, <dgutov@HIDDEN> wrote: > On 07/05/2024 05:27, Dmitry Gutov wrote: > > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > >>> Thanks for looking over the patch. Here's the recipe for the purported > >>> bug in xref.el: > >> The problem stems from xref.el's constant abuse of > >> `inhibit-modification-hooks`. Binding this var to t should be done only > >> in exceptional circumstances and should ideally be accompanied by a > >> comment explaining why it's necessary. > > > > Well, the reason is performance: I've tried to wring out the most out of > > it, given that we have to parse the buffer for syntax in Elisp, and > > that'll always have a certain overhead. > > > > The difference between inhibiting and not could be up to 20% of runtime. > > > > David's fix makes things slower (just due to having us do the necessary > > work), but still has an edge over having no inhibit-modification-hooks. > > > > That remaining improvement is around 4-7% in my testing, though, so > > maybe it's the point where we should prioritize simplicity. > > For now, I've pushed a fix in 86187d43e2d which seems to handle David's > scenario and address your review comment as well. > --0000000000000f79e30617ffabba Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Thank you, Dmitry! I'll run tests later today and get= back to you.<div dir=3D"auto"><br></div><div dir=3D"auto">David.=C2=A0</di= v></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr= ">On Thu, 9 May 2024, 04:00 Dmitry Gutov, <<a href=3D"mailto:dgutov@yand= ex.ru">dgutov@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gmail_= quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1= ex">On 07/05/2024 05:27, Dmitry Gutov wrote:<br> > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the= <br> > Swiss army knife of text editors wrote:<br> >>> Thanks for looking over the patch. Here's the recipe for t= he purported<br> >>> bug in xref.el:<br> >> The problem stems from xref.el's constant abuse of<br> >> `inhibit-modification-hooks`.=C2=A0 Binding this var to t should b= e done only<br> >> in exceptional circumstances and should ideally be accompanied by = a<br> >> comment explaining why it's necessary.<br> > <br> > Well, the reason is performance: I've tried to wring out the most = out of <br> > it, given that we have to parse the buffer for syntax in Elisp, and <b= r> > that'll always have a certain overhead.<br> > <br> > The difference between inhibiting and not could be up to 20% of runtim= e.<br> > <br> > David's fix makes things slower (just due to having us do the nece= ssary <br> > work), but still has an edge over having no inhibit-modification-hooks= .<br> > <br> > That remaining improvement is around 4-7% in my testing, though, so <b= r> > maybe it's the point where we should prioritize simplicity.<br> <br> For now, I've pushed a fix in 86187d43e2d which seems to handle David&#= 39;s <br> scenario and address your review comment as well.<br> </blockquote></div> --0000000000000f79e30617ffabba--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 9 May 2024 03:00:44 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 08 23:00:44 2024 Received: from localhost ([127.0.0.1]:52333 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s4u1U-0006yB-7Y for submit <at> debbugs.gnu.org; Wed, 08 May 2024 23:00:44 -0400 Received: from forward502c.mail.yandex.net ([178.154.239.210]:33302) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s4u1P-0006y5-1A for 53749 <at> debbugs.gnu.org; Wed, 08 May 2024 23:00:43 -0400 Received: from mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:3c20:0:640:1ff8:0]) by forward502c.mail.yandex.net (Yandex) with ESMTPS id 8EEA961652; Thu, 9 May 2024 06:00:11 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id 60QdZpUVsGk0-BjCDg0aQ; Thu, 09 May 2024 06:00:10 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715223610; bh=n12zuaHY1mysXW7pejM0G/Fz6YvCU/QPAJjGccrIUIU=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=Kb5KgkMUFwjqOjjcoITXnfkwqvsAnK2yHtNrDAXtb/gLoyKEEtcpuvKoY+rAtthqW mp0r9YXle4hAdFwIQSBwtYBxQ9qQOgPppxEPAHuiWh2G2K8q9OMcN/CDiS9T1k64+P U98j+94JtNUMc3arQRS3drR7+dYb8R/fBzyifToY= Authentication-Results: mail-nwsmtp-smtp-production-main-37.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfauth.nyi.internal (Postfix) with ESMTP id 3C4C51200032; Wed, 8 May 2024 23:00:06 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Wed, 08 May 2024 23:00:06 -0400 X-ME-Sender: <xms:NTw8ZsoxZniCUD9frCBxCSukcme4pHUkbCbqK1Kwztgyouj-J9uwXg> <xme:NTw8ZirLbG5thAj9zwDP-0jweg0x0akPCJ3gVvqe3D6_LKdRvmKn6qMVtJ71Z1nAW 8vzDUBHEcCkikjVgLc> X-ME-Received: <xmr:NTw8ZhOV8nAff99QXAAio4KF40wb0PRul6WxTg-YDKbJ2nyHqL76GjDwFEs5K_r2LOHU> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdefuddgiedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffhvfevfhgjtgfgsehtkeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdejgfffheetgfevieefffdujeektefgvedvhedtffehveffvdehleetuefg udelnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:NTw8Zj73nzUq7lxqYV85XdVgXdFQD3UjvEJAbX--DIb02ZBxWQ8nXA> <xmx:NTw8Zr69qXq-Si2eLaKsiV2ufJvMFr9s3KnteoHtZxZeGzNfgeUAAQ> <xmx:NTw8Zjgazep_uaik6D6FR4mtxjUlVkY4cPrVLmjIkoor0fDBAfEAPQ> <xmx:NTw8Zl4LIG1LyySTDfLf3ty-wPaVeWC0dAFE-PayGMpqQFPiAe6JwQ> <xmx:NTw8ZuIXNEgtE2-TB6q4_kewyCFwT01NaFKOBJKCk-5ZWAFdgo8SS6rn> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 8 May 2024 23:00:03 -0400 (EDT) Message-ID: <83ba27b7-4d28-4a3f-b803-4bc49f62986c@HIDDEN> Date: Thu, 9 May 2024 06:00:02 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers From: Dmitry Gutov <dgutov@HIDDEN> To: Stefan Monnier <monnier@HIDDEN>, David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> Content-Language: en-US In-Reply-To: <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 07/05/2024 05:27, Dmitry Gutov wrote: > On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: >>> Thanks for looking over the patch. Here's the recipe for the purported >>> bug in xref.el: >> The problem stems from xref.el's constant abuse of >> `inhibit-modification-hooks`. Binding this var to t should be done only >> in exceptional circumstances and should ideally be accompanied by a >> comment explaining why it's necessary. > > Well, the reason is performance: I've tried to wring out the most out of > it, given that we have to parse the buffer for syntax in Elisp, and > that'll always have a certain overhead. > > The difference between inhibiting and not could be up to 20% of runtime. > > David's fix makes things slower (just due to having us do the necessary > work), but still has an edge over having no inhibit-modification-hooks. > > That remaining improvement is around 4-7% in my testing, though, so > maybe it's the point where we should prioritize simplicity. For now, I've pushed a fix in 86187d43e2d which seems to handle David's scenario and address your review comment as well.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 7 May 2024 13:16:01 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 07 09:16:00 2024 Received: from localhost ([127.0.0.1]:42652 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s4Kfn-0004UH-Tr for submit <at> debbugs.gnu.org; Tue, 07 May 2024 09:16:00 -0400 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:59613) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s4Kfk-0004U9-GJ for 53749 <at> debbugs.gnu.org; Tue, 07 May 2024 09:15:57 -0400 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-1ecddf96313so26750015ad.2 for <53749 <at> debbugs.gnu.org>; Tue, 07 May 2024 06:15:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1715087726; x=1715692526; 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=Gh5YrPgBnl8LygP/+wg28snfCrtXdUCs4LqxlcUXS1o=; b=dPcoqpOapFz/6HIb6omWIw86nyXD2qC7bOpALmPtB0Oqq78/Ra2Kuu+JJ4tWUDYjRr DNzkU1GyWgpVSFdALOgsT5/F6hs8qo80DNgZF9hmf2zRkQPSG30BzH3KuKi/heKhzpXH BIJPcwrK4HSh4GMVdr6/lsdjEC+Sca/9dC2QBQRE7RRMKqRsgz1IUGbzwdfN2nMtlEUJ 1i87dETHMU+cjwFfxz3QJ0PPTiJ8UoMsphD2cA0U6cuMnftsixT/HMxxzV4p5a+vFq/p ZAnV3jdXS65g8T/aFN0ehP1lnIB/RwfF90ZmbWsjwWE2E35a5lX/eZdloUe3p89Ljrbt BLZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715087726; x=1715692526; 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=Gh5YrPgBnl8LygP/+wg28snfCrtXdUCs4LqxlcUXS1o=; b=WYmwF645d0COEGalxhj7/72dlOk3kUr61vBNamcWewH6sKR/LGd2r7zm4XdllDVxHG +ODcONckl2nSiMtEBBOFHR6mb9Bc7VkF2jnOy4LZtzKus1Lgs3ijgwXfZ62QMzLXTB7r koLvOlsnzKDLH7eNDForEQI92t6J2BFrBSzQwfoZkb7FO10JZdkNHgzUfQRmHUbJJ2Qo QGgY+aIyQat3t06Wa+A1BTnrk+DUyyuzfHgFCxkfnZ3rId7baknJNdExIAZbPgk6W4xp qG2m3flDDmU5e/suYd9qvXG8jwBE75VNwItWQoNDS+3SwdPcxFLkTQhlv4WTpcjzIpAj Ogvw== X-Forwarded-Encrypted: i=1; AJvYcCWDxJs13fEl+Ij1uaDeVszRf/cF6KfVg6nmOk4D0m0n+UI35udpbuYXhdkgxSHJ3lQRO0bmUgDQGmhv6/3PO+usbgX0Djk= X-Gm-Message-State: AOJu0Yz2KSH9r63KGL97Rut66pKEEe7cVZlCuI94segK3EYEwdBYBMgF UV3JG9uUar+RxzaqN+jas9KzTYvHV2TY/n9aP3k4m3828kSfAIxBB+jry0QnltvARgE9TO17CjW jsCk7sTADc1NVQ8HHF0bTq3fX+LwO+I9M8yQ= X-Google-Smtp-Source: AGHT+IGYe4ERX3/pMPSnOxc+wtxOX82121gR3afT85/lMqxfvUSyibjxOrq3Ca+5CnrFp17xYAtOrzxB29wZROhq75k= X-Received: by 2002:a17:90b:684:b0:2b4:329e:e373 with SMTP id m4-20020a17090b068400b002b4329ee373mr13854095pjz.6.1715087725517; Tue, 07 May 2024 06:15:25 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> In-Reply-To: <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Tue, 7 May 2024 14:15:33 +0100 Message-ID: <CADF+Rtg=7ZPV-ito8R-0s1=K-wsHMCC7Tocze4EW8S7dV5_h7Q@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> Content-Type: multipart/mixed; boundary="000000000000a3763c0617dcfada" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Dmitry Gutov <dgutov@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) --000000000000a3763c0617dcfada Content-Type: text/plain; charset="UTF-8" Hi Stefan, I apologize in advance if my reply gets lengthy. > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. You are quite right that the regexp can (and does) match "normal" LaTeX code, and I can see that this isn't acceptable as it stands. The only way to be sure about ":" and "_" is to determine whether they're inside a matched pair of \ExplSyntaxOn \ExplSyntaxOff macros (or in a file which does something like \ProvidesExpl[File|Class]). The file case can, I think, be sorted by modifying the syntax table as part of setting up the relevant major modes. The temporary toggling of ExplSyntax is trickier, but I have some proof-of-concept code that adds a function to the `syntax-propertize-extend-region-functions' hook that creates a list (`tex-expl-region-list`) of the start and end of all such regions in a buffer and updates it whenever `syntax-propertize` runs. In the `syntax-propertize-function` we test whether hits are inside one of these regions and only change the syntax when they are. (A very lightly-tested and incomplete patch on top of my earlier patch is attached. It only applies to the "_" now, but would need extending to the other sub-matches, too.) > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. The reason I've been using `syntax-propertize` rather than `font-lock` is because the former may confer advantages when using `xref-find-references`, but that in turn depends on how we decide to define that function in the `tex-etags` backend. Please see below. In any case, I think I can easily use `tex-expl-region-list` in a test for how to fontify "_", so if you don't object to the addition of `tex-expl-region-set` to the `syntax-propertize-extend-region-functions' hook then we should be able to get pretty close to a rigorous demarcation between "normal" LaTeX and expl3 code in this context. > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. We only need `eval` because I'm confused about the handling of macros -- I have some code in progress to fix this. As for why we need to change `syntax-propertize-function`, that's the core of the issue with `xref-find-references`. In the current patch, the wrapper for the standard `xref-backend-references` gathers file extensions and also tests whether the search string begins and/or ends with a non-word, non-symbol character. In `xref-references-in-directory` the only hits offered to the user match (format "\\_<%s\\_>" ...), so I create a bespoke `syntax-propertize-function` to ensure that the search string matches that format. (Actually, I would need to improve that to cope with searches for "\command" in code that looks like "\let\command\othercommand" -- even when the "\" has the right syntax the search fails because the "t" in "let" doesn't.) My mental model for `syntax-propertize` was/is insufficient, as you point out, so your improvement ensures that buffers return to the status quo ante after the search is complete, but it's still an open question whether we want to do this at all. I see at least 3 options: 1. The maximalist approach, which tries to ensure that any TeX symbol may be searched for successfully, even if the syntax of its components is inconvenient. My patch is a (faulty) attempt at this. 2. The minimalist approach, providing no bespoke `syntax-propertize-function`, and accepting failure when searching some strings, especially strings which aren't offered up by default. (In the above example, "command" would be the default offered up, so manual intervention is needed to search for "\command".) In this case I'd be very keen to have the expl3 "_" and ":" code actually in `syntax-propertize`, because then searches for expl3 constructs (without the "\") would work. (I'd also be very keen on having something similar in AUCTeX, though their current method works fine in most files.) 3. The non-standard approach, the `tex-etags` backend calling a variant of `project-find-regexp` instead of `xref-backend-references` when someone presses M-?. We could supply file extensions to search, as now, and allow the choice of projects and/or directories, as now, but the output will always be very non-standard, more like `xref-backend-apropos` than `xref-backend-references`. The syntax of the search string won't matter, and the problem will be "too many hits" rather than "too few or none". If you have any thoughts on the matter I'd be all ears. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. As soon as AUCTeX has "*.[tT]e[xX]" in its contributions to `semantic-symref-filepattern-alist` this will be redundant. As it stands, not searching *.tex files for symbols in LaTeX-mode buffers is kind of terrible. > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? Yes. Please assume I agree with all of your other corrections and clarifications, and that I'll modify the patch accordingly. Once again, thank you for the careful review, and my apologies for occupying too much of your time. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier <monnier@HIDDEN> wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan > --000000000000a3763c0617dcfada Content-Type: text/x-patch; charset="US-ASCII"; name="0001-expl-region.patch" Content-Disposition: attachment; filename="0001-expl-region.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lvwecdhu0> X-Attachment-Id: f_lvwecdhu0 ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKaW5kZXggZDk5MGEyZGJmYTkuLmIyYTY0MTZmMzc5IDEwMDY0NAotLS0gYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbAorKysgYi9saXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5l bApAQCAtNzA1LDE3ICs3MDUsMzYgQEAgdGV4LXZlcmJhdGltLWVudmlyb25tZW50cwogICAgICAg ICAgICAgICAiXFwoPzpfK1xcKD86W15dW1s6c3BhY2U6XVs6Y250cmw6XVs6ZGlnaXQ6XTpcXFxc e30oKS8jXz1dK1xcfCIKICAgICAgICAgICAgICAgIiMrWzEtOV1cXClcXCkrXFwpXFwoWzpfXT9c XCkiKQogICAgICAgKDEgKGlnbm9yZQotICAgICAgICAgIChsZXQqICgoZXhwciAoYnVmZmVyLXN1 YnN0cmluZy1uby1wcm9wZXJ0aWVzIChtYXRjaC1iZWdpbm5pbmcgMSkKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWF0Y2gtZW5kIDEpKSkK LSAgICAgICAgICAgICAgICAgKGxpc3QgKHNlcS1wb3NpdGlvbnMgZXhwciA/XykpKQotICAgICAg ICAgICAgKGRvbGlzdCAocG9zIGxpc3QpCi0gICAgICAgICAgICAgIChwdXQtdGV4dC1wcm9wZXJ0 eSAoKyBwb3MgKG1hdGNoLWJlZ2lubmluZyAxKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICgxKyAoKyBwb3MgKG1hdGNoLWJlZ2lubmluZyAxKSkpCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnc3ludGF4LXRhYmxlIChzdHJpbmctdG8tc3ludGF4ICJfIikpKSkp KQorICAgICAgICAgICh3aGVuIHRleC1leHBsLXJlZ2lvbi1saXN0CisgICAgICAgICAgICAobGV0 ICgobWF0Y2ggKG1hdGNoLWJlZ2lubmluZyAxKSkpCisgICAgICAgICAgICAgIChjYXRjaCAncmVz dWx0CisJICAgICAgICAoZG9saXN0IChyYW5nZSB0ZXgtZXhwbC1yZWdpb24tbGlzdCkKKwkgICAg ICAgICAgKGFuZCAoPiBtYXRjaCAoY2FyIHJhbmdlKSkKKwkgICAgICAgICAgICAgICAoPCBtYXRj aCAoY2RyIHJhbmdlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgKGxldCogKChleHByIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAobWF0Y2gtYmVnaW5uaW5nIDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKG1hdGNoLWVuZCAxKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo bGlzdCAoc2VxLXBvc2l0aW9ucyBleHByID9fKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAg KGRvbGlzdCAocG9zIGxpc3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAocHV0LXRleHQt cHJvcGVydHkgKCsgcG9zIChtYXRjaC1iZWdpbm5pbmcgMSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKDErICgrIHBvcyAobWF0Y2gtYmVnaW5uaW5nIDEp KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3ludGF4 LXRhYmxlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0 cmluZy10by1zeW50YXggIl8iKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAodGhyb3cgJ3Jl c3VsdCB0KSkpKSkpKSkKICAgICAgICgyICJfIikpCiAgICAgICgiXFxcXFtbOmFscGhhOl1dK1xc KDpcXClbWzphbHBoYTpdWzpzcGFjZTpdXG5dIgogICAgICAgKDEgIl8iKSkpKSkKIAorKGRlZnZh ci1sb2NhbCB0ZXgtZXhwbC1yZWdpb24tbGlzdCBuaWwpCisKKyhkZWZ1biB0ZXgtZXhwbC1yZWdp b24tc2V0IChfYmVnIF9lbmQpCisgIChzZXRxIHRleC1leHBsLXJlZ2lvbi1saXN0IG5pbCkKKyAg KGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgKHdoaWxlIChyZS1zZWFyY2gtZm9yd2FyZCAiXFxF eHBsU3ludGF4T24iIG5pbCB0KQorICAgIChsZXQgKChuZXctYmVnIChwb2ludCkpCisgICAgICAg ICAgKG5ldy1lbmQgKHJlLXNlYXJjaC1mb3J3YXJkICJcXEV4cGxTeW50YXhPZmYiIG5pbCB0KSkp CisgICAgICAoYWRkLXRvLWxpc3QgJ3RleC1leHBsLXJlZ2lvbi1saXN0IChjb25zIG5ldy1iZWcg bmV3LWVuZCkgdCkpKSkKKwogKGRlZnVuIHRleC1lbnYtbWFyayAoY21kIHN0YXJ0IGVuZCkKICAg KHdoZW4gKD0gY21kIChsaW5lLWJlZ2lubmluZy1wb3NpdGlvbikpCiAgICAgKGxldCAoKGFyZyAo YnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzICgxKyBzdGFydCkgKDEtIGVuZCkpKSkKQEAg LTEzMDgsNiArMTMyNyw4IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KICAgICAgICAgICAg ICAgICAjJ3RleC0tcHJldHRpZnktc3ltYm9scy1jb21wb3NlLXApCiAgIChzZXRxLWxvY2FsIHN5 bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCiAJICAgICAgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVz IGxhdGV4LXN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKKyAgKGFkZC1ob29rICdzeW50YXgtcHJv cGVydGl6ZS1leHRlbmQtcmVnaW9uLWZ1bmN0aW9ucworICAgICAgICAgICAgICAgICAgIyd0ZXgt ZXhwbC1yZWdpb24tc2V0IG5pbCB0KQogICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25tZW50 cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMtbW9k ZSBuaWwpCiAgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCg== --000000000000a3763c0617dcfada--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 7 May 2024 02:27:57 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 06 22:27:57 2024 Received: from localhost ([127.0.0.1]:41549 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s4AYf-0002R3-5j for submit <at> debbugs.gnu.org; Mon, 06 May 2024 22:27:57 -0400 Received: from forward500c.mail.yandex.net ([2a02:6b8:c03:500:1:45:d181:d500]:45106) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s4AYd-0002Qv-Eh for 53749 <at> debbugs.gnu.org; Mon, 06 May 2024 22:27:56 -0400 Received: from mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net [IPv6:2a02:6b8:c24:a33:0:640:d837:0]) by forward500c.mail.yandex.net (Yandex) with ESMTPS id 8436F60E46; Tue, 7 May 2024 05:27:23 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id IRNiAUGmFmI0-NGNjqMW7; Tue, 07 May 2024 05:27:22 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715048842; bh=7QePmLdLH9IzEey+MJrYO14uvacfm2qSLhMar6lTCqk=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=QPcpdv2htzt/OJntg3iN1NbUbtexvLRCCjWbgczWDbZr14fbz3StkiwQCUWrN6+CI dfmHiBJ+1exOke9JUJKLCjb9FoZm8K3RxGjnWtUX3r4QSkz6AqJ/0pfcUrb3rHXMrt UPMOxa+x4BTD45oHsz9tvRxao9uFzMbB3T+2xh4k= Authentication-Results: mail-nwsmtp-smtp-production-main-44.sas.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfauth.nyi.internal (Postfix) with ESMTP id 1C9BF120006B; Mon, 6 May 2024 22:27:17 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Mon, 06 May 2024 22:27:18 -0400 X-ME-Sender: <xms:hZE5ZrGTD_m-ZEK4-0TZIwlCYVLhp44rMRcDpRr3KiUMgg1XxP15Zw> <xme:hZE5ZoUEdfcsRvTYRf4C1eQNy5S2kwUeclwPW6y0eQsRny-13A1NowVSvXMog3kPi Np8IdjBYIES8X9T8gI> X-ME-Received: <xmr:hZE5ZtLC3vZTcCwZq2DDYvnsp3Tl4aDK2s8cIOevaii9aJb9ulFQkFRLTsw_lm9aJeZ-> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddvjedgieduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:hZE5ZpELXTrg2z66pDZHY3ac5gv1h4vEMHCWezmuUQkDN3VbkqoE9w> <xmx:hZE5ZhX38RWqfOxNg4cWIiF1TnLvPGoUWHYN4WZd2v9EraCerYEAEg> <xmx:hZE5ZkOuRTotYHWPFnhHRYTotgfUoz9JIQWKvGYF8znRpTh5gxgkjQ> <xmx:hZE5Zg32nJzJIrf5buck29SaQgypX_BnwvMQJiyalquW7Ck6sR9IBQ> <xmx:hZE5ZmU-kdYHtEqDsNoUQuXpPYj-2giXEHRoZt_zKdMWNohbPwuqNBby> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 6 May 2024 22:27:15 -0400 (EDT) Message-ID: <eb177a28-d1b3-481a-afad-97bfb9e8d851@HIDDEN> Date: Tue, 7 May 2024 05:27:14 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN>, David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 03/05/2024 16:42, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> Thanks for looking over the patch. Here's the recipe for the purported >> bug in xref.el: > The problem stems from xref.el's constant abuse of > `inhibit-modification-hooks`. Binding this var to t should be done only > in exceptional circumstances and should ideally be accompanied by a > comment explaining why it's necessary. Well, the reason is performance: I've tried to wring out the most out of it, given that we have to parse the buffer for syntax in Elisp, and that'll always have a certain overhead. The difference between inhibiting and not could be up to 20% of runtime. David's fix makes things slower (just due to having us do the necessary work), but still has an edge over having no inhibit-modification-hooks. That remaining improvement is around 4-7% in my testing, though, so maybe it's the point where we should prioritize simplicity.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 7 May 2024 02:07:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon May 06 22:07:18 2024 Received: from localhost ([127.0.0.1]:41459 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s4AEg-0002DA-3x for submit <at> debbugs.gnu.org; Mon, 06 May 2024 22:07:18 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:38460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s4AEc-0002D4-Fm for 53749 <at> debbugs.gnu.org; Mon, 06 May 2024 22:07:16 -0400 Received: from mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:2512:0:640:eb83:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id EAF0E5E6C7; Tue, 7 May 2024 05:06:46 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id g6Nj1t5d4W20-lb5rIuPB; Tue, 07 May 2024 05:06:46 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1715047606; bh=9Ksac0fKc2s3Wn7rFf6ZVRcdfI5TVWhd6VhFtWeLdkc=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=YetryuFLTtI+wFtEHgcaFqREXpnFQXDtbfLwfkNKFM+hX5TNLMSuhyYRD3MaWWj1l FJcc/aJ9YqUTy46YPHYWD8stpSGM4dB+JoYq2AP3cONJgEJVH22AwCHyFOxmJ/VOoS gsT+naGFLD8gR+L0oH3g5kfVnWMrpRhPDVAAT8Ns= Authentication-Results: mail-nwsmtp-smtp-production-main-90.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailfauth.nyi.internal (Postfix) with ESMTP id 1D88F1200032; Mon, 6 May 2024 22:06:41 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Mon, 06 May 2024 22:06:42 -0400 X-ME-Sender: <xms:sYw5ZrAMAGGU-HhMbevVrGJpNui8H2NgjZOvujLmcGM_u8gaBFQCEQ> <xme:sYw5ZhijofJ2SpSW6iWezjAnwmGhMF_qloghnxrObNVlja9PX3flrdfC7jnjty07k aSL5sLmQk_7aoi5ENw> X-ME-Received: <xmr:sYw5ZmlZ2qhhNz9M3HrWaeP2TLQ5ZXouRam3k0EG9SGOKasNkAhikbzZ4ywo1bz8CJEn> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddvjedgheejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:sYw5ZtzT-9BaFU-hOovHh7QjlaMPT4cGH-THvItOQ70Hlzo2v5fLmg> <xmx:sYw5ZgShpI43rS8U7K7ug9WURDqK_s9Oh0wi8yMK8a1KxkfQraIfnw> <xmx:sYw5ZgbDWA3mWrNOQ52g8uYp1iQR6AVElV-EUiTetxXt_vKmO1pZpA> <xmx:sYw5ZhT_J94zc6-MkAl8i4zXq0PJ8DAfmGXdX4sXqyk9ERH-9MJwRQ> <xmx:sYw5ZmBgVA1NX7Jfo30ArGlL1DtNgtgpQzd62HVBkTiQdN9LhpgvHKbQ> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 6 May 2024 22:06:39 -0400 (EDT) Message-ID: <175a4316-bb92-424a-8cca-07ffa6de8aba@HIDDEN> Date: Tue, 7 May 2024 05:06:36 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) On 02/05/2024 16:32, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Hi Dmitry, > > Thanks for looking over the patch. Here's the recipe for the purported > bug in xref.el: > > 1. Please apply my patch to tex-mode.el (and xref.el). > > 2. I've attached xref-bug.zip, which contains a directory with 4 > identical LaTeX files and one LaTeX file with a single additional > character. Please extract it. > > 3. emacs -Q > > 4. C-x C-f xref-bug/mwea.ltx, and please don't visit the other 4 > files. > > 5. Put point on \__hook_debug:n in line 6. > > 6. M-?, RTN, ... RTN, RTN. > > The xref buffer should offer 5 hits, one from each file in the > directory. > > 7. Comment out the the line I added to xref--collect-matches, > byte-compile and load the file. > > 8. With point in the same place, M-?, RTN, ... RTN, RTN. > > The xref buffer should offer 3 hits. The first is from the > file-visiting buffer (where I also set syntax-propertize--done to 0, > because in my testing there could be some issues here, too). The > second hit is from the first file opened in *xref-temp. Here, > syntax-propertize runs to line-end, and all is well. The next two > files are missed, because syntax-propertize--done is set to line-end > and they have exactly the same line length as file two, and therefore > syntax-propertize thinks that's good enough and doesn't actually > change anything. The fifth file has an additional character in line 6, > so syntax-propertize decides it needs to work on this line because > line-end > syntax-propertize--done. > > You can put point on, say, \documentclass, and you'll get all 5 hits, > because this string doesn't begin or end with a non-word, non-symbol > character, and syntax-propertize doesn't need to run. You can make the > search string "\documentclass" and you'll get 2 hits, as line 1 has > the same length in all 5 files. (It's worth trying "\usepackage" as > the search string, too.) > > That's my diagnosis anyway. Does it make sense? Thank you, David, for the thorough scenario. I see the problem now.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 4 May 2024 21:16:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 04 17:16:37 2024 Received: from localhost ([127.0.0.1]:55806 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s3MkH-0003H3-Cf for submit <at> debbugs.gnu.org; Sat, 04 May 2024 17:16:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50444) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1s3MkC-0003Gv-7E for 53749 <at> debbugs.gnu.org; Sat, 04 May 2024 17:16:35 -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 <arash@HIDDEN>) id 1s3Mjg-0004pK-5v; Sat, 04 May 2024 17:16:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=Ccgcv6mp9vXh2fds/uX/gY1o8zc4teDcnzkuhQyfzic=; b=KY2KbR8hwSbpb1/cKGxa 1EcHWR9x/Ki6dj7vzevbI7GVlVD6ox2QXSN+xb/73cz8egppi94YjKRGzRrROCaIS0zO9NL0JABqT tmmPtstV+kvm+3Y4hnpbBHu0jtW7s6KOJcAvrQmuOcZkTJU7AgyAy+95RQzPDOhUEaw+2QpORWK3Y bMdtGINZ2aZWYQmsbxGWP55ui0Olgr0IDkJuPb9ig9QjpUn4c4LCe7Z6+UCgD0z4Va58d5QH3nv4P EkEuKiw7LJaJP8goeU0btl+WE6wwCv7E9vX+Db7TSxspUBPUkPKMqX0o2WPN41LcqxbLJEPkvD36I l8a5TZwqSq9NeQ==; From: Arash Esbati <arash@HIDDEN> To: Stefan Monnier <monnier@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <jwv4jbd8wal.fsf-monnier+emacs@HIDDEN> (Stefan Monnier's message of "Sat, 04 May 2024 10:54:46 -0400") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> <m24jbd7ime.fsf@HIDDEN> <jwv4jbd8wal.fsf-monnier+emacs@HIDDEN> Date: Sat, 04 May 2024 23:15:55 +0200 Message-ID: <m2r0eh6zxw.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, David Fussner <dfussner@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) Stefan Monnier <monnier@HIDDEN> writes: > But that is *also* valid LaTeX, with a different meaning (i.e. where > `_` has its subscript meaning). So we need some other info in order to > know which of the two we're dealing with. That's true. AFAIK, one has to deal with: =E2=80=A2 \_ in ordinary text like foo\_bar =E2=80=A2 _ in math mode like $a_b$ =E2=80=A2 expl3 macros like \tl_set:Nn =E2=80=A2 expl3 macros like \__kernel_kern:n > Maybe that info is simply "assume LaTeX3 if the _ is followed by several > letters" or some such heuristic, but the comment should say so. Last time I looked at this, my conclusion was: Deal with \_ and _ in usual .tex files and expect expl3 macros in .dtx file only. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 4 May 2024 14:55:29 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 04 10:55:29 2024 Received: from localhost ([127.0.0.1]:54123 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s3GnP-0001gX-KV for submit <at> debbugs.gnu.org; Sat, 04 May 2024 10:55:29 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:41135) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s3GnJ-0001gL-OS for 53749 <at> debbugs.gnu.org; Sat, 04 May 2024 10:55:25 -0400 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 42F15801BF; Sat, 4 May 2024 10:54:53 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714834488; bh=Uq+FyXGXhteHHYWoyS4EXgwM36pKM1XIsRQklMho/Qo=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=F3u7F3vJX8R3szNPzKALpYNqxGb6OAn4Oi0XYd5h0Shodivi4eyFdJtBNV3K8XDXh 1vZtIT3wRb81aMyffAQreltVKAp9cRP+xeqiNOLunRN1akcHzf6NkWqxJrWAmJvPx7 sYqMYxkO166CCS/er4rVSrCbd3rfSeOi5Lx/fnDcMO0ahZtbk1oGNo8ev6U3cV0Sue kIN0+lrgd+PfumkbpGBHe7gpO2IuzgPuMOzUfqc8ig+OWWC4bfr4pNlEwZ5OUmK9+9 OIyq8jSzBv6GP+i8S0iIu7yUGIpOyDISV63+M814+5Mblns5CG5qQEzRjlch0ijewf 9CeEoQnn+higw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id EF94780013; Sat, 4 May 2024 10:54:47 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id AD2D0120352; Sat, 4 May 2024 10:54:47 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: Arash Esbati <arash@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <m24jbd7ime.fsf@HIDDEN> (Arash Esbati's message of "Sat, 04 May 2024 16:32:25 +0200") Message-ID: <jwv4jbd8wal.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> <m24jbd7ime.fsf@HIDDEN> Date: Sat, 04 May 2024 10:54:46 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.044 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, David Fussner <dfussner@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) > FWIW, I'm not sure if there is an URL for that, but in interface3.pdf, > chap.1, you'll find: [...] > So expect things like this: > > \tl_set:Nn \l_mya_tl { A } > \tl_set:Nn \l_myb_tl { B } > \tl_set:Nf \l_mya_tl { \l_mya_tl \l_myb_tl } But that is *also* valid LaTeX, with a different meaning (i.e. where `_` has its subscript meaning). So we need some other info in order to know which of the two we're dealing with. Maybe that info is simply "assume LaTeX3 if the _ is followed by several letters" or some such heuristic, but the comment should say so. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 4 May 2024 14:33:05 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 04 10:33:05 2024 Received: from localhost ([127.0.0.1]:54022 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s3GRl-0001Sp-20 for submit <at> debbugs.gnu.org; Sat, 04 May 2024 10:33:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41876) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1s3GRi-0001SO-RU for 53749 <at> debbugs.gnu.org; Sat, 04 May 2024 10:33:03 -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 <arash@HIDDEN>) id 1s3GRC-0003SP-IU; Sat, 04 May 2024 10:32:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=44lUBGbyFmM2WnNYYvX94KwpOGMbnkd8I4mlbnV8wkA=; b=gdCTjMXccj/wngWRfqZA aJB0CltNYwwfhjYw/Rf11OdzbMkhQoj3CxHFWHaCUPU8P3MtWxHLjdYToB43LwVi99j92Z9ZO9yhm 6zeL3gNnmnHWmC3Vn/fDF6znQBV9LeJqWhdQgKIMrDYmzJ1BalvD1Yu2YxFVLBfbO2ycGRv67OUza QL4wCQF1q8s+xb7Wr6PajDNbiMSYmPKT4hIHQuYzoPlBPr5+0yyHSin7wA4pk4fOtBhy3vCveBfXz l3s3E4+TgcZM5n6zH0kHfd/6ZnAPCZaRVW8aJAOLj7GBFpgwV5+j1tAVsMqxQ2B4/bvkB2nt4h3BO F4bX0vPnEU+PJg==; From: Arash Esbati <arash@HIDDEN> To: Stefan Monnier <monnier@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> (Stefan Monnier's message of "Fri, 03 May 2024 10:10:58 -0400") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> Date: Sat, 04 May 2024 16:32:25 +0200 Message-ID: <m24jbd7ime.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, David Fussner <dfussner@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) Stefan Monnier <monnier@HIDDEN> writes: >> diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el >> index 97c950267c6..d990a2dbfa9 100644 >> --- a/lisp/textmodes/tex-mode.el >> +++ b/lisp/textmodes/tex-mode.el >> @@ -695,7 +696,25 @@ tex-verbatim-environments >> ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" >> (1 (ignore >> (tex-env-mark (match-beginning 0) >> - (match-beginning 1) (match-end 1)))))))) >> + (match-beginning 1) (match-end 1))))) >> + ;; The next two rules change the syntax of `:' and `_' in expl3 >> + ;; constructs, so that `tex-font-lock-suscript' can fontify them >> + ;; more accurately. >> + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" >> + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" >> + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" >> + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about > it. FWIW, I'm not sure if there is an URL for that, but in interface3.pdf, chap.1, you'll find: 1.1 Naming functions and variables LATEX3 does not use @ as a "letter"" for defining internal macros. Instead, the symbols _ and : are used in internal macro names to provide structure. The name of each function is divided into logical units using _, while : separates the name of the function from the argument specifier ("arg-spec"). This describes the arguments expected by the function. In most cases, each argument is represented by a single letter. The complete list of arg-spec letters for a function is referred to as the signature of the function. So expect things like this: \tl_set:Nn \l_mya_tl { A } \tl_set:Nn \l_myb_tl { B } \tl_set:Nf \l_mya_tl { \l_mya_tl \l_myb_tl } >> +;; Setup AUCTeX modes (for testing purposes only). >> + >> +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) >> + >> +(defun tex-set-auctex-xref-backend () >> + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? That would have been a question from my side, but I saw that "testing purposes only" and skipped it for this round. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 4 May 2024 08:26:36 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat May 04 04:26:35 2024 Received: from localhost ([127.0.0.1]:52009 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s3Aj5-0007gv-Bo for submit <at> debbugs.gnu.org; Sat, 04 May 2024 04:26:35 -0400 Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]:61594) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s3Aj3-0007gp-Hf for 53749 <at> debbugs.gnu.org; Sat, 04 May 2024 04:26:34 -0400 Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-2b3646494a8so316362a91.2 for <53749 <at> debbugs.gnu.org>; Sat, 04 May 2024 01:26:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714811165; x=1715415965; 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=G3S5R1qBYja9gJpciuTPB9dnqpU0SWe9jcPOBp28xEc=; b=QZ2cot935rEUVBWJG0TKbL8a2C5nIGT7Vu6B5er7/bh2UK/0bASu/3VQTxTZ4S9dlK Ay//EzV2pbE/CbVBWFUYxLUbNm+ehcX4RMpUwYqJMTgKNXRpXxvdU0BQk9Pwboyv8vEJ a9k//+43gnxwo1O0R4gIC+Ixp7hIZSen4khJ2PNOzHRka4ELqS3bV3bhMcNufRr1rl3H Rr87azR3Z2NoMwEbRzYuH4vbf6/A+3AvVgI0SLGnslb8ujszR7YLEaWOfmAmZGWiMrHB Uc0HnQVtx5wYegw0oZ8Dk9VyeMwExj0SNFQvJLsnpndl5O2Llv7KxG+loP/GC+kDlhrm iGRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714811165; x=1715415965; 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=G3S5R1qBYja9gJpciuTPB9dnqpU0SWe9jcPOBp28xEc=; b=KaxdLWMEFT4s9PogC2ArpuKLBBZskfOwF/ch6/0febea8Fbz56SVF83SwsGLt+h8ql E/jZcydVrPDVsDMl1MoZlYWNHMVosJruwvBsSUT1nsXmkGD90U1lG4NekpWKz/mwQpkH VRB6Rn9hA8sbGGGB0+v1iOi54R9OayqqfqlVNz8Slh4Nx3te6KTFP4EHlNOnxouRyQqC 0pTUJmLya2c9jp4L0xSr/Ad0y1CeYnZ04yZKEANA/44iK3mEeZy7S8gpeGuGI3KleyTA X9yk2El47h12U2QwZlj/VPiCSXsnI7ZnKrPK7Kjem5W2eEYujUP5e01A6OfKl34zV8E8 OkNw== X-Forwarded-Encrypted: i=1; AJvYcCW1jSDf0SJ24byFHKhVlul9Uhcu5bLMsJGJh+7q+0T7Qk5Cz6canro/3IjRkKvSjO21TZYmZpMt7wyORgQoUB1mavf7KgU= X-Gm-Message-State: AOJu0YxzCKcj/Zbml1UfkyRUJFjl22glRMMTUF6rUBtOxrDEAl2GoZBt jkgyG5INJ7KL95lWoobkqPdj3Gb5R87ZRr6PWWW8qQBIO/PKuynpr5s4/GFBa3HencfOwABOH9J Pcfud/Y0LPsh+0w/xLvpRuy1bXo4= X-Google-Smtp-Source: AGHT+IGasvNpAFKWAUmLBnI6l43dvoApcGakRFDE34PIpn9q2QWbTKu65LgRtgv5qpd96zQPuE8q1zIrbekitq7AyX8= X-Received: by 2002:a17:90a:e60f:b0:2ae:9176:f928 with SMTP id j15-20020a17090ae60f00b002ae9176f928mr4734204pjy.15.1714811164451; Sat, 04 May 2024 01:26:04 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> In-Reply-To: <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Sat, 4 May 2024 09:26:12 +0100 Message-ID: <CADF+RtjLqBXPWZunZJvMEUPKjO2T0-HbpWERGK9gNWte5AfihQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Dmitry Gutov <dgutov@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) Thank you very much, Stefan, for taking the time to review the patch. In short, it plainly needs some work, but I'm rather short of time this weekend so will respond properly and I hope more coherently Monday or Tuesday. Best, David. On Fri, 3 May 2024 at 15:11, Stefan Monnier <monnier@HIDDEN> wrote: > > Hi, > > Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > > > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > > index 97c950267c6..d990a2dbfa9 100644 > > --- a/lisp/textmodes/tex-mode.el > > +++ b/lisp/textmodes/tex-mode.el > > @@ -695,7 +696,25 @@ tex-verbatim-environments > > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > > (1 (ignore > > (tex-env-mark (match-beginning 0) > > - (match-beginning 1) (match-end 1)))))))) > > + (match-beginning 1) (match-end 1))))) > > + ;; The next two rules change the syntax of `:' and `_' in expl3 > > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > > + ;; more accurately. > > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") > > Can you add in the comment some URL pointing to some relevant expl3 > documentation which "explains" why the above regexp makes sense? > Also I don't clearly see how the above regexp distinguishes expl3 code > from "normal" LaTeX code, so the comment should say something about it. > > Side note: I'd avoid [:space:] whose exact meaning is rarely quite what > we need. > Side note: backslash doesn't need to be backslashed in [...]. > > > + (1 (ignore > > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > > + (match-end 1))) > > + (list (seq-positions expr ?_))) > > + (dolist (pos list) > > + (put-text-property (+ pos (match-beginning 1)) > > + (1+ (+ pos (match-beginning 1))) > > + 'syntax-table (string-to-syntax "_")))))) > > + (2 "_")) > > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > > + (1 "_"))))) > > Currently we "skip" inappropriate underscores via > `tex-font-lock-match-suscript` and/or by adding a particular `face` text > property rather than via `syntax-table/propertize`. > > For algorithmic reasons, it's better to minimize the work done in > `syntax-propertize-function` as much as possible (font-lock is more lazy > than `syntax-propertize`), so I recommend you try and moving the above > to font-lock rules. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > + "The current TeX escape and grouping characters. > > I recommend you backslash escape the { and } above (although it's not > indispensable, `emacs-lisp-mode` will parse the code better). > More importantly, the docstring doesn't explain what this list > means/does. E.g. does the order matter? Can it be longer than 3 elements? > > From the current docstring I can't guess what would be the consequence > of adding/removing elements to/from this list. > > > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > > +;; AUCTeX is doing the same for its modes. > > +(defvar semantic-symref-filepattern-alist) > > +(with-eval-after-load 'semantic/symref/grep > > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > > + "*.bbl" "*.drv" "*.hva") > > + semantic-symref-filepattern-alist) > > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > > + semantic-symref-filepattern-alist) > > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) > > We know `semantic-symref-filepattern-alist` will exist when > `semantic/symref/grep` is loaded, but not before, so I'd put the > `defvar` inside the `with-eval-after-load`. > > > +;; Setup AUCTeX modes (for testing purposes only). > > + > > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > > + > > +(defun tex-set-auctex-xref-backend () > > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) > > I assume this will be sent to AUCTeX and is not meant to be in > `tex-mode.el`, right? > > > +;; `xref-find-references' currently may need this when called from a > > +;; latex-mode buffer in order to search files or buffers with a .tex > > +;; suffix (including the buffer from which it has been called). We > > +;; append it to `auto-mode-alist' so as not to interfere with the usual > > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > > +;; render it unnecessary. > > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) > > Maybe I have not followed the whole discussion closely enough, but at > least to me the above "soon" is very unclear. > I'll assume that this code will be removed before we install the patch. > If not, please explain in the comment why this specific hack is needed > and how it works. > > > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > > + "Find references of IDENTIFIER in TeX buffers and files." > > + (require 'semantic/symref/grep) > > + (let (bufs texbufs > > + (mode major-mode)) > > + (dolist (buf (buffer-list)) > > + (if (eq (buffer-local-value 'major-mode buf) mode) > > + (push buf bufs) > > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > > + (push buf texbufs)))) > > + (unless (seq-set-equal-p tex--buffers-list bufs) > > + (let* ((amalist (tex--collect-file-extensions)) > > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > > + (extlist-new (seq-uniq > > + (seq-union amalist extlist #'string-match-p)))) > > After sinking the `defvar` above, you'll need to add a new `defvar` for > `semantic-symref-filepattern-alist` just after the `require`. > > > + (setq-local syntax-propertize-function > > + (eval > > + `(tex-xref-syntax-function > > + ,identifier ,beg ,end))) > > Why do we need to change `syntax-propertize-function` and why do we need > `eval`? > > > + (setq syntax-propertize--done 0) > > This is not sufficient. You want to `syntax-ppss-flush-cache`. > > > Stefan >
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 3 May 2024 14:11:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 03 10:11:34 2024 Received: from localhost ([127.0.0.1]:46542 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2tdO-0001lF-2h for submit <at> debbugs.gnu.org; Fri, 03 May 2024 10:11:34 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:16816) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s2tdK-0001l6-0R for 53749 <at> debbugs.gnu.org; Fri, 03 May 2024 10:11:32 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 20A4B4414B0; Fri, 3 May 2024 10:11:02 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714745459; bh=Str7xwjWdC+z7r5d3a6xv+raptKl+7aQhuYFT4Hs1LA=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=nHODQCy5H9d+m+VG1GD7cAmj+KweDKAin7UirZx/B1fr8Kxl3ZhOWDDgvRpFox4hW JMJMATgOMEKpPXbOd2NsdoQUL+agupLciJN1b3CMZ6qGRnpK7rk4c3ukIXErlPcfxF DRXchAPxcQNgKJaTSFxQM9/MK4JuSSp3lmUkEAbMa8NzG6TX3E7If6DXUMANV7QVdQ u/92wba6FbXHw4tc5p7FTvFOkHYn3DMwx7QbdBTV27lsG/hmmbET51z3A/KMcIlHxV pMcPW+Ih3H9GqSFMQjC9A9sFksiiJoMmdkGuA+Pit1LBbxC+9MARUFOD9OvzXRWFrU sVaQB/kvVYF8w== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id A301544144D; Fri, 3 May 2024 10:10:59 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 652FC12020E; Fri, 3 May 2024 10:10:59 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> (David Fussner's message of "Mon, 29 Apr 2024 15:15:41 +0100") Message-ID: <jwvmsp7afy2.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> Date: Fri, 03 May 2024 10:10:58 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.001 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Dmitry Gutov <dgutov@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) Hi, Apparently I'm the `tex-mode.el` guy, so I tried to take a look. > diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el > index 97c950267c6..d990a2dbfa9 100644 > --- a/lisp/textmodes/tex-mode.el > +++ b/lisp/textmodes/tex-mode.el > @@ -695,7 +696,25 @@ tex-verbatim-environments > ("\\\\\\(?:end\\|begin\\) *\\({[^\n{}]*}\\)" > (1 (ignore > (tex-env-mark (match-beginning 0) > - (match-beginning 1) (match-end 1)))))))) > + (match-beginning 1) (match-end 1))))) > + ;; The next two rules change the syntax of `:' and `_' in expl3 > + ;; constructs, so that `tex-font-lock-suscript' can fontify them > + ;; more accurately. > + ((concat "\\(\\(?:[\\\\[:space:]{]_\\|" > + "[\\\\{[:space:]][^][_[:space:][:cntrl:][:digit:]\\\\{}()/=]+\\)" > + "\\(?:_+\\(?:[^][[:space:][:cntrl:][:digit:]:\\\\{}()/#_=]+\\|" > + "#+[1-9]\\)\\)+\\)\\([:_]?\\)") Can you add in the comment some URL pointing to some relevant expl3 documentation which "explains" why the above regexp makes sense? Also I don't clearly see how the above regexp distinguishes expl3 code from "normal" LaTeX code, so the comment should say something about it. Side note: I'd avoid [:space:] whose exact meaning is rarely quite what we need. Side note: backslash doesn't need to be backslashed in [...]. > + (1 (ignore > + (let* ((expr (buffer-substring-no-properties (match-beginning 1) > + (match-end 1))) > + (list (seq-positions expr ?_))) > + (dolist (pos list) > + (put-text-property (+ pos (match-beginning 1)) > + (1+ (+ pos (match-beginning 1))) > + 'syntax-table (string-to-syntax "_")))))) > + (2 "_")) > + ("\\\\[[:alpha:]]+\\(:\\)[[:alpha:][:space:]\n]" > + (1 "_"))))) Currently we "skip" inappropriate underscores via `tex-font-lock-match-suscript` and/or by adding a particular `face` text property rather than via `syntax-table/propertize`. For algorithmic reasons, it's better to minimize the work done in `syntax-propertize-function` as much as possible (font-lock is more lazy than `syntax-propertize`), so I recommend you try and moving the above to font-lock rules. > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > + "The current TeX escape and grouping characters. I recommend you backslash escape the { and } above (although it's not indispensable, `emacs-lisp-mode` will parse the code better). More importantly, the docstring doesn't explain what this list means/does. E.g. does the order matter? Can it be longer than 3 elements? From the current docstring I can't guess what would be the consequence of adding/removing elements to/from this list. > +;; Populate `semantic-symref-filepattern-alist' for the in-tree modes; > +;; AUCTeX is doing the same for its modes. > +(defvar semantic-symref-filepattern-alist) > +(with-eval-after-load 'semantic/symref/grep > + (push '(latex-mode "*.[tT]e[xX]" "*.ltx" "*.sty" "*.cl[so]" > + "*.bbl" "*.drv" "*.hva") > + semantic-symref-filepattern-alist) > + (push '(plain-tex-mode "*.[tT]e[xX]" "*.ins") > + semantic-symref-filepattern-alist) > + (push '(doctex-mode "*.dtx") semantic-symref-filepattern-alist)) We know `semantic-symref-filepattern-alist` will exist when `semantic/symref/grep` is loaded, but not before, so I'd put the `defvar` inside the `with-eval-after-load`. > +;; Setup AUCTeX modes (for testing purposes only). > + > +(add-hook 'TeX-mode-hook #'tex-set-auctex-xref-backend) > + > +(defun tex-set-auctex-xref-backend () > + (add-hook 'xref-backend-functions #'tex--xref-backend nil t)) I assume this will be sent to AUCTeX and is not meant to be in `tex-mode.el`, right? > +;; `xref-find-references' currently may need this when called from a > +;; latex-mode buffer in order to search files or buffers with a .tex > +;; suffix (including the buffer from which it has been called). We > +;; append it to `auto-mode-alist' so as not to interfere with the usual > +;; mode-setting apparatus. Changes here and in AUCTeX should soon > +;; render it unnecessary. > +(add-to-list 'auto-mode-alist '("\\.[tT]e[xX]\\'" . latex-mode) t) Maybe I have not followed the whole discussion closely enough, but at least to me the above "soon" is very unclear. I'll assume that this code will be removed before we install the patch. If not, please explain in the comment why this specific hack is needed and how it works. > +(cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) > + "Find references of IDENTIFIER in TeX buffers and files." > + (require 'semantic/symref/grep) > + (let (bufs texbufs > + (mode major-mode)) > + (dolist (buf (buffer-list)) > + (if (eq (buffer-local-value 'major-mode buf) mode) > + (push buf bufs) > + (when (string-match-p ".*\\.[tT]e[xX]" (buffer-name buf)) > + (push buf texbufs)))) > + (unless (seq-set-equal-p tex--buffers-list bufs) > + (let* ((amalist (tex--collect-file-extensions)) > + (extlist (alist-get mode semantic-symref-filepattern-alist)) > + (extlist-new (seq-uniq > + (seq-union amalist extlist #'string-match-p)))) After sinking the `defvar` above, you'll need to add a new `defvar` for `semantic-symref-filepattern-alist` just after the `require`. > + (setq-local syntax-propertize-function > + (eval > + `(tex-xref-syntax-function > + ,identifier ,beg ,end))) Why do we need to change `syntax-propertize-function` and why do we need `eval`? > + (setq syntax-propertize--done 0) This is not sufficient. You want to `syntax-ppss-flush-cache`. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 3 May 2024 13:43:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 03 09:43:28 2024 Received: from localhost ([127.0.0.1]:46462 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2tCB-0001NP-HY for submit <at> debbugs.gnu.org; Fri, 03 May 2024 09:43:28 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:27644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1s2tC5-0001ND-3h for 53749 <at> debbugs.gnu.org; Fri, 03 May 2024 09:43:25 -0400 Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 24C5C80C63; Fri, 3 May 2024 09:42:52 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1714743771; bh=t48ZdDzlvoKMhUvEKBawGz0dGgjwoZ431rhnlwgmNTE=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=KOXWRxKuAaX/1V77xm+LkrHadtGycMY46RZLf283dNL+aJVWM4j3acdLnHC+gVm9a XHCbvVCldy03Wfh4iRZv6lC0nbTh+V3ucWjLQCC6iHE8f59HKRXTfl15PqWts6WU3r t+Gn6JSgnM3E6mM0oI7DFC8jGRo1UaxwbH/0dd7GBDCxYtIx97tFwrgO+6b2L9Qn7B Sl3nrB8GxyY2RhHp9YtS2AViNK4EijKQiEmF0PvoN0+X94aAyMBlGlx+yFsPekzq+Z auGlrYVlFSqF2dH6iBm/gtwe3U1h0KduUQo09ilc+cFmrAeWdYUQuC7bhlXgAol15g nIaiAGNARAsng== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 1347380136; Fri, 3 May 2024 09:42:51 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id C358812046B; Fri, 3 May 2024 09:42:50 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> (David Fussner's message of "Thu, 2 May 2024 14:32:37 +0100") Message-ID: <jwvh6ff9fqi.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> Date: Fri, 03 May 2024 09:42:42 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.045 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) > Thanks for looking over the patch. Here's the recipe for the purported > bug in xref.el: The problem stems from xref.el's constant abuse of `inhibit-modification-hooks`. Binding this var to t should be done only in exceptional circumstances and should ideally be accompanied by a comment explaining why it's necessary. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 2 May 2024 13:35:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 02 09:35:07 2024 Received: from localhost ([127.0.0.1]:43852 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2WaY-0003JX-Mj for submit <at> debbugs.gnu.org; Thu, 02 May 2024 09:35:07 -0400 Received: from mail-pj1-x102d.google.com ([2607:f8b0:4864:20::102d]:45517) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s2WaX-0003J1-D3 for 53749 <at> debbugs.gnu.org; Thu, 02 May 2024 09:35:06 -0400 Received: by mail-pj1-x102d.google.com with SMTP id 98e67ed59e1d1-2b2769f017aso2332090a91.3 for <53749 <at> debbugs.gnu.org>; Thu, 02 May 2024 06:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714656878; x=1715261678; 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=NA76V/Oy3DWddy9aztETAssFfPneYE/G97RSxiYygCg=; b=JqiiecHicjYpa8z364pO1maJBx8PUGZbrO63fiyxIn63/tJ7frsdM0Ozqt9IIgSyCR DAUoC00ieuLBINSuLv5tuXZhFX4U/mCQfCO5ZHSnpomfuU0+q5f6IvGfo1uMHN4tLrLK TFunn7t+7TLQiuuFFS0koGyRIrJiQ71JqmrGmqRIIWZctFTFwSr5YcVwKLq/ouoissUS i2WPGB03KzWoUOd+o+GitOSK8Z2X0bGYvbpIbVJY5AbFNNVS92iPVL/pjxhXUL0apsA/ AjbJuUc9eC4tAhQNvwsTppS68ssK7zaRrr9VcS8xYOGK4ADebCPev28Ik7lQ0560zTZa YFDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714656878; x=1715261678; 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=NA76V/Oy3DWddy9aztETAssFfPneYE/G97RSxiYygCg=; b=xIqj14bCoYjsBFPfwYThWC5Xfvo3spsa7oEXnD4/iAoqiCkvGqTuCwvnn5UpHN6sGo tYMUWDM8oWI3R4mXZXF+d40OAVZl72GYlSogG2CrDtuc/lDRM2+PaT9X6uZr9+t9Buma ChpXULfFNIYDfyRJf1VmQyJqUVyc/bJpB8mMlT2ripC3SuwsPN0hG61pgvkqbKpcTwD+ HxLQl/P5cjtUYHXVaEDa9sAIibi9AxyNHNGgLWCl0k9xsUZhCzAvHHY7yLQ9VcZYHlbD GGYZbAckbU8OuBuRSpK8s68QrKcmXo/Gfvx6jTXFTOc0nZgY8jonqVGqpxNT698WhibT CIBw== X-Forwarded-Encrypted: i=1; AJvYcCVmqlojXbnHauz2XJzprgjE4+yNRVQz7kU+q7bXAoCAEp+bPbeVMXrBVSBEkzpBhu+IKUSnR1hliBzuk0qL+sWY/kSqRSo= X-Gm-Message-State: AOJu0Yy2bFDZn5VqLQiJP8/clA6LldZOFxEQVU2uhz5yoXPCv01Jv02u 698hZtaDQizr1cd6NFgSBgJoE6r5mctlcXC6zmso6o7sH/K1Fm6dN+7bbFUxARtOtqzf1ebn2YH REvRZABM+YveZ5PpBJknk0iMi39o= X-Google-Smtp-Source: AGHT+IHoUVyV+1xnw2NNYHKFhAWnxXUVXwrHoFXA3+F2A6ujQtvzP0WEDdzjmNXUaCw6GLuBm5ANMlXfCrSjZcX85NM= X-Received: by 2002:a17:90a:2dc2:b0:2b3:53e1:db8 with SMTP id q2-20020a17090a2dc200b002b353e10db8mr3800463pjm.35.1714656877695; Thu, 02 May 2024 06:34:37 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <m234r0ogla.fsf@HIDDEN> In-Reply-To: <m234r0ogla.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 2 May 2024 14:34:45 +0100 Message-ID: <CADF+RtibXjvu7wyhcpMPR34ZN219MmFCw0QT+aLkNniOFrG41A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) Thanks for the review, Arash, and I'll make those changes. Best, David. On Thu, 2 May 2024 at 07:47, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > Here's my third attempt at a working xref backend for TeX. I'll try > > quickly to summarize what's in it: > > > > 1. I've modified etags so that it creates findable tags for as many > > different sorts of TeX construct as possible, including those written > > in the new expl3 syntax. I've now removed the escape character from > > the tag names, as this simplifies code all around. > > Hi David, > > Thanks. I trust your code works, so I have 2 minor comments. > > > 5. Slightly unrelatedly, I've added new syntax-propertize-rules to > > latex-mode so that expl3 constructs with the underscore aren't > > fontified as subscripts, which makes such code unreadable. I'm happy > > to split this off as another patch. > > I think this makes sense. AFAIK, Stefan M. looks after tex-mode.el, so > he can the review it. > > > @@ -5736,11 +5752,25 @@ Scheme_functions (FILE *inf) > > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2024) Add variants of '\def', some additional LaTeX (and > > + former xparse) commands, common variants from the > > + 'etoolbox' package, and the main expl3 commands. */ > > static const char *TEX_defenv = "\ > > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > > -:part:appendix:entry:index:def\ > > -:newcommand:renewcommand:newenvironment:renewenvironment"; > > +:label:ref:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > > I suggest to add 'Ref' and 'footref' as well which are part of LaTeX > kernel. > > > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) > > (defvar tex-esc-and-group-chars '(?\\ ?\{ ?\}) > > > + "The current TeX escape and grouping characters. > > Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 2 May 2024 13:33:01 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 02 09:33:01 2024 Received: from localhost ([127.0.0.1]:43832 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2WYW-0003Ho-KF for submit <at> debbugs.gnu.org; Thu, 02 May 2024 09:33:01 -0400 Received: from mail-pg1-x536.google.com ([2607:f8b0:4864:20::536]:44246) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s2WYU-0003Hi-AL for 53749 <at> debbugs.gnu.org; Thu, 02 May 2024 09:32:59 -0400 Received: by mail-pg1-x536.google.com with SMTP id 41be03b00d2f7-60c49bdbcd3so3170266a12.0 for <53749 <at> debbugs.gnu.org>; Thu, 02 May 2024 06:32:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714656750; x=1715261550; 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=qbfkAEgVCtaFAoWF+BM65A4yLl8Bt1U72KGGUav95W4=; b=R5a1++6IEN9AZYk0TsMR5MsVzpZQmbfsn5Ph2/ad+466eDd1X1lin86HwnQhfoG2fZ Z4S+IGn8F1oRcP1ZHUHnGBtBSn+Hh33c4FQU34XMBcqfXZSAI0wvb8q/TlJl2aQmqQ0g Q2y3zPtqbEMLkx+1iGF1Rn0qnn3OBG2GCasj7gEhdZjiCJceRhjUDUvHv2uVNaGa4W+2 anouIa0FMdBR0Fz/vIJvYslXKTWDK6kBXEDs4GMo328goYi+2tuTK4MCBdZa2QGLOGHQ rGQ+qix77thckO4g172e5gYCokLng3oiHsNYgtTkDJykIImIMvpcWQC29YM30B/CqMn1 p9+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714656750; x=1715261550; 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=qbfkAEgVCtaFAoWF+BM65A4yLl8Bt1U72KGGUav95W4=; b=RrO/JCAB2dfAer6CVotz4O//NTOBNsNYyI9r41pdl1PRFTrRWJPHfvfppzXaakNUPx AGrtYJyTc6KEon9T2UCmXS8QLhuDN1/H8uThFfpGQq0wvMMOtS8G392EP+RlLZOg/wjH EmmLJCn5on10EHtMGP6uFnSg8tGXyNPUtBgBmT2pbpKtSxzPb4Efjut37duTCjZsH9c8 XQ9GhTSZOy3sUxRA6lz0b6STnWfVWChA8QLxx+DPyRE232RqTMfttWkg3XP2fTQNXHG8 3dajS/euYuGImzrIy1eT7qILVNJ4v6IoetdYiFq2fM2iB1PNzwdxt6Vuvzl/4fSARySJ 7yLQ== X-Forwarded-Encrypted: i=1; AJvYcCUNyBtf33TllTCwIXk/lAQXjWVUZWcim+RxCgq0Tdr+WdyZqduG0wJJmtSK+zpgOlemykUEwkdHFSwQqwsgCo7sPfASiCw= X-Gm-Message-State: AOJu0Yyzl1BoqN+rMZeOBRZq24oUvoDsJVgguTvFgWo9Qq6qJSjhermz orPBiMVyQ4aYbonI1+8h8kFqOnjKjWGsFkT7n4WhPoDl3IoehnRJOoIYaU8Jp4lW70VqL/EP34Q 47dbgbhBR0HcJ5zMAPwAfkg3h8RU= X-Google-Smtp-Source: AGHT+IEtrE8TwQ7uKl4f/nvs8k1DeaMOXtVy13zWOwj9H68rD7jzBXTRk/8W9/kxRf34w6IeRTzuts2MvuCcU72JFKw= X-Received: by 2002:a17:90a:a012:b0:2b2:7e94:c5fa with SMTP id q18-20020a17090aa01200b002b27e94c5famr5713699pjp.5.1714656750346; Thu, 02 May 2024 06:32:30 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> In-Reply-To: <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 2 May 2024 14:32:37 +0100 Message-ID: <CADF+Rtif9uA3qgcSbxiFMTi01wyn5fSMgdTGu1Crsdb24XexDQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: multipart/mixed; boundary="00000000000084407a061778a27e" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) --00000000000084407a061778a27e Content-Type: text/plain; charset="UTF-8" Hi Dmitry, Thanks for looking over the patch. Here's the recipe for the purported bug in xref.el: 1. Please apply my patch to tex-mode.el (and xref.el). 2. I've attached xref-bug.zip, which contains a directory with 4 identical LaTeX files and one LaTeX file with a single additional character. Please extract it. 3. emacs -Q 4. C-x C-f xref-bug/mwea.ltx, and please don't visit the other 4 files. 5. Put point on \__hook_debug:n in line 6. 6. M-?, RTN, ... RTN, RTN. The xref buffer should offer 5 hits, one from each file in the directory. 7. Comment out the the line I added to xref--collect-matches, byte-compile and load the file. 8. With point in the same place, M-?, RTN, ... RTN, RTN. The xref buffer should offer 3 hits. The first is from the file-visiting buffer (where I also set syntax-propertize--done to 0, because in my testing there could be some issues here, too). The second hit is from the first file opened in *xref-temp. Here, syntax-propertize runs to line-end, and all is well. The next two files are missed, because syntax-propertize--done is set to line-end and they have exactly the same line length as file two, and therefore syntax-propertize thinks that's good enough and doesn't actually change anything. The fifth file has an additional character in line 6, so syntax-propertize decides it needs to work on this line because line-end > syntax-propertize--done. You can put point on, say, \documentclass, and you'll get all 5 hits, because this string doesn't begin or end with a non-word, non-symbol character, and syntax-propertize doesn't need to run. You can make the search string "\documentclass" and you'll get 2 hits, as line 1 has the same length in all 5 files. (It's worth trying "\usepackage" as the search string, too.) That's my diagnosis anyway. Does it make sense? Thanks, David. On Thu, 2 May 2024 at 01:43, Dmitry Gutov <dgutov@HIDDEN> wrote: > > On 29/04/2024 17:15, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > though I had to add a one-liner in xref.el to fix > > what I believe is a minor bug there preventing syntax-propertize from > > doing its work when the temp buffer holds text from a new file. (I can > > provide a recipe for this if you want.) > > Yes, could you please expand on it separately? > > The rest of the patch description just makes sense to me, and I'd be > happy to leave (or not) the detailed review to whoever reviews TeX > contributions around here, but this is something I'll need to pay > special attention to. --00000000000084407a061778a27e Content-Type: application/zip; name="xref-bug.zip" Content-Disposition: attachment; filename="xref-bug.zip" Content-Transfer-Encoding: base64 Content-ID: <f_lvpa9gqw0> X-Attachment-Id: f_lvpa9gqw0 UEsDBBQAAAAIANFpolg38qovlwAAAOUAAAARABwAeHJlZi1idWcvbXdlYS5sdHhVVAkAA6qDM2bR gzNmdXgLAAEE6AMAAARkAAAAVY4xDoMwEAR7XsEXktJ9WlKkjCPLmMMgzPnCHQrIyt9jF5Gg3R3N ru6iW2dAccEyPy9Xkleyi4wuwLfSKwNZN1kPqY8oTODO6UZ24ULeNgqPHcVud6x0G2MwCB/V1Nob M8Q4mQ7a1ZvSVNpxaQ28VZOJI6CwLn6DEUHhydv3WQx+xPQ/nXdlGJnyE5Y9QIKZZM8pYHeAflBL AwQUAAAACADnaaJYN/KqL5cAAADlAAAAEQAcAHhyZWYtYnVnL213ZWIubHR4VVQJAAPRgzNmCYQz ZnV4CwABBOgDAAAEZAAAAFWOMQ6DMBAEe17BF5LSfVpSpIwjy5jDIMz5wh0KyMrfYxeRoN0dza7u oltnQHHBMj8vV5JXsouMLsC30isDWTdZD6mPKEzgzulGduFC3jYKjx3FbnesdBtjMAgf1dTaGzPE OJkO2tWb0lTacWkNvFWTiSOgsC5+gxFB4cnb91kMfsT0P513ZRiZ8hOWPUCCmWTPKWB3gH5QSwME FAAAAAgA6WmiWDfyqi+XAAAA5QAAABEAHAB4cmVmLWJ1Zy9td2VjLmx0eFVUCQAD1YMzZgmEM2Z1 eAsAAQToAwAABGQAAABVjjEOgzAQBHtewReS0n1aUqSMI8uYwyDM+cIdCsjK32MXkaDdHc2u7qJb Z0BxwTI/L1eSV7KLjC7At9IrA1k3WQ+pjyhM4M7pRnbhQt42Co8dxW53rHQbYzAIH9XU2hszxDiZ DtrVm9JU2nFpDbxVk4kjoLAufoMRQeHJ2/dZDH7E9D+dd2UYmfITlj1Agplkzylgd4B+UEsDBBQA AAAIAOxpolg38qovlwAAAOUAAAARABwAeHJlZi1idWcvbXdlZC5sdHhVVAkAA9uDM2YJhDNmdXgL AAEE6AMAAARkAAAAVY4xDoMwEAR7XsEXktJ9WlKkjCPLmMMgzPnCHQrIyt9jF5Gg3R3Nru6iW2dA ccEyPy9Xkleyi4wuwLfSKwNZN1kPqY8oTODO6UZ24ULeNgqPHcVud6x0G2MwCB/V1NobM8Q4mQ7a 1ZvSVNpxaQ28VZOJI6CwLn6DEUHhydv3WQx+xPQ/nXdlGJnyE5Y9QIKZZM8pYHeAflBLAwQUAAAA CABcaqJYugxYb5gAAADmAAAAEQAcAHhyZWYtYnVnL213ZWUubHR4VVQJAAOvhDNm0IQzZnV4CwAB BOgDAAAEZAAAAFWOMQ6DMBAEe17BF5LSfVpSpIwjy5jDIMz5wh0KyMrfYxeRoN0dza7uoltnQHHB Mj8vV5JXsouMLsC30isDWTdZD6mPKEzgzulGduFC3jYKjx3FbnesdBtjMAgf1dTaGzPEOJkO2tWb 0lTacWkNvFXTZORIKKzLgMGIoPAk7vtsBj9i+r/OwzKMTPkKyx4gwUyy5xSwO0A/UEsBAh4DFAAA AAgA0WmiWDfyqi+XAAAA5QAAABEAGAAAAAAAAQAAAKSBAAAAAHhyZWYtYnVnL213ZWEubHR4VVQF AAOqgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4DFAAAAAgA52miWDfyqi+XAAAA5QAAABEAGAAAAAAA AQAAAKSB4gAAAHhyZWYtYnVnL213ZWIubHR4VVQFAAPRgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4D FAAAAAgA6WmiWDfyqi+XAAAA5QAAABEAGAAAAAAAAQAAAKSBxAEAAHhyZWYtYnVnL213ZWMubHR4 VVQFAAPVgzNmdXgLAAEE6AMAAARkAAAAUEsBAh4DFAAAAAgA7GmiWDfyqi+XAAAA5QAAABEAGAAA AAAAAQAAAKSBpgIAAHhyZWYtYnVnL213ZWQubHR4VVQFAAPbgzNmdXgLAAEE6AMAAARkAAAAUEsB Ah4DFAAAAAgAXGqiWLoMWG+YAAAA5gAAABEAGAAAAAAAAQAAAKSBiAMAAHhyZWYtYnVnL213ZWUu bHR4VVQFAAOvhDNmdXgLAAEE6AMAAARkAAAAUEsFBgAAAAAFAAUAswEAAGsEAAAAAA== --00000000000084407a061778a27e--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 2 May 2024 06:48:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 02 02:48:06 2024 Received: from localhost ([127.0.0.1]:41903 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2QEg-0007L6-C0 for submit <at> debbugs.gnu.org; Thu, 02 May 2024 02:48:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36642) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1s2QEd-0007Kj-2Z for 53749 <at> debbugs.gnu.org; Thu, 02 May 2024 02:48:05 -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 <arash@HIDDEN>) id 1s2QE9-0006O3-VB; Thu, 02 May 2024 02:47:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=drNYDg5UxKnWe/AwBJwWjbhK6TWbk9ydSHSN0WRI9xw=; b=WHRoW+fTHdQKtS61BJWG J4eYyZ9aKJZW07WGSwfckIp63m0KFwqyCGO8MjjlL8P7xku3E2fE0CXi/xBubm2OLnpBQuLtLdgMe E9xNSirYBJ2d/KF/B3zewU26l4knvfFJOAfv7miRPtkoam+XuCQ6UpqVW9m3F2qylXvIgd/tNjj8e u8YJhqEShbd3ZBuaf4zhauOtL8FsFHed2Sxi9Ch56/5XUQ1gcfuXXctDO/bUg7ceB3pHFgisnuF3B U39UWZp2MSM08LXNILBSwmLFjskEv6nRNFziTqiWohFeiSpkPPt/uskC1SSSD6nL0ICR1K1tCrXqI fBTtAMX64I/l2Q==; From: Arash Esbati <arash@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> (David Fussner's message of "Mon, 29 Apr 2024 15:15:41 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> Date: Thu, 02 May 2024 08:47:29 +0200 Message-ID: <m234r0ogla.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (---) David Fussner <dfussner@HIDDEN> writes: > Here's my third attempt at a working xref backend for TeX. I'll try > quickly to summarize what's in it: > > 1. I've modified etags so that it creates findable tags for as many > different sorts of TeX construct as possible, including those written > in the new expl3 syntax. I've now removed the escape character from > the tag names, as this simplifies code all around. Hi David, Thanks. I trust your code works, so I have 2 minor comments. > 5. Slightly unrelatedly, I've added new syntax-propertize-rules to > latex-mode so that expl3 constructs with the underscore aren't > fontified as subscripts, which makes such code unreadable. I'm happy > to split this off as another patch. I think this makes sense. AFAIK, Stefan M. looks after tex-mode.el, so he can the review it. > @@ -5736,11 +5752,25 @@ Scheme_functions (FILE *inf) > static linebuffer *TEX_toktab = NULL; /* Table with tag tokens */ > > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2024) Add variants of '\def', some additional LaTeX (and > + former xparse) commands, common variants from the > + 'etoolbox' package, and the main expl3 commands. */ > static const char *TEX_defenv = "\ > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > -:part:appendix:entry:index:def\ > -:newcommand:renewcommand:newenvironment:renewenvironment"; > +:label:ref:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ I suggest to add 'Ref' and 'footref' as well which are part of LaTeX kernel. > +(defvar tex-esc-and-group-chars '(?\\ ?{ ?}) (defvar tex-esc-and-group-chars '(?\\ ?\{ ?\}) > + "The current TeX escape and grouping characters. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 2 May 2024 00:43:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 01 20:43:48 2024 Received: from localhost ([127.0.0.1]:40298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s2KY8-00066B-70 for submit <at> debbugs.gnu.org; Wed, 01 May 2024 20:43:48 -0400 Received: from forward501c.mail.yandex.net ([178.154.239.209]:45440) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1s2KY5-000663-Q7 for 53749 <at> debbugs.gnu.org; Wed, 01 May 2024 20:43:47 -0400 Received: from mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:2787:0:640:338c:0]) by forward501c.mail.yandex.net (Yandex) with ESMTPS id EAC9460EBC; Thu, 2 May 2024 03:43:21 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id GhGTZaVMf8c0-xX3IEU4d; Thu, 02 May 2024 03:43:21 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1714610601; bh=2joRjDGDto1B34fMIja8cRvkGf47dR+BZ8GBojfFMco=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=pu0va5NX2MIBtVc1E3jbWQC/cJqrgs5ZTUR2TmQ9uREm5yo39DVLJWOV2YQvPpWd9 HSykRz+vo82mIe+yC1l4OUynMy4gY+R1k2uMxh1JenUBNyoOgF1m8nXuFee/wX2kbs 08ticTaQOPeIQTg5YG4MadR8/dHofdY1WrDsVCYM= Authentication-Results: mail-nwsmtp-smtp-production-main-39.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfauth.nyi.internal (Postfix) with ESMTP id B799F1200043; Wed, 1 May 2024 20:43:16 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 01 May 2024 20:43:16 -0400 X-ME-Sender: <xms:pOEyZoh_V-4fP3ludKSi3AeLuHagNm6RTePEE-aL625Lq6cwWJEo3Q> <xme:pOEyZhCZK-HckzF1DSlgcMvXIXWF3a0SEBNvExBKw1_HbohfBTblOwFiPU7YZNv47 vmZcgRD6JWpNsLgY7Q> X-ME-Received: <xmr:pOEyZgHkNP0U4WFoqFV96fG1C9X0R10nxUla6mWl2TI4mB9urphRO47DOmmx77xpy6nA> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvddujedgfeelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:pOEyZpRmLahKnJ9-ATxBBM11c0uA4tCjVOniiVRQWhanFGfBe8JCIw> <xmx:pOEyZlxpMYpfb3AoHmdD0qI4E6799xBVyxg16RNSH-FuDo4HpcRw5w> <xmx:pOEyZn4gaaX-rQPaeVjKVRhC0nbFGa-0WDPkbvwgZccUqkA7h4TfQw> <xmx:pOEyZiybuYtIjHS-5cv39BBGJffquD-e9ygpgRABM8cpY0B6XJ1MdQ> <xmx:pOEyZphmsXwbcsZJEiuLVnz_TnWYTvHkDTLAEW0wZHXQCVnFTu7GJJ2F> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 1 May 2024 20:43:13 -0400 (EDT) Message-ID: <e5a6ba0d-ca4a-4e21-b44f-12043c59aa6b@HIDDEN> Date: Thu, 2 May 2024 03:43:12 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN>, Arash Esbati <arash@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, Stefan Monnier <monnier@HIDDEN> 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 (-) On 29/04/2024 17:15, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > though I had to add a one-liner in xref.el to fix > what I believe is a minor bug there preventing syntax-propertize from > doing its work when the temp buffer holds text from a new file. (I can > provide a recipe for this if you want.) Yes, could you please expand on it separately? The rest of the patch description just makes sense to me, and I'd be happy to leave (or not) the detailed review to whoever reviews TeX contributions around here, but this is something I'll need to pay special attention to.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 29 Apr 2024 14:16:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 29 10:16:06 2024 Received: from localhost ([127.0.0.1]:57489 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1s1RnY-0003IO-6c for submit <at> debbugs.gnu.org; Mon, 29 Apr 2024 10:16:05 -0400 Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]:61708) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1s1RnV-0003Hz-BI for 53749 <at> debbugs.gnu.org; Mon, 29 Apr 2024 10:16:03 -0400 Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-1eab16c8d83so35393915ad.3 for <53749 <at> debbugs.gnu.org>; Mon, 29 Apr 2024 07:15:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1714400135; x=1715004935; 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=UeYyFj4qle6TFEUh7MtsLjXdnTYzVS94fRGVsexxs4w=; b=eY9vQcLc5cBh6eb/dXTrlVyS6rlWCOv/5yC1efDBz5snvGPwEX9wbzz/xT1piasFR9 v+fd3JmaeWeMnUEq8Oz4u2r1PAFLjBRd3lSK2VnXXCjtZgrnKxlFFe5JGa48wj7NwXAd 1g6hKrqqXPP96JX3794nFuJ0FhuOH9NFAS8HhVTqLrbsDuVpvykQzhjyO3bWs/HOzWo5 PuQ7WY/qC8IkxK0sgdTBCkfLIqp0aYehkCCILlOsYvxZUykCPssIQl48jBniczMxzKv1 0rsn3eWHyhWv2Z4E9uMMxWAhUBrwlex8BHbS7YRxYTe5ogVkdaSJVnJls2q72nPKFEM3 bU2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714400135; x=1715004935; 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=UeYyFj4qle6TFEUh7MtsLjXdnTYzVS94fRGVsexxs4w=; b=mEf8ADsdCrIz71sVBAAULVmyM8hiIKXWSMTS84VW72/yryNmTDTq6lZ2iZP8dAGNXi 6gaak1TQbemb8gwCGTEX75rhDgDzUy7eLIgINooxZziwExB9yUjDk9nsaM+YBJPaziFL +y8DZCmoHVjDexW9HfCbvUldU79PEIm4ybP1OtHtZlCtaiKBsyMZqAqmWDZSZF3+V+UY YbC06ev5fP/LaQELgdiJ83dA/t2R07Wl/8I9vniLsTEKJ2YnKE1PTPvzTjWgQS59Stew c4sjUTezDbaArJThL0lVfpaLbNSjW2ky+je5GN3xyZpXu3ICcxSThbPazQKCfMHmCnjI fmNQ== X-Forwarded-Encrypted: i=1; AJvYcCUCTdn3KuD3XuIk7mInMxdlnJiDmGsD28MyLOy257fEW8aLS1NQKZrJ5k/WxaK25x43r6ovnqtBjG7NMUHoHfdFz5IPDGQ= X-Gm-Message-State: AOJu0YxjCFehy2Z7Ja/sB2eWv/g8DDbJwiRVIfzEHJmdFsBEiJLq6bS4 9ciEhMcvCQEWqk6NDEpTxvUl0Gp5QdBWOEpoQGHpKyP/b3L6Yf+RPqvL3eM1vn1L19yxYdvOVkX Sig4ilK4QALaFYJHesOdHjH+/i80= X-Google-Smtp-Source: AGHT+IE6WKG+8RZWhNPT6A7E/RuAn6NiFLDolXDEW5jZZMQNACEqlAJo+tVompKsbzWZB3fpUwXttMOWySbS1nYTZJE= X-Received: by 2002:a17:903:18e:b0:1e7:b6a3:7bd9 with SMTP id z14-20020a170903018e00b001e7b6a37bd9mr11895577plg.16.1714400134976; Mon, 29 Apr 2024 07:15:34 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> In-Reply-To: <m24jbtim2p.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 29 Apr 2024 15:15:41 +0100 Message-ID: <CADF+RtiOECRmdoFD1qP=gRzS+P3tJqh_WNTnuW-1zPrY9g4VBw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: multipart/mixed; boundary="0000000000000c7e7c06173ce321" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) --0000000000000c7e7c06173ce321 Content-Type: text/plain; charset="UTF-8" Hi Dmitry and Arash, Here's my third attempt at a working xref backend for TeX. I'll try quickly to summarize what's in it: 1. I've modified etags so that it creates findable tags for as many different sorts of TeX construct as possible, including those written in the new expl3 syntax. I've now removed the escape character from the tag names, as this simplifies code all around. 2. 4 of the 6 xref backend functions just call the etags backend. 3. xref-backend-identifier-at-point is modified to provide new regexps for delineating TeX symbols, and there's also code to cope with expl3 constructs slightly differently in M-? than in the other two main xref commands. 4. xref-backend-references is a wrapper for the standard backend, the wrapper doing two things: first, it tries to accumulate as many file extensions for the current major-mode as emacs knows about, and second it creates a bespoke syntax-propertize-function for strings that aren't entirely composed of symbol or word characters. It applies this function to file-visiting buffers and lets xref apply it in the *xref-temp buffer, though I had to add a one-liner in xref.el to fix what I believe is a minor bug there preventing syntax-propertize from doing its work when the temp buffer holds text from a new file. (I can provide a recipe for this if you want.) 5. Slightly unrelatedly, I've added new syntax-propertize-rules to latex-mode so that expl3 constructs with the underscore aren't fontified as subscripts, which makes such code unreadable. I'm happy to split this off as another patch. All comments gratefully received, and thanks, David. On Mon, 22 Apr 2024 at 14:06, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > Thanks for the clarifications. If you look at the current patch to > > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > > for my own testing purposes, but no matter what the final patch looks > > like it should only similarly require a single function call in an > > AUCTeX hook to activate the new xref code there, along with one in > > tex-common-initialization for the in-tree modes. If and when all > > parties are satisfied by the patch I'll certainly be in touch with you > > to find out how you'd prefer to handle activating it (or not) in > > AUCTeX. The current state of affairs is a convenience for me and for > > anyone else who cares to test the code. > > Hi David, > > I justed wanted to come back on this report and ask if there is any > progress? It would be nice to get Xref working within TeX buffers. > > TIA. Best, Arash --0000000000000c7e7c06173ce321 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Provide-a-modified-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lvl1hef80> X-Attachment-Id: f_lvl1hef80 RnJvbSA2NGE0ZjdjN2I4OWI0NDc1YTM4NDFiNTQyODhjMjViY2M0ZWJkZTNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogTW9uLCAyOSBBcHIgMjAyNCAxNTowNTowMyArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IFByb3ZpZGUgYSBtb2RpZmllZCB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1z cmMvZXRhZ3MuYyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGlu IFRlWApidWZmZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRh ZyBieSBkZWZhdWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWlu dGFpbmluZy50ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4K KElkZW50aWZpZXIgU2VhcmNoKTogQWRkIG5vdGUgYWJvdXQgc2VtYW50aWMtc3ltcmVmLWZpbGVw YXR0ZXJuLWFsaXN0LAphdXRvLW1vZGUtYWxpc3QsIGFuZCB4cmVmLWZpbmQtcmVmZXJlbmNlcy4K CiogbGlzcC9wcm9nbW9kZXMveHJlZi5lbCAoeHJlZi0tY29sbGVjdC1tYXRjaGVzKTogRW5zdXJl CnN5bnRheC1wcm9wZXJ0aXplIGFjdHVhbGx5IHJ1bnMgaW4gdGhlICp4cmVmLXRlbXAgYnVmZmVy IGZvciBlYWNoCm5ldyBmaWxlIHNlYXJjaGVkLgoqIGxpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVs ICh0ZXgtZm9udC1sb2NrLXN1c2NyaXB0KTogRGlzYWJsZQpzdWJzY3JpcHQgZmFjZSBpbiBleHBs MyBjb25zdHJ1Y3RzLgoobGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpOiBBZGQgdHdvIG5l dyBydWxlcyB0byBnaXZlIHN5bWJvbApzeW50YXggdG8gdGhlIHN0YW5kYXJkIGNvbXBvbmVudHMg b2YgZXhwbDMgY29uc3RydWN0cy4KKHRleC1jb21tb24taW5pdGlhbGl6YXRpb24pOiBTZXQgdXAg eHJlZiBiYWNrZW5kIGZvciBpbi10cmVlIFRlWAptb2Rlcy4KKHRleC0tdGhpbmctYXQtcG9pbnQs IHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi1zeW1ib2wpCih0ZXgtdGhpbmdhdHB0LS1lbmQt b2Ytc3ltYm9sLCB0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQpOgpOZXcgZnVuY3Rpb25z IHRvIHJldHVybiAndGhpbmctYXQtcG9pbnQnIGZvciB4cmVmIGJhY2tlbmQuCih0ZXgtZXNjLWFu ZC1ncm91cC1jaGFycyk6IE5ldyB2YXIgdG8gZG8gdGhlIHNhbWUuCih4cmVmLWJhY2tlbmQtaWRl bnRpZmllci1hdC1wb2ludCk6IE5ldyBUZVggYmFja2VuZCBtZXRob2QgdG8gcHJvdmlkZQpzeW1i b2xzIGZvciBwcm9jZXNzaW5nIGJ5IHhyZWYuCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21w bGV0aW9uLXRhYmxlKQooeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUt Y2FzZSkKKHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucywgeHJlZi1iYWNrZW5kLWFwcm9wb3MpOiBQ bGFjZWhvbGRlcnMgdG8KY2FsbCB0aGUgc3RhbmRhcmQgJ2V0YWdzJyB4cmVmIGJhY2tlbmQgbWV0 aG9kcy4KKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzKTogV3JhcHBlciB0byBjYWxsIHRoZSBkZWZh dWx0IHhyZWYgYmFja2VuZAptZXRob2QsIGZpbmRpbmcgYXMgbWFueSByZWxldmFudCBmaWxlcyBh cyBwb3NzaWJsZSBhbmQgdXNpbmcgYSBiZXNwb2tlCnN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9u LgoodGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucywgdGV4LXhyZWYtc3ludGF4LWZ1bmN0aW9u KTogSGVscGVyCmZ1bmN0aW9uIGFuZCBtYWNybyBmb3IgcHJldmlvdXMuCih0ZXgtZmluZC1yZWZl cmVuY2VzLXN5bnRheC10YWJsZSwgdGV4LS1idWZmZXJzLWxpc3QpCih0ZXgtLWxhc3QtcmVmLXN5 bnRheC1mbGFnLCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pOiBOZXcgdmFycyBmb3IKc2FtZS4K LS0tCiBkb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSB8ICAzNCArKystCiBsaWItc3JjL2V0YWdz LmMgICAgICAgICAgICB8IDE4MyArKysrKysrKysrKysrKysrKystLQogbGlzcC9wcm9nbW9kZXMv eHJlZi5lbCAgICAgfCAgIDEgKwogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgfCAzMzYgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogNCBmaWxlcyBjaGFuZ2VkLCA1Mzcg aW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2VtYWNzL21h aW50YWluaW5nLnRleGkgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQppbmRleCA1NzkwOThj ODFiMS4uMmZiYjk2NGE3YTAgMTAwNjQ0Ci0tLSBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhp CisrKyBiL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpCkBAIC0yNTI5LDYgKzI1MjksMTUgQEAg SWRlbnRpZmllciBTZWFyY2gKIHJlZmVyZW5jZWQuICBUaGUgWFJFRiBtb2RlIGNvbW1hbmRzIGFy ZSBhdmFpbGFibGUgaW4gdGhpcyBidWZmZXIsIHNlZQogQHJlZntYcmVmIENvbW1hbmRzfS4KIAor V2hlbiBpbnZva2VkIGluIGEgYnVmZmVyIHdob3NlIG1ham9yIG1vZGUgdXNlcyB0aGUgQGNvZGV7 ZXRhZ3N9IGJhY2tlbmQsCitAa2Jke00tP30gc2VhcmNoZXMgZmlsZXMgYW5kIGJ1ZmZlcnMgd2hv c2UgbWFqb3IgbW9kZSBtYXRjaGVzIHRoYXQgb2YKK3RoZSBvcmlnaW5hbCBidWZmZXIuICBJdCBn dWVzc2VzIHRoYXQgbW9kZSBmcm9tIGZpbGUgZXh0ZW5zaW9ucywgc28gaWYKK0BrYmR7TS0/fSBz ZWVtcyB0byBiZSBza2lwcGluZyByZWxldmFudCBidWZmZXJzIG9yIGZpbGVzLCB0cnkKK2N1c3Rv bWl6aW5nIGVpdGhlciB0aGUgdmFyaWFibGUgQGNvZGV7c2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0 ZXJuLWFsaXN0fQorKGlmIHlvdXIgYnVmZmVyJ3MgbWFqb3IgbW9kZSBhbHJlYWR5IGhhcyBhbiBl bnRyeSBpbiBpdCksIG9yCitAY29kZXthdXRvLW1vZGUtYWxpc3R9IChpZiBub3QpLCB0aGVyZWJ5 IGluZm9ybWluZyBAY29kZXt4cmVmfSBvZiB0aGUKK21pc3NpbmcgZXh0ZW5zaW9ucyAoQHB4cmVm e0Nob29zaW5nIE1vZGVzfSkuCisKIEB2aW5kZXggeHJlZi1hdXRvLWp1bXAtdG8tZmlyc3QteHJl ZgogICBJZiB0aGUgdmFsdWUgb2YgdGhlIHZhcmlhYmxlIEBjb2Rle3hyZWYtYXV0by1qdW1wLXRv LWZpcnN0LXhyZWZ9IGlzCiBAY29kZXt0fSwgQGNvZGV7eHJlZi1maW5kLXJlZmVyZW5jZXN9IGF1 dG9tYXRpY2FsbHkganVtcHMgdG8gdGhlIGZpcnN0CkBAIC0yNzQ5LDggKzI3NTgsMjkgQEAgVGFn IFN5bnRheAogQGNvZGV7XHNlY3Rpb259LCBAY29kZXtcc3Vic2VjdGlvbn0sIEBjb2Rle1xzdWJz dWJzZWN0aW9ufSwKIEBjb2Rle1xlcW5vfSwgQGNvZGV7XGxhYmVsfSwgQGNvZGV7XHJlZn0sIEBj b2Rle1xjaXRlfSwKIEBjb2Rle1xiaWJpdGVtfSwgQGNvZGV7XHBhcnR9LCBAY29kZXtcYXBwZW5k aXh9LCBAY29kZXtcZW50cnl9LAotQGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xu ZXdjb21tYW5kfSwgQGNvZGV7XHJlbmV3Y29tbWFuZH0sCi1AY29kZXtcbmV3ZW52aXJvbm1lbnR9 IGFuZCBAY29kZXtccmVuZXdlbnZpcm9ubWVudH0gYXJlIHRhZ3MuCitAY29kZXtcaW5kZXh9LCBA Y29kZXtcZGVmfSwgQGNvZGV7XGVkZWZ9LCBAY29kZXtcZ2RlZn0sIEBjb2Rle1x4ZGVmfSwKK0Bj b2Rle1xuZXdjb21tYW5kfSwgQGNvZGV7XHJlbmV3Y29tbWFuZH0sIEBjb2Rle1xuZXdlbnZpcm9u bWVudH0sCitAY29kZXtccmVuZXdlbnZpcm9ubWVudH0sIEBjb2Rle1xEZWNsYXJlUm9idXN0Q29t bWFuZH0sCitAY29kZXtcbmV3cm9idXN0Y21kfSwgQGNvZGV7XHJlbmV3cm9idXN0Y21kfSwgQGNv ZGV7XHByb3ZpZGVjb21tYW5kfSwKK0Bjb2Rle1xwcm92aWRlcm9idXN0Y21kfSwgQGNvZGV7XE5l d0RvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcUmVuZXdEb2N1bWVudENvbW1hbmR9LCBAY29kZXtc UHJvdmlkZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcRGVjbGFyZURvY3VtZW50Q29tbWFuZH0s IEBjb2Rle1xOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xSZW5ld0V4cGFu ZGFibGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRD b21tYW5kfSwKK0Bjb2Rle1xEZWNsYXJlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29k ZXtcTmV3RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rle1xSZW5ld0RvY3VtZW50RW52aXJvbm1l bnR9LAorQGNvZGV7XFByb3ZpZGVEb2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xEZWNsYXJl RG9jdW1lbnRFbnZpcm9ubWVudH0sIEBjb2Rle1xjc2RlZn0sIEBjb2Rle1xjc2VkZWZ9LAorQGNv ZGV7XGNzZ2RlZn0sIEBjb2Rle1xjc3hkZWZ9LCBAY29kZXtcY3NsZXRjc30sIEBjb2Rle1xjc2xl dH0sCitAY29kZXtcbGV0Y3N9LCBAY29kZXtcbGV0fSwgXEBjb2Rle1xjc19uZXdfcHJvdGVjdGVk X25vcGFyfSwKK0Bjb2Rle1xjc19uZXdfcHJvdGVjdGVkfSwgQGNvZGV7XGNzX25ld19ub3Bhcn0s IEBjb2Rle1xjc19uZXdfZXF9LAorQGNvZGV7XGNzX25ld30sIEBjb2Rle1xjc19zZXRfcHJvdGVj dGVkX25vcGFyfSwKK0Bjb2Rle1xjc19zZXRfcHJvdGVjdGVkfSwgQGNvZGV7XGNzX3NldF9ub3Bh cn0sIEBjb2Rle1xjc19zZXRfZXF9LAorQGNvZGV7XGNzX3NldH0sIEBjb2Rle1xjc19nc2V0X3By b3RlY3RlZF9ub3Bhcn0sCitAY29kZXtcY3NfZ3NldF9wcm90ZWN0ZWR9LCBAY29kZXtcY3NfZ3Nl dF9ub3Bhcn0sIEBjb2Rle1xjc19nc2V0X2VxfSwKK0Bjb2Rle1xjc19nc2V0fSwgQGNvZGV7XGNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50fSwgYW5kCitAY29kZXtcY3NfZ2VuZXJhdGVfdmFyaWFu dH0gYXJlIHRhZ3MuICBTbyB0b28gYXJlIHRoZSBhcmd1bWVudHMgb2YgYW55CitzdGFycmVkIHZh cmlhbnRzIG9mIHRoZXNlIGNvbW1hbmRzLgogCiBPdGhlciBjb21tYW5kcyBjYW4gbWFrZSB0YWdz IGFzIHdlbGwsIGlmIHlvdSBzcGVjaWZ5IHRoZW0gaW4gdGhlCiBlbnZpcm9ubWVudCB2YXJpYWJs ZSBAZW52e1RFWFRBR1N9IGJlZm9yZSBpbnZva2luZyBAY29tbWFuZHtldGFnc30uICBUaGUKZGlm ZiAtLWdpdCBhL2xpYi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCAwMzJjZmE4 MDEwYi4uOGI3OWU5MmFiZjEgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvZXRhZ3MuYworKysgYi9saWIt c3JjL2V0YWdzLmMKQEAgLTc5Miw4ICs3OTIsMjQgQEAgI2RlZmluZSBTVERJTiAweDEwMDEJCS8q IHJldHVybmVkIGJ5IGdldG9wdF9sb25nIG9uIC0tcGFyc2Utc3RkaW4gKi8KICJJbiBMYVRlWCB0 ZXh0LCB0aGUgYXJndW1lbnQgb2YgYW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwK ICdcXHNlY3Rpb24nLCAnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8n LCAnXFxsYWJlbCcsXG5cCiAnXFxyZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQn LCAnXFxhcHBlbmRpeCcsICdcXGVudHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3 Y29tbWFuZCcsICdcXHJlbmV3Y29tbWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xc cmVuZXdlbnZpcm9ubWVudCcgaXMgYSB0YWcuXG5cCisnXFxpbmRleCcsICdcXGRlZicsICdcXGVk ZWYnLCAnXFxnZGVmJywgJ1xceGRlZicsICdcXG5ld2NvbW1hbmQnLFxuXAorJ1xccmVuZXdjb21t YW5kJywgJ1xcbmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vudmlyb25tZW50JyxcblwKKydcXERl Y2xhcmVSb2J1c3RDb21tYW5kJywgJ1xcbmV3cm9idXN0Y21kJywgJ1xccmVuZXdyb2J1c3RjbWQn LFxuXAorJ1xccHJvdmlkZWNvbW1hbmQnLCAnXFxwcm92aWRlcm9idXN0Y21kJywgJ1xcTmV3RG9j dW1lbnRDb21tYW5kJyxcblwKKydcXFJlbmV3RG9jdW1lbnRDb21tYW5kJywgJ1xcUHJvdmlkZURv Y3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNsYXJlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxSZW5ld0V4cGFuZGFibGVEb2N1bWVudENv bW1hbmQnLCAnXFxQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsXG5cCisnXFxEZWNs YXJlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsICdcXE5ld0RvY3VtZW50RW52aXJvbm1lbnQn LFxuXAorJ1xcUmVuZXdEb2N1bWVudEVudmlyb25tZW50JywgJ1xcUHJvdmlkZURvY3VtZW50RW52 aXJvbm1lbnQnLFxuXAorJ1xcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnQnLCdcXGNzZGVmJywg J1xcY3NlZGVmJywgJ1xcY3NnZGVmJyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxj c2xldCcsICdcXGxldGNzJywgJ1xcbGV0JyxcblwKKydcXGNzX25ld19wcm90ZWN0ZWRfbm9wYXIn LCAnXFxjc19uZXdfcHJvdGVjdGVkJywgJ1xcY3NfbmV3X25vcGFyJyxcblwKKydcXGNzX25ld19l cScsICdcXGNzX25ldycsICdcXGNzX3NldF9wcm90ZWN0ZWRfbm9wYXInLFxuXAorJ1xcY3Nfc2V0 X3Byb3RlY3RlZCcsICdcXGNzX3NldF9ub3BhcicsICdcXGNzX3NldF9lcScsICdcXGNzX3NldCcs XG5cCisnXFxjc19nc2V0X3Byb3RlY3RlZF9ub3BhcicsICdcXGNzX2dzZXRfcHJvdGVjdGVkJywg J1xcY3NfZ3NldF9ub3BhcicsXG5cCisnXFxjc19nc2V0X2VxJywgJ1xcY3NfZ3NldCcsICdcXGNz X2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50Jywgb3JcblwKKydcXGNzX2dlbmVyYXRlX3ZhcmlhbnQn IGlzIGEgdGFnLiAgU28gaXMgdGhlIGFyZ3VtZW50IG9mIGFueSBzdGFycmVkXG5cCit2YXJpYW50 IG9mIHRoZXNlIGNvbW1hbmRzLlxuXAogXG5cCiBPdGhlciBjb21tYW5kcyBjYW4gYmUgc3BlY2lm aWVkIGJ5IHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlXG5cCiAnVEVYVEFHUycgdG8g YSBjb2xvbi1zZXBhcmF0ZWQgbGlzdCBsaWtlLCBmb3IgZXhhbXBsZSxcblwKQEAgLTU3MzYsMTEg KzU3NTIsMjUgQEAgU2NoZW1lX2Z1bmN0aW9ucyAoRklMRSAqaW5mKQogc3RhdGljIGxpbmVidWZm ZXIgKlRFWF90b2t0YWIgPSBOVUxMOyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAogLyog RGVmYXVsdCBzZXQgb2YgY29udHJvbCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4K LSAgIFRoZSB2YWx1ZSBvZiBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8g dGhpcy4gICovCisgICBUaGUgdmFsdWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJl cGVuZGVkIHRvIHRoaXMuCisgICAoMjAyNCkgQWRkIHZhcmlhbnRzIG9mICdcZGVmJywgc29tZSBh ZGRpdGlvbmFsIExhVGVYIChhbmQKKyAgIGZvcm1lciB4cGFyc2UpIGNvbW1hbmRzLCBjb21tb24g dmFyaWFudHMgZnJvbSB0aGUKKyAgICdldG9vbGJveCcgcGFja2FnZSwgYW5kIHRoZSBtYWluIGV4 cGwzIGNvbW1hbmRzLiAqLwogc3RhdGljIGNvbnN0IGNoYXIgKlRFWF9kZWZlbnYgPSAiXAotOmNo YXB0ZXI6c2VjdGlvbjpzdWJzZWN0aW9uOnN1YnN1YnNlY3Rpb246ZXFubzpsYWJlbDpyZWY6Y2l0 ZTpiaWJpdGVtXAotOnBhcnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmXAotOm5ld2NvbW1hbmQ6 cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQiOworOmxhYmVsOnJl ZjpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJzZWN0aW9uOmVxbm86Y2l0ZTpiaWJp dGVtXAorOnBhcnQ6YXBwZW5kaXg6ZW50cnk6aW5kZXg6ZGVmOmVkZWY6Z2RlZjp4ZGVmOm5ld2Nv bW1hbmQ6cmVuZXdjb21tYW5kXAorOm5ld2Vudmlyb25tZW50OnJlbmV3ZW52aXJvbm1lbnQ6RGVj bGFyZVJvYnVzdENvbW1hbmQ6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0Y21kOnByb3ZpZGVj b21tYW5kOnByb3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RG9jdW1l bnRDb21tYW5kOlByb3ZpZGVEb2N1bWVudENvbW1hbmQ6RGVjbGFyZURvY3VtZW50Q29tbWFuZFwK KzpOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kOlJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29t bWFuZFwKKzpQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpEZWNsYXJlRXhwYW5kYWJs ZURvY3VtZW50Q29tbWFuZFwKKzpOZXdEb2N1bWVudEVudmlyb25tZW50OlJlbmV3RG9jdW1lbnRF bnZpcm9ubWVudFwKKzpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudDpEZWNsYXJlRG9jdW1lbnRF bnZpcm9ubWVudDpjc2RlZlwKKzpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzOmNzbGV0Omxl dGNzOmxldDpjc19uZXdfcHJvdGVjdGVkX25vcGFyXAorOmNzX25ld19wcm90ZWN0ZWQ6Y3NfbmV3 X25vcGFyOmNzX25ld19lcTpjc19uZXc6Y3Nfc2V0X3Byb3RlY3RlZF9ub3BhclwKKzpjc19zZXRf cHJvdGVjdGVkOmNzX3NldF9ub3Bhcjpjc19zZXRfZXE6Y3Nfc2V0OmNzX2dzZXRfcHJvdGVjdGVk X25vcGFyXAorOmNzX2dzZXRfcHJvdGVjdGVkOmNzX2dzZXRfbm9wYXI6Y3NfZ3NldF9lcTpjc19n c2V0XAorOmNzX2dlbmVyYXRlX2Zyb21fYXJnX2NvdW50OmNzX2dlbmVyYXRlX3ZhcmlhbnQiOwog CiBzdGF0aWMgdm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICop OwogCkBAIC01Nzk5LDE5ICs1ODI5LDEzNyBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkg ICAgICB7CiAJCWNoYXIgKnA7CiAJCXB0cmRpZmZfdCBuYW1lbGVuLCBsaW5lbGVuOwotCQlib29s IG9wZ3JwID0gZmFsc2U7CisJCWJvb2wgb3BncnAgPSBmYWxzZSwgb25lX2VzYyA9IGZhbHNlLCBp c19leHBsdGhyZWUgPSBmYWxzZTsKIAogCQljcCA9IHNraXBfc3BhY2VzIChjcCArIGtleS0+bGVu KTsKKworCQkvKiAxLiBUaGUgY2Fub25pY2FsIGV4cGwzIHN5bnRheCBsb29rcyBzb21ldGhpbmcg bGlrZSB0aGlzOgorCQkgICBcY3NfbmV3Ok5wbiBcX19ob29rX3RsX2dwdXQ6Tm4geyBcRVJST1Ig fS4gIEZpcnN0LCBpZiB3ZQorCQkgICB3YW50IHRvIHRhZyBhbnkgc3VjaCBjb21tYW5kcywgd2Ug aW5jbHVkZSBvbmx5IHRoZSBwYXJ0CisJCSAgIGJlZm9yZSB0aGUgY29sb24gKGNzX25ldykgaW4g VEVYX2RlZmVudiBvciBURVhUQUdTLiAgU2Vjb25kLAorCQkgICBldGFncyBza2lwcyB0aGUgYXJn dW1lbnQgc3BlY2lmaWVyIChpbmNsdWRpbmcgdGhlIGNvbG9uKQorCQkgICBhZnRlciB0aGUgdGFn IHRva2VuLCBzbyB0aGF0IGl0IGRvZXNuJ3QgYmVjb21lIHRoZSB0YWcgbmFtZS4KKwkJICAgVGhp cmQsIHdlIHNldCB0aGUgYm9vbGVhbiAnaXNfZXhwbHRocmVlJyB0byB0cnVlIHNvIHRoYXQgd2UK KwkJICAgY2FuIHJlbW92ZSB0aGUgYXJndW1lbnQgc3BlY2lmaWVyIGZyb20gdGhlIGFjdHVhbCB0 YWcgbmFtZQorCQkgICAoX19ob29rX3RsX2dwdXQpLiAgVGhpcyBhbGwgYWxsb3dzIHVzIHRvIGlu Y2x1ZGUgZXhwbDMKKwkJICAgY29uc3RydWN0cyBpbiBURVhfZGVmZW52IG9yIGluIHRoZSBlbnZp cm9ubWVudCB2YXJpYWJsZQorCQkgICBURVhUQUdTIHdpdGhvdXQgcmVxdWlyaW5nIGEgY2hhbmdl IG9mIHNlcGFyYXRvciwgYW5kIGl0IGFsc28KKwkJICAgYWxsb3dzIHVzIHRvIGZpbmQgdGhlIGRl ZmluaXRpb24gb2YgdmFyaWFudCBjb21tYW5kcyAod2l0aAorCQkgICBkaWZmZXJlbnQgYXJndW1l bnQgc3BlY2lmaWVycykgZGVmaW5lZCB1c2luZywgZm9yIGV4YW1wbGUsCisJCSAgIFxjc19nZW5l cmF0ZV92YXJpYW50Ok5uLiAgUGxlYXNlIG5vdGUgdGhhdCB0aGUgZXhwbDMgc3BlYworCQkgICBy ZXF1aXJlcyBldGFncyB0byBwYXkgbW9yZSBhdHRlbnRpb24gdG8gd2hpdGVzcGFjZSBpbiB0aGUK KwkJICAgY29kZS4KKworCQkgICAyLiBXZSBhbHNvIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBh c3RlcmlzayBmcm9tIHN0YXJyZWQKKwkJICAgdmFyaWFudHMgb2YgYWxsIGNvbW1hbmRzLCB3aXRo b3V0IHRoZSBuZWVkIHRvIGluY2x1ZGUgdGhlCisJCSAgIHN0YXJyZWQgY29tbWFuZHMgZXhwbGlj aXRseSBpbiBURVhfZGVmZW52IG9yIFRFWFRBR1MuICovCisJCWlmICgqY3AgPT0gJzonKQorCQkg IHsKKwkJICAgIHdoaWxlICghY19pc3NwYWNlICgqY3ApICYmICpjcCAhPSBURVhfb3BncnApCisJ CSAgICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3BhY2VzIChjcCk7CisJCSAgICBpc19leHBs dGhyZWUgPSB0cnVlOworCQkgIH0KKwkJZWxzZSBpZiAoKmNwID09ICcqJykKKwkJICBjcCsrOwor CisJCS8qIFNraXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFn cyBsaXN0IHNvCisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUg bmFtZSBvZiB0aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRo ZSBhcmd1bWVudCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25h bCBvbmVzLiAqLworCQl3aGlsZSAoKmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJICB7CisJ CSAgICBpZiAoKmNwID09ICdbJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnXScgJiYg KmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAg ZWxzZSBpZiAoKmNwID09ICcoJykKKwkJICAgICAgeworCQkJd2hpbGUgKCpjcCAhPSAnKScgJiYg KmNwICE9ICdcMCcgJiYgKmNwICE9ICclJykKKwkJCSAgY3ArKzsKKwkJICAgICAgfQorCQkgICAg ZWxzZSBpZiAoKmNwID09ICddJyB8fCAqY3AgPT0gJyknKQorCQkgICAgICBjcCsrOworCQkgICAg ZWxzZQorCQkgICAgICBicmVhazsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkg IHsKIAkJICAgIG9wZ3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CisJCSAgICBjcCA9IHNraXBfc3Bh Y2VzIChjcCk7IC8qIEZvciBleHBsMyBjb2RlLiAqLwogCQkgIH0KKworCQkvKiBSZW1vdmluZyB0 aGUgVGVYIGVzY2FwZSBjaGFyYWN0ZXIgZnJvbSB0YWcgbmFtZXMgc2ltcGxpZmllcworCQkgICB0 aGluZ3MgZm9yIGVkaXRvcnMgZmluZGluZyB0YWdnZWQgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMu CisJCSAgIFRoaXMgYXBwbGllcyB0byBFbWFjcyBidXQgYWxzbyB0byB0aGUgdGFnLWZpbmRpbmcg YmVoYXZpb3IKKwkJICAgb2YgYXQgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVzZSBj dGFncywgdGhvdWdoIGluCisJCSAgIHRoZSBsYXR0ZXIgY2FzZSB0aGlzIHdpbGwgcmVtYWluIHN1 Ym9wdGltYWwuICBUaGUKKwkJICAgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1uby1kdXBs aWNhdGVzJyBtYXkgaGVscC4gKi8KKwkJaWYgKCpjcCA9PSBURVhfZXNjKQorCQkgIHsKKwkJICAg IGNwKys7CisJCSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJICB9CisKKwkJLyogVGVzdGluZyAhY19p c3NwYWNlICYmICFjX2lzcHVuY3QgaXMgc2ltcGxlciwgYnV0IGhhbHRzCisJCSAgIHByb2Nlc3Np bmcgYXQgdG9vIG1hbnkgcGxhY2VzLiAgVGhlIGxpc3QgYXMgaXQgc3RhbmRzIHRyaWVzCisJCSAg IGJvdGggdG8gZW5zdXJlIHRoYXQgdGFnIG5hbWVzIHdpbGwgZGVyaXZlIGZyb20gbWFjcm8gbmFt ZXMKKwkJICAgcmF0aGVyIHRoYW4gZnJvbSBvcHRpb25hbCBwYXJhbWV0ZXJzIHRvIHRob3NlIG1h Y3JvcywgYW5kCisJCSAgIGFsc28gdG8gcmV0dXJuIGZpbmRhYmxlIG5hbWVzIHdoaWxlIHN0aWxs IGFsbG93aW5nIGZvcgorCQkgICB1bm9ydGhvZG94IGNvbnN0cnVjdHMuICovCiAJCWZvciAocCA9 IGNwOwotCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCi0JCSAgICAgICpw ICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICghY19pc3NwYWNlICgq cCkgJiYgKnAgIT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAhPSAnWycgJiYgKnAg IT0gJygnICYmICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBURVhfY2xncnAgJiYg KnAgIT0gJyInICYmICpwICE9ICdcJycgJiYKKwkJICAgICAgKnAgIT0gJyUnICYmICpwICE9ICcs JyAmJiAqcCAhPSAnfCcgJiYgKnAgIT0gJyQnKTsKIAkJICAgICBwKyspCi0JCSAgY29udGludWU7 CisJCSAgLyogSW4gZXhwbDMgY29kZSB3ZSByZW1vdmUgdGhlIGFyZ3VtZW50IHNwZWNpZmljYXRp b24gZnJvbQorCQkgICAgIHRoZSB0YWcgbmFtZS4gIE1vcmUgZ2VuZXJhbGx5IHdlIGFsbG93IG9u bHkgb25lIChkZWxldGVkKQorCQkgICAgIGVzY2FwZSBjaGFyIGluIGEgdGFnIG5hbWUsIHdoaWNo IChwcmltYXJpbHkpIGVuYWJsZXMKKwkJICAgICB0YWdnaW5nIGEgVGVYIGNvbW1hbmQncyBkaWZm ZXJlbnQsIHBvc3NpYmx5IHRlbXBvcmFyeSwKKwkJICAgICAnXGxldCcgYmluZGluZ3MuICovCisJ CSAgaWYgKGlzX2V4cGx0aHJlZSAmJiAqcCA9PSAnOicpCisJCSAgICBicmVhazsKKwkJICBlbHNl IGlmICgqcCA9PSBURVhfZXNjKQorCQkgICAgeyAvKiBTZWNvbmQgcGFydCBvZiB0ZXN0IGlzIGZv ciwgZS5nLiwgXGNzbGV0LiAqLworCQkgICAgICBpZiAoIW9uZV9lc2MgJiYgIW9wZ3JwKQorCQkJ eworCQkJICBvbmVfZXNjID0gdHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVs c2UKKwkJCWJyZWFrOworCQkgICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBG b3IgVGVYIGZpbGVzLCB0YWdzIHdpdGhvdXQgYSBuYW1lIGFyZSBiYXNpY2FsbHkgY3J1ZnQsIGFu ZAorCQkgICBpbiBzb21lIHNpdHVhdGlvbnMgdGhleSBjYW4gcHJvZHVjZSBzcHVyaW91cyBhbmQg Y29uZnVzaW5nCisJCSAgIG1hdGNoZXMuICBUcnkgdG8gY2F0Y2ggYXMgbWFueSBjYXNlcyBhcyBw b3NzaWJsZSB3aGVyZSBhCisJCSAgIGNvbW1hbmQgbmFtZSBpcyBvZiB0aGUgZm9ybSAnXCgnLCBi dXQgYXZvaWQsIGFzIGZhciBhcworCQkgICBwb3NzaWJsZSwgdGhlIHNwdXJpb3VzIG1hdGNoZXMu ICovCisJCWlmIChwID09IGNwKQorCQkgIHsKKwkJICAgIHN3aXRjaCAoKnApCisJCSAgICAgIHsg LyogSW5jbHVkZSA9PyAqLworCQkgICAgICBjYXNlICcoJzogY2FzZSAnWyc6IGNhc2UgJyInOiBj YXNlICdcJyc6CisJCSAgICAgIGNhc2UgJ1xcJzogY2FzZSAnISc6IGNhc2UgJz0nOiBjYXNlICcs JzoKKwkJICAgICAgY2FzZSAnfCc6IGNhc2UgJyQnOgorCQkJcCsrOworCQkJYnJlYWs7CisJCSAg ICAgIGNhc2UgJ3snOiBjYXNlICd9JzogY2FzZSAnPCc6IGNhc2UgJz4nOgorCQkJaWYgKCFvcGdy cCkKKwkJCSAgeworCQkJICAgICAgcCsrOworCQkJICAgICAgaWYgKCpwID09ICdcMCcgfHwgKnAg PT0gJyUnKQorCQkJCWdvdG8gdGV4X25leHRfbGluZTsKKwkJCSAgfQorCQkJYnJlYWs7CisJCSAg ICAgIGRlZmF1bHQ6CisJCQlicmVhazsKKwkJICAgICAgfQorCQkgIH0KIAkJbmFtZWxlbiA9IHAg LSBjcDsKIAkJbGluZWxlbiA9IGxiLmxlbjsKIAkJaWYgKCFvcGdycCB8fCAqcCA9PSBURVhfY2xn cnApCkBAIC01ODIwLDkgKzU5NjgsMTggQEAgVGVYX2NvbW1hbmRzIChGSUxFICppbmYpCiAJCSAg ICAgIHArKzsKIAkJICAgIGxpbmVsZW4gPSBwIC0gbGIuYnVmZmVyICsgMTsKIAkJICB9Ci0JCW1h a2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwKLQkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5l bm8sIGxpbmVjaGFybm8pOwotCQlnb3RvIHRleF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEg bGluZSBvbmNlICovCisJCWlmIChuYW1lbGVuKQorCQkgIG1ha2VfdGFnIChjcCwgbmFtZWxlbiwg dHJ1ZSwKKwkJCSAgICBsYi5idWZmZXIsIGxpbmVsZW4sIGxpbmVubywgbGluZWNoYXJubyk7CisJ CS8qIExpbmVzIHdpdGggbW9yZSB0aGFuIG9uZSBcZGVmIG9yIFxsZXQgYXJlIHN1cnByaXNpbmds eQorCQkgICBjb21tb24gaW4gVGVYIGZpbGVzLCBlc3BlY2lhbGx5IGluIHRoZSBzeXN0ZW0gZmls ZXMgdGhhdAorCQkgICBmb3JtIHRoZSBiYXNpcyBvZiB0aGUgdmFyaW91cyBUZVggZm9ybWF0cy4g IFRoaXMgdGFncyB0aGVtCisJCSAgIGFsbC4gKi8KKwkJLyogZ290byB0ZXhfbmV4dF9saW5lOyAv XCogV2Ugb25seSB0YWcgYSBsaW5lIG9uY2UgKlwvICovCisJCXdoaWxlICgqY3AgIT0gJ1wwJyAm JiAqY3AgIT0gJyUnICYmICpjcCAhPSBURVhfZXNjKQorCQkgIGNwKys7CisJCWlmICgqY3AgIT0g VEVYX2VzYykKKwkJICBnb3RvIHRleF9uZXh0X2xpbmU7CiAJICAgICAgfQogCX0KICAgICB0ZXhf bmV4dF9saW5lOgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMveHJlZi5lbCBiL2xpc3AvcHJv Z21vZGVzL3hyZWYuZWwKaW5kZXggNzU1YzNkYjA0ZmQuLjFkMmQ0OTA0YjA2IDEwMDY0NAotLS0g YS9saXNwL3Byb2dtb2Rlcy94cmVmLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3hyZWYuZWwKQEAg LTIxMjksNiArMjEyOSw3IEBAIHhyZWYtLWNvbGxlY3QtbWF0Y2hlcwogICAgICAgICAgIChlcmFz ZS1idWZmZXIpKQogICAgICAgICAoaW5zZXJ0IHRleHQpCiAgICAgICAgIChnb3RvLWNoYXIgKHBv aW50LW1pbikpCisgICAgICAgIChzZXRxIHN5bnRheC1wcm9wZXJ0aXplLS1kb25lIDApCiAgICAg ICAgICh4cmVmLS1jb2xsZWN0LW1hdGNoZXMtMSByZWdleHAgZmlsZSBsaW5lCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAocG9pbnQtbWF4KQpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUu ZWwgYi9saXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbAppbmRleCA5N2M5NTAyNjdjNi4uZDk5MGEy ZGJmYTkgMTAwNjQ0Ci0tLSBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCisrKyBiL2xpc3Av dGV4dG1vZGVzL3RleC1tb2RlLmVsCkBAIC02NDcsNyArNjQ3LDggQEAgdGV4LWZvbnQtbG9jay1z dXNjcmlwdAogCQkgIChzZXRxIHBvcyAoMS0gcG9zKSBvZGQgKG5vdCBvZGQpKSkKIAkJb2RkKSkK ICAgICAoaWYgKGVxIChjaGFyLWFmdGVyIHBvcykgP18pCi0JYChmYWNlIHN1YnNjcmlwdCBkaXNw bGF5IChyYWlzZSAsKGNhciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKQorICAgICAgICAodW5s ZXNzIChlcXVhbCAoZ2V0LXRleHQtcHJvcGVydHkgcG9zICdzeW50YXgtdGFibGUpICcoMykpCisJ ICBgKGZhY2Ugc3Vic2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2FyIHRleC1mb250LXNjcmlwdC1k aXNwbGF5KSkpKQogICAgICAgYChmYWNlIHN1cGVyc2NyaXB0IGRpc3BsYXkgKHJhaXNlICwoY2Fk ciB0ZXgtZm9udC1zY3JpcHQtZGlzcGxheSkpKSkpKQogCiAoZGVmdW4gdGV4LWZvbnQtbG9jay1t YXRjaC1zdXNjcmlwdCAobGltaXQpCkBAIC02OTUsNyArNjk2LDI1IEBAIHRleC12ZXJiYXRpbS1l bnZpcm9ubWVudHMKICAgICAgKCJcXFxcXFwoPzplbmRcXHxiZWdpblxcKSAqXFwoe1teXG57fV0q fVxcKSIKICAgICAgICgxIChpZ25vcmUKICAgICAgICAgICAodGV4LWVudi1tYXJrIChtYXRjaC1i ZWdpbm5pbmcgMCkKLSAgICAgICAgICAgICAgICAgICAgICAgIChtYXRjaC1iZWdpbm5pbmcgMSkg KG1hdGNoLWVuZCAxKSkpKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIChtYXRjaC1iZWdp bm5pbmcgMSkgKG1hdGNoLWVuZCAxKSkpKSkKKyAgICAgOzsgVGhlIG5leHQgdHdvIHJ1bGVzIGNo YW5nZSB0aGUgc3ludGF4IG9mIGA6JyBhbmQgYF8nIGluIGV4cGwzCisgICAgIDs7IGNvbnN0cnVj dHMsIHNvIHRoYXQgYHRleC1mb250LWxvY2stc3VzY3JpcHQnIGNhbiBmb250aWZ5IHRoZW0KKyAg ICAgOzsgbW9yZSBhY2N1cmF0ZWx5LgorICAgICAoKGNvbmNhdCAiXFwoXFwoPzpbXFxcXFs6c3Bh Y2U6XXtdX1xcfCIKKyAgICAgICAgICAgICAgIltcXFxce1s6c3BhY2U6XV1bXl1bX1s6c3BhY2U6 XVs6Y250cmw6XVs6ZGlnaXQ6XVxcXFx7fSgpLz1dK1xcKSIKKyAgICAgICAgICAgICAgIlxcKD86 XytcXCg/OlteXVtbOnNwYWNlOl1bOmNudHJsOl1bOmRpZ2l0Ol06XFxcXHt9KCkvI189XStcXHwi CisgICAgICAgICAgICAgICIjK1sxLTldXFwpXFwpK1xcKVxcKFs6X10/XFwpIikKKyAgICAgICgx IChpZ25vcmUKKyAgICAgICAgICAobGV0KiAoKGV4cHIgKGJ1ZmZlci1zdWJzdHJpbmctbm8tcHJv cGVydGllcyAobWF0Y2gtYmVnaW5uaW5nIDEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1hdGNoLWVuZCAxKSkpCisgICAgICAgICAgICAg ICAgIChsaXN0IChzZXEtcG9zaXRpb25zIGV4cHIgP18pKSkKKyAgICAgICAgICAgIChkb2xpc3Qg KHBvcyBsaXN0KQorICAgICAgICAgICAgICAocHV0LXRleHQtcHJvcGVydHkgKCsgcG9zIChtYXRj aC1iZWdpbm5pbmcgMSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMSsgKCsg cG9zIChtYXRjaC1iZWdpbm5pbmcgMSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJ3N5bnRheC10YWJsZSAoc3RyaW5nLXRvLXN5bnRheCAiXyIpKSkpKSkKKyAgICAgICgyICJf IikpCisgICAgICgiXFxcXFtbOmFscGhhOl1dK1xcKDpcXClbWzphbHBoYTpdWzpzcGFjZTpdXG5d IgorICAgICAgKDEgIl8iKSkpKSkKIAogKGRlZnVuIHRleC1lbnYtbWFyayAoY21kIHN0YXJ0IGVu ZCkKICAgKHdoZW4gKD0gY21kIChsaW5lLWJlZ2lubmluZy1wb3NpdGlvbikpCkBAIC0xMjkxLDYg KzEzMTAsOCBAQCB0ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uCiAJICAgICAgKHN5bnRheC1wcm9w ZXJ0aXplLXJ1bGVzIGxhdGV4LXN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzKSkKICAgOzsgVEFCcyBp biB2ZXJiYXRpbSBlbnZpcm9ubWVudHMgZG9uJ3QgZG8gd2hhdCB5b3UgdGhpbmsuCiAgIChzZXRx LWxvY2FsIGluZGVudC10YWJzLW1vZGUgbmlsKQorICA7OyBTZXQgdXAgeHJlZiBiYWNrZW5kIGlu IFRlWCBidWZmZXJzLgorICAoYWRkLWhvb2sgJ3hyZWYtYmFja2VuZC1mdW5jdGlvbnMgIyd0ZXgt LXhyZWYtYmFja2VuZCBuaWwgdCkKICAgOzsgT3RoZXIgdmFycyB0aGF0IHNob3VsZCBiZSBidWZm ZXItbG9jYWwuCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtY29tbWFuZCkKICAgKG1ha2Ut bG9jYWwtdmFyaWFibGUgJ3RleC1zdGFydC1vZi1oZWFkZXIpCkBAIC0zNzQyLDYgKzM3NjMsMzE3 IEBAIHRleC1jaGt0ZXgKICAgICAgIChwcm9jZXNzLXNlbmQtcmVnaW9uIHRleC1jaGt0ZXgtLXBy b2Nlc3MgKHBvaW50LW1pbikgKHBvaW50LW1heCkpCiAgICAgICAocHJvY2Vzcy1zZW5kLWVvZiB0 ZXgtY2hrdGV4LS1wcm9jZXNzKSkpKQogCisMCis7OzsgWHJlZiBiYWNrZW5kCisKKzs7IEhlcmUg d2UgbGlnaHRseSBhZGFwdCB0aGUgZGVmYXVsdCBldGFncyBiYWNrZW5kIGZvciB4cmVmIHNvIHRo YXQKKzs7IHRoZSBtYWluIHhyZWYgdXNlciBjb21tYW5kcyAoaW5jbHVkaW5nIGB4cmVmLWZpbmQt ZGVmaW5pdGlvbnMnLAorOzsgYHhyZWYtZmluZC1hcHJvcG9zJywgYW5kIGB4cmVmLWZpbmQtcmVm ZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZAorOzsgTS0/LCByZXNwZWN0aXZlbHldKSB3b3Jr IGluIFRlWCBidWZmZXJzLiAgVGhlIG9ubHkgbWV0aG9kcyB3ZQorOzsgYWN0dWFsbHkgbW9kaWZ5 IGFyZSBgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItYXQtcG9pbnQnIGFuZAorOzsgYHhyZWYtYmFj a2VuZC1yZWZlcmVuY2VzJy4gIE1hbnkgb2YgdGhlIGNvbXBsaWNhdGlvbnMgaGVyZSwgYW5kIGlu Cis7OyBgZXRhZ3MnIGl0c2VsZiwgYXJlIGR1ZSB0byB0aGUgbmVjZXNzaXR5IG9mIHBhcnNpbmcg Ym90aCB0aGUgb2xkCis7OyBUZVggc3ludGF4IGFuZCB0aGUgbmV3IGV4cGwzIHN5bnRheCwgd2hp Y2ggd2lsbCBjb250aW51ZSB0byBhcHBlYXIKKzs7IHRvZ2V0aGVyIGluIGRvY3VtZW50cyBmb3Ig dGhlIGZvcmVzZWVhYmxlIGZ1dHVyZS4gIFN5bmNocm9uaXppbmcKKzs7IEVtYWNzIGFuZCBgZXRh Z3MnIHRoaXMgd2F5IGFpbXMgdG8gaW1wcm92ZSB0aGUgdXNlciBleHBlcmllbmNlICJvdXQKKzs7 IG9mIHRoZSBib3guIgorCisoZGVmdmFyIHRleC1lc2MtYW5kLWdyb3VwLWNoYXJzICcoP1xcID97 ID99KQorICAiVGhlIGN1cnJlbnQgVGVYIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcmFjdGVycy4K KworVGhlIGBldGFncycgcHJvZ3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScg KDMzKSBhcworZXNjYXBlIGNoYXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRl dGVjdHMgdGhlIGxhdHRlcgoraXQgYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBj b25zdHJ1Y3QgcmF0aGVyIHRoYW4gYHt9Jy4KK1RoZSBUZVggYHhyZWYtYmFja2VuZC1pZGVudGlm aWVyLWF0LXBvaW50JyBtZXRob2QgdXNlcyB0aGVzZQordGhyZWUgY2hhcmFjdGVycyB0byBkZWxp bWl0IHRoZSBgdGhpbmctYXQtcG9pbnQnIGluIFRlWCBidWZmZXJzLAorc28gdGhpcyB2YXJpYWJs ZSBzaG91bGQgY29udGFpbiBhdCBsZWFzdCB0aGVzZSB0aHJlZSwgdGhvdWdoIHlvdQorY2FuIG9w dGlvbmFsbHkgYWRkIG90aGVyIGNoYXJhY3RlcnMgaWYgdGhlIGRlZmF1bHQgc2V0IG9mIFRlWAor c3ltYm9sIGRlbGltaXRlcnMgaXMgaW5hZGVxdWF0ZSBmb3IgeW91ciBkb2N1bWVudHMuICAoVGhl CitmdW5jdGlvbnMgYHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi1zeW1ib2wnCitgdGV4LXRo aW5nYXRwdC0tZW5kLW9mLXN5bWJvbCcgY29uc3RydWN0IHRoZSByZWdleHAuKSAgU2V0dGluZwor dGhlIGVzY2FwZSBhbmQgZ3JvdXBpbmcgY2hhcnMgdG8gYW55dGhpbmcgb3RoZXIgdGhhbiBgXFx7 fScgb3IKK2AhPD4nIHdpbGwgbm90IGJlIHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0YWdz JywgYXQgbGVhc3QgZm9yCitjb21tYW5kcyB0aGF0IHNlYXJjaCB0YWdzIHRhYmxlcywgc3VjaCBh cworXFxbeHJlZi1maW5kLWRlZmluaXRpb25zXSBhbmQgXFxbeHJlZi1maW5kLWFwcm9wb3NdLiIp CisKKzs7IFBvcHVsYXRlIGBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QnIGZvciB0 aGUgaW4tdHJlZSBtb2RlczsKKzs7IEFVQ1RlWCBpcyBkb2luZyB0aGUgc2FtZSBmb3IgaXRzIG1v ZGVzLgorKGRlZnZhciBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRlcm4tYWxpc3QpCisod2l0aC1l dmFsLWFmdGVyLWxvYWQgJ3NlbWFudGljL3N5bXJlZi9ncmVwCisgIChwdXNoICcobGF0ZXgtbW9k ZSAiKi5bdFRdZVt4WF0iICIqLmx0eCIgIiouc3R5IiAiKi5jbFtzb10iCisgICAgICAgICAgICAg ICAgICAgICAiKi5iYmwiICIqLmRydiIgIiouaHZhIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVm LWZpbGVwYXR0ZXJuLWFsaXN0KQorICAocHVzaCAnKHBsYWluLXRleC1tb2RlICIqLlt0VF1lW3hY XSIgIiouaW5zIikKKyAgICAgICAgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0KQor ICAocHVzaCAnKGRvY3RleC1tb2RlICIqLmR0eCIpIHNlbWFudGljLXN5bXJlZi1maWxlcGF0dGVy bi1hbGlzdCkpCisKKyhkZWZ1biB0ZXgtLXhyZWYtYmFja2VuZCAoKSAndGV4LWV0YWdzKQorCis7 OyBTZXR1cCBBVUNUZVggbW9kZXMgKGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9ubHkpLgorCisoYWRk LWhvb2sgJ1RlWC1tb2RlLWhvb2sgIyd0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQpCisKKyhk ZWZ1biB0ZXgtc2V0LWF1Y3RleC14cmVmLWJhY2tlbmQgKCkKKyAgKGFkZC1ob29rICd4cmVmLWJh Y2tlbmQtZnVuY3Rpb25zICMndGV4LS14cmVmLWJhY2tlbmQgbmlsIHQpKQorCis7OyBgeHJlZi1m aW5kLXJlZmVyZW5jZXMnIGN1cnJlbnRseSBtYXkgbmVlZCB0aGlzIHdoZW4gY2FsbGVkIGZyb20g YQorOzsgbGF0ZXgtbW9kZSBidWZmZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZpbGVzIG9yIGJ1ZmZl cnMgd2l0aCBhIC50ZXgKKzs7IHN1ZmZpeCAoaW5jbHVkaW5nIHRoZSBidWZmZXIgZnJvbSB3aGlj aCBpdCBoYXMgYmVlbiBjYWxsZWQpLiAgV2UKKzs7IGFwcGVuZCBpdCB0byBgYXV0by1tb2RlLWFs aXN0JyBzbyBhcyBub3QgdG8gaW50ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7OyBtb2RlLXNldHRp bmcgYXBwYXJhdHVzLiAgQ2hhbmdlcyBoZXJlIGFuZCBpbiBBVUNUZVggc2hvdWxkIHNvb24KKzs7 IHJlbmRlciBpdCB1bm5lY2Vzc2FyeS4KKyhhZGQtdG8tbGlzdCAnYXV0by1tb2RlLWFsaXN0ICco IlxcLlt0VF1lW3hYXVxcJyIgLiBsYXRleC1tb2RlKSB0KQorCisoY2wtZGVmbWV0aG9kIHhyZWYt YmFja2VuZC1pZGVudGlmaWVyLWF0LXBvaW50ICgoX2JhY2tlbmQgKGVxbCAndGV4LWV0YWdzKSkp CisgIChyZXF1aXJlICdldGFncykKKyAgKHRleC0tdGhpbmctYXQtcG9pbnQpKQorCis7OyBUaGUg ZGV0ZWN0aW9uIG9mIGBfJyBhbmQgYDonIGlzIGEgcHJpbWl0aXZlIG1ldGhvZCBmb3IgZGV0ZXJt aW5pbmcKKzs7IHdoZXRoZXIgcG9pbnQgaXMgb24gYW4gZXhwbDMgY29uc3RydWN0LiAgSXQgbWF5 IGZhaWwgaW4gc29tZQorOzsgaW5zdGFuY2VzLgorKGRlZnVuIHRleC0tdGhpbmctYXQtcG9pbnQg KCkKKyAgIkRlbWFyY2F0ZSBgdGhpbmctYXQtcG9pbnQnIGZvciBUZVggYHhyZWYnIGJhY2tlbmQu IgorICAobGV0ICgoYm91bmRzICh0ZXgtLWJvdW5kcy1vZi1zeW1ib2wtYXQtcG9pbnQpKSkKKyAg ICAod2hlbiBib3VuZHMKKyAgICAgIChsZXQgKCh0ZXhzeW0gKGJ1ZmZlci1zdWJzdHJpbmctbm8t cHJvcGVydGllcyAoY2FyIGJvdW5kcykgKGNkciBib3VuZHMpKSkpCisgICAgICAgIChpZiAoYW5k IChub3QgKHN0cmluZy1tYXRjaC1wICJyZWZlcmVuY2UiIChzeW1ib2wtbmFtZSB0aGlzLWNvbW1h bmQpKSkKKyAgICAgICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/XykKKyAgICAg ICAgICAgICAgICAgKHNlcS1jb250YWlucy1wIHRleHN5bSA/OikpCisgICAgICAgICAgICAoc2Vx LXRha2UgdGV4c3ltIChzZXEtcG9zaXRpb24gdGV4c3ltID86KSkKKyAgICAgICAgICB0ZXhzeW0p KSkpKQorCisoZGVmdW4gdGV4LXRoaW5nYXRwdC0tYmVnaW5uaW5nLW9mLXN5bWJvbCAoKQorICAo YW5kCisgICAocmUtc2VhcmNoLWJhY2t3YXJkIChjb25jYXQgIltdWyIKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAobWFwY29uY2F0ICMncmVnZXhwLXF1b3RlCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwY2FyICMnY2hhci10by1zdHJpbmcKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4LWVzYy1h bmQtZ3JvdXAtY2hhcnMpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcIipgJyM9 JigpJSx8JFs6Y250cmw6XVs6Ymxhbms6XV0iKSkKKyAgIChmb3J3YXJkLWNoYXIpKSkKKworKGRl ZnVuIHRleC10aGluZ2F0cHQtLWVuZC1vZi1zeW1ib2wgKCkKKyAgKGFuZAorICAgKHJlLXNlYXJj aC1mb3J3YXJkIChjb25jYXQgIltdWyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICht YXBjb25jYXQgIydyZWdleHAtcXVvdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChtYXBjYXIgIydjaGFyLXRvLXN0cmluZworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtZXNjLWFuZC1ncm91cC1jaGFycykpCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXCIqYCcjPSYoKSUsfCRbOmNudHJsOl1bOmJs YW5rOl1dIikpCisgICAoYmFja3dhcmQtY2hhcikpKQorCisoZGVmdW4gdGV4LS1ib3VuZHMtb2Yt c3ltYm9sLWF0LXBvaW50ICgpCisgICJTaW1wbGlmeSBgYm91bmRzLW9mLXRoaW5nLWF0LXBvaW50 JyBmb3IgVGVYIGB4cmVmJyBiYWNrZW5kLiIKKyAgKGxldCAoKG9yaWcgKHBvaW50KSkpCisgICAg KGlnbm9yZS1lcnJvcnMKKyAgICAgIChzYXZlLWV4Y3Vyc2lvbgorCSh0ZXgtdGhpbmdhdHB0LS1l bmQtb2Ytc3ltYm9sKQorCSh0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2Ytc3ltYm9sKQorCShs ZXQgKChiZWcgKHBvaW50KSkpCisJICAoaWYgKDw9IGJlZyBvcmlnKQorCSAgICAgIChsZXQgKChy ZWFsLWVuZAorCQkgICAgIChwcm9nbgorCQkgICAgICAgKHRleC10aGluZ2F0cHQtLWVuZC1vZi1z eW1ib2wpCisJCSAgICAgICAocG9pbnQpKSkpCisJCShjb25kICgoYW5kICg8PSBvcmlnIHJlYWwt ZW5kKSAoPCBiZWcgcmVhbC1lbmQpKQorCQkgICAgICAgKGNvbnMgYmVnIHJlYWwtZW5kKSkKKyAg ICAgICAgICAgICAgICAgICAgICAoKGFuZCAoPSBvcmlnIHJlYWwtZW5kKSAoPSBiZWcgcmVhbC1l bmQpKQorCQkgICAgICAgKGNvbnMgYmVnICgxKyBiZWcpKSkpKSkpKSkpKTs7IEZvciAxLWNoYXIg VGVYIGNvbW1hbmRzLgorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1pZGVudGlmaWVyLWNv bXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4LWV0YWdzKSkpCisgICh4cmVmLWJh Y2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLXRhYmxlICdldGFncykpCisKKyhjbC1kZWZtZXRo b2QgeHJlZi1iYWNrZW5kLWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNr ZW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoZXFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJ3RleC1ldGFncykpKQorICAoeHJlZi1iYWNrZW5kLWlk ZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAnZXRhZ3MpKQorCisoY2wtZGVmbWV0aG9k IHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFncykpIHN5 bWJvbCkKKyAgKHhyZWYtYmFja2VuZC1kZWZpbml0aW9ucyAnZXRhZ3Mgc3ltYm9sKSkKKworKGNs LWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtYXByb3BvcyAoKF9iYWNrZW5kIChlcWwgJ3RleC1ldGFn cykpIHBhdHRlcm4pCisgICh4cmVmLWJhY2tlbmQtYXByb3BvcyAnZXRhZ3MgcGF0dGVybikpCisK Kzs7IFRoZSBgeHJlZi1iYWNrZW5kLXJlZmVyZW5jZXMnIG1ldGhvZCByZXF1aXJlcyBtb3JlIGNv ZGUgdGhhbiB0aGUKKzs7IG90aGVycyBmb3IgYXQgbGVhc3QgdHdvIG1haW4gcmVhc29uczogVGVY IGF1dGhvcnMgaGF2ZSB0eXBpY2FsbHkgYmVlbgorOzsgZnJlZSBpbiB0aGVpciBpbnZlbnRpb24g b2YgbmV3IGZpbGUgdHlwZXMgd2l0aCBuZXcgc3VmZml4ZXMsIGFuZCB0aGV5Cis7OyBoYXZlIGFs c28gdGVuZGVkIHNvbWV0aW1lcyB0byBpbmNsdWRlIG5vbi1zeW1ib2wgY2hhcmFjdGVycyBpbgor OzsgY29tbWFuZCBuYW1lcy4gIFdoZW4gY29tYmluZWQgd2l0aCB0aGUgZGVmYXVsdCBTZW1hbnRp YyBTeW1ib2wKKzs7IFJlZmVyZW5jZSBBUEksIHRoZXNlIHR3byBjaGFyYWN0ZXJpc3RpY3Mgb2Yg VGVYIGNvZGUgbWVhbiB0aGF0IGEKKzs7IGNvbW1hbmQgbGlrZSBgeHJlZi1maW5kLXJlZmVyZW5j ZXMnIHdvdWxkIG9mdGVuIGZhaWwgdG8gZmluZCBhbnkgaGl0cworOzsgZm9yIGEgc3ltYm9sIGF0 IHBvaW50LCBpbmNsdWRpbmcgdGhlIG9uZSB1bmRlciBwb2ludCBpbiB0aGUgY3VycmVudAorOzsg YnVmZmVyLCBvciBpdCB3b3VsZCBmaW5kIG9ubHkgc29tZSBpbnN0YW5jZXMgYW5kIHNraXAgb3Ro ZXJzLgorCisoZGVmdW4gdGV4LWZpbmQtcmVmZXJlbmNlcy1zeW50YXgtdGFibGUgKCkKKyAgKGxl dCAoKHN0IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAg ICAgIChtYWtlLXN5bnRheC10YWJsZSBUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAg ICAgICAobWFrZS1zeW50YXgtdGFibGUgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkpKQorICAgIHN0 KSkKKworKGRlZm1hY3JvIHRleC14cmVmLXN5bnRheC1mdW5jdGlvbiAoc3RyIGJlZyBlbmQpCisg IChsZXQqIChncnBiIHRlbXBzdHIKKyAgICAgICAgICAgICAgKHNocnRzdHIgKGlmIGVuZAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChzZXRxIHRlbXBzdHIgKHNlcS10YWtlIHN0ciAoMS0gKGxlbmd0aCBzdHIpKSkpCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChpZiBiZWcKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChzZXRxIHRlbXBzdHIgKHNlcS1kcm9wIHRlbXBzdHIgMSkpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdGVtcHN0cikpCisgICAgICAgICAgICAgICAgICAgICAgICAg KHNlcS1kcm9wIHN0ciAxKSkpCisgICAgICAgICAgICAgIChncnBhIChpZiAoYW5kIGJlZyBlbmQp CisgICAgICAgICAgICAgICAgICAgICAgICAocHJvZzEKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAobGlzdCAxICJfIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgZ3JwYiAo bGlzdCAyICJfIikpKQorICAgICAgICAgICAgICAgICAgICAgIChsaXN0IDEgIl8iKSkpCisgICAg ICAgICAgICAgIChyZSAoY29uY2F0IGJlZyAocmVnZXhwLXF1b3RlIHNocnRzdHIpIGVuZCkpCisg ICAgICAgICAgICAgICh0ZW1wLXJ1bGUgKGlmIGdycGIKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGxpc3QgcmUgZ3JwYSBncnBiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxp c3QgcmUgZ3JwYSkpKSkKKyAgICBgKHN5bnRheC1wcm9wZXJ0aXplLXJ1bGVzICx0ZW1wLXJ1bGUp KSkKKworKGRlZnVuIHRleC0tY29sbGVjdC1maWxlLWV4dGVuc2lvbnMgKCkKKyAgKGxldCogKCht bGlzdCAod2hlbiAocmFzc3EgbWFqb3ItbW9kZSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgKHNlcS1m aWx0ZXIKKwkJICAgKGxhbWJkYSAoZWx0KQorCQkgICAgIChlcSAoY2RyIGVsdCkgbWFqb3ItbW9k ZSkpCisJCSAgIGF1dG8tbW9kZS1hbGlzdCkpKQorCSAobGNzeW0gKGludGVybi1zb2Z0IChkb3du Y2FzZSAoc3ltYm9sLW5hbWUgbWFqb3ItbW9kZSkpKSkKKwkgKGxjbGlzdCAoYW5kIGxjc3ltCisJ CSAgICAgIChub3QgKGVxIGxjc3ltIG1ham9yLW1vZGUpKQorCQkgICAgICAocmFzc3EgbGNzeW0g YXV0by1tb2RlLWFsaXN0KQorCQkgICAgICAoc2VxLWZpbHRlcgorCQkgICAgICAgKGxhbWJkYSAo ZWx0KQorCQkJIChlcSAoY2RyIGVsdCkgbGNzeW0pKQorCQkgICAgICAgYXV0by1tb2RlLWFsaXN0 KSkpCisJIChzaG9ydHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJCSAgICAgKGludGVy bi1zb2Z0IChjb25jYXQgKHN0cmluZy10cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkJ ICAiLW1vZGUiKSkpKQorCSAobGNzaG9ydHN5bSAod2hlbiAoc3RyaW5ncCBtb2RlLW5hbWUpCisJ CSAgICAgICAoaW50ZXJuLXNvZnQgKGRvd25jYXNlCisJCQkJICAgICAoY29uY2F0CisJCQkJICAg ICAgKHN0cmluZy10cmltLXJpZ2h0IG1vZGUtbmFtZSAiLy4qIikKKwkJCQkgICAgICAiLW1vZGUi KSkpKSkKKwkgKHNobGlzdCAoYW5kIHNob3J0c3ltCisJCSAgICAgIChub3QgKGVxIHNob3J0c3lt IG1ham9yLW1vZGUpKQorCQkgICAgICAobm90IChlcSBzaG9ydHN5bSBsY3N5bSkpCisJCSAgICAg IChyYXNzcSBzaG9ydHN5bSBhdXRvLW1vZGUtYWxpc3QpCisJCSAgICAgIChzZXEtZmlsdGVyCisJ CSAgICAgICAobGFtYmRhIChlbHQpCisJCQkgKGVxIChjZHIgZWx0KSBzaG9ydHN5bSkpCisJCSAg ICAgICBhdXRvLW1vZGUtYWxpc3QpKSkKKwkgKGxjc2hsaXN0IChhbmQgbGNzaG9ydHN5bQorCQkJ KG5vdCAoZXEgbGNzaG9ydHN5bSBtYWpvci1tb2RlKSkKKwkJCShub3QgKGVxIGxjc2hvcnRzeW0g bGNzeW0pKQorCQkJKHJhc3NxIGxjc2hvcnRzeW0gYXV0by1tb2RlLWFsaXN0KQorCQkJKHNlcS1m aWx0ZXIKKwkJCSAobGFtYmRhIChlbHQpCisJCQkgICAoZXEgKGNkciBlbHQpIGxjc2hvcnRzeW0p KQorCQkJIGF1dG8tbW9kZS1hbGlzdCkpKQorCSAoZXh0cyAod2hlbiAob3IgbWxpc3QgbGNsaXN0 IHNobGlzdCBsY3NobGlzdCkKKwkJIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbGNsaXN0KQor CQkJICAgIChzZXEtdW5pb24gKHNlcS1tYXAgIydjYXIgbWxpc3QpCisJCQkJICAgICAgIChzZXEt dW5pb24gKHNlcS1tYXAgIydjYXIgbGNzaGxpc3QpCisJCQkJCQkgIChzZXEtbWFwICMnY2FyIHNo bGlzdCkpKSkpKQorCSAoZWQtZXh0cyAod2hlbiBleHRzCisJCSAgICAoc2VxLW1hcAorCQkgICAg IChsYW1iZGEgKGVsdCkKKwkJICAgICAgIChjb25jYXQgIioiIChzdHJpbmctdHJpbSAgZWx0ICJc XFxcIiAiXFxcXCciKSkpCisJCSAgICAgZXh0cykpKSkKKyAgICBlZC1leHRzKSkKKworKGRlZnZh ciB0ZXgtLWJ1ZmZlcnMtbGlzdCBuaWwpCisoZGVmdmFyLWxvY2FsIHRleC0tbGFzdC1yZWYtc3lu dGF4LWZsYWcgbmlsKQorKGRlZnZhci1sb2NhbCB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24gbmls KQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzICgoX2JhY2tlbmQgKGVx bCAndGV4LWV0YWdzKSkgaWRlbnRpZmllcikKKyAgIkZpbmQgcmVmZXJlbmNlcyBvZiBJREVOVElG SUVSIGluIFRlWCBidWZmZXJzIGFuZCBmaWxlcy4iCisgIChyZXF1aXJlICdzZW1hbnRpYy9zeW1y ZWYvZ3JlcCkKKyAgKGxldCAoYnVmcyB0ZXhidWZzCisgICAgICAgICAgICAgKG1vZGUgbWFqb3It bW9kZSkpCisgICAgKGRvbGlzdCAoYnVmIChidWZmZXItbGlzdCkpCisgICAgICAoaWYgKGVxIChi dWZmZXItbG9jYWwtdmFsdWUgJ21ham9yLW1vZGUgYnVmKSBtb2RlKQorICAgICAgICAgIChwdXNo IGJ1ZiBidWZzKQorICAgICAgICAod2hlbiAoc3RyaW5nLW1hdGNoLXAgIi4qXFwuW3RUXWVbeFhd IiAoYnVmZmVyLW5hbWUgYnVmKSkKKyAgICAgICAgICAocHVzaCBidWYgdGV4YnVmcykpKSkKKyAg ICAodW5sZXNzIChzZXEtc2V0LWVxdWFsLXAgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKyAgICAg IChsZXQqICgoYW1hbGlzdCAodGV4LS1jb2xsZWN0LWZpbGUtZXh0ZW5zaW9ucykpCisJICAgICAo ZXh0bGlzdCAoYWxpc3QtZ2V0IG1vZGUgc2VtYW50aWMtc3ltcmVmLWZpbGVwYXR0ZXJuLWFsaXN0 KSkKKwkgICAgIChleHRsaXN0LW5ldyAoc2VxLXVuaXEKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgIChzZXEtdW5pb24gYW1hbGlzdCBleHRsaXN0ICMnc3RyaW5nLW1hdGNoLXApKSkpCisJKHNl dHEgdGV4LS1idWZmZXJzLWxpc3QgYnVmcykKKwkoZG9saXN0IChidWYgYnVmcykKKwkgICh3aGVu LWxldCAoKGZidWYgKGJ1ZmZlci1maWxlLW5hbWUgYnVmKSkKKwkJICAgICAoZXh0IChmaWxlLW5h bWUtZXh0ZW5zaW9uIGZidWYpKQorCQkgICAgIChmaW5leHQgKGNvbmNhdCAiKi4iIGV4dCkpCisJ CSAgICAgKChub3QgKHNlcS1maW5kIChsYW1iZGEgKGVsdCkgKHN0cmluZy1tYXRjaC1wIGVsdCBm aW5leHQpKQorCQkJCSAgICAgZXh0bGlzdC1uZXcpKSkKKwkJICAgICAoKHB1c2ggZmluZXh0IGV4 dGxpc3QtbmV3KSkpKSkKKwkodW5sZXNzIChzZXEtc2V0LWVxdWFsLXAgZXh0bGlzdC1uZXcgZXh0 bGlzdCkKKwkgIChzZXRmIChhbGlzdC1nZXQgbW9kZSBzZW1hbnRpYy1zeW1yZWYtZmlsZXBhdHRl cm4tYWxpc3QpCisgICAgICAgICAgICAgICAgZXh0bGlzdC1uZXcpKSkpCisgICAgKGxldCogKHNl dHN5bnRheAorICAgICAgICAgICAocHVuY3QgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtZmluZC1y ZWZlcmVuY2VzLXN5bnRheC10YWJsZSkKKyAgICAgICAgICAgICAgICAgICAgKHNlcS1wb3NpdGlv bnMgaWRlbnRpZmllciAobGlzdCA/dyA/XykKKwkJCSAgICAgICAgICAgKGxhbWJkYSAoZWx0IHN5 Y29kZSkKKwkJCSAgICAgICAgICAgICAobm90IChtZW1xIChjaGFyLXN5bnRheCBlbHQpIHN5Y29k ZSkpKSkpKQorICAgICAgICAgICAoZW5kIChhbmQgcHVuY3QKKyAgICAgICAgICAgICAgICAgICAg IChtZW1xICgxLSAobGVuZ3RoIGlkZW50aWZpZXIpKSBwdW5jdCkKKyAgICAgICAgICAgICAgICAg ICAgICg+IChsZW5ndGggaWRlbnRpZmllcikgMSkKKyAgICAgICAgICAgICAgICAgICAgIChjb25j YXQgIlxcKCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJlZ2V4cC1xdW90ZQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZyAoZWx0IGlkZW50aWZpZXIKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMS0gKGxlbmd0aCBpZGVudGlm aWVyKSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAg ICAgKGJlZyAoYW5kIHB1bmN0CisgICAgICAgICAgICAgICAgICAgICAobWVtcSAwIHB1bmN0KQor ICAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAiXFwoIgorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAocmVnZXhwLXF1b3RlIChzdHJpbmcgKGVsdCBpZGVudGlmaWVyIDApKSkKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIlxcKSIpKSkKKyAgICAgICAgICAgKHRleHQtbW9kZS1o b29rCisgICAgICAgICAgICAoaWYgKG9yIGVuZCBiZWcpCisgICAgICAgICAgICAgICAgKHByb2du CisgICAgICAgICAgICAgICAgICAoc2V0cSBzZXRzeW50YXggKGxhbWJkYSAoKQorCQkgICAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXZhbAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGAodGV4LXhyZWYtc3lu dGF4LWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAsaWRlbnRpZmllciAsYmVnICxlbmQpKSkKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIFRlWC1zdHlsZS1ob29rLWFwcGxpZWQtcCB0KSkpCisg ICAgICAgICAgICAgICAgICAoY29ucyBzZXRzeW50YXggdGV4dC1tb2RlLWhvb2spKQorICAgICAg ICAgICAgICB0ZXh0LW1vZGUtaG9vaykpKQorICAgICAgKHVubGVzcyAobWVtcSAnZG9jdGV4LW1v ZGUgKGRlcml2ZWQtbW9kZS1hbGwtcGFyZW50cyBtb2RlKSkKKyAgICAgICAgKHNldHEgYnVmcyAo YXBwZW5kIHRleGJ1ZnMgYnVmcykpKQorICAgICAgKGRvbGlzdCAoYnVmIGJ1ZnMpCisgICAgICAg ICh3aXRoLWN1cnJlbnQtYnVmZmVyIGJ1ZgorICAgICAgICAgIChpZiAob3IgZW5kIGJlZykKKyAg ICAgICAgICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgKHVubGVzcyAobG9jYWwtdmFyaWFi bGUtcCAndGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgICAgKHNldHEg dGV4LS1vbGQtc3ludGF4LWZ1bmN0aW9uIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uKSkKKyAg ICAgICAgICAgICAgICAoc2V0cS1sb2NhbCBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbgorICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGAodGV4LXhyZWYtc3ludGF4LWZ1bmN0aW9uCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLGlkZW50aWZpZXIgLGJlZyAsZW5kKSkpCisgICAgICAgICAgICAgICAgKHNldHEgc3lu dGF4LXByb3BlcnRpemUtLWRvbmUgMCkKKyAgICAgICAgICAgICAgICAoc2V0cSB0ZXgtLWxhc3Qt cmVmLXN5bnRheC1mbGFnIHQpKQorICAgICAgICAgICAgOzsgSWYgd2UndmUgY29tcHV0ZWQgYSBi ZXNwb2tlIGBzeW50YXgtcHJvcGVydGl6ZS1mdW5jdGlvbicKKyAgICAgICAgICAgIDs7IHRoZW4g dGhpcyByZXR1cm5zIHRoZSBidWZmZXIgdG8gdGhlIHN0YXR1cyBxdW8gYW50ZQorICAgICAgICAg ICAgOzsgYmVsbHVtIG9uIHRoZSBuZXh0IGludm9jYXRpb24gb2YgTS0/IHRoYXQgc2VhcmNoZXMg aXQuCisgICAgICAgICAgICAod2hlbiB0ZXgtLWxhc3QtcmVmLXN5bnRheC1mbGFnCisgICAgICAg ICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAgICAgICAg ICAgICAgICAgICAgICAgIChldmFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBgKHRleC14 cmVmLXN5bnRheC1mdW5jdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsaWRlbnRp ZmllciBuaWwgbmlsKSkpCisgICAgICAgICAgICAgIChzZXRxIHN5bnRheC1wcm9wZXJ0aXplLS1k b25lIDApKSkpKQorICAgICAgKHVud2luZC1wcm90ZWN0CisgICAgICAgICAgKHhyZWYtYmFja2Vu ZC1yZWZlcmVuY2VzIG5pbCBpZGVudGlmaWVyKQorICAgICAgICAoZG9saXN0IChidWYgYnVmcykK KyAgICAgICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciBidWYKKyAgICAgICAgICAgICh3aGVuIGJ1 ZmZlci1maWxlLXRydWVuYW1lCisgICAgICAgICAgICAgIChpZiAob3IgZW5kIGJlZykKKyAgICAg ICAgICAgICAgICAgIChzZXRxLWxvY2FsIHN5bnRheC1wcm9wZXJ0aXplLWZ1bmN0aW9uCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXgtLW9sZC1zeW50YXgtZnVuY3Rpb24pCisgICAg ICAgICAgICAgICAgKHdoZW4gdGV4LS1sYXN0LXJlZi1zeW50YXgtZmxhZworICAgICAgICAgICAg ICAgICAgKHNldHEtbG9jYWwgc3ludGF4LXByb3BlcnRpemUtZnVuY3Rpb24KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHRleC0tb2xkLXN5bnRheC1mdW5jdGlvbikKKyAgICAgICAgICAg ICAgICAgIChzZXRxIHRleC0tbGFzdC1yZWYtc3ludGF4LWZsYWcgbmlsKSkpKSkpKSkpKQorCiAo bWFrZS1vYnNvbGV0ZS12YXJpYWJsZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAg ICAgICAgICAgICAidXNlIGB3aXRoLWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikK IChydW4taG9va3MgJ3RleC1tb2RlLWxvYWQtaG9vaykKLS0gCjIuMzUuOAoK --0000000000000c7e7c06173ce321--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 24 Apr 2024 09:02:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Apr 24 05:02:55 2024 Received: from localhost ([127.0.0.1]:57366 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzYWj-0006aI-Qq for submit <at> debbugs.gnu.org; Wed, 24 Apr 2024 05:02:55 -0400 Received: from mail-pj1-x102f.google.com ([2607:f8b0:4864:20::102f]:52557) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1rzYWd-0006YT-Rz for 53749 <at> debbugs.gnu.org; Wed, 24 Apr 2024 05:02:51 -0400 Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2a52c544077so4680321a91.1 for <53749 <at> debbugs.gnu.org>; Wed, 24 Apr 2024 02:02:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713949344; x=1714554144; 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=j3mnqq9SKi2buqbFhHk18jbwY8BXWwF6xbNvvpQFzsM=; b=gTPg7K8NdKByaurrKEqXAcQqwVjqpg25Pyit+K9gHZ3q8RTsmA7lBzlMkgsRDvwTbR D54Oxo7JzVEK9H4daXTVT35/tfI1PB41WDsHpSrdNZK6w5SpcbJOPz1bxf7XshP8J+Bj VTb7FENenOeNDe/gJVuUKE82L6+q68ns5XZjKUIp1raIDTAy79zBPPhUNrj6h+88lTgo +/UayokTnkbxm+8CJ9FONaShb0avwdyCN+B4hgCCRwGCP9hxQDTfEsPoiSMSxRTLCRQS 0hHGgpWeZ4SdK9zEs4+GAlVpr2cK6zOhTWBspzZfEPGxo8XmM2DhGQ5YLNOZypEVD0Tk MSoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713949344; x=1714554144; 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=j3mnqq9SKi2buqbFhHk18jbwY8BXWwF6xbNvvpQFzsM=; b=V5xAZUWOIpe0G7A0NYqXSkVLUWhRUSeyPZhsn2brZ6OpHxJTaz49u3B56N0ADM8qan l5e4u+sza1uRDJJU0Ly2zjgQHwXSYWn8eHXf8pynCtrcwCK3Rxp9wPhi9rAqFgqH3ZX9 yRo7WRyBbN0AXJuof24JTYUp63B0oeLkY7++u7yuzrT1GiRsbAJG4TFW3wC1ZVJhMuSG kq2otM09jbqtdsTg8gh0c63C95yJ7Y9lgBA0eLRbCuV+27XydMAQ0Sm1tzpz2BbCCwJ7 2gOZ8Q0w0PX0VHLwA1vaPK7MvkWz7W7xcF/VOTeOCgbaQGZ0VwOhXSUivlfFgqDVdA8w tibQ== X-Forwarded-Encrypted: i=1; AJvYcCXkoko0LQKAkgCXbqMoAbq/S8x1EbEe4rL4Yg0KQPHCtqqFleaWKfhwgNW3MdD/gUj45SArMtJqr9ooAR1qrZcTDm+yj1I= X-Gm-Message-State: AOJu0YzP09FuRWEHHUKAMLnT7VXTRVBWC5y3s3Wfbf5ZJN0zEZhvnqjO VxFQOatvEWnYWZcuqcQoS8tOKTXA1VLSyE10MI67G8ugLbYWOWjjRi8IPjJLQLpQ1b4WOqve0Bs Xt9NdEye1Bu0Q2MGq+LbqY97IFA0= X-Google-Smtp-Source: AGHT+IG9elGk4KZhEpQmzM/dA8mBy7J1ps9QXuo2KyFn4TNdTVVT12HNXkeld9MbXsGuVHmqrMMC7/Bt8gVBJCruMwo= X-Received: by 2002:a17:90a:4213:b0:2ab:b411:8cbc with SMTP id o19-20020a17090a421300b002abb4118cbcmr1611595pjg.31.1713949344455; Wed, 24 Apr 2024 02:02:24 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> <2b286a05-ff3c-4637-af52-dba5a71ba9fb@HIDDEN> In-Reply-To: <2b286a05-ff3c-4637-af52-dba5a71ba9fb@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 24 Apr 2024 10:02:29 +0100 Message-ID: <CADF+RthZNh6sv__YJmFARFarWyQmbwNo201Xw7+PFWWiQSpy+w@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, Stefan Monnier <monnier@HIDDEN> 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 (-) Thanks, Dmitry. > Last I checked, semantic-symref-filepattern-alist had explicit entries > only for languages whose auto-mode-alist entries were deemed too complex > to parse out the matching extensions from the corresponding regexps. > > Or had other difficulties like the c-or-c++-mode dispatcher. That makes sense, and clarifies a few things for me. I guess TeX has the "plain-tex or latex or context or ams-tex" dispatcher and also in-tree vs. AUCTeX mode names, both of which at least for the moment make semantic-symref-filepattern-alist seem a better fit. Best, David. On Wed, 24 Apr 2024 at 01:09, Dmitry Gutov <dgutov@HIDDEN> wrote: > > On 22/04/2024 20:16, Stefan Monnier via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > >> (I'm wondering whether it might be useful, for example, for > >> semantic-symref-derive-find-filepatterns to add extensions from > >> auto-mode-alist even when some extensions are found in > >> semantic-symref-filepattern-alist.) > > Assuming we can get good enough results from `auto-mode-alist and > > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > > as obsolete. > > But before that, we need to check the assumption. > > Last I checked, semantic-symref-filepattern-alist had explicit entries > only for languages whose auto-mode-alist entries were deemed too complex > to parse out the matching extensions from the corresponding regexps. > > Or had other difficulties like the c-or-c++-mode dispatcher.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 24 Apr 2024 00:09:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 20:09:41 2024 Received: from localhost ([127.0.0.1]:55124 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzQCh-00045w-La for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 20:09:41 -0400 Received: from forward502b.mail.yandex.net ([178.154.239.146]:43396) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1rzQCb-00044H-7L for 53749 <at> debbugs.gnu.org; Tue, 23 Apr 2024 20:09:36 -0400 Received: from mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:15a2:0:640:2a47:0]) by forward502b.mail.yandex.net (Yandex) with ESMTPS id 746C65F06B; Wed, 24 Apr 2024 03:09:13 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id 898fuqICZmI0-YJ4nbCb6; Wed, 24 Apr 2024 03:09:12 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1713917352; bh=N+rO0q7OryuqrWO4nUncqcdQPPgbXm7v2k7XVNh1PJ0=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=aZdUKRVt+a7jIYNa06FhtmYRlBlGRrxsps/Gd1X1mxcuGdElvtI6MtvmptWIEm+Cz GOXFxClYC5SDemXVTnW4WzMxHJ3gmw1UVjL4JUzmALLqYdPbPQdOvRvVLmwd0rZGZI B4vJvbpWzzVLa+69YRvgo8jo22oSJG6WAzXyWb0Q= Authentication-Results: mail-nwsmtp-smtp-production-main-91.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfauth.nyi.internal (Postfix) with ESMTP id 21D781200032; Tue, 23 Apr 2024 20:09:07 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute6.internal (MEProxy); Tue, 23 Apr 2024 20:09:08 -0400 X-ME-Sender: <xms:o00oZtcm5fzbdl7hBCb88882nQ64JROUj5zeGcbMU6_0m4-yhhMU5Q> <xme:o00oZrPPoBYppytAwyB-QOEQdTHZtJNgbTZ3v6CszB93bBkFbu3O2Vfq5jyXKZsux k4FoQi4QC5fHPNpTFw> X-ME-Received: <xmr:o00oZmiZd8fJs6TqZQokgRN_9JSJb5iP0fYlvGE08DFl8ef6_QJPPKhTBgBC4JguGaL2> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrudelvddgfeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnhepiefhjeeuveetffffvdefteffffekhfeuudejieehheeiudelgfehgffffedu ffdunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:o00oZm8tg0JCHZrNPkRr8Vaam1u_uAaYkxJMGBugBEXBTTPS7SHtbg> <xmx:o00oZpvWQ438d5OEXuq0YpoiwZGDPnkp0oksaF0_VOsJinZzScRgkQ> <xmx:o00oZlE-fNoiMwoS4xhe8nChBdzmj0HAHfiBdefWA1rnwRMllpY1cA> <xmx:o00oZgPgLMrLwMkY_hAvjYqq594MZQvZ-Mg5HVBDK9QuxZ-RbEeAkw> <xmx:o00oZiPg0otOBsWzLp6R1NmCbob_17a-RWCbL3LZV4FQIWZfdLfxV5bN> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 23 Apr 2024 20:09:05 -0400 (EDT) Message-ID: <2b286a05-ff3c-4637-af52-dba5a71ba9fb@HIDDEN> Date: Wed, 24 Apr 2024 03:09:03 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN>, David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> Content-Language: en-US From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) On 22/04/2024 20:16, Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> (I'm wondering whether it might be useful, for example, for >> semantic-symref-derive-find-filepatterns to add extensions from >> auto-mode-alist even when some extensions are found in >> semantic-symref-filepattern-alist.) > Assuming we can get good enough results from `auto-mode-alist and > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > as obsolete. > But before that, we need to check the assumption. Last I checked, semantic-symref-filepattern-alist had explicit entries only for languages whose auto-mode-alist entries were deemed too complex to parse out the matching extensions from the corresponding regexps. Or had other difficulties like the c-or-c++-mode dispatcher.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 23 Apr 2024 13:22:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 09:22:33 2024 Received: from localhost ([127.0.0.1]:52150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzG6M-0000Gs-Hg for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 09:22:33 -0400 Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]:57533) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1rzG66-0000A6-N8 for 53749 <at> debbugs.gnu.org; Tue, 23 Apr 2024 09:22:21 -0400 Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-1e3f17c6491so44761495ad.2 for <53749 <at> debbugs.gnu.org>; Tue, 23 Apr 2024 06:21:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713878508; x=1714483308; 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=rCjX6uk1DuX1uS2qa/XC12uCoY3pARo2nIHg3Nn1W30=; b=NdWpivMPhFM47/ZETyEwB2Kn0JTbsFnNd/VfmOSniBbtl83tAVZX6nHarAulhIhO+f /aCO4Mc9Ch0MfhpkuEs5neK4SgOwivXXa5WIlU4F0OY7TDW1KGPkdx5j0hYif3a6rLvM nn6ErPZDR90vUFoOhtDp7N6aML1mf5Wn7mzAIH2G3vp1ZecwJX4TDp6XIdpaCuUIeEKB ML/f4CDQPEWA90Mc4bOps8p10+vpD7bUg9JgK3thAMGIyi8ttwre2KM6OP7uehouXc8L FYv0NvmAION9MHaCRH5Jk677x1zR+zGpaM59GHs7MR65Gk0UKGqPpRMPjXimhn10suY4 6Mkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713878508; x=1714483308; 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=rCjX6uk1DuX1uS2qa/XC12uCoY3pARo2nIHg3Nn1W30=; b=lEheCCdrc5tvI2IKdgLKIPEHSRpLrH8tghWdg60JykCrWTdVu3i15DcuHZMnQ0EoSF 7bjONHYWm3pZQn2vt9Hcq5Jh7+QlqB3dOHl+GulDqC5r9hkWAjP818eS/WcCm/oh37dD 7irPBW1H+9V8+lO7OC+csuJuXzrQubRKlGJjV23GYf+5527Og69IwJtGGSaeA04B/Xyh wxest9Yg4SvX9ulwyKFrKQY8gDLI6KpLvEea+yL//kZdUNX6XeDEYIoduSRaLsMa7PGV UMnV8TKiG8nIMgrdQIFmFWMX+CwCcqR3uOyMO4cYkcs88YyXL1w07ApplxGTe37U4ecM P+Bg== X-Forwarded-Encrypted: i=1; AJvYcCVmx3t3GYCMBfShldk6vwI9ve+s81Rzk0EjlyWFFS6tx9ce19s1q1bnH5X4HgmyvFeqq1FYpZgpMd6vg0cHkGlDQN20Gn0= X-Gm-Message-State: AOJu0YyZYlS2J+kmtG5ATPf+c714AmL4ZBWbKqDhtmzmCTXhJLgB+N/R 802Sleg3DWxwd0FR/k+lS8CVSwCjzG5K9k88WGryDA1wYcEwAyeAJECSmt75uJm12SwCmnIz2ft tVvnJLlcLtKs7awiLxJiqatgSxd0= X-Google-Smtp-Source: AGHT+IGCEiFEagmAWn69b6NCyF0aARFWihoKGqf7CPc/FNuTjpsjNH04vRG/j/kpNeIIEB52hfRvzz4DxJ1O6vNxjPk= X-Received: by 2002:a17:902:dac7:b0:1e8:2c8d:b74a with SMTP id q7-20020a170902dac700b001e82c8db74amr15066997plx.10.1713878507913; Tue, 23 Apr 2024 06:21:47 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <m2v848xp2g.fsf@HIDDEN> In-Reply-To: <m2v848xp2g.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Tue, 23 Apr 2024 14:21:52 +0100 Message-ID: <CADF+Rtio5gvhbOtVDivddbKhjTmekRek6dzkcCSj+=upg4k8OQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) Thanks for the reply, Arash. > I'm not familiar with the way xref works, but reading the above, xref > doesn't care about modes set per file variables, is this correct? As far as I know, the default xref-find-references deals strictly in file extensions. > I think this is almost impossible. Besides the effort, take for example > the .cnf extension which is used by other programs as well, so > associating it with LaTeX-mode wouldn't make sense, IMO. Agreed -- this may be an argument against my current approach. I hope, however, that the way xref-find-references searches by directory or by project should limit spurious searching when a more common extension appears on a TeX file. > This is possibly the next mess since .tex can be plain-TeX, ConTeXt, > LaTeX ... I guess currently I'm thinking that this is sort of a feature, as searching for symbols in files/buffers from many closely-related modes may produce useful matches. The code I'm finishing up tends to search more files rather than fewer, but it should be possible to prune this if it's deemed too messy. > So in general, I second what Stefan M. wrote in his other > message, but respecting/using file local variables could help here. Currently, the code takes into account file-local variables only by including in the search list extensions of TeX-related buffers, which may well only have become TeX-related due to such variables. I'll post a patch as soon as I solve an outstanding issue or two, and we'll see where we are. Thank you indeed for your help, David. On Tue, 23 Apr 2024 at 13:04, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > Thanks for the nudge. I am in fact in the final stages of preparing a > > new patch to get xref working in TeX buffers. > > Thanks for the update. > > > The semantic/symref backend used by xref-find-references greps in > > files matching the major-mode of the buffer where the user calls the > > command. It looks in semantic-symref-filepattern-alist for > > file-extensions matching the major-mode, and if that fails it looks in > > auto-mode-alist. When both fail to produce any file extensions it > > tells the user to customize semantic-symref-filepattern-alist. Also, > > if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so > > s-s-f-a has to be complete in order to be useful. In effect, we need > > s-s-f-a to hold all the extensions for all the modes that can appear > > as values of major-mode, and I notice that AUCTeX has started to > > populate that alist, though incompletely. > > I'm not familiar with the way xref works, but reading the above, xref > doesn't care about modes set per file variables, is this correct? > > > I'm also aware that many packages add their own extensions to files > > which are basically TeX or LaTeX files, and I wonder whether we can > > really keep up with the whole of CTAN in terms of providing complete > > lists of extensions for s-s-f-a. > > I think this is almost impossible. Besides the effort, take for example > the .cnf extension which is used by other programs as well, so > associating it with LaTeX-mode wouldn't make sense, IMO. Finally, I > think many packages are written in .dtx format and the ones with many > files with different extensions (.def, .enc, .fd, ...) usually extract > them from the .dtx via an .ins file, so the edited source is inside the > .dtx, and we don't need to care about these extensions. > > > As an example of where we are, if you open a plain-tex-mode (or > > plain-TeX-mode) file and M-? with point on some standard word you'll > > currently get the message to customize s-s-f-a, because > > auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, > > either. > > This is possibly the next mess since .tex can be plain-TeX, ConTeXt, > LaTeX ... So in general, I second what Stefan M. wrote in his other > message, but respecting/using file local variables could help here (if > it doesn't work ATM, see above), e.g.: > > --8<---------------cut here---------------start------------->8--- > \beginsection 1. Introduction. > This is the start of the introduction. > \bye > > %%% Local Variables: > %%% mode: plain-TeX > %%% TeX-master: t > %%% End: > --8<---------------cut here---------------end--------------->8--- > > HTH. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 23 Apr 2024 12:05:24 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 23 08:05:22 2024 Received: from localhost ([127.0.0.1]:51760 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rzEth-0001q0-1a for submit <at> debbugs.gnu.org; Tue, 23 Apr 2024 08:05:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52992) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1rzEta-0001nW-5K for 53749 <at> debbugs.gnu.org; Tue, 23 Apr 2024 08:05:13 -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 <arash@HIDDEN>) id 1rzEtA-0005ko-R6; Tue, 23 Apr 2024 08:04:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=ciijcQH9FO0ohvppQ3a1OOjqXkZJ/6pdazTMDSweG4U=; b=Cs1tHeyc52xbZxHC13kJ 0+59CFRRw+bMMqb2bvhCge/XDtlgGkZlZAvsIKrGdQgiVYT8EqVbon1al6+7AZ6dKhUyCZHUFPIpG 1Pd4ZjNUPeTZeF+InfzQX/SvJKWqv0qliBfrz0eD7/bGV+KH9xL5e6kn/uPktlBAsZD2PR4A7dkBJ XJRu9MwZgJMuEssvDVR+dO53niYrE5R7UYoUetCZ6bC6RgxxA536hGE8oYm5I6eD74XU28kt6tX4w 9neq3pRjQN0bU85szBQbaOAiFaI+kFWL/ZrfOS2Ep9eUbxildF1ObNPEj003Qv2QtZY1ntAhQ/sTH 6kBDTXHeLkcBEg==; From: Arash Esbati <arash@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> (David Fussner's message of "Mon, 22 Apr 2024 15:56:34 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> Date: Tue, 23 Apr 2024 14:04:39 +0200 Message-ID: <m2v848xp2g.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (---) David Fussner <dfussner@HIDDEN> writes: > Thanks for the nudge. I am in fact in the final stages of preparing a > new patch to get xref working in TeX buffers. Thanks for the update. > The semantic/symref backend used by xref-find-references greps in > files matching the major-mode of the buffer where the user calls the > command. It looks in semantic-symref-filepattern-alist for > file-extensions matching the major-mode, and if that fails it looks in > auto-mode-alist. When both fail to produce any file extensions it > tells the user to customize semantic-symref-filepattern-alist. Also, > if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so > s-s-f-a has to be complete in order to be useful. In effect, we need > s-s-f-a to hold all the extensions for all the modes that can appear > as values of major-mode, and I notice that AUCTeX has started to > populate that alist, though incompletely. I'm not familiar with the way xref works, but reading the above, xref doesn't care about modes set per file variables, is this correct? > I'm also aware that many packages add their own extensions to files > which are basically TeX or LaTeX files, and I wonder whether we can > really keep up with the whole of CTAN in terms of providing complete > lists of extensions for s-s-f-a. I think this is almost impossible. Besides the effort, take for example the .cnf extension which is used by other programs as well, so associating it with LaTeX-mode wouldn't make sense, IMO. Finally, I think many packages are written in .dtx format and the ones with many files with different extensions (.def, .enc, .fd, ...) usually extract them from the .dtx via an .ins file, so the edited source is inside the .dtx, and we don't need to care about these extensions. > As an example of where we are, if you open a plain-tex-mode (or > plain-TeX-mode) file and M-? with point on some standard word you'll > currently get the message to customize s-s-f-a, because > auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, > either. This is possibly the next mess since .tex can be plain-TeX, ConTeXt, LaTeX ... So in general, I second what Stefan M. wrote in his other message, but respecting/using file local variables could help here (if it doesn't work ATM, see above), e.g.: --8<---------------cut here---------------start------------->8--- \beginsection 1. Introduction. This is the start of the introduction. \bye %%% Local Variables: %%% mode: plain-TeX %%% TeX-master: t %%% End: --8<---------------cut here---------------end--------------->8--- HTH. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 17:26:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 13:26:28 2024 Received: from localhost ([127.0.0.1]:46936 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ryxQx-0001RI-Q6 for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 13:26:28 -0400 Received: from mail-pj1-x102f.google.com ([2607:f8b0:4864:20::102f]:53466) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1ryxQu-0001Q6-9q for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 13:26:25 -0400 Received: by mail-pj1-x102f.google.com with SMTP id 98e67ed59e1d1-2a519ac18b3so3256774a91.2 for <53749 <at> debbugs.gnu.org>; Mon, 22 Apr 2024 10:26:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713806762; x=1714411562; 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=LUmRgCy0KAf/dzyt0y5rco+y/SBEk2lsSh2UpvmvB0M=; b=B6GYc5ipLDdJwc3rx4kH+T7F1MBozeWP3vUgkBDJ1uRrc1F5BuSZZQFxUGnJEGEEkF sMiuI9ccgq3K37vtgFruDzA1K0Ank/6Y4zGhRbOJcxoOTrCUHdvnQwiyFwqKW0wCqxWC 5h5GXANpOM/gj4kWbqBXfrLum0tjpvuAOYOXbTzCLwlDZWbJxOnuEImGvUqrow15qEZa lkP39ZfaIaT837EJhfp/ry3SXOY70q5+ugQAImgyspOgPn8noB9fGmeo1QjnQPwyZpHl KwOzYaGVt8l+M609frDVWSiHx2rGSRM5pHf+paVfLDME0OvLk1pIbBfCWKaOAfW/MgPE fdUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713806762; x=1714411562; 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=LUmRgCy0KAf/dzyt0y5rco+y/SBEk2lsSh2UpvmvB0M=; b=pIDw3LypLGCFhb4scOKpXrmSIbxNg8clkbCsEIOis6LmAdIIPEl6z28EY/31q6Nqck 8bS2pkKl7DUizlEmBL2OexX4FTG+N2SGLLwnS2J7cY1WBrUWw0VitlQX8Rzn5sqBvUeC ffNuVD2eDBVn1r/vH3oXoAJktClBfr98FFDdktX9iqQNHBTcmQhvhsGK1TnBkg/Oo2cn jjCQ3Nk6g8s7X8i/HmqeGoAYGwRF1GumUF9ndvC2RMq53BEr4bTGJxbA+mf4eekrHeWV 1CnLtXJQZ1BOz77Qy1DOmLXlvMIVXIz9QC5EvrNnHL7XHefJOx3pbnGX0OnaKoTsPOoy vM4Q== X-Forwarded-Encrypted: i=1; AJvYcCVndHTx444Kdn+soZpR8uEDf2Cilj9lNZEAjDPcyMkDI39vx+Xs+cBoNPdExH/KVDFrM4cg/hwW6Meusp91yrl7HVWPdig= X-Gm-Message-State: AOJu0Yx3jLnGhpBXSPX6Mqz1xutvGlfXHSroAuq1KMJS43ejcc1l3K9h Qvc8x4A0bSp6efNy0la6DucQNEcRPP+AJgTUP8cehAf/lZ/v5AQZBTQTBW333CLSTaO5NU/lcV+ bCsvOIWXp/H/deqJRyALfc8CgGmU= X-Google-Smtp-Source: AGHT+IGG8qb06X/KcACql4p45W00BJK1w9xutDhj2RUr24EkbFTj1zW3esBLO0a/nBR3pxvAdr3ERY8y2toFaemSc1Y= X-Received: by 2002:a17:90a:101:b0:2ad:dfe4:fa6a with SMTP id b1-20020a17090a010100b002addfe4fa6amr3035521pjb.12.1713806762302; Mon, 22 Apr 2024 10:26:02 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> In-Reply-To: <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 22 Apr 2024 18:25:50 +0100 Message-ID: <CADF+RtiMWCOP_Ez4KrC-P+0QKSp0RqLZxTXEqDLhjEooH7sepA@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> Content-Type: multipart/alternative; boundary="00000000000047e5170616b2bbb9" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Arash Esbati <arash@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) --00000000000047e5170616b2bbb9 Content-Type: text/plain; charset="UTF-8" Thank you. I hope one or two others might join in, but I'll have some code to look over in a few days, in any case. David. On Mon, 22 Apr 2024, 18:16 Stefan Monnier, <monnier@HIDDEN> wrote: > > (I'm wondering whether it might be useful, for example, for > > semantic-symref-derive-find-filepatterns to add extensions from > > auto-mode-alist even when some extensions are found in > > semantic-symref-filepattern-alist.) > > Assuming we can get good enough results from `auto-mode-alist and > friends, I think we'd want to mark `semantic-symref-filepattern-alist` > as obsolete. > But before that, we need to check the assumption. > > In the short term, for AUCTeX the only workable option seems to be to > add entries to `semantic-symref-filepattern-alist`. > > > Stefan > > --00000000000047e5170616b2bbb9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Thank you. I hope one or two others might join in, but I&= #39;ll have some code to look over in a few days, in any case.=C2=A0<div di= r=3D"auto"><br></div><div dir=3D"auto">David.=C2=A0</div></div><br><div cla= ss=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, 22 Apr 202= 4, 18:16 Stefan Monnier, <<a href=3D"mailto:monnier@HIDDEN">mo= nnier@HIDDEN</a>> wrote:<br></div><blockquote class=3D"gmail_q= uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e= x">> (I'm wondering whether it might be useful, for example, for<br> > semantic-symref-derive-find-filepatterns to add extensions from<br> > auto-mode-alist even when some extensions are found in<br> > semantic-symref-filepattern-alist.)<br> <br> Assuming we can get good enough results from `auto-mode-alist and<br> friends, I think we'd want to mark `semantic-symref-filepattern-alist`<= br> as obsolete.<br> But before that, we need to check the assumption.<br> <br> In the short term, for AUCTeX the only workable option seems to be to<br> add entries to `semantic-symref-filepattern-alist`.<br> <br> <br> =C2=A0 =C2=A0 =C2=A0 =C2=A0 Stefan<br> <br> </blockquote></div> --00000000000047e5170616b2bbb9--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 17:16:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 13:16:56 2024 Received: from localhost ([127.0.0.1]:46898 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ryxHj-0000SE-O1 for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 13:16:55 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:3957) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1ryxHg-0000RK-S3 for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 13:16:54 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 229D5100170; Mon, 22 Apr 2024 13:16:31 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1713806190; bh=NLvuOgorwlEQ1UtQTLxY1DTD3RUrejOcZ4oFvQ57bFI=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=GKkFqoimsIzFggSA3lKwHZ7j9UoXDQTBc3BODwIWffpgzq40/rfm/8CTSl5Rgjndr 5RBZ7I0D/xiyOm2dle8xM6gcOkbbLqAsCIjdhka5kyrdKSpmNNZzGPsAaKRfA4Sn5E 0SXYYhp7AKlUBgvHhQPsU8N15YEGnKbmI6cWIdEU1apzGb5G0Udjcbnk9f0w6nwyhD nPQBkebFNpNadGuctQ9ueOE/7b+oLTGz7rw3b5Xt21Fzw3IkxCbaendn++xXaFvZNx hXg0/2xi8YY5r5Tm9efkMmbWMsz6zFMSLxD446zm8ZKcyxu3r9tA462sPk3Qt0TTtD y1kMb7L/ymV0g== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 3102010002E; Mon, 22 Apr 2024 13:16:30 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id DBECA120588; Mon, 22 Apr 2024 13:16:29 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> (David Fussner's message of "Mon, 22 Apr 2024 17:37:18 +0100") Message-ID: <jwv5xw9l3ty.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> Date: Mon, 22 Apr 2024 13:16:28 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.060 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) > (I'm wondering whether it might be useful, for example, for > semantic-symref-derive-find-filepatterns to add extensions from > auto-mode-alist even when some extensions are found in > semantic-symref-filepattern-alist.) Assuming we can get good enough results from `auto-mode-alist and friends, I think we'd want to mark `semantic-symref-filepattern-alist` as obsolete. But before that, we need to check the assumption. In the short term, for AUCTeX the only workable option seems to be to add entries to `semantic-symref-filepattern-alist`. Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 16:37:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 12:37:40 2024 Received: from localhost ([127.0.0.1]:46734 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rywfi-0004XM-Mv for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 12:37:40 -0400 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:47339) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1rywfg-0004WI-4H for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 12:37:37 -0400 Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-5dca1efad59so3359172a12.2 for <53749 <at> debbugs.gnu.org>; Mon, 22 Apr 2024 09:37:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713803834; x=1714408634; 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=nHw9F+nbcZCCdzuHnnzxs26k60Bn/+oO4uktZBzrf58=; b=c81ZwQvzqdL1BKUyRqN3B6hLCb0Wx5JlWPNGk6ChmuMVOOZiU3qD3L7hRq5LxcdHjJ /zogIYPAG6R9neB5qGKmmpcmQ15d1IHIbmjYeIXWIWkz52VpHMnkv42H+LTWT3GhZTZd Hyp9lBcgEpTbJBS1rD/aKgOL8iHvudLJ5uHdMkKxciDS4Vpv4Uv9lo5FAHVSFGdCMKMZ 1d2VC0G8gxyZnXBeYVylCkjyBuxuNc1Y977kBCrXNNHUiYdb0v1mzY85oycsLSsVmQdT si8SrGzUNuqrQkTYZmP4MooaXx5TfcXpuGjynEdV1jcxZzTSe7CQvlJnvIwUzfXSMZOj udgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713803834; x=1714408634; 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=nHw9F+nbcZCCdzuHnnzxs26k60Bn/+oO4uktZBzrf58=; b=BFYvIbxex+bpayKTxjXLjhovNFc0cAq88xCGN+ywfzxPpUeFLZoJtvUauEi0NnwmAg A1bPVufNkXDyjWvhXst+DyIqR5F2b+JqDGLcoG4ULCPD/mm+thmVYVLBfI84oviV0TCy 7gZKWrFdRz/ONnUYRNzXKKj0KDpKGNsHDoIwtq7yZ5Mg/osyXPjz+rrNEQa1f4CnJ6s9 5nU2JTqtK5DtfLZBbIdG40gpmgI6oQvrGKiyWzpVqdZ/wuHzlvAcMCKf4RiAwr3mWXE5 2uP3cbvs/XrFL4wNRqTS6q5tDCw4dRZsjm6TzywMODdtQMzBq9vwBzHIapoyNSp7wV+j V/9g== X-Forwarded-Encrypted: i=1; AJvYcCWNUL8clJKuuZvX1BofSRTi0mYgrO8tCYmguSYGqOmy0v4m2lfLXihsIFv2MQNSdkvcyMTqHb5ELWfFg+EZ3Pjt7F9a2ZQ= X-Gm-Message-State: AOJu0YybV9R/VlNoPQTe2+2NyUj/kf5YElBGClm/trax8zmCexfxD6Nu wdNZqM/6Uabr0c2/5Is+MJFE1pwIzmHaXOY1aGZ3oJRyXHlqNr+aPSqG2KnWcbZ7LWcF+s5dDj8 mV2FhWIOZGMKiZKZRVuVhkCDX9xs= X-Google-Smtp-Source: AGHT+IHFXGTDWjqGW+TL9o+BbAZJzo8ZqjmEW1yl8/4FVZ6G8/NZrXf3lxlSzsG4GLWfnh+JJiLAADf5O4uQwefuvFw= X-Received: by 2002:a17:90b:374f:b0:2ae:78cd:59fe with SMTP id ne15-20020a17090b374f00b002ae78cd59femr859357pjb.31.1713803834090; Mon, 22 Apr 2024 09:37:14 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> In-Reply-To: <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 22 Apr 2024 17:37:18 +0100 Message-ID: <CADF+RtimAoDGFxnWuKMb19RQLTBABtDZ=m=mZe9wFMd26mSi2A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Monnier <monnier@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (-) Thank you, Stefan -- I didn't know about major-mode-remap-alist/defaults. Do you think TeX and friends are handled by emacs distinctively enough to warrant keeping some specialist extension-handling code in tex-mode.el, or do you think some changes should be more generally available, in grep.el, say? (I'm wondering whether it might be useful, for example, for semantic-symref-derive-find-filepatterns to add extensions from auto-mode-alist even when some extensions are found in semantic-symref-filepattern-alist.) David. On Mon, 22 Apr 2024 at 17:15, Stefan Monnier <monnier@HIDDEN> wrote: > > > auto-mode-alist. When both fail to produce any file extensions it > > tells the user to customize semantic-symref-filepattern-alist. > > Yes, this is not ideal. > > I think ideally we'd build a regexp from `auto-mode-alist` and > `major-mode-remap-alist/defaults`, tho it may require additional info. > > E.g. we may need to complement that with additional "related modes" > (e.g. html modes may want to mention `php-mode` as "related"). > > > Stefan >
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 16:15:38 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 12:15:38 2024 Received: from localhost ([127.0.0.1]:46627 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rywKQ-0002GH-GL for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 12:15:38 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:63657) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1rywKN-0002F7-Av for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 12:15:37 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id C599F4413BE; Mon, 22 Apr 2024 12:15:12 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1713802511; bh=EiMlp8ZZ62dPhHQvc0nMF+dmAiyfVGt/wtYQkItVhtk=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=n+M3uskcYdQPMzVAqMKINfDwpCasaOKM0p/2eZsn4GDurRa6QzOEc/Ve1jR2t2eJK QuQHe/KMseTjDZgJ+en+nU/EOjx0zNjjXIYK9aVgPC0WZzz3VlkZjm3/JgD7NGCuhZ iJBfTJATthKi2623eo18K9C59IGrvZOlrfhy7S8yd8MekHzF61nTlHFH+AKEQ69a+T NsLylqSQAxUARpMUpOahwpATu9td87/tKbrCR01jUdK1NVlmnhkoNW1jP0JaReJF8E R+CfhJQDBa4brvc+1VBZeoVV3vTnTfuGptRKkAStLWLdDAsI8uxbPShJSZtf0XZ5cg +3j3CHyAxMOWw== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 1CC94441394; Mon, 22 Apr 2024 12:15:11 -0400 (EDT) Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id C585C1202CB; Mon, 22 Apr 2024 12:15:10 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> (David Fussner's message of "Mon, 22 Apr 2024 15:56:34 +0100") Message-ID: <jwvbk61l6o9.fsf-monnier+emacs@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> Date: Mon, 22 Apr 2024 12:15:09 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.012 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Arash Esbati <arash@HIDDEN>, stefankangas@HIDDEN, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> 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 (---) > auto-mode-alist. When both fail to produce any file extensions it > tells the user to customize semantic-symref-filepattern-alist. Yes, this is not ideal. I think ideally we'd build a regexp from `auto-mode-alist` and `major-mode-remap-alist/defaults`, tho it may require additional info. E.g. we may need to complement that with additional "related modes" (e.g. html modes may want to mention `php-mode` as "related"). Stefan
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 14:56:59 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 10:56:59 2024 Received: from localhost ([127.0.0.1]:46287 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1ryv6I-0002AI-9d for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 10:56:59 -0400 Received: from mail-pj1-x102a.google.com ([2607:f8b0:4864:20::102a]:42460) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1ryv6D-00029N-02 for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 10:56:56 -0400 Received: by mail-pj1-x102a.google.com with SMTP id 98e67ed59e1d1-2a55a3d0b8eso3025245a91.1 for <53749 <at> debbugs.gnu.org>; Mon, 22 Apr 2024 07:56:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1713797791; x=1714402591; 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=bDesAdu67aLrP3IjcUXxIkDFDHN2kc+f2ubt1lCxf1E=; b=i80gqKMCVKkGI2GfGt+2EZC55tmxSYqmmd3GUpcY6ewf4kw00HtkKXX+VoYH8D/ldR v+yi21Uqc68JRL9BIsidRNGukZgSweGQhcm7uav9xmlOqWjRU8Lfx9koUv8Y8BihUkeR pFo3V4mSM/tUkHCGxS3iif8j4bJs4eV9et4VzH/zT1QeL7LReUtX07ayxanzrhdZ35x7 BgGUGTNy2IkzhsR5+mLc/ZhYfuKstBxm1dtYGEEevLYyLRs33lZX9pvsevfXiZIZAWhH JhLp7+yOWVBPRpryYdXX+Jx8CNChu8hs/HSg9BE49Ea+W7xErJY1dshgCoHjhO/0qHip +U2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713797791; x=1714402591; 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=bDesAdu67aLrP3IjcUXxIkDFDHN2kc+f2ubt1lCxf1E=; b=ab+NzC9iT4xkLrkuhfJkFxkIQT44/OMchPSQ3PVWlzg1hm0u4h7FnKiq6ICVBv8Rzd lwefEoIR3BM2bXYfPfIjUGsEqeXOCH/gM0cPM5G9rrGYmVIyoEfsrpX9MB8rQnc/7Aun 0jkbvS8jBMKCOHE+9ojzFDdAXn5XenIA1QGHacMY3UCfcE29mfOaqTSxUeCUb2m7JLTE MjdzfkBs7Uir3lglAp/L/WPkeSCMl3yAWq4k8WETf4LND3Bh5o5J6OJhTtfNGSTBBS3r noHHj8+ZVGL68DA5PJ0Fc1Ji5b//vfDnD4HNjt7F19lGlrKD00Zq1bQ8N0vgJjAI3TSV KT7Q== X-Forwarded-Encrypted: i=1; AJvYcCXWq1ZO2F7EMa/tmgzOpE9iKqeXlPqN6Mx07mNxlCwmNkAyrbDbZQndxOgplnFAvwt8u1VFakNmGFXS2PyBGhOlvETuTdM= X-Gm-Message-State: AOJu0Yw9g+4CUcrS6OdZJUyUoN3RfQ3CQb+XmCVlcsHntPiHFzcFaCxU pM5yoLOB+WlBeOB5vAEib16VguN5oSNlWfIZgPByW/wv+zvnLJZw+0rG7TJw4s0Olze1S+fqYdg /kXvZ0PaedxjUlAKKS8zjyw65Mag= X-Google-Smtp-Source: AGHT+IFIFHBzFMS7pMUY8/IFxPOKa1suVZz1BcVx/X7C52fkK2DV5oRWWO/g255ObPZSRpJbHERZIrvqU25syqVr5dU= X-Received: by 2002:a17:90a:928d:b0:2a2:9e5d:9bf9 with SMTP id n13-20020a17090a928d00b002a29e5d9bf9mr18166007pjo.8.1713797790843; Mon, 22 Apr 2024 07:56:30 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> <m24jbtim2p.fsf@HIDDEN> In-Reply-To: <m24jbtim2p.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 22 Apr 2024 15:56:34 +0100 Message-ID: <CADF+RtiysDPn_V=+KFKip_Owx6t1u9N4yDnBr-zyf3LiC6xZ0g@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) Hi Arash, Thanks for the nudge. I am in fact in the final stages of preparing a new patch to get xref working in TeX buffers. As usual, the main complexities are in xref-find-references, and while I have you here I wonder whether I could ask your thoughts about addressing one part of this complexity. The semantic/symref backend used by xref-find-references greps in files matching the major-mode of the buffer where the user calls the command. It looks in semantic-symref-filepattern-alist for file-extensions matching the major-mode, and if that fails it looks in auto-mode-alist. When both fail to produce any file extensions it tells the user to customize semantic-symref-filepattern-alist. Also, if it finds things in s-s-f-a, it doesn't go on to auto-mode-alist, so s-s-f-a has to be complete in order to be useful. In effect, we need s-s-f-a to hold all the extensions for all the modes that can appear as values of major-mode, and I notice that AUCTeX has started to populate that alist, though incompletely. I'm also aware that many packages add their own extensions to files which are basically TeX or LaTeX files, and I wonder whether we can really keep up with the whole of CTAN in terms of providing complete lists of extensions for s-s-f-a. As an example of where we are, if you open a plain-tex-mode (or plain-TeX-mode) file and M-? with point on some standard word you'll currently get the message to customize s-s-f-a, because auto-mode-alist has only tex-mode and s-s-f-a doesn't cover them, either. I ask you Arash, therefore, as an AUCTeX and emacs developer, and I ask any other developers also, whether you'd prefer me just to put together as complete a list as possible for addition to s-s-f-a -- with patches for AUCTeX for all the new modes there -- or, and this is what I'm finishing up now, whether you'd consider it overkill to have code that constructs (or modifies) entries in s-s-f-a by searching in auto-mode-alist and in the buffer-list for all the file extensions emacs knows about that relate to the current major-mode. Changes in s-s-f-a wouldn't be persistent across sessions, but they would allow a user to open a file with any file extension, run latex-mode, and M-? would work in that buffer, and search that buffer from another buffer with a related major-mode, all without needing any user intervention. It would also allow customizations in auto-mode-alist to appear in s-s-f-a automatically, which seems convenient to me. If your answer is "show me the code", I'll do that shortly, but I wondered whether anyone had any preliminary thoughts on the matter. Best, and sorry for the long question, David. On Mon, 22 Apr 2024 at 14:06, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > Thanks for the clarifications. If you look at the current patch to > > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > > for my own testing purposes, but no matter what the final patch looks > > like it should only similarly require a single function call in an > > AUCTeX hook to activate the new xref code there, along with one in > > tex-common-initialization for the in-tree modes. If and when all > > parties are satisfied by the patch I'll certainly be in touch with you > > to find out how you'd prefer to handle activating it (or not) in > > AUCTeX. The current state of affairs is a convenience for me and for > > anyone else who cares to test the code. > > Hi David, > > I justed wanted to come back on this report and ask if there is any > progress? It would be nice to get Xref working within TeX buffers. > > TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Apr 2024 13:06:55 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 22 09:06:54 2024 Received: from localhost ([127.0.0.1]:45956 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rytNm-0000OW-Il for submit <at> debbugs.gnu.org; Mon, 22 Apr 2024 09:06:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51338) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1rytNh-0000NW-GG for 53749 <at> debbugs.gnu.org; Mon, 22 Apr 2024 09:06:52 -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 <arash@HIDDEN>) id 1rytNJ-00012B-Fx; Mon, 22 Apr 2024 09:06:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=COC37xvPPdk9JwImAhHDcJn72qW0mVzg/ChMZSUpVk4=; b=ZLPUJmCNdUdSS3z8phal MPW5rcFTioViFu+OVZYg+eerzBU8dgK1tkqt8v/4caKrYu1w4sQfStFjBUJl3iMeXibtjt1yz+r+z Qj5cxK8+rk1N8qOMnmduj2nvywFuFiRnSQ+FkFf9SLGJo7vss9TmtXh+NH5ZYkHGN7YFx5CGqvj0i GLgdzYje5tEd6Ij/MHvxfDujB98Fw6C4gm+HqLtEd9mUmJ1QZ7NBGvdkYzASzxlHmUXCcMAkmSh24 BqU2MiuGiIWyy8Di/w2HxIO2ImowNXs8Julh2LdIrZoMx+dDUR87hdYx8BE14ZlEuIrqU3uvHmXYQ CVZ+vBWP5R0rIw==; From: Arash Esbati <arash@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> (David Fussner's message of "Sun, 17 Sep 2023 09:49:46 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> Date: Mon, 22 Apr 2024 15:06:06 +0200 Message-ID: <m24jbtim2p.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN>, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (---) David Fussner <dfussner@HIDDEN> writes: > Thanks for the clarifications. If you look at the current patch to > tex-mode.el, there's one function call added to TeX-mode-hook, mainly > for my own testing purposes, but no matter what the final patch looks > like it should only similarly require a single function call in an > AUCTeX hook to activate the new xref code there, along with one in > tex-common-initialization for the in-tree modes. If and when all > parties are satisfied by the patch I'll certainly be in touch with you > to find out how you'd prefer to handle activating it (or not) in > AUCTeX. The current state of affairs is a convenience for me and for > anyone else who cares to test the code. Hi David, I justed wanted to come back on this report and ask if there is any progress? It would be nice to get Xref working within TeX buffers. TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 17 Sep 2023 08:50:19 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 17 04:50:19 2023 Received: from localhost ([127.0.0.1]:49025 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qhnTt-0001RC-5v for submit <at> debbugs.gnu.org; Sun, 17 Sep 2023 04:50:19 -0400 Received: from mail-pg1-x534.google.com ([2607:f8b0:4864:20::534]:58374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qhnTo-0001Qs-6h for 53749 <at> debbugs.gnu.org; Sun, 17 Sep 2023 04:50:15 -0400 Received: by mail-pg1-x534.google.com with SMTP id 41be03b00d2f7-577f6b414a4so2905429a12.0 for <53749 <at> debbugs.gnu.org>; Sun, 17 Sep 2023 01:50:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1694940599; x=1695545399; 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=ZSF8pGd6O/0Mqz62bpL80UTm9fkQesJznsP8QFr1pwY=; b=dKiqv0m7+aZ6IS3Z0O2GWx6GFiAJuwOhNtH+VIwfpkT0dIDcgLma/Bj5dc8VCppAyZ 818Vjw5dE0yFHBGNUy1xiZRih03/2emDls+GcfupZzQnmHaVz0RT9nR+ofhzY/K/Nff/ /oB3hxNkkBPgV8reHYRYlw43nakg/hblM+SBmhAhRdvxMMrl5UPdJcMw8atoBct6wzl4 AfzsDfheIdHNZI7UgrWRd1UkkEXvDiWB3RM4jRIVYFoFz8+KU/wVhSmCvbGA1yGVA28K ORwxhCTmi9BtVlbVYEXMkIDrepujRw43OU4faskclGYThDmrCbwTIQCjAXexBAVqR2St ucrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694940599; x=1695545399; 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=ZSF8pGd6O/0Mqz62bpL80UTm9fkQesJznsP8QFr1pwY=; b=iMfER/GUCkRvwoBW5OtencVTBEZa3mztCs5x0kBMB/1QvqNs0y0j/Qf+dHQ+nAIiVM T8ZedBjAdDsfz9JteAShi7o+DpAUl+y+OL9J31BnaghEmsNOR2EBMhkRgpwzoBNQxSkx 6HF6XeHCf30OSLDxPmem/tut+TQBSZnG5lq1n0z5p5eJj1fm7t6ViCnTpW5E3v0AWAgw sf1BQby1XxH+iz2wB1ccrIcKxjxYoG9PYbFgarrnqG8DO8Tq4Lhpt5EJe2kQgcS9AKW8 4E4U5Lx7OYMZ7LDfj5SQZnt1Za3l6gWjW3e3I80XCkdh7GuFrFCh3Wut9mYIXYONAhdS 7BZQ== X-Gm-Message-State: AOJu0YwvFnbRt4SyZlrNAGc9Jy1//6NbYjA/ItBEUocN1eAHuSueANTU gWKnFmXZLtK+h9xpm30J9ulKR+OF64vLm3/qkFk= X-Google-Smtp-Source: AGHT+IF/GM48GS+eh1ceKLKVBNRzNz0OGi+8UxLfIbaKuoyFcdE/kHtFxWMwd6EUSV+vPaoWAkcslaffGD/HNe9zKQk= X-Received: by 2002:a17:90b:1e44:b0:263:f630:228f with SMTP id pi4-20020a17090b1e4400b00263f630228fmr6146624pjb.23.1694940598656; Sun, 17 Sep 2023 01:49:58 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> <65793.1694843596@localhost> In-Reply-To: <65793.1694843596@localhost> From: David Fussner <dfussner@HIDDEN> Date: Sun, 17 Sep 2023 09:49:46 +0100 Message-ID: <CADF+RtikqxOW0XpwGTWWuGNTWjz3-MWMcO6U65Tta3PJjkRXqw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Ikumi Keita <ikumi@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Tassilo Horn <tsdh@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, larsi@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) Hi Tassilo and Keita, Thanks for the clarifications. If you look at the current patch to tex-mode.el, there's one function call added to TeX-mode-hook, mainly for my own testing purposes, but no matter what the final patch looks like it should only similarly require a single function call in an AUCTeX hook to activate the new xref code there, along with one in tex-common-initialization for the in-tree modes. If and when all parties are satisfied by the patch I'll certainly be in touch with you to find out how you'd prefer to handle activating it (or not) in AUCTeX. The current state of affairs is a convenience for me and for anyone else who cares to test the code. Thanks again, David. On Sat, 16 Sept 2023 at 06:53, Ikumi Keita <ikumi@HIDDEN> wrote: > > Hi all, > > >>>>> Tassilo Horn <tsdh@HIDDEN> writes: > >>> Do AUCTeX modes inherit from tex-mode? > > > Not currently but in Keita's feature/fix-mode-names-overlap branch > > Currently, no. In feater/fix-mode-names-overlap branch, the major mode > iheritance relations are: > > text-mode --+-- TeX-mode > +-- Texinfo-mode > > TeX-mode --+-- plain-TeX-mode > +-- LaTeX-mode > +-- ConTeXt-mode > > plain-TeX-mode --+-- AmSTeX-mode > +-- japanese-plain-TeX-mode > > LaTeX-mode --+-- docTeX-mode > +-- japanese-LaTeX-mode > > (There are ConTeXt-en-mode and ConTeXt-nl-mode as well, but my current > personal plain is to delete them.) > > I don't think it's a good idea to inherit from tex-mode; it isn't > diffcult to change the "top" mode from text-mode with tex-mode, but in > that case LaTeX-mode can't have both built-in latex-mode and TeX-mode as > its parent mode. > > (Maybe an exception is Texinfo-mode. It would make sense to have > built-in texinfo-mode as parent of Texinfo-mode. If there is a good > reason to do so, I won't object strongly.) > > > which will probably become AUCTeX 14, I guess. > > I hope so. :-) > > >>> Or all call tex-common-initialization? Then you could set that > >>> variable locally inside that function once. > > > Again, not right now but probably in the future. > > Currently, they don't call tex-common-initialization, but we can do so > in TeX-mode. (But I haven't consider its pros and cons deeply yet.) > > Best regards, > Ikumi Keita > #StandWithUkraine #StopWarInUkraine
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 16 Sep 2023 05:53:29 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Sep 16 01:53:29 2023 Received: from localhost ([127.0.0.1]:45223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qhOFF-0002KQ-7T for submit <at> debbugs.gnu.org; Sat, 16 Sep 2023 01:53:29 -0400 Received: from smtp1a.inetd.co.jp ([210.129.88.11]:54562) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <ikumi@HIDDEN>) id 1qhOFC-0002KC-70 for 53749 <at> debbugs.gnu.org; Sat, 16 Sep 2023 01:53:28 -0400 Received: from localhost (42-144-34-11.rev.home.ne.jp [42.144.34.11]) by smtp1a.inetd.co.jp (Postfix) with ESMTPA id 354885C; Sat, 16 Sep 2023 14:53:17 +0900 (JST) From: Ikumi Keita <ikumi@HIDDEN> To: Tassilo Horn <tsdh@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-reply-to: <87cyyj9rpp.fsf@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> <87cyyj9rpp.fsf@HIDDEN> Comments: In-reply-to Tassilo Horn <tsdh@HIDDEN> message dated "Fri, 15 Sep 2023 20:45:45 +0200." X-Mailer: MH-E 8.6+git; nmh 1.7.1; Emacs 29.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <65792.1694843596.1@localhost> Date: Sat, 16 Sep 2023 14:53:16 +0900 Message-ID: <65793.1694843596@localhost> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, dfussner@HIDDEN, Stefan Monnier <monnier@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN>, larsi@HIDDEN, Eli Zaretskii <eliz@HIDDEN>, stefankangas@HIDDEN 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 (-) Hi all, >>>>> Tassilo Horn <tsdh@HIDDEN> writes: >>> Do AUCTeX modes inherit from tex-mode? > Not currently but in Keita's feature/fix-mode-names-overlap branch Currently, no. In feater/fix-mode-names-overlap branch, the major mode iheritance relations are: text-mode --+-- TeX-mode +-- Texinfo-mode TeX-mode --+-- plain-TeX-mode +-- LaTeX-mode +-- ConTeXt-mode plain-TeX-mode --+-- AmSTeX-mode +-- japanese-plain-TeX-mode LaTeX-mode --+-- docTeX-mode +-- japanese-LaTeX-mode (There are ConTeXt-en-mode and ConTeXt-nl-mode as well, but my current personal plain is to delete them.) I don't think it's a good idea to inherit from tex-mode; it isn't diffcult to change the "top" mode from text-mode with tex-mode, but in that case LaTeX-mode can't have both built-in latex-mode and TeX-mode as its parent mode. (Maybe an exception is Texinfo-mode. It would make sense to have built-in texinfo-mode as parent of Texinfo-mode. If there is a good reason to do so, I won't object strongly.) > which will probably become AUCTeX 14, I guess. I hope so. :-) >>> Or all call tex-common-initialization? Then you could set that >>> variable locally inside that function once. > Again, not right now but probably in the future. Currently, they don't call tex-common-initialization, but we can do so in TeX-mode. (But I haven't consider its pros and cons deeply yet.) Best regards, Ikumi Keita #StandWithUkraine #StopWarInUkraine
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 15 Sep 2023 19:12:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Sep 15 15:12:12 2023 Received: from localhost ([127.0.0.1]:44790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qhEEe-0006zl-Ii for submit <at> debbugs.gnu.org; Fri, 15 Sep 2023 15:12:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43426) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <tsdh@HIDDEN>) id 1qhEEb-0006yf-4s for 53749 <at> debbugs.gnu.org; Fri, 15 Sep 2023 15:12:10 -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 <tsdh@HIDDEN>) id 1qhEEM-0001fz-Dk; Fri, 15 Sep 2023 15:11:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-reply-to:Date:Subject:To:From: References; bh=MimMsDZskqyGYlfUQs16VjhR6Pb0NO1wnLNI4ZdoaXI=; b=M8jRwCBdsw/vlq DH5o1tdPM2aFdGXxYM0fN2S83DQcuXw5GTKGBQ/plPG6XXNt7TNAyHosDefahAIsuylv6yP1Z7jrl 9U3sZGiYZRLhgLpL8BPOtP0wkAOFhMcKjlz5xrlSX6U5oPmqn4IbWTOXHPY/dvayldhviqZr1W5kF JkoXtTXeapZDbbrgatBA5EdLzDcviQJLKyoTwfnvlXP04nqD0q73RvRLjyFueSLCmglDRCVzn9oHx 7BptR8Ia1ydXcF8fbBprlB7QiClqDOGgy0HiPO+RntFKRj+xZBioow0sWyVlpsy36H2Cp1EqqtS2C bffBFn9MgpOyMNrI34Jw==; X-ME-Sender: <xms:eKwEZZQ_uDLYYX9wS3msfpLJFYd8qpTZC7toGGvxOh8HBYEL7didSA> <xme:eKwEZSwm-F2WBgENUl6iO9J4AvWFZGps2fNla6o0jGAmMPKYwRJ47e2FRk_O6THFk j16ZWouC-1owg> X-ME-Received: <xmr:eKwEZe0g5ER--mc_zISBDt577lZhlIh_3uxTnuoaI0MeQeGg04mSvNZybm5xoLgkzrHwV9SMVTbxUOhU4Nqgkpj_SjTDumc> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejvddgudefudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpehffgfhvfevufffjgfkgggtsehttdertddtredtnecuhfhrohhmpefvrghs shhilhhoucfjohhrnhcuoehtshguhhesghhnuhdrohhrgheqnecuggftrfgrthhtvghrnh epudejtdehuddvleffjeekteegvdehleehvdeufefhueekkeekhedvgfeggeffvefgnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhrnh domhgvshhmthhprghuthhhphgvrhhsohhnrghlihhthidqkeeijeefkeejkeegqdeifeeh vdelkedqthhsughhpeepghhnuhdrohhrghesfhgrshhtmhgrihhlrdhfmh X-ME-Proxy: <xmx:eKwEZRBfFnBXHSZpFudUg-_8N1JPaVvx8jpBelAtGkXqKK0v7Ev-Cg> <xmx:eKwEZSie8pEpllUZMNB8bD8zWujVzgtusqkJGoXpjgv_zE7H9EBZPQ> <xmx:eKwEZVrjKxx9_84uXzJm8DeV_JU6bd3PpPwpuKD6mOJbvO0f6JLwtQ> <xmx:eawEZdWxxEuSH-nzncrfakvMkVcVsK-wfUi-m9g3DbsVgl3WZKbuqQ> Feedback-ID: ib2b94485:Fastmail References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <831qf1mgjl.fsf@HIDDEN> User-agent: mu4e 1.11.17; emacs 30.0.50 From: Tassilo Horn <tsdh@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Date: Fri, 15 Sep 2023 20:45:45 +0200 In-reply-to: <831qf1mgjl.fsf@HIDDEN> Message-ID: <87cyyj9rpp.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Ikumi Keita <ikumi@HIDDEN>, dfussner@HIDDEN, stefankangas@HIDDEN, Dmitry Gutov <dgutov@HIDDEN>, larsi@HIDDEN, Stefan Monnier <monnier@HIDDEN> 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 (---) Eli Zaretskii <eliz@HIDDEN> writes: Hi Eli & all, thanks for inviting me to the discussion. I'm adding Keita, too, because he's currently the by far most active AUCTeX developer. >> Do AUCTeX modes inherit from tex-mode? Not currently but in Keita's feature/fix-mode-names-overlap branch which will probably become AUCTeX 14, I guess. >> Or all call tex-common-initialization? Then you could set that >> variable locally inside that function once. Again, not right now but probably in the future. >> All in all, it might not be wise to modify the behavior of >> third-party packages from inside Emacs this way (they might have >> other expectations, or there's going to appear a new major mode that >> needs the same treatment anyway). >> >> Setting a variable to be used through mode inheritance or delegation >> is fine, but if that doesn't help, I would probably stop at defining >> a helper function or two and documenting how it should be used. And >> then maybe work with AUCTeX people to get the remaining necessary >> changes in from their side (or just leaving that up to the user, >> depending on how functional the default config ends up being). That sounds reasonable. Bye, Tassilo
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 15 Sep 2023 06:47:59 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Sep 15 02:47:59 2023 Received: from localhost ([127.0.0.1]:41885 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qh2cQ-0005jL-7M for submit <at> debbugs.gnu.org; Fri, 15 Sep 2023 02:47:59 -0400 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:55385) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qh2cN-0005iR-6J for 53749 <at> debbugs.gnu.org; Fri, 15 Sep 2023 02:47:56 -0400 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-31fa666000dso1607379f8f.2 for <53749 <at> debbugs.gnu.org>; Thu, 14 Sep 2023 23:47:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20230601; t=1694760463; x=1695365263; 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=A5VBnLWqFKIETrCgLRfZktivEcRHktust55c5PCG9y8=; b=TRl0GhaAjTqEYPSpxf85IM37qZffkUOebqUhFw4tgSZcOgi+Pf3dQ2BoOzDBbpKc5o ZhhdvrnHEkEnBNOhpfqwUK0cEkNcPeWOeWF+Eg0KA38U9sjOFf9kh8YYrLiCIqvoihzM MA69+sT8IeukGOK9/Q46nnaJIVsZFhYW+n+DXdkXnSM1z3UjoR2tK1U0Ws7ljoHdwnvL URjIEk3ESmNSkFwljyhqe2h/M/17Kc7bQ7JM+HayQUUH0W77nwmv17DTVdruyBKQziZJ 56wD7lib4IPbeOyFFXN4Vjx7Yh/nIaUrkiIoCmuiAETXcOBJoLdAfDKlpiZSK9KBwXdP Bq0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694760463; x=1695365263; 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=A5VBnLWqFKIETrCgLRfZktivEcRHktust55c5PCG9y8=; b=uWhWLvQiOgyy5QYUa7DaXj4CD2H+YHjFIp9hp5BOZxU+70Bb0xSPRW2TKhfVOysLbc 9KWte8G5oqCOtWCGGlHrrpX9M/xgIpj9LuRmnjM2VYYoBP77WO4Avrve6PXSLKbT4EP5 Tro7L9WSym19eMMU04XPW/h0Rkkv8vezltsd692LdkdTeeoAIt9t4Py6ORzDvzUvh0gR XgPdkxC/QZrokjsNX7uaPhJ5CG/upaOGxYdwh6SmPp3oBjupSPdqe2AOue/xNKKkH8lE k9US3c/0ekqVhKWNax1wYZl6sBqORKrqburi0xGAZcxgKtWbaX4BB04RK/v8ea+qEOpg b0Fw== X-Gm-Message-State: AOJu0Yx/loB5P0h7UW485mlpqQAoRoBzE59rNLf4I2/ZkNVVx1pfYiJH ou7+A4uvZvpfRCsUvKEV4/et380HbHI2ojL4T4yh2pPntR8= X-Google-Smtp-Source: AGHT+IHObs5SPCI7PA5ftADb/+NgwkAJtneNrviNGeKFkPChr2X1n302k0cqe2CWgKci3wVYXlrnOfkmM4NA+V2JdFY= X-Received: by 2002:a5d:408b:0:b0:31f:95ec:9099 with SMTP id o11-20020a5d408b000000b0031f95ec9099mr576003wrp.33.1694760462700; Thu, 14 Sep 2023 23:47:42 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <CADF+RtjXg_BMkeWV-5GmPu8LVZSc+cCsDQ9Wk=00c1H=anAUUg@HIDDEN> <891e916e-d05b-b82b-5d3f-148f097d52cc@HIDDEN> In-Reply-To: <891e916e-d05b-b82b-5d3f-148f097d52cc@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Fri, 15 Sep 2023 07:47:29 +0100 Message-ID: <CADF+Rth0qE5ACbneSQgwOuk0_Zz=D_uFm00M=5A5SNoGEwjYUg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000005bd4030605602bd4" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Eli Zaretskii <eliz@HIDDEN>, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> 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 (-) --0000000000005bd4030605602bd4 Content-Type: text/plain; charset="UTF-8" Thanks Dmitry, I'll make another stab at a "new" backend, as suggested. I'll have a look at the escape char thing, too, and see how I feel about dropping it. It shouldn't take 18 months this time! Best, David. On Fri, 15 Sept 2023, 00:55 Dmitry Gutov, <dgutov@HIDDEN> wrote: > Hi David, > > On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > Once again, many thanks for the feedback. I'm still not certain I > > agree about the risks involved in creating a new "thing" type, as it > > really only appears in a small number of commands and then only in TeX > > buffers, and generally I tried to design the code to keep out of the > > way of anything outside of such buffers, but needless to say you see > > further and more clearly than I can. I've been reviewing your comments > > and my code, and have a few ideas and questions about how to go > > forward. Though I haven't coded it yet, it's possible that the > > simplest (and least intrusive) approach to follow would do something > > like this: > > I agree that the risks are probably low, and my review stems from the > general approach that doing global modifications to the environment can > lead to problems. It might or might not happen in your case. If anything > happens, though, the same modifications tend to make it harder to > investigate, e.g. to find where a particular bit of behavior comes from. > So the more local an implementation of a feature can be, is generally > the better. > > But I'm no maintainer of tex-mode, and whatever choices are made here > won't have effect outside of TeX, so if somebody wants to disagree with > me, they're more than welcome to. > > > 1. Get rid of the new texsymbol "thing" and just use a buffer-local > > value of find-tag-default-function and a rather more thoroughly > > modified syntax table to control what "symbol" means, but _only_ in > > the context of commands that use find-tag-default-function. I think > > I'd lose the ability to change the behavior of > > isearch-forward-thing-at-point and project-find-regexp, as I can't see > > how to temporarily modify the syntax table there, though perhaps I'm > > missing something. > > I'm suggesting this approach together with defining a "new" backend for > TeX. Quotes because while it's going to have its own name, it's mostly > going to perform forwarding to an existing backend (etags). > > This should make it practical for you to treat identifiers in > xref-backend-definitions differently from that in > xref-backend-references and xref-backend-apropos. > > If you define find-tag-default-function, you don't have to change the > syntax table too: it might be easier to search around with a regexp. > > But for the new backend, you can also define the method > xref-backend-identifier-at-point, where you would invoke the necessary > bounds-of-thing logic. Then you won't need a change in > find-tag-default-function. > > Either way, though, the major modes will need to set up > xref-backend-functions instead (with add-hook). This could also be done > in a minor mode, which you'd enable in any TeX-related major modes that > you use. > > > 2. Simply eliminate the TeX escape character entirely, both from tag > > names in a TAGS file and from any thing-at-point in a TeX buffer. I > > think this would eliminate the need to distinguish among the various > > xref commands in terms of whether they can or can't handle the escape > > character. It would also eliminate the need for the new user option in > > etags.c, as there would no longer be any code to cope with the escape > > character when finding a (thing-at-point 'symbol). This is slightly > > less powerful than the default I proposed, but there are probably many > > use cases where it won't matter at all (though it would for my own, > > possibly eccentric, use case). > > I wanted to ask whether including the backslash is important enough (it > should not matter too much for disambiguation), but I figured it must > be, otherwise you wouldn't go to all this effort. > > If not, it would simplify things a lot, though. > --0000000000005bd4030605602bd4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Thanks=C2=A0Dmitry,=C2=A0<div dir=3D"auto"><br></div><div= dir=3D"auto">I'll make another stab at a "new" backend, as s= uggested. I'll have a look at the escape char thing, too, and see how I= feel about dropping it. It shouldn't take 18 months this time!</div><d= iv dir=3D"auto"><br></div><div dir=3D"auto">Best,</div><div dir=3D"auto"><b= r></div><div dir=3D"auto">David.=C2=A0</div></div><br><div class=3D"gmail_q= uote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, 15 Sept 2023, 00:55 Dmi= try Gutov, <<a href=3D"mailto:dgutov@HIDDEN">dgutov@HIDDEN</a>>= wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8= ex;border-left:1px #ccc solid;padding-left:1ex">Hi David,<br> <br> On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the <br> Swiss army knife of text editors wrote:<br> <br> > Once again, many thanks for the feedback. I'm still not certain I<= br> > agree about the risks involved in creating a new "thing" typ= e, as it<br> > really only appears in a small number of commands and then only in TeX= <br> > buffers, and generally I tried to design the code to keep out of the<b= r> > way of anything outside of such buffers, but needless to say you see<b= r> > further and more clearly than I can. I've been reviewing your comm= ents<br> > and my code, and have a few ideas and questions about how to go<br> > forward. Though I haven't coded it yet, it's possible that the= <br> > simplest (and least intrusive) approach to follow would do something<b= r> > like this:<br> <br> I agree that the risks are probably low, and my review stems from the <br> general approach that doing global modifications to the environment can <br= > lead to problems. It might or might not happen in your case. If anything <b= r> happens, though, the same modifications tend to make it harder to <br> investigate, e.g. to find where a particular bit of behavior comes from. <b= r> So the more local an implementation of a feature can be, is generally <br> the better.<br> <br> But I'm no maintainer of tex-mode, and whatever choices are made here <= br> won't have effect outside of TeX, so if somebody wants to disagree with= <br> me, they're more than welcome to.<br> <br> > 1. Get rid of the new texsymbol "thing" and just use a buffe= r-local<br> > value of find-tag-default-function and a rather more thoroughly<br> > modified syntax table to control what "symbol" means, but _o= nly_ in<br> > the context of commands that use find-tag-default-function. I think<br= > > I'd lose the ability to change the behavior of<br> > isearch-forward-thing-at-point and project-find-regexp, as I can't= see<br> > how to temporarily modify the syntax table there, though perhaps I'= ;m<br> > missing something.<br> <br> I'm suggesting this approach together with defining a "new" b= ackend for <br> TeX. Quotes because while it's going to have its own name, it's mos= tly <br> going to perform forwarding to an existing backend (etags).<br> <br> This should make it practical for you to treat identifiers in <br> xref-backend-definitions differently from that in <br> xref-backend-references and xref-backend-apropos.<br> <br> If you define find-tag-default-function, you don't have to change the <= br> syntax table too: it might be easier to search around with a regexp.<br> <br> But for the new backend, you can also define the method <br> xref-backend-identifier-at-point, where you would invoke the necessary <br> bounds-of-thing logic. Then you won't need a change in <br> find-tag-default-function.<br> <br> Either way, though, the major modes will need to set up <br> xref-backend-functions instead (with add-hook). This could also be done <br= > in a minor mode, which you'd enable in any TeX-related major modes that= <br> you use.<br> <br> > 2. Simply eliminate the TeX escape character entirely, both from tag<b= r> > names in a TAGS file and from any thing-at-point in a TeX buffer. I<br= > > think this would eliminate the need to distinguish among the various<b= r> > xref commands in terms of whether they can or can't handle the esc= ape<br> > character. It would also eliminate the need for the new user option in= <br> > etags.c, as there would no longer be any code to cope with the escape<= br> > character when finding a (thing-at-point 'symbol). This is slightl= y<br> > less powerful than the default I proposed, but there are probably many= <br> > use cases where it won't matter at all (though it would for my own= ,<br> > possibly eccentric, use case).<br> <br> I wanted to ask whether including the backslash is important enough (it <br= > should not matter too much for disambiguation), but I figured it must <br> be, otherwise you wouldn't go to all this effort.<br> <br> If not, it would simplify things a lot, though.<br> </blockquote></div> --0000000000005bd4030605602bd4--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 23:55:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 14 19:55:31 2023 Received: from localhost ([127.0.0.1]:41471 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgwBF-0000eL-Ck for submit <at> debbugs.gnu.org; Thu, 14 Sep 2023 19:55:31 -0400 Received: from forward500b.mail.yandex.net ([178.154.239.144]:36956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1qgwB9-0000e5-EQ for 53749 <at> debbugs.gnu.org; Thu, 14 Sep 2023 19:55:27 -0400 Received: from mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net [IPv6:2a02:6b8:c12:5b86:0:640:36b7:0]) by forward500b.mail.yandex.net (Yandex) with ESMTP id 4D3B25EC47; Fri, 15 Sep 2023 02:55:15 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id Ctqi0OPDcqM0-vMPGMJVR; Fri, 15 Sep 2023 02:55:14 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694735714; bh=S0NfX6R6EdYmuKQGejBrE2ZCz87Ck0YvppztuUB4UJ8=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=mnv1dxPXVs692q9E3bM0+BDcxV1IoF/AswaFqvbiKyfgs8dxw7znYscy6aCAmEcH9 Ur4Y8CqCHvpeFiaEeLfiadgV7w4bBN0yzPJVi4zGpAOvibFHgpHMhL6jCUDG6Q6EaQ bGcq99uVISMEbYcXCLazGzt6s2T0cG2RHNprZ11Y= Authentication-Results: mail-nwsmtp-smtp-production-main-46.myt.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 1D81B27C005B; Thu, 14 Sep 2023 19:55:12 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 14 Sep 2023 19:55:12 -0400 X-ME-Sender: <xms:X50DZXCPRnPvTnNQuJJ5d1VDggN273Siw7dX5glmIURtsQFiZcMOyA> <xme:X50DZdjOHx08_RiHzC3hgNyRhOdISMbJ9l_ipbOZ35MQZKs6v4LkLaVrwrfsCQS9p majzryWKFRR7Ots4SU> X-ME-Received: <xmr:X50DZSl64fAmxkZgNMR2awH5lfiNAg62WNdB9t-DH63kWtuHaoi_4kd5BNR7E4U> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudejuddgvdejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:X50DZZxFcZT09-rtJdIBXMl78z_rFfgKffIlxOehzr0t_NGM-3w3Qw> <xmx:X50DZcSP2KgInMZJaSRxJM0ip_xMrYYhuNHVF8gygmM9luGe3PxbUA> <xmx:X50DZcbq9Xbn2_z5_eXuJR7atuZBI7xxRyJ8IPiuXBIoTBQbz2VcuA> <xmx:X50DZSejyuCS2FMoRJYwoB25WrZ94i60ZB_AnTQzwU-9LOlfbYlo_g> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 14 Sep 2023 19:55:10 -0400 (EDT) Message-ID: <891e916e-d05b-b82b-5d3f-148f097d52cc@HIDDEN> Date: Fri, 15 Sep 2023 02:55:08 +0300 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#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> <CADF+RtjXg_BMkeWV-5GmPu8LVZSc+cCsDQ9Wk=00c1H=anAUUg@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+RtjXg_BMkeWV-5GmPu8LVZSc+cCsDQ9Wk=00c1H=anAUUg@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> 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.5 (--) Hi David, On 14/09/2023 19:11, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Once again, many thanks for the feedback. I'm still not certain I > agree about the risks involved in creating a new "thing" type, as it > really only appears in a small number of commands and then only in TeX > buffers, and generally I tried to design the code to keep out of the > way of anything outside of such buffers, but needless to say you see > further and more clearly than I can. I've been reviewing your comments > and my code, and have a few ideas and questions about how to go > forward. Though I haven't coded it yet, it's possible that the > simplest (and least intrusive) approach to follow would do something > like this: I agree that the risks are probably low, and my review stems from the general approach that doing global modifications to the environment can lead to problems. It might or might not happen in your case. If anything happens, though, the same modifications tend to make it harder to investigate, e.g. to find where a particular bit of behavior comes from. So the more local an implementation of a feature can be, is generally the better. But I'm no maintainer of tex-mode, and whatever choices are made here won't have effect outside of TeX, so if somebody wants to disagree with me, they're more than welcome to. > 1. Get rid of the new texsymbol "thing" and just use a buffer-local > value of find-tag-default-function and a rather more thoroughly > modified syntax table to control what "symbol" means, but _only_ in > the context of commands that use find-tag-default-function. I think > I'd lose the ability to change the behavior of > isearch-forward-thing-at-point and project-find-regexp, as I can't see > how to temporarily modify the syntax table there, though perhaps I'm > missing something. I'm suggesting this approach together with defining a "new" backend for TeX. Quotes because while it's going to have its own name, it's mostly going to perform forwarding to an existing backend (etags). This should make it practical for you to treat identifiers in xref-backend-definitions differently from that in xref-backend-references and xref-backend-apropos. If you define find-tag-default-function, you don't have to change the syntax table too: it might be easier to search around with a regexp. But for the new backend, you can also define the method xref-backend-identifier-at-point, where you would invoke the necessary bounds-of-thing logic. Then you won't need a change in find-tag-default-function. Either way, though, the major modes will need to set up xref-backend-functions instead (with add-hook). This could also be done in a minor mode, which you'd enable in any TeX-related major modes that you use. > 2. Simply eliminate the TeX escape character entirely, both from tag > names in a TAGS file and from any thing-at-point in a TeX buffer. I > think this would eliminate the need to distinguish among the various > xref commands in terms of whether they can or can't handle the escape > character. It would also eliminate the need for the new user option in > etags.c, as there would no longer be any code to cope with the escape > character when finding a (thing-at-point 'symbol). This is slightly > less powerful than the default I proposed, but there are probably many > use cases where it won't matter at all (though it would for my own, > possibly eccentric, use case). I wanted to ask whether including the backslash is important enough (it should not matter too much for disambiguation), but I figured it must be, otherwise you wouldn't go to all this effort. If not, it would simplify things a lot, though.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 16:11:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 14 12:11:42 2023 Received: from localhost ([127.0.0.1]:40952 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgowP-0007gx-Jn for submit <at> debbugs.gnu.org; Thu, 14 Sep 2023 12:11:42 -0400 Received: from mail-pg1-x52f.google.com ([2607:f8b0:4864:20::52f]:52332) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qgowK-0007gi-VW for 53749 <at> debbugs.gnu.org; Thu, 14 Sep 2023 12:11:40 -0400 Received: by mail-pg1-x52f.google.com with SMTP id 41be03b00d2f7-56b2e689968so908736a12.0 for <53749 <at> debbugs.gnu.org>; Thu, 14 Sep 2023 09:11:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694707885; x=1695312685; 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=yClKgPrgkH0ijtbUZoAa+ts8E01p26jewN3Op7wFT6Y=; b=fppzqFe9Y7Ir216D293aOU2fb6jrVg2m9cIZDy5yn8mK5pEBV8TclBs9qzIpuHZZFU n9F9xrdOLkndpQYxvi8OCgVuip1a5qEmdiB5IT76KcodiEI63aKDz23h2GHMK8XIbJAR HWJnWhmDZHut+4QXSeHG5OTQ7YsMhBHXNf8vaGVwLan29hj8/kA2aQeHY9/Q/dpKqhgH BuAzuWGDE0Ja13/CWhf68Vr2DRJ0bYHEvMY7Nm4mZ9TqdWLtTHr5F2YmP6+VZmv7pgDO 8kvHU6GAySgP/KAiqmuqWvzw0a5DJotmoTm+RUoS5GiFWRVaiVC4f4MpsTOR63vEYgJu e7Rw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694707885; x=1695312685; 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=yClKgPrgkH0ijtbUZoAa+ts8E01p26jewN3Op7wFT6Y=; b=XyMvFiAmvd5Sgj8qVKz6LVcKti6FCmS/HMnnye1VNcwZDVaxIwWg1E+URYtosWXO88 llUYpqWLTFKciCYcEES5HTdah2NvpMi25ho574Zm1ez9Y3toPA9VKiCRwogboscmyYWQ z74IWVNq+0yaosmheRpzOrjq5okzuttDdNM6otG/wCHZtbMUQMOJQm1JqCWVuAFBpeqa Vp2uFsah91DEG9berQQe+I8ORtTh6LzTlHgr6TlmFkp2NjNlhTw4sZBIukovHiOEuwBt g5+j76AzyO6MQgj8g9hxpZin3BY9JFvSt/O5eaNRtc+Ea5mha+2Cb6EPj2BncdCKeB/c uiIQ== X-Gm-Message-State: AOJu0YzmZxLiUcw4pL0L1PgcLYipYm3OXFtrF9bF4r9cvNFtgzv7L99E gW8mtY4ioH+b+Qw6gjf2tcShJ2QHMR2V5+mBL3g= X-Google-Smtp-Source: AGHT+IG61FnwSQmCXmH3t+pgdEz698YFKHzZKoflutTzs5z4qykFXSirDm0lhGWH5mF/8XROSnhFCgy/nlH7d9tCGlc= X-Received: by 2002:a17:90b:164d:b0:270:1611:484b with SMTP id il13-20020a17090b164d00b002701611484bmr5433909pjb.41.1694707885068; Thu, 14 Sep 2023 09:11:25 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> In-Reply-To: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 14 Sep 2023 17:11:13 +0100 Message-ID: <CADF+RtjXg_BMkeWV-5GmPu8LVZSc+cCsDQ9Wk=00c1H=anAUUg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> 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 (-) Hi Dmitry, Once again, many thanks for the feedback. I'm still not certain I agree about the risks involved in creating a new "thing" type, as it really only appears in a small number of commands and then only in TeX buffers, and generally I tried to design the code to keep out of the way of anything outside of such buffers, but needless to say you see further and more clearly than I can. I've been reviewing your comments and my code, and have a few ideas and questions about how to go forward. Though I haven't coded it yet, it's possible that the simplest (and least intrusive) approach to follow would do something like this: 1. Get rid of the new texsymbol "thing" and just use a buffer-local value of find-tag-default-function and a rather more thoroughly modified syntax table to control what "symbol" means, but _only_ in the context of commands that use find-tag-default-function. I think I'd lose the ability to change the behavior of isearch-forward-thing-at-point and project-find-regexp, as I can't see how to temporarily modify the syntax table there, though perhaps I'm missing something. 2. Simply eliminate the TeX escape character entirely, both from tag names in a TAGS file and from any thing-at-point in a TeX buffer. I think this would eliminate the need to distinguish among the various xref commands in terms of whether they can or can't handle the escape character. It would also eliminate the need for the new user option in etags.c, as there would no longer be any code to cope with the escape character when finding a (thing-at-point 'symbol). This is slightly less powerful than the default I proposed, but there are probably many use cases where it won't matter at all (though it would for my own, possibly eccentric, use case). Does this sound to you like a plausible way forward? I've tried to reach out to the AUCTeX developers to see what they might want to do about setting the value of local variables there, and anything they come up with should be doable. Thanks again. On Thu, 14 Sept 2023 at 00:59, Dmitry Gutov <dgutov@HIDDEN> wrote: > > On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > >> These won't be affected either way, right? Because project-find-regexp > >> defaults its input to (thing-at-point 'symbol t), and isearch... > >> probably also uses "symbol" if you ask it to. > >> > >> So... why not just make tex-thingatpt-include-escape a boolean? What > >> commands need to be distinguished that way? I think 'find-tag' (it's > >> obsolete but still used sometimes) would need to obey this var as well. > > > > xref-find-apropos and xref-find-references don't work well (or at all) > > with the escape char included in the search string, so I was keeping > > that char away from them. (The buffer-local variables I manipulate for > > project-find-regexp and isearch-forward-thing-at-point have to do with > > ensuring they use the texsymbol thing in the first place -- see > > tex--symbol-or-texsymbol.) Does that make sense? > > Hmm, I suppose I skipped over that part of the patch too quickly. > > Here's a potential problem with replacing the notion of "symbol": some > other existing code (also working with TeX/LaTeX) might disagree, as it > might have some existing notion of what a "symbol" in those modes is (as > defined by the syntax table). > > In general, we change the notion of a symbol by either changing the > mode's syntax table, or by augmenting its effect using > syntax-propertize-function (which, for example, could propertize the > backslashes inside the buffer as "symbol constituent"). The latter might > actually be a change that would affect how 'M-x xref-find-references' > works (it will likely start to consider those \tags as symbol > occurrences together with the backslash). But like other changes of what > is considered to be a "symbol" in a major mode, it could conflict with > existing code. > > Anyway, I'm not saying you have to change the approach, but that's > something to be aware of. > > And to look at it from another direction: if the default implementation > of xref-find-references (and etags uses the very generic one) doesn't > work for you, perhaps it would be worth it to define a TeX-specific Xref > backend. That would perhaps take 20-30 lines of code total, most of them > delegating to the etags backend, or the default impl. But while > delegating, you can modify the passed argument - e.g. if it included a > backslash, you could forward it to the default impl for "find > references" without a backslash. Or - alternatively - call > (project-find-regexp "...") with a more complex regexp of your choice. > The first alternative could look like this: > > (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) > identifier) > (xref-backend-references 'etags (string-remove-prefix "\\" > identifier))) > > > I'll look at find-tag, too; thanks for pointing that out. > > Doing the above choice on the level of Xref backend's methods > would/should automatically make it work for all commands appropriately. > > >> Why not set the variable find-tag-default-function instead? That seems > >> easier and more appropriate to do inside a major mode function. > > > > I settled on putting the symbol on the modes because I thought it was > > simpler than setting the variable buffer-locally in all the in-tree > > and AUCTeX modes, but I'll revisit this and see whether I can come up > > with something better. > > Do AUCTeX modes inherit from tex-mode? Or all call > tex-common-initialization? Then you could set that variable locally > inside that function once. > > All in all, it might not be wise to modify the behavior of third-party > packages from inside Emacs this way (they might have other expectations, > or there's going to appear a new major mode that needs the same > treatment anyway). > > Setting a variable to be used through mode inheritance or delegation is > fine, but if that doesn't help, I would probably stop at defining a > helper function or two and documenting how it should be used. And then > maybe work with AUCTeX people to get the remaining necessary changes in > from their side (or just leaving that up to the user, depending on how > functional the default config ends up being).
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 06:10:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 14 02:10:34 2023 Received: from localhost ([127.0.0.1]:36614 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgfYg-00056I-CX for submit <at> debbugs.gnu.org; Thu, 14 Sep 2023 02:10:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qgfYd-000562-FL for 53749 <at> debbugs.gnu.org; Thu, 14 Sep 2023 02:10:33 -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 1qgfYR-0006gD-RR; Thu, 14 Sep 2023 02:10:19 -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=xntW5xfSLhAMvBSsazXkTqy2XzPg9UBcKv0LOUQ72GA=; b=Yf4KfEUyg1HR 1XXBX4mTITRHzO30bmG0bwnKp5SJH568fmrfvNqR4NtXnqVej+elNMR/sf+aXumXAi9cQA5w3Szso HFwjQ6wljyvvuEybTtfe8Q+g+pPEddX5C5ioPIyxNmLpaq9uE+8vtHP8DhAebjNPU9YahKiBheZMk lfR3E5mNV22FAOoBqrGjkSzlK+igASA2d7CEWMJa10cQb3mbKqvqr/IZlVNkJVJfFKWDdvrAwSvwI tJ+TDpDexCzYkhPqJNsOqExdCCvJQ1H4UMrvAVv95qBy633kDzbZlv3mD1XzoDWJDyYLMHtaQGmee 9+5eGRMa7J1KzwLkIKjmew==; Date: Thu, 14 Sep 2023 09:10:06 +0300 Message-Id: <831qf1mgjl.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, Tassilo Horn <tsdh@HIDDEN> In-Reply-To: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> (message from Dmitry Gutov on Thu, 14 Sep 2023 02:59:33 +0300) Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, larsi@HIDDEN, stefankangas@HIDDEN, dfussner@HIDDEN 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 (---) > Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, > Stefan Kangas <stefankangas@HIDDEN> > Date: Thu, 14 Sep 2023 02:59:33 +0300 > From: Dmitry Gutov <dgutov@HIDDEN> > > On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > >> These won't be affected either way, right? Because project-find-regexp > >> defaults its input to (thing-at-point 'symbol t), and isearch... > >> probably also uses "symbol" if you ask it to. > >> > >> So... why not just make tex-thingatpt-include-escape a boolean? What > >> commands need to be distinguished that way? I think 'find-tag' (it's > >> obsolete but still used sometimes) would need to obey this var as well. > > > > xref-find-apropos and xref-find-references don't work well (or at all) > > with the escape char included in the search string, so I was keeping > > that char away from them. (The buffer-local variables I manipulate for > > project-find-regexp and isearch-forward-thing-at-point have to do with > > ensuring they use the texsymbol thing in the first place -- see > > tex--symbol-or-texsymbol.) Does that make sense? > > Hmm, I suppose I skipped over that part of the patch too quickly. > > Here's a potential problem with replacing the notion of "symbol": some > other existing code (also working with TeX/LaTeX) might disagree, as it > might have some existing notion of what a "symbol" in those modes is (as > defined by the syntax table). > > In general, we change the notion of a symbol by either changing the > mode's syntax table, or by augmenting its effect using > syntax-propertize-function (which, for example, could propertize the > backslashes inside the buffer as "symbol constituent"). The latter might > actually be a change that would affect how 'M-x xref-find-references' > works (it will likely start to consider those \tags as symbol > occurrences together with the backslash). But like other changes of what > is considered to be a "symbol" in a major mode, it could conflict with > existing code. > > Anyway, I'm not saying you have to change the approach, but that's > something to be aware of. > > And to look at it from another direction: if the default implementation > of xref-find-references (and etags uses the very generic one) doesn't > work for you, perhaps it would be worth it to define a TeX-specific Xref > backend. That would perhaps take 20-30 lines of code total, most of them > delegating to the etags backend, or the default impl. But while > delegating, you can modify the passed argument - e.g. if it included a > backslash, you could forward it to the default impl for "find > references" without a backslash. Or - alternatively - call > (project-find-regexp "...") with a more complex regexp of your choice. > The first alternative could look like this: > > (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) > identifier) > (xref-backend-references 'etags (string-remove-prefix "\\" > identifier))) > > > I'll look at find-tag, too; thanks for pointing that out. > > Doing the above choice on the level of Xref backend's methods > would/should automatically make it work for all commands appropriately. > > >> Why not set the variable find-tag-default-function instead? That seems > >> easier and more appropriate to do inside a major mode function. > > > > I settled on putting the symbol on the modes because I thought it was > > simpler than setting the variable buffer-locally in all the in-tree > > and AUCTeX modes, but I'll revisit this and see whether I can come up > > with something better. > > Do AUCTeX modes inherit from tex-mode? Or all call > tex-common-initialization? Then you could set that variable locally > inside that function once. > > All in all, it might not be wise to modify the behavior of third-party > packages from inside Emacs this way (they might have other expectations, > or there's going to appear a new major mode that needs the same > treatment anyway). > > Setting a variable to be used through mode inheritance or delegation is > fine, but if that doesn't help, I would probably stop at defining a > helper function or two and documenting how it should be used. And then > maybe work with AUCTeX people to get the remaining necessary changes in > from their side (or just leaving that up to the user, depending on how > functional the default config ends up being). I think we should add Stefan and Tassilo (CCed) to this discussion, as they might have valuable comments about this.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 14 Sep 2023 05:14:45 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 14 01:14:45 2023 Received: from localhost ([127.0.0.1]:36507 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgegf-0000xF-Ep for submit <at> debbugs.gnu.org; Thu, 14 Sep 2023 01:14:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:34742) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qgegc-0000x3-UI for 53749 <at> debbugs.gnu.org; Thu, 14 Sep 2023 01:14:44 -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 1qgegR-0001g7-Gk; Thu, 14 Sep 2023 01:14:31 -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=v47V7zflxV3qhXbcqVKxt6HE1cDmbLU9qUsGi/qyKIU=; b=R5CSaPYJbuzT w8bixkCHnZAdKotsT4tLq86C/Wi5bGApTgQdE02Ic3R12lIMFKNgLawgmwwTOnzswfNKPy1QQIySZ /M3eA1Mnh5OYkDoiZ2UmoPQFKs4/W+uSMwRcWfXytXiR/OgdrpgC5Uu1P3A/5sUI+u8229W6nOABh EZdhLCOQcGVfPtBdW6BozyE5qGmuCadKrMSHDrGrC47DCUg95MzemBJ41vKJ2nytU+j/1lPFDqtUc QfDUP4XKTAhrKWzlQsNBjoHBx67E/Hq4tA7tqGWbvCmmNdpgGBuVVFdmWxMApWYXVQFEuj7CIoxTJ VtZwOen8cEFh2bdrtfyq9A==; Date: Thu, 14 Sep 2023 08:14:21 +0300 Message-Id: <83cyylmj4i.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: David Fussner <dfussner@HIDDEN> In-Reply-To: <CADF+RtiS=c4n20YvEv8wDsmNAaYyy1d_BdKB6U=04V6Dja+S0A@HIDDEN> (message from David Fussner on Wed, 13 Sep 2023 21:25:28 +0100) Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <83jzstnat6.fsf@HIDDEN> <CADF+RtiS=c4n20YvEv8wDsmNAaYyy1d_BdKB6U=04V6Dja+S0A@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, larsi@HIDDEN, stefankangas@HIDDEN, dgutov@HIDDEN 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: David Fussner <dfussner@HIDDEN> > Date: Wed, 13 Sep 2023 21:25:28 +0100 > Cc: Dmitry Gutov <dgutov@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, 53749 <at> debbugs.gnu.org, > Lars Ingebrigtsen <larsi@HIDDEN> > > I'll have a look at the man page, and also at an additional test for the suite. I did run the test suite, and > all the diffs were where they should be; I can send a patch that I have if you'd like, but if I'm going to > add tests maybe you'd prefer to wait? Sure, we will wait. There's no rush. Let's have a complete patch that covers all the aspects of this, and install it in one go. Meanwhile you will also have time to work on the other review comments. Thanks.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 23:59:53 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 19:59:53 2023 Received: from localhost ([127.0.0.1]:36332 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgZlx-0001Dy-39 for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 19:59:53 -0400 Received: from forward500a.mail.yandex.net ([178.154.239.80]:54266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1qgZlu-0001Do-0T for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 19:59:52 -0400 Received: from mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net [IPv6:2a02:6b8:c0f:170e:0:640:d60c:0]) by forward500a.mail.yandex.net (Yandex) with ESMTP id E35035EF86; Thu, 14 Sep 2023 02:59:41 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id dxpbg7HDSGk0-MlxyMtim; Thu, 14 Sep 2023 02:59:41 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694649581; bh=9s8lVceYnE3mxSr+P4DSmF7RV3st3l5iYSjJOgeOPIY=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=fgkTGqiM1vRdLugEeFiq1vMkijoryZkr1PRRYbD5FUOgjMjeMvWB3hhnp90LH8ztb ke/PIGaPOFMMuDJW4zp9Vwbg+/OvTBQFN3Nbk13Hg78yr3wjteQv5paN4A/yI1P2qZ B7X/ZpkLJgb6dlxKUx1iPDp7A1LzqYJah9ZWZzfE= Authentication-Results: mail-nwsmtp-smtp-production-main-64.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 3C30027C0060; Wed, 13 Sep 2023 19:59:39 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Wed, 13 Sep 2023 19:59:39 -0400 X-ME-Sender: <xms:6kwCZZV3wzmmwhemLo2ecEZcEnO5iWvHWKWiHdoRyHMubJPrTTQkdg> <xme:6kwCZZnk-_AIsUnoZnZgK_na4uxzPwoZJLtR2AcgTFMKWWViU8pSSAJ9PQ7LZAnha kyiXvAHXG5F4xB9Lkg> X-ME-Received: <xmr:6kwCZVYjDk1GhCuTHdORHP24lNB939ZCyTDtHoQfAzEXuOfJOhmDOfTjOfVY5w8> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeiledgvdekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:6kwCZcW77-4IRhO7LD68T8QAIOLEH37VFAB18ohFYuurUp46XqqMfQ> <xmx:6kwCZTm1pUpal5xtS_tsP2MXBZU65dB9I_hDyrEAAu44GdSF5EbtoA> <xmx:6kwCZZf70ah3YfnOAK7USqavjLbjQ9gAshEewmiK1t4jdF_kKcppDw> <xmx:60wCZYzQ8t9rh7AUdrGQ-pAcSZtrQFCjHQ807c_xXezuoxLCtD4Xgg> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Sep 2023 19:59:37 -0400 (EDT) Message-ID: <2c5c8afa-b57e-3156-d21c-5523cacb4d87@HIDDEN> Date: Thu, 14 Sep 2023 02:59:33 +0300 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#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> 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.5 (--) On 13/09/2023 20:01, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: >> These won't be affected either way, right? Because project-find-regexp >> defaults its input to (thing-at-point 'symbol t), and isearch... >> probably also uses "symbol" if you ask it to. >> >> So... why not just make tex-thingatpt-include-escape a boolean? What >> commands need to be distinguished that way? I think 'find-tag' (it's >> obsolete but still used sometimes) would need to obey this var as well. > > xref-find-apropos and xref-find-references don't work well (or at all) > with the escape char included in the search string, so I was keeping > that char away from them. (The buffer-local variables I manipulate for > project-find-regexp and isearch-forward-thing-at-point have to do with > ensuring they use the texsymbol thing in the first place -- see > tex--symbol-or-texsymbol.) Does that make sense? Hmm, I suppose I skipped over that part of the patch too quickly. Here's a potential problem with replacing the notion of "symbol": some other existing code (also working with TeX/LaTeX) might disagree, as it might have some existing notion of what a "symbol" in those modes is (as defined by the syntax table). In general, we change the notion of a symbol by either changing the mode's syntax table, or by augmenting its effect using syntax-propertize-function (which, for example, could propertize the backslashes inside the buffer as "symbol constituent"). The latter might actually be a change that would affect how 'M-x xref-find-references' works (it will likely start to consider those \tags as symbol occurrences together with the backslash). But like other changes of what is considered to be a "symbol" in a major mode, it could conflict with existing code. Anyway, I'm not saying you have to change the approach, but that's something to be aware of. And to look at it from another direction: if the default implementation of xref-find-references (and etags uses the very generic one) doesn't work for you, perhaps it would be worth it to define a TeX-specific Xref backend. That would perhaps take 20-30 lines of code total, most of them delegating to the etags backend, or the default impl. But while delegating, you can modify the passed argument - e.g. if it included a backslash, you could forward it to the default impl for "find references" without a backslash. Or - alternatively - call (project-find-regexp "...") with a more complex regexp of your choice. The first alternative could look like this: (cl-defmethod xref-backend-references ((_backend (eql 'tex-etags)) identifier) (xref-backend-references 'etags (string-remove-prefix "\\" identifier))) > I'll look at find-tag, too; thanks for pointing that out. Doing the above choice on the level of Xref backend's methods would/should automatically make it work for all commands appropriately. >> Why not set the variable find-tag-default-function instead? That seems >> easier and more appropriate to do inside a major mode function. > > I settled on putting the symbol on the modes because I thought it was > simpler than setting the variable buffer-locally in all the in-tree > and AUCTeX modes, but I'll revisit this and see whether I can come up > with something better. Do AUCTeX modes inherit from tex-mode? Or all call tex-common-initialization? Then you could set that variable locally inside that function once. All in all, it might not be wise to modify the behavior of third-party packages from inside Emacs this way (they might have other expectations, or there's going to appear a new major mode that needs the same treatment anyway). Setting a variable to be used through mode inheritance or delegation is fine, but if that doesn't help, I would probably stop at defining a helper function or two and documenting how it should be used. And then maybe work with AUCTeX people to get the remaining necessary changes in from their side (or just leaving that up to the user, depending on how functional the default config ends up being).
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 20:25:55 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 16:25:55 2023 Received: from localhost ([127.0.0.1]:36162 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgWQt-0007K4-9n for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 16:25:55 -0400 Received: from mail-pj1-x1029.google.com ([2607:f8b0:4864:20::1029]:61529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qgWQp-0007Jn-ND for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 16:25:54 -0400 Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-273fa877befso171630a91.2 for <53749 <at> debbugs.gnu.org>; Wed, 13 Sep 2023 13:25:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694636740; x=1695241540; 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=41QkY8Udl3BCpt6H7ulsqf4IpbMQRuTa8DSn6la7J6A=; b=aKdEUOgPcFsq47pyMOe5KNj4XJHTj0/LgEo3+nAlsPe4DF9mtbWQ6BuXGcCoo4MxNc 9CkPXBMzaHQcoxRsyMSEU6yXAT/ENGQP4Z7I69C1z23yEsx32yT0qpLrQGfD/GJsdbkX 2D0gOktxRAO2FJsmtpANmUVpz/Y5FVhGPwzDnuYtz3qRT7RXsFa6ouinSMRATTwY0iZP 033Wrv5wB7RmgxUtqB8od+NqmNFAwrWBdQD+6LUN0GsQvT5T6JRTbE6uhoTs7LYV7Tnr LPsNt+bBkKNqzpYfamX+d6geiLMrHIqjk0uzEIGUs1BL7Uv+XbCmRH4mEyswQB6PIxFH v0uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694636740; x=1695241540; 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=41QkY8Udl3BCpt6H7ulsqf4IpbMQRuTa8DSn6la7J6A=; b=sADfoHxQwthfYwyEfXUUZytMIihXb/llCynBddLeEY9M8bljx8SZzSHWG7emLAejez pmtVj9u1GS1y5yDBgEnyWZ3Nojb69wjH3RNIDYoUAb/StVM8fhPmSacilq4YLOSs+mbJ m5ijiOA2L/bbMg2P4QzHzglw/QPgM74v2pDyd5g8x6z1LljELwy5H+31Z7eZjWW3sSXG SGtir6anfEuGeZpVFl3yk5pwlRyWTMqev6dVr7ByjlTOMHqSue6GU/AK8I/Y9z0pNLYt FpO4usk2Kx3b1DMY6/nG1okibSp/EyF4qPJXOrNduGEYo+YVAviNYPhxpvHRM0R5OMYM 01yg== X-Gm-Message-State: AOJu0YxwUQHPgz7xBSiuvp0yXnRx+GlM0ikjHe64VflqxzM0ymIeJceh E9F1BjEQA1u0jAsFEoYlbqqrbhmdoMbcJOFQRNc= X-Google-Smtp-Source: AGHT+IFDNMFwmBzMwCSnhm+/q3otJV84L20ejZz6RPMW9NvMk3QRUzIPXPYPcpK/rrIpZIF9/VRmZ+Y2fJFrNPiRTKI= X-Received: by 2002:a17:90a:7806:b0:263:f7ce:335e with SMTP id w6-20020a17090a780600b00263f7ce335emr3377696pjk.43.1694636740318; Wed, 13 Sep 2023 13:25:40 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> <83jzstnat6.fsf@HIDDEN> In-Reply-To: <83jzstnat6.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 13 Sep 2023 21:25:28 +0100 Message-ID: <CADF+RtiS=c4n20YvEv8wDsmNAaYyy1d_BdKB6U=04V6Dja+S0A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Eli Zaretskii <eliz@HIDDEN> Content-Type: multipart/alternative; boundary="000000000000ee1e3e0605435cc4" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) --000000000000ee1e3e0605435cc4 Content-Type: text/plain; charset="UTF-8" Thanks Eli. I'll have a look at the man page, and also at an additional test for the suite. I did run the test suite, and all the diffs were where they should be; I can send a patch that I have if you'd like, but if I'm going to add tests maybe you'd prefer to wait? On Wed, 13 Sept 2023, 20:16 Eli Zaretskii, <eliz@HIDDEN> wrote: > > Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> > > Date: Wed, 13 Sep 2023 18:23:13 +0300 > > From: Dmitry Gutov <dgutov@HIDDEN> > > > > I'm skipping over the etags parser changes (others might comment, I'm > > just assuming they are good). > > They look OK to me at first glance, but we need to make sure the etags > tests still succeed after this change, and the new option should be > documented in the man page. Bonus points for adding to the etags test > suite a test where this option is activated. > --000000000000ee1e3e0605435cc4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Thanks Eli.<div dir=3D"auto"><br></div><div dir=3D"auto">= I'll have a look at the man page, and also at an additional test for th= e suite. I did run the test suite, and all the diffs were where they should= be; I can send a patch that I have if=C2=A0you'd like, but if I'm = going to add tests maybe you'd prefer to wait?</div></div><br><div clas= s=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Wed, 13 Sept 202= 3, 20:16 Eli Zaretskii, <<a href=3D"mailto:eliz@HIDDEN">eliz@HIDDEN</a= >> wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0= 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> Cc: <a href=3D"ma= ilto:53749 <at> debbugs.gnu.org" target=3D"_blank" rel=3D"noreferrer">53749@debb= ugs.gnu.org</a>, Lars Ingebrigtsen <<a href=3D"mailto:larsi@HIDDEN" ta= rget=3D"_blank" rel=3D"noreferrer">larsi@HIDDEN</a>><br> > Date: Wed, 13 Sep 2023 18:23:13 +0300<br> > From: Dmitry Gutov <<a href=3D"mailto:dgutov@HIDDEN" target=3D"_= blank" rel=3D"noreferrer">dgutov@HIDDEN</a>><br> > <br> > I'm skipping over the etags parser changes (others might comment, = I'm <br> > just assuming they are good).<br> <br> They look OK to me at first glance, but we need to make sure the etags<br> tests still succeed after this change, and the new option should be<br> documented in the man page.=C2=A0 Bonus points for adding to the etags test= <br> suite a test where this option is activated.<br> </blockquote></div> --000000000000ee1e3e0605435cc4--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 19:16:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 15:16:49 2023 Received: from localhost ([127.0.0.1]:36060 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgVM0-0005WK-Pv for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 15:16:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54532) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1qgVLy-0005W6-Ju for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 15:16:47 -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 1qgVLm-0000mt-Kb; Wed, 13 Sep 2023 15:16:34 -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=aTDFV6Z0gY4vhgOrL0CX4ksEW8OBLA/mMSd3eOjR0Vs=; b=lVgnJ8rg6/3h x5JKOsCzKHcWll1C84F+Sge3Ir3hYzhuDDsb2u5YlVGAcOhifJ2Ttq9upWaZ5r00vbt9+pylqoVrP VnWWND8fMa5jxg9qh/kZwIACNTS3Ne8G0uDNHRFjTDxFedV6Fu1S367FJCXsboDOAOCg2uIa/va0/ /iYEf8XYqKLlsjn8WN4bxgsXsMh5Gn4RBMHJT/cy3n1XeuT3xKb+uHYSFcNeER8pqtyEf/HD+ivh2 8szRqtCc5/5p7U1Higz74fi9dCy50le+Tvo8O794hS6wHSYBz9imuRToJ1uBbFz2xESJ8ijH3mqmt F5Z8FxSZB9k/8yIbxUCCIQ==; Date: Wed, 13 Sep 2023 22:16:21 +0300 Message-Id: <83jzstnat6.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> (message from Dmitry Gutov on Wed, 13 Sep 2023 18:23:13 +0300) Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, larsi@HIDDEN, stefankangas@HIDDEN, dfussner@HIDDEN 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 (---) > Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> > Date: Wed, 13 Sep 2023 18:23:13 +0300 > From: Dmitry Gutov <dgutov@HIDDEN> > > I'm skipping over the etags parser changes (others might comment, I'm > just assuming they are good). They look OK to me at first glance, but we need to make sure the etags tests still succeed after this change, and the new option should be documented in the man page. Bonus points for adding to the etags test suite a test where this option is activated.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 17:02:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 13:02:08 2023 Received: from localhost ([127.0.0.1]:35863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgTFg-0005D3-31 for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 13:02:08 -0400 Received: from mail-pf1-x433.google.com ([2607:f8b0:4864:20::433]:56333) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qgTFd-0005CW-Ks for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 13:02:06 -0400 Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-68fb71ded6dso6477b3a.0 for <53749 <at> debbugs.gnu.org>; Wed, 13 Sep 2023 10:02:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694624514; x=1695229314; 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=hDk2F0fJ+GrFtXH9IsSJtROEMzPFNMtxuCT68qWf0pk=; b=p9Hy+mFRMhChWFnTj680PFot+HmxWmFenqfxkpP3yyIrQQ87eeqlbzOSS6tgX5YFzr Zrkpq8u/i7vy7wl9XwOauxbs6IRvUEYhwVNP5i00cKkucCIdCElofsoJ+GsVkzuM4r7S q/SY4GN+BP5WZCjt/z/1QQqnmfWaY0JAJXRHKKXpjxOweSjFhBCticC6Ejzi+Q8h68vF ygAVD7ajt8ucMuuSyfzRRWmQMbt2Dt19sE0O2A9Ylw424euWEcdg14Tt6gExBwvi/K7l M13LoPuW0QyHpkaLR2AdaDJ7O5JEq0JJgP/295ayszdarkFHSRLbLgCI4AK3H5nXuTpD ZdvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694624514; x=1695229314; 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=hDk2F0fJ+GrFtXH9IsSJtROEMzPFNMtxuCT68qWf0pk=; b=nFOr3Jq/s1BceJAiL9cA3K0h4jRw0QcDvulshUuzM1cD9I+v5FaQa4WdAMnxR1zPXU BbEHBKl3qg2ASzMa6XrPGUn9tSm0LiIy3aXJUY4FovEZnTMxW3MRG8WZc9VIcTKrDAFM oFh6qkTUC2Rt42TyT2Tv+OChRkA9mglKsshYaNBl0SgHGuFLahClFjSEu0WiMTvFXric YXqFu8B38si3yEYBO7zitplya1Pl2PZDYwoVIOf2fED9/hZe6AwXw20IYj+4q1eUa2UK Tx5OrOb2fSAK6lYbFA/gsVcSSPfq4XaL7LCV8hDaeZtvx53z3H1YR8f8MRHKwo9+KF17 s8OQ== X-Gm-Message-State: AOJu0YyWmigPf21Tqzw5Z7EohbHmtCYbKVwJpE4NQ4SGnsBKX8Gbfwg3 93U894VALqDQvHjIOZcbCS5Fvin4/4g2UTRa4m4= X-Google-Smtp-Source: AGHT+IFKuE3BvDA2TSXne898q+tyPJoZ4AmYsrx/wjBdxL8c5zf/m4POPx72JiUklw/avLbJwOf6Ji+IWzMk8YuBc68= X-Received: by 2002:a05:6a21:99a2:b0:154:e054:d0d1 with SMTP id ve34-20020a056a2199a200b00154e054d0d1mr3422699pzb.55.1694624514105; Wed, 13 Sep 2023 10:01:54 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> In-Reply-To: <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 13 Sep 2023 18:01:41 +0100 Message-ID: <CADF+Rti2gSVvfksUVO04ptKQsXrNpwUXHQ_qFjC26D8NNh578A@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> 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 (-) Hi Dmitry, Thanks for the feedback! > These won't be affected either way, right? Because project-find-regexp > defaults its input to (thing-at-point 'symbol t), and isearch... > probably also uses "symbol" if you ask it to. > > So... why not just make tex-thingatpt-include-escape a boolean? What > commands need to be distinguished that way? I think 'find-tag' (it's > obsolete but still used sometimes) would need to obey this var as well. xref-find-apropos and xref-find-references don't work well (or at all) with the escape char included in the search string, so I was keeping that char away from them. (The buffer-local variables I manipulate for project-find-regexp and isearch-forward-thing-at-point have to do with ensuring they use the texsymbol thing in the first place -- see tex--symbol-or-texsymbol.) Does that make sense? I'll look at find-tag, too; thanks for pointing that out. > Why not set the variable find-tag-default-function instead? That seems > easier and more appropriate to do inside a major mode function. I settled on putting the symbol on the modes because I thought it was simpler than setting the variable buffer-locally in all the in-tree and AUCTeX modes, but I'll revisit this and see whether I can come up with something better. Thanks again. On Wed, 13 Sept 2023 at 16:23, Dmitry Gutov <dgutov@HIDDEN> wrote: > > Hi David! > > Thanks for the new patch. > > I'm skipping over the etags parser changes (others might comment, I'm > just assuming they are good). > > And "thing at point" code is, I think, at your discretion (if the result > is useful, then that seems good). I would probably not call the function > the same way given that we don't install this "thing" globally, just > using it from several the major modes in a particular way. Anyway, that > is a minor affair. > > I'd like to suggest two simplifications for the xref-related stuff, if > those work for you.r along the lines of your > > On 13/09/2023 14:10, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > <...> I also manipulate some > > variables buffer-locally to make things like project-find-regexp and > > isearch-forward-thing-at-point work better in such buffers. > > These won't be affected either way, right? Because project-find-regexp > defaults its input to (thing-at-point 'symbol t), and isearch... > probably also uses "symbol" if you ask it to. > > So... why not just make tex-thingatpt-include-escape a boolean? What > commands need to be distinguished that way? I think 'find-tag' (it's > obsolete but still used sometimes) would need to obey this var as well. > > And the second thing: you're putting the symbol on major modes. > > +(dolist (texmode tex-thingatpt-modes-list) > + (put texmode 'find-tag-default-function 'tex--thing-at-point)) > > Why not set the variable find-tag-default-function instead? That seems > easier and more appropriate to do inside a major mode function.r along the lines of your > > Thanks.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 15:23:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 11:23:33 2023 Received: from localhost ([127.0.0.1]:35668 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgRiG-0005eF-OO for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 11:23:33 -0400 Received: from forward501b.mail.yandex.net ([178.154.239.145]:38740) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dgutov@HIDDEN>) id 1qgRiC-0005e2-P2 for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 11:23:31 -0400 Received: from mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:7e9c:0:640:587e:0]) by forward501b.mail.yandex.net (Yandex) with ESMTP id F35205E7A1; Wed, 13 Sep 2023 18:23:19 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id HNhdbhADgeA0-777hMwy4; Wed, 13 Sep 2023 18:23:19 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1694618599; bh=cVIHCR+BFTKECr/K8OeXfbKGQSHWFHxDdg6SQkbdX1c=; h=In-Reply-To:From:Subject:Message-ID:Cc:References:Date:To; b=A24eHabsHoRQzHHr9RrmGDtaXBgn844gey8MYcT6iqJaI7cChkR85SGgvyBvdlIkz IE1QGRXqA4RHAtOwh/5nuSoLlc51BYjijE8lv4Sr06jZtPOM9m0zvOTXwnfPKS+meK YxoigluWTilrIdNwB5ecSKvLFypWLtxRrWb/1fZM= Authentication-Results: mail-nwsmtp-smtp-production-main-73.iva.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailauth.nyi.internal (Postfix) with ESMTP id 514B127C0054; Wed, 13 Sep 2023 11:23:17 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Wed, 13 Sep 2023 11:23:17 -0400 X-ME-Sender: <xms:5NMBZdOO8OzXXpe21GgBY-95QITotULgSBMauKYxlT8l6CTrZvuikA> <xme:5NMBZf99OO9AiNt6iv29jsJMBJwEZB5z52Uvn9KbcqUOv1a99LMsCuL72Nq82HPvL p02vp6JeLBQjup2pFA> X-ME-Received: <xmr:5NMBZcQXtdwhj0G_ylfRjUhuOoYSAsKwh__NsxSmkMGR7M2QdrrbOxhTg4Pab3E> X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedviedrudeikedgkeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegughhuthhovheshigrnhguvgigrdhruheqnecuggftrfgrth htvghrnheptdffgeegkeelteevtdekleethfeftdduvdegkedtkedujefhfedtveeftdff udevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hguhhtohhvodhmvghsmhhtphgruhhthhhpvghrshhonhgrlhhithihqddufeeffeelleeh hedvqddvleegjeejjeejiedqughguhhtohhvpeephigrnhguvgigrdhruhesfhgrshhtmh grihhlrdgtohhm X-ME-Proxy: <xmx:5NMBZZuiCNIF55kBIi79IlQ1x-fNwK1Br2ojzNBCK9mB6cvIfoAU5w> <xmx:5NMBZVdC7LxTnM5YQbY8YBTzfKSEKq9zvmKKRZZGbEFiooXxaMKkwQ> <xmx:5NMBZV0FTc9xwDQoGyKXfj_6UiGbpxewHfre_2_pC8w-TY_4AkfJag> <xmx:5dMBZWqjBnQWioIwfmSJtuByy4l_9UDiV5GI5x-nVkm7Z6l5AuHCDg> Feedback-ID: ib1d9465d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Sep 2023 11:23:15 -0400 (EDT) Message-ID: <fcbc07cf-5ee9-131f-1a18-9cc28a5655f1@HIDDEN> Date: Wed, 13 Sep 2023 18:23:13 +0300 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#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN>, Stefan Kangas <stefankangas@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN> 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.5 (--) Hi David! Thanks for the new patch. I'm skipping over the etags parser changes (others might comment, I'm just assuming they are good). And "thing at point" code is, I think, at your discretion (if the result is useful, then that seems good). I would probably not call the function the same way given that we don't install this "thing" globally, just using it from several the major modes in a particular way. Anyway, that is a minor affair. I'd like to suggest two simplifications for the xref-related stuff, if those work for you. On 13/09/2023 14:10, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > <...> I also manipulate some > variables buffer-locally to make things like project-find-regexp and > isearch-forward-thing-at-point work better in such buffers. These won't be affected either way, right? Because project-find-regexp defaults its input to (thing-at-point 'symbol t), and isearch... probably also uses "symbol" if you ask it to. So... why not just make tex-thingatpt-include-escape a boolean? What commands need to be distinguished that way? I think 'find-tag' (it's obsolete but still used sometimes) would need to obey this var as well. And the second thing: you're putting the symbol on major modes. +(dolist (texmode tex-thingatpt-modes-list) + (put texmode 'find-tag-default-function 'tex--thing-at-point)) Why not set the variable find-tag-default-function instead? That seems easier and more appropriate to do inside a major mode function. Thanks.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 13:42:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 09:42:42 2023 Received: from localhost ([127.0.0.1]:32978 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgQ8f-0002l4-VP for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 09:42:42 -0400 Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]:60438) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1qgQ8d-0002km-HT for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 09:42:40 -0400 Received: by mail-lj1-x229.google.com with SMTP id 38308e7fff4ca-2bf5bf33bcdso110463521fa.0 for <53749 <at> debbugs.gnu.org>; Wed, 13 Sep 2023 06:42:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1694612548; x=1695217348; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=6A+q1biI6XUrHVQzoDWAB9bixQvt1GpoOSN4vYhJNQo=; b=DFc4ZBJz37MXLDlf36wP6v3zWMJ6pGNeaTAxULfJZ5DaqZR2vp+sOrbC7rp9hpxRY2 mkOFAJZhD+4Gy1pAMjdt07Fgkyjk9M4vs6u0+j6cyG1MFYOlKNVZPknw44cjEs80u+H8 gdwBWWcM87gIvtRou3sItsviLWnCVFzy6PyUKhDIvD8G8x7XLitoEUMXyifkpAB2S0/N GPmkmDsBjgGF2v95o/ofG/wfU8yVumVQcuXRCB1zLHJfAKTHQnuEXawTZaYGBUiFTQ2N r3a5mQMMOqB9E8IsnbcHFFNgL/Wv6VPy82itJRa2qJ8zJYU/HOvgayyfCKv7Bo6uaE5E CkwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694612548; x=1695217348; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6A+q1biI6XUrHVQzoDWAB9bixQvt1GpoOSN4vYhJNQo=; b=RG/0GyvUeEidiitgzXq64aaeCEvMhvGCTXeNhQ1IQEgH3jdEBJb81zbhdPADL/Jv26 Ao3DCFFAuAn3CFFqlSsEJGBB8X2wUVk+VakmhwWrmGZjufsCT/idPvZZAn1k+5PEQJcu 4H2/baEWb4B9mSTYrYSvCm9bgfXBsppMPonkH5gr83iy1iwzKPieWKN+5hJvMquEVMex y0JnKNPgew158Uw9n1zQUeQThvzUzQmJHQCpyxIxW2J6f3AjlhhfJrCRDyHWXt4IR22m Lh8sm7uMGV2o/JojO9Hrdn4SsrDxq0ftDITJmiEiWIzn5l+e8hAv3oU/7NZmcL4uCpsg fm0A== X-Gm-Message-State: AOJu0YweiRAEGNV8wXToOKpkL7ShnL5GBHEXDEkB7SOpWhjqwzwRU9zV dHjGESAKLKDPh2cg3BJIiyfmRZvuCqQuM/UdZ1U= X-Google-Smtp-Source: AGHT+IHelf8r/Yz09F7qUDxm4og8CP6G4BxBv9NDwNUpvvSBPQWuBVHr4iBvCKjIF+L2UvYK5kontoowax9aFmiEgjI= X-Received: by 2002:a2e:84ce:0:b0:2b9:4413:864e with SMTP id q14-20020a2e84ce000000b002b94413864emr2015608ljh.53.1694612547913; Wed, 13 Sep 2023 06:42:27 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Wed, 13 Sep 2023 06:42:27 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> MIME-Version: 1.0 Date: Wed, 13 Sep 2023 06:42:27 -0700 Message-ID: <CADwFkmnjNFk0kvL0f+TRqe670qM3Nzxso2NRDzahb4O_K_zjrg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) David Fussner <dfussner@HIDDEN> writes: > P.S. I'm also starting the copyright assignment process, in case these > changes prove acceptable. That's great, thanks.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 13 Sep 2023 11:11:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 13 07:11:17 2023 Received: from localhost ([127.0.0.1]:60940 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qgNm7-00020E-9M for submit <at> debbugs.gnu.org; Wed, 13 Sep 2023 07:11:17 -0400 Received: from mail-pg1-x52c.google.com ([2607:f8b0:4864:20::52c]:46579) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qgNls-0001zU-GS for 53749 <at> debbugs.gnu.org; Wed, 13 Sep 2023 07:11:13 -0400 Received: by mail-pg1-x52c.google.com with SMTP id 41be03b00d2f7-573f722b86eso4714067a12.1 for <53749 <at> debbugs.gnu.org>; Wed, 13 Sep 2023 04:10:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1694603449; x=1695208249; 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=eq/0Z9vATqwjd4nbGd1dvdA0CjUulgJ5db8PtrIaHfo=; b=ZA5rnE3YwoIrjqdqvp4pjtGKwQlxnfpXz2+Qm525EZHndMuVLCF2ZrsMKaAGT8YSCS nRdltu8Bnf7Sc41pe59sRqPWN4D+8S5xEdrvJqpYpvhx7F1pQDCOXPu592cWSvvmqr88 9+H3/GdAjG72GsjUCf77PKRH0Zi/NA3JqBBCUiYqpvR7LXDa5yuTcx0o0SbQaPgueUSj umuDoKGU5hyNMh/ZcLXaVUISzVojHfrpPG6bsoPs6zdK7DiP30vjl0PexkEsWxo4N3nQ PnqBtIoLGCzE3TXNYkcl07NO5+nqjvIqAalgMdhZoPxWvSSM6EGxBaEsZI3I3odVH8Hb Z3wg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694603449; x=1695208249; 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=eq/0Z9vATqwjd4nbGd1dvdA0CjUulgJ5db8PtrIaHfo=; b=nEKVQjK9fv/79RmrJKDflUpasj3fpvs39e98S7TQRopWEKtYjvHU1xcyd72g8t2T0a web6EZ9FPDqrdh6ihFddVCZkE6jHl2dH0QNqywuz0O6W4qVTwcVH1khr/xBWme6jrZIW N+zRbtSDvlUmu3weUivkPqgM/gwDzUTX2eJSm5dOJN2pzR8Q9eh5rS8bJlN5zPMEhvna vc20krblnngwHQAlVe2Rh0nZO+gi99S1oBOjUfJ4ERGj0zO8TG/IzgrZ3biMau/hGTL7 n7tJxzIcWzduWPwytI4/TuQXhLj4BIcUfMa+e3r9+gNHiZwG8Brn1coWO0602zokObG0 ql2w== X-Gm-Message-State: AOJu0Yx+kCv4hImjOLdPtRZvAmb4yu/g3xiOLyq33hRkRQqU58e/v8BM 0VrnN9Do35PF7E6IIoRCzmO8hMaobigFfQ9xoMo= X-Google-Smtp-Source: AGHT+IF1AopegZHokBacztAhWbDZKGYwrnt2dqqh0hyO4KwuubqGtHMKGZ3WZ+pZ/vDVVXPiE4z+qpzvNlNI63Pw2bw= X-Received: by 2002:a05:6a20:440f:b0:133:e3e3:dc07 with SMTP id ce15-20020a056a20440f00b00133e3e3dc07mr2411438pzb.49.1694603449094; Wed, 13 Sep 2023 04:10:49 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> In-Reply-To: <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 13 Sep 2023 12:10:36 +0100 Message-ID: <CADF+RtgxigxvgG0j6bbpYnrrFVF4YTKZ1Rs0JSCc8zuu5JNA2w@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Kangas <stefankangas@HIDDEN> Content-Type: multipart/mixed; boundary="0000000000009f58c406053b9c14" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) --0000000000009f58c406053b9c14 Content-Type: text/plain; charset="UTF-8" Hi Dmitry, I've belatedly found some time to get the xref commands working better in TeX buffers, this time using the default etags backend, as you requested last year. The basic strategy remains the same -- create a new thing-at-point argument "texsymbol" which replaces "symbol" in a definable set of major modes, then pass the resulting search term to xref. Changes in etags.c ensure that the various TeX modes and the tags tables are cooperating with each other, and I added a new option to etags (--tex-alt-forms) to handle some of the complexities of the TeX escape character (as you suggested). I also manipulate some variables buffer-locally to make things like project-find-regexp and isearch-forward-thing-at-point work better in such buffers. I attach a patch against current master. There is another patch which contains changes to the test suite in test/manual/etags, but I'll leave that one in case the changes I've made to etags.c need further work. I've sent patches to AUCTeX trying to fix a couple of issues there with xref-find-references. There's more work to be done on related issues in tex-mode.el, too, but this patch is a start. Thanks, David. P.S. I'm also starting the copyright assignment process, in case these changes prove acceptable. On Sun, 3 Sept 2023 at 11:46, Stefan Kangas <stefankangas@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > Thanks for the nudge. I do in fact have a patch that I'm just about finding > > time to test, so I'll try to get it to the list within a week or two. > > Sounds good, and thank you. --0000000000009f58c406053b9c14 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Fix-behavior-of-xref-commands-in-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Fix-behavior-of-xref-commands-in-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_lmhn30dy0> X-Attachment-Id: f_lmhn30dy0 RnJvbSBkNWE3N2JkMWRjNDVlMDYzOGRmM2U0Yzc2M2ExNjg5MTJjOTNiNWI1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAxMyBTZXAgMjAyMyAxMTo1OTo1NCArMDEwMApTdWJqZWN0OiBbUEFUQ0hd IEZpeCBiZWhhdmlvciBvZiB4cmVmIGNvbW1hbmRzIGluIFRlWCBidWZmZXJzCgoqIGxpYi1zcmMv ZXRhZ3MuYyAobG9uZ29wdHMpOiBBZGQgbmV3IG9wdGlvbiAtLXRleC1hbHQtZm9ybXMuCihUZVhf Y29tbWFuZHMpOiBJbXByb3ZlIHBhcnNpbmcgb2YgY29tbWFuZHMgaW4gVGVYIGJ1ZmZlcnMuCihU RVhfZGVmZW52KTogRXhwYW5kIGxpc3Qgb2YgY29tbWFuZHMgdG8gdGFnIGJ5IGRlZmF1bHQgaW4g VGVYCmJ1ZmZlcnMuCihUZVhfaGVscCk6CiogZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgKFRh ZyBTeW50YXgpOiBEb2N1bWVudCBuZXcgdGFnZ2VkCmNvbW1hbmRzIGFuZCBuZXcgdXNlciBvcHRp b24uCihJZGVudGlmaWVyIFNlYXJjaCk6IEFkZCBub3RlIGFib3V0IGF1dG8tbW9kZS1hbGlzdCBh bmQKeHJlZi1maW5kLXJlZmVyZW5jZXMuCgoqIGxpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsICh0 ZXgtY29tbW9uLWluaXRpYWxpemF0aW9uKTogU2V0IHVwIHhyZWYKbW9kaWZpY2F0aW9ucyBmb3Ig aW4tdHJlZSBUZVggbW9kZXMuCih0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3QpOiBOZXcgdmFyLgoo dGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wpOiBOZXcgZGVmY3VzdG9tLgoodGV4LXNldC10aGlu Z2F0cHQtc3ltYm9sKTogTmV3IGNvbW1hbmQgdG8gYXBwbHkgdmFsdWUgb2YgcHJldmlvdXMKYnVm ZmVyLWxvY2FsbHkuCih0ZXgtLXN5bWJvbC1vci10ZXhzeW1ib2wpOiBOZXcgaGVscGVyIGZ1bmN0 aW9uIGZvciBwcmV2aW91cy4KKHRleC0tdGhpbmctYXQtcG9pbnQpOiBOZXcgZnVuY3Rpb24gdG8g cmV0dXJuIHRleHN5bWJvbAondGhpbmctYXQtcG9pbnQnLgoodGV4LXRoaW5nYXRwdC0tYmVnaW5u aW5nLW9mLXRleHN5bWJvbCkKKHRleC10aGluZ2F0cHQtLWVuZC1vZi10ZXhzeW1ib2wpOiBOZXcg ZnVuY3Rpb25zIHRvIGRlZmluZSB0ZXhzeW1ib2wKInRoaW5nIiBmb3IgJ3RoaW5nLWF0LXBvaW50 Jy4KKHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlLCB0ZXgtZXNjYXBlLWNoYXIpOiBOZXcgdmFy cyB0byBkbyB0aGUKc2FtZS4KKHRleC10aGluZ2F0cHQtaW5jbHVkZS1lc2NhcGUpOiBOZXcgZGVm Y3VzdG9tIHRvIHJlZmluZSBiZWhhdmlvciBvZgpwcmV2aW91cy4KKHRleC0taW5jbHVkZS1lc2Nh cGUtcCk6IE5ldyBmdW5jdGlvbiB0byBkbyB0aGUgc2FtZS4KKHRleC10aGluZ2F0cHQtc3ludGF4 LXRhYmxlKTogTmV3IGZ1bmN0aW9uIHRvIGFjY2VzcyBhbmQgbW9kaWZ5IHRoZQpzeW50YXggdGFi bGUgb2YgdGhlIHNhbWUgbmFtZS4KLS0tCiBkb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aSB8ICAz MyArKysrKy0KIGxpYi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgMTIyICsrKysrKysrKysrKysr KysrKy0tLQogbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwgfCAyMTYgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAzNTcgaW5zZXJ0aW9ucygr KSwgMTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL2VtYWNzL21haW50YWluaW5nLnRl eGkgYi9kb2MvZW1hY3MvbWFpbnRhaW5pbmcudGV4aQppbmRleCBhOTUzMzVmM2RmMi4uNDRiOGIz MDQwMjYgMTAwNjQ0Ci0tLSBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpCisrKyBiL2RvYy9l bWFjcy9tYWludGFpbmluZy50ZXhpCkBAIC0yNDU3LDYgKzI0NTcsMTMgQEAgSWRlbnRpZmllciBT ZWFyY2gKIHJlZmVyZW5jZWQuICBUaGUgWFJFRiBtb2RlIGNvbW1hbmRzIGFyZSBhdmFpbGFibGUg aW4gdGhpcyBidWZmZXIsIHNlZQogQHJlZntYcmVmIENvbW1hbmRzfS4KIAorV2hlbiBpbnZva2Vk IGluIGEgYnVmZmVyIHdob3NlIG1ham9yIG1vZGUgdXNlcyB0aGUgQGNvZGV7ZXRhZ3N9CitiYWNr ZW5kLCBAa2Jke00tP30gc2VhcmNoZXMgZmlsZXMgYW5kIGJ1ZmZlcnMgd2hvc2UgbWFqb3IgbW9k ZSBtYXRjaGVzCit0aGF0IG9mIHRoZSBvcmlnaW5hbCBidWZmZXIuICBJdCBndWVzc2VzIHRoYXQg bW9kZSBmcm9tIGZpbGUKK2V4dGVuc2lvbnMsIHNvIGlmIEBrYmR7TS0/fSBzZWVtcyB0byBiZSBz a2lwcGluZyByZWxldmFudCBidWZmZXJzIG9yCitmaWxlcywgdHJ5IGN1c3RvbWl6aW5nIHRoZSB2 YXJpYWJsZSBAY29kZXthdXRvLW1vZGUtYWxpc3R9IHRvIGluY2x1ZGUKK3RoZSBtaXNzaW5nIGV4 dGVuc2lvbnMgKEBweHJlZntDaG9vc2luZyBNb2Rlc30pLgorCiBAdmluZGV4IHhyZWYtYXV0by1q dW1wLXRvLWZpcnN0LXhyZWYKICAgSWYgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSBAY29kZXt4 cmVmLWF1dG8tanVtcC10by1maXJzdC14cmVmfSBpcwogQGNvZGV7dH0sIEBjb2Rle3hyZWYtZmlu ZC1yZWZlcmVuY2VzfSBhdXRvbWF0aWNhbGx5IGp1bXBzIHRvIHRoZSBmaXJzdApAQCAtMjY3Miw4 ICsyNjc5LDIzIEBAIFRhZyBTeW50YXgKIEBjb2Rle1xzZWN0aW9ufSwgQGNvZGV7XHN1YnNlY3Rp b259LCBAY29kZXtcc3Vic3Vic2VjdGlvbn0sCiBAY29kZXtcZXFub30sIEBjb2Rle1xsYWJlbH0s IEBjb2Rle1xyZWZ9LCBAY29kZXtcY2l0ZX0sCiBAY29kZXtcYmliaXRlbX0sIEBjb2Rle1xwYXJ0 fSwgQGNvZGV7XGFwcGVuZGl4fSwgQGNvZGV7XGVudHJ5fSwKLUBjb2Rle1xpbmRleH0sIEBjb2Rl e1xkZWZ9LCBAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LAotQGNvZGV7 XG5ld2Vudmlyb25tZW50fSBhbmQgQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9IGFyZSB0YWdzLgor QGNvZGV7XGluZGV4fSwgQGNvZGV7XGRlZn0sIEBjb2Rle1xlZGVmfSwgQGNvZGV7XGdkZWZ9LCBA Y29kZXtceGRlZn0sCitAY29kZXtcbmV3Y29tbWFuZH0sIEBjb2Rle1xyZW5ld2NvbW1hbmR9LCBA Y29kZXtcbmV3ZW52aXJvbm1lbnR9LAorQGNvZGV7XHJlbmV3ZW52aXJvbm1lbnR9LCBAY29kZXtc RGVjbGFyZVJvYnVzdENvbW1hbmR9LAorQGNvZGV7XG5ld3JvYnVzdGNtZH0sIEBjb2Rle1xyZW5l d3JvYnVzdGNtZH0sIEBjb2Rle1xwcm92aWRlY29tbWFuZH0sCitAY29kZXtccHJvdmlkZXJvYnVz dGNtZH0sIEBjb2Rle1xOZXdEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XFJlbmV3RG9jdW1lbnRD b21tYW5kfSwgQGNvZGV7XFByb3ZpZGVEb2N1bWVudENvbW1hbmR9LAorQGNvZGV7XERlY2xhcmVE b2N1bWVudENvbW1hbmR9LCBAY29kZXtcTmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitA Y29kZXtcUmVuZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kfSwKK0Bjb2Rle1xQcm92aWRlRXhw YW5kYWJsZURvY3VtZW50Q29tbWFuZH0sCitAY29kZXtcRGVjbGFyZUV4cGFuZGFibGVEb2N1bWVu dENvbW1hbmR9LAorQGNvZGV7XE5ld0RvY3VtZW50RW52aXJvbm1lbnR9LCBAY29kZXtcUmVuZXdE b2N1bWVudEVudmlyb25tZW50fSwKK0Bjb2Rle1xQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudH0s CitAY29kZXtcRGVjbGFyZURvY3VtZW50RW52aXJvbm1lbnR9LCBAY29kZXtcY3NkZWZ9LCBAY29k ZXtcY3NlZGVmfSwKK0Bjb2Rle1xjc2dkZWZ9LCBAY29kZXtcY3N4ZGVmfSwgQGNvZGV7XGNzbGV0 Y3N9LCBAY29kZXtcY3NsZXR9LAorQGNvZGV7XGxldGNzfSwgYW5kIEBjb2Rle1xsZXR9IGFyZSB0 YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRzIG9mCithbnkgc3RhcnJlZCB2YXJpYW50cyBv ZiB0aGVzZSBjb21tYW5kcywgd2hlbiBzdWNoIHZhcmlhbnRzIGN1cnJlbnRseQorZXhpc3QuCiAK IE90aGVyIGNvbW1hbmRzIGNhbiBtYWtlIHRhZ3MgYXMgd2VsbCwgaWYgeW91IHNwZWNpZnkgdGhl bSBpbiB0aGUKIGVudmlyb25tZW50IHZhcmlhYmxlIEBlbnZ7VEVYVEFHU30gYmVmb3JlIGludm9r aW5nIEBjb21tYW5ke2V0YWdzfS4gIFRoZQpAQCAtMjY4OSw2ICsyNzExLDEzIEBAIFRhZyBTeW50 YXgKIHNwZWNpZmllcyAodXNpbmcgQm91cm5lIHNoZWxsIHN5bnRheCkgdGhhdCB0aGUgY29tbWFu ZHMKIEBzYW1we1xteWNvbW1hbmR9IGFuZCBAc2FtcHtcbXlvdGhlcmNvbW1hbmR9IGFsc28gZGVm aW5lIHRhZ3MuCiAKK1RoZSBAc2FtcHstLXRleC1hbHQtZm9ybXN9IG9wdGlvbiBjYXVzZXMgZWFj aCB0YWcgdG8gaGF2ZSB0d28gbmFtZXMsCitvbmUgd2l0aCBhbmQgb25lIHdpdGhvdXQgdGhlIEBU ZVh7fSBlc2NhcGUgY2hhcmFjdGVyLCB1c3VhbGx5CitAc2FtcHtcfS4gIFRoaXMgbWF5IGJlIGhl bHBmdWwgd2hlbiBtaXhpbmcgdHJhZGl0aW9uYWwgQFRlWHt9IG9yCitATGFUZVh7fSBjb25zdHJ1 Y3RzIChAc2FtcHtcZGVmfSkgd2l0aCBuZXdlciBjb25zdHJ1Y3RzIGZyb20gdGhlCitAc2FtcHtl dG9vbGJveH0gcGFja2FnZSAoQHNhbXB7XGNzZGVmfSkuICBVc2Ugb2YgdGhpcyBvcHRpb24gd2ls bAorZG91YmxlIHRoZSBzaXplIG9mIGFueSBAVGVYe30tcmVsYXRlZCBzZWN0aW9ucyBpbiB5b3Vy IHRhZ3MgZmlsZS4KKwogQGl0ZW0KIEluIExpc3AgY29kZSwgYW55IGZ1bmN0aW9uIGRlZmluZWQg d2l0aCBAY29kZXtkZWZ1bn0sIGFueSB2YXJpYWJsZQogZGVmaW5lZCB3aXRoIEBjb2Rle2RlZnZh cn0gb3IgQGNvZGV7ZGVmY29uc3R9LCBhbmQgaW4gZ2VuZXJhbCB0aGUKZGlmZiAtLWdpdCBhL2xp Yi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCAxNDdlY2JkN2MxYi4uM2E2Njgy ZmU0NTEgMTAwNjQ0Ci0tLSBhL2xpYi1zcmMvZXRhZ3MuYworKysgYi9saWItc3JjL2V0YWdzLmMK QEAgLTQ3NSw2ICs0NzUsNyBAQCAjZGVmaW5lIHhybmV3KG9wLCBuLCBtKSAoKG9wKSA9IHhucmVh bGxvYyAob3AsIG4sIChtKSAqIHNpemVvZiAqKG9wKSkpCiBzdGF0aWMgYm9vbCBpZ25vcmVpbmRl bnQ7CS8qIC1JOiBpZ25vcmUgaW5kZW50YXRpb24gaW4gQyAqLwogc3RhdGljIGludCBwYWNrYWdl c19vbmx5OwkvKiAtLXBhY2thZ2VzLW9ubHk6IGluIEFkYSwgb25seSB0YWcgcGFja2FnZXMqLwog c3RhdGljIGludCBjbGFzc19xdWFsaWZ5OwkvKiAtUTogcHJvZHVjZSBjbGFzcy1xdWFsaWZpZWQg dGFncyBpbiBDKysvSmF2YSAqLworc3RhdGljIGludCB0ZXhfYWx0X2Zvcm1zOyAgICAgICAvKiAt LXRleC1hbHQtZm9ybXM6IHRhZyBuYW1lcyB3LyBhbmQgdy9vIGVzY2FwZSAqLwogc3RhdGljIGlu dCBkZWJ1ZzsJCS8qIC0tZGVidWcgKi8KIAogLyogU1RESU4gaXMgZGVmaW5lZCBpbiBMeW54T1Mg c3lzdGVtIGhlYWRlcnMgKi8KQEAgLTUwOSw2ICs1MTAsNyBAQCAjZGVmaW5lIFNURElOIDB4MTAw MQkJLyogcmV0dXJuZWQgYnkgZ2V0b3B0X2xvbmcgb24gLS1wYXJzZS1zdGRpbiAqLwogICB7ICJu by1yZWdleCIsICAgICAgICAgICBub19hcmd1bWVudCwgICAgICAgTlVMTCwgICAgICAgICAgICAg ICAnUicgICB9LAogICB7ICJpZ25vcmUtY2FzZS1yZWdleCIsICByZXF1aXJlZF9hcmd1bWVudCwg TlVMTCwgICAgICAgICAgICAgICAnYycgICB9LAogICB7ICJwYXJzZS1zdGRpbiIsICAgICAgICBy ZXF1aXJlZF9hcmd1bWVudCwgTlVMTCwgICAgICAgICAgICAgICBTVERJTiB9LAorICB7ICJ0ZXgt YWx0LWZvcm1zIiwgICAgICBub19hcmd1bWVudCwgICAgICAgJnRleF9hbHRfZm9ybXMsICAgICAx ICAgICB9LAogICB7ICJ2ZXJzaW9uIiwgICAgICAgICAgICBub19hcmd1bWVudCwgICAgICAgTlVM TCwgICAgICAgICAgICAgICAnVicgICB9LAogCiAjaWYgQ1RBR1MgLyogQ3RhZ3Mgb3B0aW9ucyAq LwpAQCAtNzkyLDEyICs3OTQsMjggQEAgI2RlZmluZSBTVERJTiAweDEwMDEJCS8qIHJldHVybmVk IGJ5IGdldG9wdF9sb25nIG9uIC0tcGFyc2Utc3RkaW4gKi8KICJJbiBMYVRlWCB0ZXh0LCB0aGUg YXJndW1lbnQgb2YgYW55IG9mIHRoZSBjb21tYW5kcyAnXFxjaGFwdGVyJyxcblwKICdcXHNlY3Rp b24nLCAnXFxzdWJzZWN0aW9uJywgJ1xcc3Vic3Vic2VjdGlvbicsICdcXGVxbm8nLCAnXFxsYWJl bCcsXG5cCiAnXFxyZWYnLCAnXFxjaXRlJywgJ1xcYmliaXRlbScsICdcXHBhcnQnLCAnXFxhcHBl bmRpeCcsICdcXGVudHJ5JyxcblwKLSdcXGluZGV4JywgJ1xcZGVmJywgJ1xcbmV3Y29tbWFuZCcs ICdcXHJlbmV3Y29tbWFuZCcsXG5cCi0nXFxuZXdlbnZpcm9ubWVudCcgb3IgJ1xccmVuZXdlbnZp cm9ubWVudCcgaXMgYSB0YWcuXG5cCisnXFxpbmRleCcsICdcXGRlZicsICdcXGVkZWYnLCAnXFxn ZGVmJywgJ1xceGRlZicsICdcXG5ld2NvbW1hbmQnLFxuXAorJ1xccmVuZXdjb21tYW5kJywgJ1xc bmV3ZW52aXJvbm1lbnQnLCAnXFxyZW5ld2Vudmlyb25tZW50JyxcblwKKydcXERlY2xhcmVSb2J1 c3RDb21tYW5kLCAnXFxuZXdyb2J1c3RjbWQnLCAnXFxyZW5ld3JvYnVzdGNtZCcsXG5cCisnXFxw cm92aWRlY29tbWFuZCcsICdcXHByb3ZpZGVyb2J1c3RjbWQnLCAnXFxOZXdEb2N1bWVudENvbW1h bmQnLFxuXAorJ1xcUmVuZXdEb2N1bWVudENvbW1hbmQnLCAnXFxQcm92aWRlRG9jdW1lbnRDb21t YW5kJyxcblwKKydcXERlY2xhcmVEb2N1bWVudENvbW1hbmQnLCAnXFxOZXdFeHBhbmRhYmxlRG9j dW1lbnRDb21tYW5kJyxcblwKKydcXFJlbmV3RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZCcsICdc XFByb3ZpZGVFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kJyxcblwKKydcXERlY2xhcmVFeHBhbmRh YmxlRG9jdW1lbnRDb21tYW5kJywgJ1xcTmV3RG9jdW1lbnRFbnZpcm9ubWVudCcsXG5cCisnXFxS ZW5ld0RvY3VtZW50RW52aXJvbm1lbnQnLCAnXFxQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudCcs XG5cCisnXFxEZWNsYXJlRG9jdW1lbnRFbnZpcm9ubWVudCcsICdcXGNzZGVmJywgJ1xcY3NlZGVm JywgJ1xcY3NnZGVmJyxcblwKKydcXGNzeGRlZicsICdcXGNzbGV0Y3MnLCAnXFxjc2xldCcsICdc XGxldGNzJywgb3IgJ1xcbGV0JyBpcyBhIHRhZy5cblwKK1NvIGlzIHRoZSBhcmd1bWVudCBvZiBh bnkgb2YgdGhlIHN0YXJyZWQgdmFyaWFudHMgb2YgdGhlc2UgY29tbWFuZHMsXG5cCit3aGVuIGEg c3RhcnJlZCB2YXJpYW50IGN1cnJlbnRseSBleGlzdHMuXG5cCiBcblwKIE90aGVyIGNvbW1hbmRz IGNhbiBiZSBzcGVjaWZpZWQgYnkgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVcblwK ICdURVhUQUdTJyB0byBhIGNvbG9uLXNlcGFyYXRlZCBsaXN0IGxpa2UsIGZvciBleGFtcGxlLFxu XAotICAgICBURVhUQUdTPVwibXljb21tYW5kOm15b3RoZXJjb21tYW5kXCIuIjsKKyAgICAgVEVY VEFHUz1cIm15Y29tbWFuZDpteW90aGVyY29tbWFuZFwiLlxuXAorXG5cCitUaGUgJy0tdGV4LWFs dC1mb3Jtcycgb3B0aW9uIGNhdXNlcyBlYWNoIHRhZyB0byBoYXZlIHR3byBuYW1lcywgb25lXG5c Cit3aXRoIGFuZCBvbmUgd2l0aG91dCB0aGUgVGVYIGVzY2FwZSBjaGFyLCB1c3VhbGx5ICdcXCcu ICBUaGlzIG1heSBiZVxuXAoraGVscGZ1bCB3aGVuIG1peGluZyB0cmFkaXRpb25hbCBUZVggb3Ig TGFUZVggY29uc3RydWN0cyAoJ1xcZGVmJylcblwKK3dpdGggbmV3ZXIgY29uc3RydWN0cyBmcm9t IHRoZSAnZXRvb2xib3gnIHBhY2thZ2UgKCdcXGNzZGVmJykuIjsKIAogCiBzdGF0aWMgY29uc3Qg Y2hhciAqVGV4aW5mb19zdWZmaXhlcyBbXSA9CkBAIC01NzM1LDEyICs1NzUzLDI3IEBAIFNjaGVt ZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIAogc3RhdGljIGxpbmVidWZmZXIgKlRFWF90b2t0YWIg PSBOVUxMOyAvKiBUYWJsZSB3aXRoIHRhZyB0b2tlbnMgKi8KIAotLyogRGVmYXVsdCBzZXQgb2Yg Y29udHJvbCBzZXF1ZW5jZXMgdG8gcHV0IGludG8gVEVYX3Rva3RhYi4KLSAgIFRoZSB2YWx1ZSBv ZiBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8gdGhpcy4gICovCisvKiBE ZWZhdWx0IHNldCBvZiBjb250cm9sIHNlcXVlbmNlcyB0byBwdXQgaW50byBURVhfdG9rdGFiLiAg VGhlIHZhbHVlIG9mCisgICBlbnZpcm9ubWVudCB2YXIgVEVYVEFHUyBpcyBwcmVwZW5kZWQgdG8g dGhpcy4gICgyMDIzKSBBZGQgdmFyaWFudHMgb2YKKyAgICdcZGVmJywgc29tZSBhZGRpdGlvbmFs IExhVGVYIChhbmQgZm9ybWVyIHhwYXJzZSkgY29tbWFuZHMsIGFuZCBjb21tb24KKyAgIHZhcmlh bnRzIGZyb20gdGhlICdldG9vbGJveCcgcGFja2FnZS4gIEFsc28sIGFkZCBzdGFycmVkIHZhcmlh bnRzIG9mIHRoZQorICAgY29tbWFuZHMgaWYgdGhleSBleGlzdC4gKi8KIHN0YXRpYyBjb25zdCBj aGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJzdWJz ZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpwYXJ0OmFwcGVuZGl4OmVudHJ5 OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpuZXdlbnZpcm9ubWVudDpyZW5l d2Vudmlyb25tZW50IjsKKzpjaGFwdGVyKjpzZWN0aW9uKjpzdWJzZWN0aW9uKjpzdWJzdWJzZWN0 aW9uKjpwYXJ0KjpsYWJlbDpyZWZcCis6Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vic3Vi c2VjdGlvbjplcW5vOmNpdGU6YmliaXRlbTpwYXJ0XAorOmFwcGVuZGl4OmVudHJ5OmluZGV4OmRl ZjplZGVmOmdkZWY6eGRlZjpuZXdjb21tYW5kKjpuZXdjb21tYW5kXAorOnJlbmV3Y29tbWFuZCo6 cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50KjpuZXdlbnZpcm9ubWVudFwKKzpyZW5ld2Vudmly b25tZW50KjpyZW5ld2Vudmlyb25tZW50OkRlY2xhcmVSb2J1c3RDb21tYW5kKlwKKzpEZWNsYXJl Um9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZCo6cmVuZXdyb2J1c3RjbWRcCis6bmV3cm9idXN0 Y21kKjpuZXdyb2J1c3RjbWQ6cHJvdmlkZWNvbW1hbmQqOnByb3ZpZGVjb21tYW5kXAorOnByb3Zp ZGVyb2J1c3RjbWQqOnByb3ZpZGVyb2J1c3RjbWQ6TmV3RG9jdW1lbnRDb21tYW5kXAorOlJlbmV3 RG9jdW1lbnRDb21tYW5kOlByb3ZpZGVEb2N1bWVudENvbW1hbmRcCis6RGVjbGFyZURvY3VtZW50 Q29tbWFuZDpOZXdFeHBhbmRhYmxlRG9jdW1lbnRDb21tYW5kXAorOlJlbmV3RXhwYW5kYWJsZURv Y3VtZW50Q29tbWFuZDpQcm92aWRlRXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZFwKKzpEZWNsYXJl RXhwYW5kYWJsZURvY3VtZW50Q29tbWFuZDpOZXdEb2N1bWVudEVudmlyb25tZW50XAorOlJlbmV3 RG9jdW1lbnRFbnZpcm9ubWVudDpQcm92aWRlRG9jdW1lbnRFbnZpcm9ubWVudFwKKzpEZWNsYXJl RG9jdW1lbnRFbnZpcm9ubWVudDpjc2RlZjpjc2VkZWY6Y3NnZGVmOmNzeGRlZjpjc2xldGNzXAor OmNzbGV0OmxldGNzOmxldCI7CiAKIHN0YXRpYyB2b2lkIFRFWF9kZWNvZGVfZW52IChjb25zdCBj aGFyICosIGNvbnN0IGNoYXIgKik7CiAKQEAgLTU3NTIsNiArNTc4NSw3IEBAIFRlWF9jb21tYW5k cyAoRklMRSAqaW5mKQogewogICBjaGFyICpjcDsKICAgbGluZWJ1ZmZlciAqa2V5OworICBjaGFy IG5ld25hbWVbVUNIQVJfTUFYXTsKIAogICBjaGFyIFRFWF9lc2MgPSAnXDAnOwogICBjaGFyIFRF WF9vcGdycCBVTklOSVQsIFRFWF9jbGdycCBVTklOSVQ7CkBAIC01Nzk5LDE5ICs1ODMzLDczIEBA IFRlWF9jb21tYW5kcyAoRklMRSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlm Zl90IG5hbWVsZW4sIGxpbmVsZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdy cCA9IGZhbHNlLCBvbmVfZXNjID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBr ZXktPmxlbik7CisJCS8qIFNraXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBp biB0aGUgdGFncyBsaXN0IHNvCisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1 cCBhcyB0aGUgbmFtZSBvZiB0aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29t ZSBmcm9tIHRoZSBhcmd1bWVudCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRo ZSBvcHRpb25hbCBvbmVzLiAgKi8KKwkJaWYgKCpjcCA9PSAnWycgfHwgKmNwID09ICcoJykKKwkJ ICB7CisJCSAgICB3aGlsZSAoKmNwICE9IFRFWF9vcGdycCAmJiAqY3AgIT0gJ1wwJykKKwkJICAg ICAgY3ArKzsKKwkJICB9CiAJCWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAgIG9w Z3JwID0gdHJ1ZTsKIAkJICAgIGNwKys7CiAJCSAgfQorCQkvKiBKdW1waW5nIHRvIGEgVGVYIGNv bW1hbmQgZGVmaW5pdGlvbiBkb2Vzbid0IHdvcmsgaW4gYXQgbGVhc3QKKwkJICAgc29tZSBvZiB0 aGUgZWRpdG9ycyB0aGF0IHVzZSBjdGFncy4gIFVzaW5nIHRoZQorCQkgICAnLS10ZXgtYWx0LWZv cm1zJyBvcHRpb24gdG8gc3RyaXAgVEVYX2VzYyBzaG91bGQgcHJvdmlkZQorCQkgICBtaW5vciBp bXByb3ZlbWVudHMsIHRob3VnaCBvdmVyYWxsIHRoZSBiZWhhdmlvciBpcyBzdGlsbAorCQkgICBz dWJvcHRpbWFsLiAgKFdpdGggLS10ZXgtYWx0LWZvcm1zIHdlIHByaW50IGVhY2ggdGFnIHR3aWNl LAorCQkgICBvbmNlIHdpdGggYW5kIG9uY2Ugd2l0aG91dCBURVhfZXNjIGluIHRoZSB0YWcgbmFt ZS4gIFNlZQorCQkgICBiZWxvdy4pICBUaGUgdW5kb2N1bWVudGVkIGN0YWdzIG9wdGlvbiAnLS1u by1kdXBsaWNhdGVzJyBtYXkKKwkJICAgYWxzbyBoZWxwLiAgQ2hhbmdlcyBpbiB0ZXgtbW9kZS5l bCBpbiBHTlUgRW1hY3MgYWRkcmVzcyB0aGUKKwkJICAgbWFqb3JpdHkgb2YgdGhlc2UgaXNzdWVz IGZvciBldGFncywgdGhvdWdoIHRoZQorCQkgICAnLS10ZXgtYWx0LWZvcm1zJyBvcHRpb24gY2Fu IGFsc28gYmUgdXNlZnVsIHRoZXJlLiAqLworCisJCWlmICh0ZXhfYWx0X2Zvcm1zICYmICpjcCA9 PSBURVhfZXNjKQorCQkgIHsKKwkJICAgIGNwKys7CisJCSAgICBvbmVfZXNjID0gdHJ1ZTsKKwkJ ICB9CisKKwkJLyogQWRkIG9wdGlvbmFsIGFyZ3VtZW50IGJyYWNrZXRzICcoJyBhbmQgJ1snIHRv IHRoZSBsb29wIHRlc3QKKwkJICAgc28gdGhhdCB0aGVzZSBhcmd1bWVudHMgZG9uJ3QgYXBwZWFy IGluIHRhZyBuYW1lcy4gIEFsc28gYWRkCisJCSAgICc9JyBhcyBpdCdzIHJlbGF0aW9uYWwgaW4g dGhlIHZhc3QgbWFqb3JpdHkgb2YgY2FzZXMuICAqLwogCQlmb3IgKHAgPSBjcDsKLQkJICAgICAo IWNfaXNzcGFjZSAoKnApICYmICpwICE9ICcjJyAmJgotCQkgICAgICAqcCAhPSBURVhfb3BncnAg JiYgKnAgIT0gVEVYX2NsZ3JwKTsKKwkJICAgICAoIWNfaXNzcGFjZSAoKnApICYmICpwICE9ICcj JyAmJiAqcCAhPSAnPScgJiYKKwkJICAgICAgKnAgIT0gJ1snICYmICpwICE9ICcoJyAmJiAqcCAh PSBURVhfb3BncnAgJiYKKwkJICAgICAgKnAgIT0gVEVYX2NsZ3JwKTsKIAkJICAgICBwKyspCi0J CSAgY29udGludWU7CisJCSAgLyogQWxsb3cgb25seSBvbmUgZXNjYXBlIGNoYXIgaW4gYSB0YWcg bmFtZSwgd2hpY2gKKwkJICAgICAocHJpbWFyaWx5KSBlbmFibGVzIHRhZ2dpbmcgYSBUZVggY29t bWFuZCdzIGRpZmZlcmVudCwKKwkJICAgICBwb3NzaWJseSB0ZW1wb3JhcnksICdcbGV0JyBiaW5k aW5ncy4gICovCisJCSAgaWYgKCpwID09IFRFWF9lc2MpCisJCSAgICB7CisJCSAgICAgIGlmICgh b25lX2VzYykKKwkJCXsKKwkJCSAgb25lX2VzYyA9IHRydWU7CisJCQkgIGNvbnRpbnVlOworCQkJ fQorCQkgICAgICBlbHNlCisJCQlicmVhazsKKwkJICAgIH0KKwkJICBlbHNlCisJCSAgICBjb250 aW51ZTsKKwkJLyogUmUtcnVuIHRoZSBzY2FuIHRvIGNhdGNoIChoaWdobHkgdW51c3VhbCkgY2Fz ZXMgd2hlcmUgYQorCQkgICBjb21tYW5kIG5hbWUgaXMgb2YgdGhlIGZvcm0gJ1woJy4gICovCisJ CWlmICgoKnAgPT0gJygnIHx8ICpwID09ICdbJykgJiYgKHAgLSBjcCkgPCAyKQorCQkgIHsKKwkJ ICAgIGZvciAocCA9IGNwOworCQkJICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmCisJ CQkgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkJIHArKykKKwkJICAg ICAgY29udGludWU7CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNwOwogCQlsaW5lbGVuID0gbGIu bGVuOwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkKQEAgLTU4MjAsNiArNTkwOCwx NiBAQCBUZVhfY29tbWFuZHMgKEZJTEUgKmluZikKIAkJICAgICAgcCsrOwogCQkgICAgbGluZWxl biA9IHAgLSBsYi5idWZmZXIgKyAxOwogCQkgIH0KKwkJLyogV2l0aCAtLXRleC1hbHQtZm9ybXMg d2Ugc3RyaXAgYW55IFRFWF9lc2MgZnJvbSB0aGUgbmFtZSAoc2VlCisJCSAgIGFib3ZlKSwgcHJp bnQgdGhlIHRhZyB3aXRoIFRFWF9lc2MgcHJlcGVuZGVkIHRvIHRoZSBiYXJlIHRhZworCQkgICBu YW1lLCB0aGVuIHByaW50IHRoZSBzYW1lIHRhZyBhZ2FpbiB3aXRoIHRoZSBiYXJlIHRhZworCQkg ICBuYW1lLiAqLworCQlpZiAodGV4X2FsdF9mb3JtcykKKwkJICB7CisJCSAgc25wcmludGYgKG5l d25hbWUsIFVDSEFSX01BWCwgIiVjJXMiLCBURVhfZXNjLCBjcCk7CisJCSAgbWFrZV90YWcgKG5l d25hbWUsIG5hbWVsZW4gKyAxLCB0cnVlLAorCQkJICAgIGxiLmJ1ZmZlciwgbGluZWxlbiwgbGlu ZW5vLCBsaW5lY2hhcm5vKTsKKwkJICB9CiAJCW1ha2VfdGFnIChjcCwgbmFtZWxlbiwgdHJ1ZSwK IAkJCSAgbGIuYnVmZmVyLCBsaW5lbGVuLCBsaW5lbm8sIGxpbmVjaGFybm8pOwogCQlnb3RvIHRl eF9uZXh0X2xpbmU7IC8qIFdlIG9ubHkgdGFnIGEgbGluZSBvbmNlICovCmRpZmYgLS1naXQgYS9s aXNwL3RleHRtb2Rlcy90ZXgtbW9kZS5lbCBiL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsCmlu ZGV4IGEyNmU3YjljODNhLi4zZGU0YTA5M2UwOSAxMDA2NDQKLS0tIGEvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKQEAgLTEyNzcsNiAr MTI3Nyw4IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KIAkgICAgICAoc3ludGF4LXByb3Bl cnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpKQogICA7OyBUQUJzIGlu IHZlcmJhdGltIGVudmlyb25tZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGluay4KICAgKHNldHEt bG9jYWwgaW5kZW50LXRhYnMtbW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVmIGJhY2tlbmQgaW4g VGVYIGJ1ZmZlcnMuCisgICh0ZXgtc2V0LXRoaW5nYXRwdC1zeW1ib2wpCiAgIDs7IE90aGVyIHZh cnMgdGhhdCBzaG91bGQgYmUgYnVmZmVyLWxvY2FsLgogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LWNvbW1hbmQpCiAgIChtYWtlLWxvY2FsLXZhcmlhYmxlICd0ZXgtc3RhcnQtb2YtaGVhZGVy KQpAQCAtMzcyNCw2ICszNzI2LDIyMCBAQCB0ZXgtY2hrdGV4CiAgICAgICAgICAgICAgICAgICAg KGtpbGwtYnVmZmVyIChwcm9jZXNzLWJ1ZmZlciBwcm9jZXNzKSkpKSkpKQogICAgICAgKHByb2Nl c3Mtc2VuZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWluKSAocG9pbnQtbWF4 KSkKICAgICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nlc3MpKSkpCisMCis7 OzsgWHJlZiAvIEV0YWdzIHR3ZWFrcworCis7OyBSYXRoZXIgdGhhbiBkZWZpbmUgYSBuZXcgeHJl ZiBiYWNrZW5kIGZvciBUZVgsIHdlIHR3ZWFrIHRoZSBkZWZhdWx0Cis7OyBldGFncyBiYWNrZW5k IHNvIHRoYXQgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcKKzs7IGB4cmVm LWZpbmQtZGVmaW5pdGlvbnMnLCBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQKKzs7IGB4cmVmLWZp bmQtcmVmZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZCBNLT8sIHJlc3BlY3RpdmVseV0pIHdv cmsKKzs7IGluIFRlWCBidWZmZXJzLiAgVGhpcyBtb3N0bHkgaW52b2x2ZXMgZGVmaW5pbmcgYSBu ZXcgVEhJTkcgZm9yCis7OyBgdGhpbmctYXQtcG9pbnQnICh0ZXhzeW1ib2wpLCB0aGVuIHN1YnN0 aXR1dGluZyB0aGF0IFRISU5HIGZvcgorOzsgYHN5bWJvbCcgaW4gVGVYIGJ1ZmZlcnMsIGF0IGxl YXN0IGJ5IChjb25maWd1cmFibGUpIGRlZmF1bHQuICBUaGUKKzs7IFRlWCBlc2NhcGUgY2hhcmFj dGVyIHdpbGwgYnkgZGVmYXVsdCBhcHBlYXIgaW4gdGhlIHJlc3VsdGluZyBzdHJpbmcKKzs7IG9u bHkgd2hlbiB0aGUgeHJlZiBjb21tYW5kIHVzZXMgc3RyaW5nIHNlYXJjaCBhbmQgbm90IHJlZ2V4 cAorOzsgc2VhcmNoLCB0aG91Z2ggdGhpcyB0b28gaXMgY29uZmlndXJhYmxlLiAgVGhlIG5ldyBU SElORyB0eXBlIGFsc28KKzs7IGltcHJvdmVzIHRoZSBhY2N1cmFjeSBvZiBvdGhlciBjb21tYW5k cyB0aGF0IHVzZSBgdGhpbmctYXQtcG9pbnQnCis7OyBpbiBUZVggYnVmZmVycywgbGlrZSBgaXNl YXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50JyAob24gTS1zIE0tLikKKzs7IGFuZCBgcHJvamVj dC1maW5kLXJlZ2V4cCcgKG9uIEMteCBwIGcpLiAgSW5kZWVkLAorOzsgYHByb2plY3QtZmluZC1y ZWdleHAnIHNvbWV0aW1lcyB3b3JrcyBiZXR0ZXIgaW4gVGVYIGJ1ZmZlcnMgdGhhbgorOzsgYHhy ZWYtZmluZC1yZWZlcmVuY2VzJy4KKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3QK KyAgJyh0ZXgtbW9kZSBkb2N0ZXgtbW9kZSBsYXRleC1tb2RlIHBsYWluLXRleC1tb2RlIHNsaXRl eC1tb2RlIGFtcy10ZXgtbW9kZSkKKyAgIk1ham9yIG1vZGVzIHdoZXJlIGB0aGluZy1hdC1wb2lu dCcgbWF5IHVzZSB0aGUgYHRleHN5bWJvbCcgdHlwZS4KKworV2hlbiBhIGJ1ZmZlcidzIGBtYWpv ci1tb2RlJyBpcyBpbiB0aGlzIGxpc3QsIGFuZCB3aGVuCitgdGV4LXRoaW5nYXRwdC1pcy10ZXhz eW1ib2wnIGlzIHQgKHRoZSBkZWZhdWx0KSwgYW55IGNvbW1hbmQgaW4KK3RoYXQgYnVmZmVyIHRo YXQgY2FsbHMgYHRoaW5nLWF0LXBvaW50JyB3aXRoIGEgYHN5bWJvbCcgYXJndW1lbnQKK2FjdHVh bGx5IHVzZXMgdGhlIGB0ZXhzeW1ib2wnIGFyZ3VtZW50LCBpbnN0ZWFkLiIpCisKKyhkZWZjdXN0 b20gdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wgdAorICAiV2hlbiBub24tbmlsIHJlcGxhY2Ug YHN5bWJvbCcgYnkgYHRleHN5bWJvbCcgZm9yIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgYXBw bGllcyBvbmx5IHRvIFRlWCBidWZmZXJzLiAgVGhlIGB0ZXhzeW1ib2wnIFwidGhpbmdcIgorbW9k aWZpZXMgdGhlIHN0YW5kYXJkIGBzeW1ib2wnIGZvciB1c2UgaW4gc3VjaCBidWZmZXJzLgorCitX aGVuIG5pbCwgcmVzdG9yZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBgdGhpbmctYXQtcG9pbnQn IGluIFRlWAorYnVmZmVycy4KKworQ3VzdG9tIHdpbGwgYXV0b21hdGljYWxseSBhcHBseSBjaGFu Z2VzIGluIGFsbCBUZVggYnVmZmVycywgYnV0CitpZiB5b3Ugc2V0IHRoZSB2YXJpYWJsZSBvdXRz aWRlIG9mIEN1c3RvbSBpdCB3b24ndCB0YWtlIGVmZmVjdAordW50aWwgeW91IGFwcGx5IGl0IHdp dGggXFxbdGV4LXNldC10aGluZ2F0cHQtc3ltYm9sXS4gIFdpdGhvdXQgYQorcHJlZml4IGFyZ3Vt ZW50IChcXFt1bml2ZXJzYWwtYXJndW1lbnRdKSB0aGlzIGFwcGxpZXMgb25seSB0byB0aGUKK2N1 cnJlbnQgYnVmZmVyLCBidXQgd2l0aCBvbmUgaXQgYXBwbGllcyB0byBhbGwgVGVYIGJ1ZmZlcnMg aW4KK2BidWZmZXItbGlzdCcuICAoVGVYIGJ1ZmZlcnMgYXJlIHRob3NlIHdob3NlIGBtYWpvci1t b2RlJyBpcyBhCittZW1iZXIgb2YgYHRleC10aGluZ2F0cHQtbW9kZXMtbGlzdCcuKSIKKyAgOnR5 cGUgJ2Jvb2xlYW4KKyAgOmdyb3VwICd0ZXgtZmlsZQorICA6Z3JvdXAgJ1RlWC1taXNjCisgIDpp bml0aWFsaXplICMnY3VzdG9tLWluaXRpYWxpemUtZGVmYXVsdAorICA6c2V0IChsYW1iZGEgKHZh ciB2YWwpCisgICAgICAgICAoc2V0LWRlZmF1bHQgdmFyIHZhbCkKKyAgICAgICAgICh0ZXgtc2V0 LXRoaW5nYXRwdC1zeW1ib2wgdCkpCisgIDp2ZXJzaW9uICIzMC4xIikKKworKGRlZmN1c3RvbSB0 ZXgtdGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlICcoeHJlZi1maW5kLWRlZmluaXRpb25zCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVmaW5pdGlv bnMtb3RoZXItd2luZG93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtb3RoZXItZnJhbWUpCisgICJJZiBub24tbmlsLCBpbmNs dWRlIGB0ZXgtZXNjYXBlLWNoYXInIGluIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgdmFyaWFi bGUgb25seSB0YWtlcyBlZmZlY3Qgd2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnCitp cyB0ICh0aGUgZGVmYXVsdCksIGNoYW5naW5nIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8KK2B0aGlu Zy1hdC1wb2ludCcgZnJvbSBgc3ltYm9sJyB0byBgdGV4c3ltYm9sJy4gIFdoZW4gdGhhdCBpcyB0 aGUKK2Nhc2UsIHRoZSB2YWx1ZXMgb2YgdGhpcyB2YXJpYWJsZSBhY3QgYXMgZm9sbG93czoKKwor V2hlbiB0LCBgdGhpbmctYXQtcG9pbnQnIHdpbGwgYWx3YXlzIGluY2x1ZGUgYQorYHRleC1lc2Nh cGUtY2hhcicgKHVzdWFsbHkgYFxcJyksIHNob3VsZCBvbmUgYmUgcHJlc2VudCwgaW4gdGhlCitz dHJpbmcgaXQgcmV0dXJucyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBuaWwsIGB0aGluZy1hdC1w b2ludCcgd2lsbCBuZXZlciBpbmNsdWRlIHRoZQorYHRleC1lc2NhcGUtY2hhcicgaW4gdGhlIHN0 cmluZyBpdCByZXR1cm5zIGluIFRlWCBidWZmZXJzLgorCitPdGhlcndpc2UsIGl0J3MgYSBsaXN0 IG9mIGNvbW1hbmRzIGZvciB3aGljaCBgdGhpbmctYXQtcG9pbnQnCit3aWxsIGFsd2F5cyBpbmNs dWRlIHRoZSBgdGV4LWVzY2FwZS1jaGFyJyBpbiB0aGUgc3RyaW5nIGl0CityZXR1cm5zLiAgVGhl IHRocmVlIHhyZWYgY29tbWFuZHMgbGlzdGVkIGJ5IGRlZmF1bHQgbWF5IGNlYXNlIHRvCitmdW5j dGlvbiBwcm9wZXJseSBpbiBUZVggYnVmZmVycyBpZiBzZXQgdG8gbmlsLCBidXQgdXNpbmcgdGhl CitgLS10ZXgtYWx0LWZvcm1zJyBvcHRpb24gd2hlbiBjcmVhdGluZyB5b3VyIHRhZ3MgdGFibGUg d2l0aAorYGV0YWdzJyB3aWxsIHJlY3RpZnkgdGhhdC4iCisgIDp0eXBlICcoY2hvaWNlIChjb25z dCA6dGFnICJBbHdheXMgaW5jbHVkZSB0ZXgtZXNjYXBlLWNoYXIiIHQpCisgICAgICAgICAgICAg ICAgIChjb25zdCA6dGFnICJOZXZlciBpbmNsdWRlIHRleC1lc2NhcGUtY2hhciIgbmlsKQorICAg ICAgICAgICAgICAgICAoc2V0IDp0YWcgIkluY2x1ZGUgdGV4LWVzY2FwZS1jaGFyIGZvciB0aGVz ZSBjb21tYW5kcyIKKwkJICAgICAgKHJlcGVhdCA6aW5saW5lIHQgKHN5bWJvbCA6dGFnICJjb21t YW5kIikpKSkKKyAgOmdyb3VwICd0ZXgtZmlsZQorICA6Z3JvdXAgJ1RlWC1taXNjCisgIDp2ZXJz aW9uICIzMC4xIikKKworKGRlZnZhciB0ZXgtZXNjYXBlLWNoYXIgP1xcCisgICJUaGUgY3VycmVu dCwgcG9zc2libHkgYnVmZmVyLWxvY2FsLCBUZVggZXNjYXBlIGNoYXJhY3Rlci4KKworVGhlIGBl dGFncycgcHJvZ3JhbSBvbmx5IHJlY29nbml6ZXMgYFxcJyAoOTIpIGFuZCBgIScgKDMzKSBhcwor ZXNjYXBlIGNoYXJhY3RlcnMgaW4gVGVYIGRvY3VtZW50cywgYW5kIGlmIGl0IGRldGVjdHMgdGhl IGxhdHRlcgoraXQgYWxzbyB1c2VzIGA8PicgYXMgdGhlIFRlWCBncm91cGluZyBjb25zdHJ1Y3Qg cmF0aGVyIHRoYW4gYHt9Jy4KK1NldHRpbmcgdGhpcyB2YXJpYWJsZSB0byBhbnl0aGluZyBvdGhl ciB0aGFuIGBcXCcgb3IgYCEnIGlzCitwb3NzaWJsZSBidXQgd2lsbCBub3QgYmUgdXNlZnVsIHdp dGhvdXQgY2hhbmdlcyB0byBgZXRhZ3MnLCBhdAorbGVhc3QgZm9yIGNvbW1hbmRzIHRoYXQgc2Vh cmNoIHRhZ3MgdGFibGVzLCBzdWNoIGFzCitgeHJlZi1maW5kLWRlZmluaXRpb25zJyAoXFxbeHJl Zi1maW5kLWRlZmluaXRpb25zXSkgYW5kIFwKK2B4cmVmLWZpbmQtYXByb3BvcycgKFxcW3hyZWYt ZmluZC1hcHJvcG9zXSkuIikKKworKGRlZnZhciB0ZXgtdGhpbmdhdHB0LXN5bnRheC10YWJsZQor ICAobGV0KiAoKG9zdCAoaWYgKGJvdW5kcCAnVGVYLW1vZGUtc3ludGF4LXRhYmxlKQorICAgICAg ICAgICAgICAgICAgVGVYLW1vZGUtc3ludGF4LXRhYmxlCisgICAgICAgICAgICAgICAgdGV4LW1v ZGUtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChzdCAobWFrZS1zeW50YXgtdGFibGUgb3N0KSkp CisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgPyMgIiciIHN0KQorICAgIChtb2RpZnktc3ludGF4 LWVudHJ5ID89ICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/YCAiJyIgc3QpCisg ICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1wiICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1l bnRyeSA/JyAiJyIgc3QpCisgICAgc3QpCisgICJTeW50YXggdGFibGUgZm9yIGRlbGltaXRpbmcg YHRoaW5nLWF0LXBvaW50JyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBgdGV4LXRoaW5nYXRwdC1p cy10ZXhzeW1ib2wnIGlzIHQsIHRoaXMgc3ludGF4IHRhYmxlIGhlbHBzCit0byBkZWZpbmUgd2hh dCBhIGB0ZXhzeW1ib2wnIGlzLiAgVG8gYWNjZXNzIGl0IHVzZSB0aGUKK2B0ZXgtdGhpbmdhdHB0 LXN5bnRheC10YWJsZScgZnVuY3Rpb24uIikKKworKGRlZnVuIHRleC10aGluZ2F0cHQtc3ludGF4 LXRhYmxlICgpCisgICJSZXR1cm4gYSBzeW50YXggdGFibGUgZm9yIGB0aGluZy1hdC1wb2ludCcg aW4gVGVYIGJ1ZmZlcnMuCisKK0l0IG1vZGlmaWVzIHRoZSBwcmUtZGVmaW5lZCBzeW50YXggdGFi bGUgZGVwZW5kaW5nIGJvdGggb24gdGhlCitzZXR0aW5nIG9mIHRoZSBgdGV4LWVzY2FwZS1jaGFy JyB2YXJpYWJsZSwgd2hpY2ggbWF5IGJlIGJ1ZmZlcgorbG9jYWwsIGFuZCBvbiB3aGV0aGVyIHdl J3JlIHVzaW5nIEFVQ1RlWCBvciB0aGUgaW4tdHJlZSB0ZXgtbW9kZS4iCisgIChsZXQgKChuc3Qg KG1ha2Utc3ludGF4LXRhYmxlIHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlKSkKKyAgICAgICAg KGVzY3N5IChpZiAoYm91bmRwICdUZVgtbW9kZS1zeW50YXgtdGFibGUpCisgICAgICAgICAgICAg ICAgICAgP1xcCisgICAgICAgICAgICAgICAgID8vKSkpCisgICAgKGNvbmQgKChjaGFyLWVxdWFs IHRleC1lc2NhcGUtY2hhciA/XFwpKQorICAgICAgICAgICgoY2hhci1lcXVhbCB0ZXgtZXNjYXBl LWNoYXIgPyEpCisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID9cXCAiXyIgbnN0KQor ICAgICAgICAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSB0ZXgtZXNjYXBlLWNoYXIgKGNoYXItdG8t c3RyaW5nIGVzY3N5KSBuc3QpCisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID88ICIo PiIgbnN0KQorICAgICAgICAgICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/PiAiKTwiIG5zdCkpCisg ICAgICAgICAgKHQKKyAgICAgICAgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1xcICJfIiBuc3Qp CisgICAgICAgICAgIChtb2RpZnktc3ludGF4LWVudHJ5IHRleC1lc2NhcGUtY2hhciAoY2hhci10 by1zdHJpbmcgZXNjc3kpIG5zdCkpKQorICAgIG5zdCkpCisKKzs7IFNldHVwIEFVQ1RlWCBtb2Rl cy4gIChTaG91bGQgdGhpcyBiZSBpbiBBVUNUZVggaXRzZWxmPykKKyhhZGQtaG9vayAnVGVYLW1v ZGUtaG9vayAjJ3RleC1zZXQtdGhpbmdhdHB0LXN5bWJvbCkKKworOzsgYHhyZWYtZmluZC1yZWZl cmVuY2VzJyBuZWVkcyB0aGlzIHdoZW4gY2FsbGVkIGZyb20gYSBsYXRleC1tb2RlCis7OyBidWZm ZXIgaW4gb3JkZXIgdG8gc2VhcmNoIGZpbGVzIG9yIGJ1ZmZlcnMgd2l0aCBhIC50ZXggc3VmZml4 Cis7OyAoaW5jbHVkaW5nIHRoZSBidWZmZXIgZnJvbSB3aGljaCBpdCBoYXMgYmVlbiBjYWxsZWQp LiAgV2UgYXBwZW5kIGl0Cis7OyB0byBgYXV0by1tb2RlLWFsaXN0JyBzbyBhcyBub3QgdG8gaW50 ZXJmZXJlIHdpdGggdGhlIHVzdWFsCis7OyBtb2RlLXNldHRpbmcgYXBwYXJhdHVzLgorKGFkZC10 by1saXN0ICdhdXRvLW1vZGUtYWxpc3QgJygiXFwuW3RUXWVbeFhdXFwnIiAuIGxhdGV4LW1vZGUp IHQpCisKKyhkb2xpc3QgKHRleG1vZGUgdGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0KQorICAocHV0 IHRleG1vZGUgJ2ZpbmQtdGFnLWRlZmF1bHQtZnVuY3Rpb24gJ3RleC0tdGhpbmctYXQtcG9pbnQp KQorCisocHV0ICd0ZXhzeW1ib2wgJ2JlZ2lubmluZy1vcCAndGV4LXRoaW5nYXRwdC0tYmVnaW5u aW5nLW9mLXRleHN5bWJvbCkKKworKHB1dCAndGV4c3ltYm9sICdlbmQtb3AgJ3RleC10aGluZ2F0 cHQtLWVuZC1vZi10ZXhzeW1ib2wpCisKKyhkZWNsYXJlLWZ1bmN0aW9uIGNsLXN1YnN0aXR1dGUg ImNsLXNlcSIgKGNsLW5ldyBjbC1vbGQgY2wtc2VxICZyZXN0IGNsLWtleXMpKQorCisoZGVmdW4g dGV4LXNldC10aGluZ2F0cHQtc3ltYm9sICgmb3B0aW9uYWwgYWxsKQorICAiU2V0IG1lYW5pbmcg b2YgYHRoaW5nLWF0LXBvaW50JyBgc3ltYm9sJyBpbiAoQUxMPykgVGVYIGJ1ZmZlcnMuCisKK1do ZW4gYHRleC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sJyBpcyB0LCBzZXQgYHRoaW5nLWF0LXBvaW50 JyB0bwordXNlIHRoZSBgdGV4c3ltYm9sJyBcInRoaW5nXCIgaW5zdGVhZCBvZiBgc3ltYm9sJywg b3RoZXJ3aXNlCittYWludGFpbiBvciByZXN0b3JlIHRoZSBkZWZhdWx0LiAgV2l0aG91dCBhbiBv cHRpb25hbCBBTEwgbWFrZQorY2hhbmdlcyBvbmx5IGluIGN1cnJlbnQgYnVmZmVyLCB3aXRoIEFM TCBtYWtlIGNoYW5nZXMgaW4gYWxsIFRlWAorYnVmZmVycyBpbiBgYnVmZmVyLWxpc3QnLiIKKyAg KGludGVyYWN0aXZlICJQIikKKyAgKHJlcXVpcmUgJ3RoaW5nYXRwdCkKKyAgKGlmIGFsbAorICAg ICAgKGRvbGlzdCAoYnVmIChidWZmZXItbGlzdCkpCisgICAgICAgICh3aXRoLWN1cnJlbnQtYnVm ZmVyIGJ1ZgorICAgICAgICAgICh0ZXgtLXN5bWJvbC1vci10ZXhzeW1ib2wpKSkKKyAgICAodGV4 LS1zeW1ib2wtb3ItdGV4c3ltYm9sKSkpCisKKyhkZWZ1biB0ZXgtLXN5bWJvbC1vci10ZXhzeW1i b2wgKCkKKyAgKHdoZW4gKG1lbXEgbWFqb3ItbW9kZSB0ZXgtdGhpbmdhdHB0LW1vZGVzLWxpc3Qp CisgICAgKGlmIHRleC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sCisgICAgICAgIChzZXRxLWxvY2Fs IHRoaW5nLWF0LXBvaW50LXByb3ZpZGVyLWFsaXN0CisgICAgICAgICAgICAgICAgICAgIChhZGQt dG8tbGlzdCAndGhpbmctYXQtcG9pbnQtcHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICcoc3ltYm9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkpCisgICAgICAg ICAgICAgICAgICAgIGlzZWFyY2gtZm9yd2FyZC10aGluZy1hdC1wb2ludAorICAgICAgICAgICAg ICAgICAgICAoY2wtc3Vic3RpdHV0ZSAndGV4c3ltYm9sICdzeW1ib2wKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaXNlYXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50KSkKKyAg ICAgIChzZXRxLWxvY2FsIHRoaW5nLWF0LXBvaW50LXByb3ZpZGVyLWFsaXN0CisgICAgICAgICAg ICAgICAgICAoZGVsZXRlICcoc3ltYm9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgdGhpbmctYXQtcG9pbnQtcHJvdmlkZXItYWxpc3QpCisgICAgICAg ICAgICAgICAgICBpc2VhcmNoLWZvcndhcmQtdGhpbmctYXQtcG9pbnQKKyAgICAgICAgICAgICAg ICAgIChjbC1zdWJzdGl0dXRlICdzeW1ib2wgJ3RleHN5bWJvbAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaXNlYXJjaC1mb3J3YXJkLXRoaW5nLWF0LXBvaW50KSkpKSkKKworKGRl ZnVuIHRleC0tdGhpbmctYXQtcG9pbnQgKCkKKyAgIlBhc3MgYHRoaW5nJyB0eXBlIGB0ZXhzeW1i b2wnIHRvIGBib3VuZHMtb2YtdGhpbmctYXQtcG9pbnQnLgorCitXaGVuIGB0ZXgtdGhpbmdhdHB0 LWlzLXRleHN5bWJvbCcgaXMgdCwgY2FsbHMgaW4gVGVYIGJ1ZmZlcnMgdG8KK2B0aGluZy1hdC1w b2ludCcgd2l0aCBhcmd1bWVudCBgc3ltYm9sJyB3aWxsIGluc3RlYWQgdXNlIHRoZQorYXJndW1l bnQgYHRleHN5bWJvbCcuICBPdGhlcndpc2UgaXQgd2lsbCBjYWxsIGBmaW5kLXRhZy1kZWZhdWx0 Jy4iCisgIChpZiB0ZXgtdGhpbmdhdHB0LWlzLXRleHN5bWJvbAorICAgICAgKGxldCAoKGJvdW5k cyAoYm91bmRzLW9mLXRoaW5nLWF0LXBvaW50ICd0ZXhzeW1ib2wpKSkKKyAgICAgICAgKHdoZW4g Ym91bmRzCisgICAgICAgICAgKGJ1ZmZlci1zdWJzdHJpbmctbm8tcHJvcGVydGllcyAoY2FyIGJv dW5kcykgKGNkciBib3VuZHMpKSkpCisgICAgKGZpbmQtdGFnLWRlZmF1bHQpKSkKKworKGRlZnVu IHRleC0taW5jbHVkZS1lc2NhcGUtcCAoY29tbWFuZCkKKyAgKG9yIChlcSB0ZXgtdGhpbmdhdHB0 LWluY2x1ZGUtZXNjYXBlIHQpCisgICAgICAobWVtcSBjb21tYW5kIHRleC10aGluZ2F0cHQtaW5j bHVkZS1lc2NhcGUpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmluZy1vZi10ZXhz eW1ib2wgKCkKKyAgIk1vdmUgcG9pbnQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgY3VycmVudCBU ZVggc3ltYm9sLiIKKyAgKHdpdGgtc3ludGF4LXRhYmxlICh0ZXgtdGhpbmdhdHB0LXN5bnRheC10 YWJsZSkKKyAgICAoYW5kIChyZS1zZWFyY2gtYmFja3dhcmQgIlxcKFtdWygpXVxcfFxcKFxcc3dc XHxcXHNfXFx8XFxzLlxcKStcXCkiKQorICAgICAgICAgKHNraXAtc3ludGF4LWJhY2t3YXJkICJ3 Xy4iKQorICAgICAgICAgKHdoZW4gKHRleC0taW5jbHVkZS1lc2NhcGUtcCB0aGlzLWNvbW1hbmQp CisgICAgICAgICAgIChza2lwLXN5bnRheC1iYWNrd2FyZCAiXFwvIikpKSkpCisKKyhkZWZ1biB0 ZXgtdGhpbmdhdHB0LS1lbmQtb2YtdGV4c3ltYm9sICgpCisgICJNb3ZlIHBvaW50IHRvIHRoZSBl bmQgb2YgdGhlIGN1cnJlbnQgVGVYIHN5bWJvbC4iCisgICh3aXRoLXN5bnRheC10YWJsZSAodGV4 LXRoaW5nYXRwdC1zeW50YXgtdGFibGUpCisgICAgKGFuZCAocmUtc2VhcmNoLWZvcndhcmQgIlxc KFtdWygpXVxcfFxcKFxcc3dcXHxcXHNfXFx8XFxzLlxcKStcXCkiKQorICAgICAgICAgKHNraXAt c3ludGF4LWZvcndhcmQgIndfLiIpKSkpCiAKIChtYWtlLW9ic29sZXRlLXZhcmlhYmxlICd0ZXgt bW9kZS1sb2FkLWhvb2sKICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2UgYHdpdGgtZXZhbC1h ZnRlci1sb2FkJyBpbnN0ZWFkLiIgIjI4LjEiKQotLSAKMi4zNS44Cgo= --0000000000009f58c406053b9c14--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 10:46:20 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 03 06:46:20 2023 Received: from localhost ([127.0.0.1]:39729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qckcV-0003SO-QP for submit <at> debbugs.gnu.org; Sun, 03 Sep 2023 06:46:20 -0400 Received: from mail-lf1-x12b.google.com ([2a00:1450:4864:20::12b]:53672) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1qckcT-0003Rz-Rr for 53749 <at> debbugs.gnu.org; Sun, 03 Sep 2023 06:46:18 -0400 Received: by mail-lf1-x12b.google.com with SMTP id 2adb3069b0e04-50091b91a83so940128e87.3 for <53749 <at> debbugs.gnu.org>; Sun, 03 Sep 2023 03:46:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693737962; x=1694342762; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=nNLM09GD1aQtb+kDb263aPo7FFW0dbUkmRkwskK99wI=; b=BKn3uZ5zEBs1lsgWmtzrZqjymnQ5PdYmX4hghBXr+C3jU1koj1wwLU0KT5Ew+D8jfp vuJ1HkxUA40umih9wdArzqXVIwgLaQ42gKKtshUifGlJOaxxM2zazrSRJxjN3sWNx2gr bxcaMyRUiYc7WOjnZbPpZoDZ8fWLCOAZmWBkKqkPQ2A2hSR21tOaER2sfQo90uNEmRNv 8eYJ1SjcgcosqsHefWoe0e1RZd8yC4kodTADIzl41JxuOeH/fzvg7SQthZccXka1AFpS 3KFVrWQXeqyDgnqyS0RyDpSjWuMutOwQoJ0RLSJJlvthTZwGN+9DV2fXFUn7ed5jXx3g h2jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693737962; x=1694342762; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nNLM09GD1aQtb+kDb263aPo7FFW0dbUkmRkwskK99wI=; b=J+ut1SgqrdurKlbfNfzcr8hb+B5ewgRgf9QOutob4DTkO82agUgD4glyfW1sJFiXU+ s/4ZBTkencYlGWSyV921nQFK+viYCjGPQseXUGJGVSLRq5LfqyRuJHJ2UH0uoKTer+0Z NZFE2aEq6w+aKPN5ISRTMoFJrsmswMfp32BJ9iivOh9Jlo3v/O8g/u3WcKGmTTMbQA7U 0YBtRKeWjpptL7/WBZUPpx7Ure9Lrokp+abDSQ/CQQLNrSfWal7RK1SwIAoP5Cl4gWEZ mcpZorPVI6wQRchef/Gv9p7FD/Tbamgbpn0l/9xSgaxyiFozY4++agnD1/HB/swxz56U sVuQ== X-Gm-Message-State: AOJu0YwOeeO5jqImwdZwgRsNBorFoD+veUN1ngvl/YM3Aw6N9ff30RaD VMOUHnsqqcfgmw6iPzpbMussxiqtCRzuLa3W9mo= X-Google-Smtp-Source: AGHT+IFfbbh5fmuQiahj+EcxytR924l3xraTHHKT69nLnXsaevrlVdw8IYN9vCpP3yuB81Mdo7s50DIKBk1+6qbyenA= X-Received: by 2002:a19:5e13:0:b0:500:d8d6:fc5b with SMTP id s19-20020a195e13000000b00500d8d6fc5bmr3967860lfb.31.1693737961483; Sun, 03 Sep 2023 03:46:01 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 3 Sep 2023 03:46:01 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> MIME-Version: 1.0 Date: Sun, 3 Sep 2023 03:46:01 -0700 Message-ID: <CADwFkmkbMSXdjB6kF3a68_1vb4dv05_vMrKrvoX908nZJrpxOg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) David Fussner <dfussner@HIDDEN> writes: > Thanks for the nudge. I do in fact have a patch that I'm just about finding > time to test, so I'll try to get it to the list within a week or two. Sounds good, and thank you.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 10:03:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 03 06:03:48 2023 Received: from localhost ([127.0.0.1]:39581 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qcjxM-0007pq-8a for submit <at> debbugs.gnu.org; Sun, 03 Sep 2023 06:03:48 -0400 Received: from mail-pj1-x1031.google.com ([2607:f8b0:4864:20::1031]:48376) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1qcjxI-0007pb-Qv for 53749 <at> debbugs.gnu.org; Sun, 03 Sep 2023 06:03:46 -0400 Received: by mail-pj1-x1031.google.com with SMTP id 98e67ed59e1d1-26f7f71b9a7so348447a91.0 for <53749 <at> debbugs.gnu.org>; Sun, 03 Sep 2023 03:03:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1693735408; x=1694340208; 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=Q/+ickqzNEzkc7jiqfa4uHFHZON87/r7vWcAiIXNiMA=; b=VpQ9ynOpDaG4xlkbdL1N1rqAchYlYNPBDbHZ/EKnqwxBEjWDwYY3basfjE9YeZ1AnO sxZWvk6/KdlRQv/4byO2EaIdRFqqQtdNSjLXsB+Cz4/53juz+UEzmZR4wLhSjFj3RIGT Etf+w+2+e9KObaG2dGpgHsJch/UNM0Sl880A8EMEN/uAtZ5HfG5D1XvZJlKdvc95nqI4 Ez/DUCicswfqy1MxdpaM0XiQzyZbONVxmwKbCv9cvO9w4sMN+F85X5ClyhX1l51eX1s+ /dogfZr7DCVqsS8wZnhDG2a2H1wqvNwCg/jjA2d3mrFRm8TFxgfnB+B5t+AY/Qv70dAV l2iA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693735408; x=1694340208; 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=Q/+ickqzNEzkc7jiqfa4uHFHZON87/r7vWcAiIXNiMA=; b=Qe5rZpdUqhKCVafhL/IjROlwb6GdoVCsQvAIvIxQwbgN+UV4OusJnzglZ6r/QKy8bN 91v4RFfB03H4coCTQIb03ShzvfLiYHXXUUwL0kn2VM+m5tu9OcDqs2QfKQAT0Ux8z3fb JpZC3cyPCda1dJY5USvPJd5ixlf0hNSpPTQn2LVGJ61iSS0laqLJzE5r2AWRTOs8fyPK S2gGEq/eAuSttAKzNTOEw6eUB1MBNCEhmB6YxNSRT9N9lATj5kYP16w8Y6KIMEwWypGA 3e57pjlO2GV9EsCm3om27f/XZcqvEhG8W8S8XJKm1/Ys1OQJlKeEYIs+6Tawv4Mwi9Rt 9fYQ== X-Gm-Message-State: AOJu0Yyn52wRrLk21SeZDiuRzqS9G3NA3jXcjkA1K+SKLJzhQ8+rzl7G NYLCpa6ekjmdjyZvOLeBKjU+eWMctUBltcW9310= X-Google-Smtp-Source: AGHT+IHhz4Ys0lNr/UE1lxTnWLVEAbW6Ga2CtdADlifrotq1ChO+m1mHc7Mblv6JtQlJhsrr5iGzvmAcvOWqoMlPGYQ= X-Received: by 2002:a17:90a:aa94:b0:271:c2fd:721b with SMTP id l20-20020a17090aaa9400b00271c2fd721bmr6471523pjq.18.1693735408356; Sun, 03 Sep 2023 03:03:28 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> In-Reply-To: <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Sun, 3 Sep 2023 11:03:16 +0100 Message-ID: <CADF+RtjGfibN3Yg8mf4hVB9uPWtAwp0m6J2LRH7n0Z20S7+Yzg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Stefan Kangas <stefankangas@HIDDEN> Content-Type: multipart/alternative; boundary="0000000000005bd24c06047181a8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) --0000000000005bd24c06047181a8 Content-Type: text/plain; charset="UTF-8" Hi Stefan Thanks for the nudge. I do in fact have a patch that I'm just about finding time to test, so I'll try to get it to the list within a week or two. Thanks, and best, David. On Sun, 3 Sept 2023, 10:08 Stefan Kangas, <stefankangas@HIDDEN> wrote: > David Fussner <dfussner@HIDDEN> writes: > > > Thanks Lars, will do. > > > > On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen <larsi@HIDDEN> wrote: > >> > >> David Fussner <dfussner@HIDDEN> writes: > >> > >> > The conclusion at the time was that the patch needed reworking before > >> > Dmitry was happy with it, and I've not yet found enough time to do so, > >> > though I'm still fully intending to make the necessary changes. Please > >> > leave the bug open so I can restart the conversation when I have a > >> > better patch. > >> > >> Of course. > > That was a year ago. Have you made any progress here? > --0000000000005bd24c06047181a8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Hi=C2=A0Stefan<div dir=3D"auto"><br></div><div dir=3D"aut= o">Thanks for the nudge. I do in fact have a patch that I'm just about = finding time to test, so I'll try to get it to the list within a week o= r two.</div><div dir=3D"auto"><br></div><div dir=3D"auto">Thanks, and best,= =C2=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">David.=C2=A0</div= ></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr"= >On Sun, 3 Sept 2023, 10:08 Stefan Kangas, <<a href=3D"mailto:stefankang= as@HIDDEN">stefankangas@HIDDEN</a>> wrote:<br></div><blockquote cl= ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p= adding-left:1ex">David Fussner <<a href=3D"mailto:dfussner@HIDDEN= m" target=3D"_blank" rel=3D"noreferrer">dfussner@HIDDEN</a>> wri= tes:<br> <br> > Thanks Lars, will do.<br> ><br> > On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen <<a href=3D"mailto:= larsi@HIDDEN" target=3D"_blank" rel=3D"noreferrer">larsi@HIDDEN</a>>= wrote:<br> >><br> >> David Fussner <<a href=3D"mailto:dfussner@HIDDEN" targe= t=3D"_blank" rel=3D"noreferrer">dfussner@HIDDEN</a>> writes:<br> >><br> >> > The conclusion at the time was that the patch needed reworkin= g before<br> >> > Dmitry was happy with it, and I've not yet found enough t= ime to do so,<br> >> > though I'm still fully intending to make the necessary ch= anges. Please<br> >> > leave the bug open so I can restart the conversation when I h= ave a<br> >> > better patch.<br> >><br> >> Of course.<br> <br> That was a year ago.=C2=A0 Have you made any progress here?<br> </blockquote></div> --0000000000005bd24c06047181a8--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Stefan Kangas <stefankangas@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 3 Sep 2023 09:08:47 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 03 05:08:47 2023 Received: from localhost ([127.0.0.1]:39362 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1qcj66-0003rA-Qu for submit <at> debbugs.gnu.org; Sun, 03 Sep 2023 05:08:47 -0400 Received: from mail-lf1-x131.google.com ([2a00:1450:4864:20::131]:48318) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <stefankangas@HIDDEN>) id 1qcj64-0003qm-HM for 53749 <at> debbugs.gnu.org; Sun, 03 Sep 2023 05:08:45 -0400 Received: by mail-lf1-x131.google.com with SMTP id 2adb3069b0e04-500b0f06136so933169e87.0 for <53749 <at> debbugs.gnu.org>; Sun, 03 Sep 2023 02:08:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693732108; x=1694336908; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:from:to:cc:subject:date:message-id:reply-to; bh=gJRb1es0KM5WPn/lcfNivxNbZKbPSzELieC1bIDA8Ww=; b=pPkVObV8r+2dFof2yemdDMZoPCBp+0Q81gxZN91tuHHuES187SKln8DHlKvxSjT8Xp UqSDK/puJmS4Ghl2/IZGE+t5id6Q+J864+3z1HIexckvqrJdYVy0EL5WNuq/ZTv1heQ6 5qrNHAohXZ5+DN/lv4MdFVIMjkWHMk7OGFy3pcTImdX0Gta6qmLzfz9P9LilybznSHL2 6UxZlQsWM+kd44M6l9Z3BShyys9yreDQAMpE24lsPG0GYIUgdygrRKm4tRlpkFUDmG1i pmYSyr0L3TvdWaEWUrZz/kHHu0jP6pwCpXD0Koa3kRT6L8nJLdxDJ9ECg4NAEKfB5334 hW/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693732108; x=1694336908; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=gJRb1es0KM5WPn/lcfNivxNbZKbPSzELieC1bIDA8Ww=; b=O+aFPJ2+e8Wt6IvNGrQNSqeWwaLShckTmSyhkAVEP2i9JWTW1PacOyCaLkFJhaQboY 69vXLd1VomHZtwbwhAnPWv4Vl6FuW9KisnIPKWtlRX3o4NP8zM5ktgfOcatQz6xTLlNV SLOrz22DwowcmZWCOkaU7tA3h6fQvf0ZL4SLTpJfoj1PIcgU+TtDu2EHrjB/SWwZmP4y 4NFRPcmzsywIYBWorh1uNa0SPjYEQ3RtjX1l+7rWJfm2yACDf7lsavH94JEYG/Hdmwqc p4xvlfrpPMu7LWVdcz7pHvpW88n5N53Oq53n22Jhny8xQV0Dldf1X7t5Y8ow4RDQwgOi M9dw== X-Gm-Message-State: AOJu0Yx47NruXhkpoNJhZJ+oGmnfOEvbAXKHc0bxm2jdwoVzaMDtwADT 2ZPhdJumzKf+aEZMN9W6zWejMa+T9w/dNXLdFbM= X-Google-Smtp-Source: AGHT+IEBNa/fMWHqi1hqcfdkxIqfopCdByC07SAJkju/esC2JzDWAezLkLE3PlcmC0zXlZrxKYag/hwHvhXI22nX1Rk= X-Received: by 2002:a05:6512:6ca:b0:500:b0e8:a899 with SMTP id u10-20020a05651206ca00b00500b0e8a899mr6828450lff.30.1693732108038; Sun, 03 Sep 2023 02:08:28 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 3 Sep 2023 02:08:27 -0700 From: Stefan Kangas <stefankangas@HIDDEN> In-Reply-To: <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> (David Fussner's message of "Thu, 8 Sep 2022 16:50:55 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> MIME-Version: 1.0 Date: Sun, 3 Sep 2023 02:08:27 -0700 Message-ID: <CADwFkm=p8_Tbu+cXMDA8zEKovb+Ld7QFUJz_AhFnJebhik=JBg@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: David Fussner <dfussner@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi@HIDDEN>, Dmitry Gutov <dgutov@HIDDEN> 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 (-) David Fussner <dfussner@HIDDEN> writes: > Thanks Lars, will do. > > On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen <larsi@HIDDEN> wrote: >> >> David Fussner <dfussner@HIDDEN> writes: >> >> > The conclusion at the time was that the patch needed reworking before >> > Dmitry was happy with it, and I've not yet found enough time to do so, >> > though I'm still fully intending to make the necessary changes. Please >> > leave the bug open so I can restart the conversation when I have a >> > better patch. >> >> Of course. That was a year ago. Have you made any progress here?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 15:51:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 11:51:13 2022 Received: from localhost ([127.0.0.1]:59941 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1oWJo8-0006yM-KV for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 11:51:12 -0400 Received: from mail-qk1-f171.google.com ([209.85.222.171]:43868) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1oWJo4-0006y5-V2 for 53749 <at> debbugs.gnu.org; Thu, 08 Sep 2022 11:51:11 -0400 Received: by mail-qk1-f171.google.com with SMTP id j6so13212310qkl.10 for <53749 <at> debbugs.gnu.org>; Thu, 08 Sep 2022 08:51:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=tpQXfKI0HxK8WEM4KeKdscXFm2+cVBr00pH7opmcFA0=; b=ajGMx68arKQzN5KkDPfZgFGnljmfVS2kqLYX1aDDWB6nc1e9viRmc6MZ3l3IONMlvx ni/Cp0HIwX53lGbYqtIFRV1XnXfT6jrI/cM0OyHb5MLhros61fHbLAsWtViZI7GHAUp3 Yd/DqWPFZ1BxDhUrKI1uVGBiMOql+lHjSCcZSEscW7sD2LwPhwVHvF394eM1UKgoDSvP 6Csnv3PbsOCcqhVEtTqsEfGT1Wi+5klJ6KsEu1raXPX/QRbPMMm9LlejLDFKh06ff+DZ 9J0ir29zwaYkevXQLoLiL2Gei5D4dXdEkkGf6VnX7Dm7Katx6C5bx05nY5khGEyMEEfi 0ohw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=tpQXfKI0HxK8WEM4KeKdscXFm2+cVBr00pH7opmcFA0=; b=ibYQ9Av8UGB14zkIcTLsz2OrLyicmg2RNCw1gGXFQMEUMPvSYpO2OxsrlCBI28NLKR 9kjACF8XKAOaYgSyIJcXR2RE3j3DKkcJuALgSF/ZcM7+Ncz8tlh4K9AhgtKtcxMa2zZk S0GZAFvKyWgEcboHiBANDaomD7/9wy+NNYxZunhqF76Yp2vIHNPG7eUnYBlLRtDrqKQa kQ0dSNpmCiUVoOS2h/iEUKI2HzsXygDIUI/2uhGkXlTc6GSC6aOd5h2LQ7vRhfyFF2Uh NMsk0txBM9y6wewK+Y4EXqH6OZgQ1/rjEcHdUTfr7qst2dEQxscrZz0eruVoApwa8AUC LxdA== X-Gm-Message-State: ACgBeo0QtL+tWgH1/xYx37qsc52+cTZYriJdgTRNehDcBe5ePjOki8f+ iDf+pHOTCELCNADSdbFGNujwy9DeACoTJ1J6WQk= X-Google-Smtp-Source: AA6agR5kSb/3AieDnf5mFeG6WVfv7jtarsO9irp9H0BxHSWz7ENZsAOhyXYLaBxHEvD5qPs/9COIaTchfziugpxbjd4= X-Received: by 2002:a05:620a:458c:b0:6bb:848a:b86b with SMTP id bp12-20020a05620a458c00b006bb848ab86bmr6930840qkb.267.1662652263172; Thu, 08 Sep 2022 08:51:03 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> <8735d20yvd.fsf@HIDDEN> In-Reply-To: <8735d20yvd.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 8 Sep 2022 16:50:55 +0100 Message-ID: <CADF+Rtgz5f6fcVuTLrv_N8oObRw+Uw-Je7bz54Gagb3pRgpR=g@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Lars Ingebrigtsen <larsi@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Dmitry Gutov <dgutov@HIDDEN> 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 (-) Thanks Lars, will do. On Thu, 8 Sept 2022 at 14:39, Lars Ingebrigtsen <larsi@HIDDEN> wrote: > > David Fussner <dfussner@HIDDEN> writes: > > > The conclusion at the time was that the patch needed reworking before > > Dmitry was happy with it, and I've not yet found enough time to do so, > > though I'm still fully intending to make the necessary changes. Please > > leave the bug open so I can restart the conversation when I have a > > better patch. > > Of course. > > > (Oh, and I'm more than happy to sign the copyright > > assignment whenever Dmitry judges the patch to be ready.) > > Here's the form to get started: > > > Please email the following information to assign@HIDDEN, and we > will send you the assignment form for your past and future changes. > > Please use your full legal name (in ASCII characters) as the subject > line of the message. > ---------------------------------------------------------------------- > REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES > > [What is the name of the program or package you're contributing to?] > Emacs > > [Did you copy any files or text written by someone else in these changes? > Even if that material is free software, we need to know about it.] > > [Do you have an employer who might have a basis to claim to own > your changes? Do you attend a school which might make such a claim?] > > [For the copyright registration, what country are you a citizen of?] > > [What year were you born?] > > [Please write your email address here.] > > [Please write your postal address here.] > > [Which files have you changed so far, and which new files have you written > so far?]
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:39:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 09:39:13 2022 Received: from localhost ([127.0.0.1]:57751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1oWHkP-0000KM-5t for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:39:13 -0400 Received: from quimby.gnus.org ([95.216.78.240]:57380) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1oWHkN-0000K8-9r for 53749 <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:39:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=IOOOhh1kVIe3NDZvnEsWihVh4PoaKhrJdUXVz73wOWc=; b=UkaJzvvbC7h3KPlHBVC6so9RTn mvMQkwxtCHnAW3yi2JT2wCGqfCLQB0Tn99eZLM3RQJH830h7A2Sl9hj6Sh94Raj4reJqFNi7DvL2k dvCoGysNfHZNfMzz15IIB97TOFdGBFVz04pi9IF8a2z1jhyMOv6Cekrf7Yc5gP05yiHE=; Received: from [84.212.220.105] (helo=joga) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1oWHkF-0002xX-9t; Thu, 08 Sep 2022 15:39:05 +0200 From: Lars Ingebrigtsen <larsi@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> (David Fussner's message of "Thu, 8 Sep 2022 14:34:47 +0100") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAgMAAAAqbBEUAAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEWXlWNpalDFzrf/ //+6G1XXAAAAAWJLR0QDEQxM8gAAAAlwSFlzAAALEgAACxIB0t1+/AAAAAd0SU1FB+YJCAw3Jo99 xAwAAAEDSURBVCjPbdG9boQwDAfwfxCWKqYghb0duvAUQTqWm5wq3ts36XBT99tvaKWKp6zzBQw1 QsoPJ8GJgRQGw6aBf0A4QOQPTCLzkTlDdQKmHQbUnwHs0xZd1eC8vg00ok0j3ZgbDIww27nCBu8r AJEVrqATrZOogCXHNcO5UWIDmV6PsA4F1jtaLgV9WBiMmmGS0Z+gZRc8SQy+og8SVkWXQDehA9+B XlCBaLSyBrH6f99gFFzxPn2INOhQM7ZgTadhh4Ikfr6VDRZ9IkpGQkxj1HJC4ApDd3E75GcwDXCv jrRqzPl6490feLPYga9PTA3b9sDku9yfdOEkyN3WL78oXdz+AJswgvt/SGGhAAAAWmVYSWZNTQAq AAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAAhMA AwAAAAEAAQAAAAAAAAAAAEgAAAABAAAASAAAAAEfUvc0AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIy LTA5LTA4VDEyOjU1OjM4KzAwOjAwWNHXXwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMi0wOS0wOFQx Mjo1NTozOCswMDowMCmMb+MAAAAXdEVYdGV4aWY6WUNiQ3JQb3NpdGlvbmluZwAxrA+AYwAAAABJ RU5ErkJggg== X-Now-Playing: Body =?utf-8?Q?Me=CF=80a's?= _The Work Is Slow_: "Ribbon" Date: Thu, 08 Sep 2022 15:39:02 +0200 Message-ID: <8735d20yvd.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: David Fussner <dfussner@HIDDEN> writes: > The conclusion at the time was that the patch needed reworking before > Dmitry was happy with it, and I've not yet found enough time to do so, > though I'm still fully intending to make the necessar [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Dmitry Gutov <dgutov@HIDDEN> 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 (---) David Fussner <dfussner@HIDDEN> writes: > The conclusion at the time was that the patch needed reworking before > Dmitry was happy with it, and I've not yet found enough time to do so, > though I'm still fully intending to make the necessary changes. Please > leave the bug open so I can restart the conversation when I have a > better patch. Of course. > (Oh, and I'm more than happy to sign the copyright > assignment whenever Dmitry judges the patch to be ready.) Here's the form to get started: Please email the following information to assign@HIDDEN, and we will send you the assignment form for your past and future changes. Please use your full legal name (in ASCII characters) as the subject line of the message. ---------------------------------------------------------------------- REQUEST: SEND FORM FOR PAST AND FUTURE CHANGES [What is the name of the program or package you're contributing to?] Emacs [Did you copy any files or text written by someone else in these changes? Even if that material is free software, we need to know about it.] [Do you have an employer who might have a basis to claim to own your changes? Do you attend a school which might make such a claim?] [For the copyright registration, what country are you a citizen of?] [What year were you born?] [Please write your email address here.] [Please write your postal address here.] [Which files have you changed so far, and which new files have you written so far?]
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:35:03 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 09:35:03 2022 Received: from localhost ([127.0.0.1]:57725 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1oWHgM-0000CU-Vd for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:35:03 -0400 Received: from mail-qt1-f178.google.com ([209.85.160.178]:45025) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1oWHgK-0000Bl-VT for 53749 <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:35:01 -0400 Received: by mail-qt1-f178.google.com with SMTP id g14so12812260qto.11 for <53749 <at> debbugs.gnu.org>; Thu, 08 Sep 2022 06:35:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=GYpXlKyBTaQMnRdBJhetfDcP+G5U5WodofsxJGBSMlk=; b=eJ4fAH2Li8G9OWPfLJJ+axl8cWm+52Hbvxs350umlS/DeaEwUtrGViQ44D/bzZqOEr O+Bn6+LFCkBFXlNIpztnHN7HMnG2c9UUm15QXiHManYBQLYjCP20TD8Zii/YoyMwcijd adSy0bVsB6paRTGkJ2EsuteNgkWxBwQkYxh0jeXInjPeQ19Qm2ZwRaARFM7lYGTKPz+2 R5cljdVPF47R5wzqzB120lmku+y7ZzAExxCQVVXUndchQ3cRqmj2hsI64LU7l5XKDA8f u4KQ3vw/xWARpVhMQu7JAEgs7jL2af2bf1nXX/U9iJLHzoTDxUpokZ7pmMZITzEjx7i4 EIww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=GYpXlKyBTaQMnRdBJhetfDcP+G5U5WodofsxJGBSMlk=; b=oONjOxkqReLXSZMrUPlwH+PBDLPwInXybT8KAt0qjjROZ6KFKwJrNaHSNpegos31Yg lulGvwAGhp4jxrXe7hl8W2xuNbpfb5kkB63BthXomnqzD1QZy94Hb9lY4nz6yVYMOcqx PpczBPHJ1FIFkdDHjmikZ8kZtWVN7FRL602OcSC0bn2QI8id0/0HEYE7Ro94wOZ31BMX rU2TaN+Oeuj/IBwT+fJR0XZearIQLV3kLu64AiqMzCP4EBa6/eNKPFd0zkhtZVmt9yJf upBAnaXn3bmG4kkySlja+RedQcvnOtiS40HJ8alhmDx5sgURvrPuUVvYLv+YyIVJGMFQ kFEg== X-Gm-Message-State: ACgBeo3DUKoQTq2cBq4LxSdKn8qe1IFwiYU8UBVR66VIRUMWf3ecf0aO 7ZYpdsFdLlb9rCO5DIJUcv1GnYy10WkUbf2/TRg= X-Google-Smtp-Source: AA6agR4XLe8Hwkq95n43He1ciAdk+i6RH3J9rD4Zpl/8h14q5S9PAi9E01EDlYqrM48WgmFXFXjVYDFDDha7QvElvj0= X-Received: by 2002:ac8:590f:0:b0:343:61fc:e242 with SMTP id 15-20020ac8590f000000b0034361fce242mr7757191qty.635.1662644095196; Thu, 08 Sep 2022 06:34:55 -0700 (PDT) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <87o7vq0zir.fsf@HIDDEN> In-Reply-To: <87o7vq0zir.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 8 Sep 2022 14:34:47 +0100 Message-ID: <CADF+Rtjii7ZHkrfLzS63Yt1UiPPfnOrSsFZe2SMRetOS4w0vng@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Lars Ingebrigtsen <larsi@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Dmitry Gutov <dgutov@HIDDEN> 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 (-) Hi Lars, The conclusion at the time was that the patch needed reworking before Dmitry was happy with it, and I've not yet found enough time to do so, though I'm still fully intending to make the necessary changes. Please leave the bug open so I can restart the conversation when I have a better patch. (Oh, and I'm more than happy to sign the copyright assignment whenever Dmitry judges the patch to be ready.) Thanks for the reminder. David. On Thu, 8 Sept 2022 at 14:25, Lars Ingebrigtsen <larsi@HIDDEN> wrote: > > Dmitry Gutov <dgutov@HIDDEN> writes: > > > Let us first discuss whether we could make do without an additional > > Xref backend. Just to make sure. > > (I'm going through old bug reports that unfortunately weren't resolved > at the time.) > > I've only skimmed this bug report, so I might well have missed > something. Was there a conclusion here as to what should be done? It > looks like useful functionality to me (but it's been years since I've > written tex-y stuff). > > In any case, if this is to be applied, we'd need to have a copyright > assignment to the FSF on file. David, would you be willing to sign > that?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Lars Ingebrigtsen <larsi@HIDDEN>
to control <at> debbugs.gnu.org
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 8 Sep 2022 13:25:15 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 08 09:25:14 2022 Received: from localhost ([127.0.0.1]:57682 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1oWHWs-0006De-JN for submit <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:25:14 -0400 Received: from quimby.gnus.org ([95.216.78.240]:56848) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <larsi@HIDDEN>) id 1oWHWn-0006DK-SY for 53749 <at> debbugs.gnu.org; Thu, 08 Sep 2022 09:25:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:Date:References: In-Reply-To:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=VqHaHI80aTnlkXeyYytApBLW0GzAO9YKv4fJqHFRH8Y=; b=cZSk5Tr9dDqTVGkxtyYcw4LpSA qbICPnDdXkeDJHBeDwAZcUopp0gzgzFLtsssiYr+2tNQsDWvpFGe4+ZvAmdpVpGWPJhxjHj0hHyMN 1zp++bG+hR9115F7P9G4TmQkWSCTQ0cRzuD48miH1Q3gHabENsGPHp7nMkQ/WY4wy6CQ=; Received: from [84.212.220.105] (helo=joga) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <larsi@HIDDEN>) id 1oWHWf-0002mJ-4z; Thu, 08 Sep 2022 15:25:03 +0200 From: Lars Ingebrigtsen <larsi@HIDDEN> To: Dmitry Gutov <dgutov@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers In-Reply-To: <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> (Dmitry Gutov's message of "Mon, 21 Feb 2022 04:11:33 +0200") References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> X-Now-Playing: Body =?utf-8?Q?Me=CF=80a's?= _The Work Is Slow_: "Rice Tea" Date: Thu, 08 Sep 2022 15:25:00 +0200 Message-ID: <87o7vq0zir.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Dmitry Gutov <dgutov@HIDDEN> writes: > Let us first discuss whether we could make do without an additional > Xref backend. Just to make sure. (I'm going through old bug reports that unfortunately weren't resolved at the time.) Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (---) Dmitry Gutov <dgutov@HIDDEN> writes: > Let us first discuss whether we could make do without an additional > Xref backend. Just to make sure. (I'm going through old bug reports that unfortunately weren't resolved at the time.) I've only skimmed this bug report, so I might well have missed something. Was there a conclusion here as to what should be done? It looks like useful functionality to me (but it's been years since I've written tex-y stuff). In any case, if this is to be applied, we'd need to have a copyright assignment to the FSF on file. David, would you be willing to sign that?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 1 Mar 2022 08:46:41 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 01 03:46:41 2022 Received: from localhost ([127.0.0.1]:35381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOy9Z-00012A-Hz for submit <at> debbugs.gnu.org; Tue, 01 Mar 2022 03:46:41 -0500 Received: from mail-qk1-f181.google.com ([209.85.222.181]:34748) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nOy9X-00011y-SE for 53749 <at> debbugs.gnu.org; Tue, 01 Mar 2022 03:46:40 -0500 Received: by mail-qk1-f181.google.com with SMTP id 185so12449780qkh.1 for <53749 <at> debbugs.gnu.org>; Tue, 01 Mar 2022 00:46:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=U9o8mlU0jKv1EIOASU+ECMaswr6voSVvlXxE8L4y1sc=; b=h1kMJS6SCBVgk9h+DNgnsBp36saCUrol+H0q53KZLWJCIMkXqReMGteAyMkt5L2dQi 1ijKJVKwHTdFryAl45BE9wLd6O7bAJ8NapbBWR5J1ZdIKz216R2KNZRaTmGx8bKrJbUP S26vtwFhF1MnsXsvuG9vDGv0UeLGxqO0CMvgXGf/YxC8+fcD11ZfyZkVu9sWuEhaCJAh fGk0S9DqajQFGdH6G1DkFNYsYFSt6neYfBMZdYluW4Why2l4gIKMXs6ORcqqmSH/xAAM O0lHqNd1TTOn/YCeN49iPy0rU7n0ABDqpEJH/kI/eSdT7Mz2/6gBadbq/3aGhGfH7QU0 qyAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=U9o8mlU0jKv1EIOASU+ECMaswr6voSVvlXxE8L4y1sc=; b=S2hLk1tR4ur2n6xeNiGSYUwoN5U3IsGaHFS7aXYPI/dqdElVwJM82DrZJrN6IZehea cADj0n7FfvYNLo9oArIMJ8dZ0cfV2ZI30FgMU/SA4H0/zehDP03M5rFmbGglYpWx4bzK cMmCSK9tlh+mhKK2BlPWw3Kf50YPWjYgOqIRjLsjXMPGjzQs9DGQg4uUNJKEIFn1kZuy oUYewjKEev4LqHRTjJ54xZoD8JMl577d/Q+EkVzfOb82R8YOBENAvZKNqoGnCb7qEWVE tUrj2c6Dg3i0e6gc9AC1kEVqZDwFYVJd+vKfkbPXXHZS3IkN/+yhltXEa2Tfb2WgojtH Q14w== X-Gm-Message-State: AOAM532fdeTwyUN/dLQuldM+OlbVeo3a1uhl4kpvFkYvjpO49Bg5QnGq xzApwe/JHBTp/oiZXb4/I7R07WM80qNEGqfYobU= X-Google-Smtp-Source: ABdhPJzh2tj1HelxrFWXPPxYF5LIW8WVF+/ZgMnkgnolumA+K9nTHFQyiTt9zSoQIuhK5GScHwiW3rbNQWlTWLiNCj8= X-Received: by 2002:a05:620a:1475:b0:60d:f9d7:a877 with SMTP id j21-20020a05620a147500b0060df9d7a877mr13360844qkl.54.1646124394233; Tue, 01 Mar 2022 00:46:34 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> <86h78j8aur.fsf@HIDDEN> <87sfs39lw6.fsf@HIDDEN> <86a6eaak4d.fsf@HIDDEN> In-Reply-To: <86a6eaak4d.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Tue, 1 Mar 2022 08:46:23 +0000 Message-ID: <CADF+RtieNVUXtZhjSEfyXSx1nbji2=qdVsvaw=PsVh5Hu7p0xA@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Augusto Stoffel <arstoffel@HIDDEN> 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 (-) Unless I'm missing something, the in-tree code hasn't (yet) made any syntax changes for expl3. Best, David. On Mon, 28 Feb 2022 at 19:04, Arash Esbati <arash@HIDDEN> wrote: > > Augusto Stoffel <arstoffel@HIDDEN> writes: > > > Now, how about expl3 code, where _ and : are letters too? > > AUCTeX has a style file expl3.el[1] which changes the syntax for "_" and > ":". Can't tell about the builtin tex/latex-mode. > > Best, Arash > > Footnotes: > [1] http://git.savannah.gnu.org/cgit/auctex.git/tree/style/expl3.el
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 19:04:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 28 14:04:37 2022 Received: from localhost ([127.0.0.1]:34783 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOlK1-0002Ye-FI for submit <at> debbugs.gnu.org; Mon, 28 Feb 2022 14:04:37 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55906) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1nOlJy-0002YO-Lf for 53749 <at> debbugs.gnu.org; Mon, 28 Feb 2022 14:04:35 -0500 Received: from [2001:470:142:3::e] (port=46426 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOlJt-0006hH-AC; Mon, 28 Feb 2022 14:04: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:In-Reply-To:Date:References:Subject:To: From; bh=/RVTOJUrbvpU16z3ul1LDpKuiVm7VTimIijU9TJbNq0=; b=Vp4rpPIV/sJ0f7vXO747 IwXgJlA+QY+AUEC3aFNLy7Py4wharBdUr0xpdNh1nzc3XYQUyQR/3JnncgVtH+eZKMzcrlzP5D9Z0 NKI8HE4S+qnZWHmlcS99fn2xLjOKieqWsxDhk0y5faHJTubeja40qz7Ula/F8w6JaLWNrMLdk7Ksz avWxvCdc9XJ7dGV8Ro+VSnbDQcFatxxHCW4uUuChk+1X95fQUQWjLKGiGb12PB+rs9OW8YD7nqLWx 5RS9Ke0ff2XXnLQ10AYDlh9wTdCS0ZYkWdD1ocde5L4wU3q1eVFTmcwKnsHVuEonItChAu2jiGvP1 UF35kaO60UjUAA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:55941 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOlJs-000493-SK; Mon, 28 Feb 2022 14:04:29 -0500 From: Arash Esbati <arash@HIDDEN> To: Augusto Stoffel <arstoffel@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> <86h78j8aur.fsf@HIDDEN> <87sfs39lw6.fsf@HIDDEN> Date: Mon, 28 Feb 2022 20:04:02 +0100 In-Reply-To: <87sfs39lw6.fsf@HIDDEN> (Augusto Stoffel's message of "Mon, 28 Feb 2022 14:11:05 +0100") Message-ID: <86a6eaak4d.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (---) Augusto Stoffel <arstoffel@HIDDEN> writes: > Now, how about expl3 code, where _ and : are letters too? AUCTeX has a style file expl3.el[1] which changes the syntax for "_" and ":". Can't tell about the builtin tex/latex-mode. Best, Arash Footnotes: [1] http://git.savannah.gnu.org/cgit/auctex.git/tree/style/expl3.el
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 13:11:17 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 28 08:11:17 2022 Received: from localhost ([127.0.0.1]:60496 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOfo5-0005L1-Kh for submit <at> debbugs.gnu.org; Mon, 28 Feb 2022 08:11:17 -0500 Received: from mail-ej1-f45.google.com ([209.85.218.45]:46950) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nOfo4-0005Km-9z for 53749 <at> debbugs.gnu.org; Mon, 28 Feb 2022 08:11:16 -0500 Received: by mail-ej1-f45.google.com with SMTP id qx21so24609175ejb.13 for <53749 <at> debbugs.gnu.org>; Mon, 28 Feb 2022 05:11:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=PWDq0UhgcV1UsuW1wVTWUXOZmwYlTg0TSLLfpFK9IjM=; b=Gm1znBIV8trWlBoZFgiT2dEdpp7QmsIrPrCJS+VZBJXll+bLcmIvT8BqVhVdrYPxlg iiCeffhNPqHowOPWfNIJ/+kqlwV+lol3sQF1xcemwTZsLMLA53ZE8vRmb0j57AN+mrQ4 jUSPxJ1NYoenmQUWmX47UnEMgku/LG+LZvXXUNotUB5WJd5a45i8bC6wvTyADTBNtn0m z7LsyECCkCI3/WGQZgwdbJQo+aW8JTlh2F58l56FvOWUSxxyLrgGkaWo7vFHuSVi3yhk NXX81D/DvDz/zd/I62tCjcT4c+6I6ryiamqMRZe16MId/5yWM0lGBg4gdacq6H9lVObJ qb/Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=PWDq0UhgcV1UsuW1wVTWUXOZmwYlTg0TSLLfpFK9IjM=; b=surHqNTl+zAF4RD2SMZT2nKIqK7wgCmCrWDQI7xScJZnBWXJ3Zz3DAn0IMeIc/7xV6 Wd/xEmuTETt5DKpN7s8QMrdmTzfLVuhFuz7G1w+VWZxFrsp2QeIh0McrbZnIR3gIcozP 2jMgHeVA82xV1XBHDLCOWkm8hvNlA3X73DuDssVdAfE/KkJQpEeDV9lECvTo96ziDuYZ cLSMt2Gancc6bV7duUySZGFifsPlC6xD4nLa6Wbo4JcL/PUAdfdFFTQ7SO4V2tdtOHAi 96Kegzk5z9Mm5lHKmLTG2c33DU5ra90vGFLR1CUqm1NYI1Tky8PolawczFf/O3NZSQDu 9+UA== X-Gm-Message-State: AOAM530cvaqNldtYbsgeP0iShTVZew3PYCRrC1DKixbhakRk2K3bEsgf 81T31vHiCqFmgerDoWqPUNsZWXMYxz1SXw== X-Google-Smtp-Source: ABdhPJz2P3V4f5/kBDfX04gUN/Va/T5kkxZ12T0wxM+cnw51LzcLV/qnQBcUZH7261yfLu/RQ9tfqA== X-Received: by 2002:a17:906:407:b0:6cd:472b:2d5f with SMTP id d7-20020a170906040700b006cd472b2d5fmr14612566eja.573.1646053866768; Mon, 28 Feb 2022 05:11:06 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id w14-20020a509d8e000000b00412cf368b4csm6079917ede.53.2022.02.28.05.11.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Feb 2022 05:11:05 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: Arash Esbati <arash@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> <86h78j8aur.fsf@HIDDEN> Date: Mon, 28 Feb 2022 14:11:05 +0100 In-Reply-To: <86h78j8aur.fsf@HIDDEN> (Arash Esbati's message of "Mon, 28 Feb 2022 12:54:52 +0100") Message-ID: <87sfs39lw6.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (-) On Mon, 28 Feb 2022 at 12:54, Arash Esbati <arash@HIDDEN> wrote: > Sorry if I'm missing something here, I wasn't tracking this thread. But > does doctex-mode (or docTeX in AUCTeX) fit the bill here? Ah, I forgot about that one. I mean basically that, but for files like plain.tex or tikz.code.tex; or also when writing a .sty file directly for personal purposes only. But since tex-mode and derived ones always pretend @ is a letter, I guess there's no real need for a dedicated TeX programming mode. Now, how about expl3 code, where _ and : are letters too?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 13:05:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 28 08:05:49 2022 Received: from localhost ([127.0.0.1]:60473 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOfim-0005Af-Fo for submit <at> debbugs.gnu.org; Mon, 28 Feb 2022 08:05:48 -0500 Received: from mail-ed1-f42.google.com ([209.85.208.42]:33622) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nOfik-0005AR-E2 for 53749 <at> debbugs.gnu.org; Mon, 28 Feb 2022 08:05:46 -0500 Received: by mail-ed1-f42.google.com with SMTP id s14so17549440edw.0 for <53749 <at> debbugs.gnu.org>; Mon, 28 Feb 2022 05:05:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=49H0wRYpOluU+MRv3P538YcwV03c6qfYnHcDghI3il4=; b=oOAvMH5kT4KT36vpFPIaCM4fgdZxuCbJR4r1TpW3k1lvEv0NZgkQ59N/dLLPvqFi3q WvTrwDveDRgU5oP24bsprqZwY/GthYSHNTHWYym6PNL2V0tmfmuKWUFuu4n1OExn/8rT fNMxEL8bENZ68AuRO9P0CW/ADJYa5svijSsAq/2ROcwMvvHqEiqL0QZ/vAnBuHidLlUO A8lkDp5t7qDsnmK/X4qzbPVu561P3MEfUZ72g7URZpRBha/VlHDFv9SX5UgQFz7ieXpu EecObhuRR5bglfF9cjR0OFolXjta55cg3BNjy62k99UZn/5W/lFcycAvMBVIG5ICuIqN u1xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=49H0wRYpOluU+MRv3P538YcwV03c6qfYnHcDghI3il4=; b=gOSe8z7gRO+f2wKZfww2iGLN91LpMWWqpXGOREvxAWKukJRcNsHWom+7NBB5r3JKVF 2CuqNq0l03I9g94aK2GQUn0MSC33cD2PTqag27cpxUm4QYEbGXZmsLaDcG4p+yPbi6fC dKJsiOPp0jK7YIcURJTPkmxw3oWYZ7dI0LYxczXg3GfK9uzM95m0+zlZ+pg/DR/tofpv txnN77WvFu7Bej6L62tLwnUWsl2Wp3DxQfvRJGQa7cG9woXXNHSW8g3+7KhFoZ/jct1d D68bG7II0iaECqOX3mUU0zJsrnkusw5SKufVC6PxxUSGzklTn1djxOJ41k5VBc1ee0+F xZ4Q== X-Gm-Message-State: AOAM532oofOfSBdP2biTnORR6l3sY44Adsh3kRfMR3t2MlzUljaOo0Oc tveqbwoHy3gsPjphneFBlD0OAYfRMm8MvA== X-Google-Smtp-Source: ABdhPJy8qwtmp3aZ8OSqQcuiBKcz7ODAO1FIRzEYdsyhfBUS3VoCGvQ91GkfJ7NiyS+e1uqeiRyr+Q== X-Received: by 2002:aa7:c0ce:0:b0:400:1a:e9a2 with SMTP id j14-20020aa7c0ce000000b00400001ae9a2mr19883158edp.396.1646053540320; Mon, 28 Feb 2022 05:05:40 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id sb31-20020a1709076d9f00b006ceb969822esm4385682ejc.76.2022.02.28.05.05.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Feb 2022 05:05:39 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> Date: Mon, 28 Feb 2022 14:05:38 +0100 In-Reply-To: <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> (David Fussner's message of "Mon, 28 Feb 2022 09:09:36 +0000") Message-ID: <87wnhf9m59.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Arash Esbati <arash@HIDDEN> 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 (-) On Mon, 28 Feb 2022 at 09:09, David Fussner <dfussner@HIDDEN> wrote: > For what it's worth, I've always just done what Arash suggests when > RefTeX gets out of sync, and haven't had any issues with it that I can > remember. (To be fair, my use cases haven't exactly been exotic.) Sure, I'm aware you have to do the manual resync when using RefTeX. I just think it's a totally unnecessary hurdle at this time and age. I used to advice the RefTeX commands so they would reparse the document every time, and this worked just fine. (Granted, I never worked on anything over 100 pages or so, but it should also be possible to reparse individual files of a multifile project so that the file sizes never become an issue.) >> The problem is that there's no way for Emacs to communicate that one of >> these programming modes is to be used. This could be fixed in two ways: >> >> A. by creating latex-prog and latex-expl3 derived modes in Emacs, or >> >> B. adding heuristics to Digestif to decide if a given file is "document" >> or "code". >> >> Do you have any thoughts about A? Would there be any other benefits in >> Emacs to justify the latex-prog and latex-expl3 major modes? It seems >> that (at least in AUCTeX) @ is always considered a letter, which may be >> innocuous but is kinda wrong. > > The only thought I have is that it sounds like a new major mode would > be overkill for what you need here. I would think that a variable or > defcustom might do the trick, or at most maybe a minor mode? When > navigating code I really want to be able to follow the commands to > their source no matter whether the command is internal or for users, > though I can see how in a code-completion setting you might want to be > able to separate the two more cleanly. Obviously, I'm not the person > you need to convince about all of this -- that would be Arash and the > emacs maintainers, themselves. Okay, thanks for your insight. > > Best, > > David. > > On Sun, 27 Feb 2022 at 18:43, Arash Esbati <arash@HIDDEN> wrote: >> >> Augusto Stoffel <arstoffel@HIDDEN> writes: >> >> > If you type \label{something}, as opposed to using the RefTeX command >> > to add a label (or if you edit the label by hand) then RefTeX will not >> > reparse the document and get out of sync. >> >> If you know the known labels to RefTeX are out of sync, you can issue >> `C-c )' with a prefix argument: >> >> ,----[ C-h f reftex-reference RET ] >> | reftex-reference is an interactive native compiled Lisp function in >> | =E2=80=98reftex-ref.el=E2=80=99. >> | >> | (reftex-reference &optional TYPE NO-INSERT CUT) >> | >> | Make a LaTeX reference. Look only for labels of a certain TYPE. >> | With prefix arg, force to rescan buffer for labels. This should only = be >> | necessary if you have recently entered labels yourself without using >> | reftex-label. Rescanning of the buffer can also be requested from the >> | label selection menu. >> | The function returns the selected label or nil. >> | If NO-INSERT is non-nil, do not insert \ref command, just return label. >> | When called with 2 C-u prefix args, disable magic word recognition. >> | >> | Probably introduced at or before Emacs version 20.1. >> | >> `---- >> >> Or in the labels *RefTeX select* buffer, you have these choices: >> >> r / C-u r Reparse document / Reparse entire document. >> >> I usually hit r when I don't find the label I'm looking for. >> >> > Or at least that was the case when I still used RefTeX. So it might >> > be worth considering some cache invalidation scheme there. >> >> The question is if it's worth the effort where a remedy is already in >> place. >> >> Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 11:55:33 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 28 06:55:33 2022 Received: from localhost ([127.0.0.1]:60322 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOecn-00012D-HD for submit <at> debbugs.gnu.org; Mon, 28 Feb 2022 06:55:33 -0500 Received: from eggs.gnu.org ([209.51.188.92]:57192) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1nOecl-000121-MK for 53749 <at> debbugs.gnu.org; Mon, 28 Feb 2022 06:55:32 -0500 Received: from [2001:470:142:3::e] (port=37644 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOecg-0001z2-C9; Mon, 28 Feb 2022 06:55:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=cqn9p5eHNJByoXorGwu720L6kgXeZR7ZMokcRcx2SNk=; b=MbzMNddh1vOuF+p01xLB ER9r3rVpqIp1O4sPbONZSzJqzFsApAhslgqhqpv13q4DhyUyTtssx01dawokZjKOvHntbRAWK1Vz5 QuMQrrrJRL5wJ+c/qNKRJby4ENe7soptkCX/85H7X31o3+V+kcSiSTsgcyoSKM9OYLQhT0qoWel5K 6P6MlhpaS/4HsC3gwk9dd58ZKvFqUO5ImSXRH0npZC/I6XPYZzgJTrUc/fIf1Q/z73mY7AJt8Ljg1 +ozr4jkv+hO1sUUhVVUgD+YG+PHe2+ZjOoVkPkvw4PvdGHgarD+WoDUuQSgNugqYUZvSnPI/nQW2D vK2dV9x0rwdVHw==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:59179 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOecf-0003CL-Rc; Mon, 28 Feb 2022 06:55:26 -0500 From: Arash Esbati <arash@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> Date: Mon, 28 Feb 2022 12:54:52 +0100 In-Reply-To: <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> (David Fussner's message of "Mon, 28 Feb 2022 09:09:36 +0000") Message-ID: <86h78j8aur.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Augusto Stoffel <arstoffel@HIDDEN> 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 (---) David Fussner <dfussner@HIDDEN> writes: >> The problem is that there's no way for Emacs to communicate that one of >> these programming modes is to be used. This could be fixed in two ways: >> >> A. by creating latex-prog and latex-expl3 derived modes in Emacs, or >> >> B. adding heuristics to Digestif to decide if a given file is "document" >> or "code". >> >> Do you have any thoughts about A? Would there be any other benefits in >> Emacs to justify the latex-prog and latex-expl3 major modes? It seems >> that (at least in AUCTeX) @ is always considered a letter, which may be >> innocuous but is kinda wrong. > > The only thought I have is that it sounds like a new major mode would > be overkill for what you need here. I would think that a variable or > defcustom might do the trick, or at most maybe a minor mode? Sorry if I'm missing something here, I wasn't tracking this thread. But does doctex-mode (or docTeX in AUCTeX) fit the bill here? Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 28 Feb 2022 09:09:57 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 28 04:09:57 2022 Received: from localhost ([127.0.0.1]:59985 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOc2X-0002JA-1w for submit <at> debbugs.gnu.org; Mon, 28 Feb 2022 04:09:57 -0500 Received: from mail-qt1-f176.google.com ([209.85.160.176]:40794) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nOc2T-0002Ix-FE for 53749 <at> debbugs.gnu.org; Mon, 28 Feb 2022 04:09:53 -0500 Received: by mail-qt1-f176.google.com with SMTP id t28so8342027qtc.7 for <53749 <at> debbugs.gnu.org>; Mon, 28 Feb 2022 01:09:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=TEcTYdBXf7Uh+Wy/k7NnKvcCPiO55Hmrfl2PGCNGXis=; b=EFVxelue7r/2JiIoDN2nRNtF0fX/8yv5x+sHhSZH1uJloltvz1qpb/bNzMr335byC+ /hiJh8Q5qbxGBPAETU42e3mvhAM7kyiGCU86q/PJXwuBvt3IaB9Rcd69ImYiK4PPqqVR kjfiNiZoz4xOPz7DpSNsFzGsFIi7Mw5Iim2Z3n9T8+O97RAMV756BQz6s9JonZrDhDY6 MF4vukrOeQugHPBIW7waUxbc6GdSbO65Fv3NUnpf+jsO2pU+49WAkhG1Dw4bi5XxkLvh urWxKxyIa4ZohsL2UOJXQK4R4WGWyVbF6gVhQcxGbS7km4ofnKg7t7ynuAwRvvxnDLjd o9fA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=TEcTYdBXf7Uh+Wy/k7NnKvcCPiO55Hmrfl2PGCNGXis=; b=3K8GCJfoDpzMZxgjAzVOdKEpgevu+Z5UuJwSgESB77d3FzCvomID57bHW/NYywHEJm CnkNWUJ3HI2Vm+kxeC9nYTiN2WXX18oXQZ/SD53uuMHZcZh4xR8CNNeIC7oY5Wgsv9da ntjmVXNOIOORmk0oDoLPjgDIrLQAIKviji6nrYs6BmuvDJRf1TqNSkSewtpuFO5TAasu zDFfJdVrIbMB2RP3C+4HC++iVarWvpNUJVHt+25h4SClJ8TnLV3kVDaDf/JnxclgISpN fUwjcwnQcngp6hteJpdRGpQZKAplcHX9eiTpxpPbllyzpYwZkWsZEbXInRgnjZZ9nwSP DwPA== X-Gm-Message-State: AOAM532tI4vMZHqTzsU6E+eWdW9e4z49rAiNpFcmoVFYDxndKOr1PMhp mO600YidFldzMb1iWShIug/FZgA4X/kbHNXlURc= X-Google-Smtp-Source: ABdhPJzYk8EWMj294pfJCKOolNqIrTUGsI1TQiBv+CBH1ze0cBX4POxLrQ6AierbvFC01xJqV9qxM/xYwpgL+RRrTl8= X-Received: by 2002:a05:622a:1a1c:b0:2de:82f:b1f5 with SMTP id f28-20020a05622a1a1c00b002de082fb1f5mr15895498qtb.156.1646039387910; Mon, 28 Feb 2022 01:09:47 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> <864k4k2lsg.fsf@HIDDEN> In-Reply-To: <864k4k2lsg.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 28 Feb 2022 09:09:36 +0000 Message-ID: <CADF+RthbME7D52NMhRRusT=enNQFnJodJ6R1Ak-5ecPg2p3uKw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, Augusto Stoffel <arstoffel@HIDDEN> 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 (-) Hi Augusto, For what it's worth, I've always just done what Arash suggests when RefTeX gets out of sync, and haven't had any issues with it that I can remember. (To be fair, my use cases haven't exactly been exotic.) > The problem is that there's no way for Emacs to communicate that one of > these programming modes is to be used. This could be fixed in two ways: > > A. by creating latex-prog and latex-expl3 derived modes in Emacs, or > > B. adding heuristics to Digestif to decide if a given file is "document" > or "code". > > Do you have any thoughts about A? Would there be any other benefits in > Emacs to justify the latex-prog and latex-expl3 major modes? It seems > that (at least in AUCTeX) @ is always considered a letter, which may be > innocuous but is kinda wrong. The only thought I have is that it sounds like a new major mode would be overkill for what you need here. I would think that a variable or defcustom might do the trick, or at most maybe a minor mode? When navigating code I really want to be able to follow the commands to their source no matter whether the command is internal or for users, though I can see how in a code-completion setting you might want to be able to separate the two more cleanly. Obviously, I'm not the person you need to convince about all of this -- that would be Arash and the emacs maintainers, themselves. Best, David. On Sun, 27 Feb 2022 at 18:43, Arash Esbati <arash@HIDDEN> wrote: > > Augusto Stoffel <arstoffel@HIDDEN> writes: > > > If you type \label{something}, as opposed to using the RefTeX command > > to add a label (or if you edit the label by hand) then RefTeX will not > > reparse the document and get out of sync. > > If you know the known labels to RefTeX are out of sync, you can issue > `C-c )' with a prefix argument: > > ,----[ C-h f reftex-reference RET ] > | reftex-reference is an interactive native compiled Lisp function in > | =E2=80=98reftex-ref.el=E2=80=99. > | > | (reftex-reference &optional TYPE NO-INSERT CUT) > | > | Make a LaTeX reference. Look only for labels of a certain TYPE. > | With prefix arg, force to rescan buffer for labels. This should only b= e > | necessary if you have recently entered labels yourself without using > | reftex-label. Rescanning of the buffer can also be requested from the > | label selection menu. > | The function returns the selected label or nil. > | If NO-INSERT is non-nil, do not insert \ref command, just return label. > | When called with 2 C-u prefix args, disable magic word recognition. > | > | Probably introduced at or before Emacs version 20.1. > | > `---- > > Or in the labels *RefTeX select* buffer, you have these choices: > > r / C-u r Reparse document / Reparse entire document. > > I usually hit r when I don't find the label I'm looking for. > > > Or at least that was the case when I still used RefTeX. So it might > > be worth considering some cache invalidation scheme there. > > The question is if it's worth the effort where a remedy is already in > place. > > Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 27 Feb 2022 18:43:17 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 27 13:43:17 2022 Received: from localhost ([127.0.0.1]:59207 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nOOVo-00048t-Vp for submit <at> debbugs.gnu.org; Sun, 27 Feb 2022 13:43:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59644) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1nOOVn-00048g-9t for 53749 <at> debbugs.gnu.org; Sun, 27 Feb 2022 13:43:15 -0500 Received: from [2001:470:142:3::e] (port=54422 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOOVh-0007MC-2h; Sun, 27 Feb 2022 13:43:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=sL/+jcbohWc/odqt66v0yqvRuyvd36sR/FDyPGjtQ/0=; b=i+dHj06LfboVDCJheM2d psR/ZPC8owPRXUJ+Opek/b5eDKcudj2tTapC7Mrvz8HFS7L3JXTSVS1cxbOxWJ8+FnQ+68BGYcZBi oMn8dH09n3Ii48soAEPOYj8UIPP0GHYg+PKGnEV/BJL/zn1ejrR1+WoNAdt/5HXViYUul20WT/nRg q3MEE2qgGEUFFKokgQtKgkJDg91YHKG096Jo/3i0UvIwldyW6GDF5ZovTgj3K1ArO6KFt/sWM/+7P vdenpxJ2T/bgusyr3/X9grT+VKktrLAOa2GE8zPYSPDkvd6S/OAK3t5qzj6bctrTD6v/LJrbE9BLh jX7yYWOsDCwJgA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:50422 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nOOVg-00006d-B8; Sun, 27 Feb 2022 13:43:08 -0500 From: Arash Esbati <arash@HIDDEN> To: Augusto Stoffel <arstoffel@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> <87czj9dhfx.fsf@HIDDEN> Date: Sun, 27 Feb 2022 19:42:55 +0100 In-Reply-To: <87czj9dhfx.fsf@HIDDEN> (Augusto Stoffel's message of "Sat, 26 Feb 2022 11:56:50 +0100") Message-ID: <864k4k2lsg.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (---) Augusto Stoffel <arstoffel@HIDDEN> writes: > If you type \label{something}, as opposed to using the RefTeX command > to add a label (or if you edit the label by hand) then RefTeX will not > reparse the document and get out of sync. If you know the known labels to RefTeX are out of sync, you can issue `C-c )' with a prefix argument: ,----[ C-h f reftex-reference RET ] | reftex-reference is an interactive native compiled Lisp function in | =E2=80=98reftex-ref.el=E2=80=99. |=20 | (reftex-reference &optional TYPE NO-INSERT CUT) |=20 | Make a LaTeX reference. Look only for labels of a certain TYPE. | With prefix arg, force to rescan buffer for labels. This should only be | necessary if you have recently entered labels yourself without using | reftex-label. Rescanning of the buffer can also be requested from the | label selection menu. | The function returns the selected label or nil. | If NO-INSERT is non-nil, do not insert \ref command, just return label. | When called with 2 C-u prefix args, disable magic word recognition. |=20 | Probably introduced at or before Emacs version 20.1. |=20 `---- Or in the labels *RefTeX select* buffer, you have these choices: r / C-u r Reparse document / Reparse entire document. I usually hit r when I don't find the label I'm looking for. > Or at least that was the case when I still used RefTeX. So it might > be worth considering some cache invalidation scheme there. The question is if it's worth the effort where a remedy is already in place. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 26 Feb 2022 10:57:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 26 05:57:07 2022 Received: from localhost ([127.0.0.1]:54337 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNul9-00084W-H4 for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 05:57:07 -0500 Received: from mail-ed1-f41.google.com ([209.85.208.41]:45801) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nNul0-00083T-Dr for 53749 <at> debbugs.gnu.org; Sat, 26 Feb 2022 05:56:58 -0500 Received: by mail-ed1-f41.google.com with SMTP id c6so10668571edk.12 for <53749 <at> debbugs.gnu.org>; Sat, 26 Feb 2022 02:56:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=f6RY2WEltd8BdP+oHStF6LtZ6WrYeruvkeoyxKO/BUOYZY55UHnzyV/UATvO4brgLa R3OkhPX8+lXxXI1NCR+FbuB2K3KEnqUgDwIDwP9mBAkAM+JLLIlwpAGWMlhipc3d+DQY 5WcjfMxSPNEkIgNGxsnmezVFFGUlo9gfJF/HvPXvtqm557mXCArPMb/E43W8dK6OebZX vdp3m7q/DJUR9EvgJCqqTnK470PAEirDXsv0QQml4XfB7Yy6UqQTbdDtgTc6mi3cp+rP 9X6qq4MgtEiOeCOm0FxyJPMtKtmcSDSWzhtkVv4U0b9SjmPjuEWdWtxxyFSvatchQ1Hz Hhcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=vduFUamzPXRGaTjvUmD93FZVafTv8jUTrUBSbQQmFYNA9qYMpekHh6ZveXSYDmsbIp LdJ8R0XhXQC2CDoMT1ky1rnwmaTdy125htwSGSLkd8PgbTI1iHmAMb38dECgpv5dslgM zjS17+ly89vW5WVt5NnmprCjypg0xprAQboBT/FsNHpsxs/ve9sKllBM19cH9bACyNp/ B/9rhH/8nuMekG9obAbWeRILwmakMmwRdohSgdgKKkoXrcSPem230IMX/SRBXxFJPYE6 +hHbPW/3BZqSHc7PafSNGqMQXsQIrHmQIjncMfZPLDbQyz6WoyYQbr88YwjxqQ274EPx 2NTg== X-Gm-Message-State: AOAM530xuApXiqqS0lb1dUsf2dEP1aVXlKzQ2/w4gUjZAkxWEDMGg86C n8uzjblisV2hOOmJ2nSFjJgcQ0SdNkwOdw== X-Google-Smtp-Source: ABdhPJyto6oGJpRqyfOM7aocdnKqMYaReM6+HGONklHUYzjPh4qQb/sycpqQ+ua+FjYpfEhmssmmmg== X-Received: by 2002:a50:aa8c:0:b0:410:801c:4e2f with SMTP id q12-20020a50aa8c000000b00410801c4e2fmr10752783edc.179.1645873012160; Sat, 26 Feb 2022 02:56:52 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id o14-20020a170906774e00b006d5b915f27dsm2086897ejn.169.2022.02.26.02.56.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 26 Feb 2022 02:56:51 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> Date: Sat, 26 Feb 2022 11:56:50 +0100 In-Reply-To: <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> (David Fussner's message of "Sat, 26 Feb 2022 09:29:06 +0000") Message-ID: <87czj9dhfx.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (-) On Sat, 26 Feb 2022 at 09:29, David Fussner <dfussner@HIDDEN> wrote: > Hi Augusto, > > On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel <arstoffel@HIDDEN> wrote: >> >> Hi David, > >> >> I took a superficial look at this thread, and this seems very nice. > > Thanks! > >> >> I was wondering why you want to be able to find the definition of macros >> with @ in their name. Those are "private" macros that the user >> shouldn't have occasion to use. Is it for a TeX programmer mode? > > I confess that TeX developers are indeed one of the main targets for > the feature as I envisioned it. For creating and following \labels, > \refs, and \cites (of all sorts) I find RefTeX very handy, as well as > for jumping around \chapters and \sections and the like. What I miss > when developing are the code-navigation features of something like > xref, which are (from the user point of view) both simple and > powerful. My modest goal was to make Emacs' extensive infrastructure > work a little better out of the box for TeX documents, especially for > styles and other collections of macros. Sorry for entering a tangent, but here's one more thing I dislike about RefTeX you might want to consider. If you type \label{something}, as opposed to using the RefTeX command to add a label (or if you edit the label by hand) then RefTeX will not reparse the document and get out of sync. Or at least that was the case when I still used RefTeX. So it might be worth considering some cache invalidation scheme there. (Digestif has caching for multifile documents, but parsing a single file is fast enough that this is not a problem I need to worry :-).) >> >> Let me also mention a library I wrote for analyzing TeX code (accessible >> to Emacs via LSP): >> >> https://github.com/astoff/digestif >> >> It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs >> for flexible parsing. If you want to be very ambitious about what you >> are able to parse, I think regexps are not sufficient. >> >> Digestif can handle \cite{messed up reference} just fine, for example. >> > > This looks very nice indeed, and if I'm reading it right provides a > replacement both for RefTeX and for the code-navigation features I'm > trying to implement. That's right. Also command completion (including snippets, if that's your thing) and Eldoc. > I figure I'll continue trying to get improved > out-of-the-box features into core, and if I manage to satisfy Dmitry > we'll then have a choice, but in any case I'm going to have a longer > look at digestif when I get some time. Let me mention one last thing, since you seem interested in a TeX programming mode. Digestif will not work great out of the box for programming because it correctly considers @ to have catcode "other" (so it can't be part of the name of a command). But this is trivial to change and, in fact, Digestif already has a "latex-prog" mode that simulates the correct catcodes. It would be easy to include a "latex-expl3" mode as well. The problem is that there's no way for Emacs to communicate that one of these programming modes is to be used. This could be fixed in two ways: A. by creating latex-prog and latex-expl3 derived modes in Emacs, or B. adding heuristics to Digestif to decide if a given file is "document" or "code". Do you have any thoughts about A? Would there be any other benefits in Emacs to justify the latex-prog and latex-expl3 major modes? It seems that (at least in AUCTeX) @ is always considered a letter, which may be innocuous but is kinda wrong. > > Thanks for the hint! > > David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 26 Feb 2022 10:56:59 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 26 05:56:59 2022 Received: from localhost ([127.0.0.1]:54334 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNul1-00083m-49 for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 05:56:59 -0500 Received: from lists.gnu.org ([209.51.188.17]:38498) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nNuky-00083X-QT for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 05:56:57 -0500 Received: from eggs.gnu.org ([209.51.188.92]:53568) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arstoffel@HIDDEN>) id 1nNuky-0002LK-Iw for bug-gnu-emacs@HIDDEN; Sat, 26 Feb 2022 05:56:56 -0500 Received: from [2a00:1450:4864:20::532] (port=39593 helo=mail-ed1-x532.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <arstoffel@HIDDEN>) id 1nNukw-0008Cv-Eq for bug-gnu-emacs@HIDDEN; Sat, 26 Feb 2022 05:56:56 -0500 Received: by mail-ed1-x532.google.com with SMTP id g20so10714243edw.6 for <bug-gnu-emacs@HIDDEN>; Sat, 26 Feb 2022 02:56:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=f6RY2WEltd8BdP+oHStF6LtZ6WrYeruvkeoyxKO/BUOYZY55UHnzyV/UATvO4brgLa R3OkhPX8+lXxXI1NCR+FbuB2K3KEnqUgDwIDwP9mBAkAM+JLLIlwpAGWMlhipc3d+DQY 5WcjfMxSPNEkIgNGxsnmezVFFGUlo9gfJF/HvPXvtqm557mXCArPMb/E43W8dK6OebZX vdp3m7q/DJUR9EvgJCqqTnK470PAEirDXsv0QQml4XfB7Yy6UqQTbdDtgTc6mi3cp+rP 9X6qq4MgtEiOeCOm0FxyJPMtKtmcSDSWzhtkVv4U0b9SjmPjuEWdWtxxyFSvatchQ1Hz Hhcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=FiuLSzPgHom99UkqJzF7iOp8PIqjGYHi7APrz9WKkqA=; b=UcdCvNGM4O5i+dH8DJIF59zcHANmJoA+cMnM3eD+vGDnFZc0n+FqDohU6bcp742C6N v+K0TwYRj+GrK5NduQyZbbpwdBreuUEH4UL3zqZRToAgbJfAhGjpyaoUoUv3OL7xyAsX pX0l1fOOFWBnDfmP1/0Iny7wJNTOy52hiozf3CxERq7tGjWmDjSCGh9MpXmyi8fpENle 1CoVIknCOnU9k2FAO0l5d1slO4DYM/4Cgvdo9MmtCJEYYsvjhIPOt5bChb5cduBEeayW dLQPYvZ/TTfnIhmuN1Y25bAyovamg8pKQsPEd8sQRz2ICHhLPGL5OP9t3gpvDoIwTjUp 3Ivw== X-Gm-Message-State: AOAM533R+bM4LEDf4+3Eu1O/cJivtILXmtfZxYnYIrefkOmfi6tekn5p fKfZUwXX/9bfIaTyR4W1nSoCa/YLwX3AcA== X-Google-Smtp-Source: ABdhPJyto6oGJpRqyfOM7aocdnKqMYaReM6+HGONklHUYzjPh4qQb/sycpqQ+ua+FjYpfEhmssmmmg== X-Received: by 2002:a50:aa8c:0:b0:410:801c:4e2f with SMTP id q12-20020a50aa8c000000b00410801c4e2fmr10752783edc.179.1645873012160; Sat, 26 Feb 2022 02:56:52 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id o14-20020a170906774e00b006d5b915f27dsm2086897ejn.169.2022.02.26.02.56.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 26 Feb 2022 02:56:51 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: David Fussner <dfussner@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> Date: Sat, 26 Feb 2022 11:56:50 +0100 In-Reply-To: <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> (David Fussner's message of "Sat, 26 Feb 2022 09:29:06 +0000") Message-ID: <87czj9dhfx.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::532 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::532; envelope-from=arstoffel@HIDDEN; helo=mail-ed1-x532.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 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, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (--) On Sat, 26 Feb 2022 at 09:29, David Fussner <dfussner@HIDDEN> wrote: > Hi Augusto, > > On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel <arstoffel@HIDDEN> wrote: >> >> Hi David, > >> >> I took a superficial look at this thread, and this seems very nice. > > Thanks! > >> >> I was wondering why you want to be able to find the definition of macros >> with @ in their name. Those are "private" macros that the user >> shouldn't have occasion to use. Is it for a TeX programmer mode? > > I confess that TeX developers are indeed one of the main targets for > the feature as I envisioned it. For creating and following \labels, > \refs, and \cites (of all sorts) I find RefTeX very handy, as well as > for jumping around \chapters and \sections and the like. What I miss > when developing are the code-navigation features of something like > xref, which are (from the user point of view) both simple and > powerful. My modest goal was to make Emacs' extensive infrastructure > work a little better out of the box for TeX documents, especially for > styles and other collections of macros. Sorry for entering a tangent, but here's one more thing I dislike about RefTeX you might want to consider. If you type \label{something}, as opposed to using the RefTeX command to add a label (or if you edit the label by hand) then RefTeX will not reparse the document and get out of sync. Or at least that was the case when I still used RefTeX. So it might be worth considering some cache invalidation scheme there. (Digestif has caching for multifile documents, but parsing a single file is fast enough that this is not a problem I need to worry :-).) >> >> Let me also mention a library I wrote for analyzing TeX code (accessible >> to Emacs via LSP): >> >> https://github.com/astoff/digestif >> >> It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs >> for flexible parsing. If you want to be very ambitious about what you >> are able to parse, I think regexps are not sufficient. >> >> Digestif can handle \cite{messed up reference} just fine, for example. >> > > This looks very nice indeed, and if I'm reading it right provides a > replacement both for RefTeX and for the code-navigation features I'm > trying to implement. That's right. Also command completion (including snippets, if that's your thing) and Eldoc. > I figure I'll continue trying to get improved > out-of-the-box features into core, and if I manage to satisfy Dmitry > we'll then have a choice, but in any case I'm going to have a longer > look at digestif when I get some time. Let me mention one last thing, since you seem interested in a TeX programming mode. Digestif will not work great out of the box for programming because it correctly considers @ to have catcode "other" (so it can't be part of the name of a command). But this is trivial to change and, in fact, Digestif already has a "latex-prog" mode that simulates the correct catcodes. It would be easy to include a "latex-expl3" mode as well. The problem is that there's no way for Emacs to communicate that one of these programming modes is to be used. This could be fixed in two ways: A. by creating latex-prog and latex-expl3 derived modes in Emacs, or B. adding heuristics to Digestif to decide if a given file is "document" or "code". Do you have any thoughts about A? Would there be any other benefits in Emacs to justify the latex-prog and latex-expl3 major modes? It seems that (at least in AUCTeX) @ is always considered a letter, which may be innocuous but is kinda wrong. > > Thanks for the hint! > > David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 26 Feb 2022 09:29:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 26 04:29:32 2022 Received: from localhost ([127.0.0.1]:54296 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNtOO-0005cd-5T for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 04:29:32 -0500 Received: from mail-qk1-f170.google.com ([209.85.222.170]:36354) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nNtOF-0005c5-La for 53749 <at> debbugs.gnu.org; Sat, 26 Feb 2022 04:29:24 -0500 Received: by mail-qk1-f170.google.com with SMTP id g24so6564986qkl.3 for <53749 <at> debbugs.gnu.org>; Sat, 26 Feb 2022 01:29:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=HIn811gh+Jc0o/BUZ6t1v+zQfvF6lr2edfonkYLeK+KdX0qr45Hn/mpaPu8wDk6zyI sW5UmUfOI86t6sT6C9cCr3GqSFlXxVTfRljKQmu2AQm6yqfEJUeBZVXl9T+5EuHFB6Rn ELQzecofeKwr/7EW5ck84ZNr93cBhPGapT5aofqJ4aVOvTIOvyPCMWiSZaek/FfHFmz6 pkQ9MBb3i37zyido9tT/5G4yr1TRTfOgC6ul/TBee6cScA5H4d7DCmLRvFP2tQX5QyUF QFXSbLCRO/RJT/gHT276KefVlGGCTCtVg7Z5nLGnRDkrMmt4SmZTLFfbJrHVrwSyPmJD Yrsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=u+BkHtwICIYrMCl2lGCZY6M59xaz582OYv+9mt6IQTgqzsjvnZq/2DDU0Trnh+nsbN PpNbJIcdRbeZmOmIMK1aE9zaopSleHZ2jZnDRWb9KQQL/lp9pPq0uWcnVpGcGB6LDwM7 f3Rz6QoqF5atBYHHNLGYs0ijuCrRTTlRZvMmVLUUgsnIEAW9iUFVYPZ2jue3IrXZltMw mjXdiZjWOEuLTY2cIvnn1UEsujsex2nP2ZAjkSp6wpdnAOttK2bq8Q1Rsodhmz6iSgpB +QIIr3FP2HRVXFUwEa/OjNlSK7BOeA7sgvdtRXNBZa9uDR90CjVaD+TNMPXF4p1g2pDs VHLQ== X-Gm-Message-State: AOAM531O1NZF7pU1k8zT6CxlgXXLCu2+nfhxsI8/88BgI7ZLkIxXlVmi OUMZyA4TkGTgAiBNorK3Yu6J1GOgVcUUL1h5km0= X-Google-Smtp-Source: ABdhPJxD2uIvSagDTxAakvQVcDMJpunL8m0eLgVUMJRahlDmDZcQBJ6vMq6XXWoGSoBKp0MEFApWJWatXWn+BsDFl8Y= X-Received: by 2002:a37:4147:0:b0:47c:4595:b8c with SMTP id o68-20020a374147000000b0047c45950b8cmr6917449qka.267.1645867757950; Sat, 26 Feb 2022 01:29:17 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> In-Reply-To: <87pmnad7n3.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Sat, 26 Feb 2022 09:29:06 +0000 Message-ID: <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Augusto Stoffel <arstoffel@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (-) Hi Augusto, On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel <arstoffel@HIDDEN> wrote: > > Hi David, > > I took a superficial look at this thread, and this seems very nice. Thanks! > > I was wondering why you want to be able to find the definition of macros > with @ in their name. Those are "private" macros that the user > shouldn't have occasion to use. Is it for a TeX programmer mode? I confess that TeX developers are indeed one of the main targets for the feature as I envisioned it. For creating and following \labels, \refs, and \cites (of all sorts) I find RefTeX very handy, as well as for jumping around \chapters and \sections and the like. What I miss when developing are the code-navigation features of something like xref, which are (from the user point of view) both simple and powerful. My modest goal was to make Emacs' extensive infrastructure work a little better out of the box for TeX documents, especially for styles and other collections of macros. > > Let me also mention a library I wrote for analyzing TeX code (accessible > to Emacs via LSP): > > https://github.com/astoff/digestif > > It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs > for flexible parsing. If you want to be very ambitious about what you > are able to parse, I think regexps are not sufficient. > > Digestif can handle \cite{messed up reference} just fine, for example. > This looks very nice indeed, and if I'm reading it right provides a replacement both for RefTeX and for the code-navigation features I'm trying to implement. I figure I'll continue trying to get improved out-of-the-box features into core, and if I manage to satisfy Dmitry we'll then have a choice, but in any case I'm going to have a longer look at digestif when I get some time. Thanks for the hint! David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 26 Feb 2022 09:29:24 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 26 04:29:24 2022 Received: from localhost ([127.0.0.1]:54293 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNtOF-0005cI-Ld for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 04:29:24 -0500 Received: from lists.gnu.org ([209.51.188.17]:39174) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nNtOD-0005cA-Gm for submit <at> debbugs.gnu.org; Sat, 26 Feb 2022 04:29:22 -0500 Received: from eggs.gnu.org ([209.51.188.92]:38630) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nNtOD-0004mn-2x for bug-gnu-emacs@HIDDEN; Sat, 26 Feb 2022 04:29:21 -0500 Received: from [2607:f8b0:4864:20::735] (port=45755 helo=mail-qk1-x735.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nNtOB-0002U3-C1 for bug-gnu-emacs@HIDDEN; Sat, 26 Feb 2022 04:29:20 -0500 Received: by mail-qk1-x735.google.com with SMTP id b13so6523576qkj.12 for <bug-gnu-emacs@HIDDEN>; Sat, 26 Feb 2022 01:29:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=HIn811gh+Jc0o/BUZ6t1v+zQfvF6lr2edfonkYLeK+KdX0qr45Hn/mpaPu8wDk6zyI sW5UmUfOI86t6sT6C9cCr3GqSFlXxVTfRljKQmu2AQm6yqfEJUeBZVXl9T+5EuHFB6Rn ELQzecofeKwr/7EW5ck84ZNr93cBhPGapT5aofqJ4aVOvTIOvyPCMWiSZaek/FfHFmz6 pkQ9MBb3i37zyido9tT/5G4yr1TRTfOgC6ul/TBee6cScA5H4d7DCmLRvFP2tQX5QyUF QFXSbLCRO/RJT/gHT276KefVlGGCTCtVg7Z5nLGnRDkrMmt4SmZTLFfbJrHVrwSyPmJD Yrsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QCQ9aqQF2VgkXkjJXKe+ExzyiCy1QnZKHQ5H+PCQXpI=; b=OfLHYdKA/hQWUWnAk5b93l5U+72AOG3o5Od2w7zM4X84lS3EY8LZKTi72i1Kv05MEj kC4eCJ+ccwNyBsQCU1xFdJqBRo7FaIkV7YwSR2aEL9bN1lxYKUiDidyRKDERH8UZVOje ih8m/gvpIEnC+U4o6QfWy4+4jg9QEtM6nrOolGAiOwFYzYI00NDo9kNtl6CKFP0BnRsT JvEpMelEMJMhXZ7OzarNIBiM11a1FfpU6tjc5kezDcrCIwNfsnsGkmPHUCDW00fIO1GC UBKOuyYTzZSuVAGh8axnrArdJd8mkJlGVbcIjhz+lGalWmpyQMuBVipV269iMekuXjlf 1tgA== X-Gm-Message-State: AOAM531D2PtBbOJ1FRo9kAfM/2THdSORjx2LB99ar1Zc5lEm3oGJkFKz 4NrBxCYlA1dRhtCXigsBqE7wSxqJtMq9QyBqS7k= X-Google-Smtp-Source: ABdhPJxD2uIvSagDTxAakvQVcDMJpunL8m0eLgVUMJRahlDmDZcQBJ6vMq6XXWoGSoBKp0MEFApWJWatXWn+BsDFl8Y= X-Received: by 2002:a37:4147:0:b0:47c:4595:b8c with SMTP id o68-20020a374147000000b0047c45950b8cmr6917449qka.267.1645867757950; Sat, 26 Feb 2022 01:29:17 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <87pmnad7n3.fsf@HIDDEN> In-Reply-To: <87pmnad7n3.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Sat, 26 Feb 2022 09:29:06 +0000 Message-ID: <CADF+Rti7JdViHpksyO7cnHy_gj8bCUDkXV0OfAP8Q-CfZn2mkw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Augusto Stoffel <arstoffel@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::735 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::735; envelope-from=dfussner@HIDDEN; helo=mail-qk1-x735.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 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, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (--) Hi Augusto, On Fri, 25 Feb 2022 at 20:16, Augusto Stoffel <arstoffel@HIDDEN> wrote: > > Hi David, > > I took a superficial look at this thread, and this seems very nice. Thanks! > > I was wondering why you want to be able to find the definition of macros > with @ in their name. Those are "private" macros that the user > shouldn't have occasion to use. Is it for a TeX programmer mode? I confess that TeX developers are indeed one of the main targets for the feature as I envisioned it. For creating and following \labels, \refs, and \cites (of all sorts) I find RefTeX very handy, as well as for jumping around \chapters and \sections and the like. What I miss when developing are the code-navigation features of something like xref, which are (from the user point of view) both simple and powerful. My modest goal was to make Emacs' extensive infrastructure work a little better out of the box for TeX documents, especially for styles and other collections of macros. > > Let me also mention a library I wrote for analyzing TeX code (accessible > to Emacs via LSP): > > https://github.com/astoff/digestif > > It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs > for flexible parsing. If you want to be very ambitious about what you > are able to parse, I think regexps are not sufficient. > > Digestif can handle \cite{messed up reference} just fine, for example. > This looks very nice indeed, and if I'm reading it right provides a replacement both for RefTeX and for the code-navigation features I'm trying to implement. I figure I'll continue trying to get improved out-of-the-box features into core, and if I manage to satisfy Dmitry we'll then have a choice, but in any case I'm going to have a longer look at digestif when I get some time. Thanks for the hint! David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 25 Feb 2022 20:16:26 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 25 15:16:26 2022 Received: from localhost ([127.0.0.1]:53810 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNh0s-0008Jm-44 for submit <at> debbugs.gnu.org; Fri, 25 Feb 2022 15:16:26 -0500 Received: from mail-ed1-f54.google.com ([209.85.208.54]:39919) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nNh0q-0008JX-DA for 53749 <at> debbugs.gnu.org; Fri, 25 Feb 2022 15:16:25 -0500 Received: by mail-ed1-f54.google.com with SMTP id g20so8941764edw.6 for <53749 <at> debbugs.gnu.org>; Fri, 25 Feb 2022 12:16:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=GYXELjg/pBo6hQT+aJ2L4VV4TUtbiGFSqxvajZZtkkqXAT6grRQomHjllLI2UwyIAS 5hlPH0P0ZUOhMvLopGT7t5+Qbjoe8DwbU5evHdWNi2ZbZyP1/oFFyTgEuiDSKCEhF+CN qrsYdiaAVyqtuTUu4W+PoQNjOJF0g2arS2eKDRA7L0fGSp8nHh3BbrhrKJXtLmqyhsZH XC4uKyvHE18rj12RNpKUyy7uv23k88h7JBWdQJ+Gyiq2sidgnAswEQKK/meMPbRTefUp O3V8hQq/9p+mgeigZleCgHlNBK8rxIT6BQDPgVzM+AFjplARx+l0dJtoThhqY7vPLYvl 08ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=XyXvWQDqpaxWyKM0iAZApEPyKmjKEg3TBwUQvHLCbwvoRHz0MP61IFEO7maC5ZC+Ng qSX2LY78xBTwecHld4KwYazbJdtnG/7m5KHIUqTw1/W9ELTNgAy8rPOMIM4y5qipPjUE pW6rMRdn8jDA+qxcTZuVE52P9B0yOJGA9a1jwzBAlj4Eun8L2uRGSiS/R6RgqfvCkMLJ TpXCky0pQRxoxtfQAXNnLYeTcSzA3V0v1HYNcdt8rxC7yH4gsyauEyaleSb47Esr0FcE NTGsNKWz475cz9ElmT5NaZyl59RFwx1nzCKiH7X6oNbAHmiNz9AGepnTHRNP6NxoWyT4 cK/A== X-Gm-Message-State: AOAM533YSleFgFPKLsjcJJgfonGoAgbfTHvv3DzXKkCi+FXZFetz/t2i a/V2AzU/6zPYCxWKOpLDf1s= X-Google-Smtp-Source: ABdhPJzkrNg5/WBOm2QpdYQfT2LHEAhiHWZc3ImETfIBiHNhwVOdJZUb6waM9FYAvPWOmXgDfKgHNw== X-Received: by 2002:a50:ee90:0:b0:40f:349f:7368 with SMTP id f16-20020a50ee90000000b0040f349f7368mr8488283edr.236.1645820178223; Fri, 25 Feb 2022 12:16:18 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id n23-20020a509357000000b00412b325b05fsm1750361eda.74.2022.02.25.12.16.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Feb 2022 12:16:17 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Date: Fri, 25 Feb 2022 21:16:16 +0100 In-Reply-To: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <87pmnad7n3.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (-) Hi David, I took a superficial look at this thread, and this seems very nice. I was wondering why you want to be able to find the definition of macros with @ in their name. Those are "private" macros that the user shouldn't have occasion to use. Is it for a TeX programmer mode? Let me also mention a library I wrote for analyzing TeX code (accessible to Emacs via LSP): https://github.com/astoff/digestif It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs for flexible parsing. If you want to be very ambitious about what you are able to parse, I think regexps are not sufficient. Digestif can handle \cite{messed up reference} just fine, for example. On Thu, 3 Feb 2022 at 15:09, David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> wrote: > I've recently been trying to use xref commands with a tags table in a > TeX repository, and many of the results are sub-optimal. This is a > known issue -- within living memory there have been at least two > discussions related to it on help-gnu-emacs: > > https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html > https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html > > Neither discussion resulted in any code, at least not that I can find, > and the issues mentioned there remain. For example, > xref-find-definitions on, say, '\mycommand' returns > > No definitions found for: mycommand. > > (The absence of the escape char in the search string makes the search > fail, as the tag name in the table will be '\mycommand'.) > > Similarly, any xref command on 'my:citekey' will only search by default > for the half of the symbol under point, stopping at the colon. > > There are many other behaviors that are suboptimal, as well, so in the > end I wrote a new xref backend for TeX buffers (cloning large portions > of the default etags backend), and wondered whether it might be welcome > in GNU Emacs. > > A few remarks: > > 1. The code should work as it stands both in the AUCTeX and the in-tree > modes. The AUCTeX hooks I've included in the patch are provisional, as > I would want to discuss with them how they would want to handle it, > should the patch be accepted in some form. > > 2. Along the way I found some issues with how etags parses TeX files, > issues which affect the usefulness of the xref commands, so I've made > changes in etags.c as well. When running the test suite for etags the > only diffs occurred in the TeX-related sections of the resulting tags > file, and location information in those sections was good. > > 3. The patch as it stands enables all the changes by default to give > what I judge to be the best out-of-the-box experience, but wiser heads > may well have other ideas. > > 4. If it looks like the patch will make it into Emacs in some form, I'm > going to need to assign copyright, so I'd appreciate help with getting > that started. > > Thanks, > > David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 25 Feb 2022 20:16:36 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 25 15:16:36 2022 Received: from localhost ([127.0.0.1]:53813 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNh12-0008KA-Fa for submit <at> debbugs.gnu.org; Fri, 25 Feb 2022 15:16:36 -0500 Received: from lists.gnu.org ([209.51.188.17]:42116) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arstoffel@HIDDEN>) id 1nNh0v-0008Jw-6D for submit <at> debbugs.gnu.org; Fri, 25 Feb 2022 15:16:29 -0500 Received: from eggs.gnu.org ([209.51.188.92]:50848) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arstoffel@HIDDEN>) id 1nNh0q-0006XV-Vu for bug-gnu-emacs@HIDDEN; Fri, 25 Feb 2022 15:16:29 -0500 Received: from [2a00:1450:4864:20::533] (port=38667 helo=mail-ed1-x533.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <arstoffel@HIDDEN>) id 1nNh0m-00009h-3Z for bug-gnu-emacs@HIDDEN; Fri, 25 Feb 2022 15:16:23 -0500 Received: by mail-ed1-x533.google.com with SMTP id s24so8937732edr.5 for <bug-gnu-emacs@HIDDEN>; Fri, 25 Feb 2022 12:16:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=GYXELjg/pBo6hQT+aJ2L4VV4TUtbiGFSqxvajZZtkkqXAT6grRQomHjllLI2UwyIAS 5hlPH0P0ZUOhMvLopGT7t5+Qbjoe8DwbU5evHdWNi2ZbZyP1/oFFyTgEuiDSKCEhF+CN qrsYdiaAVyqtuTUu4W+PoQNjOJF0g2arS2eKDRA7L0fGSp8nHh3BbrhrKJXtLmqyhsZH XC4uKyvHE18rj12RNpKUyy7uv23k88h7JBWdQJ+Gyiq2sidgnAswEQKK/meMPbRTefUp O3V8hQq/9p+mgeigZleCgHlNBK8rxIT6BQDPgVzM+AFjplARx+l0dJtoThhqY7vPLYvl 08ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=pOtJY65BSCDg5reHSC+XupwZ0t80w4yz2ZVZg70/NPM=; b=vofO5TVpwwyV3RjKEAGKhhKGVXyJJP6RxAW5KHusraJE/bdZ9hJMLkZ+IAxJXySSgj 1w6riQjMTWEot8C+2IVT1keBDJ0fexEcZ7fUgMempFAeOsGERqSoXY/M5WvMYBDUAHaN wlGrDeTvV2EpyFevmfyKSIF5fmt9Iv76gWEKiNz6XMGVAQKqZmwI6K8XUv4BWxPJN4+E ES8Holo9ggWxqU2tlqXnI8GATMznMrHmFOlpU6gnd+ZWXobJ2OvN7wjxE4IMTo5mjOsT uoW/tQGFnEYUZBcJlSsZ64fMSzVFGyRSb9ksf9AxF6AL402cFlB2CWrRqqSHwG2n2VRB EyrQ== X-Gm-Message-State: AOAM533wO1h0MtQTXJy22rKzdGgSjRNCvlUW2ySGs9sJKRauXdo8gocX Er9+qkchuS2yjxCdzpgaXas= X-Google-Smtp-Source: ABdhPJzkrNg5/WBOm2QpdYQfT2LHEAhiHWZc3ImETfIBiHNhwVOdJZUb6waM9FYAvPWOmXgDfKgHNw== X-Received: by 2002:a50:ee90:0:b0:40f:349f:7368 with SMTP id f16-20020a50ee90000000b0040f349f7368mr8488283edr.236.1645820178223; Fri, 25 Feb 2022 12:16:18 -0800 (PST) Received: from ars3 ([2a02:8109:8ac0:56d0::758e]) by smtp.gmail.com with ESMTPSA id n23-20020a509357000000b00412b325b05fsm1750361eda.74.2022.02.25.12.16.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Feb 2022 12:16:17 -0800 (PST) From: Augusto Stoffel <arstoffel@HIDDEN> To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Date: Fri, 25 Feb 2022 21:16:16 +0100 In-Reply-To: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <87pmnad7n3.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Host-Lookup-Failed: Reverse DNS lookup failed for 2a00:1450:4864:20::533 (failed) Received-SPF: pass client-ip=2a00:1450:4864:20::533; envelope-from=arstoffel@HIDDEN; helo=mail-ed1-x533.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 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, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (--) Hi David, I took a superficial look at this thread, and this seems very nice. I was wondering why you want to be able to find the definition of macros with @ in their name. Those are "private" macros that the user shouldn't have occasion to use. Is it for a TeX programmer mode? Let me also mention a library I wrote for analyzing TeX code (accessible to Emacs via LSP): https://github.com/astoff/digestif It's written in Lua (can run on the LuaTeX interpreter) and uses PEGs for flexible parsing. If you want to be very ambitious about what you are able to parse, I think regexps are not sufficient. Digestif can handle \cite{messed up reference} just fine, for example. On Thu, 3 Feb 2022 at 15:09, David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> wrote: > I've recently been trying to use xref commands with a tags table in a > TeX repository, and many of the results are sub-optimal. This is a > known issue -- within living memory there have been at least two > discussions related to it on help-gnu-emacs: > > https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html > https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html > > Neither discussion resulted in any code, at least not that I can find, > and the issues mentioned there remain. For example, > xref-find-definitions on, say, '\mycommand' returns > > No definitions found for: mycommand. > > (The absence of the escape char in the search string makes the search > fail, as the tag name in the table will be '\mycommand'.) > > Similarly, any xref command on 'my:citekey' will only search by default > for the half of the symbol under point, stopping at the colon. > > There are many other behaviors that are suboptimal, as well, so in the > end I wrote a new xref backend for TeX buffers (cloning large portions > of the default etags backend), and wondered whether it might be welcome > in GNU Emacs. > > A few remarks: > > 1. The code should work as it stands both in the AUCTeX and the in-tree > modes. The AUCTeX hooks I've included in the patch are provisional, as > I would want to discuss with them how they would want to handle it, > should the patch be accepted in some form. > > 2. Along the way I found some issues with how etags parses TeX files, > issues which affect the usefulness of the xref commands, so I've made > changes in etags.c as well. When running the test suite for etags the > only diffs occurred in the TeX-related sections of the resulting tags > file, and location information in those sections was good. > > 3. The patch as it stands enables all the changes by default to give > what I judge to be the best out-of-the-box experience, but wiser heads > may well have other ideas. > > 4. If it looks like the patch will make it into Emacs in some form, I'm > going to need to assign copyright, so I'd appreciate help with getting > that started. > > Thanks, > > David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 24 Feb 2022 13:16:02 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 24 08:16:02 2022 Received: from localhost ([127.0.0.1]:47827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nNDyU-0003Ac-5J for submit <at> debbugs.gnu.org; Thu, 24 Feb 2022 08:16:02 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:42596) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nNDyR-0003A1-Er for 53749 <at> debbugs.gnu.org; Thu, 24 Feb 2022 08:16:00 -0500 Received: by mail-qv1-f43.google.com with SMTP id e22so3382427qvf.9 for <53749 <at> debbugs.gnu.org>; Thu, 24 Feb 2022 05:15:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=34VJV798dzq+MIACZ6DeajURltjRqqv7o55eK8zhapo=; b=lGjj/JYFe9odxEsZmg9SdQrjU2BgFxxTeIUrwdIkZfbDSSB0aF13ngSACxyQDtHWgl jvo4pqhV9Xp+MdirWfrtwhj4Qkiny7obueLxJfbqQHh3S+4pu/+VIqcJgLNjt145tvyl 8X0Zunebyz8fPE/ZlgOtDoIOgJL4+s0H/6PCT8DrkfTAsalyVQIMe2LyNmq/QEca1hZB kho9/Ocq40CAPck/7Rs4ojl2fqfnJS3wDqNY9kinV3L5qy91W5vn8Vq3G/bONTMQSFIO A+vAYEFEuGaZvIGsDnC+ytjvMT6GIi8cMI2pO/bL1rdOXqrKB3Ulinf6H3so7BBXK5Mj HAmA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=34VJV798dzq+MIACZ6DeajURltjRqqv7o55eK8zhapo=; b=XZCq+zfEUZC1b+yLKKvqQ1fQpb2GX+vXX96N23cR6bzz5LRbzjlo4DqD5r3CbILu6j YqqSa02KIhcSUGa3axA0msBCPraJDXk/YuHjhcqNzyqhSpGtJfi3Tykf7qXd3/eFtIO6 lK828ZaMnp7F1YQb5vRWhS1VH2q002DztXPGXGWnMO6t7Ct63IM7NZJMpjMDMhXSRNoJ JrMxiTpIUx4BC0CXkgngEOqNyNAq2ZevDVv/nWM9jG1IK67FtdS4O2JHpTeowwOIjWCu F0JSW5thIteJvmvlv2FfMv+NRvDXwWhCl3u0fjGlejB//BPPQ8nEgsRfZ6LBaE60Pirt TB4w== X-Gm-Message-State: AOAM533b+agF82LmfviIC3l2KO2eKZxr/nZH65sDqeGTohrM9MW8r2ih qS8IyLjQBIa/aFPNeoj7Jjmwcw5Rtd2ze6KFcn8= X-Google-Smtp-Source: ABdhPJyrGi8ESvsSKHRHm5NsUlKXeIxhVdq7DCRbcAn2mP/tunFQ21akTAJFVfFdiAmsiPsLyOmoja+kG34P13qbpv8= X-Received: by 2002:ac8:5c4f:0:b0:2dc:8e84:b0ac with SMTP id j15-20020ac85c4f000000b002dc8e84b0acmr2229834qtj.536.1645708553503; Thu, 24 Feb 2022 05:15:53 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@HIDDEN> <CADF+Rtib+y+9yzCG1NZFjZCa7np=sc2rFkrQ-tsLCFjSpw=+0Q@HIDDEN> <b88c334e-02a5-c259-fd78-4e6c14d47a77@HIDDEN> In-Reply-To: <b88c334e-02a5-c259-fd78-4e6c14d47a77@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Thu, 24 Feb 2022 13:15:41 +0000 Message-ID: <CADF+RtiAZgzXDvRA_=C4+=A8eKjPGwmfj05RdqAj8xq=QDjFxA@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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 (-) Thanks Dmitry. I'll post back here when I've got something. David. On Thu, 24 Feb 2022 at 02:23, Dmitry Gutov <dgutov@HIDDEN> wrote: > > Hi David, > > On 23.02.2022 12:45, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > > I guess it might be possible to come up with a regexp to suppress the > > @ in some positions in the string, but the bad news is that if you M-? > > with that search string you get no results at all with the default > > backend. Grep finds the same two as before, but the default format > > specification eliminates even those. So you're left looking at a > > string in your buffer and xref is telling you it isn't there. > > That's odd. I've tried searching for 'blx@opt@uniquename' inside \...@, > and 'grep -w' successfully finds it. Post-processing fails, apparently, > but that depends on the contents of the syntax table. So one solution > might be to update tex-mode's syntax table. > > >> And if not, all in all, I wouldn't worry too much about > >> xref-find-references, since TeX is more of a text format (IMHO) than a > >> program with well-defined identifiers. Perhaps using project-find-regexp > >> most of the time will save you a lot of the trouble? > >> > > > > You're quite right that C-x p g works well in this instance, and I > > tried to improve how thing-at-point finds search strings in TeX > > buffers for this command. I guess TeX is a little bit of a bad fit > > both for text modes and for prog modes, but I confess I'm still uneasy > > at the thought of M-? returning such misleading results. What would > > you think about putting project-find-regexp on M-? in TeX buffers? > > That is, assuming I don't find reasonably common TeX constructs that > > defeat it? > > At the face of it, the suggestion seems odd (those command's features > and user expectations are different), but it wouldn't be out of the > question to circle back to it later. > > >> The parser could create both qualified (with \def or \csdef) and > >> unqualified entries for the same definition. Maybe make it optional > >> (with -Q argument to etags). Then the user could search using any of > >> these formats. > >> > > > > I guess we could make etags do some of the work, perhaps adding also a > > distinction between tagged commands that require this duplication > > (\def & \csdef) and those that don't (\chapter). Aside from making > > tags files a lot bigger, and possibly adding another option to a > > program already overloaded with them -- neither of which is a > > showstopper -- I suspect it could work pretty well for > > xref-find-definitions. > > IIUC tag files for LaTeX aren't going to be particularly big anyway > (book projects are almost always smaller than even a mid-sized software > project), so the size might never be a problem. > > But then again, I could be very wrong about that. > > >> The suggestion about a buffer-local value of that var was made in the > >> context of trying to make it work with the current etags backend. At > >> least, in the first patch. If only because I don't really like to see > >> duplicated code. > >> > >> If we find another place where we really want to diverge, we could also > >> try adding some behavior-altering variable first. > >> > >> After that, we might as well add a new backend (I'm not really against > >> it, just prefer to exhaust other options first), but hopefully someone > >> else (more familiar with tex-mode) could take over this discussion at > >> that point, and the subsequent responsibility for the added code. That > >> person could be yourself too, under right conditions. > > > > I certainly concur about duplicated code, and I really did try hard to > > get by without a new backend, but I won't pretend that I exhausted all > > or even nearly all of the possibilities. If I'm understanding you > > correctly, you'd prefer a few, small changes to the backend code in > > etags.el (and xref.el), should that be necessary, to a whole new > > backend which limits changes to tex-mode.el. If this understanding is > > reasonably accurate, I can have another look at earlier iterations of > > the code to see what I missed, and perhaps come up with something that > > works right without so much duplication. It may well take me some > > time, so apologies in advance for being slow. > > Yes, please.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 24 Feb 2022 02:23:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 23 21:23:58 2022 Received: from localhost ([127.0.0.1]:46942 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nN3nS-00081K-9k for submit <at> debbugs.gnu.org; Wed, 23 Feb 2022 21:23:58 -0500 Received: from mail-wr1-f46.google.com ([209.85.221.46]:42529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <raaahh@HIDDEN>) id 1nN3nQ-000815-Id for 53749 <at> debbugs.gnu.org; Wed, 23 Feb 2022 21:23:57 -0500 Received: by mail-wr1-f46.google.com with SMTP id d17so738180wrc.9 for <53749 <at> debbugs.gnu.org>; Wed, 23 Feb 2022 18:23:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=nm2/jvARW/kXJfePE75YpDEu86GSmMahZJxlHqZ+nOo=; b=TnjEHtBdEAwK+rH+QhPcroEGubcqPo0q88lo9uvR5ijEDtiyfURmcKbVoTTDLYLcft TOcApCPC+hHHE7tnlSyNsp4wwInyXQLP6y3J11emiWrtl/+zwoT3tvjMDqA3ffViiYt8 Q6pLrF2kKz3K1ZBpEeV+wAMWbKMfH/BVsYeMA6n2O61jSO6oh2pQPE/wpwfglgnjVQpM iGja949Tin0H4NMngIBauTZNqr8kSs/xUUSN5uMj1px79dAMJtM3gxEZoZTOiKE1L745 MlKqN74cK+Toj++BICEPa46l/5QZwz/CJB00CLlxB9KgcswKNGW+4GHfPhHoE78hjXvx UGjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=nm2/jvARW/kXJfePE75YpDEu86GSmMahZJxlHqZ+nOo=; b=g74RqZ0x+uIGryG/TgmqgfXymDFFkWbJ5gVMDU8no11fkM/qgWrvMGMFuDmRLVd5uD C4m2joZMiZPzzJFhBrQffyl8UbBimBTfcXdB1wudN1fec2+obKqIWB1KKtm4XKiDHkA/ MQlKPUl7JHrOoR6KEcNiT2m7kDBAE98X0DPx/vsChf1hBzvMispvR/bVhv8emZM9+DtO iAJaCJDkBdeDPjF4CXliCYpcB3XZ7xEhC7D8e5nFrMyBFcETTGttwBhS33mI8ErNUmvn VYf7FS0wmi7JvwvpSpJ4+jv5sADqR+dCnTIkwSQS0egK6/V2PB1gk3UjMGWQqN7ZSOcL pPbQ== X-Gm-Message-State: AOAM5313oJIOnxiMivgCB7O0NDs8aK6qyX0vEiUvxDQDfcExNd1V+BhY 0wD0Q+frLqySX69O9TGEGOs= X-Google-Smtp-Source: ABdhPJzy0lWj1jz9B5hsbUlW51/H0QmRUmTq9hQ+HA4IeajP1TN0zwbmkeXoGH23N30AGCtu7+iaUA== X-Received: by 2002:a05:6000:1b8a:b0:1e4:b3a3:4c1f with SMTP id r10-20020a0560001b8a00b001e4b3a34c1fmr393552wru.202.1645669430605; Wed, 23 Feb 2022 18:23:50 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id j27sm1164816wrd.32.2022.02.23.18.23.49 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 23 Feb 2022 18:23:50 -0800 (PST) Message-ID: <b88c334e-02a5-c259-fd78-4e6c14d47a77@HIDDEN> Date: Thu, 24 Feb 2022 04:23:48 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@HIDDEN> <CADF+Rtib+y+9yzCG1NZFjZCa7np=sc2rFkrQ-tsLCFjSpw=+0Q@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+Rtib+y+9yzCG1NZFjZCa7np=sc2rFkrQ-tsLCFjSpw=+0Q@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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: -0.5 (/) Hi David, On 23.02.2022 12:45, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > I guess it might be possible to come up with a regexp to suppress the > @ in some positions in the string, but the bad news is that if you M-? > with that search string you get no results at all with the default > backend. Grep finds the same two as before, but the default format > specification eliminates even those. So you're left looking at a > string in your buffer and xref is telling you it isn't there. That's odd. I've tried searching for 'blx@opt@uniquename' inside \...@, and 'grep -w' successfully finds it. Post-processing fails, apparently, but that depends on the contents of the syntax table. So one solution might be to update tex-mode's syntax table. >> And if not, all in all, I wouldn't worry too much about >> xref-find-references, since TeX is more of a text format (IMHO) than a >> program with well-defined identifiers. Perhaps using project-find-regexp >> most of the time will save you a lot of the trouble? >> > > You're quite right that C-x p g works well in this instance, and I > tried to improve how thing-at-point finds search strings in TeX > buffers for this command. I guess TeX is a little bit of a bad fit > both for text modes and for prog modes, but I confess I'm still uneasy > at the thought of M-? returning such misleading results. What would > you think about putting project-find-regexp on M-? in TeX buffers? > That is, assuming I don't find reasonably common TeX constructs that > defeat it? At the face of it, the suggestion seems odd (those command's features and user expectations are different), but it wouldn't be out of the question to circle back to it later. >> The parser could create both qualified (with \def or \csdef) and >> unqualified entries for the same definition. Maybe make it optional >> (with -Q argument to etags). Then the user could search using any of >> these formats. >> > > I guess we could make etags do some of the work, perhaps adding also a > distinction between tagged commands that require this duplication > (\def & \csdef) and those that don't (\chapter). Aside from making > tags files a lot bigger, and possibly adding another option to a > program already overloaded with them -- neither of which is a > showstopper -- I suspect it could work pretty well for > xref-find-definitions. IIUC tag files for LaTeX aren't going to be particularly big anyway (book projects are almost always smaller than even a mid-sized software project), so the size might never be a problem. But then again, I could be very wrong about that. >> The suggestion about a buffer-local value of that var was made in the >> context of trying to make it work with the current etags backend. At >> least, in the first patch. If only because I don't really like to see >> duplicated code. >> >> If we find another place where we really want to diverge, we could also >> try adding some behavior-altering variable first. >> >> After that, we might as well add a new backend (I'm not really against >> it, just prefer to exhaust other options first), but hopefully someone >> else (more familiar with tex-mode) could take over this discussion at >> that point, and the subsequent responsibility for the added code. That >> person could be yourself too, under right conditions. > > I certainly concur about duplicated code, and I really did try hard to > get by without a new backend, but I won't pretend that I exhausted all > or even nearly all of the possibilities. If I'm understanding you > correctly, you'd prefer a few, small changes to the backend code in > etags.el (and xref.el), should that be necessary, to a whole new > backend which limits changes to tex-mode.el. If this understanding is > reasonably accurate, I can have another look at earlier iterations of > the code to see what I missed, and perhaps come up with something that > works right without so much duplication. It may well take me some > time, so apologies in advance for being slow. Yes, please.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 23 Feb 2022 10:45:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 23 05:45:49 2022 Received: from localhost ([127.0.0.1]:43945 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMp9Y-0007dJ-Tp for submit <at> debbugs.gnu.org; Wed, 23 Feb 2022 05:45:49 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:35328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nMp9X-0007d6-DI for 53749 <at> debbugs.gnu.org; Wed, 23 Feb 2022 05:45:47 -0500 Received: by mail-qv1-f43.google.com with SMTP id 8so7579558qvf.2 for <53749 <at> debbugs.gnu.org>; Wed, 23 Feb 2022 02:45:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YpiSIPdTB36nqHxD9dnDiycA9pXb+3/En4b+6fBWfVA=; b=NTcknPRGxBX/O/DzKdmWYFPzXOEuTGH1JlbYNmRoaKVHIwom85O0tDbAULUfw8aiL3 8auWoA95FZT5mV8pGZ7W0QzK7vIdGBS2o3moaGlNBt2i9PgSGfkohkLXAWVWk7cWvOA1 5LQKar4xAjyhnBoIEpkeWpg/nYJipgNwCfgEcfDxjvi341JKYwWdMI1cRKh7FswtxHg7 btiVE7blprxkyHWVcTb0Pb8T/2z5KDIPULaUDy7cuu+4Vu5p8tdgzCz6Og2qv7i3ztKX KEHKRWxaBXLGtB6aYcURoF7qG2qA65VvkNNU/sbgKlZSAnkeYrCvcVlXc7NEg24keasE s/Xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YpiSIPdTB36nqHxD9dnDiycA9pXb+3/En4b+6fBWfVA=; b=Ei7uercNnAmmfVgmF2F9bTmBPw+kMNm+XtNJVHkYsnPHBZiemBqbRxc4xYnW9tKAEZ n+gP6C84doyQ8fm0PMAnMl+wENILZQjm4u7u0BGbmjsl0qPBnCOEudOZkuBQpK2l1cX/ TubwMgrk/coJUFFkzw3pu4WtmvgJgP6cFKmw5nD4wZxzA5BIulo/SfN28zMB5VkkqZpa KFTDR12vz4KftxfFrcaUFNLvubiHf+L3cHcP2PW1aIXOfYan8loLAXkqWhPTddS6f8PD KVywx8fb7KT+sYmfKO7A8TGPXZKmGATHAZI9nw6ScDutDPOTOYxiT4McKVlJBwARseWg 9oAw== X-Gm-Message-State: AOAM5319nnIi2etYgeRd0W6quZymNqMix2J9mu6/OiGHgR/gpNG1QkXp n0o5v4ZV5RjDldE2UyDNk1sWzuLQeLYvEn1scdHVtCcAWXqGvw== X-Google-Smtp-Source: ABdhPJzidqwhxUO1SHsGSr3s0l4tWNOmz+05CTMCpHq4ceH2L7A0m3WtgJaxisxu24mqbGP7RF72n/NR44HiQZFRG34= X-Received: by 2002:a05:6214:21cf:b0:42d:cc:4121 with SMTP id d15-20020a05621421cf00b0042d00cc4121mr22736020qvh.70.1645613141427; Wed, 23 Feb 2022 02:45:41 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> <300e30e1-aeea-ffa5-fa13-d541ccbffe30@HIDDEN> In-Reply-To: <300e30e1-aeea-ffa5-fa13-d541ccbffe30@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Wed, 23 Feb 2022 10:45:28 +0000 Message-ID: <CADF+Rtib+y+9yzCG1NZFjZCa7np=sc2rFkrQ-tsLCFjSpw=+0Q@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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 (-) Hi Dmitry, Thanks again for looking at all this, and for your patience. On Wed, 23 Feb 2022 at 02:21, Dmitry Gutov <dgutov@HIDDEN> wrote: > > That might call for a different implementation of 'references' indeed. > > But could you make 'blx@opt@uniquename' the default search string in > that example? Does that make sense? > I guess it might be possible to come up with a regexp to suppress the @ in some positions in the string, but the bad news is that if you M-? with that search string you get no results at all with the default backend. Grep finds the same two as before, but the default format specification eliminates even those. So you're left looking at a string in your buffer and xref is telling you it isn't there. > And if not, all in all, I wouldn't worry too much about > xref-find-references, since TeX is more of a text format (IMHO) than a > program with well-defined identifiers. Perhaps using project-find-regexp > most of the time will save you a lot of the trouble? > You're quite right that C-x p g works well in this instance, and I tried to improve how thing-at-point finds search strings in TeX buffers for this command. I guess TeX is a little bit of a bad fit both for text modes and for prog modes, but I confess I'm still uneasy at the thought of M-? returning such misleading results. What would you think about putting project-find-regexp on M-? in TeX buffers? That is, assuming I don't find reasonably common TeX constructs that defeat it? > > If I understand you right, I think that's what I'm trying to do, but > > allowing for users who perhaps aren't too familiar with emacs regexps > > and who might typically just accept the default search string offered by > > xref. > > I'm not sure how I feel about the extra "fuzziness" in the behavior > which comes with this approach. I see your point here. > > The parser could create both qualified (with \def or \csdef) and > unqualified entries for the same definition. Maybe make it optional > (with -Q argument to etags). Then the user could search using any of > these formats. > I guess we could make etags do some of the work, perhaps adding also a distinction between tagged commands that require this duplication (\def & \csdef) and those that don't (\chapter). Aside from making tags files a lot bigger, and possibly adding another option to a program already overloaded with them -- neither of which is a showstopper -- I suspect it could work pretty well for xref-find-definitions. > > The suggestion about a buffer-local value of that var was made in the > context of trying to make it work with the current etags backend. At > least, in the first patch. If only because I don't really like to see > duplicated code. > > If we find another place where we really want to diverge, we could also > try adding some behavior-altering variable first. > > After that, we might as well add a new backend (I'm not really against > it, just prefer to exhaust other options first), but hopefully someone > else (more familiar with tex-mode) could take over this discussion at > that point, and the subsequent responsibility for the added code. That > person could be yourself too, under right conditions. I certainly concur about duplicated code, and I really did try hard to get by without a new backend, but I won't pretend that I exhausted all or even nearly all of the possibilities. If I'm understanding you correctly, you'd prefer a few, small changes to the backend code in etags.el (and xref.el), should that be necessary, to a whole new backend which limits changes to tex-mode.el. If this understanding is reasonably accurate, I can have another look at earlier iterations of the code to see what I missed, and perhaps come up with something that works right without so much duplication. It may well take me some time, so apologies in advance for being slow. David.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 23 Feb 2022 02:21:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 22 21:21:31 2022 Received: from localhost ([127.0.0.1]:43255 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMhHU-0008Os-6S for submit <at> debbugs.gnu.org; Tue, 22 Feb 2022 21:21:31 -0500 Received: from mail-wm1-f53.google.com ([209.85.128.53]:39635) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <raaahh@HIDDEN>) id 1nMhHR-0008Ob-U5 for 53749 <at> debbugs.gnu.org; Tue, 22 Feb 2022 21:21:27 -0500 Received: by mail-wm1-f53.google.com with SMTP id n13-20020a05600c3b8d00b0037bff8a24ebso564532wms.4 for <53749 <at> debbugs.gnu.org>; Tue, 22 Feb 2022 18:21:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=8Aos8TktPPGHjtq06SeU5VGEv5Exji4jZkl/FJ4xc/s=; b=cQeMAiyWM5fCcuITjBEZh9HPx+Kt+cUl1XDxbQRMUsuHmcKvvqG31e/vl7C8hku3TZ BcwvFpvcvs8BFgGX6auiScNwjhemL9z3MDu1ksX9VPpL58dOxwFYwXUuv1jnedk0HzzJ W8WE9++cVb9cGHJbV99jBBhE4q8IcNC7elqooCAdbfZeZDCezU0NZlI92Uu/Y7zquCoM QOJV8G64AhNZLOw/JjyxVOehihg7aVQYmztl7rD3g1Kn/0wu/AWF7CevPbMFf5Y5cZyY M01V6fuAxiIJh+BRZzRJ/fT2Wyna6Lew66/tsAD0AAQodnpMmf9c6u1jDoRrnoeyFA7G owWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=8Aos8TktPPGHjtq06SeU5VGEv5Exji4jZkl/FJ4xc/s=; b=phmFIX57ZFmmeo7vEC2DUn2l7CJMPDQooq5qK2VLmJ+RHaooEYosI1WmLdJHoxjTsD fykvhBv12xBUWCPGk0DZZl8BwMoo3fjlzgcg58F9ra9L2AdCLVcfJhX0dSVCUaBTSzNW 5TTDGjvJlYiuRvJ+pY8TAuQi+1nHG0jgpo+Yd6U+TD8B4RKFU8j4jGE5Q73r5C89Cmns gmH5Gy9MET+O8YYaEl1Qb1hcqERrgwCZFi7AmKelkS+TAWueIpueLfokyPLZWzKl+Y/z pcpWYXmPIRp73hztcN9a2Qh7L22MJOCfXET9qwDHA4s5St4mE+ByW5+HLyv4YV28tYkT 2cnA== X-Gm-Message-State: AOAM532QFBaQXbMGxInoLdEM44bYbjwIoPPiMHHYc4LlwltkFTPpKW3Y 5Pb8XDQvbpdNmEI674Zx+I8= X-Google-Smtp-Source: ABdhPJzW6plc8+eL5irsW6SGpPpntFmvo/8cOfWtVgcMF5TXkH80UdbrKciELezyU2L4S8f/pGeAHQ== X-Received: by 2002:a1c:4c0a:0:b0:37b:b34d:624e with SMTP id z10-20020a1c4c0a000000b0037bb34d624emr5381476wmf.139.1645582879904; Tue, 22 Feb 2022 18:21:19 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id w13sm3233333wrv.21.2022.02.22.18.21.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 22 Feb 2022 18:21:19 -0800 (PST) Message-ID: <300e30e1-aeea-ffa5-fa13-d541ccbffe30@HIDDEN> Date: Wed, 23 Feb 2022 04:21:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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: -0.5 (/) Hi David, On 22.02.2022 17:19, David Fussner wrote: > > Do you have a step-by-step scenario? Perhaps using one of the .texi > > manuals already existing in the repo? > > I can't find a good example in the emacs repo, but I'll try to talk > through what happens with a code snippet from biblatex.sty, which I hope > will explain some of the issues we're discussing, even if it is a little > artificial. Thank you. > \DeclareBiblatexOption{global,type}[string]{uniquename}[true]{% >  \ifcsdef{blx@opt@uniquename@#1} >   {\letcs\blx@uniquename{blx@opt@uniquename@#1}} >   {\blx@err@invopt{uniquename=#1}{}}} > \def\blx@opt@uniquename@false{false} > \def\blx@opt@uniquename@init{init} > \def\blx@opt@uniquename@true{full} > \def\blx@opt@uniquename@full{full} > \def\blx@opt@uniquename@allinit{allinit} > \def\blx@opt@uniquename@allfull{allfull} > \def\blx@opt@uniquename@mininit{mininit} > \def\blx@opt@uniquename@minfull{minfull} > > If you do M-? on \ifcsdef{blx@opt@uniquename@#1} using the default > backend, the default search string is blx@opt@uniquename@, and you'll > get two hits, that line and the following one. Stepping through > xref-references-in-directory shows that the semantic-symref search > (using grep) only finds those two using the :searchtype 'symbol, and > they're returned. If you change 'symbol to 'regexp, grep finds all the > matches in that code snippet, but then xref--convert-hits uses (format > "\\_<%s\\_>"), which again loses all but the first two hits when it > scans the list provided by grep. Either grep or emacs here will miss > out on valid hits unless you change both the semantic-symref > instantiation and the format specification. That might call for a different implementation of 'references' indeed. But could you make 'blx@opt@uniquename' the default search string in that example? Does that make sense? And if not, all in all, I wouldn't worry too much about xref-find-references, since TeX is more of a text format (IMHO) than a program with well-defined identifiers. Perhaps using project-find-regexp most of the time will save you a lot of the trouble? > > One way to deal with that is to treat all user inputs as regexps > there. Perhaps some will have to be more verbose that ideal, but as > > long as the user is familiar with the regexp syntax, the behavior > will be both powerful and predictable > > If I understand you right, I think that's what I'm trying to do, but > allowing for users who perhaps aren't too familiar with emacs regexps > and who might typically just accept the default search string offered by > xref. I'm not sure how I feel about the extra "fuzziness" in the behavior which comes with this approach. > > Could those be disambiguated when the tags are scanned, instead? > Then the user will tailor their input to find the one or the other. > > If I understand you correctly, that's also what I try to do -- each > tagged command in the tags file is searched by the name of the tag, > which in these cases will either start with the escape char or not. > Looking at the biblatex snippet, if you come across > \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to > see what the definition is, you can't know apriori how it was defined, > with \def or with \csdef. This snippet above mixes both styles, and I > hoped that a user would be allowed to choose whether to search for both > styles without necessarily having to try both forms of the string in > separate searches. In fact, as the code stands, it only does the second > search if the first one fails, so it still more or less keeps the two > command-naming styles separate. The parser could create both qualified (with \def or \csdef) and unqualified entries for the same definition. Maybe make it optional (with -Q argument to etags). Then the user could search using any of these formats. > > Or if we want more fuzzier matching, perhaps creating mode-specific > values of etags-xref-find-definitions-tag-order could help. > > Yeah, you're right, I'm pretty sure I could use a buffer-local value of > that variable to get xref-find-definitions to do the fuzzy matching I'm > after. Does the discussion above at all help to convince you that there > are other issues that might still require a new backend? The suggestion about a buffer-local value of that var was made in the context of trying to make it work with the current etags backend. At least, in the first patch. If only because I don't really like to see duplicated code. If we find another place where we really want to diverge, we could also try adding some behavior-altering variable first. After that, we might as well add a new backend (I'm not really against it, just prefer to exhaust other options first), but hopefully someone else (more familiar with tex-mode) could take over this discussion at that point, and the subsequent responsibility for the added code. That person could be yourself too, under right conditions.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 22 Feb 2022 15:19:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 22 10:19:49 2022 Received: from localhost ([127.0.0.1]:42372 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMWxA-0000Js-Of for submit <at> debbugs.gnu.org; Tue, 22 Feb 2022 10:19:49 -0500 Received: from mail-qv1-f53.google.com ([209.85.219.53]:39476) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nMWx9-0000Jg-HJ for 53749 <at> debbugs.gnu.org; Tue, 22 Feb 2022 10:19:48 -0500 Received: by mail-qv1-f53.google.com with SMTP id a1so1812144qvl.6 for <53749 <at> debbugs.gnu.org>; Tue, 22 Feb 2022 07:19:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SfYAfmYsi50+ee/1Moo5O7y7aqGh9KvJHZHat2yssAA=; b=cZpOI8QbKBkrlVQJ+j6OcRRUnfIWSTDZfTRlxRO9AffWeKUsoJpZy/HFM097HB55Ut PaHwc1J6Yjrki6/FtuRng9R6DTTHqo9azWQo3Q3B72E1vEVZ/SnbuG3OyBMobxdmnZQO CuepEmwWeDBFXTch9yfdAAx37tMgBxRBLCToIi6Czah+Ad7sGJ0bxeh5FuUwIfCfB7Q4 pvQbx/hxUveiBDmyCE77TUTQoT2jE4gZPhsqzvsuSNgm+1KTgu2Mgv6caU6OC1XN8bSu FmQ7isFmB7CLI/QwJfGOjte2iOZvarOkmm8pMg/PrEoNtTatgFl3lFdKkYrZXt2ScqjR NiRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SfYAfmYsi50+ee/1Moo5O7y7aqGh9KvJHZHat2yssAA=; b=M/tajhNWGSfqv4aJuGqz5XIjiRjYYHLkFMBjwf736j22qJM5JEiI+ATn6xMh8qyj9e 55t7uAw2LRwEgn4KAeEFNlOWfW/k6Du/vNAtqT95A7sRBlLiWSHa9pwHM1Jc/eJeHWRX Y48+DWo8S/pGuaIan6LvSWUBJaX3giv+NXKZlpE2vrH9pk3/paR0N4BLK1/1h0UkdTF1 /D+zwMk2f3wN/il/sEU4qFGX9n6MUrmvaMM1oOWA69EC83RiU/+7E22qOU+x9m6lQp5F H8Qko0iTEgLtU3l7zNPSx2JuFiHRa5vMymijEuhyvv9PgesGXlAxMqQmLVCc7bjGJuOg gSPw== X-Gm-Message-State: AOAM531NLcUW8VxSU0LywXekcLQaW+BkPRgRKT7UUD+3rExSQ9V6F7uz g3AiNH4WNgiLBXvTCqO3CFYNmeYZopjP6gcWWrNyPt1rREtXug== X-Google-Smtp-Source: ABdhPJwZI/PUxBY23lzDesrkBP+eeXe4XMqdNQvarZSp18mx0JCI4D28f6SuiHdwnDz6zdgYJff+Ss/8DiRKs0XhWRw= X-Received: by 2002:ac8:5c4f:0:b0:2dc:8e84:b0ac with SMTP id j15-20020ac85c4f000000b002dc8e84b0acmr22774982qtj.536.1645543181717; Tue, 22 Feb 2022 07:19:41 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> In-Reply-To: <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Tue, 22 Feb 2022 15:19:29 +0000 Message-ID: <CADF+Rth7ZYNk5vKo8FCkDvP1maFSJkje6h6Fyi+GA_7uVQxsEQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: multipart/alternative; boundary="000000000000cf132205d89ce09f" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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 (-) --000000000000cf132205d89ce09f Content-Type: text/plain; charset="UTF-8" Hi Dmitry, > Do you have a step-by-step scenario? Perhaps using one of the .texi > manuals already existing in the repo? I can't find a good example in the emacs repo, but I'll try to talk through what happens with a code snippet from biblatex.sty, which I hope will explain some of the issues we're discussing, even if it is a little artificial. \DeclareBiblatexOption{global,type}[string]{uniquename}[true]{% \ifcsdef{blx@opt@uniquename@#1} {\letcs\blx@uniquename{blx@opt@uniquename@#1}} {\blx@err@invopt{uniquename=#1}{}}} \def\blx@opt@uniquename@false{false} \def\blx@opt@uniquename@init{init} \def\blx@opt@uniquename@true{full} \def\blx@opt@uniquename@full{full} \def\blx@opt@uniquename@allinit{allinit} \def\blx@opt@uniquename@allfull{allfull} \def\blx@opt@uniquename@mininit{mininit} \def\blx@opt@uniquename@minfull{minfull} If you do M-? on \ifcsdef{blx@opt@uniquename@#1} using the default backend, the default search string is blx@opt@uniquename@, and you'll get two hits, that line and the following one. Stepping through xref-references-in-directory shows that the semantic-symref search (using grep) only finds those two using the :searchtype 'symbol, and they're returned. If you change 'symbol to 'regexp, grep finds all the matches in that code snippet, but then xref--convert-hits uses (format "\\_<%s\\_>"), which again loses all but the first two hits when it scans the list provided by grep. Either grep or emacs here will miss out on valid hits unless you change both the semantic-symref instantiation and the format specification. > One way to deal with that is to treat all user inputs as regexps there. Perhaps some will have to be more verbose that ideal, but as > long as the user is familiar with the regexp syntax, the behavior will be both powerful and predictable If I understand you right, I think that's what I'm trying to do, but allowing for users who perhaps aren't too familiar with emacs regexps and who might typically just accept the default search string offered by xref. > Could those be disambiguated when the tags are scanned, instead? Then the user will tailor their input to find the one or the other. If I understand you correctly, that's also what I try to do -- each tagged command in the tags file is searched by the name of the tag, which in these cases will either start with the escape char or not. Looking at the biblatex snippet, if you come across \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to see what the definition is, you can't know apriori how it was defined, with \def or with \csdef. This snippet above mixes both styles, and I hoped that a user would be allowed to choose whether to search for both styles without necessarily having to try both forms of the string in separate searches. In fact, as the code stands, it only does the second search if the first one fails, so it still more or less keeps the two command-naming styles separate. The simplest fix is to remove the escape char from all tag names, which I suggest to users of ctags in some commented-out code in etags.c. This does lose the ability to differentiate \def'ed commands and \csdef'd ones, especially as in some circumstances they can have the same name. I'm not sure how great a loss that is, on the other hand. Is that what you had in mind? > Or if we want more fuzzier matching, perhaps creating mode-specific values of etags-xref-find-definitions-tag-order could help. Yeah, you're right, I'm pretty sure I could use a buffer-local value of that variable to get xref-find-definitions to do the fuzzy matching I'm after. Does the discussion above at all help to convince you that there are other issues that might still require a new backend? David. --000000000000cf132205d89ce09f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>Hi Dmitry,</div><div><br></div><div>> Do you have = a step-by-step scenario? Perhaps using one of the .texi<br>> manuals alr= eady existing in the repo?<br></div><div><br></div><div>I can't find a = good example in the emacs repo, but I'll try to talk through what happe= ns with a code snippet from biblatex.sty, which I hope will explain some of= the issues we're discussing, even if it is a little artificial.<br></d= iv><div><br>\DeclareBiblatexOption{global,type}[string]{uniquename}[true]{%= <br>=C2=A0 \ifcsdef{blx@opt@uniquename@#1}<br>=C2=A0 =C2=A0 {\letcs\blx@uni= quename{blx@opt@uniquename@#1}}<br>=C2=A0 =C2=A0 {\blx@err@invopt{uniquenam= e=3D#1}{}}}<br>\def\blx@opt@uniquename@false{false}<br>\def\blx@opt@uniquen= ame@init{init}<br>\def\blx@opt@uniquename@true{full}<br>\def\blx@opt@unique= name@full{full}<br>\def\blx@opt@uniquename@allinit{allinit}<br>\def\blx@opt= @uniquename@allfull{allfull}<br>\def\blx@opt@uniquename@mininit{mininit}<br= >\def\blx@opt@uniquename@minfull{minfull}</div><div><br></div><div>If you d= o M-? on \ifcsdef{blx@opt@uniquename@#1} using the default backend, the def= ault search string is blx@opt@uniquename@, and you'll get two hits, tha= t line and the following one.=C2=A0 Stepping through xref-references-in-dir= ectory shows that the semantic-symref search (using grep) only finds those = two using the :searchtype 'symbol, and they're returned.=C2=A0 If y= ou change 'symbol to 'regexp, grep finds all the matches in that co= de snippet, but then xref--convert-hits uses (format "\\_<%s\\_>= "), which again loses all but the first two hits when it scans the lis= t provided by grep.=C2=A0 Either grep or emacs here will miss out on valid = hits unless you change both the semantic-symref instantiation and the forma= t specification.<br></div><div><br></div><div>> One way to deal with tha= t is to treat all user inputs as regexps there. Perhaps some will have to b= e more verbose that ideal, but as=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 > long a= s the user is familiar with the regexp syntax, the behavior will be both po= werful and predictable</div><div><br></div><div>If I understand you right, = I think that's what I'm trying to do, but allowing for users who pe= rhaps aren't too familiar with emacs regexps and who might typically ju= st accept the default search string offered by xref.=C2=A0 <br></div><div><= br></div><div>>=C2=A0 Could those be disambiguated when the tags are sca= nned, instead? Then the user will tailor their input to find the one or the= other.<br></div><div><br></div><div>If I understand you correctly, that= 9;s also what I try to do -- each tagged command in the tags file is search= ed by the name of the tag, which in these cases will either start with the = escape char or not.=C2=A0 Looking at the biblatex snippet, if you come acro= ss \csuse{blx@opt@uniquename@false} somewhere in a file, and you want to se= e what the definition is, you can't know apriori how it was defined, wi= th \def or with \csdef.=C2=A0 This snippet above mixes both styles, and I h= oped that a user would be allowed to choose whether to search for both styl= es without necessarily having to try both forms of the string in separate s= earches.=C2=A0 In fact, as the code stands, it only does the second search = if the first one fails, so it still more or less keeps the two command-nami= ng styles separate.</div><div><br></div><div>The simplest fix is to remove = the escape char from all tag names, which I suggest to users of ctags in so= me commented-out code in etags.c. This does lose the ability to differentia= te \def'ed commands and \csdef'd ones, especially as in some circum= stances they can have the same name.=C2=A0 I'm not sure how great a los= s that is, on the other hand.=C2=A0 Is that what you had in mind?<br></div>= <div><br></div>> Or if we want more fuzzier matching, perhaps creating m= ode-specific values of etags-xref-find-definitions-tag-order could help.<br= ><div><div><br></div><div>Yeah, you're right, I'm pretty sure I cou= ld use a buffer-local value of that variable to get xref-find-definitions t= o do the fuzzy matching I'm after.=C2=A0 Does the discussion above at a= ll help to convince you that there are other issues that might still requir= e a new backend?</div><div><br></div><div>David.<br></div></div></div> --000000000000cf132205d89ce09f--
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 23:56:16 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 18:56:16 2022 Received: from localhost ([127.0.0.1]:39451 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMIXQ-0006RY-Ak for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 18:56:16 -0500 Received: from mail-wr1-f50.google.com ([209.85.221.50]:37488) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <raaahh@HIDDEN>) id 1nMIXO-0006RH-Q6 for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 18:56:15 -0500 Received: by mail-wr1-f50.google.com with SMTP id d28so1922916wra.4 for <53749 <at> debbugs.gnu.org>; Mon, 21 Feb 2022 15:56:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=voa8vLbt/1s1nbhtugRyLqihym+kFeb4bt3qDFoXWKg=; b=HSAfbWP8DISp96/EhXq77Fk3svQtxBGkxW0vaWOdpPKxYQMyc2Rx0Rs5ILtLn9TeWQ EPTs5VDfkRPQxYurNtFxnOzmOh5r2g2PcFczmL2/yrqJ7thUipD9BldKZdMaXyAD5mtd 4AtHV+ub4gXUJTcmycUhiRXE616KDe4V2g8x2ZaAB+byD/YFcOK4P2AQAULuJxtYAM4s guLnaS0hTrBQrE8Sdc/buY2Y5XelOghg+ybJ6GQegwTdAuqiIm0C7c9IZGZbPKxPfIqq qGyELnqSUSrSe7hyAYyTUKBKyoEFWhj9+3+Ui2FPKDaYzUDbACI0NZfAR8OKtpXC9BGl nonw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=voa8vLbt/1s1nbhtugRyLqihym+kFeb4bt3qDFoXWKg=; b=iUTGJk8spuV0BS6RAJujD6xeIUWRm2SnOGMLERzzo+i2gvfpHSnpd0rk4QMnKdq7lW Jv/fuU0RzaBi3eWbGhbbtiGEqKydc7Jp+OknJhTKk22iuFPHmBEFx7R0U45lRGPtlXwL vgmLQGbaTpvRaVHiN/r+oERgORFRvJ6FGCdEsxfTfTgZOSgJMe1+WxrxNdXEsf/7n7Q+ LazJFgQC/INvfagsBgoaGaqsDqo3h+AY/JSXxF820s25MsC1KOmIQWvEo3jzNF6IlZKN ODkXhZN/xN0Gpyt+92ZMFOjEwuWX3O4OnnIZ8rTcfes0r9NQf03aaBDzYybwpxT1c59m aPhw== X-Gm-Message-State: AOAM530MTcVeSLqHUu+5DAwmT9MODrglWk/u7umBV3Dmncy4rcgvg0Hf rg1spvEB8m9VDgUxZ2WhOkU= X-Google-Smtp-Source: ABdhPJzXnFuZYKVsk7ubjkb3rCjvQvTbQ2+/v+1egOCqnZsAPkjZWjYE00McuMqYmm3BxzHJLRthCA== X-Received: by 2002:a5d:5986:0:b0:1ea:75c6:3d0a with SMTP id n6-20020a5d5986000000b001ea75c63d0amr2771442wri.166.1645487769184; Mon, 21 Feb 2022 15:56:09 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id q76sm795098wme.1.2022.02.21.15.56.07 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Feb 2022 15:56:08 -0800 (PST) Message-ID: <2f41ba40-9c3f-ac65-ef0d-300bd11c4867@HIDDEN> Date: Tue, 22 Feb 2022 01:56:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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: -0.5 (/) On 21.02.2022 19:28, David Fussner wrote: > Hi Dmitry, > > I found a bit of time to test, and the problem with "@" in command > names appears when a search string for xref-find-references ends with > "@". The results returned will miss out valid hits, depending on what > follows the "@" in the actual command name in the TeX file. Sorry, I have very little familiarity with TeX. Do you have a step-by-step scenario? Perhaps using one of the .texi manuals already existing in the repo?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 23:55:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 18:55:27 2022 Received: from localhost ([127.0.0.1]:39446 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMIWd-0006Pv-0c for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 18:55:27 -0500 Received: from mail-wr1-f41.google.com ([209.85.221.41]:35429) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <raaahh@HIDDEN>) id 1nMIWb-0006Pi-Nh for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 18:55:26 -0500 Received: by mail-wr1-f41.google.com with SMTP id v12so29726944wrv.2 for <53749 <at> debbugs.gnu.org>; Mon, 21 Feb 2022 15:55:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=B7te4GuvmMyfYys9xDt9q3fBa9U0/nQRVKJFMFpgaJA=; b=ThdX5Vs1+f96p+jUhnaLMHURcGC6BDnHapbsk7OrvZCuwjD1LnzX1G0JJ/xxtgTDaT 4obiYYgKBFuX3+UvASPy/vrqiWQIbkzq71cE8EXI27lp+Bx+3CywJgg/HYzTIAwsWpFF xFtARrjaF5xkoYXgRIJWA6Uj4kFjUwcmYTzFYG/VUdloYb1X+ufBokstMZdoP6OI3RQO kxD+72gxculgR2NCrJBcP3gCHnLn6TZcwKuWQk+KNESRPwrfoTYMvy8X9LVOuBCG5qf+ ySjHGcxhTO68EFoa6PAaQK9qkAgHvz6Jh6dktjRhRC0Cjad9St1gOHNU8rBEDR+k2Iye K3sA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=B7te4GuvmMyfYys9xDt9q3fBa9U0/nQRVKJFMFpgaJA=; b=Q0X2S1D5ipC+DRTD8eX8p0lyVhNcgugQUJ/f76YWROVdsvdTtbw4/WnJLwAygEcI/E h9L2gbamV3VlAJ6x3Kj1yC4OWzlJu2XM22Tjq8nfXCCUFtzR03YsewC3X7C/Dotu6xcj XtjrIiskQI4Sf4PSgWhK0j0V49rzhJ9wA9p+FOSfLvamIb45fm4WqTdz3QZSpE/Nmni9 o2/oWQluZ293YE8jRI7FYNddX/KEMZgFbtYlkAY6HrvofDNVnlGU+5ciubCYx4L9tpz5 fkE5K4kEJOa7HhfLiGo25hwfR2iSVpxzpTgOmvPnoZZoizzI6Z79RXa1mtN4RptRA0Yk F/vw== X-Gm-Message-State: AOAM533FxLWMPKJ177iyF36D7WrcSQl1rym6W5aIKDdLw661Y8d0WqpU nUtH6q9QacdCZ3eNwF+DZ0U= X-Google-Smtp-Source: ABdhPJyK7DNMvOKKQoHFFmTdMfiWUCrT8w6+8oZaIYVjqvdl42rpcPPQb7DVd95Pg373zlUXo+o0xA== X-Received: by 2002:adf:ea4f:0:b0:1e7:447d:2111 with SMTP id j15-20020adfea4f000000b001e7447d2111mr17588933wrn.66.1645487719607; Mon, 21 Feb 2022 15:55:19 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id w18sm34127613wrl.62.2022.02.21.15.55.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Feb 2022 15:55:18 -0800 (PST) Message-ID: <a4262804-f70a-a845-4b1a-fadcbba7444c@HIDDEN> Date: Tue, 22 Feb 2022 01:55:17 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN> References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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: -0.5 (/) On 21.02.2022 11:48, David Fussner wrote: > Sometimes using a search string > that had been put through regexp-quote was wrong, as when a user > provided their own regexp in the minibuffer, so in both those cases I > provided fallbacks to a different search in case the default search > came up empty. I couldn't see how to do this without a new backend. One way to deal with that is to treat all user inputs as regexps there. Perhaps some will have to be more verbose that ideal, but as long as the user is familiar with the regexp syntax, the behavior will be both powerful and predictable. > 2. A package like biblatex creates what amounts to a separate > namespace using the \newbibmacro mechanism, so pretty much every > biblatex style has both a \cite command and a cite bibmacro, and I > wanted to allow emacs to differentiate between them when using > xref-find-definitions. Because users of the etoolbox package (like > biblatex) may well mix commands with and without the escape char "\", > I also provided a variable to allow users to find when a \command is > called using \csuse{command} instead. Again, this required a fallback > search (see xref-backend-definitions) which I couldn't see how to > provide without a new backend. Could those be be disambiguated when the tags are scanned, instead? Then the user will tailor their input to find the one or the other. Or if we want more fuzzier matching, perhaps creating mode-specific values of etags-xref-find-definitions-tag-order could help.
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 17:28:53 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 12:28:53 2022 Received: from localhost ([127.0.0.1]:38889 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nMCUW-00044u-MC for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 12:28:53 -0500 Received: from mail-qk1-f182.google.com ([209.85.222.182]:36834) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nMCUV-00044j-8h for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 12:28:51 -0500 Received: by mail-qk1-f182.google.com with SMTP id g24so17621680qkl.3 for <53749 <at> debbugs.gnu.org>; Mon, 21 Feb 2022 09:28:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BCBkOuF/XYtWwt5r1aCpOf2Q0hFDUAio+xUcfMIxueM=; b=pqZ8Ks7PTPJXJcnVCbGzUaTf8T+NYXYca530XnLhMQPo3wtic9XfeXjvF7MMzmCBEZ QaZTcZnQlJfr6g4UF3FFfhmVjkBBS0XeP3To0LmEcoyCZHfQoANw6EVOs6FGiKLFg4oV /hBH9JQVu5N7a4qTQtWIGEjqsMA/aMv2cP9h0Ya5YDhs+0NwnH1Q6qdhInpfvZkEu35C FQnheptHqjMtTFzIR3PoVFvTjYlxLtZ5ucSjnd/JjtOOZo4HfhUW6LV8pLdRLOzhzQ04 7VApmmWXQr66c/OqPZLUpiLffpyAEdcZPV3HhMlkGDKnxEiz7NIUJfApeCkLlLtxh7RV MaAA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BCBkOuF/XYtWwt5r1aCpOf2Q0hFDUAio+xUcfMIxueM=; b=KLxGn2g2KZHuT+uix7aRh4DpFRefAze0AXBsu8vMF2rSjd2frxOTjWpN5OrK0XxGMt 0B4iu1hjgac/iHTmZHNt/OdQe+66Tn8DyET/IIE9tMjLtoee+TrUW8KhFKGkgJZtwZ+4 qp+h887njnFwC3OmljgU9pdTFCp4daVK0quNYqj7ZGfkaBAcU7M9YUfcH24zs29YvTvd 8mRpEusG/mPiCGgkfJDKeTrD/lFQBBzJl0WSwycxH3owvq2X21ldy2tCNc8SezuIy69W Xm76mwr7PBLa9+wj81c0KIaho98qqXRwuJdcgjiPT5uOsb4UhZdwgHgDxewBWMU9o6gA qNxw== X-Gm-Message-State: AOAM532hYy3TgkCp7am54D3Arl0HHFGU8aOEN6ct46SIGKyE1/XyVpLt paBB9X5fIPFj5UmdTCRonpIULsu08ueiV4xjtVA= X-Google-Smtp-Source: ABdhPJwVP7clZeBYCb50fHFvHEzIjmyckuv0OYccVW97cztK1zc/P22+/bG1p77yhGjTV2xSfrL7eiBsDtUgIN5O+Uk= X-Received: by 2002:a37:4147:0:b0:47c:4595:b8c with SMTP id o68-20020a374147000000b0047c45950b8cmr12878581qka.267.1645464525701; Mon, 21 Feb 2022 09:28:45 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> In-Reply-To: <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 21 Feb 2022 17:28:32 +0000 Message-ID: <CADF+Rtho+2qOpGB6hn-Cpyx4qrUJd9c3+wAxsGtySi75pxzbsQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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 (-) Hi Dmitry, I found a bit of time to test, and the problem with "@" in command names appears when a search string for xref-find-references ends with "@". The results returned will miss out valid hits, depending on what follows the "@" in the actual command name in the TeX file. Hope this might help, David. On Mon, 21 Feb 2022 at 09:48, David Fussner <dfussner@HIDDEN> wrote: > > (Resending to include the mailing list -- sorry!) > > Hi Dmitry, > > Many thanks for looking into this. > > > > > So if your main goal was to alter which string gets searched for (based > > on text around point), you can define a function which returns the > > necessary string (as you did in the patch) and then either set > > 'find-tag-default-function' to that function, or put it on the > > 'find-tag-default-function' property for the respective major mode > > functions. > > > > > There are many other behaviors that are suboptimal, as well, so in the > > > end I wrote a new xref backend for TeX buffers (cloning large portions > > > of the default etags backend), and wondered whether it might be welcome > > > in GNU Emacs. > > > > Could you point out the other changes which were required? > > As you've noticed, I tried at first to get by without a new backend, > but I ran into a few issues that I couldn't solve that way, hence the > current patch. A couple of examples: > > 1. TeX is very generous with the characters it includes in its > symbols, so what looks like a standard symbol to it can look like a > regexp either to grep or to emacs, so I needed to changes things in > xref-find-apropos and in xref-find-references to take this into > account. (See tex-xref-apropos-regexp and > tex-xref-references-in-directory.) Sometimes using a search string > that had been put through regexp-quote was wrong, as when a user > provided their own regexp in the minibuffer, so in both those cases I > provided fallbacks to a different search in case the default search > came up empty. I couldn't see how to do this without a new backend. > > 2. A package like biblatex creates what amounts to a separate > namespace using the \newbibmacro mechanism, so pretty much every > biblatex style has both a \cite command and a cite bibmacro, and I > wanted to allow emacs to differentiate between them when using > xref-find-definitions. Because users of the etoolbox package (like > biblatex) may well mix commands with and without the escape char "\", > I also provided a variable to allow users to find when a \command is > called using \csuse{command} instead. Again, this required a fallback > search (see xref-backend-definitions) which I couldn't see how to > provide without a new backend. > > Does this make any sense? I can give more specific examples if you > like -- try running xref-find-references on a TeX command with "@" in > it. (If memory serves, that behaved badly here on an unpatched emacs, > but maybe I'm misremembering.) > > David. > > On Mon, 21 Feb 2022 at 02:11, Dmitry Gutov <dgutov@HIDDEN> wrote: > > > > Hi! > > > > Let us first discuss whether we could make do without an additional Xref > > backend. Just to make sure. > > > > On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the > > Swiss army knife of text editors wrote: > > > Similarly, any xref command on 'my:citekey' will only search by default > > > for the half of the symbol under point, stopping at the colon. > > > > etags's implementation of 'xref-backend-identifier-at-point' calls > > 'find-tag--default', which consults 'find-tag-default-function' and > > (get major-mode 'find-tag-default-function). > > > > So if your main goal was to alter which string gets searched for (based > > on text around point), you can define a function which returns the > > necessary string (as you did in the patch) and then either set > > 'find-tag-default-function' to that function, or put it on the > > 'find-tag-default-function' property for the respective major mode > > functions. > > > > > There are many other behaviors that are suboptimal, as well, so in the > > > end I wrote a new xref backend for TeX buffers (cloning large portions > > > of the default etags backend), and wondered whether it might be welcome > > > in GNU Emacs. > > > > Could you point out the other changes which were required?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 14:04:20 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 09:04:20 2022 Received: from localhost ([127.0.0.1]:35501 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nM9IZ-00033K-QD for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 09:04:20 -0500 Received: from mail-qv1-f43.google.com ([209.85.219.43]:45785) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nM9IX-00032w-9X for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 09:04:18 -0500 Received: by mail-qv1-f43.google.com with SMTP id c14so32255917qvl.12 for <53749 <at> debbugs.gnu.org>; Mon, 21 Feb 2022 06:04:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=p7Blm+hLznAjpaQuxIgRD/WNwzk5CLgLebBhVB7FjPXxqKxRIqJw1rmKjk8QFPU8FZ LjgKIgduXEOVHDcPcf/qh3NY6VGqNI07/TZDfJaVI4PpsgJktZXc5XiTAyCoGc9rHzHh zYJ2Pc7apUhYCeDGCLbslQo94xgTRkM5LJ8TlYSiomwV4H6lVCPhW7+cijvIMyncJjzr btYzK00jehPTuNkwN3Mo0QkfqMNSPoJTeDDQut9OwLwIXUoVCdPszwcxubK4EHZz7P5g ttyursOkQR2SVddtEWI+S9Gi0R0cSRbjyXEfrQDnrc+UNs/VwGLs0Wg0RXddjMFGPJVp lhTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=C71xhIm4y5c58lldw449/Wahoo9TWHIECT7kO3ZtoavlEkR9s+xcAGrcZAiZnyDZac SPMB+YwJcxGKFr7gJBlhPyvHKHdZ+X6AqN5j8xoJF1hZ9QNg6Xf82gJKHBus/eBbuzah D7mQKGEa/+fYkTT/fPCsQDBMRmzUJc/NsG4JUr1mETUrNP7orsNdcXgKZn8WBFTJyMpu JQDry1d/W82QQsvZnkV0WmFpSEg1FbW1MG5fqbUl0AeSk2//D+dYpHTWjJQGmq8dF0i9 fRsQwAwRboOPUwpuNvMfNbAVA3pbSbF6ibIiLzRn7OkCuZSMv8mCyjwpxoeQYLYF5Fsu aBrg== X-Gm-Message-State: AOAM533HVT9Kst0vuW9qyPeGKig+qjWjUMkGZml4/VB7RQahQqBlFlX7 uOMKkvyRXp2QrCUmgtmsxi155AK4xaD/RkHL3JyydkDypVKVxw== X-Google-Smtp-Source: ABdhPJwvEznhZTsE6flTKk4Qk/5+X7NU+Srv3exT6qGoXZsdE3Ge1fDd4rm5Y2Vh3ccncvZ8Z40uAq03JOpSg+KjBvc= X-Received: by 2002:a05:622a:64b:b0:2cf:1716:2344 with SMTP id a11-20020a05622a064b00b002cf17162344mr18167334qtb.635.1645452251686; Mon, 21 Feb 2022 06:04:11 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <86ilt84ct3.fsf@HIDDEN> In-Reply-To: <86ilt84ct3.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 21 Feb 2022 14:03:59 +0000 Message-ID: <CADF+Rtisx9fMC8eGLdXZ+YVfycXgNOkyX59cROjmxNj7hTeQTw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (-) Hi Arash, Thank you for the list! I had fully intended to add the new LaTeX 3 commands but managed somehow to forget. If you see anything else I've omitted please let me know. David. On Mon, 21 Feb 2022 at 12:36, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of > text editors" <bug-gnu-emacs@HIDDEN> writes: > > > diff --git a/lib-src/etags.c b/lib-src/etags.c > > index aa5bc8839d..e5269aa456 100644 > > --- a/lib-src/etags.c > > +++ b/lib-src/etags.c > > [...] > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2021) Add variants of '\def', some additional LaTeX commands, > > + and common variants from the 'etoolbox' package. Also, add > > + starred variants of the commands if they exist. Starred > > + variants need to appear before their unstarred versions. */ > > static const char *TEX_defenv = "\ > > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > > -:part:appendix:entry:index:def\ > > -:newcommand:renewcommand:newenvironment:renewenvironment"; > > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; > > Hi David, > > thanks for looking into this. While you're at it, can you also please > add support for the former xparse \newcommand variants which are now > (now is October 2020) part of LaTeX kernel, namely: > > \NewDocumentCommand > \RenewDocumentCommand > \ProvideDocumentCommand > \DeclareDocumentCommand > \NewDocumentEnvironment > \RenewDocumentEnvironment > \ProvideDocumentEnvironment > \DeclareDocumentEnvironment > \NewExpandableDocumentCommand > \RenewExpandableDocumentCommand > \ProvideExpandableDocumentCommand > \DeclareExpandableDocumentCommand > > TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 21 Feb 2022 14:04:19 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 09:04:19 2022 Received: from localhost ([127.0.0.1]:35499 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nM9IZ-00033I-Ft for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 09:04:19 -0500 Received: from lists.gnu.org ([209.51.188.17]:44104) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nM9IX-000333-B9 for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 09:04:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49238) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nM9IX-00064B-06 for bug-gnu-emacs@HIDDEN; Mon, 21 Feb 2022 09:04:17 -0500 Received: from [2607:f8b0:4864:20::f31] (port=46746 helo=mail-qv1-xf31.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nM9IU-00069q-U7; Mon, 21 Feb 2022 09:04:16 -0500 Received: by mail-qv1-xf31.google.com with SMTP id n6so32215638qvk.13; Mon, 21 Feb 2022 06:04:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=p7Blm+hLznAjpaQuxIgRD/WNwzk5CLgLebBhVB7FjPXxqKxRIqJw1rmKjk8QFPU8FZ LjgKIgduXEOVHDcPcf/qh3NY6VGqNI07/TZDfJaVI4PpsgJktZXc5XiTAyCoGc9rHzHh zYJ2Pc7apUhYCeDGCLbslQo94xgTRkM5LJ8TlYSiomwV4H6lVCPhW7+cijvIMyncJjzr btYzK00jehPTuNkwN3Mo0QkfqMNSPoJTeDDQut9OwLwIXUoVCdPszwcxubK4EHZz7P5g ttyursOkQR2SVddtEWI+S9Gi0R0cSRbjyXEfrQDnrc+UNs/VwGLs0Wg0RXddjMFGPJVp lhTg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=tbA+9gMpO2xrFfW5c0c6cehf9bQbx7IHqA53ka/w0MQ=; b=cUzU+h/SCdTX7j6918X/bR90H4pF4N8Ss7bFo2AWlvVZy7vxd3Kj40aSKB17SCQb81 q3gX6DrPFwCWrKpBHP0xYcv0YWX+uXLICHcFGaVPF/3J3+fUdNOxlJAoeKemPgXCmUZ2 74gRnWV2wMmXJjGzsE0EjVRLOKiJo7YRgWMq08BsRgmh9iDlACl99uZfVDpM6TYYCudF +edDblR5POnlVV8YD0An/6NZ49l4sEFJlzHJEWtGbLW+5mSLnxsJXuSJp3pQ7jFNxrjt ga/2Y+MtG/yVep+CffLmV5GOB6CQuB3iw4eXwa7p3HhrXQ7caaNs9gb/p4U/sIZq+9V4 jP+g== X-Gm-Message-State: AOAM533YqJz/vGxTwrEeAOGiGXwwwVdBk3q4vfesq0XjO64tqsOhpGzv KxQsojAiS137UmoNdvN2PFtGata5zNzE2iTv49WU0hIAbaLv8w== X-Google-Smtp-Source: ABdhPJwvEznhZTsE6flTKk4Qk/5+X7NU+Srv3exT6qGoXZsdE3Ge1fDd4rm5Y2Vh3ccncvZ8Z40uAq03JOpSg+KjBvc= X-Received: by 2002:a05:622a:64b:b0:2cf:1716:2344 with SMTP id a11-20020a05622a064b00b002cf17162344mr18167334qtb.635.1645452251686; Mon, 21 Feb 2022 06:04:11 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <86ilt84ct3.fsf@HIDDEN> In-Reply-To: <86ilt84ct3.fsf@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 21 Feb 2022 14:03:59 +0000 Message-ID: <CADF+Rtisx9fMC8eGLdXZ+YVfycXgNOkyX59cROjmxNj7hTeQTw@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Arash Esbati <arash@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::f31 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::f31; envelope-from=dfussner@HIDDEN; helo=mail-qv1-xf31.google.com X-Spam_score_int: -6 X-Spam_score: -0.7 X-Spam_bar: / X-Spam_report: (-0.7 / 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, PDS_HP_HELO_NORDNS=0.659, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 53749 <at> debbugs.gnu.org, "David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> 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 (--) Hi Arash, Thank you for the list! I had fully intended to add the new LaTeX 3 commands but managed somehow to forget. If you see anything else I've omitted please let me know. David. On Mon, 21 Feb 2022 at 12:36, Arash Esbati <arash@HIDDEN> wrote: > > David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of > text editors" <bug-gnu-emacs@HIDDEN> writes: > > > diff --git a/lib-src/etags.c b/lib-src/etags.c > > index aa5bc8839d..e5269aa456 100644 > > --- a/lib-src/etags.c > > +++ b/lib-src/etags.c > > [...] > > /* Default set of control sequences to put into TEX_toktab. > > - The value of environment var TEXTAGS is prepended to this. */ > > + The value of environment var TEXTAGS is prepended to this. > > + (2021) Add variants of '\def', some additional LaTeX commands, > > + and common variants from the 'etoolbox' package. Also, add > > + starred variants of the commands if they exist. Starred > > + variants need to appear before their unstarred versions. */ > > static const char *TEX_defenv = "\ > > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > > -:part:appendix:entry:index:def\ > > -:newcommand:renewcommand:newenvironment:renewenvironment"; > > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; > > Hi David, > > thanks for looking into this. While you're at it, can you also please > add support for the former xparse \newcommand variants which are now > (now is October 2020) part of LaTeX kernel, namely: > > \NewDocumentCommand > \RenewDocumentCommand > \ProvideDocumentCommand > \DeclareDocumentCommand > \NewDocumentEnvironment > \RenewDocumentEnvironment > \ProvideDocumentEnvironment > \DeclareDocumentEnvironment > \NewExpandableDocumentCommand > \RenewExpandableDocumentCommand > \ProvideExpandableDocumentCommand > \DeclareExpandableDocumentCommand > > TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 12:37:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 07:37:04 2022 Received: from localhost ([127.0.0.1]:35294 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nM7w8-0006vy-8c for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 07:37:04 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51370) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1nM7w7-0006vU-2S for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 07:37:03 -0500 Received: from [2001:470:142:3::e] (port=50428 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nM7vn-0007PT-1W; Mon, 21 Feb 2022 07:36:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=mhuH+1DmCdoPLs2LlDHYFblYBIPzmkoyWqL8A2mLlYo=; b=OnbUAqKybC4ZIqAes/xG fdwQpXCC9T7doK5tukrgO6JOB0YWWafaIfVu2Wqn28DZhmfZhfKV3BTkd5HA8a3AuhnnYV8Yqw4w3 PVAZUoDSvggUAQFt0xZ7+0berunKQdmrH3zv0CGySKABsAUiFczwPew4LxQHNnxhxhxKG8kfQEw/Y er/7BLV+th65kAQ0utjuEfRZQgmrw/mvKxtJO8UEyKTe+M82wwowmtDcJKfw4Eor6f7/ZVCCjIBtv RkMbc9Dn3AgYvbmVfHydqiN9rBQanLwa5YmzqKclbYKsRTjUzCoN7zNGEesZQGqzQNkH2wZrUtkFH jXgeJemn/3bYEA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:59830 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nM7vl-0004Zi-32; Mon, 21 Feb 2022 07:36:42 -0500 From: Arash Esbati <arash@HIDDEN> To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Date: Mon, 21 Feb 2022 13:35:52 +0100 In-Reply-To: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <86ilt84ct3.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 53749 Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (---) David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: > diff --git a/lib-src/etags.c b/lib-src/etags.c > index aa5bc8839d..e5269aa456 100644 > --- a/lib-src/etags.c > +++ b/lib-src/etags.c > [...] > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2021) Add variants of '\def', some additional LaTeX commands, > + and common variants from the 'etoolbox' package. Also, add > + starred variants of the commands if they exist. Starred > + variants need to appear before their unstarred versions. */ > static const char *TEX_defenv = "\ > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > -:part:appendix:entry:index:def\ > -:newcommand:renewcommand:newenvironment:renewenvironment"; > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; Hi David, thanks for looking into this. While you're at it, can you also please add support for the former xparse \newcommand variants which are now (now is October 2020) part of LaTeX kernel, namely: \NewDocumentCommand \RenewDocumentCommand \ProvideDocumentCommand \DeclareDocumentCommand \NewDocumentEnvironment \RenewDocumentEnvironment \ProvideDocumentEnvironment \DeclareDocumentEnvironment \NewExpandableDocumentCommand \RenewExpandableDocumentCommand \ProvideExpandableDocumentCommand \DeclareExpandableDocumentCommand TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 21 Feb 2022 12:37:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 07:37:14 2022 Received: from localhost ([127.0.0.1]:35298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nM7wI-0006wK-Hp for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 07:37:14 -0500 Received: from lists.gnu.org ([209.51.188.17]:44054) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1nM7w9-0006w6-Lx for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 07:37:05 -0500 Received: from eggs.gnu.org ([209.51.188.92]:58042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nM7w2-0002fv-4K for bug-gnu-emacs@HIDDEN; Mon, 21 Feb 2022 07:37:03 -0500 Received: from [2001:470:142:3::e] (port=50428 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nM7vn-0007PT-1W; Mon, 21 Feb 2022 07:36:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=mhuH+1DmCdoPLs2LlDHYFblYBIPzmkoyWqL8A2mLlYo=; b=OnbUAqKybC4ZIqAes/xG fdwQpXCC9T7doK5tukrgO6JOB0YWWafaIfVu2Wqn28DZhmfZhfKV3BTkd5HA8a3AuhnnYV8Yqw4w3 PVAZUoDSvggUAQFt0xZ7+0berunKQdmrH3zv0CGySKABsAUiFczwPew4LxQHNnxhxhxKG8kfQEw/Y er/7BLV+th65kAQ0utjuEfRZQgmrw/mvKxtJO8UEyKTe+M82wwowmtDcJKfw4Eor6f7/ZVCCjIBtv RkMbc9Dn3AgYvbmVfHydqiN9rBQanLwa5YmzqKclbYKsRTjUzCoN7zNGEesZQGqzQNkH2wZrUtkFH jXgeJemn/3bYEA==; Received: from p5b326363.dip0.t-ipconnect.de ([91.50.99.99]:59830 helo=MUTANT) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <arash@HIDDEN>) id 1nM7vl-0004Zi-32; Mon, 21 Feb 2022 07:36:42 -0500 From: Arash Esbati <arash@HIDDEN> To: David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Date: Mon, 21 Feb 2022 13:35:52 +0100 In-Reply-To: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> (David Fussner via's message of "Thu, 3 Feb 2022 15:09:22 +0000") Message-ID: <86ilt84ct3.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: submit Cc: 53749 <at> debbugs.gnu.org, David Fussner <dfussner@HIDDEN> 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 (---) David Fussner via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: > diff --git a/lib-src/etags.c b/lib-src/etags.c > index aa5bc8839d..e5269aa456 100644 > --- a/lib-src/etags.c > +++ b/lib-src/etags.c > [...] > /* Default set of control sequences to put into TEX_toktab. > - The value of environment var TEXTAGS is prepended to this. */ > + The value of environment var TEXTAGS is prepended to this. > + (2021) Add variants of '\def', some additional LaTeX commands, > + and common variants from the 'etoolbox' package. Also, add > + starred variants of the commands if they exist. Starred > + variants need to appear before their unstarred versions. */ > static const char *TEX_defenv = "\ > -:chapter:section:subsection:subsubsection:eqno:label:ref:cite:bibitem\ > -:part:appendix:entry:index:def\ > -:newcommand:renewcommand:newenvironment:renewenvironment"; > +:chapter*:section*:subsection*:subsubsection*:part*:label:ref\ > +:chapter:section:subsection:subsubsection:eqno:cite:bibitem\ > +:part:appendix:entry:index:def:edef:gdef:xdef:newcommand*:newcommand\ > +:renewcommand*:renewcommand:newenvironment*:newenvironment\ > +:renewenvironment*:renewenvironment:DeclareRobustCommand*\ > +:DeclareRobustCommand:renewrobustcmd*:renewrobustcmd:newrobustcmd*\ > +:newrobustcmd:let:csdef:csedef:csgdef:csxdef:csletcs:cslet"; Hi David, thanks for looking into this. While you're at it, can you also please add support for the former xparse \newcommand variants which are now (now is October 2020) part of LaTeX kernel, namely: \NewDocumentCommand \RenewDocumentCommand \ProvideDocumentCommand \DeclareDocumentCommand \NewDocumentEnvironment \RenewDocumentEnvironment \ProvideDocumentEnvironment \DeclareDocumentEnvironment \NewExpandableDocumentCommand \RenewExpandableDocumentCommand \ProvideExpandableDocumentCommand \DeclareExpandableDocumentCommand TIA. Best, Arash
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 09:48:50 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 21 04:48:50 2022 Received: from localhost ([127.0.0.1]:35082 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nM5JK-0004I5-5o for submit <at> debbugs.gnu.org; Mon, 21 Feb 2022 04:48:50 -0500 Received: from mail-qv1-f53.google.com ([209.85.219.53]:46035) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nM5JI-0004Hl-Be for 53749 <at> debbugs.gnu.org; Mon, 21 Feb 2022 04:48:48 -0500 Received: by mail-qv1-f53.google.com with SMTP id c14so30666733qvl.12 for <53749 <at> debbugs.gnu.org>; Mon, 21 Feb 2022 01:48:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=I2hDIlzhuQa9wnxxeda3KakJlY/Clx5R1MusA5yU4R4=; b=MWBIoAm3edGHHgO/IgOxHeU1eQyGX4M7BGzcjwD4YYhxb/LjNt5LWSFmDUk69Y8sQJ EeFTZ+auiSzU7X1SHF70OVSpah9f+TKwfjUKd/ASgse3sVxMJDWTW6FIHZpZhFyGYxCD 0nijgeL8gkLWiCRd36mMUKEEWN4LeGUElInEn/4At0/ulugXl8hU46Yxjt+nhtrhW5A+ xufMDazRVgboYbtyRYzgnfbCLgpyk60C2IhRE2ed+x5Vr+oxwMo6/RP5nkgeLpPQtg79 9cXKMzLubcG9Wyu66lVPKOH36Me9QEdQnPt4PMOxPkWDbc2Ak52KCy+1Qu+8YMizHt+6 CSXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=I2hDIlzhuQa9wnxxeda3KakJlY/Clx5R1MusA5yU4R4=; b=WJXaVtdE8syCv6zjdu2TmFxo43fbcJlVlBsGPBWLIBndhHlhRxd7GKihSDsgDJd/N/ WNpsdnqR9WDAtnE6AXcfG82q/APkx4O5QFtpFdsTdtKChaui6sjgqhFZ/valFCrj5TB1 IGn4FWjRkTic40tI9vFaUYmepa4+lROAnAsCE2XRwVZYzLtYrg4bC5e6xgOCT+XJ7Bzl KZZqw7OOZ5VchG1gMSBUQq0k6pJ8Bji9Mg8vxEGFw1VCr9FjjzCwSaaS4oHPrWMRklmV TnJMIXggUA6qe6c2zmL+phXYwya87KZdTHSYUseY6Mkv+/CPnyd2cNvQLy0DJizqa2co hgvw== X-Gm-Message-State: AOAM532PSM/HSM1NIfmLGmUWNnKAZKWA1n3r6mn0jrl7buJWmM3qWlEh vn2csasdGxJfqUPRIEvuv81gtiZiHyx6XDOPOx0YtyRRL5m+Zg== X-Google-Smtp-Source: ABdhPJy05b+mq+hgv21tkaFsmTC7wxpcWy3TGrDZtbJ3TXr2hgPaWgCIg6dV/via3YEQ3VM0aW4mqLMJ7iHW6SE5RuE= X-Received: by 2002:a05:622a:1a16:b0:2de:37ad:25ef with SMTP id f22-20020a05622a1a1600b002de37ad25efmr1047861qtb.131.1645436922612; Mon, 21 Feb 2022 01:48:42 -0800 (PST) MIME-Version: 1.0 References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> In-Reply-To: <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> From: David Fussner <dfussner@HIDDEN> Date: Mon, 21 Feb 2022 09:48:30 +0000 Message-ID: <CADF+RthLfZVgu72wnPXf2=w-gnKZT+4eWR_kmDVMnFvBY8f1XQ@HIDDEN> Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers To: Dmitry Gutov <dgutov@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 53749 Cc: 53749 <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 (-) (Resending to include the mailing list -- sorry!) Hi Dmitry, Many thanks for looking into this. > > So if your main goal was to alter which string gets searched for (based > on text around point), you can define a function which returns the > necessary string (as you did in the patch) and then either set > 'find-tag-default-function' to that function, or put it on the > 'find-tag-default-function' property for the respective major mode > functions. > > > There are many other behaviors that are suboptimal, as well, so in the > > end I wrote a new xref backend for TeX buffers (cloning large portions > > of the default etags backend), and wondered whether it might be welcome > > in GNU Emacs. > > Could you point out the other changes which were required? As you've noticed, I tried at first to get by without a new backend, but I ran into a few issues that I couldn't solve that way, hence the current patch. A couple of examples: 1. TeX is very generous with the characters it includes in its symbols, so what looks like a standard symbol to it can look like a regexp either to grep or to emacs, so I needed to changes things in xref-find-apropos and in xref-find-references to take this into account. (See tex-xref-apropos-regexp and tex-xref-references-in-directory.) Sometimes using a search string that had been put through regexp-quote was wrong, as when a user provided their own regexp in the minibuffer, so in both those cases I provided fallbacks to a different search in case the default search came up empty. I couldn't see how to do this without a new backend. 2. A package like biblatex creates what amounts to a separate namespace using the \newbibmacro mechanism, so pretty much every biblatex style has both a \cite command and a cite bibmacro, and I wanted to allow emacs to differentiate between them when using xref-find-definitions. Because users of the etoolbox package (like biblatex) may well mix commands with and without the escape char "\", I also provided a variable to allow users to find when a \command is called using \csuse{command} instead. Again, this required a fallback search (see xref-backend-definitions) which I couldn't see how to provide without a new backend. Does this make any sense? I can give more specific examples if you like -- try running xref-find-references on a TeX command with "@" in it. (If memory serves, that behaved badly here on an unpatched emacs, but maybe I'm misremembering.) David. On Mon, 21 Feb 2022 at 02:11, Dmitry Gutov <dgutov@HIDDEN> wrote: > > Hi! > > Let us first discuss whether we could make do without an additional Xref > backend. Just to make sure. > > On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the > Swiss army knife of text editors wrote: > > Similarly, any xref command on 'my:citekey' will only search by default > > for the half of the symbol under point, stopping at the colon. > > etags's implementation of 'xref-backend-identifier-at-point' calls > 'find-tag--default', which consults 'find-tag-default-function' and > (get major-mode 'find-tag-default-function). > > So if your main goal was to alter which string gets searched for (based > on text around point), you can define a function which returns the > necessary string (as you did in the patch) and then either set > 'find-tag-default-function' to that function, or put it on the > 'find-tag-default-function' property for the respective major mode > functions. > > > There are many other behaviors that are suboptimal, as well, so in the > > end I wrote a new xref backend for TeX buffers (cloning large portions > > of the default etags backend), and wondered whether it might be welcome > > in GNU Emacs. > > Could you point out the other changes which were required?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at 53749) by debbugs.gnu.org; 21 Feb 2022 02:11:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 20 21:11:42 2022 Received: from localhost ([127.0.0.1]:34310 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nLyAw-0001yg-P5 for submit <at> debbugs.gnu.org; Sun, 20 Feb 2022 21:11:42 -0500 Received: from mail-wm1-f48.google.com ([209.85.128.48]:43888) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <raaahh@HIDDEN>) id 1nLyAv-0001yU-CS for 53749 <at> debbugs.gnu.org; Sun, 20 Feb 2022 21:11:41 -0500 Received: by mail-wm1-f48.google.com with SMTP id x3-20020a05600c21c300b0037c01ad715bso10261130wmj.2 for <53749 <at> debbugs.gnu.org>; Sun, 20 Feb 2022 18:11:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:message-id:date:mime-version:user-agent:subject :content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=DgZf9jHyWjNoewxfGO8CZz72EJPzszfr9FsbqI51VII=; b=p0lljqaf8qHHTc8ZZ/cdlZnFAfcQyO30O4whgzKjVUxZddYuxIpd6kOgXPLVLYAH0m MojvrQ6eY8vTp+NgCqbZNTRGaY5w1t+Wvox9/XC8YINCdx3QNfDxYx4BNwPpArMohNXr guAQ+QWOE6pp4fVasRWB9TRaBw2E+SVZbUL7WVZOgaCI0WgJXeqRlgFGHEWEKtNGeaNj oJ2T3Anj7BFz/eE4RmuPjbai6aGl2ld6stF9gGkiXCcoNeXkF7dBZYkkXutnzrdxw6M2 K/90uH/0fVAFogRN1fzTfJyhzQj8/fO4+AIM66XGHFzWwgJJl5NW6chZEQ910dEBT9dy 5nDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:message-id:date:mime-version:user-agent :subject:content-language:to:references:from:in-reply-to :content-transfer-encoding; bh=DgZf9jHyWjNoewxfGO8CZz72EJPzszfr9FsbqI51VII=; b=CgWWTnveP6tzzTkHSNK9gsRbuccn/NY37Fh3zKvy6XnxVCHYBVIdysMOVA7SWIqF8l 9fN4QRPYmYoRpVqfN/vHuC6FKDEwFDoRu56gbcn2uLcctr2LCMKjHUIEF/ZriK8mgbXV jh/eP4pxtifxzQkE5ZuDdE6iJv9785juPDlHwnWyihzymVU3UANN3cVNqo2rlVRy9lEk wCG88KzzgJoFpVqo0VQrAimByS/kngXju4KVUBJQG40vBdQQjrX3uj5XnzxAfhZONhLA CWC/Xaa3Tash2KhxScCFg0FwI4agjevgPgYhMoBJGftJjZhnl78VdiLQ1XqRxDcgZkOP cvTA== X-Gm-Message-State: AOAM533U+zaX4OBGgcARIZFysbmLD9lV+PGYXprsyoWnlbEc/D0HU523 zvLZ1LWB2Gce7LJL0hSECIA= X-Google-Smtp-Source: ABdhPJySwqqMKFcr7Ef26Hsvk2kt6+/ilR/5UYkTs+o2U/d6HKl9mIqDY8j/r+oWHolYIMVJnzK3sQ== X-Received: by 2002:a05:600c:1d28:b0:37c:a9d:d39f with SMTP id l40-20020a05600c1d2800b0037c0a9dd39fmr15930073wms.172.1645409495378; Sun, 20 Feb 2022 18:11:35 -0800 (PST) Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id e4sm28225666wrp.25.2022.02.20.18.11.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 20 Feb 2022 18:11:35 -0800 (PST) Message-ID: <1de34060-e93b-0a42-fff5-20e283abe0dc@HIDDEN> Date: Mon, 21 Feb 2022 04:11:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: bug#53749: 29.0.50; [PATCH] Xref backend for TeX buffers Content-Language: en-US To: David Fussner <dfussner@HIDDEN>, 53749 <at> debbugs.gnu.org References: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> From: Dmitry Gutov <dgutov@HIDDEN> In-Reply-To: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.5 (/) X-Debbugs-Envelope-To: 53749 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: -0.5 (/) Hi! Let us first discuss whether we could make do without an additional Xref backend. Just to make sure. On 03.02.2022 17:09, David Fussner via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Similarly, any xref command on 'my:citekey' will only search by default > for the half of the symbol under point, stopping at the colon. etags's implementation of 'xref-backend-identifier-at-point' calls 'find-tag--default', which consults 'find-tag-default-function' and (get major-mode 'find-tag-default-function). So if your main goal was to alter which string gets searched for (based on text around point), you can define a function which returns the necessary string (as you did in the patch) and then either set 'find-tag-default-function' to that function, or put it on the 'find-tag-default-function' property for the respective major mode functions. > There are many other behaviors that are suboptimal, as well, so in the > end I wrote a new xref backend for TeX buffers (cloning large portions > of the default etags backend), and wondered whether it might be welcome > in GNU Emacs. Could you point out the other changes which were required?
bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 3 Feb 2022 15:09:52 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 03 10:09:52 2022 Received: from localhost ([127.0.0.1]:57397 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1nFdk7-0004gF-99 for submit <at> debbugs.gnu.org; Thu, 03 Feb 2022 10:09:52 -0500 Received: from lists.gnu.org ([209.51.188.17]:35482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <dfussner@HIDDEN>) id 1nFdk5-0004g6-4w for submit <at> debbugs.gnu.org; Thu, 03 Feb 2022 10:09:50 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45818) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nFdk2-0000BS-QL for bug-gnu-emacs@HIDDEN; Thu, 03 Feb 2022 10:09:47 -0500 Received: from [2607:f8b0:4864:20::830] (port=43865 helo=mail-qt1-x830.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <dfussner@HIDDEN>) id 1nFdjz-0004YM-Po for bug-gnu-emacs@HIDDEN; Thu, 03 Feb 2022 10:09:46 -0500 Received: by mail-qt1-x830.google.com with SMTP id x5so2489138qtw.10 for <bug-gnu-emacs@HIDDEN>; Thu, 03 Feb 2022 07:09:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=NRzGguuk/ZyJH4rJ2/nfMQzmQ6YLYgukEOKO3yB1KxG90hF10tz19FsHIopKvDNzJY HnQriD4xkKk0HcEi76vX5Ao47bs/tywfMHAXP6poZgTpOeJ/39GlI1GRLG5U0TNClSuq ozw0RG03wLXtS227ruuSE3rBVigU2ffh2946+v+299WJQjGRaMoCmVFlK8mJbZcqO1bP HsLbAXw65hcKxcJXvjrIXyMQ/IxjIVXx6y1uaQJ9GI7uw+S10FViEt+BbwImvTURGZSg XaR1V4UgPJ0bP0BIIlhCQTOXvoL3g68aip5XAX3sC3suXOfCusDcCEmEg9m3gdX+/8Tv GhBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=FG58FpWqX5dqOaMqBqtIR1QCq9fb4hO9MKBH3GP0bR4=; b=8AD2lFppATIHuBTEdX0fojg0mxRRG1yr4Il+yQTx9D9BookCy+U7+Ak9yGbCrcYK06 G4iZdOB5skfVe8BV8USPv8E9urLv6HFpwgWcaHEcuEjk0GeEKH+nNS5CdGVEbZw3KMmz 0Mbs71vEi0E6nRE27mLfSWLfZYhjtW15+z71l4SlUlgv8fwQazm0VlNRZWtxV8RYHITT Ejp6F41eYeE0EQMco0KkdaT1xKh+Ufe6sVeUbtTHjKI8wUjQaqibg9LXZ01JfaKWs5G4 HGqBzNUWTJAldAqd/zXEtG2iBeoxppbKIU8KrR5oA4avyRuEVJzoxe3jIRtRZrNmg17m GqdQ== X-Gm-Message-State: AOAM532VugSzcTg6SA4IrTvrrq697Da1jvoim1aU9BISnwO8nkEQHzIq C640Q17/1nNkxoWxaUxRbKd2itCNlhgkbiLDcZU5RoUhVm+Z0g== X-Google-Smtp-Source: ABdhPJx2bRjGnxK/hgJ5j4BExtY9yptBRG/9Aku6LaZ3SPWtg204KzR39l48STM5GpgQTFQ9pUOJs8WLin35Qxsuo2E= X-Received: by 2002:a05:620a:2a07:: with SMTP id o7mr23177669qkp.274.1643900977699; Thu, 03 Feb 2022 07:09:37 -0800 (PST) MIME-Version: 1.0 From: David Fussner <dfussner@HIDDEN> Date: Thu, 3 Feb 2022 15:09:22 +0000 Message-ID: <CADF+RtgWCLKQGwgdTNWmgesbcwq8iBxChoN8FqMOg95Ai3CYTA@HIDDEN> Subject: 29.0.50; [PATCH] Xref backend for TeX buffers To: bug-gnu-emacs@HIDDEN Content-Type: multipart/mixed; boundary="000000000000d28fd905d71e8534" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::830 (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::830; envelope-from=dfussner@HIDDEN; helo=mail-qt1-x830.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 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, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.2 (/) 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 (--) --000000000000d28fd905d71e8534 Content-Type: multipart/alternative; boundary="000000000000d28fd805d71e8532" --000000000000d28fd805d71e8532 Content-Type: text/plain; charset="UTF-8" I've recently been trying to use xref commands with a tags table in a TeX repository, and many of the results are sub-optimal. This is a known issue -- within living memory there have been at least two discussions related to it on help-gnu-emacs: https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00436.html Neither discussion resulted in any code, at least not that I can find, and the issues mentioned there remain. For example, xref-find-definitions on, say, '\mycommand' returns No definitions found for: mycommand. (The absence of the escape char in the search string makes the search fail, as the tag name in the table will be '\mycommand'.) Similarly, any xref command on 'my:citekey' will only search by default for the half of the symbol under point, stopping at the colon. There are many other behaviors that are suboptimal, as well, so in the end I wrote a new xref backend for TeX buffers (cloning large portions of the default etags backend), and wondered whether it might be welcome in GNU Emacs. A few remarks: 1. The code should work as it stands both in the AUCTeX and the in-tree modes. The AUCTeX hooks I've included in the patch are provisional, as I would want to discuss with them how they would want to handle it, should the patch be accepted in some form. 2. Along the way I found some issues with how etags parses TeX files, issues which affect the usefulness of the xref commands, so I've made changes in etags.c as well. When running the test suite for etags the only diffs occurred in the TeX-related sections of the resulting tags file, and location information in those sections was good. 3. The patch as it stands enables all the changes by default to give what I judge to be the best out-of-the-box experience, but wiser heads may well have other ideas. 4. If it looks like the patch will make it into Emacs in some form, I'm going to need to assign copyright, so I'd appreciate help with getting that started. Thanks, David. --000000000000d28fd805d71e8532 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">I've recently been trying to use xref commands with a = tags table in a<br>TeX repository, and many of the results are sub-optimal.= =C2=A0 This is a<br>known issue -- within living memory there have been at = least two<br>discussions related to it on help-gnu-emacs:<br><br><a href=3D= "https://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html">h= ttps://lists.gnu.org/archive/html/help-gnu-emacs/2018-06/msg00126.html</a><= br><a href=3D"https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg= 00436.html">https://lists.gnu.org/archive/html/help-gnu-emacs/2021-07/msg00= 436.html</a><br><br>Neither discussion resulted in any code, at least not t= hat I can find,<br>and the issues mentioned there remain.=C2=A0 For example= ,<br>xref-find-definitions on, say, '\mycommand' returns<br><br>No = definitions found for: mycommand.<br><br>(The absence of the escape char in= the search string makes the search<br>fail, as the tag name in the table w= ill be '\mycommand'.)<br><br>Similarly, any xref command on 'my= :citekey' will only search by default<br>for the half of the symbol und= er point, stopping at the colon.<br><br>There are many other behaviors that= are suboptimal, as well, so in the<br>end I wrote a new xref backend for T= eX buffers (cloning large portions<br>of the default etags backend), and wo= ndered whether it might be welcome<br>in GNU Emacs.<br><br>A few remarks:<b= r><br>1. The code should work as it stands both in the AUCTeX and the in-tr= ee<br>modes.=C2=A0 The AUCTeX hooks I've included in the patch are prov= isional, as<br>I would want to discuss with them how they would want to han= dle it,<br>should the patch be accepted in some form.<br><br>2. Along the w= ay I found some issues with how etags parses TeX files,<br>issues which aff= ect the usefulness of the xref commands, so I've made<br>changes in eta= gs.c as well.=C2=A0 When running the test suite for etags the<br>only diffs= occurred in the TeX-related sections of the resulting tags<br>file, and lo= cation information in those sections was good.<br><br>3. The patch as it st= ands enables all the changes by default to give<br>what I judge to be the b= est out-of-the-box experience, but wiser heads<br>may well have other ideas= .<br><br>4. If it looks like the patch will make it into Emacs in some form= , I'm<br>going to need to assign copyright, so I'd appreciate help = with getting<br>that started.<br><br>Thanks,<br><br>David.</div> --000000000000d28fd805d71e8532-- --000000000000d28fd905d71e8534 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Disposition: attachment; filename="0001-Provide-an-xref-backend-for-TeX-buffers.patch" Content-Transfer-Encoding: base64 Content-ID: <f_kz7439kw0> X-Attachment-Id: f_kz7439kw0 RnJvbSA5ZjViMjU0N2ZlZjU1OTdmOWM0MWUxYzQ2Zjk5NzQ2MDk1YTA4MzRjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBGdXNzbmVyIDxkZnVzc25lckBnb29nbGVtYWlsLmNv bT4KRGF0ZTogV2VkLCAyIEZlYiAyMDIyIDEzOjMxOjUxICswMDAwClN1YmplY3Q6IFtQQVRDSF0g UHJvdmlkZSBhbiB4cmVmIGJhY2tlbmQgZm9yIFRlWCBidWZmZXJzCgoqIGxpYi1zcmMvZXRhZ3Mu YyAoVGVYX2NvbW1hbmRzKTogSW1wcm92ZSBwYXJzaW5nIG9mIGNvbW1hbmRzIGluIFRlWApidWZm ZXJzLgooVEVYX2RlZmVudik6IEV4cGFuZCBsaXN0IG9mIGNvbW1hbmRzIHRvIHRhZyBieSBkZWZh dWx0IGluIFRlWApidWZmZXJzLgooVGVYX2hlbHApOgoqIGRvYy9lbWFjcy9tYWludGFpbmluZy50 ZXhpIChUYWcgU3ludGF4KTogRG9jdW1lbnQgbmV3IHRhZ2dlZApjb21tYW5kcy4KCiogbGlzcC90 ZXh0bW9kZXMvdGV4LW1vZGUuZWwgKHRleC0teHJlZi1iYWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRv IG5hbWUKeHJlZiBiYWNrZW5kLgoodGV4LWNvbW1vbi1pbml0aWFsaXphdGlvbik6IFNldCB1cCB4 cmVmIGJhY2tlbmQgZm9yIGluLXRyZWUgVGVYCm1vZGVzLgoodGV4LXNldC1hdWN0ZXgteHJlZi1i YWNrZW5kKTogTmV3IGZ1bmN0aW9uIHRvIGRvIHRoZSBzYW1lIGZvciBBVUNUZVgKbW9kZXMuCih4 cmVmLWJhY2tlbmQtaWRlbnRpZmllci1hdC1wb2ludCkKKHhyZWYtYmFja2VuZC1pZGVudGlmaWVy LWNvbXBsZXRpb24tdGFibGUpCih4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1jb21wbGV0aW9uLWln bm9yZS1jYXNlKQooeHJlZi1iYWNrZW5kLWRlZmluaXRpb25zLCB4cmVmLWJhY2tlbmQtYXByb3Bv cykKKHhyZWYtYmFja2VuZC1yZWZlcmVuY2VzKTogTmV3IFRlWCBpbXBsZW1lbnRhdGlvbnMgb2Yg dGhlIGdlbmVyaWMgeHJlZgpiYWNrZW5kIGZ1bmN0aW9ucy4KKHRleC14cmVmLWFwcm9wb3MtcmVn ZXhwLCB0ZXgteHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSk6IE5ldwpoZWxwZXIgZnVuY3Rp b25zIGZvciBiYWNrZW5kLgoodGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0KTogTmV3IHZhci4KKHRl eC10aGluZ2F0cHQtaXMtdGV4c3ltYm9sKTogTmV3IGRlZmN1c3RvbS4KKHRleC1zZXQtdGhpbmdh dHB0LXN5bWJvbCk6IE5ldyBjb21tYW5kIHRvIGFwcGx5IHZhbHVlIG9mIHByZXZpb3VzCmJ1ZmZl ci1sb2NhbGx5LgoodGV4LS1zeW1ib2wtb3ItdGV4c3ltYm9sKTogTmV3IGhlbHBlciBmdW5jdGlv biBmb3IgcHJldmlvdXMuCih0ZXgtdGhpbmdhdHB0LS1iZWdpbm5pbmctb2YtdGV4c3ltYm9sKQoo dGV4LXRoaW5nYXRwdC0tZW5kLW9mLXRleHN5bWJvbCk6IE5ldyBmdW5jdGlvbnMgdG8gZGVmaW5l IHRleHN5bWJvbAoidGhpbmciIGZvciAndGhpbmctYXQtcG9pbnQnLgoodGV4LXRoaW5nYXRwdC1z eW50YXgtdGFibGUsIHRleC1lc2NhcGUtY2hhcik6IE5ldyB2YXJzIHRvIGRvIHRoZQpzYW1lLgoo dGV4LS10aGluZy1hdC1wb2ludCk6IE5ldyBmdW5jdGlvbiB0byByZXR1cm4gdGV4c3ltYm9sCid0 aGluZy1hdC1wb2ludCcuCih0ZXgtdGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlLCB0ZXgteHJlZi10 cnktYWx0ZXJuYXRlLWZvcm1zKTogTmV3CmRlZmN1c3RvbXMgdG8gcmVmaW5lIGJlaGF2aW9yIG9m IHRoZSB4cmVmIGJhY2tlbmQuCih0ZXgtLWluY2x1ZGUtZXNjYXBlLXApOiBOZXcgZnVuY3Rpb24g dG8gZG8gdGhlIHNhbWUuCi0tLQogZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkgfCAgIDkgKy0K IGxpYi1zcmMvZXRhZ3MuYyAgICAgICAgICAgIHwgIDgzICsrKysrKysrLS0KIGxpc3AvdGV4dG1v ZGVzL3RleC1tb2RlLmVsIHwgMzMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIDMgZmlsZXMgY2hhbmdlZCwgNDExIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9tYWludGFpbmluZy50ZXhpIGIvZG9jL2VtYWNzL21haW50 YWluaW5nLnRleGkKaW5kZXggZWRjYzYwNzVmNy4uMWRlNDM1MjQ2ZSAxMDA2NDQKLS0tIGEvZG9j L2VtYWNzL21haW50YWluaW5nLnRleGkKKysrIGIvZG9jL2VtYWNzL21haW50YWluaW5nLnRleGkK QEAgLTI1NjUsOCArMjU2NSwxMyBAQCBUYWcgU3ludGF4CiBAY29kZXtcc2VjdGlvbn0sIEBjb2Rl e1xzdWJzZWN0aW9ufSwgQGNvZGV7XHN1YnN1YnNlY3Rpb259LAogQGNvZGV7XGVxbm99LCBAY29k ZXtcbGFiZWx9LCBAY29kZXtccmVmfSwgQGNvZGV7XGNpdGV9LAogQGNvZGV7XGJpYml0ZW19LCBA Y29kZXtccGFydH0sIEBjb2Rle1xhcHBlbmRpeH0sIEBjb2Rle1xlbnRyeX0sCi1AY29kZXtcaW5k ZXh9LCBAY29kZXtcZGVmfSwgQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdjb21tYW5k fSwKLUBjb2Rle1xuZXdlbnZpcm9ubWVudH0gYW5kIEBjb2Rle1xyZW5ld2Vudmlyb25tZW50fSBh cmUgdGFncy4KK0Bjb2Rle1xpbmRleH0sIEBjb2Rle1xkZWZ9LCBAY29kZXtcZWRlZn0sIEBjb2Rl e1xnZGVmfSwgQGNvZGV7XHhkZWZ9LAorQGNvZGV7XG5ld2NvbW1hbmR9LCBAY29kZXtccmVuZXdj b21tYW5kfSwgQGNvZGV7XG5ld2Vudmlyb25tZW50fSwKK0Bjb2Rle1xyZW5ld2Vudmlyb25tZW50 fSwgQGNvZGV7XERlY2xhcmVSb2J1c3RDb21tYW5kfSwKK0Bjb2Rle1xuZXdyb2J1c3RjbWR9LCBA Y29kZXtccmVuZXdyb2J1c3RjbWR9LCBAY29kZXtcbGV0fSwKK0Bjb2Rle1xjc2RlZn0sIEBjb2Rl e1xjc2VkZWZ9LCBAY29kZXtcY3NnZGVmfSwgQGNvZGV7XGNzeGRlZn0sCitAY29kZXtcY3NsZXRj c30sIGFuZCBAY29kZXtcY3NsZXR9IGFyZSB0YWdzLiAgU28gdG9vIGFyZSB0aGUgYXJndW1lbnRz CitvZiBhbnkgc3RhcnJlZCB2YXJpYW50cyBvZiB0aGVzZSBjb21tYW5kcywgd2hlbiBzdWNoIHZh cmlhbnRzIGV4aXN0LgogCiBPdGhlciBjb21tYW5kcyBjYW4gbWFrZSB0YWdzIGFzIHdlbGwsIGlm IHlvdSBzcGVjaWZ5IHRoZW0gaW4gdGhlCiBlbnZpcm9ubWVudCB2YXJpYWJsZSBAZW52e1RFWFRB R1N9IGJlZm9yZSBpbnZva2luZyBAY29tbWFuZHtldGFnc30uICBUaGUKZGlmZiAtLWdpdCBhL2xp Yi1zcmMvZXRhZ3MuYyBiL2xpYi1zcmMvZXRhZ3MuYwppbmRleCBhYTViYzg4MzlkLi5lNTI2OWFh NDU2IDEwMDY0NAotLS0gYS9saWItc3JjL2V0YWdzLmMKKysrIGIvbGliLXNyYy9ldGFncy5jCkBA IC03OTMsOCArNzkzLDEyIEBAICNkZWZpbmUgU1RESU4gMHgxMDAxCQkvKiByZXR1cm5lZCBieSBn ZXRvcHRfbG9uZyBvbiAtLXBhcnNlLXN0ZGluICovCiAiSW4gTGFUZVggdGV4dCwgdGhlIGFyZ3Vt ZW50IG9mIGFueSBvZiB0aGUgY29tbWFuZHMgJ1xcY2hhcHRlcicsXG5cCiAnXFxzZWN0aW9uJywg J1xcc3Vic2VjdGlvbicsICdcXHN1YnN1YnNlY3Rpb24nLCAnXFxlcW5vJywgJ1xcbGFiZWwnLFxu XAogJ1xccmVmJywgJ1xcY2l0ZScsICdcXGJpYml0ZW0nLCAnXFxwYXJ0JywgJ1xcYXBwZW5kaXgn LCAnXFxlbnRyeScsXG5cCi0nXFxpbmRleCcsICdcXGRlZicsICdcXG5ld2NvbW1hbmQnLCAnXFxy ZW5ld2NvbW1hbmQnLFxuXAotJ1xcbmV3ZW52aXJvbm1lbnQnIG9yICdcXHJlbmV3ZW52aXJvbm1l bnQnIGlzIGEgdGFnLlxuXAorJ1xcaW5kZXgnLCAnXFxkZWYnLCAnXFxlZGVmJywgJ1xcZ2RlZics ICdcXHhkZWYnLCAnXFxuZXdjb21tYW5kJyxcblwKKydcXHJlbmV3Y29tbWFuZCcsICdcXG5ld2Vu dmlyb25tZW50JywgJ1xccmVuZXdlbnZpcm9ubWVudCcsXG5cCisnXFxEZWNsYXJlUm9idXN0Q29t bWFuZCwgJ1xcbmV3cm9idXN0Y21kJywgJ1xccmVuZXdyb2J1c3RjbWQnLFxuXAorJ1xcbGV0Jywg J1xcY3NkZWYnLCAnXFxjc2VkZWYnLCAnXFxjc2dkZWYnLCAnXFxjc3hkZWYnLCAnXFxjc2xldGNz JyxcblwKK29yICdcXGNzbGV0JyBpcyBhIHRhZy4gIFNvIGlzIHRoZSBhcmd1bWVudCBvZiBhbnkg b2YgdGhlIHN0YXJyZWRcblwKK3ZhcmlhbnRzIG9mIHRoZXNlIGNvbW1hbmRzLCB3aGVuIGEgc3Rh cnJlZCB2YXJpYW50IGV4aXN0cy5cblwKIFxuXAogT3RoZXIgY29tbWFuZHMgY2FuIGJlIHNwZWNp ZmllZCBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZVxuXAogJ1RFWFRBR1MnIHRv IGEgY29sb24tc2VwYXJhdGVkIGxpc3QgbGlrZSwgZm9yIGV4YW1wbGUsXG5cCkBAIC01NjczLDEx ICs1Njc3LDE5IEBAIFNjaGVtZV9mdW5jdGlvbnMgKEZJTEUgKmluZikKIHN0YXRpYyBsaW5lYnVm ZmVyICpURVhfdG9rdGFiID0gTlVMTDsgLyogVGFibGUgd2l0aCB0YWcgdG9rZW5zICovCiAKIC8q IERlZmF1bHQgc2V0IG9mIGNvbnRyb2wgc2VxdWVuY2VzIHRvIHB1dCBpbnRvIFRFWF90b2t0YWIu Ci0gICBUaGUgdmFsdWUgb2YgZW52aXJvbm1lbnQgdmFyIFRFWFRBR1MgaXMgcHJlcGVuZGVkIHRv IHRoaXMuICAqLworICAgVGhlIHZhbHVlIG9mIGVudmlyb25tZW50IHZhciBURVhUQUdTIGlzIHBy ZXBlbmRlZCB0byB0aGlzLgorICAgKDIwMjEpIEFkZCB2YXJpYW50cyBvZiAnXGRlZicsIHNvbWUg YWRkaXRpb25hbCBMYVRlWCBjb21tYW5kcywKKyAgIGFuZCBjb21tb24gdmFyaWFudHMgZnJvbSB0 aGUgJ2V0b29sYm94JyBwYWNrYWdlLiAgQWxzbywgYWRkCisgICBzdGFycmVkIHZhcmlhbnRzIG9m IHRoZSBjb21tYW5kcyBpZiB0aGV5IGV4aXN0LiAgU3RhcnJlZAorICAgdmFyaWFudHMgbmVlZCB0 byBhcHBlYXIgYmVmb3JlIHRoZWlyIHVuc3RhcnJlZCB2ZXJzaW9ucy4gKi8KIHN0YXRpYyBjb25z dCBjaGFyICpURVhfZGVmZW52ID0gIlwKLTpjaGFwdGVyOnNlY3Rpb246c3Vic2VjdGlvbjpzdWJz dWJzZWN0aW9uOmVxbm86bGFiZWw6cmVmOmNpdGU6YmliaXRlbVwKLTpwYXJ0OmFwcGVuZGl4OmVu dHJ5OmluZGV4OmRlZlwKLTpuZXdjb21tYW5kOnJlbmV3Y29tbWFuZDpuZXdlbnZpcm9ubWVudDpy ZW5ld2Vudmlyb25tZW50IjsKKzpjaGFwdGVyKjpzZWN0aW9uKjpzdWJzZWN0aW9uKjpzdWJzdWJz ZWN0aW9uKjpwYXJ0KjpsYWJlbDpyZWZcCis6Y2hhcHRlcjpzZWN0aW9uOnN1YnNlY3Rpb246c3Vi c3Vic2VjdGlvbjplcW5vOmNpdGU6YmliaXRlbVwKKzpwYXJ0OmFwcGVuZGl4OmVudHJ5OmluZGV4 OmRlZjplZGVmOmdkZWY6eGRlZjpuZXdjb21tYW5kKjpuZXdjb21tYW5kXAorOnJlbmV3Y29tbWFu ZCo6cmVuZXdjb21tYW5kOm5ld2Vudmlyb25tZW50KjpuZXdlbnZpcm9ubWVudFwKKzpyZW5ld2Vu dmlyb25tZW50KjpyZW5ld2Vudmlyb25tZW50OkRlY2xhcmVSb2J1c3RDb21tYW5kKlwKKzpEZWNs YXJlUm9idXN0Q29tbWFuZDpyZW5ld3JvYnVzdGNtZCo6cmVuZXdyb2J1c3RjbWQ6bmV3cm9idXN0 Y21kKlwKKzpuZXdyb2J1c3RjbWQ6bGV0OmNzZGVmOmNzZWRlZjpjc2dkZWY6Y3N4ZGVmOmNzbGV0 Y3M6Y3NsZXQiOwogCiBzdGF0aWMgdm9pZCBURVhfZGVjb2RlX2VudiAoY29uc3QgY2hhciAqLCBj b25zdCBjaGFyICopOwogCkBAIC01NzM2LDE5ICs1NzQ4LDcwIEBAIFRlWF9jb21tYW5kcyAoRklM RSAqaW5mKQogCSAgICAgIHsKIAkJY2hhciAqcDsKIAkJcHRyZGlmZl90IG5hbWVsZW4sIGxpbmVs ZW47Ci0JCWJvb2wgb3BncnAgPSBmYWxzZTsKKwkJYm9vbCBvcGdycCA9IGZhbHNlLCBvbmVfZXNj ID0gZmFsc2U7CiAKIAkJY3AgPSBza2lwX3NwYWNlcyAoY3AgKyBrZXktPmxlbik7CisJCS8qIFNr aXAgdGhlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBjb21tYW5kcyBpbiB0aGUgdGFncyBsaXN0IHNv CisJCSAgIHRoYXQgdGhlc2UgYXJndW1lbnRzIGRvbid0IGVuZCB1cCBhcyB0aGUgbmFtZSBvZiB0 aGUgdGFnLgorCQkgICBUaGUgbmFtZSB3aWxsIGluc3RlYWQgY29tZSBmcm9tIHRoZSBhcmd1bWVu dCBpbiBjdXJseSBicmFjZXMKKwkJICAgdGhhdCBmb2xsb3dzIHRoZSBvcHRpb25hbCBvbmVzLiAg Ki8KKwkJaWYgKCpjcCA9PSAnWycgfHwgKmNwID09ICcoJykKKwkJICB7CisJCSAgICB3aGlsZSAo KmNwICE9IFRFWF9vcGdycCAmJiAqY3AgIT0gJ1wwJykKKwkJICAgICAgY3ArKzsKKwkJICB9CiAJ CWlmICgqY3AgPT0gVEVYX29wZ3JwKQogCQkgIHsKIAkJICAgIG9wZ3JwID0gdHJ1ZTsKIAkJICAg IGNwKys7CiAJCSAgfQorCQkvKiBKdW1waW5nIHRvIGEgVGVYIGNvbW1hbmQgZGVmaW5pdGlvbiBk b2Vzbid0IHdvcmsgaW4gYXQKKwkJICAgbGVhc3Qgc29tZSBvZiB0aGUgZWRpdG9ycyB0aGF0IHVz ZSBjdGFncy4gIENoYW5nZXMgaW4KKwkJICAgdGV4LW1vZGUuZWwgaW4gR05VIEVtYWNzIGFkZHJl c3MgdGhlc2UgaXNzdWVzIGZvciBldGFnczsKKwkJICAgdW5jb21tZW50IHRoZSBmb2xsb3dpbmcg Zml2ZSBsaW5lcyB0byBnZXQgYSBxdWljayAmIGRpcnR5CisJCSAgIGltcHJvdmVtZW50IGluIHBy b2dyYW1zIHVzaW5nIGN0YWdzIGFzIHdlbGwsIHRob3VnaCBzb21lCisJCSAgIHBhcnRzIG9mIHRo ZSBiZWhhdmlvciB3aWxsIHJlbWFpbiBzdWJvcHRpbWFsLiAgVGhlCisJCSAgIHVuZG9jdW1lbnRl ZCBjdGFncyBvcHRpb24gJy0tbm8tZHVwbGljYXRlcycgbWF5IGhlbHAuICAqLworCisJCS8qIGlm IChDVEFHUyAmJiAqY3AgPT0gVEVYX2VzYykgKi8KKwkJLyogICB7ICovCisJCS8qICAgICBjcCsr OyAqLworCQkvKiAgICAgb25lX2VzYyA9IHRydWU7ICovCisJCS8qICAgfSAqLworCisJCS8qIEFk ZCBvcHRpb25hbCBhcmd1bWVudCBicmFja2V0cyAnKCcgYW5kICdbJyBzbyB0aGF0IHRoZXNlCisJ CSAgIGFyZ3VtZW50cyBkb24ndCBhcHBlYXIgaW4gdGFnIG5hbWVzLiAgQWxzbyBhZGQgJz0nIGFz IGl0J3MKKwkJICAgcmVsYXRpb25hbCBpbiB0aGUgdmFzdCBtYWpvcml0eSBvZiBjYXNlcy4gICov CiAJCWZvciAocCA9IGNwOwotCQkgICAgICghY19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYm Ci0JCSAgICAgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnApOworCQkgICAgICgh Y19pc3NwYWNlICgqcCkgJiYgKnAgIT0gJyMnICYmICpwICE9ICc9JyAmJgorCQkgICAgICAqcCAh PSAnWycgJiYgKnAgIT0gJygnICYmICpwICE9IFRFWF9vcGdycCAmJgorCQkgICAgICAqcCAhPSBU RVhfY2xncnApOwogCQkgICAgIHArKykKLQkJICBjb250aW51ZTsKKwkJICAvKiBBbGxvdyBvbmx5 IG9uZSBlc2NhcGUgY2hhciBpbiBhIHRhZyBuYW1lLCB3aGljaAorCQkgICAgIChwcmltYXJpbHkp IGVuYWJsZXMgdGFnZ2luZyBhIFRlWCBjb21tYW5kJ3MgZGlmZmVyZW50LAorCQkgICAgIHBvc3Np Ymx5IHRlbXBvcmFyeSwgJ1xsZXQnIGJpbmRpbmdzLiAgKi8KKwkJICBpZiAoKnAgPT0gVEVYX2Vz YykKKwkJICAgIHsKKwkJICAgICAgaWYgKCFvbmVfZXNjKQorCQkJeworCQkJICBvbmVfZXNjID0g dHJ1ZTsKKwkJCSAgY29udGludWU7CisJCQl9CisJCSAgICAgIGVsc2UKKwkJCWJyZWFrOworCQkg ICAgfQorCQkgIGVsc2UKKwkJICAgIGNvbnRpbnVlOworCQkvKiBSZS1zY2FuIHRvIGNhdGNoICho aWdobHkgdW51c3VhbCkgY2FzZXMgd2hlcmUgYQorCQkgICBjb21tYW5kIG5hbWUgaXMgb2YgdGhl IGZvcm0gJ1woJy4gICovCisJCWlmICgoKnAgPT0gJygnIHx8ICpwID09ICdbJykgJiYgKHAgLSBj cCkgPCAyKQorCQkgIHsKKwkJICAgIGZvciAocCA9IGNwOworCQkJICghY19pc3NwYWNlICgqcCkg JiYgKnAgIT0gJyMnICYmCisJCQkgICpwICE9IFRFWF9vcGdycCAmJiAqcCAhPSBURVhfY2xncnAp OworCQkJIHArKykKKwkJICAgICAgY29udGludWU7CisJCSAgfQogCQluYW1lbGVuID0gcCAtIGNw OwogCQlsaW5lbGVuID0gbGIubGVuOwogCQlpZiAoIW9wZ3JwIHx8ICpwID09IFRFWF9jbGdycCkK ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3RleC1tb2RlLmVsIGIvbGlzcC90ZXh0bW9kZXMv dGV4LW1vZGUuZWwKaW5kZXggYWI5NDAzNmQwMS4uM2E3MTc4YzA1NSAxMDA2NDQKLS0tIGEvbGlz cC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwKKysrIGIvbGlzcC90ZXh0bW9kZXMvdGV4LW1vZGUuZWwK QEAgLTEyOTEsNiArMTI5MSw5IEBAIHRleC1jb21tb24taW5pdGlhbGl6YXRpb24KIAkgICAgICAo c3ludGF4LXByb3BlcnRpemUtcnVsZXMgbGF0ZXgtc3ludGF4LXByb3BlcnRpemUtcnVsZXMpKQog ICA7OyBUQUJzIGluIHZlcmJhdGltIGVudmlyb25tZW50cyBkb24ndCBkbyB3aGF0IHlvdSB0aGlu ay4KICAgKHNldHEtbG9jYWwgaW5kZW50LXRhYnMtbW9kZSBuaWwpCisgIDs7IFNldCB1cCB4cmVm IGJhY2tlbmQgaW4gVGVYIGJ1ZmZlcnMuCisgIChhZGQtaG9vayAneHJlZi1iYWNrZW5kLWZ1bmN0 aW9ucyAjJ3RleC0teHJlZi1iYWNrZW5kIG5pbCB0KQorICAodGV4LXNldC10aGluZ2F0cHQtc3lt Ym9sKQogICA7OyBPdGhlciB2YXJzIHRoYXQgc2hvdWxkIGJlIGJ1ZmZlci1sb2NhbC4KICAgKG1h a2UtbG9jYWwtdmFyaWFibGUgJ3RleC1jb21tYW5kKQogICAobWFrZS1sb2NhbC12YXJpYWJsZSAn dGV4LXN0YXJ0LW9mLWhlYWRlcikKQEAgLTM2NTksNiArMzY2MiwzMzQgQEAgdGV4LWNoa3RleAog ICAgICAgKHByb2Nlc3Mtc2VuZC1yZWdpb24gdGV4LWNoa3RleC0tcHJvY2VzcyAocG9pbnQtbWlu KSAocG9pbnQtbWF4KSkKICAgICAgIChwcm9jZXNzLXNlbmQtZW9mIHRleC1jaGt0ZXgtLXByb2Nl c3MpKSkpCiAKKwwKKzs7OyBYcmVmIGJhY2tlbmQKKworOzsgSGVyZSB3ZSBkZWZpbmUgYW4geHJl ZiBiYWNrZW5kIGZvciBUZVgsIGFkYXB0aW5nIHRoZSBkZWZhdWx0IGV0YWdzCis7OyBiYWNrZW5k IHNvIHRoYXQgdGhlIG1haW4geHJlZiB1c2VyIGNvbW1hbmRzIChpbmNsdWRpbmcKKzs7IGB4cmVm LWZpbmQtZGVmaW5pdGlvbnMnLCBgeHJlZi1maW5kLWFwcm9wb3MnLCBhbmQKKzs7IGB4cmVmLWZp bmQtcmVmZXJlbmNlcycgW29uIE0tLiwgQy1NLS4sIGFuZCBNLT8sIHJlc3BlY3RpdmVseV0pIHdv cmsKKzs7IGluIFRlWCBidWZmZXJzLiAgVGhpcyBtb3N0bHkgaW52b2x2ZXMgZGVmaW5pbmcgYSBu ZXcgVEhJTkcgZm9yCis7OyBgdGhpbmctYXQtcG9pbnQnICh0ZXhzeW1ib2wpLCB0aGVuIHN1YnN0 aXR1dGluZyB0aGF0IFRISU5HIGZvcgorOzsgYHN5bWJvbCcgaW4gVGVYIGJ1ZmZlcnMsIGF0IGxl YXN0IGJ5IChjb25maWd1cmFibGUpIGRlZmF1bHQuICBUaGUKKzs7IFRlWCBlc2NhcGUgY2hhcmFj dGVyIHdpbGwgYnkgZGVmYXVsdCBhcHBlYXIgaW4gdGhlIHJlc3VsdGluZyBzdHJpbmcKKzs7IG9u bHkgd2hlbiB0aGUgeHJlZiBjb21tYW5kIHVzZXMgc3RyaW5nIHNlYXJjaCBhbmQgbm90IHJlZ2V4 cAorOzsgc2VhcmNoLCB0aG91Z2ggdGhpcyB0b28gaXMgY29uZmlndXJhYmxlLiAgVGhlIG5ldyBU SElORyB0eXBlIGFsc28KKzs7IGltcHJvdmVzIHRoZSBhY2N1cmFjeSBvZiBvdGhlciBjb21tYW5k cyB0aGF0IHVzZSBgdGhpbmctYXQtcG9pbnQnCis7OyBpbiBUZVggYnVmZmVycywgbGlrZSBgcHJv amVjdC1maW5kLXJlZ2V4cCcuICBUT0RPOiBJbmNsdWRlIGNvbW1hbmRzCis7OyB0aGF0IGNhbGwg YGJvdW5kcy1vZi10aGluZy1hdC1wb2ludCcgKGZvciBleGFtcGxlCis7OyBgaXNlYXJjaC1mb3J3 YXJkLXRoaW5nLWF0LXBvaW50JykgaW4gdGhlIG1lY2hhbmlzbS4KKworKGRlZnZhciB0ZXgtdGhp bmdhdHB0LW1vZGVzLWxpc3QKKyAgJyh0ZXgtbW9kZSBkb2N0ZXgtbW9kZSBsYXRleC1tb2RlIHBs YWluLXRleC1tb2RlIHNsaXRleC1tb2RlKQorICAiTWFqb3IgbW9kZXMgd2hlcmUgYHRoaW5nLWF0 LXBvaW50JyBtYXkgdXNlIHRoZSBgdGV4c3ltYm9sJyB0eXBlLgorCitXaGVuIGEgYnVmZmVyJ3Mg YG1ham9yLW1vZGUnIGlzIGluIHRoaXMgbGlzdCwgYW5kIHdoZW4KK2B0ZXgtdGhpbmdhdHB0LWlz LXRleHN5bWJvbCcgaXMgdCAodGhlIGRlZmF1bHQpLCBhbnkgY29tbWFuZCBpbgordGhhdCBidWZm ZXIgdGhhdCBjYWxscyBgdGhpbmctYXQtcG9pbnQnIHdpdGggYSBgc3ltYm9sJyBhcmd1bWVudAor YWN0dWFsbHkgdXNlcyB0aGUgYHRleHN5bWJvbCcgYXJndW1lbnQsIGluc3RlYWQuIikKKworKGRl ZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlzLXRleHN5bWJvbCB0CisgICJXaGVuIG5vbi1uaWwgcmVw bGFjZSBgc3ltYm9sJyBieSBgdGV4c3ltYm9sJyBmb3IgYHRoaW5nLWF0LXBvaW50Jy4KKworVGhp cyBhcHBsaWVzIG9ubHkgdG8gVGVYIGJ1ZmZlcnMuICBUaGUgYHRleHN5bWJvbCcgXCJ0aGluZ1wi Cittb2RpZmllcyB0aGUgc3RhbmRhcmQgYHN5bWJvbCcgZm9yIHVzZSBpbiBzdWNoIGJ1ZmZlcnMu CisKK1doZW4gbmlsLCByZXN0b3JlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIGB0aGluZy1hdC1w b2ludCcgaW4gVGVYCitidWZmZXJzLgorCitDdXN0b20gd2lsbCBhdXRvbWF0aWNhbGx5IGFwcGx5 IGNoYW5nZXMgaW4gYWxsIFRlWCBidWZmZXJzLCBidXQKK2lmIHlvdSBzZXQgdGhlIHZhcmlhYmxl IG91dHNpZGUgb2YgQ3VzdG9tIGl0IHdvbid0IHRha2UgZWZmZWN0Cit1bnRpbCB5b3UgYXBwbHkg aXQgd2l0aCBcXFt0ZXgtc2V0LXRoaW5nYXRwdC1zeW1ib2xdLiAgV2l0aG91dCBhCitwcmVmaXgg YXJndW1lbnQgKFxcW3VuaXZlcnNhbC1hcmd1bWVudF0pIHRoaXMgYXBwbGllcyBvbmx5IHRvIHRo ZQorY3VycmVudCBidWZmZXIsIGJ1dCB3aXRoIG9uZSBpdCBhcHBsaWVzIHRvIGFsbCBUZVggYnVm ZmVycyBpbgorYGJ1ZmZlci1saXN0Jy4gIChUZVggYnVmZmVycyBhcmUgdGhvc2Ugd2hvc2UgYG1h am9yLW1vZGUnIGlzIGEKK21lbWJlciBvZiBgdGV4LXRoaW5nYXRwdC1tb2Rlcy1saXN0Jy4pIgor ICA6dHlwZSAnYm9vbGVhbgorICA6Z3JvdXAgJ3RleC1maWxlCisgIDppbml0aWFsaXplICMnY3Vz dG9tLWluaXRpYWxpemUtZGVmYXVsdAorICA6c2V0IChsYW1iZGEgKHZhciB2YWwpCisgICAgICAg ICAoc2V0LWRlZmF1bHQgdmFyIHZhbCkKKyAgICAgICAgICh0ZXgtc2V0LXRoaW5nYXRwdC1zeW1i b2wgdCkpCisgIDp2ZXJzaW9uICIyOS4xIikKKworKGRlZmN1c3RvbSB0ZXgtdGhpbmdhdHB0LWlu Y2x1ZGUtZXNjYXBlICcoeHJlZi1maW5kLWRlZmluaXRpb25zCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVmaW5pdGlvbnMtb3RoZXItd2luZG93 CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4cmVmLWZpbmQtZGVm aW5pdGlvbnMtb3RoZXItZnJhbWUpCisgICJJZiBub24tbmlsLCBpbmNsdWRlIGB0ZXgtZXNjYXBl LWNoYXInIGluIGB0aGluZy1hdC1wb2ludCcuCisKK1RoaXMgdmFyaWFibGUgb25seSB0YWtlcyBl ZmZlY3Qgd2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnCitpcyB0ICh0aGUgZGVmYXVs dCksIGNoYW5naW5nIHRoZSBhcmd1bWVudCBwYXNzZWQgdG8KK2B0aGluZy1hdC1wb2ludCcgZnJv bSBgc3ltYm9sJyB0byBgdGV4c3ltYm9sJy4gIFdoZW4gdGhhdCBpcyB0aGUKK2Nhc2UsIHRoZSB2 YWx1ZXMgb2YgdGhpcyB2YXJpYWJsZSBhY3QgYXMgZm9sbG93czoKKworV2hlbiB0LCBgdGhpbmct YXQtcG9pbnQnIHdpbGwgYWx3YXlzIGluY2x1ZGUgYQorYHRleC1lc2NhcGUtY2hhcicgKHVzdWFs bHkgYFxcJyksIHNob3VsZCBvbmUgYmUgcHJlc2VudCwgaW4gdGhlCitzdHJpbmcgaXQgcmV0dXJu cyBpbiBUZVggYnVmZmVycy4KKworV2hlbiBuaWwsIGB0aGluZy1hdC1wb2ludCcgd2lsbCBuZXZl ciBpbmNsdWRlIHRoZQorYHRleC1lc2NhcGUtY2hhcicgaW4gdGhlIHN0cmluZyBpdCByZXR1cm5z IGluIFRlWCBidWZmZXJzLgorCitPdGhlcndpc2UsIGl0J3MgYSBsaXN0IG9mIGNvbW1hbmRzIGZv ciB3aGljaCBgdGhpbmctYXQtcG9pbnQnCit3aWxsIGFsd2F5cyBpbmNsdWRlIHRoZSBgdGV4LWVz Y2FwZS1jaGFyJyBpbiB0aGUgc3RyaW5nIGl0CityZXR1cm5zLiAgVGhlIHRocmVlIHhyZWYgY29t bWFuZHMgbGlzdGVkIGJ5IGRlZmF1bHQgbWF5IGNlYXNlIHRvCitmdW5jdGlvbiBwcm9wZXJseSBp biBUZVggYnVmZmVycyBpZiBzZXQgdG8gbmlsLCBidXQgc2V0dGluZworYHRleC14cmVmLXRyeS1h bHRlcm5hdGUtZm9ybXMnIHRvIHQgd2lsbCByZWN0aWZ5IHRoYXQuIgorICA6dHlwZSAnKGNob2lj ZSAoY29uc3QgOnRhZyAiQWx3YXlzIGluY2x1ZGUgdGV4LWVzY2FwZS1jaGFyIiB0KQorICAgICAg ICAgICAgICAgICAoY29uc3QgOnRhZyAiTmV2ZXIgaW5jbHVkZSB0ZXgtZXNjYXBlLWNoYXIiIG5p bCkKKyAgICAgICAgICAgICAgICAgKHNldCA6dGFnICJJbmNsdWRlIHRleC1lc2NhcGUtY2hhciBm b3IgdGhlc2UgY29tbWFuZHMiCisJCSAgICAgIChyZXBlYXQgOmlubGluZSB0IChzeW1ib2wgOnRh ZyAiY29tbWFuZCIpKSkpCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5LjEiKQor CisoZGVmY3VzdG9tIHRleC14cmVmLXRyeS1hbHRlcm5hdGUtZm9ybXMgbmlsCisgICJOb24tbmls IG1lYW5zIGZpbmQgZGVmaW5pdGlvbnMgb2YgYWx0ZXJuYXRlIGZvcm1zIG9mIGNvbW1hbmRzLgor CitJZiBgeHJlZi1maW5kLWRlZmluaXRpb25zJyByZXR1cm5zIG5pbCBmb3IgdGhlIGN1cnJlbnQg Zm9ybSBvZgordGhlIFRlWCBjb21tYW5kIG5hbWUsIHRyeSB0aGUgYWx0ZXJuYXRpdmUgZm9ybSwg d2hpY2ggd2lsbCBoYXZlCit0aGUgYHRleC1lc2NhcGUtY2hhcicgKHVzdWFsbHkgYFxcJykgZWl0 aGVyIHN0cmlwcGVkIGZyb20gb3IKK3ByZXBlbmRlZCB0byB0aGUgY3VycmVudCBmb3JtLCBkZXBl bmRpbmcgb24gd2hldGhlciBvciBub3QgdGhlCitjdXJyZW50IGZvcm0gc3RhcnRzIHdpdGggdGhh dCBjaGFyYWN0ZXIuCisKK1RoaXMgbWF5IGJlIHBhcnRpY3VsYXJseSB1c2VmdWwgaW4gZG9jdW1l bnRzIHRoYXQgbWl4IGBcXGRlZicgYW5kCitgXFxjc2RlZicgd2hlbiBkZWZpbmluZyBjb21tYW5k cy4iCisgIDp0eXBlICdib29sZWFuCisgIDpncm91cCAndGV4LWZpbGUKKyAgOnZlcnNpb24gIjI5 LjEiKQorCisoZGVmdmFyIHRleC1lc2NhcGUtY2hhciA/XFwKKyAgIlRoZSBjdXJyZW50IFRlWCBl c2NhcGUgY2hhcmFjdGVyLgorCitUaGUgYGV0YWdzJyBwcm9ncmFtIG9ubHkgcmVjb2duaXplcyBg XFwnICg5MikgYW5kIGAhJyAoMzMpIGFzCitlc2NhcGUgY2hhcmFjdGVycyBpbiBUZVggZG9jdW1l bnRzLCBhbmQgaWYgaXQgZGV0ZWN0cyB0aGUgbGF0dGVyCitpdCBhbHNvIHVzZXMgYDw+JyBhcyB0 aGUgVGVYIGdyb3VwaW5nIGNvbnN0cnVjdCByYXRoZXIgdGhhbiBge30nLgorU2V0dGluZyB0aGlz IHZhcmlhYmxlIHRvIGFueXRoaW5nIG90aGVyIHRoYW4gYFxcJyBvciBgIScgd2lsbCBub3QKK2Jl IHVzZWZ1bCB3aXRob3V0IGNoYW5nZXMgdG8gYGV0YWdzJywgYXQgbGVhc3QgZm9yIGNvbW1hbmRz IHRoYXQKK3NlYXJjaCB0YWdzIHRhYmxlcywgc3VjaCBhcyBcXFt4cmVmLWZpbmQtZGVmaW5pdGlv bnNdIGFuZCBcCitcXFt4cmVmLWZpbmQtYXByb3Bvc10uIikKKworKGRlZnZhciB0ZXgtdGhpbmdh dHB0LXN5bnRheC10YWJsZQorICAobGV0KiAoKG9zdCAoaWYgKGJvdW5kcCAnVGVYLW1vZGUtc3lu dGF4LXRhYmxlKQorICAgICAgICAgICAgICAgICAgVGVYLW1vZGUtc3ludGF4LXRhYmxlCisgICAg ICAgICAgICAgICAgdGV4LW1vZGUtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChzdCAobWFrZS1z eW50YXgtdGFibGUgb3N0KSkpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgPyMgIiciIHN0KQor ICAgIChtb2RpZnktc3ludGF4LWVudHJ5ID89ICInIiBzdCkKKyAgICAobW9kaWZ5LXN5bnRheC1l bnRyeSA/YCAiJyIgc3QpCisgICAgKG1vZGlmeS1zeW50YXgtZW50cnkgP1wiICInIiBzdCkKKyAg ICAobW9kaWZ5LXN5bnRheC1lbnRyeSA/JyAiJyIgc3QpCisgICAgc3QpCisgICJTeW50YXggdGFi bGUgZm9yIGRlbGltaXRpbmcgYHRoaW5nLWF0LXBvaW50JyBpbiBUZVggYnVmZmVycy4KKworV2hl biBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIHRoaXMgc3ludGF4IHRhYmxlIGhl bHBzCit0byBkZWZpbmUgd2hhdCBhIGB0ZXhzeW1ib2wnIGlzLiIpCisKKyhkZWZ1biB0ZXgtLXhy ZWYtYmFja2VuZCAoKSAndGV4KQorCis7OyBTZXR1cCBBVUNUZVggbW9kZXMuICAoU2hvdWxkIHRo aXMgYmUgaW4gQVVDVGVYIGl0c2VsZj8pCisKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtYXVjdGV4LXhyZWYtYmFja2VuZCkKKyhhZGQtaG9vayAnVGVYLW1vZGUtaG9vayAjJ3Rl eC1zZXQtdGhpbmdhdHB0LXN5bWJvbCkKKworKGRlZnVuIHRleC1zZXQtYXVjdGV4LXhyZWYtYmFj a2VuZCAoKQorICAoYWRkLWhvb2sgJ3hyZWYtYmFja2VuZC1mdW5jdGlvbnMgIyd0ZXgtLXhyZWYt YmFja2VuZCBuaWwgdCkpCisKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtaXRlbS1sb2NhdGlvbiAi eHJlZiIpCisoZGVjbGFyZS1mdW5jdGlvbiB4cmVmLS1wcm9qZWN0LXJvb3QgInhyZWYiIChwcm9q ZWN0KSkKKyhkZWNsYXJlLWZ1bmN0aW9uIHhyZWYtLWNvbnZlcnQtaGl0cyAieHJlZiIgKGhpdHMg cmVnZXhwKSkKKyhkZWNsYXJlLWZ1bmN0aW9uIGFwcm9wb3MtcGFyc2UtcGF0dGVybiAiYXByb3Bv cyIgKHBhdHRlcm4pKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gc2VtYW50aWMtc3lt cmVmLWluc3RhbnRpYXRlICJzZW1hbnRpYy9zeW1yZWYiKQorKGRlY2xhcmUtZnVuY3Rpb24gcHJv amVjdC1leHRlcm5hbC1yb290cyAicHJvamVjdCIpCisoZGVjbGFyZS1mdW5jdGlvbiBmaW5kLXRh Zy0tY29tcGxldGlvbi1pZ25vcmUtY2FzZSAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyAiZXRhZ3MiKQorKGRlY2xhcmUtZnVuY3Rpb24gZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsICJldGFncyIgKHJlZ2V4cCkpCisoZGVjbGFyZS1m dW5jdGlvbiBjbC1kZWxldGUtaWYgImNsLXNlcSIpCisoZGVmdmFyIGV0YWdzLXhyZWYtcHJlZmVy LWN1cnJlbnQtZmlsZSkKKworKGNsLWRlZm1ldGhvZCB4cmVmLWJhY2tlbmQtaWRlbnRpZmllci1h dC1wb2ludCAoKF9iYWNrZW5kIChlcWwgJ3RleCkpKQorICAocmVxdWlyZSAnZXRhZ3MpCisgICh0 aGluZy1hdC1wb2ludCAnc3ltYm9sIHQpKQorCisoY2wtZGVmbWV0aG9kIHhyZWYtYmFja2VuZC1p ZGVudGlmaWVyLWNvbXBsZXRpb24tdGFibGUgKChfYmFja2VuZAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxbCAndGV4KSkpCisgICh0 YWdzLWxhenktY29tcGxldGlvbi10YWJsZSkpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1iYWNrZW5k LWlkZW50aWZpZXItY29tcGxldGlvbi1pZ25vcmUtY2FzZSAoKF9iYWNrZW5kCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXFs ICd0ZXgpKSkKKyAgKGZpbmQtdGFnLS1jb21wbGV0aW9uLWlnbm9yZS1jYXNlKSkKKworKGNsLWRl Zm1ldGhvZCB4cmVmLWJhY2tlbmQtZGVmaW5pdGlvbnMgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBz eW1ib2wpCisgIChsZXQqICgoZmlsZSAoYW5kIGJ1ZmZlci1maWxlLW5hbWUgKGV4cGFuZC1maWxl LW5hbWUgYnVmZmVyLWZpbGUtbmFtZSkpKQorICAgICAgICAgKGFsdC1zeW0gKGlmIChjaGFyLWVx dWFsIHRleC1lc2NhcGUtY2hhciAoYXJlZiBzeW1ib2wgMCkpCisgICAgICAgICAgICAgICAgICAg ICAgKHN1YnN0cmluZyBzeW1ib2wgMSkKKyAgICAgICAgICAgICAgICAgICAgKGNvbmNhdCAoc3Ry aW5nIHRleC1lc2NhcGUtY2hhcikgc3ltYm9sKSkpCisgICAgICAgICAocHJlbGltLWRlZmluaXRp b25zIChldGFncy0teHJlZi1maW5kLWRlZmluaXRpb25zIHN5bWJvbCkpCisgICAgICAgICAoZGVm aW5pdGlvbnMgKGlmIChvciBwcmVsaW0tZGVmaW5pdGlvbnMKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChub3QgdGV4LXhyZWYtdHJ5LWFsdGVybmF0ZS1mb3JtcykpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIHByZWxpbS1kZWZpbml0aW9ucworICAgICAgICAgICAgICAgICAgICAg ICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgYWx0LXN5bSkpKQorICAgICAgICAgc2Ft ZS1maWxlLWRlZmluaXRpb25zKQorICAgICh3aGVuIChhbmQgZXRhZ3MteHJlZi1wcmVmZXItY3Vy cmVudC1maWxlIGZpbGUpCisgICAgICAoc2V0cSBkZWZpbml0aW9ucworICAgICAgICAgICAgKGNs LWRlbGV0ZS1pZgorICAgICAgICAgICAgIChsYW1iZGEgKGRlZmluaXRpb24pCisgICAgICAgICAg ICAgICAod2hlbiAoZXF1YWwgZmlsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVm LWxvY2F0aW9uLWdyb3VwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh4cmVmLWl0ZW0t bG9jYXRpb24gZGVmaW5pdGlvbikpKQorICAgICAgICAgICAgICAgICAocHVzaCBkZWZpbml0aW9u IHNhbWUtZmlsZS1kZWZpbml0aW9ucykKKyAgICAgICAgICAgICAgICAgdCkpCisgICAgICAgICAg ICAgZGVmaW5pdGlvbnMpKQorICAgICAgKHNldHEgZGVmaW5pdGlvbnMgKG5jb25jIChucmV2ZXJz ZSBzYW1lLWZpbGUtZGVmaW5pdGlvbnMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZGVmaW5pdGlvbnMpKSkKKyAgICBkZWZpbml0aW9ucykpCisKKyhjbC1kZWZtZXRob2QgeHJlZi1i YWNrZW5kLWFwcm9wb3MgKChfYmFja2VuZCAoZXFsICd0ZXgpKSBwYXR0ZXJuKQorICAobGV0ICgo cmVnZXhwICh0ZXgteHJlZi1hcHJvcG9zLXJlZ2V4cCBwYXR0ZXJuKSkpCisgICAgKG5jb25jCisg ICAgIChvcgorICAgICAgKGV0YWdzLS14cmVmLWZpbmQtZGVmaW5pdGlvbnMgcmVnZXhwIHQpCisg ICAgICAoZXRhZ3MtLXhyZWYtZmluZC1kZWZpbml0aW9ucyBwYXR0ZXJuIHQpKQorICAgICAoZXRh Z3MtLXhyZWYtYXByb3Bvcy1hZGRpdGlvbmFsIHJlZ2V4cCkpKSkKKworKGNsLWRlZm1ldGhvZCB4 cmVmLWJhY2tlbmQtcmVmZXJlbmNlcyAoKF9iYWNrZW5kIChlcWwgJ3RleCkpIGlkZW50aWZpZXIp CisgIChtYXBjYW4KKyAgIChsYW1iZGEgKGRpcikKKyAgICAgKG1lc3NhZ2UgIlNlYXJjaGluZyAl cy4uLiIgZGlyKQorICAgICAocmVkaXNwbGF5KQorICAgICAocHJvZzEKKyAgICAgICAgICh0ZXgt eHJlZi1yZWZlcmVuY2VzLWluLWRpcmVjdG9yeSBpZGVudGlmaWVyIGRpcikKKyAgICAgICAobWVz c2FnZSAiU2VhcmNoaW5nICVzLi4uIGRvbmUiIGRpcikpKQorICAgKGxldCAoKHByIChwcm9qZWN0 LWN1cnJlbnQgdCkpKQorICAgICAoY29ucworICAgICAgKHhyZWYtLXByb2plY3Qtcm9vdCBwcikK KyAgICAgIChwcm9qZWN0LWV4dGVybmFsLXJvb3RzIHByKSkpKSkKKworKGRlZnVuIHRleC14cmVm LWFwcm9wb3MtcmVnZXhwIChwYXR0ZXJuKQorICAiUmV0dXJuIGEgcmVnZXhwIGZyb20gUEFUVEVS TiBzaW1pbGFyIHRvIGBhcHJvcG9zJy4KKworVW5saWtlIHRoZSBzdGFuZGFyZCB4cmVmIGZ1bmN0 aW9uLCBpZiBgcmVnZXhwLXF1b3RlJyByZXR1cm5zIGEKK3N0cmluZyBkaWZmZXJlbnQgZnJvbSB0 aGUgb3JpZ2luYWwgUEFUVEVSTiwgdGhlIFRlWCBmdW5jdGlvbgorcGFzc2VzIHRoYXQgbW9kaWZp ZWQgc3RyaW5nLCByYXRoZXIgdGhhbiBQQVRURVJOIGl0c2VsZiwgdG8KK2BhcHJvcG9zLXBhcnNl LXBhdHRlcm4nLiIKKyAgKGxldCAoKHJlIChyZWdleHAtcXVvdGUgcGF0dGVybikpKQorICAgIChh cHJvcG9zLXBhcnNlLXBhdHRlcm4KKyAgICAgKGlmIChzdHJpbmctZXF1YWwgcmUgcGF0dGVybikK KyAgICAgICAgIDs7IFNwbGl0IGludG8gd29yZHMKKyAgICAgICAgIChvciAoc3BsaXQtc3RyaW5n IHBhdHRlcm4gIlsgXHRdKyIgdCkKKyAgICAgICAgICAgICAodXNlci1lcnJvciAiTm8gd29yZCBs aXN0IGdpdmVuIikpCisgICAgICAgcmUpKSkpCisKKyhkZWZ1biB0ZXgteHJlZi1yZWZlcmVuY2Vz LWluLWRpcmVjdG9yeSAoc3ltYm9sIGRpcikKKyAgIkZpbmQgYWxsIHJlZmVyZW5jZXMgdG8gU1lN Qk9MIGluIGRpcmVjdG9yeSBESVIuCitSZXR1cm4gYSBsaXN0IG9mIHhyZWYgdmFsdWVzLgorCitU aGlzIGZ1bmN0aW9uIHVzZXMgdGhlIFNlbWFudGljIFN5bWJvbCBSZWZlcmVuY2UgQVBJLiAgSW4g VGVYCitidWZmZXJzIHRoZSB2YWx1ZSByZXR1cm5lZCB3aGVuIHBhc3NpbmcgU1lNQk9MIHRvIGBy ZWdleHAtcXVvdGUnCitiZWNvbWVzIHRoZSBkZWZhdWx0IHNlYXJjaCB0ZXJtLiAgSWYgdGhpcyBz eW1yZWYgaW5zdGFudGlhdGlvbgorZmluZHMgbm8gbWF0Y2hlcywgYSBzZWNvbmQgdHJpZXMgYWdh aW4gd2l0aCB0aGUgb3JpZ2luYWwgU1lNQk9MCithcyBzZWFyY2ggdGVybSwgaW5zdGVhZC4gIEJv dGggc2VhcmNoZXMgc2V0IGtleXdvcmQgYHNlYXJjaHR5cGU6JwordG8gXFw9J3JlZ2V4cCBpbnN0 ZWFkIG9mIHhyZWYncyBcXD0nc3ltYm9sLgorCitTZWUgYHNlbWFudGljLXN5bXJlZi10b29sLWFs aXN0JyBmb3IgZGV0YWlscyBvbiB3aGljaCB0b29scyBhcmUKK3VzZWQsIGFuZCB3aGVuLiAgU2Vl IGFsc28gYHhyZWYtcmVmZXJlbmNlcy1pbi1kaXJlY3RvcnknIGFuZAorY29tbWVudHMgaW4gaXRz IGNvZGUsIHRoZSBsYXR0ZXIgY29waWVkIGludG8gdGhlIFRlWAoraW1wbGVtZW50YXRpb24gZm9y IGNvbnZlbmllbmNlLiIKKyAgKGNsLWFzc2VydCAoZGlyZWN0b3J5LW5hbWUtcCBkaXIpKQorICAo cmVxdWlyZSAnc2VtYW50aWMvc3ltcmVmKQorICAoZGVmdmFyIHNlbWFudGljLXN5bXJlZi10b29s KQorICAoZGVmdmFyIGVkZS1taW5vci1tb2RlKQorCisgIDs7IFNvbWUgc3ltcmVmIGJhY2tlbmRz IHVzZSBgZWRlLXByb2plY3Qtcm9vdC1kaXJlY3RvcnknIGFzIHRoZSByb290CisgIDs7IGRpcmVj dG9yeSBmb3IgdGhlIHNlYXJjaCwgcmF0aGVyIHRoYW4gYGRlZmF1bHQtZGlyZWN0b3J5Jy4gU2lu Y2UKKyAgOzsgdGhlIGNhbGxlciBoYXMgc3BlY2lmaWVkIGBkaXInLCB3ZSBiaW5kIGBlZGUtbWlu b3ItbW9kZScgdG8gbmlsCisgIDs7IHRvIGZvcmNlIHRoZSBiYWNrZW5kIHRvIHVzZSBgZGVmYXVs dC1kaXJlY3RvcnknLgorICAobGV0KiAoKGVkZS1taW5vci1tb2RlIG5pbCkKKyAgICAgICAgIChk ZWZhdWx0LWRpcmVjdG9yeSBkaXIpCisgICAgICAgICA7OyBGSVhNRTogUmVtb3ZlIENTY29wZSBh bmQgR2xvYmFsIGZyb20gdGhlIHJlY29nbml6ZWQgdG9vbHM/CisgICAgICAgICA7OyBUaGUgY3Vy cmVudCBpbXBsZW1lbnRhdGlvbnMgaW50ZXJwcmV0IHRoZSBzeW1ib2wgc2VhcmNoIGFzCisgICAg ICAgICA7OyAiZmluZCBhbGwgY2FsbHMgdG8gdGhlIGdpdmVuIGZ1bmN0aW9uIiwgYnV0IG5vdCBm dW5jdGlvbgorICAgICAgICAgOzsgZGVmaW5pdGlvbi4gQW5kIHRoZXkgcmV0dXJuIG5vdGhpbmcg d2hlbiBwYXNzZWQgYSB2YXJpYWJsZQorICAgICAgICAgOzsgbmFtZSwgZXZlbiBhIGdsb2JhbCBv bmUuCisgICAgICAgICAoc2VtYW50aWMtc3ltcmVmLXRvb2wgJ2RldGVjdCkKKyAgICAgICAgIChj YXNlLWZvbGQtc2VhcmNoIG5pbCkKKyAgICAgICAgICh0ZXhzeW1ib2wgKHJlZ2V4cC1xdW90ZSBz eW1ib2wpKQorICAgICAgICAgKGluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2Vh cmNoZm9yIHRleHN5bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICA6c2VhcmNodHlwZSAncmVnZXhwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDpzZWFyY2hzY29wZSAnc3ViZGlycworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpCisgICAg ICAgICAoYWx0LWluc3QgKHNlbWFudGljLXN5bXJlZi1pbnN0YW50aWF0ZSA6c2VhcmNoZm9yIHN5 bWJvbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnNl YXJjaHR5cGUgJ3JlZ2V4cAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOnNlYXJjaHNjb3BlICdzdWJkaXJzCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6cmVzdWx0dHlwZSAnbGluZS1hbmQtdGV4dCkpKQorICAg IChvcgorICAgICAoeHJlZi0tY29udmVydC1oaXRzIChzZW1hbnRpYy1zeW1yZWYtcGVyZm9ybS1z ZWFyY2ggaW5zdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZm9ybWF0ICIlcyIgdGV4c3lt Ym9sKSkKKyAgICAgKHhyZWYtLWNvbnZlcnQtaGl0cyAoc2VtYW50aWMtc3ltcmVmLXBlcmZvcm0t c2VhcmNoIGFsdC1pbnN0KQorICAgICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQgIiVzIiBz eW1ib2wpKSkpKQorCisocHV0ICd0ZXhzeW1ib2wgJ2JlZ2lubmluZy1vcCAndGV4LXRoaW5nYXRw dC0tYmVnaW5uaW5nLW9mLXRleHN5bWJvbCkKKworKHB1dCAndGV4c3ltYm9sICdlbmQtb3AgJ3Rl eC10aGluZ2F0cHQtLWVuZC1vZi10ZXhzeW1ib2wpCisKKyhkZWZ1biB0ZXgtc2V0LXRoaW5nYXRw dC1zeW1ib2wgKCZvcHRpb25hbCBhbGwpCisgICJTZXQgbWVhbmluZyBvZiBgdGhpbmctYXQtcG9p bnQnIGBzeW1ib2wnIGluIChBTEw/KSBUZVggYnVmZmVycy4KKworV2hlbiBgdGV4LXRoaW5nYXRw dC1pcy10ZXhzeW1ib2wnIGlzIHQsIHNldCBgdGhpbmctYXQtcG9pbnQnIHRvCit1c2UgdGhlIGB0 ZXhzeW1ib2wnIFwidGhpbmdcIiBpbnN0ZWFkIG9mIGBzeW1ib2wnLCBvdGhlcndpc2UKK21haW50 YWluIG9yIHJlc3RvcmUgdGhlIGRlZmF1bHQuICBXaXRob3V0IGFuIG9wdGlvbmFsIEFMTCBtYWtl CitjaGFuZ2VzIG9ubHkgaW4gY3VycmVudCBidWZmZXIsIHdpdGggQUxMIG1ha2UgY2hhbmdlcyBp biBhbGwgVGVYCitidWZmZXJzIGluIGBidWZmZXItbGlzdCcuIgorICAoaW50ZXJhY3RpdmUgIlAi KQorICAocmVxdWlyZSAndGhpbmdhdHB0KQorICAoaWYgYWxsCisgICAgICAoZG9saXN0IChidWYg KGJ1ZmZlci1saXN0KSkKKyAgICAgICAgKHdpdGgtY3VycmVudC1idWZmZXIgYnVmCisgICAgICAg ICAgKHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCkpKQorICAgICh0ZXgtLXN5bWJvbC1vci10ZXhz eW1ib2wpKSkKKworKGRlZnVuIHRleC0tc3ltYm9sLW9yLXRleHN5bWJvbCAoKQorICAod2hlbiAo bWVtcSBtYWpvci1tb2RlIHRleC10aGluZ2F0cHQtbW9kZXMtbGlzdCkKKyAgICAoaWYgdGV4LXRo aW5nYXRwdC1pcy10ZXhzeW1ib2wKKyAgICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQtcG9pbnQt cHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgICAgKGFkZC10by1saXN0ICd0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoc3lt Ym9sIC4gdGV4LS10aGluZy1hdC1wb2ludCkpKQorICAgICAgKHNldHEtbG9jYWwgdGhpbmctYXQt cG9pbnQtcHJvdmlkZXItYWxpc3QKKyAgICAgICAgICAgICAgICAgIChkZWxldGUgJyhzeW1ib2wg LiB0ZXgtLXRoaW5nLWF0LXBvaW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICB0aGluZy1h dC1wb2ludC1wcm92aWRlci1hbGlzdCkpKSkpCisKKyhkZWZ1biB0ZXgtLXRoaW5nLWF0LXBvaW50 ICgpCisgICJQYXNzIGB0aGluZycgdHlwZSBgdGV4c3ltYm9sJyB0byBgYm91bmRzLW9mLXRoaW5n LWF0LXBvaW50Jy4KKworV2hlbiBgdGV4LXRoaW5nYXRwdC1pcy10ZXhzeW1ib2wnIGlzIHQsIGNh bGxzIGluIFRlWCBidWZmZXJzIHRvCitgdGhpbmctYXQtcG9pbnQnIHdpdGggYXJndW1lbnQgYHN5 bWJvbCcgd2lsbCB1c2UgdGhpcyBmdW5jdGlvbi4iCisgIChsZXQqICgoc3l0YWIgKG1ha2Utc3lu dGF4LXRhYmxlIHRleC10aGluZ2F0cHQtc3ludGF4LXRhYmxlKSkKKyAgICAgICAgIChib3VuZHMg KHdpdGgtc3ludGF4LXRhYmxlIHN5dGFiCisgICAgICAgICAgICAgICAgICAgKHVubGVzcyAoY2hh ci1lcXVhbCB0ZXgtZXNjYXBlLWNoYXIgP1xcKQorICAgICAgICAgICAgICAgICAgICAgKG1vZGlm eS1zeW50YXgtZW50cnkgP1xcICJfIikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnktc3lu dGF4LWVudHJ5IHRleC1lc2NhcGUtY2hhciAiXFwiKQorICAgICAgICAgICAgICAgICAgICAgKG1v ZGlmeS1zeW50YXgtZW50cnkgPzwgIig+IikKKyAgICAgICAgICAgICAgICAgICAgIChtb2RpZnkt c3ludGF4LWVudHJ5ID8+ICIpPCIpKQorICAgICAgICAgICAgICAgICAgIChib3VuZHMtb2YtdGhp bmctYXQtcG9pbnQgJ3RleHN5bWJvbCkpKSkKKyAgICAod2hlbiBib3VuZHMKKyAgICAgIChidWZm ZXItc3Vic3RyaW5nLW5vLXByb3BlcnRpZXMgKGNhciBib3VuZHMpIChjZHIgYm91bmRzKSkpKSkK KworKGRlZnVuIHRleC0taW5jbHVkZS1lc2NhcGUtcCAoY29tbWFuZCkKKyAgKG9yIChlcSB0ZXgt dGhpbmdhdHB0LWluY2x1ZGUtZXNjYXBlIHQpCisgICAgICAobWVtcSBjb21tYW5kIHRleC10aGlu Z2F0cHQtaW5jbHVkZS1lc2NhcGUpKSkKKworKGRlZnVuIHRleC10aGluZ2F0cHQtLWJlZ2lubmlu Zy1vZi10ZXhzeW1ib2wgKCkKKyAgIk1vdmUgcG9pbnQgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUg Y3VycmVudCBUZVggc3ltYm9sLiIKKyAgKGFuZCAocmUtc2VhcmNoLWJhY2t3YXJkICJcXChbXVso KV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAgICAoc2tpcC1zeW50YXgt YmFja3dhcmQgIndfLiIpCisgICAgICAgKHdoZW4gKHRleC0taW5jbHVkZS1lc2NhcGUtcCB0aGlz LWNvbW1hbmQpCisgICAgICAgICAoc2tpcC1zeW50YXgtYmFja3dhcmQgIlxcLyIpKSkpCisKKyhk ZWZ1biB0ZXgtdGhpbmdhdHB0LS1lbmQtb2YtdGV4c3ltYm9sICgpCisgICJNb3ZlIHBvaW50IHRv IHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgVGVYIHN5bWJvbC4iCisgIChhbmQgKHJlLXNlYXJjaC1m b3J3YXJkICJcXChbXVsoKV1cXHxcXChcXHN3XFx8XFxzX1xcfFxccy5cXCkrXFwpIikKKyAgICAg ICAoc2tpcC1zeW50YXgtZm9yd2FyZCAid18uIikpKQorCiAobWFrZS1vYnNvbGV0ZS12YXJpYWJs ZSAndGV4LW1vZGUtbG9hZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAidXNlIGB3aXRo LWV2YWwtYWZ0ZXItbG9hZCcgaW5zdGVhZC4iICIyOC4xIikKIChydW4taG9va3MgJ3RleC1tb2Rl LWxvYWQtaG9vaykKLS0gCjIuMTcuNgoK --000000000000d28fd905d71e8534--
David Fussner <dfussner@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#53749
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.