all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* fix for bug#34330 breaks makefile target complete in `compile' prompt
@ 2019-09-15  9:12 Stephen Leake
  2019-09-15 12:50 ` Stefan Monnier
  0 siblings, 1 reply; 4+ messages in thread
From: Stephen Leake @ 2019-09-15  9:12 UTC (permalink / raw)
  To: emacs-devel

bug#34330 (now closed) was about completing file names with special
chars in the shell. The fix was to move `pcomplete-completions-at-point'
to last in `shell-dynamic-complete-functions'.

However, that now breaks completing on makefile targets in the prompt
for `compile'.

The problem is that `comint-filename-completion' returns non-nil even
when there are no filename completions for the word at point.

One fix would be to make `comint--complete-file-name-data' return nil if
`try-completion' returns nil.

The real cause for bug#34330 is that pcomplete uses
`pcomplete-default-completion-function' in this case (there is no
pcomplete/ls), and it also returns a non-nil result even when there are
no completions.

The doc string for `completion-at-point-functions' says, in part:

    should return either nil, meaning it is not applicable at point,

It's not clear from this if "applicable" means "there are actual
completions", but it appears that it should.

So should these functions be fixed to return nil when there are no completions?

--
-- Stephe



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-09-15 21:05 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-15  9:12 fix for bug#34330 breaks makefile target complete in `compile' prompt Stephen Leake
2019-09-15 12:50 ` Stefan Monnier
2019-09-15 20:07   ` Stephen Leake
2019-09-15 21:05     ` Stefan Monnier

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.