|
From: | Dmitry Gutov |
Subject: | bug#18265: 24.3.92; lisp-completion-at-point should return nil in comments, unless after ` |
Date: | Sat, 16 Aug 2014 05:02:21 +0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 |
On 08/15/2014 04:33 PM, Stefan Monnier wrote:
As it currently stands, there's no question that your original request is right (the one stated in the "Subject:"), so feel free to fix it.
Ok thanks, I will. I've been holding off on committing to trunk until I start using it again, but maybe it's time.
I'm just thinking of how we could also satisfy those who might want to complete code-like things in comments, without having to resort to customization.
I've suggested one approach (in addition to seeing if there's a backquote before the current prefix): look if the current text is specially indented and separated with empty lines (though this is a very imprecise heurystic).
And for the cases when it's not, we can add a new completion function at the end of the default c-a-p-f value, which would work like `company-dabbrev' does. Or like `company-dabbrev-code', in `prog-mode' descendants. `company-capf' would ignore it, for the time being, like it does with `tags-completion-at-point-function' currently.
You've called ":exclusive no" a hack yourself before, and :merge-with-rest looks not much different to me, going counter to the c-a-p-f interface.
It raises questions, like if `lisp-completion-at-point' would like to be merged with the rest, will it be merged with all of them? Won't the other completion functions get a choice in the matter? What if one of them is smart enough to provide all completions for the current context, by itself?
And anyway, it doesn't seem to help with the distinction between manual and idle completion, unless you'd prefer to only activate the :merge-with-rest logic in the case of manual invocation. Which seems orthogonal to the property's purpose.
[Prev in Thread] | Current Thread | [Next in Thread] |