bug#81125: 30.2; 30.2; php-ts-mode font-lock fails with treesit-query-error although query validates
Eli Zaretskii <[email protected]> Sat, 01 Aug 2026 11:59:39 +0300
| Newsgroups | gmane.emacs.bugs |
|---|---|
| Message-ID | <[email protected]> |
Ping! Ping! Ping! Philipp, please chime in. > Cc: [email protected] > Date: Sat, 18 Jul 2026 11:29:29 +0300 > From: Eli Zaretskii <[email protected]> > > Ping! Ping! Philipp, are you there? > > > Cc: [email protected] > > Date: Sat, 04 Jul 2026 10:16:33 +0300 > > From: Eli Zaretskii <[email protected]> > > > > Ping! Philipp, please respond. > > > > > Cc: [email protected] > > > Date: Sat, 20 Jun 2026 11:29:53 +0300 > > > From: Eli Zaretskii <[email protected]> > > > > > > > From: Vincenzo Pupillo <[email protected]> > > > > Cc: [email protected] > > > > Date: Mon, 15 Jun 2026 12:04:18 +0200 > > > > > > > > Ciao Eli, > > > > I replied to Philipp (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=81125#20). > > > > With Emacs 30.2 and the parsers installed via `php-ts-mode-install-parsers', > > > > it works correctly. I suspect the problem lies with the parser that Philipp > > > > installed on his system, which I think is from the 26.x versions, whereas > > > > those installed via `php-ts-mode-install-parsers' are from the previous > > > > version. > > > > > > Thanks, and sorry for missing that response. > > > > > > Philipp, could you please answer Vincenzo's questions? > > > > > > > In data sabato 13 giugno 2026 10:41:23 Ora legale dell’Europa centrale, Eli > > > > Zaretskii ha scritto: > > > > > Ping! Vincenzo, could you please look into this using thefile > > > > > provided by Philipp? > > > > > > > > > > > Date: Fri, 29 May 2026 17:00:39 +0200 > > > > > > From: Philipp Sutter <[email protected]> > > > > > > > > > > > > hi Vincenzo, > > > > > > > > > > > > attached the file structur.php > > > > > > > > > > > > ciao > > > > > > > > > > > > Am 26.05.26 um 19:15 schrieb Vincenzo Pupillo: > > > > > > > Ciao Philipp, > > > > > > > thank you for the bug report. Could you please attach the file > > > > > > > /var/www/html/webSite/pageElement/structur.php mentioned in the bug > > > > > > > report? > > > > > > > > > > > > > > Thanks. > > > > > > > > > > > > > > Vincenzo > > > > > > > > > > > > > > In data martedì 26 maggio 2026 08:35:13 Ora legale dell’Europa centrale, > > > > > > > > > > > > > > Philipp Sutter ha scritto: > > > > > > >> In GNU Emacs 30.2, php-ts-mode fails to fontify a PHP buffer. The > > > > > > >> buffer > > > > > > >> opens in php-ts-mode, LSP starts, but syntax highlighting does not > > > > > > >> work. > > > > > > >> font-lock-ensure signals a treesit-query-error. > > > > > > >> > > > > > > >> The error occurs with emacs -Q, so this is not caused by my Centaur > > > > > > >> Emacs configuration, LSP, Flymake, persp-mode, or custom.el. > > > > > > >> > > > > > > >> Reproducer: > > > > > > >> > > > > > > >> emacs -Q --batch \ > > > > > > >> --eval "(setq treesit-extra-load-path > > > > > > >> '(\"/home/sutter/.emacs.d/tree-sitter\"))" \ > > > > > > >> --eval "(find-file \"/var/www/html/webSite/pageElement/structur.php\")" > > > > > > >> \ > > > > > > >> --eval "(php-ts-mode)" \ > > > > > > >> --eval "(font-lock-mode 1)" \ > > > > > > >> --eval "(font-lock-ensure)" \ > > > > > > >> --eval "(princ (list major-mode font-lock-mode > > > > > > >> (mapcar #'treesit-parser-language > > > > > > >> (treesit-parser-list))))" > > > > > > >> > > > > > > >> Actual result: > > > > > > >> > > > > > > >> Error: treesit-query-error > > > > > > >> ("Node type error at" 41 > > > > > > >> "[\"abstract\" \"and\" \"array\" \"as\" \"break\" \"callable\" \"case\" > > > > > > >> \"catch\" \"class\" \"clone\" \"const\" \"continue\" \"declare\" > > > > > > >> \"default\" \"do\" \"echo\" \"else\" \"elseif\" \"enddeclare\" > > > > > > >> \"endfor\" \"endforeach\" \"endif\" \"endswitch\" \"endwhile\" \"enum\" > > > > > > >> \"exit\" \"extends\" \"final\" \"finally\" \"fn\" \"for\" \"foreach\" > > > > > > >> \"from\" \"function\" \"global\" \"goto\" \"if\" \"implements\" > > > > > > >> \"include\" \"include_once\" \"instanceof\" \"insteadof\" \"interface\" > > > > > > >> \"list\" \"match\" \"namespace\" \"new\" \"null\" \"or\" \"print\" > > > > > > >> \"private\" \"protected\" \"public\" \"readonly\" \"require\" > > > > > > >> \"require_once\" \"return\" \"static\" \"switch\" \"throw\" \"trait\" > > > > > > >> \"try\" \"unset\" \"use\" \"while\" \"xor\" \"yield\"] > > > > > > >> @font-lock-keyword-face (visibility_modifier (operation) > > > > > > >> @font-lock-builtin-face) (var_modifier) @font-lock-builtin-face" > > > > > > >> "Debug the query with `treesit-query-validate'") > > > > > > >> > > > > > > >> Relevant checks: > > > > > > >> > > > > > > >> 1. php-ts-mode comes from Emacs itself: > > > > > > >> > > > > > > >> (symbol-file 'php-ts-mode 'defun) > > > > > > >> => /usr/share/emacs/30.2/lisp/progmodes/php-ts-mode.elc > > > > > > >> > > > > > > >> 2. The corresponding source contains the queried nodes: > > > > > > >> > > > > > > >> zgrep -n "visibility_modifier\\|var_modifier" \ > > > > > > >> /usr/share/emacs/30.2/lisp/progmodes/php-ts-mode.el.gz > > > > > > >> > > > > > > >> 857: "Return t if (visibility_modifier (operation)) is defined, nil > > > > > > >> otherwise." > > > > > > >> 859: (progn (treesit-query-compile 'php "(visibility_modifier > > > > > > >> (operation))" t) t))) > > > > > > >> 875: '((visibility_modifier (operation) @font-lock-builtin-face))) > > > > > > >> 876: (var_modifier) @font-lock-builtin-face) > > > > > > >> > > > > > > >> 3. The installed PHP grammar contains the queried node/type strings: > > > > > > >> > > > > > > >> strings ~/.emacs.d/tree-sitter/libtree-sitter-php.so \ > > > > > > >> > > > > > > >> | grep -E "visibility_modifier|var_modifier|operation" > > > > > > >> > > > > > > >> Output: > > > > > > >> > > > > > > >> var_modifier > > > > > > >> visibility_modifier > > > > > > >> operation > > > > > > >> > > > > > > >> 4. The query validates in isolation: > > > > > > >> > > > > > > >> (treesit-query-validate > > > > > > >> 'php > > > > > > >> '((visibility_modifier (operation) @x) > > > > > > >> (var_modifier) @x)) > > > > > > >> > > > > > > >> => "QUERY is valid" > > > > > > >> > > > > > > >> 5. The combined query block also validates when checked directly, but > > > > > > >> font-lock-ensure still fails during fontification. > > > > > > >> > > > > > > >> Installed tree-sitter grammars: > > > > > > >> > > > > > > >> - php > > > > > > >> - phpdoc > > > > > > >> - html > > > > > > >> - javascript > > > > > > >> - jsdoc > > > > > > >> - css > > > > > > >> > > > > > > >> All are available via treesit-language-available-p. > > > > > > >> > > > > > > >> Observed behavior: > > > > > > >> > > > > > > >> - php-ts-mode starts. > > > > > > >> - LSP connects. > > > > > > >> - font-lock-mode can be enabled. > > > > > > >> - font-lock-ensure fails at treesit-query-capture / > > > > > > >> treesit--font-lock-fontify-region-1. > > > > > > >> - The PHP buffer remains without syntax highlighting. > > > > > > >> > > > > > > >> Expected behavior: > > > > > > >> > > > > > > >> php-ts-mode should fontify the buffer without treesit-query-error when > > > > > > >> the PHP grammar provides visibility_modifier, var_modifier, and > > > > > > >> operation, and when the corresponding queries validate. > > > > > > >> > > > > > > >> Workaround: > > > > > > >> > > > > > > >> I can avoid the error by overriding php-ts-mode’s font-lock settings > > > > > > >> with a conservative custom treesit-font-lock-rules block, but this is > > > > > > >> only a local workaround and not a proper fix. > > > > > > >> > > > > > > >> Environment: > > > > > > >> > > > > > > >> GNU Emacs 30.2 > > > > > > >> php-ts-mode from /usr/share/emacs/30.2/lisp/progmodes/php-ts-mode.elc > > > > > > >> tree-sitter grammars loaded from ~/.emacs.d/tree-sitter > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> In GNU Emacs 30.2 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.50, > > > > > > >> cairo version 1.18.4) of 2025-11-23, modified by Debian built on > > > > > > >> lcy02-amd64-045 > > > > > > >> System Description: Ubuntu 26.04 LTS > > > > > > >> > > > > > > >> Configured using: > > > > > > >> 'configure --build x86_64-linux-gnu --prefix=/usr > > > > > > >> --sharedstatedir=/var/lib --libexecdir=/usr/libexec > > > > > > >> --localstatedir=/var/lib --infodir=/usr/share/info > > > > > > >> --mandir=/usr/share/man --with-libsystemd --with-pop=yes > > > > > > >> --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/30.2/site-lisp > > > > > > >> :/usr > > > > > > >> /local/share/emacs/site-lisp:/usr/share/emacs/30.2/site-lisp:/usr/shar > > > > > > >> e/emac s/site-lisp > > > > > > >> > > > > > > >> --with-sound=alsa --without-gconf --with-mailutils --build > > > > > > >> x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib > > > > > > >> --libexecdir=/usr/libexec --localstatedir=/var/lib > > > > > > >> --infodir=/usr/share/info --mandir=/usr/share/man --with-libsystemd > > > > > > >> --with-pop=yes > > > > > > >> --enable-locallisppath=/etc/emacs:/usr/local/share/emacs/30.2/site-lisp > > > > > > >> :/usr > > > > > > >> /local/share/emacs/site-lisp:/usr/share/emacs/30.2/site-lisp:/usr/shar > > > > > > >> e/emac s/site-lisp > > > > > > >> > > > > > > >> --with-sound=alsa --without-gconf --with-mailutils --with-pgtk > > > > > > >> 'CFLAGS=-g -O2 -Werror=implicit-function-declaration > > > > > > >> -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer > > > > > > >> -ffile-prefix-map=/build/emacs-h5xO6W/emacs-30.2+1=. > > > > > > >> -fstack-protector-strong -fstack-clash-protection -Wformat > > > > > > >> -Werror=format-security -fcf-protection > > > > > > >> -fdebug-prefix-map=/build/emacs-h5xO6W/emacs-30.2+1=/usr/src/emacs-1:30 > > > > > > >> .2+1- 2ubuntu1 > > > > > > >> > > > > > > >> -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=3' > > > > > > >> 'LDFLAGS=-Wl,-Bsymbolic-functions > > > > > > >> -Wl,--package-metadata={%22type%22:%22deb%22%2C%22os%22:%22ubuntu%22%2C > > > > > > >> %22na > > > > > > >> me%22:%22emacs%22%2C%22version%22:%221:30.2+1-2ubuntu1%22%2C%22archite > > > > > > >> cture% 22:%22amd64%22} > > > > > > >> > > > > > > >> -Wl,-z,relro'' > > > > > > >> > > > > > > >> Configured features: > > > > > > >> ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG > > > > > > >> LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY > > > > > > >> INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF > > > > > > >> TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM GTK3 ZLIB > > > > > > >> > > > > > > >> Important settings: > > > > > > >> value of $LANG: de_DE.UTF-8 > > > > > > >> value of $XMODIFIERS: @im=ibus > > > > > > >> locale-coding-system: utf-8 > > > > > > >> > > > > > > >> Major mode: PHP > > > > > > >> > > > > > > >> Minor modes in effect: > > > > > > >> lsp-diagnostics-mode: t > > > > > > >> company-mode: t > > > > > > >> lsp-modeline-diagnostics-mode: t > > > > > > >> dap-tooltip-mode: t > > > > > > >> dap-ui-many-windows-mode: t > > > > > > >> dap-ui-controls-mode: t > > > > > > >> dap-ui-mode: t > > > > > > >> lsp-lens-mode: t > > > > > > >> lsp-ui-mode: t > > > > > > >> lsp-ui-doc-mode: t > > > > > > >> lsp-ui-sideline-mode: t > > > > > > >> flycheck-mode: t > > > > > > >> dap-auto-configure-mode: t > > > > > > >> dap-mode: t > > > > > > >> lsp-completion-mode: t > > > > > > >> lsp-treemacs-sync-mode: t > > > > > > >> treemacs-filewatch-mode: t > > > > > > >> treemacs-follow-mode: t > > > > > > >> treemacs-git-mode: t > > > > > > >> treemacs-fringe-indicator-mode: t > > > > > > >> lsp-managed-mode: t > > > > > > >> lsp-mode: t > > > > > > >> origami-mode: t > > > > > > >> windmove-mode: t > > > > > > >> popper-tab-line-mode: t > > > > > > >> popper-mode: t > > > > > > >> centaur-tabs-mode: t > > > > > > >> gcmh-mode: t > > > > > > >> pulsar-global-mode: t > > > > > > >> pulsar-mode: t > > > > > > >> global-atomic-chrome-edit-mode: t > > > > > > >> persp-mode: t > > > > > > >> projectile-mode: t > > > > > > >> save-place-mode: t > > > > > > >> savehist-mode: t > > > > > > >> doom-modeline-mode: t > > > > > > >> minions-mode: t > > > > > > >> default-text-scale-mode: t > > > > > > >> global-page-break-lines-mode: t > > > > > > >> transient-posframe-mode: t > > > > > > >> ace-pinyin-global-mode: t > > > > > > >> ace-pinyin-mode: t > > > > > > >> global-anzu-mode: t > > > > > > >> anzu-mode: t > > > > > > >> beginend-global-mode: t > > > > > > >> beginend-prog-mode: t > > > > > > >> drag-stuff-global-mode: t > > > > > > >> drag-stuff-mode: t > > > > > > >> electric-pair-mode: t > > > > > > >> global-hungry-delete-mode: t > > > > > > >> hungry-delete-mode: t > > > > > > >> xclip-mode: t > > > > > > >> global-so-long-mode: t > > > > > > >> vertico-posframe-mode: t > > > > > > >> vertico-mode: t > > > > > > >> nerd-icons-completion-mode: t > > > > > > >> marginalia-mode: t > > > > > > >> corfu-popupinfo-mode: t > > > > > > >> corfu-history-mode: t > > > > > > >> global-corfu-mode: t > > > > > > >> corfu-mode: t > > > > > > >> yas-global-mode: t > > > > > > >> yas-minor-mode: t > > > > > > >> global-hl-line-mode: t > > > > > > >> global-region-occurrences-highlighter-mode: t > > > > > > >> region-occurrences-highlighter-mode: t > > > > > > >> global-colorful-mode: t > > > > > > >> colorful-mode: t > > > > > > >> global-diff-hl-show-hunk-mouse-mode: t > > > > > > >> diff-hl-show-hunk-mouse-mode: t > > > > > > >> diff-hl-flydiff-mode: t > > > > > > >> global-diff-hl-mode: t > > > > > > >> diff-hl-mode: t > > > > > > >> delete-selection-mode: t > > > > > > >> tabspaces-mode: t > > > > > > >> which-key-posframe-mode: t > > > > > > >> which-key-mode: t > > > > > > >> display-line-numbers-mode: t > > > > > > >> goto-address-prog-mode: t > > > > > > >> flyspell-mode: t > > > > > > >> subword-mode: t > > > > > > >> symbol-overlay-mode: t > > > > > > >> display-fill-column-indicator-mode: t > > > > > > >> indent-bars--ts-mode: t > > > > > > >> indent-bars-mode: t > > > > > > >> rainbow-delimiters-mode: t > > > > > > >> goggles-mode: t > > > > > > >> flyover-mode: t > > > > > > >> flymake-mode: t > > > > > > >> persistent-scratch-autosave-mode: t > > > > > > >> magit-prime-mode: t > > > > > > >> magit-todos-mode: t > > > > > > >> global-hl-todo-mode: t > > > > > > >> hl-todo-mode: t > > > > > > >> global-git-commit-mode: t > > > > > > >> global-auto-revert-mode: t > > > > > > >> server-mode: t > > > > > > >> global-treesit-auto-mode: t > > > > > > >> editorconfig-mode: t > > > > > > >> pdf-occur-global-minor-mode: t > > > > > > >> recentf-mode: t > > > > > > >> solaire-global-mode: t > > > > > > >> override-global-mode: t > > > > > > >> apheleia-global-mode: t > > > > > > >> apheleia-mode: t > > > > > > >> which-function-mode: t > > > > > > >> tooltip-mode: t > > > > > > >> global-eldoc-mode: t > > > > > > >> eldoc-mode: t > > > > > > >> show-paren-mode: t > > > > > > >> electric-indent-mode: t > > > > > > >> mouse-wheel-mode: t > > > > > > >> tool-bar-mode: t > > > > > > >> prettify-symbols-mode: t > > > > > > >> tab-bar-history-mode: t > > > > > > >> menu-bar-mode: t > > > > > > >> file-name-shadow-mode: t > > > > > > >> horizontal-scroll-bar-mode: t > > > > > > >> global-font-lock-mode: t > > > > > > >> font-lock-mode: t > > > > > > >> blink-cursor-mode: t > > > > > > >> window-divider-mode: t > > > > > > >> minibuffer-regexp-mode: 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 > > > > > > >> hs-minor-mode: t > > > > > > >> > > > > > > >> Load-path shadows: > > > > > > >> /home/sutter/.emacs.d/elpa/transient-20260518.1413/transient hides > > > > > > >> /usr/share/emacs/30.2/lisp/transient > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-cache hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-cache > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-sshfs hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-sshfs > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-sh hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-sh > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-cmds hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-cmds > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-crypt hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-crypt > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-adb hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-adb > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-integration hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-integration > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-gvfs hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-gvfs > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-smb hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-smb > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-message hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-message > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-fuse hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-fuse > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-loaddefs hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-loaddefs > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-archive hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-archive > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-androidsu hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-androidsu > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-compat hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-compat > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-container hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-container > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-sudoedit hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-sudoedit > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-rclone hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-rclone > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-uu hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-uu > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/trampver hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/trampver > > > > > > >> /home/sutter/.emacs.d/elpa/tramp-2.8.1.4/tramp-ftp hides > > > > > > >> /usr/share/emacs/30.2/lisp/net/tramp-ftp > > > > > > >> /home/sutter/.emacs.d/elpa/compat-31.0.0.1/compat hides > > > > > > >> /usr/share/emacs/30.2/lisp/emacs-lisp/compat > > > > > > >> > > > > > > >> Features: > > > > > > >> (shadow sort mail-extr emacsbug vertico-directory help-fns radix-tree > > > > > > >> vertico-sort tramp-cmds cape-keyword yasnippet-capf orderless > > > > > > >> nerd-icons-corfu cape lsp-diagnostics 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 company lsp-modeline lsp-icons dap-mouse > > > > > > >> dap-ui gdb-mi gud bui bui-list bui-info bui-entry bui-core bui-history > > > > > > >> bui-button bui-utils lsp-lens lsp-ui lsp-ui-flycheck lsp-ui-doc > > > > > > >> lsp-ui-imenu lsp-ui-peek lsp-ui-sideline flycheck lsp-ui-util view > > > > > > >> lsp-zig lsp-yang lsp-yaml lsp-xml lsp-wgsl lsp-wat lsp-volar > > > > > > >> lsp-vimscript lsp-vhdl lsp-vetur lsp-html lsp-verilog lsp-vala lsp-v > > > > > > >> lsp-typos lsp-typst lsp-typespec lsp-typeprof lsp-ttcn3 lsp-ts-query > > > > > > >> lsp-trunk lsp-toml-tombi lsp-toml lsp-tilt lsp-tex lsp-terraform > > > > > > >> lsp-tailwindcss lsp-svelte lsp-steep lsp-sqls lsp-sql lsp-sourcekit lsp > > > > > > >> lsp-sorbet lsp-solidity lsp-solargraph lsp-semgrep lsp-rust lsp-ruff > > > > > > >> lsp-ruby-syntax-tree lsp-ruby-lsp lsp-rubocop lsp-roslyn lsp-ron > > > > > > >> lsp-roc > > > > > > >> lsp-rf lsp-remark lsp-racket lsp-r lsp-qml lsp-python-ty lsp-pyright > > > > > > >> lsp-pylsp lsp-pyls lsp-pwsh lsp-purescript lsp-postgres lsp-pls lsp-php > > > > > > >> lsp-perlnavigator lsp-perl lsp-openscad lsp-odin lsp-ocaml lsp-nushell > > > > > > >> lsp-nix lsp-nim lsp-nginx lsp-nextflow lsp-move lsp-mojo lsp-mint > > > > > > >> lsp-meson lsp-mdx lsp-matlab lsp-marksman lsp-markdown lsp-magik > > > > > > >> lsp-fennel lsp-lua lsp-lisp lsp-kubernetes-helm lsp-kotlin lsp-json > > > > > > >> lsp-jq lsp-just lsp-javascript dap-java dap-mode dap-tasks dap-launch > > > > > > >> dap-overlays lsp-java request lsp-idris lsp-haxe lsp-hack lsp-groovy > > > > > > >> lsp-graphql lsp-golangci-lint lsp-glsl lsp-gleam lsp-gdscript lsp-fish > > > > > > >> lsp-fsharp lsp-futhark lsp-fortran lsp-fortitude lsp-eslint lsp-erlang > > > > > > >> lsp-emmet lsp-elm lsp-elixir lsp-earthly lsp-dockerfile lsp-docker yaml > > > > > > >> lsp-dhall lsp-d lsp-cypher lsp-cucumber lsp-crates lsp-copilot lsp-css > > > > > > >> lsp-c3 lsp-csharp gnutls lsp-crystal lsp-credo lsp-cobol lsp-cmake > > > > > > >> lsp-clojure lsp-clangd lsp-bufls lsp-go lsp-completion lsp-beancount > > > > > > >> lsp-bash lsp-awk lsp-autotools lsp-astro lsp-asm lsp-ansible > > > > > > >> lsp-angular > > > > > > >> lsp-ada lsp-semantic-tokens lsp-actionscript ccls ccls-member-hierarchy > > > > > > >> ccls-inheritance-hierarchy ccls-call-hierarchy ccls-tree ccls-code-lens > > > > > > >> ccls-semantic-highlight ccls-common lsp-treemacs lsp-treemacs-generic > > > > > > >> lsp-treemacs-themes treemacs-treelib treemacs-tab-bar treemacs-magit > > > > > > >> treemacs-nerd-icons treemacs treemacs-header-line > > > > > > >> treemacs-compatibility > > > > > > >> treemacs-mode treemacs-bookmarks treemacs-tags treemacs-interface > > > > > > >> treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode > > > > > > >> treemacs-rendering treemacs-annotations treemacs-async > > > > > > >> treemacs-workspaces treemacs-dom treemacs-visuals > > > > > > >> treemacs-fringe-indicator treemacs-faces treemacs-icons treemacs-scope > > > > > > >> treemacs-themes treemacs-core-utils pfuture treemacs-logging > > > > > > >> treemacs-customization treemacs-macros lsp-mode lsp-protocol spinner > > > > > > >> network-stream nsm markdown-mode ht inline origami origami-parsers > > > > > > >> html-ts-mode php-ts-mode js-mode-expansions js cc-mode-expansions > > > > > > >> cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine > > > > > > >> cc-vars cc-defs saveplace-pdf-view css-mode-expansions css-mode smie > > > > > > >> eww > > > > > > >> url-queue shr pixel-fill kinsoku url-file svg mm-url gnus nnheader > > > > > > >> range > > > > > > >> c-ts-common go-mode find-file etags xref windmove tab-line popper-echo > > > > > > >> popper centaur-tabs centaur-tabs-interactive centaur-tabs-functions > > > > > > >> centaur-tabs-elements powerline powerline-separators powerline-themes > > > > > > >> gcmh tramp-archive tramp-gvfs zeroconf dbus xml pulsar atomic-chrome > > > > > > >> websocket bindat persp-mode projectile skeleton ibuf-macs find-dired > > > > > > >> fileloop generator cus-start saveplace savehist doom-modeline > > > > > > >> doom-modeline-segments doom-modeline-env doom-modeline-core shrink-path > > > > > > >> minions default-text-scale disp-table page-break-lines > > > > > > >> transient-posframe ace-pinyin pinyinlib avy anzu beginend drag-stuff cl > > > > > > >> elec-pair smart-region multiple-cursors mc-separate-operations > > > > > > >> rectangular-region-mode mc-mark-pop mc-edit-lines > > > > > > >> mc-hide-unmatched-lines-mode mc-mark-more html-mode-expansions > > > > > > >> sgml-mode > > > > > > >> facemenu dom mc-cycle-cursors multiple-cursors-core expand-region > > > > > > >> subword-mode-expansions text-mode-expansions er-basic-expansions > > > > > > >> expand-region-core expand-region-custom hungry-delete xclip so-long > > > > > > >> tramp-hlo vertico-posframe vertico-multiform vertico > > > > > > >> nerd-icons-completion marginalia corfu-popupinfo corfu-history > > > > > > >> corfu-auto corfu yasnippet-snippets yasnippet time hl-line > > > > > > >> region-occurrences-highlighter hi-lock colorful-mode diff-hl-show-hunk > > > > > > >> diff-hl-flydiff diff-hl vc-hg vc-git log-view vc-dir ewoc > > > > > > >> browse-kill-ring delsel tabspaces which-key-posframe which-key > > > > > > >> highlight-defined display-line-numbers goto-addr flyspell ispell > > > > > > >> cap-words superword subword hideshow symbol-overlay > > > > > > >> display-fill-column-indicator indent-bars-ts indent-bars noutline > > > > > > >> outline rainbow-delimiters goggles pulse color flyover checkdoc > > > > > > >> lisp-mnt > > > > > > >> flymake project persistent-scratch rg vc vc-dispatcher rg-info-hack > > > > > > >> rg-menu rg-ibuffer rg-result wgrep-rg wgrep rg-history rg-header > > > > > > >> magit-prime tramp-sh tramp-cache time-stamp tramp trampver > > > > > > >> tramp-integration files-x tramp-message tramp-compat xdg parse-time > > > > > > >> iso8601 tramp-loaddefs magit-bookmark 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-todos pcre2el rxt re-builder hl-todo f > > > > > > >> async magit-status magit magit-repos magit-apply magit-wip magit-log > > > > > > >> magit-diff smerge-mode diff diff-mode track-changes git-commit log-edit > > > > > > >> message sendmail yank-media puny rfc822 mml mml-sec epa epg rfc6068 > > > > > > >> epg-config gnus-util time-date mm-decode mm-bodies mm-encode mail-parse > > > > > > >> rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev > > > > > > >> mail-utils gmm-utils mailheader pcvs-util add-log magit-core > > > > > > >> magit-autorevert autorevert filenotify magit-margin magit-transient > > > > > > >> magit-process with-editor shell pcomplete magit-mode magit-git server > > > > > > >> magit-base magit-section benchmark cursor-sensor transient crm llama > > > > > > >> cond-let treesit-auto treesit editorconfig editorconfig-core > > > > > > >> editorconfig-core-handle editorconfig-fnmatch pdf-occur ibuf-ext > > > > > > >> ibuffer > > > > > > >> ibuffer-loaddefs tablist advice tablist-filter semantic/wisent/comp > > > > > > >> semantic/wisent semantic/wisent/wisent semantic/util-modes > > > > > > >> semantic/util > > > > > > >> semantic semantic/tag semantic/lex semantic/fw mode-local find-func > > > > > > >> cedet pdf-isearch let-alist pdf-misc pdf-tools pdf-view bookmark > > > > > > >> jka-compr pdf-cache pdf-info tq pdf-util comp comp-cstr warnings > > > > > > >> comp-run comp-common format-spec pdf-macs image-mode dired-x dired > > > > > > >> dired-loaddefs exif init-web init-elixir init-ruby init-python > > > > > > >> init-rust > > > > > > >> init-go init-c init-elisp init-prog init-ai init-dap init-lsp > > > > > > >> init-check > > > > > > >> init-vcs init-utils grep compile text-property-search comint ansi-osc > > > > > > >> ansi-color init-player init-docker init-dict init-reader init-org > > > > > > >> init-markdown init-shell init-eshell init-treemacs init-window > > > > > > >> init-workspace init-kill-ring init-ibuffer init-highlight init-dired > > > > > > >> init-dashboard dashboard dashboard-widgets rect mule-util recentf > > > > > > >> tree-widget ffap thingatpt nerd-icons nerd-icons-faces nerd-icons-data > > > > > > >> nerd-icons-data-mdicon nerd-icons-data-flicon nerd-icons-data-codicon > > > > > > >> nerd-icons-data-devicon nerd-icons-data-sucicon nerd-icons-data-wicon > > > > > > >> nerd-icons-data-faicon nerd-icons-data-powerline > > > > > > >> nerd-icons-data-octicon > > > > > > >> nerd-icons-data-pomicon nerd-icons-data-ipsicon init-calendar > > > > > > >> init-bookmark derived init-snippet init-completion init-edit init-ui > > > > > > >> doom-themes-ext-visual-bell posframe doom-one-theme doom-themes > > > > > > >> doom-themes-base solaire-mode face-remap init-hydra pretty-hydra hydra > > > > > > >> ring lv s dash compat compat-31 compat-macs init-base diminish edmacro > > > > > > >> kmacro use-package-bind-key bind-key init-package finder-inf > > > > > > >> ace-pinyin-autoloads add-node-modules-path-autoloads > > > > > > >> agent-shell-autoloads acp-autoloads anzu-autoloads apheleia-autoloads > > > > > > >> atomic-chrome-autoloads avy-zap-autoloads beginend-autoloads > > > > > > >> browse-kill-ring-autoloads cape-autoloads cask-mode-autoloads > > > > > > >> ccls-autoloads centaur-tabs-autoloads cmake-mode-autoloads > > > > > > >> coffee-mode-autoloads colorful-mode-autoloads company-autoloads > > > > > > >> consult-dir-autoloads consult-eglot-autoloads > > > > > > >> consult-flyspell-autoloads > > > > > > >> consult-lsp-autoloads consult-yasnippet-autoloads > > > > > > >> corfu-terminal-autoloads corfu-autoloads csv-mode-autoloads > > > > > > >> cue-sheet-mode-autoloads dape-autoloads dart-mode-autoloads > > > > > > >> dashboard-autoloads default-text-scale-autoloads devdocs-autoloads > > > > > > >> diff-hl-autoloads diminish-autoloads dired-git-info-autoloads > > > > > > >> dired-quick-sort-autoloads dired-rsync-autoloads diredfl-autoloads > > > > > > >> docker-autoloads aio-autoloads dockerfile-mode-autoloads > > > > > > >> doom-modeline-autoloads doom-themes-autoloads drag-stuff-autoloads > > > > > > >> dslide-autoloads easy-kill-autoloads eat-autoloads eldoc-box-autoloads > > > > > > >> elfeed-autoloads elixir-mode-autoloads embark-consult-autoloads > > > > > > >> consult-autoloads embark-autoloads esh-help-autoloads > > > > > > >> eshell-prompt-extras-autoloads eshell-z-autoloads fanyi-autoloads > > > > > > >> file-info-autoloads browse-at-remote-autoloads fish-mode-autoloads > > > > > > >> flycheck-autoloads flyover-autoloads gcmh-autoloads git-link-autoloads > > > > > > >> git-messenger-autoloads git-modes-autoloads git-timemachine-autoloads > > > > > > >> gnu-elpa-keyring-update-autoloads go-dlv-autoloads > > > > > > >> go-fill-struct-autoloads go-gen-test-autoloads go-impl-autoloads > > > > > > >> go-tag-autoloads go-mode-autoloads goggles-autoloads gotest-autoloads > > > > > > >> goto-chg-autoloads gptel-magit-autoloads gptel-autoloads > > > > > > >> grip-mode-autoloads gt-autoloads haml-mode-autoloads helpful-autoloads > > > > > > >> elisp-refs-autoloads hide-mode-line-autoloads > > > > > > >> highlight-defined-autoloads hungry-delete-autoloads ialign-autoloads > > > > > > >> ibuffer-project-autoloads iedit-autoloads indent-bars-autoloads > > > > > > >> inf-ruby-autoloads julia-ts-mode-autoloads link-hint-autoloads > > > > > > >> lsp-java-autoloads dap-mode-autoloads lsp-docker-autoloads > > > > > > >> bui-autoloads > > > > > > >> lsp-julia-autoloads julia-mode-autoloads lsp-pyright-autoloads > > > > > > >> lsp-sourcekit-autoloads lsp-treemacs-autoloads lsp-ui-autoloads > > > > > > >> lsp-mode-autoloads lua-mode-autoloads macrostep-autoloads > > > > > > >> magit-prime-autoloads magit-todos-autoloads hl-todo-autoloads > > > > > > >> async-autoloads marginalia-autoloads markdown-toc-autoloads > > > > > > >> markdown-mode-autoloads mermaid-mode-autoloads > > > > > > >> mermaid-ts-mode-autoloads > > > > > > >> minions-autoloads mixed-pitch-autoloads mwim-autoloads > > > > > > >> nerd-icons-completion-autoloads nerd-icons-corfu-autoloads > > > > > > >> nerd-icons-dired-autoloads nerd-icons-ibuffer-autoloads nov-autoloads > > > > > > >> esxml-autoloads ob-go-autoloads ob-mermaid-autoloads > > > > > > >> ob-powershell-autoloads ob-rust-autoloads olivetti-autoloads > > > > > > >> orderless-autoloads org-appear-autoloads org-modern-autoloads > > > > > > >> org-pomodoro-autoloads org-preview-html-autoloads > > > > > > >> org-rich-yank-autoloads org-roam-ui-autoloads org-roam-autoloads > > > > > > >> emacsql-autoloads origami-autoloads ox-gfm-autoloads > > > > > > >> page-break-lines-autoloads parinfer-rust-mode-autoloads > > > > > > >> pcre2el-autoloads pdd-autoloads pdf-tools-autoloads > > > > > > >> persistent-scratch-autoloads persp-mode-autoloads php-mode-autoloads > > > > > > >> pinyinlib-autoloads pomidor-autoloads alert-autoloads log4e-autoloads > > > > > > >> gntp-autoloads popon-autoloads popper-autoloads popup-autoloads > > > > > > >> powerline-autoloads powershell-autoloads pretty-hydra-autoloads > > > > > > >> projectile-autoloads protobuf-mode-autoloads pulsar-autoloads > > > > > > >> quickrun-autoloads rainbow-delimiters-autoloads > > > > > > >> region-occurrences-highlighter-autoloads request-autoloads > > > > > > >> restclient-autoloads reveal-in-folder-autoloads rg-autoloads > > > > > > >> ron-mode-autoloads rspec-mode-autoloads ruby-refactor-autoloads > > > > > > >> rust-mode-autoloads saveplace-pdf-view-autoloads scala-mode-autoloads > > > > > > >> scala-ts-mode-autoloads scss-mode-autoloads shell-maker-autoloads > > > > > > >> shrink-path-autoloads f-autoloads simple-httpd-autoloads > > > > > > >> smart-region-autoloads multiple-cursors-autoloads > > > > > > >> expand-region-autoloads solaire-mode-autoloads spinner-autoloads > > > > > > >> sudo-edit-autoloads swift-mode-autoloads swift-ts-mode-autoloads > > > > > > >> symbol-overlay-autoloads tablist-autoloads tabspaces-autoloads > > > > > > >> toc-org-autoloads tramp-hlo-autoloads tramp-autoloads rx > > > > > > >> transient-posframe-autoloads transwin-autoloads > > > > > > >> treemacs-magit-autoloads > > > > > > >> magit-autoloads transient-autoloads magit-section-autoloads > > > > > > >> llama-autoloads treemacs-nerd-icons-autoloads nerd-icons-autoloads > > > > > > >> treemacs-tab-bar-autoloads treemacs-autoloads cfrs-autoloads > > > > > > >> ht-autoloads pfuture-autoloads ace-window-autoloads avy-autoloads > > > > > > >> s-autoloads treesit-auto-autoloads typescript-mode-autoloads > > > > > > >> v-mode-autoloads hydra-autoloads lv-autoloads dash-autoloads > > > > > > >> vertico-posframe-autoloads vertico-autoloads vimrc-mode-autoloads > > > > > > >> vundo-autoloads web-mode-autoloads websocket-autoloads wgrep-autoloads > > > > > > >> which-key-posframe-autoloads posframe-autoloads with-editor-autoloads > > > > > > >> cond-let-autoloads info compat-autoloads xclip-autoloads > > > > > > >> xterm-color-autoloads yaml-autoloads yaml-mode-autoloads > > > > > > >> yard-mode-autoloads yari-autoloads yasnippet-capf-autoloads > > > > > > >> yasnippet-snippets-autoloads yasnippet-autoloads ztree-autoloads > > > > > > >> which-func imenu init-funcs use-package-diminish cl-extra help-mode > > > > > > >> use-package-ensure use-package-core pcase easy-mmode init-custom > > > > > > >> package > > > > > > >> browse-url url url-proxy url-privacy url-expand url-methods url-history > > > > > > >> url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers > > > > > > >> url-parse auth-source cl-seq eieio eieio-core cl-macs password-cache > > > > > > >> json subr-x map byte-opt gv bytecomp byte-compile url-vars init-const > > > > > > >> cus-edit pp cus-load icons wid-edit cl-loaddefs cl-lib rmc iso-transl > > > > > > >> tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks > > > > > > >> lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win > > > > > > >> term/common-win > > > > > > >> touch-screen pgtk-dnd 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 dynamic-setting system-font-setting > > > > > > >> font-render-setting cairo gtk pgtk lcms2 multi-tty move-toolbar > > > > > > >> make-network-process native-compile emacs) > > > > > > >> > > > > > > >> Memory information: > > > > > > >> ((conses 16 1692869 2306692) (symbols 48 94177 1) (strings 32 375069 > > > > > > >> 88257) > > > > > > >> (string-bytes 1 10629038) (vectors 16 115386) (vector-slots 8 1828088 > > > > > > >> 348773) (floats 8 2183 7922) > > > > > > >> (intervals 56 9127 1592) (buffers 992 27)) > > > > > > > > > > > > > > > > > > > > > > > >