Subject: bug#69983: Use category for display-buffer-alist

From: Eli Zaretskii <[email-masked]>
Date: Tue, 09 Apr 2024 10:09:37 +0300

> Cc: [email-masked]
> From: Juri Linkov <[email-masked]>
> Date: Tue, 09 Apr 2024 09:30:31 +0300
> 
> >>> One problem is that I can't find an alist item to limit
> >>> the window height, i.e. can't find window-max-height
> >>> that would be like window-min-height, but to set a max height.
> >>> Could you suggest such an alist item?
> >>
> >> The intention was to have such behavior:
> >> 1. after the first call that adds 1 line to the output buffer,
> >>     resize the displayed buffer to 1 line height;
> >> 2. after the second call grow the output window height to 2 lines,
> >>     it seems fit-window-to-buffer should do this;
> >> 3. after 10th call limit the window height to 10 lines only,
> >>     so later calls should not increase the output window height
> >>     more than 10 lines.
> >
> > You mean that when a 'window-height' action alist entry is provided that
> > specifies 'fit-window-to-buffer' as 'window-height' value, we should
> > pass it the value of any 'window-max-height' entry present as MAX-HEIGHT
> > argument here
> >
> >          ((functionp height)
> > 	  (ignore-errors (funcall height window))
> >
> > and probably do the same for all the other arguments of
> > 'fit-window-to-buffer'?
> 
> Probably we can't change the existing arguments to not break
> backward-compatibility.  But this is fine since still can use
> the explicit function call:
> 
> diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el
> index 8b43c6a8726..75b519067ac 100644
> --- a/lisp/emacs-lisp/warnings.el
> +++ b/lisp/emacs-lisp/warnings.el
> @@ -362,7 +362,12 @@ display-warning

Why does adding a new feature require changes in existing features,
let alone such basic features as warnings.el?  Can't we introduce the
category and leave warnings.el, flymake.el, and others alone?  I don't
want to make unsolicited changes in those other places, because that
runs the risk of disturbing people's arrangements of windows and their
habits as to where the various windows pop up.