Received: (at 81861) by debbugs.gnu.org; 1 Oct 2026 15:57:16 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 01 11:57:16 2026 Received: from localhost ([127.0.0.1]:49290 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1xCJ9o-0002Lx-18 for submit <at> debbugs.gnu.org; Thu, 01 Oct 2026 11:57:16 -0400 Received: from mout-p-202.mailbox.org ([80.241.56.172]:37882) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1xCJ9m-0002Kr-Bt for 81861 <at> debbugs.gnu.org; Thu, 01 Oct 2026 11:57:14 -0400 Received: from smtp102.mailbox.org (smtp102.mailbox.org [10.196.197.102]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4hwc400rBRzMlbM; Thu, 01 Oct 2026 17:57:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001; t=1790870224; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=vc058dLo/rYd7XiDXcN+bJU10UBdC7UQe6rdx7xtCTg=; b=lGl6zrJbNBtMAkc5R7KRWnVHT9/3FtkDjcnXUvjLy42+gcpYikjO8ClSxbIzh2ypKe4ZCv eokroCJLQ5/Uz60g5vs/4DqiHS0fOZ+GvdD15PXsAG7lgimPbGAzrZlsUc47T+dAHPugVS B3Kt3ZMYp92Jffs5Mu2O1Yksbnolq0Ua950wKNe4hcHxhM01Vs+3IANoWHSWJ4hX64rfl0 qCw9DuMODgZbPjOz6XbzRaXTeF/EqDE3i71T1vMx4BLWE/lO2vAQo028U7BpJOEaP0fT+Y 1Im/K4GIJZp8e9VuebuSnK4iwkmKTEFxhSwCuh8vu+IlzLlo42hvNGud91tYDQ== From: Juri Linkov <juri@HIDDEN> To: Roman Rudakov <rrudakov@HIDDEN> Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental reparse, eating all memory in my real setup In-Reply-To: <87pkxuoa82.fsf@HIDDEN> Organization: LINKOV.NET References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> <86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN> <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN> <jwvtsn6rj73.fsf-monnier+emacs@HIDDEN> <87ik3mlnvt.fsf@HIDDEN> <87pkxuoa82.fsf@HIDDEN> Date: Thu, 01 Oct 2026 18:53:23 +0300 Message-ID: <87h5j5tqu4.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/32.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 81861 Cc: Yuan Fu <casouri@HIDDEN>, 81861 <at> debbugs.gnu.org, Bozhidar Batsov <bozhidar@HIDDEN>, Stefan Monnier <monnier@HIDDEN>, blak3mill3r@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 (-) > The problem of the opening paren not being a separate node is something > I raised in a long discussion here: > > https://github.com/sogaiu/tree-sitter-clojure/issues/65 > > Some grammar changes came out of that discussion, and the resulting version > of the grammar is currently marked as unstable. Since it hasn't been > stabilized yet, I think there's still room to propose changes that would > help with navigation, such as exposing the opening delimiter of reader > conditionals as a separate node. Maybe until or unless a separate node is added to the grammar, as a workaround we could add such heuristics to 'treesit-forward-sexp' that when point is on such nodes as "#?" then navigation should be based on their parent.
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
Received: (at 81861) by debbugs.gnu.org; 30 Sep 2026 18:39:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 30 14:39:10 2026
Received: from localhost ([127.0.0.1]:56693 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1xBzCw-0000V6-7B
for submit <at> debbugs.gnu.org; Wed, 30 Sep 2026 14:39:10 -0400
Received: from fhigh-a5-smtp.messagingengine.com ([103.168.172.156]:32917)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <rrudakov@HIDDEN>)
id 1xBzCs-0000Tn-LQ
for 81861 <at> debbugs.gnu.org; Wed, 30 Sep 2026 14:39:07 -0400
Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44])
by mailfhigh.phl.internal (Postfix) with ESMTP id 17EF7140006B;
Wed, 30 Sep 2026 14:39:01 -0400 (EDT)
Received: from phl-frontend-03 ([10.202.2.162])
by phl-compute-04.internal (MEProxy); Wed, 30 Sep 2026 14:39:01 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
cc:cc:content-type:content-type:date:date:from:from:in-reply-to
:in-reply-to:message-id:mime-version:references:reply-to:subject
:subject:to:to; s=fm1; t=1790793541; x=1790879941; bh=C8WcstDGvQ
l3nrVATJlEKV28y4tsR+xodKL6GFluJ9c=; b=TwzDGwBhHAK9kt8vJ5pMv+BXPT
hlpRQS7kmI834QALEMp8fxpNEixRPUD7F/uRr4BlehH8nTK/U2ZLr9BcI1Pm1jGl
2dyQx7EbUGKyItrMadnCSv62YzDnomkRM3e1yAAxCiMHTKIhYlr6p73nsarPXMU8
kWoGiOq8Vs0SOrDgb++NlxQ5J8g7G0e/hcDSiHdFwAKgktOs2ADx79GAlJrFV60E
vUIiglMS24DXwb5p+7rHNdDznS9Cu6rLfhwPXq5Ebxspq6rDMC5W91umnFlrUzCN
VZLWDa2aHg9wTqjNN4JfHln/j4z72IDO7QsXUYadcNASgUYRIytBTjsXqRfQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
messagingengine.com; h=cc:cc: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-sender:x-me-sender:x-sasl-enc; s=fm1; t=
1790793541; x=1790879941; bh=C8WcstDGvQl3nrVATJlEKV28y4tsR+xodKL
6GFluJ9c=; b=f7qqhss5EDGbmU3f9ODOazbCyi6ZIMP4UwV2rumQ6MnGcoTNVma
s04kqKBIswB3b2c3mkaYRXLjjN+qDUzS7BAPVdER7Yjwap2zRyIfIhA3l4aDydHO
ay+87S9azKC1kB08bPSUv/XZFbg7XOSiEoLfp48v1Ff0Ru6tIwSzYpQgPLjWZVuM
mFOt3hiuCOxeqeNz68TZx4prd/rU8tjdlrwpV3B7B9lAgT0oK2aaquFZyKq+OJBY
XXZDHkOzVVpI/tnByk9emiYXE2OaaANCbIoVMZmb88liSIq/I8pw0ibIrrL0AOdm
kAzTHybFsX+0mUKBeIVtGQ0qXo54AGUvujA==
X-ME-Sender: <xms:RFe9auxTdfdDHypzrjuobXeaT-aPJaSeXBQQ6XaJ22odT4Ir8bJ6Yg>
<xme:RFe9ajkz2K_-BhogMN2I_pcKGwwR23wwN2yG_ZOybM6MszB0vCAYAVUoCJspGAadw
RwS0TQQMuRTp0YhK3jzJAp2dTtetzTUbhG8_6MjNzq0E6Ga__lN6VE>
X-ME-Received: <xmr:RFe9annUFCrpAoFtALGtBNOnucVmTE91wKyorcThx5VmavamzbP2puFM3N1hq9km9PbGqlGhSLAo29Y3rfg>
X-ME-Proxy-Cause: dmFkZTGgnK9m30bQZoEgaHo2GVp0nEsLnUKP1MU6Orm+4cSNwe4tZ3jn+SRhcZwGUdoYrU
/ldcM/Fp8YfnzIYGmzHSkSMuCA+WS20vSV1RXncuYLbvh4FvQY5JUT8nEwT4SSU6eFy4WI
5X7na2GJ9pRB431sAcbnWq9EqHhXesT47vxWpOs9y5IXx1qj3QbW+xk87hRs4UsRtmpEfE
++WPGWx8C+5vlJGQpHmCE+b/SISf+SCeL+K5xXolsYTlj5tOYGd65hAjMWreAbpiQEWRHO
nsH9sw9FbBUrn/Z9xGs/r3UsQ3D2jKAHOCQ7eKZcuDpKockvkmfz82CX5iGGNPxm9PO7W1
TUTxfUgdCDgmMN4s75y72pgtjXiXMZktrLyA5cggyFbM6PAWGHbtRa2i9IhTgJ2pYe1bEz
3ovyt9W0CYM39ja2EuoC2wOi7ylc7aODwmfHNM+amDlvTKg3D3Dii4K/cLUolb9izfOheL
qgYgOuRQTQUNa/wptl5awN+jvcz4c/kh6ja1OAXLJFDpfpIaMdvTqTZS3Jh6LZEJAeoxcN
5Ji5wDg4Yhk/0U0hluEZ5+NEVSCDQDRlnHHRKNzhkVNpkYeapoLCw2dv8fU/IlXK8YFRKQ
sSg3d+eM8HHlo5IvYtI6kX6DeeC879clnjYOuGcK6DK0wjhe7lb9ERsCtOow
X-ME-Proxy: <xmx:RFe9alxMf_6dkeTtR_L4d66gC0940ph3YFeJftVizBnNrYnvrww4XQ>
<xmx:RFe9asqhpvUQXBGNxGclC5lL0xamGGcZ2yjFECHkiLHfOxwC5VkV1w>
<xmx:RFe9ak5jVJ6XugZ4sp_nqmbfEU5T9sN3yaM1qtCE2vZt05gSYRoItA>
<xmx:RFe9ajc4UlarWRnLZrBV-b7Z1OMDS4n9y32KlGbl15uPSlu7uFDE-Q>
<xmx:RVe9al3g5a6MLbEZFr-V7yc8qk6MflQI6YabBj-kQaRj6j7NLVjySECP>
Feedback-ID: i1c714620:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed,
30 Sep 2026 14:38:59 -0400 (EDT)
From: Roman Rudakov <rrudakov@HIDDEN>
To: Juri Linkov <juri@HIDDEN>
Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental
reparse, eating all memory in my real setup
In-Reply-To: <87ik3mlnvt.fsf@HIDDEN>
References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN>
<86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN>
<BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
<jwvtsn6rj73.fsf-monnier+emacs@HIDDEN> <87ik3mlnvt.fsf@HIDDEN>
User-Agent: mu4e 1.14.3; emacs 32.0.50
Date: Wed, 30 Sep 2026 20:38:53 +0200
Message-ID: <87pkxuoa82.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; format=flowed
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 81861
Cc: Yuan Fu <casouri@HIDDEN>, 81861 <at> debbugs.gnu.org,
Bozhidar Batsov <bozhidar@HIDDEN>,
Stefan Monnier <monnier@HIDDEN>, blak3mill3r@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 (-)
Juri Linkov <juri@HIDDEN> writes:
>>> PS, why does clojure-ts-mode use backward-up-list + forward-sexp,
>>> instead of up-list?
>>
>> #?(:clj (inc 1))
>> |
>> point at here
>>
>> #?(:clj (inc 1))
>> | |
>> | beginning of list according to syntax-ppss
>> |
>> beginning of list according to tree-sitter
>>
>> I think both options are justifiable.
>>
>> #?(:clj (inc 1))
>> |
>> point at here
>>
>> #?(:clj (inc 1))
>> ||
>> |forward-sexp according to syntax-ppss
>> |
>> forward-sexp according to tree-sitter
>>
>> But here, I can't see a good justification for treesit's
>> forward-sexp behavior. Why not jump to right after the closing
>> paren,
>> like the syntax-tables do?
>
> Actually, I see different positions:
>
> #?(:clj (inc 1))
> | |
> | forward-sexp according to syntax-ppss
> |
> forward-sexp according to tree-sitter
>
> where both positions are wrong. However, after applying the patch
> below,
> the position is fixed for forward-sexp according to syntax-ppss:
>
> #?(:clj (inc 1))
> | |
> | forward-sexp according to syntax-ppss
> |
> forward-sexp according to tree-sitter
>
> But the position will remain wrong for forward-sexp according
> to tree-sitter because the parse tree is:
>
> (read_cond_lit marker: #? open: (
> value: (kwd_lit marker: : name: (kwd_name))
> value:
> (list_lit open: (
> value: (sym_lit name: (sym_name))
> value: (num_lit) close: ))
> close: ))
>
> where there is no separate node for the opening paren.
>
Thanks for the patch, Juri, it fixes one of the cases we missed.
I've also found another case where navigation breaks:
{:a 1 #?@(:clj [:b 2])}
This is valid Clojure code, using the splicing reader conditional.
The problem of the opening paren not being a separate node is
something I raised in a long discussion here:
https://github.com/sogaiu/tree-sitter-clojure/issues/65
Some grammar changes came out of that discussion, and the resulting
version of the grammar is currently marked as unstable. Since it
hasn't been stabilized yet, I think there's still room to propose
changes that would help with navigation, such as exposing the opening
delimiter of reader conditionals as a separate node.
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
Received: (at 81861) by debbugs.gnu.org; 30 Sep 2026 16:35:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 30 12:35:50 2026
Received: from localhost ([127.0.0.1]:49921 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1xBxHY-0003Vz-QY
for submit <at> debbugs.gnu.org; Wed, 30 Sep 2026 12:35:49 -0400
Received: from mout-p-202.mailbox.org ([2001:67c:2050:0:465::202]:42116)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1xBxHE-0003SW-Q9
for 81861 <at> debbugs.gnu.org; Wed, 30 Sep 2026 12:35:30 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org
[IPv6:2001:67c:2050:b231:465::202])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519MLKEM768 server-signature RSA-PSS (4096 bits) server-digest
SHA256) (No client certificate requested)
by mout-p-202.mailbox.org (Postfix) with ESMTPS id 4hw0yc4FXLzMlTH;
Wed, 30 Sep 2026 18:35:20 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001;
t=1790786120;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:cc:mime-version:mime-version:content-type:content-type:
content-transfer-encoding:content-transfer-encoding:
in-reply-to:in-reply-to:references:references;
bh=zDYGJ2I2vTM9eWhMhXEMKlYNI/v832aNiwSEePSdXKY=;
b=Z6gOqYuO6Kqfsx6YMG2Kau1xr/LBe4mZ5Gi6/stwV6G5KoyIUdKov3pB8hUXlk+j6ndUQS
c5g7JIwbgqWx7AgX8zQa+1A8K8FPm1Ek2CzrryDQh/SG3y74MIEn8kF9BgtI/qmK1Ltc4T
hTpnIlXCTXjBWMfgf/VgJ8HOPjU3dHb8p94umVrlIbev1Mr5PxLM6BuAxcgOnmS84w1NPe
V4g44LqVV15fsKRPDfF1V9a3m9CJ7n+oxtvSweYaJ+0DoOh09a4ghpVAYS7Gdrfjn3g5hZ
DQHBGm8z8rOW9BNdrh9xQZ1prmIKXEuk8PqR2wl9yMOprH8kRTqU1+x/Pk0oag==
Authentication-Results: outgoing_mbo_mout; dkim=none;
spf=pass (outgoing_mbo_mout: domain of juri@HIDDEN designates
2001:67c:2050:b231:465::202 as permitted sender)
smtp.mailfrom=juri@HIDDEN
From: Juri Linkov <juri@HIDDEN>
To: Yuan Fu <casouri@HIDDEN>
Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental
reparse, eating all memory in my real setup
In-Reply-To: <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
Organization: LINKOV.NET
References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN>
<86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN>
<BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
Date: Wed, 30 Sep 2026 19:27:57 +0300
Message-ID: <8733uqk8mm.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/32.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4hw0yc4FXLzMlTH
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81861
Cc: 81861 <at> debbugs.gnu.org, Roman Rudakov <rrudakov@HIDDEN>,
Bozhidar Batsov <bozhidar@HIDDEN>,
Stefan Monnier <monnier@HIDDEN>, blak3mill3r@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 (-)
> So far I don’t have a good idea on how to tweak the heuristics to make
> this edge case work. Juri, WDYT?
I see that with the following code, 'repro--update-locals' goes into inf loop:
(def config
{:set #{:a :b ,:c}
:map {:nested {::k 1}}
:regex #
(defn __s [] (+ 1 2 3))
":"})
When point is after [], 'backward-up-list' moves point before the
opening paren. Then 'forward-sexp' moves point back to the same position.
'treesit-explore-mode' shows this is incorrect syntax:
(anon_fn_lit marker: # (ERROR) open: (
So probably such cases can't be easily handled
by adding more nodes to 'sexp-default'.
However, switching from syntax-ppss navigation to treesit navigation
with 'treesit-cycle-sexp-thing' fixes this case, because
'backward-up-list' moves point before #.
This means this can be fixed with something like this in CIDER:
diff --git a/repro.el b/repro.el
index 3702059..557c8db 100644
--- a/repro.el
+++ b/repro.el
@@ -51,7 +76,9 @@ repro-run
(let* ((corpus (or corpus (expand-file-name "corpus.clj"
(file-name-directory load-file-name))))
(iterations (or iterations 30000))
- (buf (generate-new-buffer "*repro*")))
+ (buf (generate-new-buffer "*repro*"))
+ (forward-sexp-function #'treesit-forward-sexp)
+ (treesit-sexp-thing 'sexp))
(with-current-buffer buf
(clojure-ts-mode)
(insert-file-contents corpus)
> PS, why does clojure-ts-mode use backward-up-list + forward-sexp, instead of up-list?
Indeed, using 'up-list' also fixes this case.
So CIDER needs to use either fix.
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
Received: (at 81861) by debbugs.gnu.org; 30 Sep 2026 16:35:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 30 12:35:31 2026
Received: from localhost ([127.0.0.1]:49803 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1xBxHF-0003Uz-Kk
for submit <at> debbugs.gnu.org; Wed, 30 Sep 2026 12:35:31 -0400
Received: from mout-p-103.mailbox.org ([80.241.56.161]:51922)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1xBxHC-0003SA-5a
for 81861 <at> debbugs.gnu.org; Wed, 30 Sep 2026 12:35:28 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org
[IPv6:2001:67c:2050:b231:465::202])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519MLKEM768 server-signature RSA-PSS (4096 bits) server-digest
SHA256) (No client certificate requested)
by mout-p-103.mailbox.org (Postfix) with ESMTPS id 4hw0yZ0gtvzKnDl;
Wed, 30 Sep 2026 18:35:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linkov.net; s=MBO0001;
t=1790786118;
h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
to:to:cc:cc:mime-version:mime-version:content-type:content-type:
in-reply-to:in-reply-to:references:references;
bh=2V9IA9SrcahYvjQ3giAQylrnfIwFz4ErX1UoS4Fd62E=;
b=b6F/G9ClJO5ZmPJAD94vgvVyoBzvXxaR3nIt7Pthmtpva81ZRmhdysgj1WSq2Y+yHRkK5+
nE5Unupi73mniqXX+ZYPR9jua2V497RwNZaBf73Nxa31+lHKTV9GKubVyKORkkfN40gMCJ
XRCvaYw2MMVwS0fCObiO3d3VtjfvfbkD3buGa/br126zazt2NuKlNnUVRez4M4h/l8dy5O
WZ7UYj3sQqIWN8jaS7fs4/U90vOkMReoNctm/F5J6TsLaSqWLQ894VY/WhXNS42NrEixLs
fitpdhCd2pBtoTDijr0Jr3Gx1DFQwwW81uQ8pZqYrYxBU2Ns2aupTjV7G1D0JQ==
Authentication-Results: outgoing_mbo_mout; dkim=none;
spf=pass (outgoing_mbo_mout: domain of juri@HIDDEN designates
2001:67c:2050:b231:465::202 as permitted sender)
smtp.mailfrom=juri@HIDDEN
From: Juri Linkov <juri@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental
reparse, eating all memory in my real setup
In-Reply-To: <jwvtsn6rj73.fsf-monnier+emacs@HIDDEN>
Organization: LINKOV.NET
References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN>
<86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN>
<BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
<jwvtsn6rj73.fsf-monnier+emacs@HIDDEN>
Date: Wed, 30 Sep 2026 19:22:07 +0300
Message-ID: <87ik3mlnvt.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/32.0.50 (x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Rspamd-Queue-Id: 4hw0yZ0gtvzKnDl
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 81861
Cc: Roman Rudakov <rrudakov@HIDDEN>, Yuan Fu <casouri@HIDDEN>,
81861 <at> debbugs.gnu.org, Bozhidar Batsov <bozhidar@HIDDEN>,
blak3mill3r@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 (-)
--=-=-=
Content-Type: text/plain
>> PS, why does clojure-ts-mode use backward-up-list + forward-sexp, instead of up-list?
>
> #?(:clj (inc 1))
> |
> point at here
>
> #?(:clj (inc 1))
> | |
> | beginning of list according to syntax-ppss
> |
> beginning of list according to tree-sitter
>
> I think both options are justifiable.
>
> #?(:clj (inc 1))
> |
> point at here
>
> #?(:clj (inc 1))
> ||
> |forward-sexp according to syntax-ppss
> |
> forward-sexp according to tree-sitter
>
> But here, I can't see a good justification for treesit's
> forward-sexp behavior. Why not jump to right after the closing paren,
> like the syntax-tables do?
Actually, I see different positions:
#?(:clj (inc 1))
| |
| forward-sexp according to syntax-ppss
|
forward-sexp according to tree-sitter
where both positions are wrong. However, after applying the patch below,
the position is fixed for forward-sexp according to syntax-ppss:
#?(:clj (inc 1))
| |
| forward-sexp according to syntax-ppss
|
forward-sexp according to tree-sitter
But the position will remain wrong for forward-sexp according
to tree-sitter because the parse tree is:
(read_cond_lit marker: #? open: (
value: (kwd_lit marker: : name: (kwd_name))
value:
(list_lit open: (
value: (sym_lit name: (sym_name))
value: (num_lit) close: ))
close: ))
where there is no separate node for the opening paren.
--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=clojure-ts--default-sexp-node-p.patch
diff --git a/clojure-ts-mode.el b/clojure-ts-mode.el
index 35992ef..ca41bb1 100644
--- a/clojure-ts-mode.el
+++ b/clojure-ts-mode.el
@@ -1707,9 +1707,14 @@ clojure-ts--markdown-inline-sexp-nodes
(defun clojure-ts--default-sexp-node-p (node)
"Return non-nil if point is after the # marker of set or function literal NODE."
- (and (eq (char-before) ?\#)
- (string-match-p (rx bol (or "anon_fn_lit" "set_lit") eol)
- (treesit-node-type (treesit-node-parent node)))))
+ ;; For `C-M-f' in "#|(a)" or "#|{1 2 3}"
+ (or (and (eq (char-before) ?\#)
+ (string-match-p (rx bol (or "anon_fn_lit" "set_lit" "regex_lit") eol)
+ (treesit-node-type (treesit-node-parent node))))
+ ;; For `C-M-f' in "#?(:clj (inc 1))"
+ (and (eq (char-before) ?\?)
+ (string-match-p (rx bol "read_cond_lit" eol)
+ (treesit-node-type (treesit-node-parent node))))))
(defconst clojure-ts--thing-settings
`((clojure
--=-=-=--
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
Received: (at 81861) by debbugs.gnu.org; 30 Sep 2026 13:00:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 30 09:00:25 2026
Received: from localhost ([127.0.0.1]:42196 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1xBtv7-0002qe-8E
for submit <at> debbugs.gnu.org; Wed, 30 Sep 2026 09:00:25 -0400
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:21155)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
id 1xBtv5-0002qC-8K
for 81861 <at> debbugs.gnu.org; Wed, 30 Sep 2026 09:00:23 -0400
Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1])
by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id E15A480971;
Wed, 30 Sep 2026 09:00:17 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
s=mail; t=1790773217;
bh=Uex7OdXazqySljUhykgdX482B8mFCQCektOUx5Cn3dg=;
h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
b=fdimrZxDLJdqaEG2EGs4jUn4lpnX5k60GYfGJpCyV5UJh2hDijQyGR7RywdDR2bbY
d+W248BxJGh5jl3ELnbgNdrwRI1u8FA0VSL7ZOMR7xAwzzHkw3so804khUZMiC6+Wl
3MoRhlXuuwSUySM4qcSo+hTk43vYmj1yoayf3xWrNh0nrl+o0W0o0ND6N9vV10B2/z
4sqj9xsrxl4A6VhClirVhW7sxOBpLLkcra7oAzd6XjyCllnJEjeeY8eMVYKqcJ6jIC
TJIX8Q91jt2+HXuHotnSZcQLjqj7/5h1rLbcwUfKl6fouunFBbYDDotSm9VBVqN1WJ
4Rw7HkyOauNCQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 4C6958051F;
Wed, 30 Sep 2026 09:00:17 -0400 (EDT)
Received: from pastel (104-195-214-184.cpe.teksavvy.com [104.195.214.184])
by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 12E6B1204E2;
Wed, 30 Sep 2026 09:00:17 -0400 (EDT)
From: Stefan Monnier <monnier@HIDDEN>
To: Yuan Fu <casouri@HIDDEN>
Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental
reparse, eating all memory in my real setup
In-Reply-To: <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
Message-ID: <jwvtsn6rj73.fsf-monnier+emacs@HIDDEN>
References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN>
<86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN>
<BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
Date: Wed, 30 Sep 2026 09:00:16 -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.082 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: 81861
Cc: Eli Zaretskii <eliz@HIDDEN>, 81861 <at> debbugs.gnu.org, blak3mill3r@HIDDEN,
Juri Linkov <juri@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 (---)
> PS, why does clojure-ts-mode use backward-up-list + forward-sexp, instead of up-list?
#?(:clj (inc 1))
|
point at here
#?(:clj (inc 1))
| |
| beginning of list according to syntax-ppss
|
beginning of list according to tree-sitter
I think both options are justifiable.
#?(:clj (inc 1))
|
point at here
#?(:clj (inc 1))
||
|forward-sexp according to syntax-ppss
|
forward-sexp according to tree-sitter
But here, I can't see a good justification for treesit's
forward-sexp behavior. Why not jump to right after the closing paren,
like the syntax-tables do?
=== Stefan
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.Received: (at 81861) by debbugs.gnu.org; 30 Sep 2026 07:02:24 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 30 03:02:23 2026 Received: from localhost ([127.0.0.1]:60906 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1xBoKT-0005k2-Qm for submit <at> debbugs.gnu.org; Wed, 30 Sep 2026 03:02:22 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38314) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1xBoKK-0005e2-E9 for 81861 <at> debbugs.gnu.org; Wed, 30 Sep 2026 03:02:09 -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 1xBoKD-0006ej-FF; Wed, 30 Sep 2026 03:01:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=sz+mnWzRyLfqcNCbpkFx3vOoqv0KJ/nqAGhi0smmPQk=; b=ZmxJW1pyipob4MdozYAC +++HyescRK8MSVu6pdqRU/T028rda9s2zdh+RFkHpAX235Ds2Vie3tG4ZHyRV/iS7KdkfGRy4e/CV us3YRy6S5O1QWIm5I6NMFYCNIaZ+cHHSawnsBu71lhw0gJPmIhCJlctLFawyJrrtopH4sBfHfg/Hn 9GR44QI0H/sqlOmyfbxuaFRqzNpHhaP/q7wIBoiB+NhdwuT2sUzApH2BhCly5g8NBj1zGE7I29SlY OzPurRsEzcfy5v/gIU9UGJDjjK9+KXV4X/9J28QkzfQPtgsdrJXKRuwK9URlv7nNprmJB64EXZtYg GFdizYN6H1MM8g==; Date: Wed, 30 Sep 2026 10:01:48 +0300 Message-Id: <86fqyrz0gz.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Yuan Fu <casouri@HIDDEN>, Stefan Monnier <monnier@HIDDEN> In-Reply-To: <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN> (message from Yuan Fu on Tue, 29 Sep 2026 15:50:48 -0700) Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental reparse, eating all memory in my real setup References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> <86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN> <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 81861 Cc: 81861 <at> debbugs.gnu.org, blak3mill3r@HIDDEN, juri@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: Yuan Fu <casouri@HIDDEN> > Date: Tue, 29 Sep 2026 15:50:48 -0700 > Cc: blak3mill3r@HIDDEN, > 81861 <at> debbugs.gnu.org, > Juri Linkov <juri@HIDDEN> > > > > > On Sep 26, 2026, at 4:11 AM, Eli Zaretskii <eliz@HIDDEN> wrote: > > > > Ping! Yuan, could you please chime in? > > Sorry, working through my backlog. > > For this one I think the cause is the heuristics we use in sexp and list movement functions. In commands like treesit-up-list and treesit-forward-sexp, we compute the destination by both tree-sitter and the traditional syntax-ppss, to make the movement more intuitive. But an edge case created this inf loop. > > Here’s a minimal repro. In this code, if you try to call backward-up-list followed by forward-sexp to move forward (which is what the original repro does), you’ll find yourself back to square one. > > 1. If we call backward-up-list, it gets two possible destinations, the tree-sitter one is at the beginning of the #, since the #?(…) as a whole is a node, syntax-ppss is unaware of the special Clojure syntax and simply goes to the outer (. We pick the syntax-ppss one because it’s closer to point. > > 2. If we now call forward-sexp, tree-sitter thinks the point is still in the node #?(…), so it wants to move after the (inc 1) and before the outer closing paren. syntax-ppss simply moves to after the outer paren. And because tree-sitter thinks we are still in the node, it rejects syntax-ppss’s suggestion, because of the heuristic that forward-sexp shouldn’t move out of the parent node. So now we’re back to 1. > > So far I don’t have a good idea on how to tweak the heuristics to make this edge case work. Juri, WDYT? I've added Stefan to the discussion, in case he can suggest some ideas. > PS, why does clojure-ts-mode use backward-up-list + forward-sexp, instead of up-list? > > #?(:clj (inc 1)) > | > point at here > > #?(:clj (inc 1)) > | | > | beginning of list according to syntax-ppss > | > beginning of list according to tree-sitter > > #?(:clj (inc 1)) > | > point at here > > #?(:clj (inc 1)) > || > |forward-sexp according to syntax-ppss > | > forward-sexp according to tree-sitter > >
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
Received: (at 81861) by debbugs.gnu.org; 29 Sep 2026 22:51:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 29 18:51:20 2026
Received: from localhost ([127.0.0.1]:34986 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1xBgfL-0007eE-Vw
for submit <at> debbugs.gnu.org; Tue, 29 Sep 2026 18:51:20 -0400
Received: from mail-dl2-x10.google.com ([2607:f8b0:4864:38::10]:60446)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <casouri@HIDDEN>) id 1xBgfD-0007bz-Bg
for 81861 <at> debbugs.gnu.org; Tue, 29 Sep 2026 18:51:11 -0400
Received: by mail-dl2-x10.google.com with SMTP id
a92af1059eb24-142dd025d07so4270021c88.2
for <81861 <at> debbugs.gnu.org>; Tue, 29 Sep 2026 15:51:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20251104; t=1790722261; x=1791327061; darn=debbugs.gnu.org;
h=to:references:message-id:content-transfer-encoding:cc:date
:in-reply-to:from:subject:mime-version:content-type:from:to:cc
:subject:date:message-id:reply-to:content-type;
bh=O1PeMBUOtRGgotPcXGDmggIjhoJHuFSpw+OxbQf+lZY=;
b=J4tYHdxfXRp5Lb2WQyXir7LJco5l/iX6mHby7KtDcBiBdn7cBLTrSacLzegxW1rUa0
UazIH+OLerfXHYhYXx8NDD+i7cETQwvlLCkh5mKs5CnwQoXzkrspmBYe+B7OIPF5NHeD
KFSz3dhfL4Q10sgsV1RxeSSeg5zLcJHNgVhSb5fDTzv2mFkfh9BaT0mRXAGWZ/lUk2cy
Pcm3lYLljlyuTP7kW2nkam2x237A4EKTQRKSqrnUYrSWCjn3jgpeqLL/M9G9q4fYBngl
VAAz76rqkYpl1oUCbkhZGh4y32h+aPwS7Rrnc7qkk2FqHqW7L2i1fGeeu2hL6/LurwFl
qCOg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20260707; t=1790722261; x=1791327061;
h=to:references:message-id:content-transfer-encoding:cc:date
:in-reply-to:from:subject:mime-version:content-type:x-gm-gg
:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to
:content-type;
bh=O1PeMBUOtRGgotPcXGDmggIjhoJHuFSpw+OxbQf+lZY=;
b=qIJKQvV0vMqY2z/Vkpwg6NbI+9DlpgzkqN5+wUaVEvqZPbu6UADU9cQRQJQOzLIdRn
TNukoUJi/FDdyDCobc+seY1phHw3F20pqIAz8qNQHWNFPMUuFqRCH9mJKgb3q7OzeZ6c
Ms+5c5z9qg8tupY8W54SFnrS4ulGaUOghi/UutqVbGuE2pHay9qTkVnYGJB4uavzapI5
3abUDOZieQOCvPqe1yPCyPSUvgoO7m1PUO90PhfLqCgqTp8v2H0tRaqkX6NDJNpmA3DP
6uTI9YHi2V4JBkwKzL2o5SYIbS5dxEucBgh7cPizf6L1zIP2IJ0ppEJ7zyWIyME2qhmX
NKCw==
X-Forwarded-Encrypted: i=1;
AKwUvBzF2/iJQP8DQioudj5mL/xbApqf/Fy2YEZ2q5LzBU9W6TKo6afasEPUMW6QSEnWe5Qbb/7KBA==@debbugs.gnu.org
X-Gm-Message-State: AFq9FYKhN0DUIG03OtuANob/wqR4iT+Qwa8m8wCidH9WVR3zX+3wlMa3
DD581mT9vhqnmdX5lkcGlzj2hKUx67vnqOcKE6bm/oYsjupLt9bCAC2B
X-Gm-Gg: AYBFou03KP5lEf+P1w/AvS4UN7daEkInn83LFIe6zQ2+09mMgsZGCXly1msr6zr3MrY
dvFzR/3EylZc6dSTyT1rTiH1jVR4CZI8Ri63jMy7UVCjO4/YAGsi5o0v7Bkx9JpcmxTvtdOoBQV
NIAux8RMwBJaXre/ESr/cMYNSxAIDlKNGbfzu/ICLEbtB6KxfKdBziD8p5HZoqIpruprMqF0A1q
9BQG7HV+N8m7tM7KvmGLF3Ez9+np6xXTb4yG0ZsvqA0se2ICV6e9MIJz7UngUIg7FxYRKmZgXOE
GlwUctEhKUdtsRm80h4J+gyiPmGqszg6ynkjXc6CEcXbenjMhoab4wxQHNZuL5glydRNStgkOtC
m27g4U0Ty5ATlybVhuQOBWGGi3kuBxU7KvR1fCnCYLCxdAcQiRFJIkH7m1aXboCnrOM1d7SwALJ
p/DzKNjSeecKWs9Qe27ZWC1vmXCbAhM7whlFs2wGsxmDWtcaaLW6FfRA3/K0DI1124slV4hoPvZ
DLmxCIM6rjhg8q5TO7LSSIk/DfyE1ND
X-Received: by 2002:a05:7300:8ba9:b0:33b:dd20:f78c with SMTP id
5a478bee46e88-34c64dae94fmr1191719eec.34.1790722260691;
Tue, 29 Sep 2026 15:51:00 -0700 (PDT)
Received: from smtpclient.apple ([2601:645:c688:3880:1169:76cf:6ee8:e872])
by smtp.gmail.com with ESMTPSA id
5a478bee46e88-34c380ba734sm1766496eec.13.2026.09.29.15.50.59
(version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
Tue, 29 Sep 2026 15:50:59 -0700 (PDT)
Content-Type: text/plain;
charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\))
Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental
reparse, eating all memory in my real setup
From: Yuan Fu <casouri@HIDDEN>
In-Reply-To: <865wzs6zdn.fsf@HIDDEN>
Date: Tue, 29 Sep 2026 15:50:48 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <BD58CE81-D983-4DEA-9EBB-D07E90D29087@HIDDEN>
References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN>
<86cxuh1ivt.fsf@HIDDEN> <865wzs6zdn.fsf@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
X-Mailer: Apple Mail (2.3826.700.81)
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 81861
Cc: 81861 <at> debbugs.gnu.org, blak3mill3r@HIDDEN, Juri Linkov <juri@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: 0.0 (/)
> On Sep 26, 2026, at 4:11=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> =
wrote:
>=20
> Ping! Yuan, could you please chime in?
Sorry, working through my backlog.
For this one I think the cause is the heuristics we use in sexp and list =
movement functions. In commands like treesit-up-list and =
treesit-forward-sexp, we compute the destination by both tree-sitter and =
the traditional syntax-ppss, to make the movement more intuitive. But an =
edge case created this inf loop.=20
Here=E2=80=99s a minimal repro. In this code, if you try to call =
backward-up-list followed by forward-sexp to move forward (which is what =
the original repro does), you=E2=80=99ll find yourself back to square =
one.
1. If we call backward-up-list, it gets two possible destinations, the =
tree-sitter one is at the beginning of the #, since the #?(=E2=80=A6) as =
a whole is a node, syntax-ppss is unaware of the special Clojure syntax =
and simply goes to the outer (. We pick the syntax-ppss one because =
it=E2=80=99s closer to point.
2. If we now call forward-sexp, tree-sitter thinks the point is still in =
the node #?(=E2=80=A6), so it wants to move after the (inc 1) and before =
the outer closing paren. syntax-ppss simply moves to after the outer =
paren. And because tree-sitter thinks we are still in the node, it =
rejects syntax-ppss=E2=80=99s suggestion, because of the heuristic that =
forward-sexp shouldn=E2=80=99t move out of the parent node. So now =
we=E2=80=99re back to 1.
So far I don=E2=80=99t have a good idea on how to tweak the heuristics =
to make this edge case work. Juri, WDYT?
PS, why does clojure-ts-mode use backward-up-list + forward-sexp, =
instead of up-list?
#?(:clj (inc 1))
|
point at here
#?(:clj (inc 1))
| |
| beginning of list according to syntax-ppss
|
beginning of list according to tree-sitter
#?(:clj (inc 1))
|
point at here
#?(:clj (inc 1))
||
|forward-sexp according to syntax-ppss
|
forward-sexp according to tree-sitter
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.Received: (at 81861) by debbugs.gnu.org; 26 Sep 2026 11:12:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Sep 26 07:12:07 2026 Received: from localhost ([127.0.0.1]:37914 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1xAQJz-0005If-Qm for submit <at> debbugs.gnu.org; Sat, 26 Sep 2026 07:12:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50778) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1xAQJp-0005Fo-BT for 81861 <at> debbugs.gnu.org; Sat, 26 Sep 2026 07:11:57 -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 1xAQJj-0003OI-Oc; Sat, 26 Sep 2026 07:11:43 -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=nCQyAFDqjbNzqX8hGHwfuFm3FUETtObzXBzDNVtWGNI=; b=qDtRbOcVTmj3 aRMBIERBhp119hYHqPVDaVglDwtDYtdPeks05WZS/+qZTb27dRXMU0zrWFfmS+zSUKEovd/D2b5bS amnS01Vd9vrT1Pz24to7vtG1g7sBYMpQJWinbPcDqNOxpxQyRT/pjLSv2XJkvYf8HVxN707R/eJNd S1kPfaY482K03URzpaBHa0NdP2RAu9Cb57lzBuFHHp9U5oxd2Rm5TwuGkWtDXdtz6f1YRcw+56Wfm UT0q9LKS+DmF8DO3KTKZB1/SigS+eSsyFlxPUnZJNjMI0VWX5e1mKOPOFp4NNmyLL/paAYSEVGlAr dem1RFwmXQh+UulBuHsEyg==; Date: Sat, 26 Sep 2026 14:11:32 +0300 Message-Id: <865wzs6zdn.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Yuan Fu <casouri@HIDDEN> In-Reply-To: <86cxuh1ivt.fsf@HIDDEN> (message from Eli Zaretskii on Sun, 13 Sep 2026 14:38:14 +0300) Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental reparse, eating all memory in my real setup References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> <86cxuh1ivt.fsf@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 81861 Cc: 81861 <at> debbugs.gnu.org, blak3mill3r@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 (---) Ping! Yuan, could you please chime in? > Cc: 81861 <at> debbugs.gnu.org > Date: Sun, 13 Sep 2026 14:38:14 +0300 > From: Eli Zaretskii <eliz@HIDDEN> > > > From: Blake Miller <blak3mill3r@HIDDEN> > > Date: Sun, 13 Sep 2026 09:47:45 +0000 > > > > Hello. I ran into this problem because I'm using bleeding-edge emacs and > > clojure-ts-mode+CIDER every day. > > > > I've done my best to nail it down. > > > > Here is a minimal reproduction which is deterministic and > > self-contained (no CIDER, just clojure-ts-mode and tree-sitter-clojure): > > > > https://gitlab.com/blak3mill3r/emacs-treesit-runaway-allocation > > > > To reproduce: > > > > git clone --recurse-submodules git@HIDDEN:blak3mill3r/emacs-treesit-runaway-allocation > > cd emacs-treesit-runaway-allocation > > make grammar && make repro > > > > The README.org documents the problem in detail. It will spin the cpu and > > time out. In my real emacs setup it's caused by CIDER doing dynamic font > > lock with clojure-ts-mode > > > > CIDER dynamic font-lock wraps font-lock-fontify-region-function and > > calls backward-up-list + forward-sexp (treesit-up-list / > > treesit-forward-sexp-list) on the dirty tree every fontify. > > > > That doesn't just spin the CPU, it also eats all the system memory and > > emacs is killed violently, which was a bummer when editing a clojure > > buffer. It is subtle enough that it only happened occasionally, it > > didn't prevent me from continuing to use this binary for work, but once > > in a while it would happen, so I dug into it. > > > > There's a simple enough workaround, which is: > > > > (setq cider-font-lock-dynamically nil) > > > > but then I don't get to see all the pretty colors! > > Thanks. > > Yuan, can you please look into this? > > > In GNU Emacs 32.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version > > 3.24.38, cairo version 1.16.0) of 2026-09-12 built on bwip > > Repository revision: ab8cf10227346a5705d571ef1fa8ee7e3ae515d8 > > Repository branch: HEAD > > Windowing system distributor 'The X.Org Foundation', version 11.0.12101007 > > System Description: Debian GNU/Linux 12 (bookworm) > > > > Configured using: > > 'configure --with-tree-sitter --with-native-compilation' > > > > Configured features: > > ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG > > LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY > > INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF > > TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM > > XRANDR GTK3 ZLIB > > > > Important settings: > > value of $LANG: en_US.UTF-8 > > value of $XMODIFIERS: @im=ibus > > locale-coding-system: utf-8-unix > > > > Major mode: Org > > > > Minor modes in effect: > > windmove-mode: t > > global-git-commit-mode: t > > server-mode: t > > jarchive-mode: t > > global-evil-collection-unimpaired-mode: t > > evil-collection-unimpaired-mode: t > > evil-mode: t > > evil-local-mode: t > > super-save-mode: t > > marginalia-mode: t > > vertico-mode: t > > global-auto-revert-mode: t > > general-override-mode: t > > elpaca-use-package-mode: t > > override-global-mode: t > > global-eldoc-mode: t > > show-paren-mode: t > > electric-indent-mode: t > > mouse-wheel-mode: t > > file-name-shadow-mode: t > > global-font-lock-mode: t > > font-lock-mode: t > > blink-cursor-mode: t > > minibuffer-nonselected-mode: t > > minibuffer-regexp-mode: t > > size-indication-mode: t > > column-number-mode: t > > line-number-mode: t > > visual-line-mode: t > > transient-mark-mode: t > > auto-composition-mode: t > > auto-encryption-mode: t > > auto-compression-mode: t > > > > Load-path shadows: > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-maxima hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-maxima > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org hides > > /usr/local/share/emacs/32.0.50/lisp/org/org > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-gnuplot hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-gnuplot > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-clojure hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-clojure > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-element > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-list hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-list > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-pcomplete hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-pcomplete > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-agenda hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-agenda > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ruby hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-ruby > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mouse hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-mouse > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-java hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-java > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-crypt hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-crypt > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-table hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-table > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-keys hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-keys > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold-core hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-fold-core > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-plot hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-plot > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-refile hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-refile > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sql hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-sql > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-entities hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-entities > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-protocol hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-protocol > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-table hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-table > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-w3m hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-w3m > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-forth hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-forth > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-colview hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-colview > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-man hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-man > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-koma-letter hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-koma-letter > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-inlinetask hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-inlinetask > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-doi hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-doi > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-C hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-C > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-css hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-css > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macro hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-macro > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-R hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-R > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-core hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-core > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-js hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-js > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-icalendar hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-icalendar > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-tangle hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-tangle > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-natbib hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc-natbib > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-feed hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-feed > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macs hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-macs > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-habit hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-habit > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-archive hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-archive > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-ctags hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-ctags > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-cycle hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-cycle > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-comint hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-comint > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-footnote hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-footnote > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-org hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-org > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-biblatex hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc-biblatex > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-scheme hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-scheme > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ref hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-ref > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-haskell hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-haskell > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach-git hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-attach-git > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-octave hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-octave > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-compat hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-compat > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ditaa hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-ditaa > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-num hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-num > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-info hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-info > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-attach > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lisp hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-lisp > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-beamer hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-beamer > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-perl hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-perl > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-lint hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-lint > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-gnus hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-gnus > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-emacs-lisp hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-emacs-lisp > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eww hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-eww > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ocaml hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-ocaml > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-fortran hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-fortran > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-exp hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-exp > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element-ast hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-element-ast > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-latex hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-latex > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-loaddefs hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-loaddefs > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-texinfo hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-texinfo > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-clock hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-clock > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-irc hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-irc > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-fold > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-basic hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc-basic > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-julia hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-julia > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-datetree hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-datetree > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mobile hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-mobile > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-indent hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-indent > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-version hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-version > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-matlab hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-matlab > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-man hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-man > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-csl hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc-csl > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-latex hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-latex > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-makefile hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-makefile > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-docview hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-docview > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-publish hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-publish > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-dot hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-dot > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-faces hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-faces > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-org hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-org > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-duration hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-duration > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-rmail hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-rmail > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sqlite hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-sqlite > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eshell hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-eshell > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-mhe hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-mhe > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lob hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-lob > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-id hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-id > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-processing hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-processing > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-persist hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-persist > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eval hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-eval > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-tempo hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-tempo > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-odt hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-odt > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-shell hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-shell > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-python hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-python > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lua hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-lua > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-csharp hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-csharp > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-plantuml hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-plantuml > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sed hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-sed > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bbdb hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-bbdb > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-ascii hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-ascii > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-src hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-src > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bibtex hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-bibtex > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-timer hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-timer > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-screen hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-screen > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-html hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-html > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-capture hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-capture > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-goto hides > > /usr/local/share/emacs/32.0.50/lisp/org/org-goto > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-awk hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-awk > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-calc hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-calc > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-groovy hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-groovy > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sass hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-sass > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-md hides > > /usr/local/share/emacs/32.0.50/lisp/org/ox-md > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lilypond hides > > /usr/local/share/emacs/32.0.50/lisp/org/ob-lilypond > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eshell hides > > /usr/local/share/emacs/32.0.50/lisp/org/ol-eshell > > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-bibtex hides > > /usr/local/share/emacs/32.0.50/lisp/org/oc-bibtex > > > > Features: > > (shadow sort mail-extr emacsbug windmove help-fns radix-tree > > minibuf-eldef two-column vc-hg vc-bzr vc-src vc-sccs vc-cvs vc-rcs > > evil-collection-log-view log-view bug-reference vertico-sort whitespace > > elec-pair company-oddmuse company-keywords company-etags company-gtags > > company-dabbrev-code company-dabbrev company-files company-clang > > company-capf company-cmake company-semantic company-template > > company-bbdb oc-basic ol-eww evil-collection-eww eww vtable url-queue > > mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu > > mml2015 mm-view mml-smime smime gnutls dig gnus-sum gnus-group gnus-undo > > gnus-start gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec > > gnus-int gnus-range evil-collection-message message sendmail yank-media > > rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 > > rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win > > evil-collection-gnus gnus nnheader gnus-util mail-utils range mm-util > > mail-prsvr ol-docview evil-collection-doc-view doc-view jka-compr > > evil-collection-image image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m > > ol-doi org-link-doi evil-collection-flycheck flycheck haskell-mode > > haskell-cabal haskell-utils haskell-font-lock haskell-indentation > > haskell-string haskell-sort-imports haskell-lexeme haskell-align-imports > > haskell-complete-module haskell-ghc-support flymake-proc etags dabbrev > > haskell-customize yasnippet-snippets-autoloads yasnippet-snippets > > flycheck-autoloads haskell-mode-autoloads cfg-rust rust-ts-mode > > c-ts-common cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles > > cc-align cc-engine cc-vars cc-defs cfg-haskell cfg-lisp-packages > > nv-transient lisp-format-butler lisp-ss avy puni cider-macroexpansion > > rainbow-delimiters avy-autoloads puni-autoloads clj-refactor-autoloads > > clj-refactor cap-words superword subword hydra lv inflections > > mc-hide-unmatched-lines-mode mc-mark-more sgml-mode facemenu > > mc-cycle-cursors multiple-cursors-core paredit yasnippet cider-autoloads > > evil-collection-cider cider evil-collection-package-menu package > > url-handlers package-activate cider-debug cider-browse-ns cider-mode > > cider-xref-backend cider-find cider-completion cider-profile > > cider-inspector cider-eval cider-connection cider-repl-history pulse > > cider-repl cider-test cider-resolve cider-compilation cider-stacktrace > > cider-overlays cider-doc cider-browse-spec cider-clojuredocs cider-popup > > cider-jack-in cider-inspiration cider-endpoint tramp-sh cider-eldoc > > cider-docstring shr pixel-fill kinsoku url-file puny svg xml dom > > cider-cljs cider-client cider-common cider-completion-context > > cider-session cider-util sesman-browser sesman vc nrepl-client > > nrepl-bencode nrepl-dict queue spinner clojure-mode lisp-mnt parseedn > > parseclj-parser parseclj-lex parseclj-alist sesman-autoloads > > spinner-autoloads queue-autoloads hydra-autoloads lv-autoloads > > parseedn-autoloads parseclj-autoloads multiple-cursors-autoloads > > paredit-autoloads yasnippet-autoloads inflections-autoloads > > clojure-mode-autoloads rainbow-delimiters-autoloads clojure-ts-mode > > align magit-bookmark evil-collection-magit magit-submodule magit-blame > > magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch > > magit-clone magit-remote magit-commit magit-sequence magit-notes > > magit-worktree magit-tag magit-merge magit-branch magit-reset > > magit-files magit-refs magit-status magit evil-collection-epa epa > > derived epg rfc6068 epg-config evil-collection-magit-repos magit-repos > > magit-apply magit-wip magit-log magit-diff which-func > > evil-collection-smerge-mode smerge-mode git-commit > > evil-collection-log-edit log-edit pcvs-util add-log magit-core > > magit-autorevert magit-margin magit-transient magit-process > > evil-collection-with-editor with-editor magit-mode browse-url benchmark > > magit-git server magit-base browse-at-remote evil-collection-vc-git > > vc-git vc-dispatcher f evil-collection-org-roam org-roam-migrate > > org-roam-log org-roam-mode org-roam-capture org-roam-id org-roam-node > > crm org-roam-db org-roam-utils org-roam-compat org-roam org-capture > > org-attach emacsql-sqlite emacsql emacsql-compiler > > evil-collection-magit-section magit-section cursor-sensor transient > > llama cond-let ob-sql ob-clojure evil-collection-org embark-org > > org-element org-persist org-id org-refile avl-tree org ob ob-tangle > > ob-ref ob-lob ob-table ob-exp org-macro org-src > > evil-collection-sh-script sh-script smie treesit executable ob-comint > > org-element-ast inline org-pcomplete org-list org-footnote org-faces > > org-entities evil-collection-outline noutline outline ob-emacs-lisp > > ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys > > oc org-compat evil-collection-calendar cal-menu calendar cal-loaddefs > > org-version org-macs evil-collection-vterm vterm tramp-cache time-stamp > > tramp trampver tramp-integration files-x tramp-message tramp-compat xdg > > parse-time iso8601 time-date format-spec tramp-loaddefs face-remap > > evil-collection-term term disp-table shell pcomplete ehelp vterm-module > > term/xterm xterm evil-collection-wgrep wgrep jarchive > > evil-collection-arc-mode arc-mode archive-mode projectile fileloop > > generator evil-collection-grep grep ibuf-ext evil-collection-ag ag > > vc-svn find-dired dash evil-collection-dired dired dired-loaddefs > > evil-collection-ibuffer ibuffer ibuffer-loaddefs > > evil-collection-unimpaired evil-collection-xref evil-collection-vertico > > evil-collection-tabulated-list evil-collection-tab-bar > > evil-collection-simple evil-collection-replace > > evil-collection-process-menu evil-collection-minibuffer > > evil-collection-kmacro evil-collection-indent evil-collection-imenu > > evil-collection-help evil-collection-flymake evil-collection-ert > > evil-collection-embark evil-collection-elisp-mode evil-collection-eldoc > > evil-collection-elpaca evil-collection-eglot evil-collection-diff-mode > > evil-collection-debug evil-collection-consult evil-collection-compile > > evil-collection-company evil-collection-comint evil-collection-buff-menu > > evil-collection-bookmark evil-collection annalist evil evil-integration > > evil-maps evil-commands reveal evil-jumps evil-command-window evil-types > > evil-search evil-ex evil-macros evil-repeat evil-states evil-core > > evil-common rect evil-vars company super-save edmacro kmacro marginalia > > embark-consult consult bookmark embark ffap vertico orderless compat > > solarized-dark-theme solarized solarized-faces color amx s > > clojure-ts-mode-autoloads magit-autoloads with-editor-autoloads > > browse-at-remote-autoloads f-autoloads org-roam-autoloads > > magit-section-autoloads llama-autoloads cond-let-autoloads > > emacsql-autoloads org-loaddefs vterm-autoloads wgrep-autoloads > > jarchive-autoloads projectile-autoloads ag-autoloads dash-autoloads > > evil-collection-autoloads annalist-autoloads evil-autoloads > > goto-chg-autoloads company-autoloads posframe-autoloads > > super-save-autoloads marginalia-autoloads embark-consult-autoloads > > consult-autoloads embark-autoloads vertico-autoloads orderless-autoloads > > solarized-dark-theme-autoloads amx-autoloads s-autoloads desktop > > frameset eglot tree-widget wid-edit external-completion jsonrpc xref > > flymake thingatpt project diff diff-mode track-changes ert pp ewoc debug > > backtrace find-func compile text-property-search comint ansi-osc > > ansi-color ring pcase imenu autorevert filenotify elpaca-menu-elpa comp > > comp-cstr warnings comp-run comp-common rx general general-autoloads > > elpaca-menu-melpa elpaca-menu-org cl-extra help-mode elpaca-use-package > > use-package use-package-ensure use-package-delight use-package-diminish > > use-package-bind-key bind-key easy-mmode use-package-core > > elpaca-use-package-autoloads hl-line display-line-numbers elpaca-log > > elpaca-ui url url-proxy url-privacy url-expand url-methods url-history > > url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source > > cl-seq eieio eieio-core cl-macs icons password-cache json subr-x > > mule-util map url-vars mailcap byte-opt bytecomp byte-compile elpaca-git > > elpaca elpaca-process elpaca-autoloads early-init savehist gv > > els-bootstrap cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc > > paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode > > mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd > > fontset image regexp-opt fringe tabulated-list replace newcomment > > text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow > > isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax > > font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic > > indonesian philippine cham georgian utf-8-lang misc-lang vietnamese > > tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek > > romanian slovak czech european ethiopic indian cyrillic chinese > > composite emoji-zwj charscript charprop case-table epa-hook > > jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs > > theme-loaddefs faces cus-face macroexp files window text-properties > > overlay sha1 md5 base64 format env code-pages mule custom widget keymap > > hashtable-print-readable backquote threads dbusbind inotify lcms2 > > dynamic-setting system-font-setting font-render-setting cairo gtk > > x-toolkit xinput2 x multi-tty move-toolbar make-network-process > > tty-child-frames native-compile emacs) > > > > Memory information: > > ((conses 16 1150076 2010881) (symbols 48 62653 228) > > (strings 32 360082 119023) (string-bytes 1 9357199) > > (vectors 16 98297) (vector-slots 8 1573186 289693) > > (floats 8 746 13264) (intervals 56 2257 1559) (buffers 1064 34)) > > > >
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.Received: (at 81861) by debbugs.gnu.org; 13 Sep 2026 11:38:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 13 07:38:34 2026 Received: from localhost ([127.0.0.1]:35545 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1x5iXW-0000iR-Cr for submit <at> debbugs.gnu.org; Sun, 13 Sep 2026 07:38:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42316) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1x5iXR-0000hv-4B for 81861 <at> debbugs.gnu.org; Sun, 13 Sep 2026 07:38:29 -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 1x5iXL-0002ew-PV; Sun, 13 Sep 2026 07:38: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=VpEnPrOB0zPkY+vBtmTzehNMMJWkuMu+E6dHrSn3Ysw=; b=AkWXBaUmCJlX vNsG48ZdFu8D7xB7495CSrgjZ5Oz17TwNodc9DV2IwDXYtoW1AbddHwvvQcR1LtxoD+LlIDsPxYtC J/rW87PxbVHEntRNAWTgAUOX+VDT+bbE3eWyAkQ0TkeRzcHUcrEyqL24LHzb3yCQlRR+iYwd76D2I Emo5Hp80F3FI1iic/NeIG7beKOFtJ2IP+/Oj/ktpFoJpeA2lPeg2XiOsbMgBko+w+1b/cd0uf90j3 j0Y6QEE+Y+HXn/rEXXC2heUt60JWOcu0PLC3ov8NBtJ/eAV8aogt/0K3+XOoc8a6BXCEsx4VFmrnw 2E9vjinYzA7XzfQ4XRl5IQ==; Date: Sun, 13 Sep 2026 14:38:14 +0300 Message-Id: <86cxuh1ivt.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Blake Miller <blak3mill3r@HIDDEN>, Yuan Fu <casouri@HIDDEN> In-Reply-To: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> (message from Blake Miller on Sun, 13 Sep 2026 09:47:45 +0000) Subject: Re: bug#81861: 32.0.50; treesit nav runs away after incremental reparse, eating all memory in my real setup References: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 81861 Cc: 81861 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: Blake Miller <blak3mill3r@HIDDEN> > Date: Sun, 13 Sep 2026 09:47:45 +0000 > > Hello. I ran into this problem because I'm using bleeding-edge emacs and > clojure-ts-mode+CIDER every day. > > I've done my best to nail it down. > > Here is a minimal reproduction which is deterministic and > self-contained (no CIDER, just clojure-ts-mode and tree-sitter-clojure): > > https://gitlab.com/blak3mill3r/emacs-treesit-runaway-allocation > > To reproduce: > > git clone --recurse-submodules git@HIDDEN:blak3mill3r/emacs-treesit-runaway-allocation > cd emacs-treesit-runaway-allocation > make grammar && make repro > > The README.org documents the problem in detail. It will spin the cpu and > time out. In my real emacs setup it's caused by CIDER doing dynamic font > lock with clojure-ts-mode > > CIDER dynamic font-lock wraps font-lock-fontify-region-function and > calls backward-up-list + forward-sexp (treesit-up-list / > treesit-forward-sexp-list) on the dirty tree every fontify. > > That doesn't just spin the CPU, it also eats all the system memory and > emacs is killed violently, which was a bummer when editing a clojure > buffer. It is subtle enough that it only happened occasionally, it > didn't prevent me from continuing to use this binary for work, but once > in a while it would happen, so I dug into it. > > There's a simple enough workaround, which is: > > (setq cider-font-lock-dynamically nil) > > but then I don't get to see all the pretty colors! Thanks. Yuan, can you please look into this? > In GNU Emacs 32.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version > 3.24.38, cairo version 1.16.0) of 2026-09-12 built on bwip > Repository revision: ab8cf10227346a5705d571ef1fa8ee7e3ae515d8 > Repository branch: HEAD > Windowing system distributor 'The X.Org Foundation', version 11.0.12101007 > System Description: Debian GNU/Linux 12 (bookworm) > > Configured using: > 'configure --with-tree-sitter --with-native-compilation' > > Configured features: > ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG > LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY > INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF > TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM > XRANDR GTK3 ZLIB > > Important settings: > value of $LANG: en_US.UTF-8 > value of $XMODIFIERS: @im=ibus > locale-coding-system: utf-8-unix > > Major mode: Org > > Minor modes in effect: > windmove-mode: t > global-git-commit-mode: t > server-mode: t > jarchive-mode: t > global-evil-collection-unimpaired-mode: t > evil-collection-unimpaired-mode: t > evil-mode: t > evil-local-mode: t > super-save-mode: t > marginalia-mode: t > vertico-mode: t > global-auto-revert-mode: t > general-override-mode: t > elpaca-use-package-mode: t > override-global-mode: t > global-eldoc-mode: t > show-paren-mode: t > electric-indent-mode: t > mouse-wheel-mode: t > file-name-shadow-mode: t > global-font-lock-mode: t > font-lock-mode: t > blink-cursor-mode: t > minibuffer-nonselected-mode: t > minibuffer-regexp-mode: t > size-indication-mode: t > column-number-mode: t > line-number-mode: t > visual-line-mode: t > transient-mark-mode: t > auto-composition-mode: t > auto-encryption-mode: t > auto-compression-mode: t > > Load-path shadows: > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-maxima hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-maxima > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org hides > /usr/local/share/emacs/32.0.50/lisp/org/org > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-gnuplot hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-gnuplot > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-clojure hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-clojure > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element hides > /usr/local/share/emacs/32.0.50/lisp/org/org-element > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-list hides > /usr/local/share/emacs/32.0.50/lisp/org/org-list > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-pcomplete hides > /usr/local/share/emacs/32.0.50/lisp/org/org-pcomplete > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-agenda hides > /usr/local/share/emacs/32.0.50/lisp/org/org-agenda > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ruby hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-ruby > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mouse hides > /usr/local/share/emacs/32.0.50/lisp/org/org-mouse > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-java hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-java > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-crypt hides > /usr/local/share/emacs/32.0.50/lisp/org/org-crypt > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-table hides > /usr/local/share/emacs/32.0.50/lisp/org/org-table > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-keys hides > /usr/local/share/emacs/32.0.50/lisp/org/org-keys > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold-core hides > /usr/local/share/emacs/32.0.50/lisp/org/org-fold-core > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-plot hides > /usr/local/share/emacs/32.0.50/lisp/org/org-plot > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-refile hides > /usr/local/share/emacs/32.0.50/lisp/org/org-refile > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sql hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-sql > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-entities hides > /usr/local/share/emacs/32.0.50/lisp/org/org-entities > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-protocol hides > /usr/local/share/emacs/32.0.50/lisp/org/org-protocol > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-table hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-table > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-w3m hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-w3m > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-forth hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-forth > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-colview hides > /usr/local/share/emacs/32.0.50/lisp/org/org-colview > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-man hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-man > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox hides > /usr/local/share/emacs/32.0.50/lisp/org/ox > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-koma-letter hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-koma-letter > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-inlinetask hides > /usr/local/share/emacs/32.0.50/lisp/org/org-inlinetask > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-doi hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-doi > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-C hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-C > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-css hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-css > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macro hides > /usr/local/share/emacs/32.0.50/lisp/org/org-macro > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-R hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-R > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-core hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-core > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-js hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-js > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob hides > /usr/local/share/emacs/32.0.50/lisp/org/ob > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-icalendar hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-icalendar > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-tangle hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-tangle > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-natbib hides > /usr/local/share/emacs/32.0.50/lisp/org/oc-natbib > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-feed hides > /usr/local/share/emacs/32.0.50/lisp/org/org-feed > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macs hides > /usr/local/share/emacs/32.0.50/lisp/org/org-macs > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-habit hides > /usr/local/share/emacs/32.0.50/lisp/org/org-habit > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-archive hides > /usr/local/share/emacs/32.0.50/lisp/org/org-archive > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-ctags hides > /usr/local/share/emacs/32.0.50/lisp/org/org-ctags > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-cycle hides > /usr/local/share/emacs/32.0.50/lisp/org/org-cycle > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-comint hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-comint > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-footnote hides > /usr/local/share/emacs/32.0.50/lisp/org/org-footnote > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-org hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-org > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-biblatex hides > /usr/local/share/emacs/32.0.50/lisp/org/oc-biblatex > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-scheme hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-scheme > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ref hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-ref > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-haskell hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-haskell > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach-git hides > /usr/local/share/emacs/32.0.50/lisp/org/org-attach-git > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-octave hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-octave > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-compat hides > /usr/local/share/emacs/32.0.50/lisp/org/org-compat > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ditaa hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-ditaa > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-num hides > /usr/local/share/emacs/32.0.50/lisp/org/org-num > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-info hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-info > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach hides > /usr/local/share/emacs/32.0.50/lisp/org/org-attach > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lisp hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-lisp > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-beamer hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-beamer > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-perl hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-perl > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-lint hides > /usr/local/share/emacs/32.0.50/lisp/org/org-lint > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-gnus hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-gnus > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-emacs-lisp hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-emacs-lisp > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eww hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-eww > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ocaml hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-ocaml > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-fortran hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-fortran > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-exp hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-exp > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element-ast hides > /usr/local/share/emacs/32.0.50/lisp/org/org-element-ast > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-latex hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-latex > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-loaddefs hides > /usr/local/share/emacs/32.0.50/lisp/org/org-loaddefs > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-texinfo hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-texinfo > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-clock hides > /usr/local/share/emacs/32.0.50/lisp/org/org-clock > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-irc hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-irc > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc hides > /usr/local/share/emacs/32.0.50/lisp/org/oc > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold hides > /usr/local/share/emacs/32.0.50/lisp/org/org-fold > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-basic hides > /usr/local/share/emacs/32.0.50/lisp/org/oc-basic > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-julia hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-julia > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-datetree hides > /usr/local/share/emacs/32.0.50/lisp/org/org-datetree > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mobile hides > /usr/local/share/emacs/32.0.50/lisp/org/org-mobile > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-indent hides > /usr/local/share/emacs/32.0.50/lisp/org/org-indent > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-version hides > /usr/local/share/emacs/32.0.50/lisp/org/org-version > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-matlab hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-matlab > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-man hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-man > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-csl hides > /usr/local/share/emacs/32.0.50/lisp/org/oc-csl > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-latex hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-latex > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-makefile hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-makefile > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-docview hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-docview > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-publish hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-publish > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol hides > /usr/local/share/emacs/32.0.50/lisp/org/ol > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-dot hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-dot > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-faces hides > /usr/local/share/emacs/32.0.50/lisp/org/org-faces > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-org hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-org > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-duration hides > /usr/local/share/emacs/32.0.50/lisp/org/org-duration > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-rmail hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-rmail > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sqlite hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-sqlite > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eshell hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-eshell > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-mhe hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-mhe > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lob hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-lob > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-id hides > /usr/local/share/emacs/32.0.50/lisp/org/org-id > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-processing hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-processing > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-persist hides > /usr/local/share/emacs/32.0.50/lisp/org/org-persist > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eval hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-eval > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-tempo hides > /usr/local/share/emacs/32.0.50/lisp/org/org-tempo > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-odt hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-odt > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-shell hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-shell > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-python hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-python > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lua hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-lua > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-csharp hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-csharp > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-plantuml hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-plantuml > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sed hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-sed > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bbdb hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-bbdb > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-ascii hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-ascii > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-src hides > /usr/local/share/emacs/32.0.50/lisp/org/org-src > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bibtex hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-bibtex > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-timer hides > /usr/local/share/emacs/32.0.50/lisp/org/org-timer > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-screen hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-screen > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-html hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-html > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-capture hides > /usr/local/share/emacs/32.0.50/lisp/org/org-capture > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-goto hides > /usr/local/share/emacs/32.0.50/lisp/org/org-goto > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-awk hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-awk > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-calc hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-calc > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-groovy hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-groovy > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sass hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-sass > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-md hides > /usr/local/share/emacs/32.0.50/lisp/org/ox-md > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lilypond hides > /usr/local/share/emacs/32.0.50/lisp/org/ob-lilypond > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eshell hides > /usr/local/share/emacs/32.0.50/lisp/org/ol-eshell > /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-bibtex hides > /usr/local/share/emacs/32.0.50/lisp/org/oc-bibtex > > Features: > (shadow sort mail-extr emacsbug windmove help-fns radix-tree > minibuf-eldef two-column vc-hg vc-bzr vc-src vc-sccs vc-cvs vc-rcs > evil-collection-log-view log-view bug-reference vertico-sort whitespace > elec-pair company-oddmuse company-keywords company-etags company-gtags > company-dabbrev-code company-dabbrev company-files company-clang > company-capf company-cmake company-semantic company-template > company-bbdb oc-basic ol-eww evil-collection-eww eww vtable url-queue > mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu > mml2015 mm-view mml-smime smime gnutls dig gnus-sum gnus-group gnus-undo > gnus-start gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec > gnus-int gnus-range evil-collection-message message sendmail yank-media > rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 > rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win > evil-collection-gnus gnus nnheader gnus-util mail-utils range mm-util > mail-prsvr ol-docview evil-collection-doc-view doc-view jka-compr > evil-collection-image image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m > ol-doi org-link-doi evil-collection-flycheck flycheck haskell-mode > haskell-cabal haskell-utils haskell-font-lock haskell-indentation > haskell-string haskell-sort-imports haskell-lexeme haskell-align-imports > haskell-complete-module haskell-ghc-support flymake-proc etags dabbrev > haskell-customize yasnippet-snippets-autoloads yasnippet-snippets > flycheck-autoloads haskell-mode-autoloads cfg-rust rust-ts-mode > c-ts-common cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles > cc-align cc-engine cc-vars cc-defs cfg-haskell cfg-lisp-packages > nv-transient lisp-format-butler lisp-ss avy puni cider-macroexpansion > rainbow-delimiters avy-autoloads puni-autoloads clj-refactor-autoloads > clj-refactor cap-words superword subword hydra lv inflections > mc-hide-unmatched-lines-mode mc-mark-more sgml-mode facemenu > mc-cycle-cursors multiple-cursors-core paredit yasnippet cider-autoloads > evil-collection-cider cider evil-collection-package-menu package > url-handlers package-activate cider-debug cider-browse-ns cider-mode > cider-xref-backend cider-find cider-completion cider-profile > cider-inspector cider-eval cider-connection cider-repl-history pulse > cider-repl cider-test cider-resolve cider-compilation cider-stacktrace > cider-overlays cider-doc cider-browse-spec cider-clojuredocs cider-popup > cider-jack-in cider-inspiration cider-endpoint tramp-sh cider-eldoc > cider-docstring shr pixel-fill kinsoku url-file puny svg xml dom > cider-cljs cider-client cider-common cider-completion-context > cider-session cider-util sesman-browser sesman vc nrepl-client > nrepl-bencode nrepl-dict queue spinner clojure-mode lisp-mnt parseedn > parseclj-parser parseclj-lex parseclj-alist sesman-autoloads > spinner-autoloads queue-autoloads hydra-autoloads lv-autoloads > parseedn-autoloads parseclj-autoloads multiple-cursors-autoloads > paredit-autoloads yasnippet-autoloads inflections-autoloads > clojure-mode-autoloads rainbow-delimiters-autoloads clojure-ts-mode > align magit-bookmark evil-collection-magit magit-submodule magit-blame > magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch > magit-clone magit-remote magit-commit magit-sequence magit-notes > magit-worktree magit-tag magit-merge magit-branch magit-reset > magit-files magit-refs magit-status magit evil-collection-epa epa > derived epg rfc6068 epg-config evil-collection-magit-repos magit-repos > magit-apply magit-wip magit-log magit-diff which-func > evil-collection-smerge-mode smerge-mode git-commit > evil-collection-log-edit log-edit pcvs-util add-log magit-core > magit-autorevert magit-margin magit-transient magit-process > evil-collection-with-editor with-editor magit-mode browse-url benchmark > magit-git server magit-base browse-at-remote evil-collection-vc-git > vc-git vc-dispatcher f evil-collection-org-roam org-roam-migrate > org-roam-log org-roam-mode org-roam-capture org-roam-id org-roam-node > crm org-roam-db org-roam-utils org-roam-compat org-roam org-capture > org-attach emacsql-sqlite emacsql emacsql-compiler > evil-collection-magit-section magit-section cursor-sensor transient > llama cond-let ob-sql ob-clojure evil-collection-org embark-org > org-element org-persist org-id org-refile avl-tree org ob ob-tangle > ob-ref ob-lob ob-table ob-exp org-macro org-src > evil-collection-sh-script sh-script smie treesit executable ob-comint > org-element-ast inline org-pcomplete org-list org-footnote org-faces > org-entities evil-collection-outline noutline outline ob-emacs-lisp > ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys > oc org-compat evil-collection-calendar cal-menu calendar cal-loaddefs > org-version org-macs evil-collection-vterm vterm tramp-cache time-stamp > tramp trampver tramp-integration files-x tramp-message tramp-compat xdg > parse-time iso8601 time-date format-spec tramp-loaddefs face-remap > evil-collection-term term disp-table shell pcomplete ehelp vterm-module > term/xterm xterm evil-collection-wgrep wgrep jarchive > evil-collection-arc-mode arc-mode archive-mode projectile fileloop > generator evil-collection-grep grep ibuf-ext evil-collection-ag ag > vc-svn find-dired dash evil-collection-dired dired dired-loaddefs > evil-collection-ibuffer ibuffer ibuffer-loaddefs > evil-collection-unimpaired evil-collection-xref evil-collection-vertico > evil-collection-tabulated-list evil-collection-tab-bar > evil-collection-simple evil-collection-replace > evil-collection-process-menu evil-collection-minibuffer > evil-collection-kmacro evil-collection-indent evil-collection-imenu > evil-collection-help evil-collection-flymake evil-collection-ert > evil-collection-embark evil-collection-elisp-mode evil-collection-eldoc > evil-collection-elpaca evil-collection-eglot evil-collection-diff-mode > evil-collection-debug evil-collection-consult evil-collection-compile > evil-collection-company evil-collection-comint evil-collection-buff-menu > evil-collection-bookmark evil-collection annalist evil evil-integration > evil-maps evil-commands reveal evil-jumps evil-command-window evil-types > evil-search evil-ex evil-macros evil-repeat evil-states evil-core > evil-common rect evil-vars company super-save edmacro kmacro marginalia > embark-consult consult bookmark embark ffap vertico orderless compat > solarized-dark-theme solarized solarized-faces color amx s > clojure-ts-mode-autoloads magit-autoloads with-editor-autoloads > browse-at-remote-autoloads f-autoloads org-roam-autoloads > magit-section-autoloads llama-autoloads cond-let-autoloads > emacsql-autoloads org-loaddefs vterm-autoloads wgrep-autoloads > jarchive-autoloads projectile-autoloads ag-autoloads dash-autoloads > evil-collection-autoloads annalist-autoloads evil-autoloads > goto-chg-autoloads company-autoloads posframe-autoloads > super-save-autoloads marginalia-autoloads embark-consult-autoloads > consult-autoloads embark-autoloads vertico-autoloads orderless-autoloads > solarized-dark-theme-autoloads amx-autoloads s-autoloads desktop > frameset eglot tree-widget wid-edit external-completion jsonrpc xref > flymake thingatpt project diff diff-mode track-changes ert pp ewoc debug > backtrace find-func compile text-property-search comint ansi-osc > ansi-color ring pcase imenu autorevert filenotify elpaca-menu-elpa comp > comp-cstr warnings comp-run comp-common rx general general-autoloads > elpaca-menu-melpa elpaca-menu-org cl-extra help-mode elpaca-use-package > use-package use-package-ensure use-package-delight use-package-diminish > use-package-bind-key bind-key easy-mmode use-package-core > elpaca-use-package-autoloads hl-line display-line-numbers elpaca-log > elpaca-ui url url-proxy url-privacy url-expand url-methods url-history > url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source > cl-seq eieio eieio-core cl-macs icons password-cache json subr-x > mule-util map url-vars mailcap byte-opt bytecomp byte-compile elpaca-git > elpaca elpaca-process elpaca-autoloads early-init savehist gv > els-bootstrap cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc > paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode > mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd > fontset image regexp-opt fringe tabulated-list replace newcomment > text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow > isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax > font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic > indonesian philippine cham georgian utf-8-lang misc-lang vietnamese > tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek > romanian slovak czech european ethiopic indian cyrillic chinese > composite emoji-zwj charscript charprop case-table epa-hook > jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs > theme-loaddefs faces cus-face macroexp files window text-properties > overlay sha1 md5 base64 format env code-pages mule custom widget keymap > hashtable-print-readable backquote threads dbusbind inotify lcms2 > dynamic-setting system-font-setting font-render-setting cairo gtk > x-toolkit xinput2 x multi-tty move-toolbar make-network-process > tty-child-frames native-compile emacs) > > Memory information: > ((conses 16 1150076 2010881) (symbols 48 62653 228) > (strings 32 360082 119023) (string-bytes 1 9357199) > (vectors 16 98297) (vector-slots 8 1573186 289693) > (floats 8 746 13264) (intervals 56 2257 1559) (buffers 1064 34))
bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.Received: (at submit) by debbugs.gnu.org; 13 Sep 2026 11:02:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 13 07:02:11 2026 Received: from localhost ([127.0.0.1]:60814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1x5hyI-0003jv-Og for submit <at> debbugs.gnu.org; Sun, 13 Sep 2026 07:02:10 -0400 Received: from lists1p.gnu.org ([2001:470:142::17]:55664) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <blak3mill3r@HIDDEN>) id 1x5gok-00071n-34 for submit <at> debbugs.gnu.org; Sun, 13 Sep 2026 05:48:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <blak3mill3r@HIDDEN>) id 1x5goe-0005Ql-GH for bug-gnu-emacs@HIDDEN; Sun, 13 Sep 2026 05:48:04 -0400 Received: from mail-vs2-x0f.google.com ([2a00:1450:4864:3a::f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <blak3mill3r@HIDDEN>) id 1x5goY-0001Rs-9V for bug-gnu-emacs@HIDDEN; Sun, 13 Sep 2026 05:48:04 -0400 Received: by mail-vs2-x0f.google.com with SMTP id ada2fe7eead31-785643199c4so293842137.2 for <bug-gnu-emacs@HIDDEN>; Sun, 13 Sep 2026 02:47:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1789292877; cv=none; d=google.com; s=arc-20260327; b=WBbXfM1BhgQLO+wRSTYWAs9KYyV1lz+Bq4WhA8Y4UsISk+AMD9p2x+J9t3Z+6AG1ci t/Df4CJ2QZbeNGsX3cXSxl+zxSOBowPzfL9MW8QRy4f1Y/lwbbV+OvWe1rzEWMPiAhWd SZVAbQd0oBrKD0LTK3DBLeMOcx55q5S8iLRrlk4kZ3ImKx4lShI5gGKowNqVNf46xHWU r8+iRzxb2UcWdFJP+0SRnJ52l2SRS23E/lVOBDWfxhcXRSieYvgngIuf101UQrA8Xi30 q+EAF0ACrr7l8G6oyX13P2g5FHADliHu3ytKBI+JPzN16TUEjUIYwYh1fOIx9tKIyJp9 z+ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=2EzxNvPDM2+lEfQsFg32UKqURhfMA7iMj5wybeOTP84=; fh=+R8aXOFVnuBbN1nRXJJI02Ia//JUQJmLW/Uk/VaA0ag=; b=U1JwmDEI3fQYa8QoLWC5+LKgbW1DF+VBs5VEoOknVm2S4RJVWkitt+hRKCbu/PJAwh nsgSHSbTT5HcTMB2KpBArYEE8nTJhu1zVLsOQm5NmEbRitui8RSSd/OZ5Tq1gFFB5iTP r/ZCbPwYDM54OuF0ZQazQmTQCAJI2pL2d0vuWAH1f1euJ1prNxJ0vRX8d9Zg+YLsTw+J wNDAJ9XfsY7EKoMDAQJXEyney/Jnp9atIHTDHOPOjCzJz34b80xQmCzGLi1dBPU4BkwE fktXnDij9pjwxBhr0ruQgqNtVhbgiJes1sr/cDjBHMuYACPQyejZ85ttLSSy9vn6HRPs XCAg==; darn=gnu.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1789292877; x=1789897677; darn=gnu.org; h=content-type:to:subject:message-id:date:from:mime-version:from:to :cc:subject:date:message-id:reply-to:content-type; bh=2EzxNvPDM2+lEfQsFg32UKqURhfMA7iMj5wybeOTP84=; b=qp1tMndKfaOGsTpK8uBlnKVnW8rPC0tJIEfPRuLbyNptCY16l/jXvTPRRYaJMyE0rn uPb9ycC/rkatREo0YOjyBL+ax68VnRjCU/jLJUs8ekTKu58GEAG4ExH1YnCm0LU0/gaw aQ/UuMWvcmljHxEoSegfn134DEmHOr9TQOTYc8givH5pZ1EErWz7NhfMTRZ0cIYAHXap 9P73QEydwb+YXzLjFgR6Rj6uiMeRubgDp/QbL8Y2eFAlHlfLAG8eAOgOF+midWHBKyfF gd6mgYBJOgeWIlY2LGYCw08eAKh9dDgGmCJQHyQ7LY+9oirVbrZYTBGOFjiq1i+wy9Ba eNvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789292877; x=1789897677; h=content-type:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=2EzxNvPDM2+lEfQsFg32UKqURhfMA7iMj5wybeOTP84=; b=qV0nZWO98Dt2jJQiyhNpJmxgeiO8jBTeEbTbqytf1MNY2oId929bwz3azGfCYPsjS5 QH+BHMSRNMwsxBLIsXnuPl5FvXERSU6EQr86skm1RUNkVg/s/O6ofFCn7X2IK2veghWS kWWaK/6nG5s6irmLYCue++v/M9x3BP+Uc+d79VJ4H+xeQez8HEMJxjyG/AtX4WROzVsv rxDa1VN7Is4r/pQ++vP8s1UiTNTjrFBNsHIg4bOuqHeXUBJtA8lKsQYDL4Y5Icq21rrD ReTlqh641My2s1dRkveyOFeAvfm8dKu9R9MosaZZ2SvZdLEaDzDp6xwoW71DBoEUZY1t VO4A== X-Gm-Message-State: AFuF++niRpyvxCjiFcVxlRbje0PnL1XfesiWOMLSFqVhlkgd+y5zs+Jx b0frDUeCeDoWrEYknHb85MEiFhxNwo/lG5Z1bhYhzlI8DQM6E3AYshkPCnp0HXfklOVwExFPJua qG4XkVjsivBVr+iRZjGMFABV9n/1OLnbqpx8U62s= X-Gm-Gg: AYBFou0aERTOF16Y2eUJSBlMuC9MfGX+n6lLM0OOIKfJM2MHqTvTq5Q5lHDxBr6VHJj x1Bp0MM70XbKb14KBc72m3f6F9T9O/46am/vGkMJhJtXuyGLq2N9DeJ9f1yVzPxNa0U+ddpR1qM 9qHrbZCrbCs+6OuCy/4oA5Sny+jfGiwhQHSuMrj6+rUF1m5UEUnhlM880iGzmE2lHVlmoN0R9Nh J0DJDmyc4IR1bN1Ym80owaHpL7O5QWY0erLIZoziTjT2zJF/qoWsv8mrEWfxktTBsmH5haGFit7 ZTcWyJNxk9lKDrQBFdYnPBQv1drn2sgqN3kGgXxE0YONiSzAVotaxSzX5T64htvEBdxOhha4aLU UOQBXZsXnxmzen8z4h7Bi8/BDesM68njtLPnz/KMoivte2+f6S61PCb0Ui57w85MMotsrAzP/wD I= X-Received: by 2002:a05:6102:3589:b0:797:fcf6:822 with SMTP id ada2fe7eead31-797fcf60a87mr1097976137.13.1789292875861; Sun, 13 Sep 2026 02:47:55 -0700 (PDT) MIME-Version: 1.0 From: Blake Miller <blak3mill3r@HIDDEN> Date: Sun, 13 Sep 2026 09:47:45 +0000 X-Gm-Features: AcwNN1WjgDjsQPOvoxiK4UW6Y8Lo-Mw7JZNu_AJx-10d6W_-w1Zxt5YT6bFllqw Message-ID: <CAM79Mw-=in-cm4ss=ABr19343YJDAfQ7ZJXH2dHfcUcC8h_obg@HIDDEN> Subject: 32.0.50; treesit nav runs away after incremental reparse, eating all memory in my real setup To: bug-gnu-emacs@HIDDEN Content-Type: multipart/alternative; boundary="00000000000043d4e2065b5a36ed" Received-SPF: pass client-ip=2a00:1450:4864:3a::f; envelope-from=blak3mill3r@HIDDEN; helo=mail-vs2-x0f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 2.0 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.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 the administrator of that system for details. Content preview: Hello. I ran into this problem because I'm using bleeding-edge emacs and clojure-ts-mode+CIDER every day. I've done my best to nail it down. Here is a minimal reproduction which is deterministic and self-contained (no CIDER, just clojure-ts-mode and tree-sitter-clojure): Content analysis details: (2.0 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org] 1.0 FORGED_GMAIL_RCVD 'From' gmail.com does not match 'Received' headers -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (blak3mill3r[at]gmail.com) 0.0 HTML_MESSAGE BODY: HTML included in message X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sun, 13 Sep 2026 07:02:05 -0400 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 (+) --00000000000043d4e2065b5a36ed Content-Type: text/plain; charset="UTF-8" Hello. I ran into this problem because I'm using bleeding-edge emacs and clojure-ts-mode+CIDER every day. I've done my best to nail it down. Here is a minimal reproduction which is deterministic and self-contained (no CIDER, just clojure-ts-mode and tree-sitter-clojure): https://gitlab.com/blak3mill3r/emacs-treesit-runaway-allocation To reproduce: git clone --recurse-submodules git@HIDDEN: blak3mill3r/emacs-treesit-runaway-allocation cd emacs-treesit-runaway-allocation make grammar && make repro The README.org documents the problem in detail. It will spin the cpu and time out. In my real emacs setup it's caused by CIDER doing dynamic font lock with clojure-ts-mode CIDER dynamic font-lock wraps font-lock-fontify-region-function and calls backward-up-list + forward-sexp (treesit-up-list / treesit-forward-sexp-list) on the dirty tree every fontify. That doesn't just spin the CPU, it also eats all the system memory and emacs is killed violently, which was a bummer when editing a clojure buffer. It is subtle enough that it only happened occasionally, it didn't prevent me from continuing to use this binary for work, but once in a while it would happen, so I dug into it. There's a simple enough workaround, which is: (setq cider-font-lock-dynamically nil) but then I don't get to see all the pretty colors! In GNU Emacs 32.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.16.0) of 2026-09-12 built on bwip Repository revision: ab8cf10227346a5705d571ef1fa8ee7e3ae515d8 Repository branch: HEAD Windowing system distributor 'The X.Org Foundation', version 11.0.12101007 System Description: Debian GNU/Linux 12 (bookworm) Configured using: 'configure --with-tree-sitter --with-native-compilation' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: Org Minor modes in effect: windmove-mode: t global-git-commit-mode: t server-mode: t jarchive-mode: t global-evil-collection-unimpaired-mode: t evil-collection-unimpaired-mode: t evil-mode: t evil-local-mode: t super-save-mode: t marginalia-mode: t vertico-mode: t global-auto-revert-mode: t general-override-mode: t elpaca-use-package-mode: t override-global-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t minibuffer-nonselected-mode: t minibuffer-regexp-mode: t size-indication-mode: t column-number-mode: t line-number-mode: t visual-line-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-maxima hides /usr/local/share/emacs/32.0.50/lisp/org/ob-maxima /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org hides /usr/local/share/emacs/32.0.50/lisp/org/org /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-gnuplot hides /usr/local/share/emacs/32.0.50/lisp/org/ob-gnuplot /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-clojure hides /usr/local/share/emacs/32.0.50/lisp/org/ob-clojure /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element hides /usr/local/share/emacs/32.0.50/lisp/org/org-element /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-list hides /usr/local/share/emacs/32.0.50/lisp/org/org-list /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-pcomplete hides /usr/local/share/emacs/32.0.50/lisp/org/org-pcomplete /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-agenda hides /usr/local/share/emacs/32.0.50/lisp/org/org-agenda /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ruby hides /usr/local/share/emacs/32.0.50/lisp/org/ob-ruby /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mouse hides /usr/local/share/emacs/32.0.50/lisp/org/org-mouse /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-java hides /usr/local/share/emacs/32.0.50/lisp/org/ob-java /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-crypt hides /usr/local/share/emacs/32.0.50/lisp/org/org-crypt /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-table hides /usr/local/share/emacs/32.0.50/lisp/org/org-table /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-keys hides /usr/local/share/emacs/32.0.50/lisp/org/org-keys /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold-core hides /usr/local/share/emacs/32.0.50/lisp/org/org-fold-core /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-plot hides /usr/local/share/emacs/32.0.50/lisp/org/org-plot /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-refile hides /usr/local/share/emacs/32.0.50/lisp/org/org-refile /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sql hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sql /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-entities hides /usr/local/share/emacs/32.0.50/lisp/org/org-entities /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-protocol hides /usr/local/share/emacs/32.0.50/lisp/org/org-protocol /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-table hides /usr/local/share/emacs/32.0.50/lisp/org/ob-table /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-w3m hides /usr/local/share/emacs/32.0.50/lisp/org/ol-w3m /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-forth hides /usr/local/share/emacs/32.0.50/lisp/org/ob-forth /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-colview hides /usr/local/share/emacs/32.0.50/lisp/org/org-colview /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-man hides /usr/local/share/emacs/32.0.50/lisp/org/ox-man /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox hides /usr/local/share/emacs/32.0.50/lisp/org/ox /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-koma-letter hides /usr/local/share/emacs/32.0.50/lisp/org/ox-koma-letter /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-inlinetask hides /usr/local/share/emacs/32.0.50/lisp/org/org-inlinetask /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-doi hides /usr/local/share/emacs/32.0.50/lisp/org/ol-doi /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-C hides /usr/local/share/emacs/32.0.50/lisp/org/ob-C /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-css hides /usr/local/share/emacs/32.0.50/lisp/org/ob-css /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macro hides /usr/local/share/emacs/32.0.50/lisp/org/org-macro /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-R hides /usr/local/share/emacs/32.0.50/lisp/org/ob-R /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-core hides /usr/local/share/emacs/32.0.50/lisp/org/ob-core /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-js hides /usr/local/share/emacs/32.0.50/lisp/org/ob-js /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob hides /usr/local/share/emacs/32.0.50/lisp/org/ob /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-icalendar hides /usr/local/share/emacs/32.0.50/lisp/org/ox-icalendar /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-tangle hides /usr/local/share/emacs/32.0.50/lisp/org/ob-tangle /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-natbib hides /usr/local/share/emacs/32.0.50/lisp/org/oc-natbib /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-feed hides /usr/local/share/emacs/32.0.50/lisp/org/org-feed /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-macs hides /usr/local/share/emacs/32.0.50/lisp/org/org-macs /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-habit hides /usr/local/share/emacs/32.0.50/lisp/org/org-habit /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-archive hides /usr/local/share/emacs/32.0.50/lisp/org/org-archive /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-ctags hides /usr/local/share/emacs/32.0.50/lisp/org/org-ctags /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-cycle hides /usr/local/share/emacs/32.0.50/lisp/org/org-cycle /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-comint hides /usr/local/share/emacs/32.0.50/lisp/org/ob-comint /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-footnote hides /usr/local/share/emacs/32.0.50/lisp/org/org-footnote /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-org hides /usr/local/share/emacs/32.0.50/lisp/org/ob-org /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-biblatex hides /usr/local/share/emacs/32.0.50/lisp/org/oc-biblatex /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-scheme hides /usr/local/share/emacs/32.0.50/lisp/org/ob-scheme /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ref hides /usr/local/share/emacs/32.0.50/lisp/org/ob-ref /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-haskell hides /usr/local/share/emacs/32.0.50/lisp/org/ob-haskell /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach-git hides /usr/local/share/emacs/32.0.50/lisp/org/org-attach-git /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-octave hides /usr/local/share/emacs/32.0.50/lisp/org/ob-octave /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-compat hides /usr/local/share/emacs/32.0.50/lisp/org/org-compat /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ditaa hides /usr/local/share/emacs/32.0.50/lisp/org/ob-ditaa /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-num hides /usr/local/share/emacs/32.0.50/lisp/org/org-num /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-info hides /usr/local/share/emacs/32.0.50/lisp/org/ol-info /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach hides /usr/local/share/emacs/32.0.50/lisp/org/org-attach /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lisp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lisp /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-beamer hides /usr/local/share/emacs/32.0.50/lisp/org/ox-beamer /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-perl hides /usr/local/share/emacs/32.0.50/lisp/org/ob-perl /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-lint hides /usr/local/share/emacs/32.0.50/lisp/org/org-lint /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-gnus hides /usr/local/share/emacs/32.0.50/lisp/org/ol-gnus /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-emacs-lisp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-emacs-lisp /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eww hides /usr/local/share/emacs/32.0.50/lisp/org/ol-eww /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ocaml hides /usr/local/share/emacs/32.0.50/lisp/org/ob-ocaml /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-fortran hides /usr/local/share/emacs/32.0.50/lisp/org/ob-fortran /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-exp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-exp /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element-ast hides /usr/local/share/emacs/32.0.50/lisp/org/org-element-ast /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-latex hides /usr/local/share/emacs/32.0.50/lisp/org/ob-latex /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-loaddefs hides /usr/local/share/emacs/32.0.50/lisp/org/org-loaddefs /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-texinfo hides /usr/local/share/emacs/32.0.50/lisp/org/ox-texinfo /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-clock hides /usr/local/share/emacs/32.0.50/lisp/org/org-clock /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-irc hides /usr/local/share/emacs/32.0.50/lisp/org/ol-irc /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc hides /usr/local/share/emacs/32.0.50/lisp/org/oc /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold hides /usr/local/share/emacs/32.0.50/lisp/org/org-fold /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-basic hides /usr/local/share/emacs/32.0.50/lisp/org/oc-basic /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-julia hides /usr/local/share/emacs/32.0.50/lisp/org/ob-julia /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-datetree hides /usr/local/share/emacs/32.0.50/lisp/org/org-datetree /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-mobile hides /usr/local/share/emacs/32.0.50/lisp/org/org-mobile /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-indent hides /usr/local/share/emacs/32.0.50/lisp/org/org-indent /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-version hides /usr/local/share/emacs/32.0.50/lisp/org/org-version /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-matlab hides /usr/local/share/emacs/32.0.50/lisp/org/ob-matlab /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-man hides /usr/local/share/emacs/32.0.50/lisp/org/ol-man /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-csl hides /usr/local/share/emacs/32.0.50/lisp/org/oc-csl /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-latex hides /usr/local/share/emacs/32.0.50/lisp/org/ox-latex /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-makefile hides /usr/local/share/emacs/32.0.50/lisp/org/ob-makefile /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-docview hides /usr/local/share/emacs/32.0.50/lisp/org/ol-docview /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-publish hides /usr/local/share/emacs/32.0.50/lisp/org/ox-publish /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol hides /usr/local/share/emacs/32.0.50/lisp/org/ol /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-dot hides /usr/local/share/emacs/32.0.50/lisp/org/ob-dot /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-faces hides /usr/local/share/emacs/32.0.50/lisp/org/org-faces /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-org hides /usr/local/share/emacs/32.0.50/lisp/org/ox-org /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-duration hides /usr/local/share/emacs/32.0.50/lisp/org/org-duration /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-rmail hides /usr/local/share/emacs/32.0.50/lisp/org/ol-rmail /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sqlite hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sqlite /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eshell hides /usr/local/share/emacs/32.0.50/lisp/org/ob-eshell /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-mhe hides /usr/local/share/emacs/32.0.50/lisp/org/ol-mhe /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lob hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lob /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-id hides /usr/local/share/emacs/32.0.50/lisp/org/org-id /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-processing hides /usr/local/share/emacs/32.0.50/lisp/org/ob-processing /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-persist hides /usr/local/share/emacs/32.0.50/lisp/org/org-persist /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-eval hides /usr/local/share/emacs/32.0.50/lisp/org/ob-eval /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-tempo hides /usr/local/share/emacs/32.0.50/lisp/org/org-tempo /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-odt hides /usr/local/share/emacs/32.0.50/lisp/org/ox-odt /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-shell hides /usr/local/share/emacs/32.0.50/lisp/org/ob-shell /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-python hides /usr/local/share/emacs/32.0.50/lisp/org/ob-python /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lua hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lua /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-csharp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-csharp /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-plantuml hides /usr/local/share/emacs/32.0.50/lisp/org/ob-plantuml /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sed hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sed /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bbdb hides /usr/local/share/emacs/32.0.50/lisp/org/ol-bbdb /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-ascii hides /usr/local/share/emacs/32.0.50/lisp/org/ox-ascii /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-src hides /usr/local/share/emacs/32.0.50/lisp/org/org-src /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bibtex hides /usr/local/share/emacs/32.0.50/lisp/org/ol-bibtex /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-timer hides /usr/local/share/emacs/32.0.50/lisp/org/org-timer /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-screen hides /usr/local/share/emacs/32.0.50/lisp/org/ob-screen /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-html hides /usr/local/share/emacs/32.0.50/lisp/org/ox-html /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-capture hides /usr/local/share/emacs/32.0.50/lisp/org/org-capture /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-goto hides /usr/local/share/emacs/32.0.50/lisp/org/org-goto /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-awk hides /usr/local/share/emacs/32.0.50/lisp/org/ob-awk /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-calc hides /usr/local/share/emacs/32.0.50/lisp/org/ob-calc /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-groovy hides /usr/local/share/emacs/32.0.50/lisp/org/ob-groovy /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sass hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sass /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-md hides /usr/local/share/emacs/32.0.50/lisp/org/ox-md /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-lilypond hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lilypond /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-eshell hides /usr/local/share/emacs/32.0.50/lisp/org/ol-eshell /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-bibtex hides /usr/local/share/emacs/32.0.50/lisp/org/oc-bibtex Features: (shadow sort mail-extr emacsbug windmove help-fns radix-tree minibuf-eldef two-column vc-hg vc-bzr vc-src vc-sccs vc-cvs vc-rcs evil-collection-log-view log-view bug-reference vertico-sort whitespace elec-pair company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb oc-basic ol-eww evil-collection-eww eww vtable url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range evil-collection-message message sendmail yank-media rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win evil-collection-gnus gnus nnheader gnus-util mail-utils range mm-util mail-prsvr ol-docview evil-collection-doc-view doc-view jka-compr evil-collection-image image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi evil-collection-flycheck flycheck haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme haskell-align-imports haskell-complete-module haskell-ghc-support flymake-proc etags dabbrev haskell-customize yasnippet-snippets-autoloads yasnippet-snippets flycheck-autoloads haskell-mode-autoloads cfg-rust rust-ts-mode c-ts-common cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs cfg-haskell cfg-lisp-packages nv-transient lisp-format-butler lisp-ss avy puni cider-macroexpansion rainbow-delimiters avy-autoloads puni-autoloads clj-refactor-autoloads clj-refactor cap-words superword subword hydra lv inflections mc-hide-unmatched-lines-mode mc-mark-more sgml-mode facemenu mc-cycle-cursors multiple-cursors-core paredit yasnippet cider-autoloads evil-collection-cider cider evil-collection-package-menu package url-handlers package-activate cider-debug cider-browse-ns cider-mode cider-xref-backend cider-find cider-completion cider-profile cider-inspector cider-eval cider-connection cider-repl-history pulse cider-repl cider-test cider-resolve cider-compilation cider-stacktrace cider-overlays cider-doc cider-browse-spec cider-clojuredocs cider-popup cider-jack-in cider-inspiration cider-endpoint tramp-sh cider-eldoc cider-docstring shr pixel-fill kinsoku url-file puny svg xml dom cider-cljs cider-client cider-common cider-completion-context cider-session cider-util sesman-browser sesman vc nrepl-client nrepl-bencode nrepl-dict queue spinner clojure-mode lisp-mnt parseedn parseclj-parser parseclj-lex parseclj-alist sesman-autoloads spinner-autoloads queue-autoloads hydra-autoloads lv-autoloads parseedn-autoloads parseclj-autoloads multiple-cursors-autoloads paredit-autoloads yasnippet-autoloads inflections-autoloads clojure-mode-autoloads rainbow-delimiters-autoloads clojure-ts-mode align magit-bookmark evil-collection-magit magit-submodule magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-tag magit-merge magit-branch magit-reset magit-files magit-refs magit-status magit evil-collection-epa epa derived epg rfc6068 epg-config evil-collection-magit-repos magit-repos magit-apply magit-wip magit-log magit-diff which-func evil-collection-smerge-mode smerge-mode git-commit evil-collection-log-edit log-edit pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process evil-collection-with-editor with-editor magit-mode browse-url benchmark magit-git server magit-base browse-at-remote evil-collection-vc-git vc-git vc-dispatcher f evil-collection-org-roam org-roam-migrate org-roam-log org-roam-mode org-roam-capture org-roam-id org-roam-node crm org-roam-db org-roam-utils org-roam-compat org-roam org-capture org-attach emacsql-sqlite emacsql emacsql-compiler evil-collection-magit-section magit-section cursor-sensor transient llama cond-let ob-sql ob-clojure evil-collection-org embark-org org-element org-persist org-id org-refile avl-tree org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src evil-collection-sh-script sh-script smie treesit executable ob-comint org-element-ast inline org-pcomplete org-list org-footnote org-faces org-entities evil-collection-outline noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-compat evil-collection-calendar cal-menu calendar cal-loaddefs org-version org-macs evil-collection-vterm vterm tramp-cache time-stamp tramp trampver tramp-integration files-x tramp-message tramp-compat xdg parse-time iso8601 time-date format-spec tramp-loaddefs face-remap evil-collection-term term disp-table shell pcomplete ehelp vterm-module term/xterm xterm evil-collection-wgrep wgrep jarchive evil-collection-arc-mode arc-mode archive-mode projectile fileloop generator evil-collection-grep grep ibuf-ext evil-collection-ag ag vc-svn find-dired dash evil-collection-dired dired dired-loaddefs evil-collection-ibuffer ibuffer ibuffer-loaddefs evil-collection-unimpaired evil-collection-xref evil-collection-vertico evil-collection-tabulated-list evil-collection-tab-bar evil-collection-simple evil-collection-replace evil-collection-process-menu evil-collection-minibuffer evil-collection-kmacro evil-collection-indent evil-collection-imenu evil-collection-help evil-collection-flymake evil-collection-ert evil-collection-embark evil-collection-elisp-mode evil-collection-eldoc evil-collection-elpaca evil-collection-eglot evil-collection-diff-mode evil-collection-debug evil-collection-consult evil-collection-compile evil-collection-company evil-collection-comint evil-collection-buff-menu evil-collection-bookmark evil-collection annalist evil evil-integration evil-maps evil-commands reveal evil-jumps evil-command-window evil-types evil-search evil-ex evil-macros evil-repeat evil-states evil-core evil-common rect evil-vars company super-save edmacro kmacro marginalia embark-consult consult bookmark embark ffap vertico orderless compat solarized-dark-theme solarized solarized-faces color amx s clojure-ts-mode-autoloads magit-autoloads with-editor-autoloads browse-at-remote-autoloads f-autoloads org-roam-autoloads magit-section-autoloads llama-autoloads cond-let-autoloads emacsql-autoloads org-loaddefs vterm-autoloads wgrep-autoloads jarchive-autoloads projectile-autoloads ag-autoloads dash-autoloads evil-collection-autoloads annalist-autoloads evil-autoloads goto-chg-autoloads company-autoloads posframe-autoloads super-save-autoloads marginalia-autoloads embark-consult-autoloads consult-autoloads embark-autoloads vertico-autoloads orderless-autoloads solarized-dark-theme-autoloads amx-autoloads s-autoloads desktop frameset eglot tree-widget wid-edit external-completion jsonrpc xref flymake thingatpt project diff diff-mode track-changes ert pp ewoc debug backtrace find-func compile text-property-search comint ansi-osc ansi-color ring pcase imenu autorevert filenotify elpaca-menu-elpa comp comp-cstr warnings comp-run comp-common rx general general-autoloads elpaca-menu-melpa elpaca-menu-org cl-extra help-mode elpaca-use-package use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key easy-mmode use-package-core elpaca-use-package-autoloads hl-line display-line-numbers elpaca-log elpaca-ui url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util url-parse auth-source cl-seq eieio eieio-core cl-macs icons password-cache json subr-x mule-util map url-vars mailcap byte-opt bytecomp byte-compile elpaca-git elpaca elpaca-process elpaca-autoloads early-init savehist gv els-bootstrap cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process tty-child-frames native-compile emacs) Memory information: ((conses 16 1150076 2010881) (symbols 48 62653 228) (strings 32 360082 119023) (string-bytes 1 9357199) (vectors 16 98297) (vector-slots 8 1573186 289693) (floats 8 746 13264) (intervals 56 2257 1559) (buffers 1064 34)) --00000000000043d4e2065b5a36ed Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hello. I ran into this problem because I'm using bleed= ing-edge emacs and<br>clojure-ts-mode+CIDER every day.<br><br>I've done= my best to nail it down.<br><br>Here is a minimal reproduction which is de= terministic and<br>self-contained (no CIDER, just clojure-ts-mode and tree-= sitter-clojure):<br><br><a href=3D"https://gitlab.com/blak3mill3r/emacs-tre= esit-runaway-allocation">https://gitlab.com/blak3mill3r/emacs-treesit-runaw= ay-allocation</a><br><br>To reproduce:<br><br>git clone --recurse-submodule= s git@HIDDEN:blak3mill3r/emacs-treesit-runaway-allocation<br>cd emacs-t= reesit-runaway-allocation<br>make grammar && make repro<br><br><br>= The README.org documents the problem in detail. It will spin the cpu and<br= >time out. In my real emacs setup it's caused by CIDER doing dynamic fo= nt<br>lock with clojure-ts-mode<br><br>CIDER dynamic font-lock wraps font-l= ock-fontify-region-function and<br>calls backward-up-list + forward-sexp (t= reesit-up-list /<br>treesit-forward-sexp-list) on the dirty tree every font= ify.<br><br>That doesn't just spin the CPU, it also eats all the system= memory and<br>emacs is killed violently, which was a bummer when editing a= clojure<br>buffer. It is subtle enough that it only happened occasionally,= it<br>didn't prevent me from continuing to use this binary for work, b= ut once<br>in a while it would happen, so I dug into it.<br><br>There's= a simple enough workaround, which is:<br><br>(setq cider-font-lock-dynamic= ally nil)<br><br>but then I don't get to see all the pretty colors!<br>= <br><br><br><br><br>In GNU Emacs 32.0.50 (build 2, x86_64-pc-linux-gnu, GTK= + Version<br>=C2=A03.24.38, cairo version 1.16.0) of 2026-09-12 built on bw= ip<br>Repository revision: ab8cf10227346a5705d571ef1fa8ee7e3ae515d8<br>Repo= sitory branch: HEAD<br>Windowing system distributor 'The X.Org Foundati= on', version 11.0.12101007<br>System Description: Debian GNU/Linux 12 (= bookworm)<br><br>Configured using:<br>=C2=A0'configure --with-tree-sitt= er --with-native-compilation'<br><br>Configured features:<br>ACL CAIRO = DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG<br>LCMS2 LIBO= TF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY<br>INOTIFY PDUMPE= R PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF<br>TOOLKIT_SCROLL_BARS TREE_S= ITTER WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM<br>XRANDR GTK3 ZLIB<br><br>Imp= ortant settings:<br>=C2=A0 value of $LANG: en_US.UTF-8<br>=C2=A0 value of $= XMODIFIERS: @im=3Dibus<br>=C2=A0 locale-coding-system: utf-8-unix<br><br>Ma= jor mode: Org<br><br>Minor modes in effect:<br>=C2=A0 windmove-mode: t<br>= =C2=A0 global-git-commit-mode: t<br>=C2=A0 server-mode: t<br>=C2=A0 jarchiv= e-mode: t<br>=C2=A0 global-evil-collection-unimpaired-mode: t<br>=C2=A0 evi= l-collection-unimpaired-mode: t<br>=C2=A0 evil-mode: t<br>=C2=A0 evil-local= -mode: t<br>=C2=A0 super-save-mode: t<br>=C2=A0 marginalia-mode: t<br>=C2= =A0 vertico-mode: t<br>=C2=A0 global-auto-revert-mode: t<br>=C2=A0 general-= override-mode: t<br>=C2=A0 elpaca-use-package-mode: t<br>=C2=A0 override-gl= obal-mode: t<br>=C2=A0 global-eldoc-mode: t<br>=C2=A0 show-paren-mode: t<br= >=C2=A0 electric-indent-mode: t<br>=C2=A0 mouse-wheel-mode: t<br>=C2=A0 fil= e-name-shadow-mode: t<br>=C2=A0 global-font-lock-mode: t<br>=C2=A0 font-loc= k-mode: t<br>=C2=A0 blink-cursor-mode: t<br>=C2=A0 minibuffer-nonselected-m= ode: t<br>=C2=A0 minibuffer-regexp-mode: t<br>=C2=A0 size-indication-mode: = t<br>=C2=A0 column-number-mode: t<br>=C2=A0 line-number-mode: t<br>=C2=A0 v= isual-line-mode: t<br>=C2=A0 transient-mark-mode: t<br>=C2=A0 auto-composit= ion-mode: t<br>=C2=A0 auto-encryption-mode: t<br>=C2=A0 auto-compression-mo= de: t<br><br>Load-path shadows:<br>/home/blake/.local/state/els/runtime/syn= thesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-maxima hides /usr/local/sh= are/emacs/32.0.50/lisp/org/ob-maxima<br>/home/blake/.local/state/els/runtim= e/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org hides /usr/local/sha= re/emacs/32.0.50/lisp/org/org<br>/home/blake/.local/state/els/runtime/synth= esized-emacs-dirs/mine-ts/elpaca/builds/org/ob-gnuplot hides /usr/local/sha= re/emacs/32.0.50/lisp/org/ob-gnuplot<br>/home/blake/.local/state/els/runtim= e/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-clojure hides /usr/lo= cal/share/emacs/32.0.50/lisp/org/ob-clojure<br>/home/blake/.local/state/els= /runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-element hides= /usr/local/share/emacs/32.0.50/lisp/org/org-element<br>/home/blake/.local/= state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-list= hides /usr/local/share/emacs/32.0.50/lisp/org/org-list<br>/home/blake/.loc= al/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-p= complete hides /usr/local/share/emacs/32.0.50/lisp/org/org-pcomplete<br>/ho= me/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/bui= lds/org/org-agenda hides /usr/local/share/emacs/32.0.50/lisp/org/org-agenda= <br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elp= aca/builds/org/ob-ruby hides /usr/local/share/emacs/32.0.50/lisp/org/ob-rub= y<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/el= paca/builds/org/org-mouse hides /usr/local/share/emacs/32.0.50/lisp/org/org= -mouse<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-= ts/elpaca/builds/org/ob-java hides /usr/local/share/emacs/32.0.50/lisp/org/= ob-java<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine= -ts/elpaca/builds/org/org-crypt hides /usr/local/share/emacs/32.0.50/lisp/o= rg/org-crypt<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs= /mine-ts/elpaca/builds/org/org-table hides /usr/local/share/emacs/32.0.50/l= isp/org/org-table<br>/home/blake/.local/state/els/runtime/synthesized-emacs= -dirs/mine-ts/elpaca/builds/org/org-keys hides /usr/local/share/emacs/32.0.= 50/lisp/org/org-keys<br>/home/blake/.local/state/els/runtime/synthesized-em= acs-dirs/mine-ts/elpaca/builds/org/org-fold-core hides /usr/local/share/ema= cs/32.0.50/lisp/org/org-fold-core<br>/home/blake/.local/state/els/runtime/s= ynthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-plot hides /usr/local/s= hare/emacs/32.0.50/lisp/org/org-plot<br>/home/blake/.local/state/els/runtim= e/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-refile hides /usr/lo= cal/share/emacs/32.0.50/lisp/org/org-refile<br>/home/blake/.local/state/els= /runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sql hides /usr= /local/share/emacs/32.0.50/lisp/org/ob-sql<br>/home/blake/.local/state/els/= runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-entities hides= /usr/local/share/emacs/32.0.50/lisp/org/org-entities<br>/home/blake/.local= /state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-pro= tocol hides /usr/local/share/emacs/32.0.50/lisp/org/org-protocol<br>/home/b= lake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/= org/ob-table hides /usr/local/share/emacs/32.0.50/lisp/org/ob-table<br>/hom= e/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/buil= ds/org/ol-w3m hides /usr/local/share/emacs/32.0.50/lisp/org/ol-w3m<br>/home= /blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/build= s/org/ob-forth hides /usr/local/share/emacs/32.0.50/lisp/org/ob-forth<br>/h= ome/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/bu= ilds/org/org-colview hides /usr/local/share/emacs/32.0.50/lisp/org/org-colv= iew<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/= elpaca/builds/org/ox-man hides /usr/local/share/emacs/32.0.50/lisp/org/ox-m= an<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/e= lpaca/builds/org/ox hides /usr/local/share/emacs/32.0.50/lisp/org/ox<br>/ho= me/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/bui= lds/org/ox-koma-letter hides /usr/local/share/emacs/32.0.50/lisp/org/ox-kom= a-letter<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/min= e-ts/elpaca/builds/org/org-inlinetask hides /usr/local/share/emacs/32.0.50/= lisp/org/org-inlinetask<br>/home/blake/.local/state/els/runtime/synthesized= -emacs-dirs/mine-ts/elpaca/builds/org/ol-doi hides /usr/local/share/emacs/3= 2.0.50/lisp/org/ol-doi<br>/home/blake/.local/state/els/runtime/synthesized-= emacs-dirs/mine-ts/elpaca/builds/org/ob-C hides /usr/local/share/emacs/32.0= .50/lisp/org/ob-C<br>/home/blake/.local/state/els/runtime/synthesized-emacs= -dirs/mine-ts/elpaca/builds/org/ob-css hides /usr/local/share/emacs/32.0.50= /lisp/org/ob-css<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/org-macro hides /usr/local/share/emacs/32.0.= 50/lisp/org/org-macro<br>/home/blake/.local/state/els/runtime/synthesized-e= macs-dirs/mine-ts/elpaca/builds/org/ob-R hides /usr/local/share/emacs/32.0.= 50/lisp/org/ob-R<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/ob-core hides /usr/local/share/emacs/32.0.50= /lisp/org/ob-core<br>/home/blake/.local/state/els/runtime/synthesized-emacs= -dirs/mine-ts/elpaca/builds/org/ob-js hides /usr/local/share/emacs/32.0.50/= lisp/org/ob-js<br>/home/blake/.local/state/els/runtime/synthesized-emacs-di= rs/mine-ts/elpaca/builds/org/ob hides /usr/local/share/emacs/32.0.50/lisp/o= rg/ob<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-t= s/elpaca/builds/org/ox-icalendar hides /usr/local/share/emacs/32.0.50/lisp/= org/ox-icalendar<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/ob-tangle hides /usr/local/share/emacs/32.0.= 50/lisp/org/ob-tangle<br>/home/blake/.local/state/els/runtime/synthesized-e= macs-dirs/mine-ts/elpaca/builds/org/oc-natbib hides /usr/local/share/emacs/= 32.0.50/lisp/org/oc-natbib<br>/home/blake/.local/state/els/runtime/synthesi= zed-emacs-dirs/mine-ts/elpaca/builds/org/org-feed hides /usr/local/share/em= acs/32.0.50/lisp/org/org-feed<br>/home/blake/.local/state/els/runtime/synth= esized-emacs-dirs/mine-ts/elpaca/builds/org/org-macs hides /usr/local/share= /emacs/32.0.50/lisp/org/org-macs<br>/home/blake/.local/state/els/runtime/sy= nthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-habit hides /usr/local/s= hare/emacs/32.0.50/lisp/org/org-habit<br>/home/blake/.local/state/els/runti= me/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-archive hides /usr/= local/share/emacs/32.0.50/lisp/org/org-archive<br>/home/blake/.local/state/= els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-ctags hide= s /usr/local/share/emacs/32.0.50/lisp/org/org-ctags<br>/home/blake/.local/s= tate/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-cycle= hides /usr/local/share/emacs/32.0.50/lisp/org/org-cycle<br>/home/blake/.lo= cal/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-c= omint hides /usr/local/share/emacs/32.0.50/lisp/org/ob-comint<br>/home/blak= e/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org= /org-footnote hides /usr/local/share/emacs/32.0.50/lisp/org/org-footnote<br= >/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca= /builds/org/ob-org hides /usr/local/share/emacs/32.0.50/lisp/org/ob-org<br>= /home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/= builds/org/oc-biblatex hides /usr/local/share/emacs/32.0.50/lisp/org/oc-bib= latex<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-t= s/elpaca/builds/org/ob-scheme hides /usr/local/share/emacs/32.0.50/lisp/org= /ob-scheme<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/m= ine-ts/elpaca/builds/org/ob-ref hides /usr/local/share/emacs/32.0.50/lisp/o= rg/ob-ref<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mi= ne-ts/elpaca/builds/org/ob-haskell hides /usr/local/share/emacs/32.0.50/lis= p/org/ob-haskell<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/org-attach-git hides /usr/local/share/emacs/= 32.0.50/lisp/org/org-attach-git<br>/home/blake/.local/state/els/runtime/syn= thesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-octave hides /usr/local/sh= are/emacs/32.0.50/lisp/org/ob-octave<br>/home/blake/.local/state/els/runtim= e/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-compat hides /usr/lo= cal/share/emacs/32.0.50/lisp/org/org-compat<br>/home/blake/.local/state/els= /runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-ditaa hides /u= sr/local/share/emacs/32.0.50/lisp/org/ob-ditaa<br>/home/blake/.local/state/= els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-num hides = /usr/local/share/emacs/32.0.50/lisp/org/org-num<br>/home/blake/.local/state= /els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-info hides= /usr/local/share/emacs/32.0.50/lisp/org/ol-info<br>/home/blake/.local/stat= e/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-attach h= ides /usr/local/share/emacs/32.0.50/lisp/org/org-attach<br>/home/blake/.loc= al/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-li= sp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lisp<br>/home/blake/.lo= cal/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-b= eamer hides /usr/local/share/emacs/32.0.50/lisp/org/ox-beamer<br>/home/blak= e/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org= /ob-perl hides /usr/local/share/emacs/32.0.50/lisp/org/ob-perl<br>/home/bla= ke/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/or= g/org-lint hides /usr/local/share/emacs/32.0.50/lisp/org/org-lint<br>/home/= blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds= /org/ol-gnus hides /usr/local/share/emacs/32.0.50/lisp/org/ol-gnus<br>/home= /blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/build= s/org/ob-emacs-lisp hides /usr/local/share/emacs/32.0.50/lisp/org/ob-emacs-= lisp<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts= /elpaca/builds/org/ol-eww hides /usr/local/share/emacs/32.0.50/lisp/org/ol-= eww<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/= elpaca/builds/org/ob-ocaml hides /usr/local/share/emacs/32.0.50/lisp/org/ob= -ocaml<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-= ts/elpaca/builds/org/ob-fortran hides /usr/local/share/emacs/32.0.50/lisp/o= rg/ob-fortran<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dir= s/mine-ts/elpaca/builds/org/ob-exp hides /usr/local/share/emacs/32.0.50/lis= p/org/ob-exp<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs= /mine-ts/elpaca/builds/org/org-element-ast hides /usr/local/share/emacs/32.= 0.50/lisp/org/org-element-ast<br>/home/blake/.local/state/els/runtime/synth= esized-emacs-dirs/mine-ts/elpaca/builds/org/ob-latex hides /usr/local/share= /emacs/32.0.50/lisp/org/ob-latex<br>/home/blake/.local/state/els/runtime/sy= nthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-loaddefs hides /usr/loca= l/share/emacs/32.0.50/lisp/org/org-loaddefs<br>/home/blake/.local/state/els= /runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-texinfo hides = /usr/local/share/emacs/32.0.50/lisp/org/ox-texinfo<br>/home/blake/.local/st= ate/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-clock = hides /usr/local/share/emacs/32.0.50/lisp/org/org-clock<br>/home/blake/.loc= al/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-ir= c hides /usr/local/share/emacs/32.0.50/lisp/org/ol-irc<br>/home/blake/.loca= l/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc hid= es /usr/local/share/emacs/32.0.50/lisp/org/oc<br>/home/blake/.local/state/e= ls/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-fold hides = /usr/local/share/emacs/32.0.50/lisp/org/org-fold<br>/home/blake/.local/stat= e/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/oc-basic hid= es /usr/local/share/emacs/32.0.50/lisp/org/oc-basic<br>/home/blake/.local/s= tate/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-julia = hides /usr/local/share/emacs/32.0.50/lisp/org/ob-julia<br>/home/blake/.loca= l/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-da= tetree hides /usr/local/share/emacs/32.0.50/lisp/org/org-datetree<br>/home/= blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds= /org/org-mobile hides /usr/local/share/emacs/32.0.50/lisp/org/org-mobile<br= >/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca= /builds/org/org-indent hides /usr/local/share/emacs/32.0.50/lisp/org/org-in= dent<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts= /elpaca/builds/org/org-version hides /usr/local/share/emacs/32.0.50/lisp/or= g/org-version<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dir= s/mine-ts/elpaca/builds/org/ob-matlab hides /usr/local/share/emacs/32.0.50/= lisp/org/ob-matlab<br>/home/blake/.local/state/els/runtime/synthesized-emac= s-dirs/mine-ts/elpaca/builds/org/ol-man hides /usr/local/share/emacs/32.0.5= 0/lisp/org/ol-man<br>/home/blake/.local/state/els/runtime/synthesized-emacs= -dirs/mine-ts/elpaca/builds/org/oc-csl hides /usr/local/share/emacs/32.0.50= /lisp/org/oc-csl<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/ox-latex hides /usr/local/share/emacs/32.0.5= 0/lisp/org/ox-latex<br>/home/blake/.local/state/els/runtime/synthesized-ema= cs-dirs/mine-ts/elpaca/builds/org/ob-makefile hides /usr/local/share/emacs/= 32.0.50/lisp/org/ob-makefile<br>/home/blake/.local/state/els/runtime/synthe= sized-emacs-dirs/mine-ts/elpaca/builds/org/ol-docview hides /usr/local/shar= e/emacs/32.0.50/lisp/org/ol-docview<br>/home/blake/.local/state/els/runtime= /synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-publish hides /usr/loc= al/share/emacs/32.0.50/lisp/org/ox-publish<br>/home/blake/.local/state/els/= runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol hides /usr/loca= l/share/emacs/32.0.50/lisp/org/ol<br>/home/blake/.local/state/els/runtime/s= ynthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-dot hides /usr/local/sha= re/emacs/32.0.50/lisp/org/ob-dot<br>/home/blake/.local/state/els/runtime/sy= nthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-faces hides /usr/local/s= hare/emacs/32.0.50/lisp/org/org-faces<br>/home/blake/.local/state/els/runti= me/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-org hides /usr/local= /share/emacs/32.0.50/lisp/org/ox-org<br>/home/blake/.local/state/els/runtim= e/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-duration hides /usr/= local/share/emacs/32.0.50/lisp/org/org-duration<br>/home/blake/.local/state= /els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-rmail hide= s /usr/local/share/emacs/32.0.50/lisp/org/ol-rmail<br>/home/blake/.local/st= ate/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sqlite = hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sqlite<br>/home/blake/.loc= al/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-es= hell hides /usr/local/share/emacs/32.0.50/lisp/org/ob-eshell<br>/home/blake= /.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/= ol-mhe hides /usr/local/share/emacs/32.0.50/lisp/org/ol-mhe<br>/home/blake/= .local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/o= b-lob hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lob<br>/home/blake/.= local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/or= g-id hides /usr/local/share/emacs/32.0.50/lisp/org/org-id<br>/home/blake/.l= ocal/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-= processing hides /usr/local/share/emacs/32.0.50/lisp/org/ob-processing<br>/= home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/b= uilds/org/org-persist hides /usr/local/share/emacs/32.0.50/lisp/org/org-per= sist<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts= /elpaca/builds/org/ob-eval hides /usr/local/share/emacs/32.0.50/lisp/org/ob= -eval<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-t= s/elpaca/builds/org/org-tempo hides /usr/local/share/emacs/32.0.50/lisp/org= /org-tempo<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/m= ine-ts/elpaca/builds/org/ox-odt hides /usr/local/share/emacs/32.0.50/lisp/o= rg/ox-odt<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mi= ne-ts/elpaca/builds/org/ob-shell hides /usr/local/share/emacs/32.0.50/lisp/= org/ob-shell<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs= /mine-ts/elpaca/builds/org/ob-python hides /usr/local/share/emacs/32.0.50/l= isp/org/ob-python<br>/home/blake/.local/state/els/runtime/synthesized-emacs= -dirs/mine-ts/elpaca/builds/org/ob-lua hides /usr/local/share/emacs/32.0.50= /lisp/org/ob-lua<br>/home/blake/.local/state/els/runtime/synthesized-emacs-= dirs/mine-ts/elpaca/builds/org/ob-csharp hides /usr/local/share/emacs/32.0.= 50/lisp/org/ob-csharp<br>/home/blake/.local/state/els/runtime/synthesized-e= macs-dirs/mine-ts/elpaca/builds/org/ob-plantuml hides /usr/local/share/emac= s/32.0.50/lisp/org/ob-plantuml<br>/home/blake/.local/state/els/runtime/synt= hesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-sed hides /usr/local/share/= emacs/32.0.50/lisp/org/ob-sed<br>/home/blake/.local/state/els/runtime/synth= esized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bbdb hides /usr/local/share/= emacs/32.0.50/lisp/org/ol-bbdb<br>/home/blake/.local/state/els/runtime/synt= hesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-ascii hides /usr/local/shar= e/emacs/32.0.50/lisp/org/ox-ascii<br>/home/blake/.local/state/els/runtime/s= ynthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-src hides /usr/local/sh= are/emacs/32.0.50/lisp/org/org-src<br>/home/blake/.local/state/els/runtime/= synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ol-bibtex hides /usr/local= /share/emacs/32.0.50/lisp/org/ol-bibtex<br>/home/blake/.local/state/els/run= time/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-timer hides /usr/= local/share/emacs/32.0.50/lisp/org/org-timer<br>/home/blake/.local/state/el= s/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ob-screen hides = /usr/local/share/emacs/32.0.50/lisp/org/ob-screen<br>/home/blake/.local/sta= te/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/ox-html hid= es /usr/local/share/emacs/32.0.50/lisp/org/ox-html<br>/home/blake/.local/st= ate/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/org-captur= e hides /usr/local/share/emacs/32.0.50/lisp/org/org-capture<br>/home/blake/= .local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org/o= rg-goto hides /usr/local/share/emacs/32.0.50/lisp/org/org-goto<br>/home/bla= ke/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/or= g/ob-awk hides /usr/local/share/emacs/32.0.50/lisp/org/ob-awk<br>/home/blak= e/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/org= /ob-calc hides /usr/local/share/emacs/32.0.50/lisp/org/ob-calc<br>/home/bla= ke/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds/or= g/ob-groovy hides /usr/local/share/emacs/32.0.50/lisp/org/ob-groovy<br>/hom= e/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/buil= ds/org/ob-sass hides /usr/local/share/emacs/32.0.50/lisp/org/ob-sass<br>/ho= me/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/bui= lds/org/ox-md hides /usr/local/share/emacs/32.0.50/lisp/org/ox-md<br>/home/= blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpaca/builds= /org/ob-lilypond hides /usr/local/share/emacs/32.0.50/lisp/org/ob-lilypond<= br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts/elpa= ca/builds/org/ol-eshell hides /usr/local/share/emacs/32.0.50/lisp/org/ol-es= hell<br>/home/blake/.local/state/els/runtime/synthesized-emacs-dirs/mine-ts= /elpaca/builds/org/oc-bibtex hides /usr/local/share/emacs/32.0.50/lisp/org/= oc-bibtex<br><br>Features:<br>(shadow sort mail-extr emacsbug windmove help= -fns radix-tree<br>minibuf-eldef two-column vc-hg vc-bzr vc-src vc-sccs vc-= cvs vc-rcs<br>evil-collection-log-view log-view bug-reference vertico-sort = whitespace<br>elec-pair company-oddmuse company-keywords company-etags comp= any-gtags<br>company-dabbrev-code company-dabbrev company-files company-cla= ng<br>company-capf company-cmake company-semantic company-template<br>compa= ny-bbdb oc-basic ol-eww evil-collection-eww eww vtable url-queue<br>mm-url = ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu<br>mml2015 m= m-view mml-smime smime gnutls dig gnus-sum gnus-group gnus-undo<br>gnus-sta= rt gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec<br>gnus-int gnu= s-range evil-collection-message message sendmail yank-media<br>rfc822 mml m= ml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231<br>rfc2047 rfc2045 = ietf-drums mailabbrev gmm-utils mailheader gnus-win<br>evil-collection-gnus= gnus nnheader gnus-util mail-utils range mm-util<br>mail-prsvr ol-docview = evil-collection-doc-view doc-view jka-compr<br>evil-collection-image image-= mode exif ol-bibtex bibtex ol-bbdb ol-w3m<br>ol-doi org-link-doi evil-colle= ction-flycheck flycheck haskell-mode<br>haskell-cabal haskell-utils haskell= -font-lock haskell-indentation<br>haskell-string haskell-sort-imports haske= ll-lexeme haskell-align-imports<br>haskell-complete-module haskell-ghc-supp= ort flymake-proc etags dabbrev<br>haskell-customize yasnippet-snippets-auto= loads yasnippet-snippets<br>flycheck-autoloads haskell-mode-autoloads cfg-r= ust rust-ts-mode<br>c-ts-common cc-mode cc-fonts cc-guess cc-menus cc-cmds = cc-styles<br>cc-align cc-engine cc-vars cc-defs cfg-haskell cfg-lisp-packag= es<br>nv-transient lisp-format-butler lisp-ss avy puni cider-macroexpansion= <br>rainbow-delimiters avy-autoloads puni-autoloads clj-refactor-autoloads<= br>clj-refactor cap-words superword subword hydra lv inflections<br>mc-hide= -unmatched-lines-mode mc-mark-more sgml-mode facemenu<br>mc-cycle-cursors m= ultiple-cursors-core paredit yasnippet cider-autoloads<br>evil-collection-c= ider cider evil-collection-package-menu package<br>url-handlers package-act= ivate cider-debug cider-browse-ns cider-mode<br>cider-xref-backend cider-fi= nd cider-completion cider-profile<br>cider-inspector cider-eval cider-conne= ction cider-repl-history pulse<br>cider-repl cider-test cider-resolve cider= -compilation cider-stacktrace<br>cider-overlays cider-doc cider-browse-spec= cider-clojuredocs cider-popup<br>cider-jack-in cider-inspiration cider-end= point tramp-sh cider-eldoc<br>cider-docstring shr pixel-fill kinsoku url-fi= le puny svg xml dom<br>cider-cljs cider-client cider-common cider-completio= n-context<br>cider-session cider-util sesman-browser sesman vc nrepl-client= <br>nrepl-bencode nrepl-dict queue spinner clojure-mode lisp-mnt parseedn<b= r>parseclj-parser parseclj-lex parseclj-alist sesman-autoloads<br>spinner-a= utoloads queue-autoloads hydra-autoloads lv-autoloads<br>parseedn-autoloads= parseclj-autoloads multiple-cursors-autoloads<br>paredit-autoloads yasnipp= et-autoloads inflections-autoloads<br>clojure-mode-autoloads rainbow-delimi= ters-autoloads clojure-ts-mode<br>align magit-bookmark evil-collection-magi= t magit-submodule magit-blame<br>magit-stash magit-reflog magit-bisect magi= t-push magit-pull magit-fetch<br>magit-clone magit-remote magit-commit magi= t-sequence magit-notes<br>magit-worktree magit-tag magit-merge magit-branch= magit-reset<br>magit-files magit-refs magit-status magit evil-collection-e= pa epa<br>derived epg rfc6068 epg-config evil-collection-magit-repos magit-= repos<br>magit-apply magit-wip magit-log magit-diff which-func<br>evil-coll= ection-smerge-mode smerge-mode git-commit<br>evil-collection-log-edit log-e= dit pcvs-util add-log magit-core<br>magit-autorevert magit-margin magit-tra= nsient magit-process<br>evil-collection-with-editor with-editor magit-mode = browse-url benchmark<br>magit-git server magit-base browse-at-remote evil-c= ollection-vc-git<br>vc-git vc-dispatcher f evil-collection-org-roam org-roa= m-migrate<br>org-roam-log org-roam-mode org-roam-capture org-roam-id org-ro= am-node<br>crm org-roam-db org-roam-utils org-roam-compat org-roam org-capt= ure<br>org-attach emacsql-sqlite emacsql emacsql-compiler<br>evil-collectio= n-magit-section magit-section cursor-sensor transient<br>llama cond-let ob-= sql ob-clojure evil-collection-org embark-org<br>org-element org-persist or= g-id org-refile avl-tree org ob ob-tangle<br>ob-ref ob-lob ob-table ob-exp = org-macro org-src<br>evil-collection-sh-script sh-script smie treesit execu= table ob-comint<br>org-element-ast inline org-pcomplete org-list org-footno= te org-faces<br>org-entities evil-collection-outline noutline outline ob-em= acs-lisp<br>ob-core ob-eval org-cycle org-table ol org-fold org-fold-core o= rg-keys<br>oc org-compat evil-collection-calendar cal-menu calendar cal-loa= ddefs<br>org-version org-macs evil-collection-vterm vterm tramp-cache time-= stamp<br>tramp trampver tramp-integration files-x tramp-message tramp-compa= t xdg<br>parse-time iso8601 time-date format-spec tramp-loaddefs face-remap= <br>evil-collection-term term disp-table shell pcomplete ehelp vterm-module= <br>term/xterm xterm evil-collection-wgrep wgrep jarchive<br>evil-collectio= n-arc-mode arc-mode archive-mode projectile fileloop<br>generator evil-coll= ection-grep grep ibuf-ext evil-collection-ag ag<br>vc-svn find-dired dash e= vil-collection-dired dired dired-loaddefs<br>evil-collection-ibuffer ibuffe= r ibuffer-loaddefs<br>evil-collection-unimpaired evil-collection-xref evil-= collection-vertico<br>evil-collection-tabulated-list evil-collection-tab-ba= r<br>evil-collection-simple evil-collection-replace<br>evil-collection-proc= ess-menu evil-collection-minibuffer<br>evil-collection-kmacro evil-collecti= on-indent evil-collection-imenu<br>evil-collection-help evil-collection-fly= make evil-collection-ert<br>evil-collection-embark evil-collection-elisp-mo= de evil-collection-eldoc<br>evil-collection-elpaca evil-collection-eglot ev= il-collection-diff-mode<br>evil-collection-debug evil-collection-consult ev= il-collection-compile<br>evil-collection-company evil-collection-comint evi= l-collection-buff-menu<br>evil-collection-bookmark evil-collection annalist= evil evil-integration<br>evil-maps evil-commands reveal evil-jumps evil-co= mmand-window evil-types<br>evil-search evil-ex evil-macros evil-repeat evil= -states evil-core<br>evil-common rect evil-vars company super-save edmacro = kmacro marginalia<br>embark-consult consult bookmark embark ffap vertico or= derless compat<br>solarized-dark-theme solarized solarized-faces color amx = s<br>clojure-ts-mode-autoloads magit-autoloads with-editor-autoloads<br>bro= wse-at-remote-autoloads f-autoloads org-roam-autoloads<br>magit-section-aut= oloads llama-autoloads cond-let-autoloads<br>emacsql-autoloads org-loaddefs= vterm-autoloads wgrep-autoloads<br>jarchive-autoloads projectile-autoloads= ag-autoloads dash-autoloads<br>evil-collection-autoloads annalist-autoload= s evil-autoloads<br>goto-chg-autoloads company-autoloads posframe-autoloads= <br>super-save-autoloads marginalia-autoloads embark-consult-autoloads<br>c= onsult-autoloads embark-autoloads vertico-autoloads orderless-autoloads<br>= solarized-dark-theme-autoloads amx-autoloads s-autoloads desktop<br>framese= t eglot tree-widget wid-edit external-completion jsonrpc xref<br>flymake th= ingatpt project diff diff-mode track-changes ert pp ewoc debug<br>backtrace= find-func compile text-property-search comint ansi-osc<br>ansi-color ring = pcase imenu autorevert filenotify elpaca-menu-elpa comp<br>comp-cstr warnin= gs comp-run comp-common rx general general-autoloads<br>elpaca-menu-melpa e= lpaca-menu-org cl-extra help-mode elpaca-use-package<br>use-package use-pac= kage-ensure use-package-delight use-package-diminish<br>use-package-bind-ke= y bind-key easy-mmode use-package-core<br>elpaca-use-package-autoloads hl-l= ine display-line-numbers elpaca-log<br>elpaca-ui url url-proxy url-privacy = url-expand url-methods url-history<br>url-cookie generate-lisp-file url-dom= suf url-util url-parse auth-source<br>cl-seq eieio eieio-core cl-macs icons= password-cache json subr-x<br>mule-util map url-vars mailcap byte-opt byte= comp byte-compile elpaca-git<br>elpaca elpaca-process elpaca-autoloads earl= y-init savehist gv<br>els-bootstrap cl-loaddefs cl-lib rmc iso-transl toolt= ip cconv eldoc<br>paren electric uniquify ediff-hook vc-hooks lisp-float-ty= pe elisp-mode<br>mwheel term/x-win x-win term/common-win x-dnd touch-screen= tool-bar dnd<br>fontset image regexp-opt fringe tabulated-list replace new= comment<br>text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn= -eshadow<br>isearch easymenu timer select scroll-bar mouse jit-lock font-lo= ck syntax<br>font-core term/tty-colors frame minibuffer nadvice seq simple = cl-generic<br>indonesian philippine cham georgian utf-8-lang misc-lang viet= namese<br>tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew= greek<br>romanian slovak czech european ethiopic indian cyrillic chinese<b= r>composite emoji-zwj charscript charprop case-table epa-hook<br>jka-cmpr-h= ook help abbrev obarray oclosure cl-preloaded button loaddefs<br>theme-load= defs faces cus-face macroexp files window text-properties<br>overlay sha1 m= d5 base64 format env code-pages mule custom widget keymap<br>hashtable-prin= t-readable backquote threads dbusbind inotify lcms2<br>dynamic-setting syst= em-font-setting font-render-setting cairo gtk<br>x-toolkit xinput2 x multi-= tty move-toolbar make-network-process<br>tty-child-frames native-compile em= acs)<br><br>Memory information:<br>((conses 16 1150076 2010881) (symbols 48= 62653 228)<br>=C2=A0(strings 32 360082 119023) (string-bytes 1 9357199)<br= >=C2=A0(vectors 16 98297) (vector-slots 8 1573186 289693)<br>=C2=A0(floats = 8 746 13264) (intervals 56 2257 1559) (buffers 1064 34))<br></div> --00000000000043d4e2065b5a36ed--
Blake Miller <blak3mill3r@HIDDEN>:bug-gnu-emacs@HIDDEN.
Full text available.bug-gnu-emacs@HIDDEN:bug#81861; Package emacs.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.