GNU bug report logs - #71883
[PATCH] Fix tab-bar-auto-width with customized tab-bar-tab-face-function

Previous Next

Package: emacs;

Reported by: Joseph Turner <joseph <at> breatheoutbreathe.in>

Date: Mon, 1 Jul 2024 20:43:02 UTC

Severity: normal

Tags: patch

Fixed in version 31.0.50

Done: Juri Linkov <juri <at> linkov.net>

Bug is archived. No further changes may be made.

Full log


Message #35 received at 71883 <at> debbugs.gnu.org (full text, mbox):

From: Adam Porter <adam <at> alphapapa.net>
To: Juri Linkov <juri <at> linkov.net>
Cc: 71883 <at> debbugs.gnu.org, Ship Mints <shipmints <at> gmail.com>,
 Joseph Turner <joseph <at> breatheoutbreathe.in>
Subject: Re: bug#71883: [PATCH] Fix tab-bar-auto-width with customized
 tab-bar-tab-face-function
Date: Wed, 3 Jul 2024 14:50:24 -0500
On 7/3/24 01:27, Juri Linkov wrote:
>>> Probably this is not needed after implementing a variable with
>>> a predicate function, since it could be set to 'always' to return t.
>>> Then activities.el could set this to a function that checks for a symbol.
>>
>> If it seems appropriate, I'd suggest using a list of predicate functions,
>> which could be used with `run-hook-with-args-until-success'. That way there
>> wouldn't be any contention with other libraries which also wanted to set
>> that function.
> 
> Would you agree to use add-function instead?  For example, in tab-bar.el:
> 
>    (defvar tab-bar-auto-width-predicate #'tab-bar-auto-width-faces)
> 
> Then in activities.el you could use:
> 
>    (add-function :after-while tab-bar-auto-width-predicate activities-predicate)

Isn't advice generally intended for users to use in their configs, 
rather than for libraries to use?  If we have here an opportunity to 
design an API that is extensible by multiple libraries, wouldn't that be 
preferable to asking downstream libraries to apply multiple levels of 
advice and the problems that would raise?

IOW, what would the problem be with using 
`run-hook-with-args-until-success' on a list of functions?  If there is 
one, I must be missing something.  :)




This bug report was last modified 333 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.