Package: emacs;
Reported by: Aaron Jensen <aaronjensen <at> gmail.com>
Date: Mon, 31 Jan 2022 15:26:01 UTC
Severity: normal
Fixed in version 29.0.50
Done: Juri Linkov <juri <at> linkov.net>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 53662 in the body.
You can then email your comments to 53662 AT debbugs.gnu.org in the normal way.
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#53662
; Package emacs
.
(Mon, 31 Jan 2022 15:26:01 GMT) Full text and rfc822 format available.Aaron Jensen <aaronjensen <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Mon, 31 Jan 2022 15:26:01 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Aaron Jensen <aaronjensen <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 29.0.50; Cannot use tab-new from side window Date: Mon, 31 Jan 2022 10:25:10 -0500
If you attempt to tab-bar-new-tab while in a side window you get: split-window: Cannot split side window or parent of side window It also deletes other windows and leaves you in a very awkward side-window-only state. To repro: emacs -Q M-x tab-bar-mode M-: (display-buffer-in-side-window (get-buffer "*Messages*") '((side . bottom))) C-x o M-x tab-new In GNU Emacs 29.0.50 (build 1, aarch64-apple-darwin21.2.0, NS appkit-2113.20 Version 12.1 (Build 21C52)) of 2022-01-04 built on aaron-m1.local Windowing system distributor 'Apple', version 10.3.2113 System Description: macOS 12.1 Configured using: 'configure --disable-dependency-tracking --disable-silent-rules --enable-locallisppath=/opt/homebrew/share/emacs/site-lisp --infodir=/opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/info/emacs --prefix=/opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50 --with-xml2 --with-gnutls --with-native-compilation --without-dbus --without-imagemagick --with-modules --with-rsvg --with-ns --disable-ns-self-contained 'CFLAGS=-I/opt/homebrew/opt/gcc/include -I/opt/homebrew/opt/libgccjit/include -I/opt/homebrew/opt/gmp/include -I/opt/homebrew/opt/jpeg/include' 'LDFLAGS=-L/opt/homebrew/lib/gcc/11 -I/opt/homebrew/opt/gcc/include -I/opt/homebrew/opt/libgccjit/include -I/opt/homebrew/opt/gmp/include -I/opt/homebrew/opt/jpeg/include'' Configured features: ACL GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS XIM ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: bug-reference-prog-mode: t global-flycheck-mode: t flycheck-mode: t pdf-occur-global-minor-mode: t global-git-commit-mode: t transient-posframe-mode: t treemacs-filewatch-mode: t treemacs-follow-mode: t treemacs-git-mode: t treemacs-fringe-indicator-mode: t global-auto-revert-mode: t projectile-mode: t yas-global-mode: t yas-minor-mode: t which-key-posframe-mode: t which-key-mode: t winner-mode: t org-roam-db-autosync-mode: t form-feed-mode: t company-posframe-mode: t company-prescient-mode: t company-tng-mode: t company-mode: t eval-sexp-fu-flash-mode: t eros-mode: t lispyville-mode: t lispy-mode: t elisp-def-mode: t sotlisp-mode: t speed-of-thought-mode: t evil-vimish-fold-mode: t vimish-fold-mode: t dtrt-indent-mode: t electric-pair-mode: t recentf-mode: t better-jumper-mode: t better-jumper-local-mode: t repeat-mode: t global-undo-tree-mode: t undo-tree-mode: t global-evil-collection-unimpaired-mode: t evil-collection-unimpaired-mode: t global-evil-mc-mode: t evil-mc-mode: t evil-snipe-override-mode: t evil-snipe-mode: t evil-snipe-override-local-mode: t evil-snipe-local-mode: t global-evil-matchit-mode: t evil-matchit-mode: t global-evil-surround-mode: t evil-surround-mode: t shell-dirtrack-mode: t evil-mode: t evil-local-mode: t windmove-mode: t gcmh-mode: t mini-frame-mode: t vertico-mouse-mode: t vertico-mode: t prescient-persist-mode: t +popup-mode: t ws-butler-global-mode: t ws-butler-mode: t save-place-mode: t ns-auto-titlebar-mode: t nano-modeline-mode: t envrc-global-mode: t envrc-mode: t leader-key-leader-override-mode: t global-leader-key-leader-override-mode: t delete-selection-mode: t savehist-mode: t pixel-scroll-precision-mode: t xterm-mouse-mode: t override-global-mode: t straight-use-package-mode: t straight-package-neutering-mode: t global-display-line-numbers-mode: t display-line-numbers-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tab-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t window-divider-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t auto-fill-function: yas--auto-fill transient-mark-mode: t abbrev-mode: t Load-path shadows: /Users/aaronjensen/.emacs.d/straight/build/ivy/elpa hides /Users/aaronjensen/.emacs.d/straight/build/lispy/elpa /Users/aaronjensen/.emacs.d/straight/build/transient/transient hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/transient /Users/aaronjensen/.emacs.d/straight/build/org/ob-exp hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-exp /Users/aaronjensen/.emacs.d/straight/build/org/ob-emacs-lisp hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-emacs-lisp /Users/aaronjensen/.emacs.d/straight/build/org/oc hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/oc /Users/aaronjensen/.emacs.d/straight/build/org/ob-css hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-css /Users/aaronjensen/.emacs.d/straight/build/org/ob-lob hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-lob /Users/aaronjensen/.emacs.d/straight/build/org/ol-irc hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-irc /Users/aaronjensen/.emacs.d/straight/build/org/ob-forth hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-forth /Users/aaronjensen/.emacs.d/straight/build/org/org-macs hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-macs /Users/aaronjensen/.emacs.d/straight/build/org/ob hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob /Users/aaronjensen/.emacs.d/straight/build/org/org-version hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-version /Users/aaronjensen/.emacs.d/straight/build/org/ob-scheme hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-scheme /Users/aaronjensen/.emacs.d/straight/build/org/ox hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox /Users/aaronjensen/.emacs.d/straight/build/org/ob-C hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-C /Users/aaronjensen/.emacs.d/straight/build/org/org-capture hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-capture /Users/aaronjensen/.emacs.d/straight/build/org/ob-ref hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-ref /Users/aaronjensen/.emacs.d/straight/build/org/ob-clojure hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-clojure /Users/aaronjensen/.emacs.d/straight/build/org/org-mouse hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-mouse /Users/aaronjensen/.emacs.d/straight/build/org/org-ctags hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-ctags /Users/aaronjensen/.emacs.d/straight/build/org/org-entities hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-entities /Users/aaronjensen/.emacs.d/straight/build/org/org-archive hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-archive /Users/aaronjensen/.emacs.d/straight/build/org/ob-screen hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-screen /Users/aaronjensen/.emacs.d/straight/build/org/ol-bibtex hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-bibtex /Users/aaronjensen/.emacs.d/straight/build/org/ob-haskell hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-haskell /Users/aaronjensen/.emacs.d/straight/build/org/org-table hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-table /Users/aaronjensen/.emacs.d/straight/build/org/ol-eww hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-eww /Users/aaronjensen/.emacs.d/straight/build/org/ol-man hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-man /Users/aaronjensen/.emacs.d/straight/build/org/ox-org hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-org /Users/aaronjensen/.emacs.d/straight/build/org/org-num hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-num /Users/aaronjensen/.emacs.d/straight/build/org/org-plot hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-plot /Users/aaronjensen/.emacs.d/straight/build/org/ol-rmail hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-rmail /Users/aaronjensen/.emacs.d/straight/build/org/ob-awk hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-awk /Users/aaronjensen/.emacs.d/straight/build/org/ob-groovy hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-groovy /Users/aaronjensen/.emacs.d/straight/build/org/ob-octave hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-octave /Users/aaronjensen/.emacs.d/straight/build/org/org-faces hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-faces /Users/aaronjensen/.emacs.d/straight/build/org/oc-biblatex hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/oc-biblatex /Users/aaronjensen/.emacs.d/straight/build/org/org-colview hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-colview /Users/aaronjensen/.emacs.d/straight/build/org/ob-R hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-R /Users/aaronjensen/.emacs.d/straight/build/org/org-refile hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-refile /Users/aaronjensen/.emacs.d/straight/build/org/org-timer hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-timer /Users/aaronjensen/.emacs.d/straight/build/org/org-mobile hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-mobile /Users/aaronjensen/.emacs.d/straight/build/org/ob-fortran hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-fortran /Users/aaronjensen/.emacs.d/straight/build/org/ob-shell hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-shell /Users/aaronjensen/.emacs.d/straight/build/org/ob-perl hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-perl /Users/aaronjensen/.emacs.d/straight/build/org/ob-sqlite hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-sqlite /Users/aaronjensen/.emacs.d/straight/build/org/oc-basic hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/oc-basic /Users/aaronjensen/.emacs.d/straight/build/org/ob-sed hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-sed /Users/aaronjensen/.emacs.d/straight/build/org/org-list hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-list /Users/aaronjensen/.emacs.d/straight/build/org/ob-ruby hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-ruby /Users/aaronjensen/.emacs.d/straight/build/org/ob-eval hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-eval /Users/aaronjensen/.emacs.d/straight/build/org/org-habit hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-habit /Users/aaronjensen/.emacs.d/straight/build/org/org-clock hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-clock /Users/aaronjensen/.emacs.d/straight/build/org/org-goto hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-goto /Users/aaronjensen/.emacs.d/straight/build/org/ox-html hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-html /Users/aaronjensen/.emacs.d/straight/build/org/org-src hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-src /Users/aaronjensen/.emacs.d/straight/build/org/ob-lisp hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-lisp /Users/aaronjensen/.emacs.d/straight/build/org/ol-eshell hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-eshell /Users/aaronjensen/.emacs.d/straight/build/org/ob-ditaa hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-ditaa /Users/aaronjensen/.emacs.d/straight/build/org/org-pcomplete hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-pcomplete /Users/aaronjensen/.emacs.d/straight/build/org/org-lint hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-lint /Users/aaronjensen/.emacs.d/straight/build/org/ox-latex hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-latex /Users/aaronjensen/.emacs.d/straight/build/org/ob-sass hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-sass /Users/aaronjensen/.emacs.d/straight/build/org/ob-tangle hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-tangle /Users/aaronjensen/.emacs.d/straight/build/org/ob-calc hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-calc /Users/aaronjensen/.emacs.d/straight/build/org/ob-java hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-java /Users/aaronjensen/.emacs.d/straight/build/org/ox-icalendar hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-icalendar /Users/aaronjensen/.emacs.d/straight/build/org/ol-mhe hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-mhe /Users/aaronjensen/.emacs.d/straight/build/org/org-attach-git hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-attach-git /Users/aaronjensen/.emacs.d/straight/build/org/ox-md hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-md /Users/aaronjensen/.emacs.d/straight/build/org/ox-beamer hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-beamer /Users/aaronjensen/.emacs.d/straight/build/org/org-element hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-element /Users/aaronjensen/.emacs.d/straight/build/org/oc-natbib hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/oc-natbib /Users/aaronjensen/.emacs.d/straight/build/org/org-protocol hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-protocol /Users/aaronjensen/.emacs.d/straight/build/org/ob-gnuplot hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-gnuplot /Users/aaronjensen/.emacs.d/straight/build/org/org-tempo hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-tempo /Users/aaronjensen/.emacs.d/straight/build/org/ob-latex hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-latex /Users/aaronjensen/.emacs.d/straight/build/org/ol-w3m hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-w3m /Users/aaronjensen/.emacs.d/straight/build/org/org-id hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-id /Users/aaronjensen/.emacs.d/straight/build/org/ox-man hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-man /Users/aaronjensen/.emacs.d/straight/build/org/ol-doi hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-doi /Users/aaronjensen/.emacs.d/straight/build/org/org-feed hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-feed /Users/aaronjensen/.emacs.d/straight/build/org/ob-julia hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-julia /Users/aaronjensen/.emacs.d/straight/build/org/ob-lua hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-lua /Users/aaronjensen/.emacs.d/straight/build/org/ob-table hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-table /Users/aaronjensen/.emacs.d/straight/build/org/ob-ocaml hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-ocaml /Users/aaronjensen/.emacs.d/straight/build/org/oc-csl hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/oc-csl /Users/aaronjensen/.emacs.d/straight/build/org/ol-gnus hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-gnus /Users/aaronjensen/.emacs.d/straight/build/org/org-indent hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-indent /Users/aaronjensen/.emacs.d/straight/build/org/ob-lilypond hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-lilypond /Users/aaronjensen/.emacs.d/straight/build/org/ob-matlab hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-matlab /Users/aaronjensen/.emacs.d/straight/build/org/org-datetree hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-datetree /Users/aaronjensen/.emacs.d/straight/build/org/ol-docview hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-docview /Users/aaronjensen/.emacs.d/straight/build/org/ob-python hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-python /Users/aaronjensen/.emacs.d/straight/build/org/ob-makefile hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-makefile /Users/aaronjensen/.emacs.d/straight/build/org/org-duration hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-duration /Users/aaronjensen/.emacs.d/straight/build/org/org-agenda hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-agenda /Users/aaronjensen/.emacs.d/straight/build/org/ob-dot hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-dot /Users/aaronjensen/.emacs.d/straight/build/org/ob-js hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-js /Users/aaronjensen/.emacs.d/straight/build/org/ox-publish hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-publish /Users/aaronjensen/.emacs.d/straight/build/org/org-inlinetask hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-inlinetask /Users/aaronjensen/.emacs.d/straight/build/org/ob-org hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-org /Users/aaronjensen/.emacs.d/straight/build/org/org-keys hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-keys /Users/aaronjensen/.emacs.d/straight/build/org/ob-core hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-core /Users/aaronjensen/.emacs.d/straight/build/org/org-compat hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-compat /Users/aaronjensen/.emacs.d/straight/build/org/ol hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol /Users/aaronjensen/.emacs.d/straight/build/org/ox-odt hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-odt /Users/aaronjensen/.emacs.d/straight/build/org/ol-info hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-info /Users/aaronjensen/.emacs.d/straight/build/org/ob-plantuml hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-plantuml /Users/aaronjensen/.emacs.d/straight/build/org/ob-eshell hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-eshell /Users/aaronjensen/.emacs.d/straight/build/org/ox-ascii hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-ascii /Users/aaronjensen/.emacs.d/straight/build/org/org-loaddefs hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-loaddefs /Users/aaronjensen/.emacs.d/straight/build/org/ox-koma-letter hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-koma-letter /Users/aaronjensen/.emacs.d/straight/build/org/ob-maxima hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-maxima /Users/aaronjensen/.emacs.d/straight/build/org/org hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org /Users/aaronjensen/.emacs.d/straight/build/org/ol-bbdb hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ol-bbdb /Users/aaronjensen/.emacs.d/straight/build/org/org-macro hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-macro /Users/aaronjensen/.emacs.d/straight/build/org/ob-sql hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-sql /Users/aaronjensen/.emacs.d/straight/build/org/org-attach hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-attach /Users/aaronjensen/.emacs.d/straight/build/org/ob-processing hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-processing /Users/aaronjensen/.emacs.d/straight/build/org/ox-texinfo hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ox-texinfo /Users/aaronjensen/.emacs.d/straight/build/org/org-crypt hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-crypt /Users/aaronjensen/.emacs.d/straight/build/org/org-footnote hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-footnote /Users/aaronjensen/.emacs.d/straight/build/org/org-install hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/org-install /Users/aaronjensen/.emacs.d/straight/build/org/ob-comint hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/org/ob-comint /Users/aaronjensen/.emacs.d/straight/build/let-alist/let-alist hides /opt/homebrew/Cellar/emacs-plus <at> 29/29.0.50/share/emacs/29.0.50/lisp/emacs-lisp/let-alist Features: (shadow mail-extr emacsbug sendmail treemacs-tab-bar treemacs-hydras hippie-exp view org-journal org-crypt cal-iso cl-print whitespace shortdoc tramp-cmds tramp-cache prettier tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat ls-lisp nvm iter2 markdown-mode goto-addr dumb-jump popup 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 semantic/tag-ls semantic/find vc-mtn vc-hg vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs vc bug-reference restart-emacs desktop frameset magit-delta deft executable evil-terminal-cursor-changer flycheck ace-window buffer-move rotate embark-consult embark ffap consult-xref consult-vertico consult vertico-repeat evil-collection-pdf pdf-occur tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag cedet pdf-isearch let-alist pdf-misc pdf-loader pdf-tools pdf-view magit-bookmark treemacs-bookmarks bookmark pdf-cache pdf-info tq pdf-util pdf-macs titlecase titlecase-data wgrep sort drag-stuff speeddating evil-nerd-commenter evil-nerd-commenter-operator evil-nerd-commenter-sdk sgml-mode facemenu evil-visualstar evil-collection-magit treemacs-magit magit-submodule magit-obsolete 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 package url-handlers magit-repos magit-apply magit-wip magit-log which-func magit-diff smerge-mode git-commit log-edit pcvs-util add-log magit-core magit-autorevert magit-margin magit-transient magit-process with-editor magit-mode transient-posframe transient magit-git magit-utils crm org-eldoc org-appear orgonomic org-indent org-superstar oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-search eieio-opt speedbar ezimage dframe gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum shr pixel-fill kinsoku svg dom browse-url gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message yank-media rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util mail-utils ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi org-link-doi treemacs-projectile treemacs-evil treemacs-all-the-icons all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons treemacs treemacs-header-line treemacs-compatibility treemacs-mode treemacs-interface treemacs-extensions treemacs-mouse-interface treemacs-tags treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode treemacs-rendering treemacs-async treemacs-workspaces treemacs-dom treemacs-visuals hide-mode-line popup-mode-core treemacs-fringe-indicator treemacs-scope pulse treemacs-faces treemacs-icons treemacs-themes treemacs-core-utils pfuture inline hl-line ht treemacs-logging treemacs-customization treemacs-macros autorevert filenotify projectile grep compile text-property-search ibuf-ext evil-collection-ibuffer ibuffer ibuffer-loaddefs dired-aux rainbow-mode color xterm-color vc-git diff-mode vc-dispatcher ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar org-agenda ox-ascii ox-gfm ox-md ox-html table ox-publish ox org-download org-attach async vulpea vulpea-meta vulpea-select vulpea-buffer vulpea-db vulpea-utils vulpea-note yasnippet popup-mode-hacks evil-collection-which-key which-key-posframe which-key winner org-roam-migrate org-roam-mode org-roam-capture org-roam-node org-roam-db org-roam-utils org-roam-compat org-roam org-mac-link org-capture org-tempo tempo evil-org-agenda evil-org org-element org-persist xdg org-id org-refile avl-tree ob-shell org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete org-list org-faces org-entities time-date org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys oc org-compat org-macs org-loaddefs format-spec cal-menu calendar cal-loaddefs emacsql-sqlite emacsql emacsql-compiler magit-section form-feed company-files company-capf company-posframe posframe company-prescient company-tng company eval-sexp-fu eros lispyville lispy hydra lv pcase lispy-inline avy noutline outline etags fileloop generator lispy-tags elisp-def ert ewoc evil-collection-debug debug evil-collection-xref xref project sotlisp skeleton evil-vimish-fold vimish-fold dtrt-indent elec-pair vertico-directory evil-collection-helpful helpful imenu trace evil-collection-edebug edebug backtrace info-look f help-fns elisp-refs s dired-subtree dired-hacks-utils evil-collection-dired dired dired-loaddefs dash evil-collection-profiler profiler url-http url url-proxy url-privacy url-expand url-methods url-history mailcap url-auth url-cookie url-domsuf url-util cursor-sensor url-gw url-parse auth-source password-cache url-vars nsm rmc puny recentf tree-widget better-jumper repeat undo-tree diff queue evil-collection-unimpaired evil-collection-help evil-collection-custom evil-collection-process-menu evil-collection annalist evil-mc evil-mc-command-execute evil-mc-command-record evil-mc-cursor-make evil-mc-region evil-mc-cursor-state evil-mc-undo evil-mc-vars evil-mc-known-commands evil-mc-common evil-numbers evil-snipe evil-matchit evil-matchit-sdk semantic/lex semantic/fw eieio eieio-core eieio-loaddefs mode-local find-func evil-surround cus-edit pp cus-start cus-load wid-edit evil evil-integration evil-maps evil-commands reveal flyspell ispell evil-jumps evil-command-window evil-search evil-ex shell pcomplete comint evil-types evil-macros evil-repeat evil-states evil-core advice evil-common windmove calc calc-loaddefs calc-macs thingatpt rect evil-digraphs evil-vars gcmh server gcmh-autoloads explain-pause-mode-autoloads pdf-tools-autoloads tablist-autoloads restclient-autoloads vterm-toggle-autoloads vterm-autoloads dumb-jump-autoloads popup-autoloads emmet-mode-autoloads terraform-mode-autoloads hcl-mode-autoloads dockerfile-mode-autoloads yaml-mode-autoloads json-snatcher-autoloads lua-mode-autoloads ruby-electric-autoloads bundler-autoloads inf-ruby-autoloads ruby-refactor-autoloads rspec-mode-autoloads evil-ruby-text-objects-autoloads enh-ruby-mode-autoloads sotlisp-autoloads elisp-def-autoloads lispyville-autoloads lispy-autoloads zoutline-autoloads swiper-autoloads ivy-autoloads iedit-autoloads eros-autoloads eval-sexp-fu-autoloads eslintd-fix-autoloads web-mode-autoloads typescript-mode-autoloads company-rg-autoloads company-posframe-autoloads company-prescient-autoloads company-autoloads git-link-autoloads git-timemachine-autoloads magit-delta-autoloads xterm-color-autoloads prettier-autoloads nvm-autoloads iter2-autoloads flycheck-autoloads let-alist-autoloads pkg-info-autoloads epl-autoloads tree-sitter-langs-autoloads tree-sitter-autoloads tsc-autoloads lsp-ui-autoloads lsp-mode-autoloads markdown-mode-autoloads spinner-autoloads org-superstar-autoloads ox-gfm-autoloads org-pandoc-import-autoloads gnuplot-autoloads org-download-autoloads async-autoloads org-journal-autoloads deft-autoloads vulpea-autoloads org-roam-autoloads emacsql-sqlite-autoloads emacsql-autoloads orgonomic-autoloads org-drill-autoloads persist-autoloads org-appear-autoloads org-contrib-autoloads evil-org-autoloads evil-terminal-cursor-changer-autoloads transient-posframe-autoloads restart-emacs-autoloads better-jumper-autoloads buffer-move-autoloads rotate-autoloads mini-frame mini-frame-autoloads embark-consult-autoloads embark-autoloads consult-autoloads orderless orderless-autoloads vertico-mouse vertico vertico-autoloads prescient prescient-autoloads which-key-posframe-autoloads which-key-autoloads popup-mode popup-mode-settings popup-mode-autoloads hide-mode-line-autoloads titlecase-autoloads wgrep-autoloads yasnippet-autoloads form-feed-autoloads drag-stuff-autoloads dtrt-indent-autoloads ws-butler ws-butler-autoloads evil-vimish-fold-autoloads vimish-fold-autoloads evil-collection-autoloads annalist-autoloads evil-mc-autoloads evil-numbers-autoloads speeddating-autoloads evil-snipe-autoloads evil-matchit-autoloads evil-nerd-commenter-autoloads evil-visualstar-autoloads evil-surround-autoloads undo-tree-autoloads queue-autoloads treemacs-magit-autoloads magit-autoloads magit-section-autoloads git-commit-autoloads with-editor-autoloads transient-autoloads treemacs-all-the-icons-autoloads all-the-icons-autoloads treemacs-projectile-autoloads treemacs-evil-autoloads evil-autoloads goto-chg-autoloads treemacs-autoloads comp comp-cstr warnings rx autoload radix-tree lisp-mnt mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr cfrs-autoloads ht-autoloads pfuture-autoloads ace-window-autoloads avy-autoloads projectile-autoloads saveplace rainbow-mode-autoloads posframe-autoloads ns-auto-titlebar ns-auto-titlebar-autoloads nano-modeline memoize nano-modeline-autoloads memoize-autoloads nano-light-theme face-remap nano-theme disp-table nano-theme-autoloads envrc inheritenv ansi-color json map envrc-autoloads inheritenv-autoloads compdef derived compdef-autoloads edmacro kmacro helpful-autoloads elisp-refs-autoloads f-autoloads s-autoloads dired-subtree-autoloads dired-hacks-utils-autoloads dash-autoloads hydra-autoloads lv-autoloads leader-key bind-map leader-key-autoloads bind-map-autoloads delsel savehist pixel-scroll ring xt-mouse no-littering no-littering-autoloads finder-inf bind-key easy-mmode compat-autoloads compat compat-28.1 compat-27.1 compat-26.1 compat-25.1 compat-24.4 use-package-autoloads bind-key-autoloads straight-autoloads info cl-seq cl-extra help-mode seq byte-opt straight subr-x cl-macs gv cl-loaddefs cl-lib bytecomp byte-compile cconv display-line-numbers iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer 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 keymap hashtable-print-readable backquote threads kqueue cocoa ns lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 1064583 719137) (symbols 48 63691 119) (strings 32 258037 142979) (string-bytes 1 9598074) (vectors 16 125307) (vector-slots 8 3021024 1342733) (floats 8 2078 6432) (intervals 56 28233 2804) (buffers 992 40))
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Mon, 31 Jan 2022 18:39:02 GMT) Full text and rfc822 format available.Message #8 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: Juri Linkov <juri <at> linkov.net> To: martin rudalics <rudalics <at> gmx.at> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Mon, 31 Jan 2022 20:15:29 +0200
> If you attempt to tab-bar-new-tab while in a side window you get: > > split-window: Cannot split side window or parent of side window > > It also deletes other windows and leaves you in a very awkward > side-window-only state. > > To repro: > > emacs -Q > M-x tab-bar-mode > M-: (display-buffer-in-side-window (get-buffer "*Messages*") '((side . bottom))) > C-x o > M-x tab-new Thanks for the bug report. Martin, could you suggest how to ignore window-sideness while splitting the side window? 'tab-bar-new-tab-to' currently uses such trick to create a new window: (let ((ignore-window-parameters t)) (delete-other-windows)) (unless (eq tab-bar-new-tab-choice 'window) ;; Create a new window to get rid of old window parameters ;; (e.g. prev/next buffers) of old window. (split-window) (delete-window)) but this fails in side windows.
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Tue, 01 Feb 2022 08:11:01 GMT) Full text and rfc822 format available.Message #11 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: martin rudalics <rudalics <at> gmx.at> To: Juri Linkov <juri <at> linkov.net> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Tue, 1 Feb 2022 09:09:54 +0100
> Martin, could you suggest how to ignore window-sideness > while splitting the side window? 'tab-bar-new-tab-to' > currently uses such trick to create a new window: > > (let ((ignore-window-parameters t)) > (delete-other-windows)) Usually, you can't make a side window the only window on its frame - the main window has to stay. If you ignore window parameters, you have to clean the state of windows yourself afterwards - for example, by giving the sole remaining window a 'window-side' parameter of nil. If you do not do that, the windows state of the frame is broken already before you try splitting the window below. > (unless (eq tab-bar-new-tab-choice 'window) > ;; Create a new window to get rid of old window parameters > ;; (e.g. prev/next buffers) of old window. > (split-window) (delete-window)) > > but this fails in side windows. This is a hack and would fail in the case at hand since 'split-window' would set the 'window-side' parameter for the new window. I'd rather set all parameters of the selected window to nil instead. martin
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Tue, 01 Feb 2022 19:45:02 GMT) Full text and rfc822 format available.Message #14 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: Juri Linkov <juri <at> linkov.net> To: martin rudalics <rudalics <at> gmx.at> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Tue, 01 Feb 2022 21:31:56 +0200
[Message part 1 (text/plain, inline)]
>> Martin, could you suggest how to ignore window-sideness >> while splitting the side window? 'tab-bar-new-tab-to' >> currently uses such trick to create a new window: >> >> (let ((ignore-window-parameters t)) >> (delete-other-windows)) > > Usually, you can't make a side window the only window on its frame - the > main window has to stay. If you ignore window parameters, you have to > clean the state of windows yourself afterwards - for example, by giving > the sole remaining window a 'window-side' parameter of nil. If you do > not do that, the windows state of the frame is broken already before you > try splitting the window below. > >> (unless (eq tab-bar-new-tab-choice 'window) >> ;; Create a new window to get rid of old window parameters >> ;; (e.g. prev/next buffers) of old window. >> (split-window) (delete-window)) >> >> but this fails in side windows. > > This is a hack and would fail in the case at hand since 'split-window' > would set the 'window-side' parameter for the new window. I'd rather > set all parameters of the selected window to nil instead. Thanks, I confirm this fixes the problem with this patch. Also ‘split-window’ and ‘delete-window’ were moved inside ‘(ignore-window-parameters t)’ for more safety:
[tab-new-window-parameters.patch (text/x-diff, inline)]
diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index 06ad8f60af..43a56c806b 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el @@ -1361,12 +1361,17 @@ tab-bar-new-tab-to ;; Handle the case when it's called in the active minibuffer. (when (minibuffer-selected-window) (select-window (minibuffer-selected-window))) + ;; Remove all window parameters to prevent the case + ;; when e.g. `window-side' gets in the way. + (dolist (parameter (window-parameters)) + (set-window-parameter nil (car parameter) nil)) (let ((ignore-window-parameters t)) - (delete-other-windows)) - (unless (eq tab-bar-new-tab-choice 'window) - ;; Create a new window to get rid of old window parameters - ;; (e.g. prev/next buffers) of old window. - (split-window) (delete-window)) + (delete-other-windows) + (unless (eq tab-bar-new-tab-choice 'window) + ;; Create a new window to get rid of old window parameters + ;; (e.g. prev/next buffers) of old window. + (split-window) (delete-window))) + (let ((buffer (if (functionp tab-bar-new-tab-choice) (funcall tab-bar-new-tab-choice)
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Wed, 02 Feb 2022 07:48:01 GMT) Full text and rfc822 format available.Message #17 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: martin rudalics <rudalics <at> gmx.at> To: Juri Linkov <juri <at> linkov.net> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Wed, 2 Feb 2022 08:47:18 +0100
Two caveats: + (dolist (parameter (window-parameters)) + (set-window-parameter nil (car parameter) nil)) Maybe you should remove the 'window-side' and the 'window-atom' parameters only - users can assign arbitrary parameters to windows. + (unless (eq tab-bar-new-tab-choice 'window) + ;; Create a new window to get rid of old window parameters + ;; (e.g. prev/next buffers) of old window. + (split-window) (delete-window))) Note that this will lose other settings as well like the window's dedicated status. If this is the intended behavior, you should at least tell so in the doc-string. martin
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Wed, 02 Feb 2022 19:54:02 GMT) Full text and rfc822 format available.Message #20 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: Juri Linkov <juri <at> linkov.net> To: martin rudalics <rudalics <at> gmx.at> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Wed, 02 Feb 2022 21:37:09 +0200
[Message part 1 (text/plain, inline)]
> Two caveats: > > + (dolist (parameter (window-parameters)) > + (set-window-parameter nil (car parameter) nil)) > > Maybe you should remove the 'window-side' and the 'window-atom' > parameters only - users can assign arbitrary parameters to windows. If other window parameters are harmless, then only these two could be removed. > + (unless (eq tab-bar-new-tab-choice 'window) > + ;; Create a new window to get rid of old window parameters > + ;; (e.g. prev/next buffers) of old window. > + (split-window) (delete-window))) > > Note that this will lose other settings as well like the window's > dedicated status. If this is the intended behavior, you should at least > tell so in the doc-string. If you mean the case when tab-bar-new-tab-choice is 'window', then it will lose only 'window-atom' and 'window-side', because the value 'window' is intended to keep a single window on the tab. In other cases at this point, all windows were already saved to window-configuration, so this window is disposable and can be modified before immediately deleting it. After saving windows to window-configuration, the task here is just to create a new window. So now a new patch with the updated doc-string:
[tab-new-window-side.patch (text/x-diff, inline)]
diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index 06ad8f60af..e611711092 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el @@ -474,6 +474,9 @@ tab-bar-new-tab-choice If t, start a new tab with the current buffer, i.e. the buffer that was current before calling the command that adds a new tab (this is the same what `make-frame' does by default). +If the value is the symbol `window', then keep the selected +window as a single window on the new tab, and keep all its +window parameters except 'window-atom' and 'window-side'. If the value is a string, use it as a buffer name to switch to if such buffer exists, or switch to a buffer visiting the file or directory that the string specifies. If the value is a function, @@ -481,6 +484,7 @@ tab-bar-new-tab-choice If nil, duplicate the contents of the tab that was active before calling the command that adds a new tab." :type '(choice (const :tag "Current buffer" t) + (const :tag "Current window" window) (string :tag "Buffer" "*scratch*") (directory :tag "Directory" :value "~/") (file :tag "File" :value "~/.emacs") @@ -1361,12 +1365,17 @@ tab-bar-new-tab-to ;; Handle the case when it's called in the active minibuffer. (when (minibuffer-selected-window) (select-window (minibuffer-selected-window))) + ;; Remove window parameters that can cause problems + ;; with `delete-other-windows' and `split-window'. + (set-window-parameter nil 'window-atom nil) + (set-window-parameter nil 'window-side nil) (let ((ignore-window-parameters t)) - (delete-other-windows)) - (unless (eq tab-bar-new-tab-choice 'window) - ;; Create a new window to get rid of old window parameters - ;; (e.g. prev/next buffers) of old window. - (split-window) (delete-window)) + (delete-other-windows) + (unless (eq tab-bar-new-tab-choice 'window) + ;; Create a new window to get rid of old window parameters + ;; (e.g. prev/next buffers) of old window. + (split-window) (delete-window))) + (let ((buffer (if (functionp tab-bar-new-tab-choice) (funcall tab-bar-new-tab-choice)
bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Sun, 06 Feb 2022 18:01:01 GMT) Full text and rfc822 format available.Message #23 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: Juri Linkov <juri <at> linkov.net> To: martin rudalics <rudalics <at> gmx.at> Cc: 53662 <at> debbugs.gnu.org, Aaron Jensen <aaronjensen <at> gmail.com> Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Sun, 06 Feb 2022 19:55:17 +0200
close 53662 29.0.50 thanks >> Maybe you should remove the 'window-side' and the 'window-atom' >> parameters only - users can assign arbitrary parameters to windows. > > If other window parameters are harmless, then only these two could be > removed. > So now a new patch with the updated doc-string: Now this is pushed to master and closed.
Juri Linkov <juri <at> linkov.net>
to control <at> debbugs.gnu.org
.
(Sun, 06 Feb 2022 18:01:02 GMT) Full text and rfc822 format available.bug-gnu-emacs <at> gnu.org
:bug#53662
; Package emacs
.
(Sun, 06 Feb 2022 19:04:01 GMT) Full text and rfc822 format available.Message #28 received at 53662 <at> debbugs.gnu.org (full text, mbox):
From: Aaron Jensen <aaronjensen <at> gmail.com> To: Juri Linkov <juri <at> linkov.net> Cc: martin rudalics <rudalics <at> gmx.at>, 53662 <at> debbugs.gnu.org Subject: Re: bug#53662: 29.0.50; Cannot use tab-new from side window Date: Sun, 6 Feb 2022 14:03:34 -0500
On Sun, Feb 6, 2022 at 1:00 PM Juri Linkov <juri <at> linkov.net> wrote: > > close 53662 29.0.50 > thanks > > >> Maybe you should remove the 'window-side' and the 'window-atom' > >> parameters only - users can assign arbitrary parameters to windows. > > > > If other window parameters are harmless, then only these two could be > > removed. > > > So now a new patch with the updated doc-string: > > Now this is pushed to master and closed. Thank you for the quick fix. I have confirmed that this no longer errors for my original use-case. Best, Aaron
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Mon, 07 Mar 2022 12:24:09 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.