From unknown Sun Jun 22 17:18:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#60223: 29.0.60; Improve how tree-sitter changes to treesit--font-lock-fast-mode Resent-From: ronisbr Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 20 Dec 2022 15:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 60223 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 60223@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.167155118623191 (code B ref -1); Tue, 20 Dec 2022 15:47:01 +0000 Received: (at submit) by debbugs.gnu.org; 20 Dec 2022 15:46:26 +0000 Received: from localhost ([127.0.0.1]:45619 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7eoz-00061z-3J for submit@debbugs.gnu.org; Tue, 20 Dec 2022 10:46:26 -0500 Received: from lists.gnu.org ([209.51.188.17]:47918) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7dIK-0002i7-3H for submit@debbugs.gnu.org; Tue, 20 Dec 2022 09:08:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p7dIJ-0001ys-PR for bug-gnu-emacs@gnu.org; Tue, 20 Dec 2022 09:08:35 -0500 Received: from ronanarraes.com ([144.202.5.81] helo=mail.ronanarraes.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p7dIE-0003aN-S8 for bug-gnu-emacs@gnu.org; Tue, 20 Dec 2022 09:08:35 -0500 Received: from mail.ronanarraes.com (ronanarraes [144.202.5.81]) by mail.ronanarraes.com (Postfix) with ESMTPSA id D91AC20935 for ; Tue, 20 Dec 2022 14:08:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ronanarraes.com; s=mail; t=1671545308; bh=fJ+A7VJJReO8zPv6Ggeg1ADsEeTxDOzhe0iI+4SD6d8=; h=Date:From:To:Subject; b=rOSqt1BWSFsocRJOCYDRMQoWw3wCBJMiKX62dqsZSZjJfyvPxBX2TWs+1BtjDY7T2 Wky3kXA63dNex1QbmZQe9xZGDpw0J8o4avlhgwe++Lu5JXlDvXFAL274gkb4JZtGO2 SIjPYyU+IxtEMx4rhX4s5okGuoOVSIAV0Sp48Upo= MIME-Version: 1.0 Date: Tue, 20 Dec 2022 11:08:28 -0300 From: ronisbr Message-ID: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> X-Sender: ronisbr@ronanarraes.com Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Received-SPF: pass client-ip=144.202.5.81; envelope-from=ronisbr@ronanarraes.com; helo=mail.ronanarraes.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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Mailman-Approved-At: Tue, 20 Dec 2022 10:46:24 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) Hi! First of all, this is my very first interaction with Emacs mailing list. I have a problem in the tree-sitter module that leads to a bug (Emacs 29). Hence, I am not even sure if this is the right place to report it. treesit.el has a fast font-lock mode that is also used to avoid locking if some a query is taking too long: ;; If for any query the query time is strangely long, ;; switch to fast mode (see comments above). (when (> (time-to-seconds (time-subtract end-time start-time)) 0.01) (setq-local treesit--font-lock-fast-mode t)) When coding Julia major mode using tree-sitter (https://github.com/ronisbr/julia-ts-mode/blob/main/julia-ts-mode.el), I found a strange behavior in my setup (Doom Emacs) that is caused precisely by that feature. If I open this file together with Emacs (first initialization): https://github.com/ronisbr/PrettyTables.jl/blob/master/src/print.jl The file has almost no font decoration and `treesit--font-lock-fast-mode` is set to t. If I manually set it to nil and recompute everything, the font locking works perfectly again. However, everything works as expected if I open any other Julia code before opening that file (print.jl). In this case, `treesit--font-lock-fast-mode` remains nil. My guess is that due to something that might or might not be related to my setup, the query is taking longer than the 0.01s if I open that file during the initialization of Julia mode. It is caused by that enormous string used to document the function that seems to slow down tree-sitter parsing. Thus, I think it would be very important to have a variable to customize this time interval depending on the situation. Best regards, Ronan Arraes In GNU Emacs 29.0.60 (build 1, aarch64-apple-darwin22.2.0, NS appkit-2299.30 Version 13.1 (Build 22C65)) of 2022-12-19 built on Mac-Studio-de-Ronan.local System Description: macOS 13.1 Configured using: 'configure --disable-dependency-tracking --disable-silent-rules --enable-locallisppath=/opt/homebrew/share/emacs/site-lisp --infodir=/opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/info/emacs --prefix=/opt/homebrew/Cellar/emacs-plus@29/29.0.60 --with-xml2 --with-gnutls --with-native-compilation --without-compress-install --without-dbus --with-imagemagick --with-modules --with-rsvg --with-xwidgets --with-ns --disable-ns-self-contained 'CFLAGS=-Os -w -pipe -mmacosx-version-min=13 -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk -DFD_SETSIZE=10000 -DDARWIN_UNLIMITED_SELECT' 'CPPFLAGS=-I/opt/homebrew/opt/zlib/include -I/opt/homebrew/opt/jpeg/include -I/opt/homebrew/opt/libomp/include -I/opt/homebrew/opt/icu4c/include -I/opt/homebrew/opt/openssl@1.1/include -I/opt/homebrew/opt/readline/include -isystem/opt/homebrew/include -F/opt/homebrew/Frameworks -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk' 'LDFLAGS=-L/opt/homebrew/opt/zlib/lib -L/opt/homebrew/opt/jpeg/lib -L/opt/homebrew/opt/libomp/lib -L/opt/homebrew/opt/icu4c/lib -L/opt/homebrew/opt/openssl@1.1/lib -L/opt/homebrew/opt/readline/lib -L/opt/homebrew/lib -F/opt/homebrew/Frameworks -Wl,-headerpad_max_install_names -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk'' Configured features: ACL GIF GLIB GMP GNUTLS IMAGEMAGICK JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM XWIDGETS ZLIB Important settings: value of $LC_ALL: pt_BR.UTF-8 value of $LC_CTYPE: pt_BR.UTF-8 value of $LANG: pt_BR.UTF-8 locale-coding-system: utf-8-unix Major mode: DOOM v3.0.0-pre Minor modes in effect: flyspell-lazy-mode: t which-key-mode: t savehist-mode: t better-jumper-mode: t better-jumper-local-mode: t global-company-mode: t company-mode: t vertico-mode: t marginalia-mode: t evil-goggles-mode: t evil-escape-mode: t evil-snipe-override-mode: t evil-snipe-mode: t evil-snipe-override-local-mode: t evil-snipe-local-mode: t gcmh-mode: t global-hl-line-mode: t hl-line-mode: t winner-mode: t smartparens-global-mode: t ws-butler-global-mode: t global-emojify-mode: t emojify-mode: t global-undo-fu-session-mode: t undo-fu-mode: t xterm-mouse-mode: t xclip-mode: t persp-mode: t doom-modeline-mode: t solaire-global-mode: t solaire-mode: t shell-dirtrack-mode: t evil-mode: t evil-local-mode: t windmove-mode: t +popup-mode: t override-global-mode: t general-override-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t window-divider-mode: t buffer-read-only: t size-indication-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/cmake-mode/cmake-mode hides /opt/homebrew/share/emacs/site-lisp/cmake/cmake-mode /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/transient/transient hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/transient /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-jump hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-jump /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-diminish hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-diminish /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-delight hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-delight /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-lint hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-lint /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/bind-key/bind-key hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/bind-key /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-core hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-core /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-ensure hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-ensure /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/use-package/use-package-bind-key hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/use-package/use-package-bind-key /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/xref/xref hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/progmodes/xref /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/project/project hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/progmodes/project /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-comint hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-comint /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-exp hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-exp /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-ctags hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-ctags /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-emacs-lisp hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-emacs-lisp /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-texinfo hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-texinfo /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-irc hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-irc /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-doi hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-doi /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-refile hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-refile /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-version hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-version /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-num hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-num /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-mhe hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-mhe /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-shell hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-shell /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-attach hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-attach /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-C hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-C /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-macs hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-macs /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-entities hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-entities /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-dot hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-dot /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-sql hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-sql /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-eww hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-eww /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-datetree hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-datetree /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-macro hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-macro /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-eval hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-eval /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-haskell hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-haskell /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-org hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-org /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-rmail hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-rmail /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-awk hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-awk /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-groovy hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-groovy /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-icalendar hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-icalendar /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-octave hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-octave /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-scheme hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-scheme /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-mobile hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-mobile /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-processing hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-processing /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc-biblatex hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc-biblatex /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc-csl hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc-csl /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-colview hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-colview /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-R hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-R /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-table hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-table /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-html hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-html /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-fortran hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-fortran /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-plantuml hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-plantuml /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-docview hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-docview /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-perl hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-perl /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-sqlite hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-sqlite /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc-basic hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc-basic /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-sed hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-sed /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-fold-core hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-fold-core /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-ditaa hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-ditaa /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-ruby hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-ruby /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc-bibtex hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc-bibtex /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-habit hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-habit /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-gnus hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-gnus /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-screen hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-screen /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-mouse hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-mouse /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-css hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-css /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-inlinetask hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-inlinetask /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-lisp hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-lisp /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-eshell hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-eshell /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-pcomplete hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-pcomplete /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-lint hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-lint /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-id hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-id /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-capture hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-capture /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-sass hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-sass /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-tangle hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-tangle /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-calc hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-calc /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-java hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-java /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-compat hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-compat /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-attach-git hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-attach-git /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-beamer hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-beamer /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-protocol hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-protocol /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-element hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-element /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-lob hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-lob /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-tempo hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-tempo /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-python hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-python /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-latex hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-latex /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-w3m hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-w3m /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-agenda hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-agenda /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-persist hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-persist /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-ocaml hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-ocaml /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-ref hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-ref /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-fold hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-fold /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-julia hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-julia /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-lilypond hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-lilypond /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-table hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-table /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-clojure hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-clojure /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-indent hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-indent /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-plot hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-plot /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-latex hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-latex /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-src hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-src /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-duration hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-duration /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-makefile hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-makefile /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-info hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-info /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-clock hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-clock /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-forth hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-forth /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-odt hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-odt /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-man hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-man /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-publish hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-publish /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-archive hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-archive /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-org hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-org /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-lua hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-lua /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-keys hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-keys /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-eshell hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-eshell /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-faces hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-faces /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-man hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-man /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-list hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-list /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-md hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-md /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-goto hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-goto /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-bbdb hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-bbdb /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ol-bibtex hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ol-bibtex /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-koma-letter hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-koma-letter /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox-ascii hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox-ascii /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-matlab hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-matlab /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ox hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ox /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-timer hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-timer /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/oc-natbib hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/oc-natbib /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-core hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-core /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-feed hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-feed /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-gnuplot hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-gnuplot /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-js hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-js /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-footnote hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-footnote /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/ob-maxima hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/ob-maxima /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-cycle hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-cycle /Users/ronan.arraes/.emacs.d/.local/straight/build-29.0.60/org/org-crypt hides /opt/homebrew/Cellar/emacs-plus@29/29.0.60/share/emacs/29.0.60/lisp/org/org-crypt Features: (shadow sort disp-table whitespace vc-hg evil-collection-vc-git vc-git evil-collection-diff-mode diff-mode vc-svn vc vc-dispatcher project flyspell-lazy ispell flyspell vi-tilde-fringe display-line-numbers highlight-indent-guides adaptive-wrap mail-extr recentf tree-widget emacsbug message mailcap yank-media puny evil-collection-dired dired dired-loaddefs rfc822 mml mml-sec password-cache evil-collection-epa epa epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils time-date cursor-sensor vertico-repeat evil-collection-which-key which-key savehist better-jumper company-capf company evil-collection-vertico vertico orderless marginalia evil-goggles pulse evil-easymotion evil-escape evil-snipe autorevert filenotify gcmh hl-line winner smartparens-config smartparens-text smartparens ws-butler emojify evil-collection-apropos apropos evil-collection-tar-mode tar-mode evil-collection-arc-mode evil-collection-custom cus-edit cus-start cus-load wid-edit evil-collection-comint evil-collection annalist arc-mode archive-mode json map ht undo-fu-session undo-fu xt-mouse xclip evil-terminal-cursor-changer color term/xterm xterm persp-mode doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons shrink-path f f-shortdoc shortdoc text-property-search s dash compat dtrt-indent doom-themes-ext-treemacs doom-themes-ext-org solaire-mode face-remap doom-one-theme doom-themes doom-themes-base text-align julia-local fill-line comment-align setup-vterm setup-treemacs setup-spell setup-prog-mode setup-org-mode setup-menu-bar setup-keybindings setup-evil setup-emojify setup-company setup-auctex let-alist ob-core org-cycle org-fold org-fold-core org-compat ob-eval org-version org-macs format-spec evil evil-integration evil-maps evil-commands reveal evil-jumps evil-command-window evil-search shell pcomplete comint ansi-osc ansi-color evil-types evil-macros evil-repeat evil-states evil-core comp comp-cstr warnings icons rx byte-opt advice evil-common windmove calc calc-loaddefs calc-macs thingatpt rect evil-digraphs evil-vars ring derived edmacro kmacro use-package-bind-key bind-key doom-editor doom-projects doom-ui easy-mmode doom-keybinds pp cl-extra help-mode use-package-core bytecomp byte-compile general tex-site doom-start doom-modules cl-seq doom doom-lib cl-macs cl-loaddefs cl-lib pcase gv jansson dynamic-modules subr-x rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win 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 xwidget-internal kqueue cocoa ns lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 438407 415086) (symbols 48 29692 10) (strings 32 132168 31357) (string-bytes 1 3229232) (vectors 16 67829) (vector-slots 8 2682837 236595) (floats 8 997 798) (intervals 56 843 120) (buffers 984 13)) From unknown Sun Jun 22 17:18:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#60223: 29.0.60; Improve how tree-sitter changes to treesit--font-lock-fast-mode References: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> In-Reply-To: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> Resent-From: Yuan Fu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Dec 2022 04:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60223 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: ronisbr@ronanarraes.com Cc: 60223@debbugs.gnu.org Received: via spool by 60223-submit@debbugs.gnu.org id=B60223.16715962563611 (code B ref 60223); Wed, 21 Dec 2022 04:18:02 +0000 Received: (at 60223) by debbugs.gnu.org; 21 Dec 2022 04:17:36 +0000 Received: from localhost ([127.0.0.1]:49133 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7qXw-0000wB-0u for submit@debbugs.gnu.org; Tue, 20 Dec 2022 23:17:36 -0500 Received: from mail-pj1-f54.google.com ([209.85.216.54]:35336) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7qXu-0000w5-Do for 60223@debbugs.gnu.org; Tue, 20 Dec 2022 23:17:35 -0500 Received: by mail-pj1-f54.google.com with SMTP id w4-20020a17090ac98400b002186f5d7a4cso967118pjt.0 for <60223@debbugs.gnu.org>; Tue, 20 Dec 2022 20:17:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:from:to:cc:subject:date:message-id :reply-to; bh=28xbfhGxE3f/dKt6eD1DtXMWcqBs0BWoL7XPYRg5lCs=; b=J6N9D50TZIM7J1P9Ar1fbnYRtyGIeYNc/9IlZgONwYyOovDbSnCU0PukQjVhpnZtiB l4wyyBKUOadlZGPD7gWy5uhpXz3/va1VyO5BZI4kdbpcgQX743cgAkCPxY/s0eoZdL4e NYMEI8ap1X08IfThR3oAFp5uQFY9qU/HQ6zDA9Wb7myEHWkviEDYJPBE2Zxjf9eIDfHT 5s6B3VMzLDldqz4hRAn8OX+9p157gYz39PW6S9NwvDOsUVB3qRQhISO5VMhKA4ZIOveB dRWbBi/dneNWIKO7lSEnQSbNwteIZG8hdKHPDVRBfD7qfRpGF5p1uq6/FObdHWRX9Acd uVXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=28xbfhGxE3f/dKt6eD1DtXMWcqBs0BWoL7XPYRg5lCs=; b=M893rF6+E8mTBnyTaHBWtizoqJvCF44YP/ADj+jKEVGlaH1+IeLi8L0kRqrjEfJi8O 6XDzJfsZQtZGAF2dRwQeojpQlpbY907PXOejkR93xsaIZTAamfxbnIupCIpbnG8eBjS7 fa8VKIfhsu3EaXF9LolJaNgpNAFoSA/7OeQww79rMTTqdkH3ibazI7nNDvHGjTac2MFW LWquyEr3VC3RVpYY9+nzK8uJW/cLkAz8XDiMKxxx9nEctglEDoXEj1two+uq0i5KnxKD DmqNHT7hP02ErlXfehhAtXqk55TRYWNC2C+xphr7KYcwJhOxS3Y/69i8BJoSsaQ8j/VS DViw== X-Gm-Message-State: AFqh2kr6LL0qNLKKaWEx6OBAFSaf/bGkZz8Eiab24flO65Gny+BaFohF YTFgQV3fsqHahUO8NqzwNYo= X-Google-Smtp-Source: AMrXdXu9kZfzh4HhonzMdcqD8kYdZnp7SNVcyfpnNrKSEBtF60dJcPliSRTp4dRai4NZAfWRgKvHKA== X-Received: by 2002:a17:902:7d92:b0:191:460e:84e1 with SMTP id a18-20020a1709027d9200b00191460e84e1mr629478plm.2.1671596248451; Tue, 20 Dec 2022 20:17:28 -0800 (PST) Received: from smtpclient.apple (cpe-172-117-161-177.socal.res.rr.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id p8-20020a170902780800b001870dc3b4c0sm10196804pll.74.2022.12.20.20.17.27 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Dec 2022 20:17:28 -0800 (PST) From: Yuan Fu Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Message-Id: <813B3BC7-BD3C-4327-A175-DEB43B2EB11E@gmail.com> Date: Tue, 20 Dec 2022 20:17:26 -0800 X-Mailer: Apple Mail (2.3696.120.41.1.1) X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) ronisbr writes: > Hi! > > First of all, this is my very first interaction with Emacs mailing > list. I have > a problem in the tree-sitter module that leads to a bug (Emacs 29). > Hence, I am > not even sure if this is the right place to report it. > > treesit.el has a fast font-lock mode that is also used to avoid > locking if some > a query is taking too long: > > ;; If for any query the query time is strangely long, > ;; switch to fast mode (see comments above). > (when (> (time-to-seconds (time-subtract end-time > start-time)) > 0.01) > (setq-local treesit--font-lock-fast-mode t)) > > When coding Julia major mode using tree-sitter > (https://github.com/ronisbr/julia-ts-mode/blob/main/julia-ts-mode.el), > I found a > strange behavior in my setup (Doom Emacs) that is caused precisely by > that > feature. > > If I open this file together with Emacs (first initialization): > > https://github.com/ronisbr/PrettyTables.jl/blob/master/src/print.jl > > The file has almost no font decoration and > `treesit--font-lock-fast-mode` is set > to t. If I manually set it to nil and recompute everything, the font > locking > works perfectly again. > > However, everything works as expected if I open any other Julia code > before > opening that file (print.jl). In this case, > `treesit--font-lock-fast-mode` > remains nil. > > My guess is that due to something that might or might not be related > to my > setup, the query is taking longer than the 0.01s if I open that file > during the > initialization of Julia mode. It is caused by that enormous string > used to > document the function that seems to slow down tree-sitter parsing. > Thus, I think > it would be very important to have a variable to customize this time > interval > depending on the situation. > > Best regards, > Ronan Arraes > Thanks for the report! The "fast mode" should be buffer-local, so that particular file shouldn=E2=80=99t affect other buffers. Just to make sure, you said that = if you open print.jl first, all other files are affected? And I agree that the 0.01 second criterion is a crude one, but a long string shouldn=E2=80=99t affect the _query_ time, and that string is not = long at all, far from enough to make tree-sitter query to slow down. Let me investigate and see what=E2=80=99s the real cause, and if this can be = solved by better solutions than making the threshold customizable. We can=E2=80=99t = expect everyone to be able to pinpoint the culprit like you did :-) Yuan From unknown Sun Jun 22 17:18:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#60223: 29.0.60; Improve how tree-sitter changes to treesit--font-lock-fast-mode Resent-From: ronisbr Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 21 Dec 2022 17:40:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60223 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Yuan Fu Cc: 60223@debbugs.gnu.org Received: via spool by 60223-submit@debbugs.gnu.org id=B60223.16716443611449 (code B ref 60223); Wed, 21 Dec 2022 17:40:03 +0000 Received: (at 60223) by debbugs.gnu.org; 21 Dec 2022 17:39:21 +0000 Received: from localhost ([127.0.0.1]:53064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p833o-0000NJ-RO for submit@debbugs.gnu.org; Wed, 21 Dec 2022 12:39:21 -0500 Received: from ronanarraes.com ([144.202.5.81]:59486 helo=mail.ronanarraes.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p81VA-0007el-BZ for 60223@debbugs.gnu.org; Wed, 21 Dec 2022 10:59:29 -0500 Received: from mail.ronanarraes.com (ronanarraes [144.202.5.81]) by mail.ronanarraes.com (Postfix) with ESMTPSA id 6A0EB20E33; Wed, 21 Dec 2022 15:59:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ronanarraes.com; s=mail; t=1671638367; bh=1l0LVt4430A42BELuVQO0Xr/Il5Mw7bLXIsvnddTPrY=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=Ag9BEwRyRalKzkj3kQeciPAPN53n11BSAYu72stw0EUIBkJ4A7TuntNrEEgpFxTQX rg9/soqXezFfE7EVC2YMSPh5Y4iR765GPwKhgkWIXdUdXezIbuqijqet4wDRozD3hN QRfDshLobc6L4hddCYWTA1G7hZZfBu09QdVg6F1c= MIME-Version: 1.0 Date: Wed, 21 Dec 2022 12:59:27 -0300 From: ronisbr In-Reply-To: <813B3BC7-BD3C-4327-A175-DEB43B2EB11E@gmail.com> References: <813B3BC7-BD3C-4327-A175-DEB43B2EB11E@gmail.com> Message-ID: X-Sender: ronisbr@ronanarraes.com Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Mailman-Approved-At: Wed, 21 Dec 2022 12:39:19 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Yuan! Em 2022-12-21 01:17, Yuan Fu escreveu: > Thanks for the report! > > The "fast mode" should be buffer-local, so that particular file > shouldn’t affect other buffers. Just to make sure, you said that if you > open print.jl first, all other files are affected? Sorry for the misunderstanding. Indeed, only print.jl is affected. The behavior is: 1. If I open `print.jl` as the first file, the fast mode is activated, and the buffer shows a very strange font lock. All other buffers (including Julia files) work as expected. 2. If I open any other Julia file and then I open `print.jl`, the fast mode is not activated, and everything works as expected. > And I agree that the 0.01 second criterion is a crude one, but a long > string shouldn’t affect the _query_ time, and that string is not long > at > all, far from enough to make tree-sitter query to slow down. Let me > investigate and see what’s the real cause, and if this can be solved by > better solutions than making the threshold customizable. We can’t > expect > everyone to be able to pinpoint the culprit like you did :-) > > Yuan Thanks! Let me know if I can help debugging :) Best regards, Ronan Arraes From unknown Sun Jun 22 17:18:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#60223: 29.0.60; Improve how tree-sitter changes to treesit--font-lock-fast-mode References: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> In-Reply-To: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> Resent-From: Yuan Fu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 24 Dec 2022 09:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60223 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: ronisbr@ronanarraes.com Cc: 60223@debbugs.gnu.org Received: via spool by 60223-submit@debbugs.gnu.org id=B60223.167187439115437 (code B ref 60223); Sat, 24 Dec 2022 09:34:02 +0000 Received: (at 60223) by debbugs.gnu.org; 24 Dec 2022 09:33:11 +0000 Received: from localhost ([127.0.0.1]:41995 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p90tz-00040v-01 for submit@debbugs.gnu.org; Sat, 24 Dec 2022 04:33:11 -0500 Received: from mail-pf1-f179.google.com ([209.85.210.179]:39690) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p90tw-00040p-WA for 60223@debbugs.gnu.org; Sat, 24 Dec 2022 04:33:09 -0500 Received: by mail-pf1-f179.google.com with SMTP id w26so4652448pfj.6 for <60223@debbugs.gnu.org>; Sat, 24 Dec 2022 01:33:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:from:to:cc:subject:date:message-id :reply-to; bh=o0Z+Rn+g3IoDBf+mbTQjgYzutU49qZq/bRF6SHsTd20=; b=oYpB7j1h6+LDmwc6MUQVE8ZHJlGukayrBO9um2Of4Q2tscT+FJZGjLZg0LE3mWM99F nBRkzIDNQCkKZhvT5hi0wparb9RLV60Mps2dq21kmMFttc3m1qxpIUZ5UKr93wsA5j0/ wxZpTraWabZ98GiZ2sCKC1rc/Gjqby06fxUljIe4Dnni0Gp1OYD5yr4SxHQ5OJUpGm5N O4yrt/aac2yIXvAqkVQ0fVeV69s4SRyfQK1I4824gM5EWqXt1IRMN9SNQ1JjtuL//175 4TBdEweasW/5gHtlmAz445CAODy04HjEEuV+Rg98uLHVIsE8YNPQemA80GGxfgkksGP6 L0Ag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=o0Z+Rn+g3IoDBf+mbTQjgYzutU49qZq/bRF6SHsTd20=; b=KYNZ1DY3IF2H3flB7peP6AbCL6Sd5llFlOHMaR1wBWVkqeRZoKRUrK4RpNW3Bf6dET as8V5gkTjbgPd+GX2EoXZxf2JriNYEpCUBgfPVi0ArG4fiyDOLnaR5sb9vU7cAajfktj +jBj+zfzYvpFsQUphN5uVnzosb4YtuikQAYKGFnA0EBI90Ij4e3H96dwmLM9vUuMJIwn scNHoU+HrN4/g8Rc/xT/9Ywgpq6AJEU54W7Ou7JpDn5wyvEYgjzQaL1d8w48fcd6FYRZ sjhPCGcrrwOXzzN7IPp2CrpL3Pj6UQs4Zn4/JPQ9U/1qFOptBDLjFDgW1ZpOu2FdB5gY FCfA== X-Gm-Message-State: AFqh2kox5VcX8AghpxZ7/l3nQ6eYd2i8ZoZblsr8eN3i8eixyKIhbgke TajaimAljMC5hliTBtTL6Is= X-Google-Smtp-Source: AMrXdXvROuHEWnqTwTyaMA+ehHGwV0YJyQQo/M43U/Z+v9u+2Kc6EsTZgMe35ykEGaW6JRnjKqmDXQ== X-Received: by 2002:aa7:86d3:0:b0:577:3523:bd1f with SMTP id h19-20020aa786d3000000b005773523bd1fmr30024477pfo.14.1671874383167; Sat, 24 Dec 2022 01:33:03 -0800 (PST) Received: from smtpclient.apple (cpe-172-117-161-177.socal.res.rr.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id a24-20020aa795b8000000b00576ce9ed31csm3798216pfk.56.2022.12.24.01.33.02 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 24 Dec 2022 01:33:02 -0800 (PST) From: Yuan Fu Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Message-Id: Date: Sat, 24 Dec 2022 01:33:01 -0800 X-Mailer: Apple Mail (2.3696.120.41.1.1) X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) ronisbr writes: > Hi Yuan! > > Em 2022-12-21 01:17, Yuan Fu escreveu: >> Thanks for the report! >> The "fast mode" should be buffer-local, so that particular file >> shouldn=E2=80=99t affect other buffers. Just to make sure, you said = that if you >> open print.jl first, all other files are affected? > > Sorry for the misunderstanding. Indeed, only print.jl is affected. > > The behavior is: > > 1. If I open `print.jl` as the first file, the fast mode is > activated, > and the buffer shows a very strange font lock. All other = buffers > (including Julia files) work as expected. > 2. If I open any other Julia file and then I open `print.jl`, the > fast > mode is not activated, and everything works as expected. Cool, that makes much more sence. >> And I agree that the 0.01 second criterion is a crude one, but a long >> string shouldn=E2=80=99t affect the _query_ time, and that string is = not >> long at >> all, far from enough to make tree-sitter query to slow down. Let me >> investigate and see what=E2=80=99s the real cause, and if this can be = solved by >> better solutions than making the threshold customizable. We can=E2=80=99= t >> expect >> everyone to be able to pinpoint the culprit like you did :-) >> Yuan > > Thanks! Let me know if I can help debugging :) Which julia parser are you using? I installed the "official" one at here: https://github.com/tree-sitter/tree-sitter-julia but some queries in julia-ts-mode.el are not accepted by it, like the (true) pattern: the parser I downloaded wants "true" instead. Also julia-ts-mode has this code (set-electric! 'julia-ts-mode :words '("catch" "else" "elseif" "finally" "end")) which seems like a doom macro or something, since I don=E2=80=99t have = doom Emacs complains about undefined function. I commented it out so no biggy, just FYI. Yuan From unknown Sun Jun 22 17:18:29 2025 X-Loop: help-debbugs@gnu.org Subject: bug#60223: 29.0.60; Improve how tree-sitter changes to treesit--font-lock-fast-mode Resent-From: ronisbr Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 27 Dec 2022 08:49:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60223 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Yuan Fu Cc: 60223@debbugs.gnu.org Received: via spool by 60223-submit@debbugs.gnu.org id=B60223.167213091713500 (code B ref 60223); Tue, 27 Dec 2022 08:49:03 +0000 Received: (at 60223) by debbugs.gnu.org; 27 Dec 2022 08:48:37 +0000 Received: from localhost ([127.0.0.1]:54650 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pA5dU-0003Vf-VQ for submit@debbugs.gnu.org; Tue, 27 Dec 2022 03:48:37 -0500 Received: from ronanarraes.com ([144.202.5.81]:46494 helo=mail.ronanarraes.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pA0S2-00035o-Dv for 60223@debbugs.gnu.org; Mon, 26 Dec 2022 22:16:30 -0500 Received: from mail.ronanarraes.com (ronanarraes [144.202.5.81]) by mail.ronanarraes.com (Postfix) with ESMTPSA id 4622B225CA; Tue, 27 Dec 2022 03:16:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ronanarraes.com; s=mail; t=1672110985; bh=WvLv2mloqnPAps9nM0uL4DCB736mK8CXQGCvvTQENMc=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=qHNVJ93O+/DRBr4xpHf6+coxTUO3H5RnJTFqsur77Co+N6G/HIXwVhNXpm7aloV/3 SqZ2wJ5pVDPic2nXl+usl+wCcnGa8GkTaZPTLZHhbsh2dJxQb3mKtkUSlna50jcQA/ n6LxxmimJuDi/C64+YXNfn73w6jONGfQdv611fRc= MIME-Version: 1.0 Date: Tue, 27 Dec 2022 00:16:25 -0300 From: ronisbr In-Reply-To: References: <2e1e12123516721aed9e7e4ba8fe5409@ronanarraes.com> Message-ID: <2be70e282337a9fff74c084dd6654672@ronanarraes.com> X-Sender: ronisbr@ronanarraes.com Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Mailman-Approved-At: Tue, 27 Dec 2022 03:48:36 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Yuan! Em 2022-12-24 06:33, Yuan Fu escreveu: > Which julia parser are you using? I installed the "official" one at > here: https://github.com/tree-sitter/tree-sitter-julia > > but some queries in julia-ts-mode.el are not accepted by it, like the > (true) pattern: the parser I downloaded wants "true" instead. Yes! I am using that parser. However, this modification happened in a commit 4 days ago, and I have not updated `julia-ts-mode` yet. > Also julia-ts-mode has this code > > (set-electric! 'julia-ts-mode > :words '("catch" > "else" > "elseif" > "finally" > "end")) > > which seems like a doom macro or something, since I don’t have doom > Emacs complains about undefined function. I commented it out so no > biggy, just FYI. Oops, sorry about that! Yes, I am using Doom Emacs and this is probably a macro for it. Best regards, Ronan Arraes