emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: project--completing-read-strict breaks ada-mode project completion t


From: Stephen Leake
Subject: Re: project--completing-read-strict breaks ada-mode project completion table
Date: Fri, 15 Feb 2019 14:47:47 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (windows-nt)

Stephen Leake <address@hidden> writes:

> Stephen Leake <address@hidden> writes:
>
>> Stefan Monnier <address@hidden> writes:
>>
>>>
>>> As you mention in uniquify-files.el:
>>>
>>>     (defun completion-get-data-string (user-string table pred)
>>>     [...]
>>>               ;;  FIXME: This is ultimately called from
>>>               ;;  `completion-try-completion' or 
>>> `completion-all-completions';
>>>               ;;  there is only one style currently being used. Need to 
>>> pass that
>>>               ;;  style from there to here.
>>>
>>> it only makes sense to call the conversion function corresponding to the
>>> style that was used to generate that string.
>>>
>>> [ Also while a specific call to minibuffer-complete (or
>>>   minibuffer-completion-help, or minibuffer-force-complete, ...) only
>>>   uses a single style, a given completing-read session can currently use
>>>   several completion styles.    ]
>>>
>>> So I think we should fix this FIXME before we can move this code to
>>> minibuffer.el.  Maybe we can save the completion style that returned
>>> that string in a text-property, or even directly store the conversion
>>> function in there (so we don't need to extend completion-style-alist).
>>
>> ... completion-get-data-string is called after
>> completing-read-default, via uniq-file-completing-read-default-advice.
>> At that point, user-string was computed by the last style tried (ie
>> uniq-file-all-completions, which could set a text property), but I'm not
>> sure if it's copied (losing the text properties) in the middle
>> somewhere. I'll try it.
>
> This is now implemented, in ELPA.

Except it also needs:

(setq minibuffer-allow-text-properties t)

--
-- Stephe



reply via email to

[Prev in Thread] Current Thread [Next in Thread]