* bug#58921: Tab completion hangs in eshell
[not found] <2cb2b8aa-0813-5eae-3bfc-27831b3d50dd@housseini.me>
@ 2022-10-31 9:04 ` reza via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-02 7:28 ` Gerd Möllmann
2023-02-10 7:34 ` Jim Porter
0 siblings, 2 replies; 10+ messages in thread
From: reza via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-10-31 9:04 UTC (permalink / raw)
To: 58921
[-- Attachment #1: Type: text/plain, Size: 39563 bytes --]
Open an eshell:
M-x eshell <enter>
Type this command in the eshell
tab --warning=no-timestamp -xf <tab>
emacs will hang and has to be killed.
This behavior does not occur when only typing
tar -xf <tab>
In GNU Emacs 28.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.30,
cairo version 1.16.0)
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Guix System
Configured using:
'configure
CONFIG_SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash
SHELL=/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/bash
--prefix=/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2
--enable-fast-install --with-modules --with-cairo
--with-native-compilation --disable-build-details'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB
Important settings:
value of $EMACSLOADPATH:
/home/reza/.guix-home/profile/share/emacs/site-lisp:/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp
value of $EMACSNATIVELOADPATH:
/home/reza/.guix-home/profile/lib/emacs/native-site-lisp
value of $LANG: en_US.utf8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
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
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
indent-tabs-mode: t
transient-mark-mode: t
Load-path shadows:
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-workspaces
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-workspaces
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-visuals
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-visuals
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-treelib
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-treelib
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-themes
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-themes
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-tags
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-tags
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-tag-follow-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-tag-follow-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-rendering
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-rendering
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-scope
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-scope
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-persistence
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-persistence
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-mouse-interface
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-mouse-interface
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-macros
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-macros
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-interface
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-interface
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-hydras
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-hydras
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-git-commit-diff-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-git-commit-diff-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-filewatch-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-filewatch-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-file-management
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-file-management
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-extensions
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-extensions
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-dom
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-dom
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-customization
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-customization
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-bookmarks
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-bookmarks
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-annotations
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-annotations
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-project-follow-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-project-follow-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-pkg
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-pkg
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-peek-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-peek-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-logging
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-logging
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-icons
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-icons
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-header-line
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-header-line
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-fringe-indicator
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-fringe-indicator
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-follow-mode
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-follow-mode
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-faces
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-faces
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-diagnostics
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-diagnostics
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-core-utils
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-core-utils
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-compatibility
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-compatibility
/gnu/store/4mz3ky3wbgxh4hpbnb9madqax2l28gvc-emacs-treemacs-3.0/share/emacs/site-lisp/treemacs-3.0/treemacs-async
hides
/gnu/store/rrf5s2grgpbyjhk8133nvihig1m51l99-emacs-treemacs-extra-3.0/share/emacs/site-lisp/treemacs-extra-3.0/treemacs-async
/gnu/store/h0wqx3hffd3p4d3vkyr3kgzxqgnnq9d9-emacs-jsonrpc-1.0.15-0.50654cf/share/emacs/site-lisp/jsonrpc-1.0.15-0.50654cf/jsonrpc
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/jsonrpc
/gnu/store/4548rknhkpg4x4dxjfin87h7v3xfpw2a-emacs-auth-source-pass-5.0.0-2.847a1f5/share/emacs/site-lisp/auth-source-pass-5.0.0-2.847a1f5/auth-source-pass
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/auth-source-pass
/gnu/store/pgxr2l2y1hjn38j0qaw21h19p351s933-emacs-xref-1.5.1/share/emacs/site-lisp/xref-1.5.1/xref
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/progmodes/xref
/gnu/store/y2xv4l96w1995s29kgkvgalvyj37nrnv-emacs-project-0.8.2/share/emacs/site-lisp/project-0.8.2/project
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/progmodes/project
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-texinfo
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-texinfo
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-publish
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-publish
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-org
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-org
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-odt
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-odt
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-man
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-man
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-md
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-md
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-latex
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-latex
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-koma-letter
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-koma-letter
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-icalendar
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-icalendar
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-html
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-html
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-beamer
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-beamer
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ox-ascii
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ox-ascii
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-timer
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-timer
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-table
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-table
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-src
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-src
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-refile
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-refile
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-protocol
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-protocol
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-plot
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-plot
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-pcomplete
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-pcomplete
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-num
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-num
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-mouse
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-mouse
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-mobile
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-mobile
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-macs
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-macs
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-macro
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-macro
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-loaddefs
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-loaddefs
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-list
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-list
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-lint
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-lint
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-keys
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-keys
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-inlinetask
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-inlinetask
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-indent
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-indent
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-id
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-id
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-habit
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-habit
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-goto
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-goto
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-footnote
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-footnote
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-feed
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-feed
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-faces
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-faces
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-entities
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-entities
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-element
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-element
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-duration
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-duration
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-ctags
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-ctags
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-compat
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-compat
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-colview
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-colview
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-clock
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-clock
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-capture
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-capture
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-attach
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-attach
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-archive
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-archive
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-agenda
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-agenda
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-bibtex
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-bibtex
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-bbdb
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-bbdb
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/oc
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/oc
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/oc-csl
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/oc-csl
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/oc-basic
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/oc-basic
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-tangle
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-tangle
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-sql
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-sql
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-shell
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-shell
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-ruby
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-ruby
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-python
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-python
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-octave
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-octave
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-lua
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-lua
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-lilypond
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-lilypond
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-julia
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-julia
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-java
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-java
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-haskell
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-haskell
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-gnuplot
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-gnuplot
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-exp
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-exp
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-core
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-core
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-comint
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-comint
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-R
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-R
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-C
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-C
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-version
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-version
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-tempo
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-tempo
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-install
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-install
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-datetree
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-datetree
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-crypt
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-crypt
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/org-attach-git
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/org-attach-git
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-w3m
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-w3m
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-rmail
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-rmail
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-mhe
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-mhe
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-irc
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-irc
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-man
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-man
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-info
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-info
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-doi
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-doi
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-eww
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-eww
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-gnus
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-gnus
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-eshell
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-eshell
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ol-docview
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ol-docview
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/oc-natbib
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/oc-natbib
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/oc-biblatex
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/oc-biblatex
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-table
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-table
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-sqlite
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-sqlite
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-sed
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-sed
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-screen
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-screen
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-scheme
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-scheme
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-sass
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-sass
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-ref
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-ref
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-processing
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-processing
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-perl
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-perl
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-plantuml
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-plantuml
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-org
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-org
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-ocaml
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-ocaml
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-maxima
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-maxima
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-matlab
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-matlab
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-makefile
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-makefile
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-lob
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-lob
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-lisp
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-lisp
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-latex
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-latex
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-js
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-js
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-groovy
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-groovy
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-fortran
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-fortran
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-forth
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-forth
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-eval
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-eval
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-eshell
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-eshell
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-emacs-lisp
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-emacs-lisp
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-dot
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-dot
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-ditaa
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-ditaa
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-css
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-css
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-clojure
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-clojure
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-calc
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-calc
/gnu/store/l0875pf7r4vr3g5x7fc1g58n387k1v1c-emacs-org-9.5.5/share/emacs/site-lisp/org-9.5.5/ob-awk
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/org/ob-awk
/gnu/store/gcvj3grb55ic034b9a56p6m182b2qfdr-emacs-nadvice-0.3/share/emacs/site-lisp/nadvice-0.3/nadvice
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/emacs-lisp/nadvice
/gnu/store/647vafv4sxcs30qh566bdabhxh5iiw9v-emacs-eldoc-1.13.0/share/emacs/site-lisp/eldoc-1.13.0/eldoc
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/emacs-lisp/eldoc
/gnu/store/xn6s0vh7i0pk5p5kq7hc5w89fgmp02j8-emacs-let-alist-1.0.6/share/emacs/site-lisp/let-alist-1.0.6/let-alist
hides
/gnu/store/8n3sgdlylaxns28g9kldmfp3b3rah5dv-emacs-28.2/share/emacs/28.2/lisp/emacs-lisp/let-alist
Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util rmail
rmail-loaddefs auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache json map text-property-search time-date
subr-x seq byte-opt gv bytecomp byte-compile cconv mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs
cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils
iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-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 cl-generic
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 simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
cairo move-toolbar gtk x-toolkit x multi-tty make-network-process
native-compile emacs)
Memory information:
((conses 16 69045 3570)
(symbols 48 6639 0)
(strings 32 19789 2469)
(string-bytes 1 706002)
(vectors 16 14959)
(vector-slots 8 305735 7624)
(floats 8 22 31)
(intervals 56 223 0)
(buffers 992 10))
[-- Attachment #2: OpenPGP_0xC375C6AF05125C52.asc --]
[-- Type: application/pgp-keys, Size: 15557 bytes --]
[-- Attachment #3: OpenPGP_signature --]
[-- Type: application/pgp-signature, Size: 499 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2022-10-31 9:04 ` bug#58921: Tab completion hangs in eshell reza via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2022-11-02 7:28 ` Gerd Möllmann
2023-02-10 7:34 ` Jim Porter
1 sibling, 0 replies; 10+ messages in thread
From: Gerd Möllmann @ 2022-11-02 7:28 UTC (permalink / raw)
To: reza; +Cc: 58921
reza <reza@housseini.me> writes:
> Open an eshell:
>
> M-x eshell <enter>
>
> Type this command in the eshell
>
> tab --warning=no-timestamp -xf <tab>
>
> emacs will hang and has to be killed.
>
> This behavior does not occur when only typing
>
> tar -xf <tab>
Didn't check 28. On master, it gets into a loop which can be
interrupted with C-g. Backtrace is
Debugger entered--Lisp error: (quit)
pcomplete-match("\\`--suffix=" 0)
pcomplete/tar()
pcomplete-completions()
pcomplete-completions-at-point()
completion--capf-wrapper(pcomplete-completions-at-point all)
run-hook-wrapped(completion--capf-wrapper pcomplete-completions-at-point all)
completion-at-point()
funcall-interactively(completion-at-point)
call-interactively(completion-at-point nil nil)
command-execute(completion-at-point)
Maybe this helps someone knowing pcomplete.
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2022-10-31 9:04 ` bug#58921: Tab completion hangs in eshell reza via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-02 7:28 ` Gerd Möllmann
@ 2023-02-10 7:34 ` Jim Porter
2023-02-23 6:57 ` Jim Porter
2023-02-23 18:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
1 sibling, 2 replies; 10+ messages in thread
From: Jim Porter @ 2023-02-10 7:34 UTC (permalink / raw)
To: reza, 58921; +Cc: monnier
[-- Attachment #1: Type: text/plain, Size: 563 bytes --]
X-Debbugs-Cc: monnier@iro.umontreal.ca
On 10/31/2022 2:04 AM, reza via Bug reports for GNU Emacs, the Swiss
army knife of text editors wrote:
> Open an eshell:
>
> M-x eshell <enter>
>
> Type this command in the eshell
>
> tab --warning=no-timestamp -xf <tab>
>
> emacs will hang and has to be killed.
>
> This behavior does not occur when only typing
>
> tar -xf <tab>
I believe the attached patch fixes this. It ensures that even when
'pcomplete/tar' encounters an option it doesn't recognize, it continues
to make forward progress.
[-- Attachment #2: 0001-Fix-Pcompletion-of-tar-when-using-unrecognized-argum.patch --]
[-- Type: text/plain, Size: 3556 bytes --]
From b11cfb6fc1cbb52b88425f66b4dc503b9e3cd543 Mon Sep 17 00:00:00 2001
From: Jim Porter <jporterbugs@gmail.com>
Date: Thu, 9 Feb 2023 23:27:50 -0800
Subject: [PATCH] Fix Pcompletion of "tar" when using unrecognized arguments
Previously, arguments to tar like "--warning=no-timestamp" would cause
Pcompletion to hang (bug#58921).
* lisp/pcmpl-gnu.el (pcomplete/tar): Properly handle completion of
arguments that look like "--ARG=", even if they're not recognized by
this function. (This also lets us coalesce a lot of the different
cases into one.)
---
lisp/pcmpl-gnu.el | 24 +++---------------------
1 file changed, 3 insertions(+), 21 deletions(-)
diff --git a/lisp/pcmpl-gnu.el b/lisp/pcmpl-gnu.el
index 7d270ea789f..00e9af3a974 100644
--- a/lisp/pcmpl-gnu.el
+++ b/lisp/pcmpl-gnu.el
@@ -276,20 +276,12 @@ pcomplete/tar
(cond
((pcomplete-match "\\`-\\'" 0)
(pcomplete-here*))
- ((pcomplete-match "\\`--after-date=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--backup=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--blocking-factor=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--directory=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-dirs)
(pcomplete-match-string 1 0)))
((pcomplete-match "\\`--exclude-from=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-entries)
(pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--exclude=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--\\(extract\\|list\\)\\'" 0)
(setq complete-within t))
((pcomplete-match "\\`--file=\\(.*\\)" 0)
@@ -304,36 +296,26 @@ pcomplete/tar
((pcomplete-match "\\`--info-script=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-entries)
(pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--label=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--mode=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--new-volume-script=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-entries)
(pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--newer=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--owner=\\(.*\\)" 0)
(pcomplete-here* (pcmpl-unix-user-names)
(pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--record-size=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--rsh-command=\\(.*\\)" 0)
(pcomplete-here* (funcall pcomplete-command-completion-function)
(pcomplete-match-string 1 0)))
((pcomplete-match "\\`--starting-file=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-entries)
(pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--suffix=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--tape-length=" 0)
- (pcomplete-here*))
((pcomplete-match "\\`--use-compress-program=\\(.*\\)" 0)
(pcomplete-here* (funcall pcomplete-command-completion-function)
(pcomplete-match-string 1 0)))
((pcomplete-match "\\`--volno-file=\\(.*\\)" 0)
(pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))))
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--.*=" 0)
+ (pcomplete-here*))))
(unless saw-option
(pcomplete-here
(mapcar #'char-to-string
--
2.25.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-10 7:34 ` Jim Porter
@ 2023-02-23 6:57 ` Jim Porter
2023-02-23 18:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
1 sibling, 0 replies; 10+ messages in thread
From: Jim Porter @ 2023-02-23 6:57 UTC (permalink / raw)
To: reza, 58921; +Cc: monnier
On 2/9/2023 11:34 PM, Jim Porter wrote:
> I believe the attached patch fixes this. It ensures that even when
> 'pcomplete/tar' encounters an option it doesn't recognize, it continues
> to make forward progress.
Stefan, any thoughts on this patch? I think it's pretty safe, but maybe
there's a better way to do all this...
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-10 7:34 ` Jim Porter
2023-02-23 6:57 ` Jim Porter
@ 2023-02-23 18:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-23 19:25 ` Jim Porter
1 sibling, 1 reply; 10+ messages in thread
From: Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2023-02-23 18:08 UTC (permalink / raw)
To: Jim Porter; +Cc: 58921, reza
> @@ -304,36 +296,26 @@ pcomplete/tar
> ((pcomplete-match "\\`--info-script=\\(.*\\)" 0)
> (pcomplete-here* (pcomplete-entries)
> (pcomplete-match-string 1 0)))
> - ((pcomplete-match "\\`--label=" 0)
> - (pcomplete-here*))
> - ((pcomplete-match "\\`--mode=" 0)
> - (pcomplete-here*))
> ((pcomplete-match "\\`--new-volume-script=\\(.*\\)" 0)
> (pcomplete-here* (pcomplete-entries)
> (pcomplete-match-string 1 0)))
> - ((pcomplete-match "\\`--newer=" 0)
> - (pcomplete-here*))
> ((pcomplete-match "\\`--owner=\\(.*\\)" 0)
> (pcomplete-here* (pcmpl-unix-user-names)
> (pcomplete-match-string 1 0)))
> - ((pcomplete-match "\\`--record-size=" 0)
> - (pcomplete-here*))
> ((pcomplete-match "\\`--rsh-command=\\(.*\\)" 0)
> (pcomplete-here* (funcall pcomplete-command-completion-function)
> (pcomplete-match-string 1 0)))
> ((pcomplete-match "\\`--starting-file=\\(.*\\)" 0)
> (pcomplete-here* (pcomplete-entries)
> (pcomplete-match-string 1 0)))
> - ((pcomplete-match "\\`--suffix=" 0)
> - (pcomplete-here*))
> - ((pcomplete-match "\\`--tape-length=" 0)
> - (pcomplete-here*))
> ((pcomplete-match "\\`--use-compress-program=\\(.*\\)" 0)
> (pcomplete-here* (funcall pcomplete-command-completion-function)
> (pcomplete-match-string 1 0)))
> ((pcomplete-match "\\`--volno-file=\\(.*\\)" 0)
> (pcomplete-here* (pcomplete-entries)
> - (pcomplete-match-string 1 0)))))
> + (pcomplete-match-string 1 0)))
> + ((pcomplete-match "\\`--.*=" 0)
> + (pcomplete-here*))))
> (unless saw-option
> (pcomplete-here
> (mapcar #'char-to-string
This looks good, but doesn't that still leave an inf-loop bug when the
input doesn't (pcomplete-match "\\`--.*=" 0)?
Stefan
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-23 18:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2023-02-23 19:25 ` Jim Porter
2023-02-23 19:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
0 siblings, 1 reply; 10+ messages in thread
From: Jim Porter @ 2023-02-23 19:25 UTC (permalink / raw)
To: Stefan Monnier; +Cc: reza, 58921
On 2/23/2023 10:08 AM, Stefan Monnier via Bug reports for GNU Emacs, the
Swiss army knife of text editors wrote:
> This looks good, but doesn't that still leave an inf-loop bug when the
> input doesn't (pcomplete-match "\\`--.*=" 0)?
Testing this manually, I think it's ok. Prior to my patch, the following
works ok:
1) tar potato <TAB>
2) tar --potato <TAB>
However, this would hang:
3) tar --potato=russet <TAB>
So we just need to fix the case where the argument matches "\\`--.*=".
I'm still not really clear on all the details of how Pcomplete works,
but I think case (2) works because of this code just before my diff:
(if (pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
;; FIXME: Extract this list from "tar --help".
(pcomplete-here*
'("--absolute-names"
;; ...
"--volno-file=")))
That is, if we have an arg starting with "--" and without an "=", call
'pcomplete-here*'. Even the arg doesn't match anything in that list, it
should still move forward (I think). However, when we have an "=" in the
arg, the function instead evaluates the 'cond' block that I modified, so
it needs to be sure to call 'pcomplete-here*' (or some other function)
to make forward progress.
Maybe this should have some regression tests...
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-23 19:25 ` Jim Porter
@ 2023-02-23 19:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-23 20:43 ` Jim Porter
0 siblings, 1 reply; 10+ messages in thread
From: Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2023-02-23 19:34 UTC (permalink / raw)
To: Jim Porter; +Cc: reza, 58921
> So we just need to fix the case where the argument matches "\\`--.*=". I'm
> still not really clear on all the details of how Pcomplete works, but
> I think case (2) works because of this code just before my diff:
>
> (if (pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
> ;; FIXME: Extract this list from "tar --help".
> (pcomplete-here*
> '("--absolute-names"
> ;; ...
> "--volno-file=")))
>
> That is, if we have an arg starting with "--" and without an "=", call
> 'pcomplete-here*'. Even the arg doesn't match anything in that list, it
> should still move forward (I think). However, when we have an "=" in the
> arg, the function instead evaluates the 'cond' block that I modified, so it
> needs to be sure to call 'pcomplete-here*' (or some other function) to make
> forward progress.
The way I see it, either we still have an inf-loop or your
(pcomplete-match "\\`--.*=" 0) condition is redundant.
From what you say the inf-loop should only manifest if we match neither
(pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
nor
(pcomplete-match "\\`--.*=" 0)
and indeed:
tar --pot\ <TAB>
seems to hang.
Stefan
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-23 19:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2023-02-23 20:43 ` Jim Porter
2023-03-04 5:37 ` Jim Porter
0 siblings, 1 reply; 10+ messages in thread
From: Jim Porter @ 2023-02-23 20:43 UTC (permalink / raw)
To: Stefan Monnier; +Cc: 58921, reza
[-- Attachment #1: Type: text/plain, Size: 987 bytes --]
On 2/23/2023 11:34 AM, Stefan Monnier via Bug reports for GNU Emacs, the
Swiss army knife of text editors wrote:
> The way I see it, either we still have an inf-loop or your
> (pcomplete-match "\\`--.*=" 0) condition is redundant.
>
> From what you say the inf-loop should only manifest if we match neither
>
> (pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
>
> nor
>
> (pcomplete-match "\\`--.*=" 0)
>
> and indeed:
>
> tar --pot\ <TAB>
>
> seems to hang.
Ah, good point. Instead of '(pcomplete-match "\\`--.*=" 0)', I think we
want to handle all args starting with "--", but not matching "^--\\([^=
\t\n\f]*\\)\\'". The goal is to call 'pcomplete-here*' exactly once per
option.
I did this a slightly different way in the updated patch by moving all
the "--" cases into a single place (likewise with the "-" options). I
think this is easier to follow than before, and makes it more obvious
that we're calling 'pcomplete-here*' the right number of times.
[-- Attachment #2: 0001-Fix-Pcompletion-of-tar-when-using-unrecognized-argum.patch --]
[-- Type: text/plain, Size: 11413 bytes --]
From 1b84e2cbf2fbfa0acde84d6fd5298a9997f6c8b8 Mon Sep 17 00:00:00 2001
From: Jim Porter <jporterbugs@gmail.com>
Date: Thu, 9 Feb 2023 23:27:50 -0800
Subject: [PATCH] Fix Pcompletion of "tar" when using unrecognized arguments
Previously, arguments to tar like "--warning=no-timestamp" would cause
Pcompletion to hang (bug#58921).
This simplifies the logic flow by moving all the cases for "--"
arguments inside the THEN form of '(if (pcomplete-match "^--" 0)', and
for all "-" arguments inside the ELSE form.
* lisp/pcmpl-gnu.el (pcmpl-gnu--tar-long-options): New variable.
(pcomplete/tar): Properly handle completion of arguments that look
like "--ARG=", even if they're not recognized by this function.
---
lisp/pcmpl-gnu.el | 269 ++++++++++++++++++++++------------------------
1 file changed, 127 insertions(+), 142 deletions(-)
diff --git a/lisp/pcmpl-gnu.el b/lisp/pcmpl-gnu.el
index 7d270ea789f..1553c3efed7 100644
--- a/lisp/pcmpl-gnu.el
+++ b/lisp/pcmpl-gnu.el
@@ -184,6 +184,86 @@ pcmpl-gnu-with-file-buffer
(when (and (not ,exist) (buffer-live-p ,buf))
(kill-buffer ,buf))))))
+(defvar pcmpl-gnu--tar-long-options
+ ;; FIXME: Extract this list from "tar --help".
+ '("--absolute-names"
+ "--after-date="
+ "--append"
+ "--atime-preserve"
+ "--backup"
+ "--block-number"
+ "--blocking-factor="
+ "--catenate"
+ "--checkpoint"
+ "--compare"
+ "--compress"
+ "--concatenate"
+ "--confirmation"
+ "--create"
+ "--delete"
+ "--dereference"
+ "--diff"
+ "--directory="
+ "--exclude="
+ "--exclude-from="
+ "--extract"
+ "--file="
+ "--files-from="
+ "--force-local"
+ "--get"
+ "--group="
+ "--gzip"
+ "--help"
+ "--ignore-failed-read"
+ "--ignore-zeros"
+ "--incremental"
+ "--info-script="
+ "--interactive"
+ "--keep-old-files"
+ "--label="
+ "--list"
+ "--listed-incremental"
+ "--mode="
+ "--modification-time"
+ "--multi-volume"
+ "--new-volume-script="
+ "--newer="
+ "--newer-mtime"
+ "--no-recursion"
+ "--null"
+ "--numeric-owner"
+ "--old-archive"
+ "--one-file-system"
+ "--owner="
+ "--portability"
+ "--posix"
+ "--preserve"
+ "--preserve-order"
+ "--preserve-permissions"
+ "--read-full-records"
+ "--record-size="
+ "--recursive-unlink"
+ "--remove-files"
+ "--rsh-command="
+ "--same-order"
+ "--same-owner"
+ "--same-permissions"
+ "--sparse"
+ "--starting-file="
+ "--suffix="
+ "--tape-length="
+ "--to-stdout"
+ "--totals"
+ "--uncompress"
+ "--ungzip"
+ "--unlink-first"
+ "--update"
+ "--use-compress-program="
+ "--verbose"
+ "--verify"
+ "--version"
+ "--volno-file="))
+
;;;###autoload
(defun pcomplete/tar ()
"Completion for the GNU tar utility."
@@ -192,148 +272,53 @@ pcomplete/tar
(while (pcomplete-match "^-" 0)
(setq saw-option t)
(if (pcomplete-match "^--" 0)
- (if (pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
- ;; FIXME: Extract this list from "tar --help".
- (pcomplete-here*
- '("--absolute-names"
- "--after-date="
- "--append"
- "--atime-preserve"
- "--backup"
- "--block-number"
- "--blocking-factor="
- "--catenate"
- "--checkpoint"
- "--compare"
- "--compress"
- "--concatenate"
- "--confirmation"
- "--create"
- "--delete"
- "--dereference"
- "--diff"
- "--directory="
- "--exclude="
- "--exclude-from="
- "--extract"
- "--file="
- "--files-from="
- "--force-local"
- "--get"
- "--group="
- "--gzip"
- "--help"
- "--ignore-failed-read"
- "--ignore-zeros"
- "--incremental"
- "--info-script="
- "--interactive"
- "--keep-old-files"
- "--label="
- "--list"
- "--listed-incremental"
- "--mode="
- "--modification-time"
- "--multi-volume"
- "--new-volume-script="
- "--newer="
- "--newer-mtime"
- "--no-recursion"
- "--null"
- "--numeric-owner"
- "--old-archive"
- "--one-file-system"
- "--owner="
- "--portability"
- "--posix"
- "--preserve"
- "--preserve-order"
- "--preserve-permissions"
- "--read-full-records"
- "--record-size="
- "--recursive-unlink"
- "--remove-files"
- "--rsh-command="
- "--same-order"
- "--same-owner"
- "--same-permissions"
- "--sparse"
- "--starting-file="
- "--suffix="
- "--tape-length="
- "--to-stdout"
- "--totals"
- "--uncompress"
- "--ungzip"
- "--unlink-first"
- "--update"
- "--use-compress-program="
- "--verbose"
- "--verify"
- "--version"
- "--volno-file=")))
- (pcomplete-opt "01234567ABCFGKLMNOPRSTUVWXZbcdfghiklmoprstuvwxz"))
- (cond
- ((pcomplete-match "\\`-\\'" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--after-date=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--backup=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--blocking-factor=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--directory=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-dirs)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--exclude-from=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--exclude=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--\\(extract\\|list\\)\\'" 0)
- (setq complete-within t))
- ((pcomplete-match "\\`--file=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-dirs-or-entries pcmpl-gnu-tarfile-regexp)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--files-from=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--group=\\(.*\\)" 0)
- (pcomplete-here* (pcmpl-unix-group-names)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--info-script=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--label=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--mode=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--new-volume-script=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--newer=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--owner=\\(.*\\)" 0)
- (pcomplete-here* (pcmpl-unix-user-names)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--record-size=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--rsh-command=\\(.*\\)" 0)
- (pcomplete-here* (funcall pcomplete-command-completion-function)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--starting-file=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--suffix=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--tape-length=" 0)
- (pcomplete-here*))
- ((pcomplete-match "\\`--use-compress-program=\\(.*\\)" 0)
- (pcomplete-here* (funcall pcomplete-command-completion-function)
- (pcomplete-match-string 1 0)))
- ((pcomplete-match "\\`--volno-file=\\(.*\\)" 0)
- (pcomplete-here* (pcomplete-entries)
- (pcomplete-match-string 1 0)))))
+ (cond
+ ((pcomplete-match "^--\\([^= \t\n\f]*\\)\\'" 0)
+ (pcomplete-here* pcmpl-gnu--tar-long-options))
+ ((pcomplete-match "\\`--directory=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-dirs)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--exclude-from=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--\\(extract\\|list\\)\\'" 0)
+ (setq complete-within t))
+ ((pcomplete-match "\\`--file=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-dirs-or-entries
+ pcmpl-gnu-tarfile-regexp)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--files-from=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--group=\\(.*\\)" 0)
+ (pcomplete-here* (pcmpl-unix-group-names)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--info-script=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--new-volume-script=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--owner=\\(.*\\)" 0)
+ (pcomplete-here* (pcmpl-unix-user-names)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--rsh-command=\\(.*\\)" 0)
+ (pcomplete-here* (funcall pcomplete-command-completion-function)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--starting-file=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--use-compress-program=\\(.*\\)" 0)
+ (pcomplete-here* (funcall pcomplete-command-completion-function)
+ (pcomplete-match-string 1 0)))
+ ((pcomplete-match "\\`--volno-file=\\(.*\\)" 0)
+ (pcomplete-here* (pcomplete-entries)
+ (pcomplete-match-string 1 0)))
+ (t
+ (pcomplete-here*)))
+ (pcomplete-opt "01234567ABCFGKLMNOPRSTUVWXZbcdfghiklmoprstuvwxz")
+ (when (pcomplete-match "\\`-\\'" 0)
+ (pcomplete-here*))))
(unless saw-option
(pcomplete-here
(mapcar #'char-to-string
--
2.25.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-02-23 20:43 ` Jim Porter
@ 2023-03-04 5:37 ` Jim Porter
2023-03-08 23:53 ` Jim Porter
0 siblings, 1 reply; 10+ messages in thread
From: Jim Porter @ 2023-03-04 5:37 UTC (permalink / raw)
To: Stefan Monnier; +Cc: reza, 58921
On 2/23/2023 12:43 PM, Jim Porter wrote:
> Ah, good point. Instead of '(pcomplete-match "\\`--.*=" 0)', I think we
> want to handle all args starting with "--", but not matching "^--\\([^=
> \t\n\f]*\\)\\'". The goal is to call 'pcomplete-here*' exactly once per
> option.
>
> I did this a slightly different way in the updated patch by moving all
> the "--" cases into a single place (likewise with the "-" options). I
> think this is easier to follow than before, and makes it more obvious
> that we're calling 'pcomplete-here*' the right number of times.
Any other thoughts before I merge this patch?
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#58921: Tab completion hangs in eshell
2023-03-04 5:37 ` Jim Porter
@ 2023-03-08 23:53 ` Jim Porter
0 siblings, 0 replies; 10+ messages in thread
From: Jim Porter @ 2023-03-08 23:53 UTC (permalink / raw)
To: Stefan Monnier; +Cc: 58921-done, reza
On 3/3/2023 9:37 PM, Jim Porter wrote:
> Any other thoughts before I merge this patch?
Merged as 38427494d5b, and closing this bug now. Of course, if there are
any remaining issues, just let me know and I'll take a look.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2023-03-08 23:53 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <2cb2b8aa-0813-5eae-3bfc-27831b3d50dd@housseini.me>
2022-10-31 9:04 ` bug#58921: Tab completion hangs in eshell reza via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-02 7:28 ` Gerd Möllmann
2023-02-10 7:34 ` Jim Porter
2023-02-23 6:57 ` Jim Porter
2023-02-23 18:08 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-23 19:25 ` Jim Porter
2023-02-23 19:34 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-02-23 20:43 ` Jim Porter
2023-03-04 5:37 ` Jim Porter
2023-03-08 23:53 ` Jim Porter
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).