jeancroy / fuzz-aldrin-plus

Sublime text like fuzzy filtering - compatible with atom/fuzzaldrin
MIT License
269 stars 21 forks source link

PascalCase scoring #7

Closed AustP closed 9 years ago

AustP commented 9 years ago

First, I wanna say thanks to you for this awesome package. It's considerably better. Here is a use case where I think the scoring could use some improvement:

image

I expect JavaScript to be the first item. JSON puts a wrench in the system so if it must stay on top, I'd expect JavaScript to be the second item.

image

Pretty much same scenario as the one above. CoffeeScript should be the first item, but if CSS must stay on top, CoffeeScript should be the second item.

jeancroy commented 9 years ago

Where is this ? Language selection ? I do not believe fuzzaldrin-plus is active for that menu. (right now only fuzzy finder and autocomplete-plus use the new version)

jeancroy commented 9 years ago

Ok so I tried in autocomplete. Changed space by underscore to keep word together. Both second choice assumption are met. But unfortunately I cannot relax more the length penalty. (btw snippet are hardcoded to be on top)

img img

jeancroy commented 9 years ago

Ultimately there was a design decision to give equal score to consecutive at the start of a word, CamelCase, snake_case, kebab-case, or even folder/file and object.property "case". As a general purpose tool I see no compelling argument to assume the user will want one over the other. Instead I detect pattern (chain of related character) and work on those.

(*Actually acronym of any pattern case are given a sightly better score than consecutive but that get offset by match that are less compact / later in the string)

Because the second item in order argument pass I'll close this. I'll however keep the JSON / JS example in mind because it's not far from passing.

Thank you for the report :)