GNU bug report logs - #74511
31.0.50; `dictionary-search-interface' overrides the user's customization of `dictionary-read-word-function'

Previous Next

Package: emacs;

Reported by: Steven Allen <steven <at> stebalien.com>

Date: Sun, 24 Nov 2024 18:57:01 UTC

Severity: normal

Found in version 31.0.50

Fixed in version 30.1

Done: Eshel Yaron <me <at> eshelyaron.com>

Bug is archived. No further changes may be made.

Full log


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

From: Steven Allen <steven <at> stebalien.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 74511 <at> debbugs.gnu.org
Subject: Re: bug#74511: 31.0.50; `dictionary-search-interface' overrides the
 user's customization of `dictionary-read-word-function'
Date: Sun, 24 Nov 2024 12:36:00 -0800
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Date: Sun, 24 Nov 2024 10:56:08 -0800
>> From:  Steven Allen via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>> 
>> 
>> If the user customizes `dictionary-read-word-function' then loads the
>> dictionary package, the value of `dictionary-read-word-function' will be
>> overridden when `dictionary-search-interface' is loaded. To reproduce:
>> 
>> 1. Run emacs with `emacs -Q`.
>> 2. Open a scratch buffer and evaluate the following:
>> 
>>     (setopt dictionary-read-word-function 'dictionary-completing-read-word)
>>     (require 'dictionary)
>>     (message "%S" dictionary-read-word-function)
>> 
>> I'd expect `dictionary-read-word-function' to be
>> `dictionary-completing-read-word' but instead it gets reset back to the
>> default, `dictionary-read-dictionary-default'. I can work around this by
>> calling `setopt' after loading the `dictionary' package, but ideally
>> that wouldn't be necessary.
>
> You are supposed to customize dictionary-search-interface if you want
> this mode of operation.

In addition to dictionary-search-interface, there are three separately
customizable variables:

- dictionary-display-definition-function
- dictionary-read-word-function
- dictionary-read-dictionary-function

I'd expect dictionary-search-interface to override the defaults for
these variables, but I wouldn't expect it to completely clobber any user
customizations of said variables.

If these variables cannot be customized, I'd expect them to be "defvar"
not "defcustom". Although that would be rather unfortunate because,
while I want to enable minibuffer completion for words/dictionaries, I'd
also like to use the real dictionary mode (not the help buffer).

Adding ":initialize 'custom-initialize-changed" to
dictionary-search-interface would make it possible to specify either
dictionary-search-interface or any of the other variables (but not both
at the same time).




This bug report was last modified 211 days ago.

Previous Next


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