Subject: Re: bug#79065: 31.0.50; [PATCH] Allow inverting the meaning of 'quit-window-kill-buffer'

From: Jim Porter <[email-masked]>
Date: Tue, 29 Jul 2025 09:35:57 -0700

On 7/29/2025 3:44 AM, Eli Zaretskii wrote:
>> From: Jim Porter <[email-masked]>
>>
>> However, another way to do this would be a tri-state:
>>
>> * no prefix: obey 'quit-window-kill-buffer'
>> * C-u: always kill
>> * C--: always bury
[snip]
> 
> That might solve the interactive case (though maybe not in a very
> convenient way), but what about calls from Lisp?

I think we could make the Lisp calls work like you suggested, where the 
KILL argument can be:

* 'nil': obey 'quit-window-kill-buffer'
* 'bury': always bury
* 'kill' (or any other non-nil value for compatibility): always kill

As for interactive use, I'm not sure whether the behavior proposed above 
would be more convenient for the average user or whether having the 
prefix arg mean "do the opposite of what it would normally do" would be 
more convenient. The behavior above is simpler to explain though, and 
when using a prefix arg, a user can always predict what will actually 
happen.