* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right @ 2016-03-22 17:37 N. Jackson 2016-03-22 18:47 ` martin rudalics 0 siblings, 1 reply; 19+ messages in thread From: N. Jackson @ 2016-03-22 17:37 UTC (permalink / raw) To: 23093 In Emacs 24 when using completion in the minibuffer, when the frame is sufficiently wide it is split vertically (into side-by-side windows) with the completions in the window on the right. There seems to have been an (undocumented?) behaviour change -- now when using completion in the minibuffer the frame seems always to be split horizontally (into above-and-below windows) with the completions in the lower window. This change does not seem to me to be an improvement, as now far fewer of the available completions are visible at once. I suppose whether a "portrait" or "landscape" completions window is better probably depends on the number and length of the completions and also on the user's frame size, so presumably the splitting behaviour should be a user option. As long as the option is available and documented, I have no opinion on the default, although it would seem more compatible to make it default to the old behaviour. In GNU Emacs 25.0.92.3 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.9) of 2016-03-21 built on moondust Windowing system distributor 'Fedora Project', version 11.0.11801000 System Description: Fedora release 23 (Twenty Three) Configured using: 'configure --prefix=/usr/local/ --enable-checking=yes,glyphs --enable-check-lisp-object-type 'CFLAGS=-O0 -g3 -gdwarf-4'' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LC_MONETARY: en_DK.utf8 value of $LC_NUMERIC: en_DK.utf8 value of $LC_TIME: en_DK.utf8 value of $LANG: en_CA.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: Group Minor modes in effect: gnus-undo-mode: t recentf-mode: t display-battery-mode: t display-time-mode: t delete-selection-mode: t show-paren-mode: t savehist-mode: t save-place-mode: t electric-pair-mode: t desktop-save-mode: t cua-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t size-indication-mode: t column-number-mode: t line-number-mode: t global-visual-line-mode: t visual-line-mode: t transient-mark-mode: t Recent messages: Indent region with <left>, <right>, <S-left>, or <S-right>. Mark set [2 times] Auto-saving...done Mark set [3 times] Sending... Mark set [2 times] Sending via mail... Sending email Sending email done Sending...done Load-path shadows: /home/nlj/.emacs.d/elpa/org-20160229/ob-ref hides /usr/local/share/emacs/25.0.92/lisp/org/ob-ref /home/nlj/.emacs.d/elpa/org-20160229/ob-dot hides /usr/local/share/emacs/25.0.92/lisp/org/ob-dot /home/nlj/.emacs.d/elpa/org-20160229/ob-octave hides /usr/local/share/emacs/25.0.92/lisp/org/ob-octave /home/nlj/.emacs.d/elpa/org-20160229/ob-maxima hides /usr/local/share/emacs/25.0.92/lisp/org/ob-maxima /home/nlj/.emacs.d/elpa/org-20160229/ob-scala hides /usr/local/share/emacs/25.0.92/lisp/org/ob-scala /home/nlj/.emacs.d/elpa/org-20160229/org-plot hides /usr/local/share/emacs/25.0.92/lisp/org/org-plot /home/nlj/.emacs.d/elpa/org-20160229/ob-org hides /usr/local/share/emacs/25.0.92/lisp/org/ob-org /home/nlj/.emacs.d/elpa/org-20160229/ob-haskell hides /usr/local/share/emacs/25.0.92/lisp/org/ob-haskell /home/nlj/.emacs.d/elpa/org-20160229/org-indent hides /usr/local/share/emacs/25.0.92/lisp/org/org-indent /home/nlj/.emacs.d/elpa/org-20160229/org-habit hides /usr/local/share/emacs/25.0.92/lisp/org/org-habit /home/nlj/.emacs.d/elpa/org-20160229/org-datetree hides /usr/local/share/emacs/25.0.92/lisp/org/org-datetree /home/nlj/.emacs.d/elpa/org-20160229/ob-lob hides /usr/local/share/emacs/25.0.92/lisp/org/ob-lob /home/nlj/.emacs.d/elpa/org-20160229/org-list hides /usr/local/share/emacs/25.0.92/lisp/org/org-list /home/nlj/.emacs.d/elpa/org-20160229/ob-ruby hides /usr/local/share/emacs/25.0.92/lisp/org/ob-ruby /home/nlj/.emacs.d/elpa/org-20160229/ob-R hides /usr/local/share/emacs/25.0.92/lisp/org/ob-R /home/nlj/.emacs.d/elpa/org-20160229/ob-awk hides /usr/local/share/emacs/25.0.92/lisp/org/ob-awk /home/nlj/.emacs.d/elpa/org-20160229/ob-sqlite hides /usr/local/share/emacs/25.0.92/lisp/org/ob-sqlite /home/nlj/.emacs.d/elpa/org-20160229/ob-makefile hides /usr/local/share/emacs/25.0.92/lisp/org/ob-makefile /home/nlj/.emacs.d/elpa/org-20160229/org-capture hides /usr/local/share/emacs/25.0.92/lisp/org/org-capture /home/nlj/.emacs.d/elpa/org-20160229/org-archive hides /usr/local/share/emacs/25.0.92/lisp/org/org-archive /home/nlj/.emacs.d/elpa/org-20160229/ob-python hides /usr/local/share/emacs/25.0.92/lisp/org/ob-python /home/nlj/.emacs.d/elpa/org-20160229/ob-js hides /usr/local/share/emacs/25.0.92/lisp/org/ob-js /home/nlj/.emacs.d/elpa/org-20160229/ox-md hides /usr/local/share/emacs/25.0.92/lisp/org/ox-md /home/nlj/.emacs.d/elpa/org-20160229/org-table hides /usr/local/share/emacs/25.0.92/lisp/org/org-table /home/nlj/.emacs.d/elpa/org-20160229/org-install hides /usr/local/share/emacs/25.0.92/lisp/org/org-install /home/nlj/.emacs.d/elpa/org-20160229/ox-latex hides /usr/local/share/emacs/25.0.92/lisp/org/ox-latex /home/nlj/.emacs.d/elpa/org-20160229/org-docview hides /usr/local/share/emacs/25.0.92/lisp/org/org-docview /home/nlj/.emacs.d/elpa/org-20160229/ox-ascii hides /usr/local/share/emacs/25.0.92/lisp/org/ox-ascii /home/nlj/.emacs.d/elpa/org-20160229/org-mhe hides /usr/local/share/emacs/25.0.92/lisp/org/org-mhe /home/nlj/.emacs.d/elpa/org-20160229/org-crypt hides /usr/local/share/emacs/25.0.92/lisp/org/org-crypt /home/nlj/.emacs.d/elpa/org-20160229/org-macro hides /usr/local/share/emacs/25.0.92/lisp/org/org-macro /home/nlj/.emacs.d/elpa/org-20160229/ox-odt hides /usr/local/share/emacs/25.0.92/lisp/org/ox-odt /home/nlj/.emacs.d/elpa/org-20160229/org-eshell hides /usr/local/share/emacs/25.0.92/lisp/org/org-eshell /home/nlj/.emacs.d/elpa/org-20160229/ob-fortran hides /usr/local/share/emacs/25.0.92/lisp/org/ob-fortran /home/nlj/.emacs.d/elpa/org-20160229/org-entities hides /usr/local/share/emacs/25.0.92/lisp/org/org-entities /home/nlj/.emacs.d/elpa/org-20160229/ob-picolisp hides /usr/local/share/emacs/25.0.92/lisp/org/ob-picolisp /home/nlj/.emacs.d/elpa/org-20160229/org-feed hides /usr/local/share/emacs/25.0.92/lisp/org/org-feed /home/nlj/.emacs.d/elpa/org-20160229/ox hides /usr/local/share/emacs/25.0.92/lisp/org/ox /home/nlj/.emacs.d/elpa/org-20160229/org-id hides /usr/local/share/emacs/25.0.92/lisp/org/org-id /home/nlj/.emacs.d/elpa/org-20160229/ob-clojure hides /usr/local/share/emacs/25.0.92/lisp/org/ob-clojure /home/nlj/.emacs.d/elpa/org-20160229/org-macs hides /usr/local/share/emacs/25.0.92/lisp/org/org-macs /home/nlj/.emacs.d/elpa/org-20160229/ob-table hides /usr/local/share/emacs/25.0.92/lisp/org/ob-table /home/nlj/.emacs.d/elpa/org-20160229/org-pcomplete hides /usr/local/share/emacs/25.0.92/lisp/org/org-pcomplete /home/nlj/.emacs.d/elpa/org-20160229/ox-publish hides /usr/local/share/emacs/25.0.92/lisp/org/ox-publish /home/nlj/.emacs.d/elpa/org-20160229/ob-scheme hides /usr/local/share/emacs/25.0.92/lisp/org/ob-scheme /home/nlj/.emacs.d/elpa/org-20160229/ob-keys hides /usr/local/share/emacs/25.0.92/lisp/org/ob-keys /home/nlj/.emacs.d/elpa/org-20160229/ob-io hides /usr/local/share/emacs/25.0.92/lisp/org/ob-io /home/nlj/.emacs.d/elpa/org-20160229/ox-texinfo hides /usr/local/share/emacs/25.0.92/lisp/org/ox-texinfo /home/nlj/.emacs.d/elpa/org-20160229/org-bibtex hides /usr/local/share/emacs/25.0.92/lisp/org/org-bibtex /home/nlj/.emacs.d/elpa/org-20160229/org-protocol hides /usr/local/share/emacs/25.0.92/lisp/org/org-protocol /home/nlj/.emacs.d/elpa/org-20160229/ob-mscgen hides /usr/local/share/emacs/25.0.92/lisp/org/ob-mscgen /home/nlj/.emacs.d/elpa/org-20160229/org-irc hides /usr/local/share/emacs/25.0.92/lisp/org/org-irc /home/nlj/.emacs.d/elpa/org-20160229/org-faces hides /usr/local/share/emacs/25.0.92/lisp/org/org-faces /home/nlj/.emacs.d/elpa/org-20160229/ob-lilypond hides /usr/local/share/emacs/25.0.92/lisp/org/ob-lilypond /home/nlj/.emacs.d/elpa/org-20160229/org-w3m hides /usr/local/share/emacs/25.0.92/lisp/org/org-w3m /home/nlj/.emacs.d/elpa/org-20160229/ob-ditaa hides /usr/local/share/emacs/25.0.92/lisp/org/ob-ditaa /home/nlj/.emacs.d/elpa/org-20160229/ob-comint hides /usr/local/share/emacs/25.0.92/lisp/org/ob-comint /home/nlj/.emacs.d/elpa/org-20160229/ob-css hides /usr/local/share/emacs/25.0.92/lisp/org/ob-css /home/nlj/.emacs.d/elpa/org-20160229/org hides /usr/local/share/emacs/25.0.92/lisp/org/org /home/nlj/.emacs.d/elpa/org-20160229/org-src hides /usr/local/share/emacs/25.0.92/lisp/org/org-src /home/nlj/.emacs.d/elpa/org-20160229/ob-eval hides /usr/local/share/emacs/25.0.92/lisp/org/ob-eval /home/nlj/.emacs.d/elpa/org-20160229/ob-gnuplot hides /usr/local/share/emacs/25.0.92/lisp/org/ob-gnuplot /home/nlj/.emacs.d/elpa/org-20160229/ox-man hides /usr/local/share/emacs/25.0.92/lisp/org/ox-man /home/nlj/.emacs.d/elpa/org-20160229/org-version hides /usr/local/share/emacs/25.0.92/lisp/org/org-version /home/nlj/.emacs.d/elpa/org-20160229/org-mobile hides /usr/local/share/emacs/25.0.92/lisp/org/org-mobile /home/nlj/.emacs.d/elpa/org-20160229/ob-emacs-lisp hides /usr/local/share/emacs/25.0.92/lisp/org/ob-emacs-lisp /home/nlj/.emacs.d/elpa/org-20160229/ob-perl hides /usr/local/share/emacs/25.0.92/lisp/org/ob-perl /home/nlj/.emacs.d/elpa/org-20160229/ob-exp hides /usr/local/share/emacs/25.0.92/lisp/org/ob-exp /home/nlj/.emacs.d/elpa/org-20160229/org-info hides /usr/local/share/emacs/25.0.92/lisp/org/org-info /home/nlj/.emacs.d/elpa/org-20160229/org-footnote hides /usr/local/share/emacs/25.0.92/lisp/org/org-footnote /home/nlj/.emacs.d/elpa/org-20160229/org-compat hides /usr/local/share/emacs/25.0.92/lisp/org/org-compat /home/nlj/.emacs.d/elpa/org-20160229/org-agenda hides /usr/local/share/emacs/25.0.92/lisp/org/org-agenda /home/nlj/.emacs.d/elpa/org-20160229/org-timer hides /usr/local/share/emacs/25.0.92/lisp/org/org-timer /home/nlj/.emacs.d/elpa/org-20160229/ob-shen hides /usr/local/share/emacs/25.0.92/lisp/org/ob-shen /home/nlj/.emacs.d/elpa/org-20160229/ob-tangle hides /usr/local/share/emacs/25.0.92/lisp/org/ob-tangle /home/nlj/.emacs.d/elpa/org-20160229/ob-calc hides /usr/local/share/emacs/25.0.92/lisp/org/ob-calc /home/nlj/.emacs.d/elpa/org-20160229/org-inlinetask hides /usr/local/share/emacs/25.0.92/lisp/org/org-inlinetask /home/nlj/.emacs.d/elpa/org-20160229/ob-C hides /usr/local/share/emacs/25.0.92/lisp/org/ob-C /home/nlj/.emacs.d/elpa/org-20160229/org-gnus hides /usr/local/share/emacs/25.0.92/lisp/org/org-gnus /home/nlj/.emacs.d/elpa/org-20160229/org-clock hides /usr/local/share/emacs/25.0.92/lisp/org/org-clock /home/nlj/.emacs.d/elpa/org-20160229/ox-icalendar hides /usr/local/share/emacs/25.0.92/lisp/org/ox-icalendar /home/nlj/.emacs.d/elpa/org-20160229/ox-beamer hides /usr/local/share/emacs/25.0.92/lisp/org/ox-beamer /home/nlj/.emacs.d/elpa/org-20160229/org-mouse hides /usr/local/share/emacs/25.0.92/lisp/org/org-mouse /home/nlj/.emacs.d/elpa/org-20160229/ob-ocaml hides /usr/local/share/emacs/25.0.92/lisp/org/ob-ocaml /home/nlj/.emacs.d/elpa/org-20160229/ob-plantuml hides /usr/local/share/emacs/25.0.92/lisp/org/ob-plantuml /home/nlj/.emacs.d/elpa/org-20160229/ob-screen hides /usr/local/share/emacs/25.0.92/lisp/org/ob-screen /home/nlj/.emacs.d/elpa/org-20160229/org-colview hides /usr/local/share/emacs/25.0.92/lisp/org/org-colview /home/nlj/.emacs.d/elpa/org-20160229/ob-sass hides /usr/local/share/emacs/25.0.92/lisp/org/ob-sass /home/nlj/.emacs.d/elpa/org-20160229/ox-html hides /usr/local/share/emacs/25.0.92/lisp/org/ox-html /home/nlj/.emacs.d/elpa/org-20160229/org-bbdb hides /usr/local/share/emacs/25.0.92/lisp/org/org-bbdb /home/nlj/.emacs.d/elpa/org-20160229/ob-lisp hides /usr/local/share/emacs/25.0.92/lisp/org/ob-lisp /home/nlj/.emacs.d/elpa/org-20160229/ob-java hides /usr/local/share/emacs/25.0.92/lisp/org/ob-java /home/nlj/.emacs.d/elpa/org-20160229/org-rmail hides /usr/local/share/emacs/25.0.92/lisp/org/org-rmail /home/nlj/.emacs.d/elpa/org-20160229/ob-asymptote hides /usr/local/share/emacs/25.0.92/lisp/org/ob-asymptote /home/nlj/.emacs.d/elpa/org-20160229/ob-matlab hides /usr/local/share/emacs/25.0.92/lisp/org/ob-matlab /home/nlj/.emacs.d/elpa/org-20160229/ox-org hides /usr/local/share/emacs/25.0.92/lisp/org/ox-org /home/nlj/.emacs.d/elpa/org-20160229/org-element hides /usr/local/share/emacs/25.0.92/lisp/org/org-element /home/nlj/.emacs.d/elpa/org-20160229/org-attach hides /usr/local/share/emacs/25.0.92/lisp/org/org-attach /home/nlj/.emacs.d/elpa/org-20160229/ob-ledger hides /usr/local/share/emacs/25.0.92/lisp/org/ob-ledger /home/nlj/.emacs.d/elpa/org-20160229/ob-core hides /usr/local/share/emacs/25.0.92/lisp/org/ob-core /home/nlj/.emacs.d/elpa/org-20160229/ob-sql hides /usr/local/share/emacs/25.0.92/lisp/org/ob-sql /home/nlj/.emacs.d/elpa/org-20160229/ob-latex hides /usr/local/share/emacs/25.0.92/lisp/org/ob-latex /home/nlj/.emacs.d/elpa/org-20160229/org-ctags hides /usr/local/share/emacs/25.0.92/lisp/org/org-ctags /home/nlj/.emacs.d/elpa/org-20160229/org-loaddefs hides /usr/local/share/emacs/25.0.92/lisp/org/org-loaddefs /home/nlj/.emacs.d/elpa/org-20160229/ob hides /usr/local/share/emacs/25.0.92/lisp/org/ob ~/.emacs.d/modules/emms/lisp/tq hides /usr/local/share/emacs/25.0.92/lisp/emacs-lisp/tq Features: (mailalias smtpmail eieio-opt speedbar sb-image ezimage dframe pp shadow bbdb-message mail-extr emacsbug sendmail nndraft nnmh utf-7 server pinentry epa-file epa derived network-stream nsm starttls nnfolder bbdb-gnus bbdb-mua nnnil gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp gnus-cache character-fold misearch multi-isearch view flyspell ispell sage sage-load rx emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort emms-playlist-sort emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time emms-lyrics emms-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util url-parse auth-source eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core url-vars emms-streams emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo emms-info-mp3info emms-info later-do emms-playlist-mode emms-player-vlc emms-player-mplayer emms-player-simple emms-source-playlist emms-source-file locate emms-setup emms emms-compat compile navi-mode outshine outorg org-contacts cl-seq org-capture gnus-art mm-uu mml2015 mm-view mml-smime smime password-cache dig mailcap gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message cl-macs rfc822 mml mml-sec epg mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums gmm-utils mailheader gnus-win gnus gnus-ems nnheader mail-utils mm-util help-fns help-mode mail-prsvr cl gv org-rmail org-mhe org-irc org-info org-gnus gnus-util org-docview doc-view subr-x jka-compr image-mode dired org-bibtex bibtex org-bbdb org-element avl-tree org-w3m org-agenda org advice org-macro org-footnote org-pcomplete pcomplete org-list org-faces org-entities noutline outline easy-mmode org-version ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func bbdb-anniv diary-lib diary-loaddefs cal-menu calendar cal-loaddefs bbdb-com crm mailabbrev bbdb bbdb-site timezone bbdb-loaddefs finder-inf tex-site info package epg-config edmacro kmacro recentf tree-widget wid-edit easymenu battery time wheatgrass-theme delsel paren savehist saveplace elec-pair desktop frameset cl-loaddefs pcase cl-lib cua-base cus-start cus-load time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame 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 charscript case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 445810 66046) (symbols 48 93627 1) (miscs 40 2598 7506) (strings 32 129711 10750) (string-bytes 1 4365468) (vectors 16 40310) (vector-slots 8 890769 19130) (floats 8 556 614) (intervals 56 4578 0) (buffers 976 42) (heap 1024 88295 14966)) ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-22 17:37 bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right N. Jackson @ 2016-03-22 18:47 ` martin rudalics 2016-03-22 19:02 ` Eli Zaretskii 2016-03-22 19:45 ` N. Jackson 0 siblings, 2 replies; 19+ messages in thread From: martin rudalics @ 2016-03-22 18:47 UTC (permalink / raw) To: N. Jackson, 23093 > In Emacs 24 when using completion in the minibuffer, when the frame is > sufficiently wide it is split vertically (into side-by-side windows) > with the completions in the window on the right. > > There seems to have been an (undocumented?) behaviour change -- now when > using completion in the minibuffer the frame seems always to be split > horizontally (into above-and-below windows) with the completions in the > lower window. > > This change does not seem to me to be an improvement, as now far fewer > of the available completions are visible at once. Customizing ‘temp-buffer-max-height’ would fix that. > I suppose whether a "portrait" or "landscape" completions window is > better probably depends on the number and length of the completions and > also on the user's frame size, so presumably the splitting behaviour > should be a user option. It is. Please customize ‘display-buffer-alist’ for the buffer named *Completions*. > As long as the option is available and documented, I have no opinion on > the default, although it would seem more compatible to make it default > to the old behaviour. martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-22 18:47 ` martin rudalics @ 2016-03-22 19:02 ` Eli Zaretskii 2016-03-23 8:09 ` martin rudalics 2016-03-22 19:45 ` N. Jackson 1 sibling, 1 reply; 19+ messages in thread From: Eli Zaretskii @ 2016-03-22 19:02 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, nljlistbox2 > Date: Tue, 22 Mar 2016 19:47:06 +0100 > From: martin rudalics <rudalics@gmx.at> > > > There seems to have been an (undocumented?) behaviour change -- now when > > using completion in the minibuffer the frame seems always to be split > > horizontally (into above-and-below windows) with the completions in the > > lower window. > > > > This change does not seem to me to be an improvement, as now far fewer > > of the available completions are visible at once. > > Customizing ‘temp-buffer-max-height’ would fix that. > > > I suppose whether a "portrait" or "landscape" completions window is > > better probably depends on the number and length of the completions and > > also on the user's frame size, so presumably the splitting behaviour > > should be a user option. > > It is. Please customize ‘display-buffer-alist’ for the buffer named > *Completions*. Hmm... I see neither temp-buffer-resize-mode nor temp-buffer-max-height are documented in the manual. Would you please add them (and maybe also discuss how to customize display-buffer-alist for the *Completions* buffer)? I expect other users to bump into these issues. TIA ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-22 19:02 ` Eli Zaretskii @ 2016-03-23 8:09 ` martin rudalics 2016-03-23 15:20 ` Eli Zaretskii 0 siblings, 1 reply; 19+ messages in thread From: martin rudalics @ 2016-03-23 8:09 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 23093, nljlistbox2 > Hmm... I see neither temp-buffer-resize-mode nor > temp-buffer-max-height are documented in the manual. Both are documented in section 37.8 "Temporary Displays" of the Elisp manual. Do you mean they should be documented in the Emacs manual too? If so, where? > Would you please > add them (and maybe also discuss how to customize display-buffer-alist > for the *Completions* buffer)? I expect other users to bump into > these issues. Again, please tell me where. Thanks, martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 8:09 ` martin rudalics @ 2016-03-23 15:20 ` Eli Zaretskii 2016-03-23 18:53 ` martin rudalics 0 siblings, 1 reply; 19+ messages in thread From: Eli Zaretskii @ 2016-03-23 15:20 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, nljlistbox2 > Date: Wed, 23 Mar 2016 09:09:23 +0100 > From: martin rudalics <rudalics@gmx.at> > CC: nljlistbox2@gmail.com, 23093@debbugs.gnu.org > > > Hmm... I see neither temp-buffer-resize-mode nor > > temp-buffer-max-height are documented in the manual. > > Both are documented in section 37.8 "Temporary Displays" of the Elisp > manual. Do you mean they should be documented in the Emacs manual too? Yes, I meant the user manual. These are user-level features. > If so, where? "Displaying Buffers" sounds like a good place. Maybe add a new subsection there, which talks specifically about temporary pop-up buffers. Thanks. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 15:20 ` Eli Zaretskii @ 2016-03-23 18:53 ` martin rudalics 2016-03-23 19:43 ` Eli Zaretskii 2016-03-23 20:17 ` N. Jackson 0 siblings, 2 replies; 19+ messages in thread From: martin rudalics @ 2016-03-23 18:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 23093, nljlistbox2 [-- Attachment #1: Type: text/plain, Size: 199 bytes --] > "Displaying Buffers" sounds like a good place. Maybe add a new > subsection there, which talks specifically about temporary pop-up > buffers. Please have a look at the attached patch. martin [-- Attachment #2: windows.texi.diff --] [-- Type: text/plain, Size: 4921 bytes --] diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi index dc99d49..c23c96f 100644 --- a/doc/emacs/emacs.texi +++ b/doc/emacs/emacs.texi @@ -519,6 +519,7 @@ Top * Pop Up Window:: Finding a file or buffer in another window. * Change Window:: Deleting windows and changing their sizes. * Displaying Buffers:: How Emacs picks a window for displaying a buffer. +* Temporary Displays:: Displaying non-editable buffers. * Window Convenience:: Convenience functions for window handling. Displaying a Buffer in a Window diff --git a/doc/emacs/windows.texi b/doc/emacs/windows.texi index f99234b..0bec3d3 100644 --- a/doc/emacs/windows.texi +++ b/doc/emacs/windows.texi @@ -374,6 +374,7 @@ Displaying Buffers @menu * Window Choice:: How @code{display-buffer} works. +* Temporary Displays:: Displaying non-editable buffers. @end menu @node Window Choice @@ -411,15 +412,15 @@ Window Choice @code{graphic-only} means to do this only on graphical displays. @item -Otherwise, try to create a new window by splitting the selected -window, and display the buffer in that new window. +Otherwise, try to create a new window by splitting a window on the +selected frame, and display the buffer in that new window. @vindex split-height-threshold @vindex split-width-threshold The split can be either vertical or horizontal, depending on the variables @code{split-height-threshold} and @code{split-width-threshold}. These variables should have integer -values. If @code{split-height-threshold} is smaller than the selected +values. If @code{split-height-threshold} is smaller than the chosen window's height, the split puts the new window below. Otherwise, if @code{split-width-threshold} is smaller than the window's width, the split puts the new window on the right. If neither condition holds, @@ -427,6 +428,12 @@ Window Choice window was not split before (to avoid excessive splitting). @item +Otherwise, display the buffer in a window previously showing it. +Normally, only windows on the selected frame are considered, but if +@code{pop-up-frames} is non-@code{nil} the window may be also on another +frame. + +@item Otherwise, display the buffer in an existing window on the selected frame. @@ -435,6 +442,58 @@ Window Choice and display the buffer there. @end itemize +A more advanced and flexible way to customize the behavior of +@code{display-buffer} is by using the option @code{display-buffer-alist} +mentioned in the next section. + + +@node Temporary Displays +@subsection Displaying non-editable buffers. + +Some buffers are shown in windows for perusal rather than for editing. +Help commands (@pxref{Help}) typically use a buffer called @file{*Help*} +for that purpose, minibuffer completion (@pxref{Completion}) uses a +buffer called @file{*Completions*} instead. Such buffers are usually +displayed for a short period of time. + + Normally, Emacs chooses the window for temporary displays via +@code{display-buffer} as described above. The @file{*Completions*} +buffer, on the other hand, is preferably displayed in a window at the +bottom of the selected frame, regardless of the number of windows +already shown on that frame. + + If you prefer Emacs to display a temporary buffer in a different +fashion, the recommended approach is to customize the variable +@code{display-buffer-alist} (@pxref{Choosing Window,,Choosing a Window +for Display, elisp, The Emacs Lisp Reference Manual}). For example, to +display @file{*Completions*} by splitting a window as described in the +previous section, use the following form in your initialization file +(@pxref{Init File}): + +@example +@group +(customize-set-variable + 'display-buffer-alist + '(("\\*Completions\\*" display-buffer-pop-up-window))) +@end group +@end example + + The @file{*Completions*} buffer is also special in the sense that +Emacs usually tries to make its window just as large to display all of +its contents. Once sized this way, the size of that window can only +shrink. If you want to make sure that the window is always large enough +to show the entire contents of the buffer invoke the minor mode +(@pxref{Minor Modes}) @code{temp-buffer-resize-mode} (@pxref{Temporary +Displays,,Temporary Displays, elisp, The Emacs Lisp Reference Manual}). + + When @code{temp-buffer-resize-mode} is enabled, it will try to fit +all temporary displays including, for example, the @file{*Help*} buffer. +The maximum size of such windows can be controlled by customizing the +options @code{temp-buffer-max-height} and @code{temp-buffer-max-width} +(@pxref{Temporary Displays,,Temporary Displays, elisp, The Emacs Lisp +Reference Manual}) and cannot exceed the size of the containing frame. + + @node Window Convenience @section Convenience Features for Window Handling ^ permalink raw reply related [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 18:53 ` martin rudalics @ 2016-03-23 19:43 ` Eli Zaretskii 2016-03-23 20:17 ` N. Jackson 1 sibling, 0 replies; 19+ messages in thread From: Eli Zaretskii @ 2016-03-23 19:43 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, nljlistbox2 > Date: Wed, 23 Mar 2016 19:53:49 +0100 > From: martin rudalics <rudalics@gmx.at> > CC: nljlistbox2@gmail.com, 23093@debbugs.gnu.org > > > "Displaying Buffers" sounds like a good place. Maybe add a new > > subsection there, which talks specifically about temporary pop-up > > buffers. > > Please have a look at the attached patch. Looks good to me, thank. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 18:53 ` martin rudalics 2016-03-23 19:43 ` Eli Zaretskii @ 2016-03-23 20:17 ` N. Jackson 2016-03-24 7:42 ` martin rudalics 2016-03-25 7:42 ` martin rudalics 1 sibling, 2 replies; 19+ messages in thread From: N. Jackson @ 2016-03-23 20:17 UTC (permalink / raw) To: martin rudalics; +Cc: 23093 At 19:53 +0100 on Wednesday 2016-03-23, martin rudalics wrote: > > Please have a look at the attached patch. Hello Martin, I like your doc patch; it makes the behaviour clear. In particular the snippet of code it provides, viz. (customize-set-variable 'display-buffer-alist '(("\\*Completions\\*" display-buffer-pop-up-window))) works like a charm to get back the Emacs 24 behaviour that I seem to prefer at the moment. Thank you very much! Sorry to be suggesting more work, but I think a brief entry about the new *Completions* buffer display behaviour should go in NEWS, referring the reader to your new node in the manual for details and for information on how to restore the former behaviour. Regards, N. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 20:17 ` N. Jackson @ 2016-03-24 7:42 ` martin rudalics 2016-03-25 7:42 ` martin rudalics 1 sibling, 0 replies; 19+ messages in thread From: martin rudalics @ 2016-03-24 7:42 UTC (permalink / raw) To: N. Jackson; +Cc: 23093 > Sorry to be suggesting more work, but I think a brief entry about the > new *Completions* buffer display behaviour should go in NEWS, referring > the reader to your new node in the manual for details and for > information on how to restore the former behaviour. We'll do that once we have decided what to do ;-) martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 20:17 ` N. Jackson 2016-03-24 7:42 ` martin rudalics @ 2016-03-25 7:42 ` martin rudalics 2016-03-25 8:05 ` Eli Zaretskii 1 sibling, 1 reply; 19+ messages in thread From: martin rudalics @ 2016-03-25 7:42 UTC (permalink / raw) To: N. Jackson; +Cc: 23093 > Sorry to be suggesting more work, but I think a brief entry about the > new *Completions* buffer display behaviour should go in NEWS, referring > the reader to your new node in the manual for details and for > information on how to restore the former behaviour. Should be done now. Please have a look. Thanks, martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-25 7:42 ` martin rudalics @ 2016-03-25 8:05 ` Eli Zaretskii 2016-03-25 8:37 ` martin rudalics 0 siblings, 1 reply; 19+ messages in thread From: Eli Zaretskii @ 2016-03-25 8:05 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, nljlistbox2 > Date: Fri, 25 Mar 2016 08:42:33 +0100 > From: martin rudalics <rudalics@gmx.at> > CC: Eli Zaretskii <eliz@gnu.org>, 23093@debbugs.gnu.org > > > Sorry to be suggesting more work, but I think a brief entry about the > > new *Completions* buffer display behaviour should go in NEWS, referring > > the reader to your new node in the manual for details and for > > information on how to restore the former behaviour. > > Should be done now. Please have a look. Thanks. However, I have a difficulty understanding this part of the NEWS entry: *** The minibuffer completions window is now displayed at the bottom of the selected frame and always fit to its buffer. There are 2 unclear aspects here: (a) who is "it" in "its buffer", and (b) what does "fit to" mean. Does the following rewording convey the same ideas? *** The window displaying the '*Completions*' buffer with minibuffer completion candidates is now shown at the bottom of the selected frame. The size of that window is always as large as required to display all the candidates, except when limited by the minimum size of the other windows on that frame; those other windows are resized to provide space for the '*Completions*' display. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-25 8:05 ` Eli Zaretskii @ 2016-03-25 8:37 ` martin rudalics 2016-03-25 10:39 ` Eli Zaretskii 0 siblings, 1 reply; 19+ messages in thread From: martin rudalics @ 2016-03-25 8:37 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 23093, nljlistbox2 > Thanks. However, I have a difficulty understanding this part of the > NEWS entry: > > *** The minibuffer completions window is now displayed at the bottom of > the selected frame and always fit to its buffer. > > There are 2 unclear aspects here: (a) who is "it" in "its buffer", and > (b) what does "fit to" mean. > > Does the following rewording convey the same ideas? > > *** The window displaying the '*Completions*' buffer with minibuffer > completion candidates is now shown at the bottom of the selected > frame. The size of that window is always as large as required to > display all the candidates, except when limited by the minimum size > of the other windows on that frame; those other windows are resized > to provide space for the '*Completions*' display. It does so. If necessary, please reword the manual text as well. Thanks, martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-25 8:37 ` martin rudalics @ 2016-03-25 10:39 ` Eli Zaretskii 2020-08-24 18:21 ` Lars Ingebrigtsen 0 siblings, 1 reply; 19+ messages in thread From: Eli Zaretskii @ 2016-03-25 10:39 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, nljlistbox2 > Date: Fri, 25 Mar 2016 09:37:43 +0100 > From: martin rudalics <rudalics@gmx.at> > CC: nljlistbox2@gmail.com, 23093@debbugs.gnu.org > > > Thanks. However, I have a difficulty understanding this part of the > > NEWS entry: > > > > *** The minibuffer completions window is now displayed at the bottom of > > the selected frame and always fit to its buffer. > > > > There are 2 unclear aspects here: (a) who is "it" in "its buffer", and > > (b) what does "fit to" mean. > > > > Does the following rewording convey the same ideas? > > > > *** The window displaying the '*Completions*' buffer with minibuffer > > completion candidates is now shown at the bottom of the selected > > frame. The size of that window is always as large as required to > > display all the candidates, except when limited by the minimum size > > of the other windows on that frame; those other windows are resized > > to provide space for the '*Completions*' display. > > It does so. If necessary, please reword the manual text as well. Done, thanks. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-25 10:39 ` Eli Zaretskii @ 2020-08-24 18:21 ` Lars Ingebrigtsen 0 siblings, 0 replies; 19+ messages in thread From: Lars Ingebrigtsen @ 2020-08-24 18:21 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 23093, nljlistbox2 Eli Zaretskii <eliz@gnu.org> writes: >> It does so. If necessary, please reword the manual text as well. > > Done, thanks. If I'm reading this thread correctly, the bug discussed here was fixed (by adding a lot of documentation), so I'm closing this bug report. If there's anything more to be worked on here, please send a mail to the debbugs address and we'll reopen the bug report. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-22 18:47 ` martin rudalics 2016-03-22 19:02 ` Eli Zaretskii @ 2016-03-22 19:45 ` N. Jackson 2016-03-23 8:09 ` martin rudalics 1 sibling, 1 reply; 19+ messages in thread From: N. Jackson @ 2016-03-22 19:45 UTC (permalink / raw) To: martin rudalics; +Cc: 23093 Hi Martin, At 19:47 +0100 on Tuesday 2016-03-22, martin rudalics wrote: >> This change does not seem to me to be an improvement, as now far fewer >> of the available completions are visible at once. > > Customizing ‘temp-buffer-max-height’ would fix that. That seems a rather terrifying customization given that the current value of `temp-buffer-max-height' is: (lambda (buffer) (if (and (display-graphic-p) (eq (selected-window) (frame-root-window))) (/ (x-display-pixel-height) (frame-char-height) 2) (/ (- (frame-height) 2) 2))) >> I suppose whether a "portrait" or "landscape" completions window is >> better probably depends on the number and length of the completions and >> also on the user's frame size, so presumably the splitting behaviour >> should be a user option. > > It is. Please customize ‘display-buffer-alist’ for the buffer named > *Completions*. This also doesn't seem a trivial customization; it involves alists of alists, cons cells, regular expressions, functions. This seems to be rather a lot to ask of the user just so they can get back the Emacs 24 behaviour. Instead, I was thinking more along the lines of a simple Boolean variable called something like completions-window-prefer-split-right with a default value of non-`nil' to give the old behaviour, and `nil' would give the behaviour we're currently seeing in Emacs 25. ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-22 19:45 ` N. Jackson @ 2016-03-23 8:09 ` martin rudalics 2016-03-23 21:35 ` Juri Linkov 0 siblings, 1 reply; 19+ messages in thread From: martin rudalics @ 2016-03-23 8:09 UTC (permalink / raw) To: N. Jackson; +Cc: 23093 >> Customizing ‘temp-buffer-max-height’ would fix that. > > That seems a rather terrifying customization given that the current > value of `temp-buffer-max-height' is: > > (lambda [...] Since you know your display and how you use it, it should be easy for you to enter a plain integer in the customizations buffer instead. >> It is. Please customize ‘display-buffer-alist’ for the buffer named >> *Completions*. > > This also doesn't seem a trivial customization; it involves alists of > alists, cons cells, regular expressions, functions. I'm afraid this is a hurdle you'll eventually have to deal with anyway. ‘display-buffer-alist’ is now essential for too many applications. I've never been fond of it (as you can find out from some very vivid early discussions) but meanwhile have learned to live with it as well. > This seems to be rather a lot to ask of the user just so they can get > back the Emacs 24 behaviour. > > Instead, I was thinking more along the lines of a simple Boolean > variable called something like completions-window-prefer-split-right > with a default value of non-`nil' to give the old behaviour, and `nil' > would give the behaviour we're currently seeing in Emacs 25. Maybe Juri can help you here. I'll add him to the recipients. martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 8:09 ` martin rudalics @ 2016-03-23 21:35 ` Juri Linkov 2016-03-24 7:43 ` martin rudalics 0 siblings, 1 reply; 19+ messages in thread From: Juri Linkov @ 2016-03-23 21:35 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, N. Jackson >> Instead, I was thinking more along the lines of a simple Boolean >> variable called something like completions-window-prefer-split-right >> with a default value of non-`nil' to give the old behaviour, and `nil' >> would give the behaviour we're currently seeing in Emacs 25. > > Maybe Juri can help you here. I'll add him to the recipients. Before adding a new defcustom variable, could we try to make the behavior more DWIM and automatically detect a window configuration where displaying *Completions* side-by-side makes more sense like in frames with 48-characters height and 2*80-characters width. Is it possible to tune ‘temp-buffer-max-height’ to handle this? Or maybe we need to add new conditional actions like ‘display-buffer-below-selected-if-high-enough’ or ‘display-buffer-in-right-window-if-height-is-narrow’ or? ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-23 21:35 ` Juri Linkov @ 2016-03-24 7:43 ` martin rudalics 2016-03-24 22:16 ` Juri Linkov 0 siblings, 1 reply; 19+ messages in thread From: martin rudalics @ 2016-03-24 7:43 UTC (permalink / raw) To: Juri Linkov; +Cc: 23093, N. Jackson > Before adding a new defcustom variable, could we try to make the > behavior more DWIM and automatically detect a window configuration > where displaying *Completions* side-by-side makes more sense like > in frames with 48-characters height and 2*80-characters width. IIUC the current scheme pretty well handles the case where multiple windows are already present when completion is attempted. And IIRC we also wanted the *Completions* window appear near the echo area. Doing both of these for side-by-side windows seems pretty contrived. I think that describing an alternative ‘display-buffer-alist’ spec in the manual should be sufficient. > Is it possible to tune ‘temp-buffer-max-height’ to handle this? ‘temp-buffer-max-height’ is effective only if ‘temp-buffer-resize-mode’ is enabled. ‘temp-buffer-resize-mode’ is not enabled by default. > Or maybe we need to add new conditional actions like > ‘display-buffer-below-selected-if-high-enough’ or > ‘display-buffer-in-right-window-if-height-is-narrow’ or? Rather not. In some sense we do the former already although IIUC we never consult the number of completions before splitting off the window. The latter looks like a special form of ‘split-window-sensibly’ with all its problems. martin ^ permalink raw reply [flat|nested] 19+ messages in thread
* bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right 2016-03-24 7:43 ` martin rudalics @ 2016-03-24 22:16 ` Juri Linkov 0 siblings, 0 replies; 19+ messages in thread From: Juri Linkov @ 2016-03-24 22:16 UTC (permalink / raw) To: martin rudalics; +Cc: 23093, N. Jackson >> Or maybe we need to add new conditional actions like >> ‘display-buffer-below-selected-if-high-enough’ or >> ‘display-buffer-in-right-window-if-height-is-narrow’ or? > > Rather not. In some sense we do the former already although IIUC we > never consult the number of completions before splitting off the window. This is more complex logic: if the number of completions is small, always display completions at the bottom, otherwise decide how to split window depending on window configuration like in ‘split-window-sensibly’ you mentioned below. > The latter looks like a special form of ‘split-window-sensibly’ with all > its problems. ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2020-08-24 18:21 UTC | newest] Thread overview: 19+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-03-22 17:37 bug#23093: 25.0.92; Change for the worse: minibuffer completion window splits below rather that right N. Jackson 2016-03-22 18:47 ` martin rudalics 2016-03-22 19:02 ` Eli Zaretskii 2016-03-23 8:09 ` martin rudalics 2016-03-23 15:20 ` Eli Zaretskii 2016-03-23 18:53 ` martin rudalics 2016-03-23 19:43 ` Eli Zaretskii 2016-03-23 20:17 ` N. Jackson 2016-03-24 7:42 ` martin rudalics 2016-03-25 7:42 ` martin rudalics 2016-03-25 8:05 ` Eli Zaretskii 2016-03-25 8:37 ` martin rudalics 2016-03-25 10:39 ` Eli Zaretskii 2020-08-24 18:21 ` Lars Ingebrigtsen 2016-03-22 19:45 ` N. Jackson 2016-03-23 8:09 ` martin rudalics 2016-03-23 21:35 ` Juri Linkov 2016-03-24 7:43 ` martin rudalics 2016-03-24 22:16 ` Juri Linkov
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).