Bug 559496 - [content assist] UI: support subword matching
Summary: [content assist] UI: support subword matching
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.15   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 4.15 M3   Edit
Assignee: Julian Honnen CLA
QA Contact: Roland Grunberg CLA
URL:
Whiteboard:
Keywords: noteworthy
: 561035 (view as bug list)
Depends on: 547510
Blocks: 553537
  Show dependency tree
 
Reported: 2020-01-24 04:00 EST by Noopur Gupta CLA
Modified: 2020-03-18 14:42 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Noopur Gupta CLA 2020-01-24 04:00:57 EST
The UI part for bug 547510.
Comment 1 Noopur Gupta CLA 2020-01-24 04:04:51 EST
https://git.eclipse.org/r/#/c/155417/
Comment 2 Noopur Gupta CLA 2020-01-24 05:13:12 EST
Thanks, Julian for the patch. 

We keep separate bugs in respective components to track the changes going into specific repositories. Hence, moved the jdt.ui part to this bug.
Comment 4 Noopur Gupta CLA 2020-02-17 05:42:16 EST
Julian, please add an N&N entry for this.

Git repo: ssh://git.eclipse.org/gitroot/www.eclipse.org/eclipse/news.git
Gerrit: ssh://git.eclipse.org:29418/www.eclipse.org/eclipse/news.git
Live website: https://www.eclipse.org/eclipse/news/4.15/
Comment 5 Eclipse Genie CLA 2020-02-17 06:54:32 EST
New Gerrit change created: https://git.eclipse.org/r/157820
Comment 7 Roland Grunberg CLA 2020-02-18 10:26:03 EST
Thanks for handling this for M3.
Comment 8 Roland Grunberg CLA 2020-02-19 14:14:25 EST
Verified for 4.15 M3 using I20200219-0600 build
Comment 9 Sarika Sinha CLA 2020-02-20 01:04:54 EST
Can't we use the preference from "Show substring matches" for this purpose also and remove "Show subword matches" ?
Comment 10 Lars Vogel CLA 2020-02-20 01:23:41 EST
(In reply to Sarika Sinha from comment #9)
> Can't we use the preference from "Show substring matches" for this purpose
> also and remove "Show subword matches" ?

+1
Comment 11 Julian Honnen CLA 2020-02-20 02:17:29 EST
(In reply to Sarika Sinha from comment #9)
> Can't we use the preference from "Show substring matches" for this purpose
> also and remove "Show subword matches" ?
Personally I would remove all three preferences and hardcode them to be enabled (that's what IntelliJ does).
But personal preferences are weird, I'm certain there are developers that would not like that...

Note: subword matches are a superset of both substring and camel case matches. With enabled substring matches, you could then no longer disable camel case.
Comment 12 Roland Grunberg CLA 2020-02-20 10:20:44 EST
(In reply to Julian Honnen from comment #11)
> Personally I would remove all three preferences and hardcode them to be
> enabled (that's what IntelliJ does).
> But personal preferences are weird, I'm certain there are developers that
> would not like that...

I agree here. It was only disabled because of how close to M3 we were merging it, and probably wouldn't want to risk any kind of bug being missed into the release given how frequently completion is used. With that said, I can file a bug to have it enabled by default first thing for 2020-06 M1.

I think if we want to simplify things to one checkbox, we might as well also make the subword match be the implementation and remove the others, since as you mention, it is the more general case.
Comment 13 Lars Vogel CLA 2020-02-20 10:31:43 EST
(In reply to Roland Grunberg from comment #12)
> (In reply to Julian Honnen from comment #11)
> > Personally I would remove all three preferences and hardcode them to be
> > enabled (that's what IntelliJ does).
> > But personal preferences are weird, I'm certain there are developers that
> > would not like that...
> 
> I agree here. It was only disabled because of how close to M3 we were
> merging it, and probably wouldn't want to risk any kind of bug being missed
> into the release given how frequently completion is used. With that said, I
> can file a bug to have it enabled by default first thing for 2020-06 M1.

Please do so, makes sense.

> I think if we want to simplify things to one checkbox, we might as well also
> make the subword match be the implementation and remove the others, since as
> you mention, it is the more general case.

+1
Comment 14 Lars Vogel CLA 2020-02-20 12:04:00 EST
Roland, can you please also create a bug for the removal of the inferior sub-implementations
Comment 15 Roland Grunberg CLA 2020-02-20 16:15:24 EST
(In reply to Lars Vogel from comment #14)
> Roland, can you please also create a bug for the removal of the inferior
> sub-implementations

We may have spoken too soon on this. There are differences. For example :

System.nso|

With just subword matching enabled, will not matching anything
With substring matching enabled, it will match console()

I think the first step would be to enable subword matching, and disable substring + camel case matching in the relevant tests and see what cases aren't being covered.
Comment 16 Roland Grunberg CLA 2020-03-18 14:42:33 EDT
*** Bug 561035 has been marked as a duplicate of this bug. ***