Feature: string filtering for code completion [Patch attached]

David Nolden zwabel at googlemail.com
Thu Jul 15 12:42:11 UTC 2010

I guess we definitely shouldn't _always_ do this, because in many
cases it might also be unexpected, and also as you say in the comment,
it's slow. How slow it is depends on the size of the completion-lists,
but we want to be compatible with really long completion lists (at
some point we'll also start adding macros to the list, for example).

A separate shortcut also wouldn't be nice I think. To me it seems like
the best solution if we'd allow specifying specic filters during
completion using some special character. For example:

test.*QString : Filter the list for everything that contains "QString"
in an arbitrary position.
test.r*QString : Filter the list for everything where the "return"
type contains QString
test.a*QString : Filter the list for everything that has QString in
its arguments

And similar. The tricky part would be finding a syntax for the
special-character that doesn't break our completion-model controllers
(the range has to be set correctly so that it doesn't skip the
character), and making sure that the character combination is invalid
syntax in any possible programming-language, so we don't trigger the
filtering accidentally.

Greetings, David

More information about the KDevelop-devel mailing list