Subject: Re: bug#19504: 11.88; [siunitx] unit appears without backslash
From: Mosè Giordano <[email-masked]>
To: Tassilo Horn <[email-masked]>
Cc: [email-masked], Uwe Siart <[email-masked]>
Date: Sun, 18 Oct 2015 23:17:14 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi all,

this bug should be fixed now.

Bye,
Mosè

2015-04-14 23:16 GMT+02:00 Mosè Giordano <[email-masked]>:
> Hello,
>
> here is my take to fix the bug: there are three different versions of
> `TeX-completing-read-multiple' as suggested by Tassilo.  I'm just not
> sure it works with all 24.* versions of Emacs.  A serious problem is
> that there are a couple of internal functions (crm--*), and we had
> problems  in the past with internal functions,[1] for which we still
> get bug reports nowadays.
>
> Actually, the change by Roland Winkler which caused this bug is the
> same which forced us to make `TeX-completing-read-multiple' always
> return nil,[2] so perhaps we could also revert that change, but in
> this way we would break backward compatibility in turn.
>
> Bye,
> Mosè
>
> Note:
>
> [1]  http://comments.gmane.org/gmane.emacs.aquamacs.devel/240
> [2]  http://comments.gmane.org/gmane.emacs.auctex.devel/3375
>
> 2015-03-12 23:05 GMT+01:00 Mosè Giordano <[email-masked]>:
>> Hi Tassilo,
>>
>> 2015-03-12 9:51 GMT+01:00 Tassilo Horn <[email-masked]>:
>>> Mosè Giordano <[email-masked]> writes:
>>>
>>>>> PS: The plan is actually to move the minibuffer completion in that
>>>>> direction for normal minibuffer completion, so that TAB is bound to
>>>>> completion-at-point in the minibuffer as well.
>>>>
>>>> Uh, thanks for the suggestion, but according to git blame
>>>> `completion-at-point' exists since 2009, so Emacs <23 is left out.
>>>
>>> Sorry, I didn't follow this issue closely.  But isn't it the case that
>>> some quite recent change in Emacs is the culprit?
>>
>> Yes, with this commit
>> http://git.savannah.gnu.org/gitweb/?p=emacs.git;a=commitdiff;h=9c44569ea2a18099307e0571d523d8637000a153
>> `completing-read-multiple' ignores empty strings, which was essential
>> for completion of `siunitx' units.
>>
>>> In that case,
>>> `TeX-completing-read-multiple' could have 3 versions instead of the
>>> current two (one for Emacs, one for XEmacs), i.e., one for Emacs <= 22,
>>> one for Emacs 23+, and one for XEmacs.
>>
>> As I said some messages ago, the best I can think is to copy the last
>> Emacs implementation before the mentioned commit (making sure return
>> value for empty input is always nil) for all Emacs versions, so we
>> should be able to keep the number of versions of
>> `TeX-completing-read-multiple' as low as two.  The problem will be of
>> course some more work on our side to maintain the function, if needed.
>>
>> Bye,
>> Mosè