Sort emoji by shortcodes for autocomplete so that :-1 and :+1 first results are correct

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
pull/21833/head
Michael Telatynski 2020-04-11 18:09:28 +01:00
parent c000583099
commit 3a0e1aeeaf
1 changed files with 4 additions and 0 deletions

View File

@ -100,6 +100,10 @@ export default class EmojiProvider extends AutocompleteProvider {
// then sort by score (Infinity if matchedString not in shortname)
sorters.push((c) => score(matchedString, c.shortname));
// then sort by max score of all shortcodes, trim off the `:`
sorters.push((c) => {
return Math.min.apply(null, c.emoji.shortcodes.map(s => score(matchedString.substring(1), s)));
});
// If the matchedString is not empty, sort by length of shortname. Example:
// matchedString = ":bookmark"
// completions = [":bookmark:", ":bookmark_tabs:", ...]