Review Request 112787: Completion filtering: Abbreviation expansion and "contains" filtering
Sven Brauch
svenbrauch at googlemail.com
Sun Sep 29 11:15:03 UTC 2013
> On Sept. 22, 2013, 2:44 p.m., Vlas Puhov wrote:
> > Wow, that's a really cool feature!!
> >
> > Just a suggestion to make it even better:
> > It'd be nice if the second case(contains) worked something more like this:
> > completion list should appear when an entered letter match and the matched letter is a capital letter or prepended by _. E.g. given two suggestion entries:
> > cursorToCoordinate.
> > cursorPositionCoordinate.
> > Type t, the first suggestion appears (..To...), than o (to) - still the first suggestion. If initially p was typed the second suggestion should appear (..Position...).
> > If initially, for example, s was typed nothing should appear.
> >
> > Use-case: Sometimes it's difficult to remember the whole function/variable name, but very often you know for sure that it contains e.g. "position" word, so you most likely type: "po..." And definitely not "os", nor "si" nor something else from the middle of the "position"...
> >
> > Anyway, it's just my opinion, maybe initial 4 characters limitation fits better...
>
> Sven Brauch wrote:
> Very good idea! I'll do that.
>
> Dominik Haumann wrote:
> Did you already implement the suggestions by Vlas? I do like the idea. We should be careful and not show the completion list too often. We already have several Bug reports about the completion widget being in the way, every time one has to press Esc to close the widget again.
>
> Does the patch automatically invoke the widget, or is it only on ctrl+space?
No, I still have to do that, it's very simple though.
The patch doesn't affect in which cases the completion list is opened. It just changes the condition which needs to be met for an item to be in the list of filtered items, assuming the list is already active.
The only thing it might affect is closing the completion list, which might happen less often since there's generally more visible items now. The "hide list on exact match" feature should still work, though.
- Sven
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/112787/#review40478
-----------------------------------------------------------
On Sept. 22, 2013, 11:45 a.m., Sven Brauch wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/112787/
> -----------------------------------------------------------
>
> (Updated Sept. 22, 2013, 11:45 a.m.)
>
>
> Review request for Kate and KDevelop.
>
>
> Description
> -------
>
> (I'll put this up here for discussion, I think a bit more work is required before submission.)
>
> This patch implements less restrictive rules for completion list filtering. Currently, an item is only displayed if it starts with the typed text. In addition to that, I'd like to allow:
>
> 1) Abbreviation expansion; see first screnshot. This matches entries where the entered text matches the (beginning of) the camelCased or under_scored entry name's first letters.
>
> 2) Match if the entry only contains the word. This probably needs a bit of thinking to not disrupt existing workflows. My current solution only uses this filter if the length of the entered text is 4 or more characters.
>
> What do you think?
>
> Do you think this should be configurable?
>
>
> Diffs
> -----
>
> part/completion/katecompletionmodel.h 088ac19
> part/completion/katecompletionmodel.cpp accd5e4
>
> Diff: http://git.reviewboard.kde.org/r/112787/diff/
>
>
> Testing
> -------
>
>
> File Attachments
> ----------------
>
> abbreviation expansion
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/17/matching.png
> "contains" matching (if length > 3)
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/17/matching1.png
>
>
> Thanks,
>
> Sven Brauch
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20130929/975bcd0b/attachment.html>
More information about the KDevelop-devel
mailing list