[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#53897: 28.0.91; regression: rcirc overwrites completion-cycle-thresh
From: |
Philip Kaludercic |
Subject: |
bug#53897: 28.0.91; regression: rcirc overwrites completion-cycle-threshold |
Date: |
Mon, 14 Feb 2022 18:15:42 +0000 |
Daniel Mendler <mail@daniel-mendler.de> writes:
>> The change that introduced this was that the custom cycling
>> implementation was replaced with one based on completion-at-point
>> (0b367ec), mainly to simplify the code. The reason
>> `completion-cycle-threshold' is set is to preserve the appearance of the
>> previous behaviour, as a complete reversion to completion-at-point
>> seemed like too much of a change.
>
> I agree with your change to remove rcirc-complete. I greatly appreciate
> the simplicity of rcirc and it is good that you try to make it even
> simpler! But rcirc-completion-at-point was already present as Capf on
> Emacs 27 and there `completion-at-point` didn't lead to cycling. I would
> not introduce a user configuration, it is easy enough to set
> completion-cycle-threshold in a hook.
Hmm, ok, I get your point. My rationale is that rcirc-complete (bound
to TAB) used to cycle, and that it was that behaviour that was supposed
to be preserved.
> Furthermore there is the alternative to use completion-category-defaults
> to specify the threshold per completion category. You could add the
> override there. But personally I would avoid doing that. I usually
> prefer if packages avoid intrusive and opinionated settings and instead
> try to ensure consistency across Emacs.
I agree.
>> I could imagine introducing a user option to decide what you want to
>> use. My inclination would be to set it to "cycle by default", but it
>> doesn't need that way. Perhaps we could test non-cycling (regular capf)
>> for a while, and see if there are any complaints or other feedback?
>
> Yes, I would go with normal Capf behavior, which is the usual behavior
> across all of Emacs. If a user wants to restore rcirc-complete, it seems
> easy enough to add this to a user configuration?
>
> (defun rcirc-complete ()
> (interactive)
> (let ((completion-cycle-threshold t))
> (completion-at-point)))
Or, this could be added as rcirc-complete, binding TAB back to this new
command and documenting that if you want to complete using the default
CAPF, you should rebind it to completion-at-point?
> Thanks!
--
Philip Kaludercic