Subject: bug#14300: 24.3; comint-dynamic-complete-functions breaks

From: Leo Liu <[email-masked]>
Date: Mon, 06 May 2013 11:40:35 +0800

On 2013-05-06 10:38 +0800, Stefan Monnier wrote:
> While there are cases where there is ambiguity, there are many where the
> ambiguity can be lifted:
>
> You could prevent function completion within a string, so file name
> completion still won't work after 'cd /u' but it will after 'cd "/u'.
> Similarly you might disable function completion if the "current function
> name" includes a / (assuming real functions don't include a slash in
> their name).
>
> In the worst case, you might want to use ":exclusive t", tho it means that
> function completion won't be able to benefit from fancier completion styles.

It would be nice if there is a way I can provide completion-at-point
with two tables and it will just try them one after another if the
preceding table has no match.

In most cases path starts with no leading / and function completion
needs to work well in strings too due to its inline functions:

   f = inline("sin(x)^2 + 2");

Octave's syntax is eccentric.

A 80% solution might be to special-case 'cd', 'rmdir', 'source',
'unlink' etc.

Leo