bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#61283: 29.0.60; pcomplete-completions-at-point loses text properties


From: Gregory Heytings
Subject: bug#61283: 29.0.60; pcomplete-completions-at-point loses text properties, breaking pcomplete-from-help annotations
Date: Tue, 16 May 2023 07:50:17 +0000



1. Start emacs -Q
2. Evaluate the following two test commands in the scratch buffer:

(defun good ()
 (interactive)
 (pp (all-completions "" (nth 2 (pcomplete-completions-at-point)))))

(defun bad ()
 (interactive)
 (pp (all-completions "-" (nth 2 (pcomplete-completions-at-point)))))

3. Run shell or eshell
4. Enter `xargs --' in order to complete command line options via
`pcomplete-from-help'.
5. M-x good -> Printed completion strings will have pcomplete-annotation
and pcomplete-help text properties. These are used by the
:annotation-function and the :company-docsig function.
6. M-x bad -> Returned completion strings are stripped of their text
properties.
7. When triggering completion manually by pressing TAB, there are
no annotations displayed in the *Completions* buffer.

If I recall correctly, this functionality worked at some point and the text properties were not removed, such that annotations worked. The culprit, which destroys the properties, seems to be `completion-table-with-quoting' in `pcomplete-completions-at-point', but I wasn't able to figure out which commit caused this (I did not do any bisecting).


Sorry, I missed your earlier post. There is no need to bisect in this case: 'pcomplete-from-help' was added in a994126968 (which means that it's new in Emacs 29), and the recipe above already gave the exact same result at that point. I took a sample of four revisions between emacs-29/c18f9f155f and a994126968 (f102145d38, 07127e9c29, 4f114c0d95, 809afde01d), and the result is always the same.






reply via email to

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