Package: emacs;
Reported by: the_wurfkreuz <the_wurfkreuz <at> proton.me>
Date: Thu, 22 Aug 2024 17:31:01 UTC
Severity: normal
Found in version 30.0.60
To reply to this bug, email your comments to 72762 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#72762
; Package emacs
.
(Thu, 22 Aug 2024 17:31:02 GMT) Full text and rfc822 format available.the_wurfkreuz <the_wurfkreuz <at> proton.me>
:bug-gnu-emacs <at> gnu.org
.
(Thu, 22 Aug 2024 17:31:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: the_wurfkreuz <the_wurfkreuz <at> proton.me> To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org> Subject: 30.0.60; Incorrect rendering of the completion-preview mode Date: Thu, 22 Aug 2024 17:29:30 +0000
[Message part 1 (text/plain, inline)]
Apparently, the completion-preview-mode rendering doesn't work correctly with minibuffer messages (i don't know what they're called exactly). To see the problem, completion-preview-mode should show its completion suggestion simultaneously with any minibuffer messages like "[No Match]" or "[Incomplete Command]" and so on. However, the only sane, practical way I found to recreate this situation involves using evil-mode's command minibuffer. The idea is to load Emacs with evil-mode, execute the `evil-ex` command, and then start typing any interactive command while `completion-preview-mode` is active for minibuffers. Reproduction: - Load emacs with the evil-mode package. - Activate evil-mode and completion-preview-mode. - Evaluate the hook '(add-hook 'minibuffer-mode-hook #'completion-preview-mode)'. - Execute 'evil-ex'. - Try to write any long command to trigger the preview completion. [image.png] ------------------------------------------------------------------------------------------------------- In GNU Emacs 30.0.60 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.43, cairo version 1.18.0) of 2024-08-20 built on archlinux Repository revision: fc7581ae2ee9db1e3189b76c66be9cd13f72f004 Repository branch: emacs-30 Windowing system distributor 'The X.Org Foundation', version 11.0.12401002 System Description: Arch Linux Configured using: 'configure --with-tree-sitter --with-gif --with-png --with-jpeg --with-rsvg --with-tiff --with-imagemagick --with-x-toolkit=gtk3 --with-xwidgets' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ IMAGEMAGICK JPEG LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM XWIDGETS GTK3 ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Org Minor modes in effect: windmove-mode: t org-indent-mode: t savehist-mode: t org-bullets-mode: t pyvenv-mode: t shackle-mode: t popper-echo-mode: t popper-mode: t eshell-syntax-highlighting-global-mode: t global-git-commit-mode: t magit-auto-revert-mode: t marginalia-mode: t vertico-mode: t global-fish-completion-mode: t fish-completion-mode: t corfu-popupinfo-mode: t corfu-history-mode: t corfu-echo-mode: t global-corfu-mode: t corfu-mode: t yas-global-mode: t yas-minor-mode: t which-key-mode: t dired-async-mode: t server-mode: t global-treesit-auto-mode: t global-evil-collection-unimpaired-mode: t evil-collection-unimpaired-mode: t global-evil-surround-mode: t evil-surround-mode: t evil-mode: t evil-local-mode: t global-undo-tree-mode: t undo-tree-mode: t global-auto-revert-mode: t save-place-mode: t electric-pair-mode: t recentf-mode: t global-display-line-numbers-mode: t display-line-numbers-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t prettify-symbols-mode: t tab-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t line-number-mode: t auto-fill-function: #[128 \304\300\301#\207 [yas--auto-fill org-auto-fill-function :around nil apply] 5 advice] transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /home/wurfkreuz/.emacs.d/elpa/transient-20240819.1250/transient hides /home/wurfkreuz/.source/emacs/lisp/transient ~/.source/org-mode/lisp/org hides /home/wurfkreuz/.source/emacs/lisp/org/org ~/.source/org-mode/lisp/ox-publish hides /home/wurfkreuz/.source/emacs/lisp/org/ox-publish ~/.source/org-mode/lisp/ox-odt hides /home/wurfkreuz/.source/emacs/lisp/org/ox-odt ~/.source/org-mode/lisp/ox-org hides /home/wurfkreuz/.source/emacs/lisp/org/ox-org ~/.source/org-mode/lisp/ox-latex hides /home/wurfkreuz/.source/emacs/lisp/org/ox-latex ~/.source/org-mode/lisp/ox-md hides /home/wurfkreuz/.source/emacs/lisp/org/ox-md ~/.source/org-mode/lisp/ox-man hides /home/wurfkreuz/.source/emacs/lisp/org/ox-man ~/.source/org-mode/lisp/ox-html hides /home/wurfkreuz/.source/emacs/lisp/org/ox-html ~/.source/org-mode/lisp/ox-icalendar hides /home/wurfkreuz/.source/emacs/lisp/org/ox-icalendar ~/.source/org-mode/lisp/ox-koma-letter hides /home/wurfkreuz/.source/emacs/lisp/org/ox-koma-letter ~/.source/org-mode/lisp/ox-beamer hides /home/wurfkreuz/.source/emacs/lisp/org/ox-beamer ~/.source/org-mode/lisp/ox-ascii hides /home/wurfkreuz/.source/emacs/lisp/org/ox-ascii ~/.source/org-mode/lisp/org-timer hides /home/wurfkreuz/.source/emacs/lisp/org/org-timer ~/.source/org-mode/lisp/org-tempo hides /home/wurfkreuz/.source/emacs/lisp/org/org-tempo ~/.source/org-mode/lisp/org-refile hides /home/wurfkreuz/.source/emacs/lisp/org/org-refile ~/.source/org-mode/lisp/org-protocol hides /home/wurfkreuz/.source/emacs/lisp/org/org-protocol ~/.source/org-mode/lisp/org-plot hides /home/wurfkreuz/.source/emacs/lisp/org/org-plot ~/.source/org-mode/lisp/org-persist hides /home/wurfkreuz/.source/emacs/lisp/org/org-persist ~/.source/org-mode/lisp/org-table hides /home/wurfkreuz/.source/emacs/lisp/org/org-table ~/.source/org-mode/lisp/org-num hides /home/wurfkreuz/.source/emacs/lisp/org/org-num ~/.source/org-mode/lisp/org-mouse hides /home/wurfkreuz/.source/emacs/lisp/org/org-mouse ~/.source/org-mode/lisp/org-src hides /home/wurfkreuz/.source/emacs/lisp/org/org-src ~/.source/org-mode/lisp/org-mobile hides /home/wurfkreuz/.source/emacs/lisp/org/org-mobile ~/.source/org-mode/lisp/org-lint hides /home/wurfkreuz/.source/emacs/lisp/org/org-lint ~/.source/org-mode/lisp/org-inlinetask hides /home/wurfkreuz/.source/emacs/lisp/org/org-inlinetask ~/.source/org-mode/lisp/org-habit hides /home/wurfkreuz/.source/emacs/lisp/org/org-habit ~/.source/org-mode/lisp/org-pcomplete hides /home/wurfkreuz/.source/emacs/lisp/org/org-pcomplete ~/.source/org-mode/lisp/org-indent hides /home/wurfkreuz/.source/emacs/lisp/org/org-indent ~/.source/org-mode/lisp/org-goto hides /home/wurfkreuz/.source/emacs/lisp/org/org-goto ~/.source/org-mode/lisp/org-id hides /home/wurfkreuz/.source/emacs/lisp/org/org-id ~/.source/org-mode/lisp/org-feed hides /home/wurfkreuz/.source/emacs/lisp/org/org-feed ~/.source/org-mode/lisp/org-macs hides /home/wurfkreuz/.source/emacs/lisp/org/org-macs ~/.source/org-mode/lisp/org-list hides /home/wurfkreuz/.source/emacs/lisp/org/org-list ~/.source/org-mode/lisp/org-loaddefs hides /home/wurfkreuz/.source/emacs/lisp/org/org-loaddefs ~/.source/org-mode/lisp/org-keys hides /home/wurfkreuz/.source/emacs/lisp/org/org-keys ~/.source/org-mode/lisp/org-footnote hides /home/wurfkreuz/.source/emacs/lisp/org/org-footnote ~/.source/org-mode/lisp/org-fold-core hides /home/wurfkreuz/.source/emacs/lisp/org/org-fold-core ~/.source/org-mode/lisp/org-fold hides /home/wurfkreuz/.source/emacs/lisp/org/org-fold ~/.source/org-mode/lisp/org-datetree hides /home/wurfkreuz/.source/emacs/lisp/org/org-datetree ~/.source/org-mode/lisp/org-ctags hides /home/wurfkreuz/.source/emacs/lisp/org/org-ctags ~/.source/org-mode/lisp/org-agenda hides /home/wurfkreuz/.source/emacs/lisp/org/org-agenda ~/.source/org-mode/lisp/org-colview hides /home/wurfkreuz/.source/emacs/lisp/org/org-colview ~/.source/org-mode/lisp/org-attach hides /home/wurfkreuz/.source/emacs/lisp/org/org-attach ~/.source/org-mode/lisp/org-faces hides /home/wurfkreuz/.source/emacs/lisp/org/org-faces ~/.source/org-mode/lisp/org-capture hides /home/wurfkreuz/.source/emacs/lisp/org/org-capture ~/.source/org-mode/lisp/org-clock hides /home/wurfkreuz/.source/emacs/lisp/org/org-clock ~/.source/org-mode/lisp/org-element-ast hides /home/wurfkreuz/.source/emacs/lisp/org/org-element-ast ~/.source/org-mode/lisp/org-entities hides /home/wurfkreuz/.source/emacs/lisp/org/org-entities ~/.source/org-mode/lisp/org-attach-git hides /home/wurfkreuz/.source/emacs/lisp/org/org-attach-git ~/.source/org-mode/lisp/org-duration hides /home/wurfkreuz/.source/emacs/lisp/org/org-duration ~/.source/org-mode/lisp/org-archive hides /home/wurfkreuz/.source/emacs/lisp/org/org-archive ~/.source/org-mode/lisp/org-cycle hides /home/wurfkreuz/.source/emacs/lisp/org/org-cycle ~/.source/org-mode/lisp/org-compat hides /home/wurfkreuz/.source/emacs/lisp/org/org-compat ~/.source/org-mode/lisp/org-crypt hides /home/wurfkreuz/.source/emacs/lisp/org/org-crypt ~/.source/org-mode/lisp/ol-gnus hides /home/wurfkreuz/.source/emacs/lisp/org/ol-gnus ~/.source/org-mode/lisp/ol-w3m hides /home/wurfkreuz/.source/emacs/lisp/org/ol-w3m ~/.source/org-mode/lisp/ol-rmail hides /home/wurfkreuz/.source/emacs/lisp/org/ol-rmail ~/.source/org-mode/lisp/ol-mhe hides /home/wurfkreuz/.source/emacs/lisp/org/ol-mhe ~/.source/org-mode/lisp/ol-man hides /home/wurfkreuz/.source/emacs/lisp/org/ol-man ~/.source/org-mode/lisp/ol-eww hides /home/wurfkreuz/.source/emacs/lisp/org/ol-eww ~/.source/org-mode/lisp/ol-irc hides /home/wurfkreuz/.source/emacs/lisp/org/ol-irc ~/.source/org-mode/lisp/ol-info hides /home/wurfkreuz/.source/emacs/lisp/org/ol-info ~/.source/org-mode/lisp/ol-eshell hides /home/wurfkreuz/.source/emacs/lisp/org/ol-eshell ~/.source/org-mode/lisp/ol-doi hides /home/wurfkreuz/.source/emacs/lisp/org/ol-doi ~/.source/org-mode/lisp/ol-bibtex hides /home/wurfkreuz/.source/emacs/lisp/org/ol-bibtex ~/.source/org-mode/lisp/ol-docview hides /home/wurfkreuz/.source/emacs/lisp/org/ol-docview ~/.source/org-mode/lisp/ob hides /home/wurfkreuz/.source/emacs/lisp/org/ob ~/.source/org-mode/lisp/ol-bbdb hides /home/wurfkreuz/.source/emacs/lisp/org/ol-bbdb ~/.source/org-mode/lisp/oc-csl hides /home/wurfkreuz/.source/emacs/lisp/org/oc-csl ~/.source/org-mode/lisp/oc-natbib hides /home/wurfkreuz/.source/emacs/lisp/org/oc-natbib ~/.source/org-mode/lisp/ob-tangle hides /home/wurfkreuz/.source/emacs/lisp/org/ob-tangle ~/.source/org-mode/lisp/oc-biblatex hides /home/wurfkreuz/.source/emacs/lisp/org/oc-biblatex ~/.source/org-mode/lisp/oc-basic hides /home/wurfkreuz/.source/emacs/lisp/org/oc-basic ~/.source/org-mode/lisp/oc-bibtex hides /home/wurfkreuz/.source/emacs/lisp/org/oc-bibtex ~/.source/org-mode/lisp/ob-sql hides /home/wurfkreuz/.source/emacs/lisp/org/ob-sql ~/.source/org-mode/lisp/ob-sqlite hides /home/wurfkreuz/.source/emacs/lisp/org/ob-sqlite ~/.source/org-mode/lisp/ob-table hides /home/wurfkreuz/.source/emacs/lisp/org/ob-table ~/.source/org-mode/lisp/ob-sed hides /home/wurfkreuz/.source/emacs/lisp/org/ob-sed ~/.source/org-mode/lisp/ob-shell hides /home/wurfkreuz/.source/emacs/lisp/org/ob-shell ~/.source/org-mode/lisp/ob-fortran hides /home/wurfkreuz/.source/emacs/lisp/org/ob-fortran ~/.source/org-mode/lisp/ob-screen hides /home/wurfkreuz/.source/emacs/lisp/org/ob-screen ~/.source/org-mode/lisp/ob-ruby hides /home/wurfkreuz/.source/emacs/lisp/org/ob-ruby ~/.source/org-mode/lisp/ob-scheme hides /home/wurfkreuz/.source/emacs/lisp/org/ob-scheme ~/.source/org-mode/lisp/ob-python hides /home/wurfkreuz/.source/emacs/lisp/org/ob-python ~/.source/org-mode/lisp/ob-sass hides /home/wurfkreuz/.source/emacs/lisp/org/ob-sass ~/.source/org-mode/lisp/ob-ref hides /home/wurfkreuz/.source/emacs/lisp/org/ob-ref ~/.source/org-mode/lisp/ob-plantuml hides /home/wurfkreuz/.source/emacs/lisp/org/ob-plantuml ~/.source/org-mode/lisp/ob-perl hides /home/wurfkreuz/.source/emacs/lisp/org/ob-perl ~/.source/org-mode/lisp/ob-processing hides /home/wurfkreuz/.source/emacs/lisp/org/ob-processing ~/.source/org-mode/lisp/ob-org hides /home/wurfkreuz/.source/emacs/lisp/org/ob-org ~/.source/org-mode/lisp/ob-octave hides /home/wurfkreuz/.source/emacs/lisp/org/ob-octave ~/.source/org-mode/lisp/ob-ocaml hides /home/wurfkreuz/.source/emacs/lisp/org/ob-ocaml ~/.source/org-mode/lisp/ob-gnuplot hides /home/wurfkreuz/.source/emacs/lisp/org/ob-gnuplot ~/.source/org-mode/lisp/ob-lua hides /home/wurfkreuz/.source/emacs/lisp/org/ob-lua ~/.source/org-mode/lisp/ob-maxima hides /home/wurfkreuz/.source/emacs/lisp/org/ob-maxima ~/.source/org-mode/lisp/ob-makefile hides /home/wurfkreuz/.source/emacs/lisp/org/ob-makefile ~/.source/org-mode/lisp/ob-matlab hides /home/wurfkreuz/.source/emacs/lisp/org/ob-matlab ~/.source/org-mode/lisp/ob-C hides /home/wurfkreuz/.source/emacs/lisp/org/ob-C ~/.source/org-mode/lisp/ob-lob hides /home/wurfkreuz/.source/emacs/lisp/org/ob-lob ~/.source/org-mode/lisp/ob-latex hides /home/wurfkreuz/.source/emacs/lisp/org/ob-latex ~/.source/org-mode/lisp/ob-lisp hides /home/wurfkreuz/.source/emacs/lisp/org/ob-lisp ~/.source/org-mode/lisp/ob-lilypond hides /home/wurfkreuz/.source/emacs/lisp/org/ob-lilypond ~/.source/org-mode/lisp/ob-julia hides /home/wurfkreuz/.source/emacs/lisp/org/ob-julia ~/.source/org-mode/lisp/ob-java hides /home/wurfkreuz/.source/emacs/lisp/org/ob-java ~/.source/org-mode/lisp/ob-haskell hides /home/wurfkreuz/.source/emacs/lisp/org/ob-haskell ~/.source/org-mode/lisp/ob-groovy hides /home/wurfkreuz/.source/emacs/lisp/org/ob-groovy ~/.source/org-mode/lisp/ob-js hides /home/wurfkreuz/.source/emacs/lisp/org/ob-js ~/.source/org-mode/lisp/ob-forth hides /home/wurfkreuz/.source/emacs/lisp/org/ob-forth ~/.source/org-mode/lisp/ob-exp hides /home/wurfkreuz/.source/emacs/lisp/org/ob-exp ~/.source/org-mode/lisp/ob-eshell hides /home/wurfkreuz/.source/emacs/lisp/org/ob-eshell ~/.source/org-mode/lisp/ob-eval hides /home/wurfkreuz/.source/emacs/lisp/org/ob-eval ~/.source/org-mode/lisp/ob-dot hides /home/wurfkreuz/.source/emacs/lisp/org/ob-dot ~/.source/org-mode/lisp/ob-ditaa hides /home/wurfkreuz/.source/emacs/lisp/org/ob-ditaa ~/.source/org-mode/lisp/ob-core hides /home/wurfkreuz/.source/emacs/lisp/org/ob-core ~/.source/org-mode/lisp/ob-css hides /home/wurfkreuz/.source/emacs/lisp/org/ob-css ~/.source/org-mode/lisp/ob-emacs-lisp hides /home/wurfkreuz/.source/emacs/lisp/org/ob-emacs-lisp ~/.source/org-mode/lisp/ob-clojure hides /home/wurfkreuz/.source/emacs/lisp/org/ob-clojure ~/.source/org-mode/lisp/ob-calc hides /home/wurfkreuz/.source/emacs/lisp/org/ob-calc ~/.source/org-mode/lisp/ob-awk hides /home/wurfkreuz/.source/emacs/lisp/org/ob-awk ~/.source/org-mode/lisp/ob-comint hides /home/wurfkreuz/.source/emacs/lisp/org/ob-comint ~/.source/org-mode/lisp/ob-R hides /home/wurfkreuz/.source/emacs/lisp/org/ob-R ~/.source/org-mode/lisp/org-element hides /home/wurfkreuz/.source/emacs/lisp/org/org-element ~/.source/org-mode/lisp/ox-texinfo hides /home/wurfkreuz/.source/emacs/lisp/org/ox-texinfo ~/.source/org-mode/lisp/ox hides /home/wurfkreuz/.source/emacs/lisp/org/ox ~/.source/org-mode/lisp/ol hides /home/wurfkreuz/.source/emacs/lisp/org/ol ~/.source/org-mode/lisp/oc hides /home/wurfkreuz/.source/emacs/lisp/org/oc ~/.source/org-mode/lisp/org-macro hides /home/wurfkreuz/.source/emacs/lisp/org/org-macro ~/.source/org-mode/lisp/org-version hides /home/wurfkreuz/.source/emacs/lisp/org/org-version Features: (shadow sort mail-extr emacsbug vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs log-view bug-reference semantic/ia semantic/analyze/refs semantic/db-find semantic/db-ref semantic/senator semantic/decorate semantic/analyze semantic/sort semantic/scope semantic/analyze/fcn semantic/db eieio-base semantic/ctxt semantic/format ezimage semantic/tag-ls semantic/find windmove mule-util tramp-cmds swiper evil-collection-ivy ivy delsel ivy-faces ivy-overlay colir image-file image-converter org-indent toc-org oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range gnus-win gnus nnheader range ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi vc-git completion-preview savehist org-bullets org-tempo tempo org-drill persist org-agenda org-download org-attach eglot external-completion jsonrpc ert ewoc yaml-mode haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme haskell-align-imports haskell-complete-module haskell-ghc-support flymake-proc dabbrev haskell-customize dockerfile-mode terraform-mode hcl-mode lua-mode go-mode find-file etags fileloop raku-mode raku-repl raku-imenu raku-indent raku-font-lock raku-detect flymake-hadolint flymake pyvenv shackle popper-echo popper transpose-frame evil-terminal-cursor-changer em-tramp eshell-syntax-highlighting em-alias evil-collection-eshell em-prompt eshell evil-collection-magit 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-status magit magit-repos magit-apply magit-wip magit-log which-func magit-diff smerge-mode git-commit log-edit message sendmail yank-media rfc822 mml mml-sec epa epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mailabbrev gmm-utils pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process magit-mode benchmark magit-git magit-base crm hydra lv helpful cc-langs cc-vars cc-defs trace cl-print edebug debug backtrace info-look f help-fns radix-tree elisp-refs embark-org org-element org-persist org-id org-refile org-element-ast inline avl-tree embark-consult embark ffap consult marginalia vertico wgrep grep mentor url-scgi mentor-rpc mentor-files mentor-data xml-rpc url-http url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-gw nsm zoxide exec-path-from-shell fish-completion em-cmpl em-dirs esh-mode esh-var esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-module-loaddefs esh-util cape corfu-popupinfo corfu-history corfu-echo corfu orderless yasnippet evil-collection-docker docker docker-context docker-volume docker-network docker-image docker-container docker-faces docker-core docker-compose docker-process docker-utils tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw cedet docker-group aio generator vterm bookmark pp face-remap vterm-module term/xterm xterm circe diff-mode track-changes lui-irc-colors irc gnutls lcs lui-logging lui-format lui tracking shorten flyspell ispell circe-compat xterm-color which-key dired-async dired-aux async avy kubernetes kubernetes-overview kubernetes-services kubernetes-secrets kubernetes-persistentvolumeclaims kubernetes-namespaces kubernetes-jobs kubernetes-pod-line kubernetes-ingress kubernetes-errors kubernetes-nodes kubernetes-statefulsets kubernetes-deployments kubernetes-configmaps kubernetes-logs kubernetes-labels kubernetes-commands mode-local kubernetes-popups kubernetes-el-tramp transient magit-popup kubernetes-pods kubernetes-loading-container kubernetes-contexts kubernetes-yaml kubernetes-utils evil-collection-term term disp-table ehelp kubernetes-modes kubernetes-kubectl kubernetes-state kubernetes-process request mailheader mail-utils kubernetes-core kubernetes-vars with-editor server kubernetes-ast magit-section cursor-sensor dash compat s daemons clojure-ts-mode cider cider-debug cider-browse-ns cider-mode cider-xref-backend cider-find cider-inspector cider-completion cider-profile cider-eval cider-jar arc-mode archive-mode compile cider-repl-history pulse derived cider-repl cider-resolve cider-test cider-overlays cider-stacktrace cider-doc cider-browse-spec cider-clojuredocs cider-eldoc cider-docstring shr text-property-search pixel-fill kinsoku url-file puny svg xml dom cider-client cider-common xref project cider-completion-context cider-connection cider-popup sesman-browser nrepl-client cider-util color sesman vc vc-dispatcher nrepl-dict spinner parseedn parseclj-parser parseclj-lex parseclj-alist clojure-mode lisp-mnt align imenu treesit-auto all-the-icons-dired evil-collection-dired dired dired-loaddefs all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons rose-pine-theme evil-collection-unimpaired evil-collection-minibuffer evil-collection-org evil-collection annalist evil-surround evil evil-integration evil-maps evil-commands evil-digraphs reveal evil-jumps evil-command-window evil-types evil-search evil-ex evil-macros evil-repeat evil-states evil-core advice evil-common rect evil-vars edmacro kmacro undo-tree diff queue diary-lib diary-loaddefs midnight autorevert filenotify saveplace tramp-sh tramp trampver tramp-integration files-x tramp-message tramp-compat xdg shell parse-time iso8601 tramp-loaddefs desktop frameset comp comp-cstr cl-extra help-mode warnings comp-run comp-common elec-pair recentf tree-widget wid-edit display-line-numbers org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie treesit executable ob-comint org-pcomplete pcomplete comint ansi-osc ansi-color ring org-list org-footnote org-faces org-entities time-date noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs thingatpt find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs format-spec use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key easy-mmode use-package-core finder-inf all-the-icons-dired-autoloads all-the-icons-autoloads avy-autoloads cape-autoloads cider-autoloads circe-autoloads clojure-mode-autoloads clojure-ts-mode-autoloads corfu-autoloads counsel-autoloads daemons-autoloads docker-autoloads aio-autoloads dockerfile-mode-autoloads emacs-crontab-mode-autoloads embark-consult-autoloads consult-autoloads embark-autoloads eshell-syntax-highlighting-autoloads evil-collection-autoloads annalist-autoloads evil-commentary-autoloads evil-leader-autoloads evil-org-autoloads evil-surround-autoloads evil-autoloads evil-terminal-cursor-changer-autoloads exec-path-from-shell-autoloads fish-completion-autoloads flymake-hadolint-autoloads flymake-shellcheck-autoloads general-autoloads go-mode-autoloads goto-chg-autoloads haskell-mode-autoloads helpful-autoloads elisp-refs-autoloads f-autoloads hydra-autoloads kubernetes-autoloads lua-mode-autoloads lv-autoloads magit-autoloads pcase git-commit-autoloads magit-popup-autoloads magit-section-autoloads marginalia-autoloads mentor-autoloads orderless-autoloads org-bullets-autoloads org-download-autoloads async-autoloads org-drill-autoloads paredit-autoloads parseedn-autoloads parseclj-autoloads persist-autoloads popper-autoloads pyvenv-autoloads raku-mode-autoloads rx request-autoloads rg-autoloads s-autoloads sesman-autoloads shackle-autoloads spinner-autoloads sudo-edit-autoloads swiper-autoloads ivy-autoloads tablist-autoloads terraform-mode-autoloads dash-autoloads hcl-mode-autoloads toc-org-autoloads transient-autoloads transpose-frame-autoloads treesit-auto-autoloads undo-tree-autoloads queue-autoloads url-scgi-autoloads vertico-autoloads vterm-autoloads wgrep-autoloads info with-editor-autoloads xml-rpc-autoloads xterm-color-autoloads yaml-mode-autoloads yasnippet-autoloads zoxide-autoloads 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 icons password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads xwidget-internal dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process native-compile emacs) Memory information: ((conses 16 1342965 211432) (symbols 48 64750 83) (strings 32 321112 13502) (string-bytes 1 9714734) (vectors 16 118332) (vector-slots 8 1790528 95492) (floats 8 1145 1866) (intervals 56 47548 953) (buffers 992 19))
[Message part 2 (text/html, inline)]
[image.png (image/png, inline)]
bug-gnu-emacs <at> gnu.org
:bug#72762
; Package emacs
.
(Thu, 22 Aug 2024 18:07:02 GMT) Full text and rfc822 format available.Message #8 received at 72762 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: the_wurfkreuz <the_wurfkreuz <at> proton.me>, Eshel Yaron <me <at> eshelyaron.com> Cc: 72762 <at> debbugs.gnu.org Subject: Re: bug#72762: 30.0.60; Incorrect rendering of the completion-preview mode Date: Thu, 22 Aug 2024 21:05:13 +0300
> Date: Thu, 22 Aug 2024 17:29:30 +0000 > From: the_wurfkreuz via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > Apparently, the completion-preview-mode rendering doesn't work correctly with minibuffer messages (i don't know what they're called exactly). > > To see the problem, completion-preview-mode should show its completion suggestion simultaneously with any minibuffer messages like "[No Match]" or "[Incomplete Command]" and so on. > > However, the only sane, practical way I found to recreate this situation involves using evil-mode's command minibuffer. The idea is to load Emacs with evil-mode, execute the `evil-ex` command, and then start typing any interactive command while `completion-preview-mode` is active for minibuffers. > > Reproduction: > - Load emacs with the evil-mode package. > - Activate evil-mode and completion-preview-mode. > - Evaluate the hook '(add-hook 'minibuffer-mode-hook #'completion-preview-mode)'. > - Execute 'evil-ex'. > - Try to write any long command to trigger the preview completion. Thanks. Eshel, can you please look into this?
bug-gnu-emacs <at> gnu.org
:bug#72762
; Package emacs
.
(Fri, 23 Aug 2024 05:32:02 GMT) Full text and rfc822 format available.Message #11 received at 72762 <at> debbugs.gnu.org (full text, mbox):
From: Eshel Yaron <me <at> eshelyaron.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 72762 <at> debbugs.gnu.org, the_wurfkreuz <the_wurfkreuz <at> proton.me> Subject: Re: bug#72762: 30.0.60; Incorrect rendering of the completion-preview mode Date: Fri, 23 Aug 2024 07:30:32 +0200
Hi, >> Date: Thu, 22 Aug 2024 17:29:30 +0000 >> From: the_wurfkreuz via "Bug reports for GNU Emacs, >> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> >> >> Apparently, the completion-preview-mode rendering doesn't work correctly with minibuffer messages (i don't know what they're called exactly). >> >> To see the problem, completion-preview-mode should show its completion suggestion simultaneously with any minibuffer messages like "[No Match]" or "[Incomplete Command]" and so on. Thanks for the report! Enabling Completion Preview mode in the minibuffer is not currently supported, precisely because minibuffers make use of different completion UIs which may conflict with the completion preview. You might notice that by default, minibuffer-mode is explicitly excluded in global-completion-preview-modes. That said, I do consider minibuffers to be a viable additional use case for Completion Preview mode, and I'd like to help you make it work: >> Reproduction: >> - Load emacs with the evil-mode package. >> - Activate evil-mode and completion-preview-mode. >> - Evaluate the hook '(add-hook 'minibuffer-mode-hook #'completion-preview-mode)'. >> - Execute 'evil-ex'. >> - Try to write any long command to trigger the preview completion. I don't use evil-mode, but I understand the situation after following these steps. evil-ex uses an overlay with after-string property to display its automatic messages, which is the same mechanism Completion Preview mode uses to display the preview. A quick solution you can try is to use completion-preview-active-mode-hook to turn off evil-ex's automatic messages when the preview is visible by temporarily setting evil-no-display to non-nil. An arguably nicer solution is to give the completion preview overlay higher priority, so it is displayed before the "[Incomplete Command]" message. However, we don't always want to give the completion preview overlay a positive priority, since that may lead to incorrect results in other scenarios. What we can do is to add a variable that specifies the overlay priority, so you can set it just where appropriate. Eli, is the following alright for Emacs 30, or should this go on the master branch? diff --git a/lisp/completion-preview.el b/lisp/completion-preview.el index d3e9acb1ed9..60abdbc0736 100644 --- a/lisp/completion-preview.el +++ b/lisp/completion-preview.el @@ -262,11 +262,16 @@ completion-preview-hide (setq completion-preview--overlay nil completion-preview--inhibit-update-p nil))) +(defvar completion-preview-overlay-priority nil + "Value of the `priority' property for the completion preview overlay.") + (defun completion-preview--make-overlay (pos string) "Make preview overlay showing STRING at POS, or move existing preview there." (if completion-preview--overlay (move-overlay completion-preview--overlay pos pos) (setq completion-preview--overlay (make-overlay pos pos)) + (overlay-put completion-preview--overlay 'priority + completion-preview-overlay-priority) (overlay-put completion-preview--overlay 'window (selected-window))) (add-text-properties 0 1 '(cursor 1) string) (overlay-put completion-preview--overlay 'after-string string)
bug-gnu-emacs <at> gnu.org
:bug#72762
; Package emacs
.
(Wed, 04 Sep 2024 17:04:02 GMT) Full text and rfc822 format available.Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Eshel Yaron <me <at> eshelyaron.com> To: Eshel Yaron via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> Cc: Eli Zaretskii <eliz <at> gnu.org>, 72762 <at> debbugs.gnu.org, the_wurfkreuz <the_wurfkreuz <at> proton.me> Subject: Re: bug#72762: 30.0.60; Incorrect rendering of the completion-preview mode Date: Wed, 04 Sep 2024 19:02:16 +0200
Eshel Yaron writes: [...] > An arguably nicer solution is to give the completion preview overlay > higher priority, so it is displayed before the "[Incomplete Command]" > message. However, we don't always want to give the completion preview > overlay a positive priority, since that may lead to incorrect results in > other scenarios. What we can do is to add a variable that specifies the > overlay priority, so you can set it just where appropriate. > > Eli, is the following alright for Emacs 30, or should this go on the > master branch? Pushed to master for now, with some additional commentary, in commit a13eef1fae0. Best, Eshel
bug-gnu-emacs <at> gnu.org
:bug#72762
; Package emacs
.
(Wed, 04 Sep 2024 17:04:02 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.