Skip to content
This repository has been archived by the owner on Dec 5, 2023. It is now read-only.

A command-t/quicksilver inspired string ranking algorithm for autocompletion.

License

Notifications You must be signed in to change notification settings

rapportive-oss/jquery-fuzzymatch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jQuery.fuzzyMatch

jQuery.fuzzyMatch implements a fuzzy-string-matching algorithm inspired by QuickSilver and Command-T in javascript.

It is designed for use as part of an autocompleter, where a finite list of possible strings are to be matched against the few characters that the user has typed.

It offers some improvement over existing prefix-based matches, though it is careful to ensure that if a prefix match has been typed, it will be shown first.

Example

To use this with jQuery.ui.autocomplete, you do:

    $("input").autocomplete({
        source: function (context, callback) {
            callback($(['dog', 'cat', 'cow']).filter(function (a) {
                // Only show items which match
                return $.fuzzyMatch(a, context.term).score;
            }).sort(function (a, b) {
                // And sort them by matchiness.
                var score_a = $.fuzzyMatch(a, context.term).score,
                    score_b = $.fuzzyMatch(b, context.term).score;

                return score_a < score_b ? -1 : score_a === score_b ? 0 : 1;
            }));
        },
        delay: 0
    });

Meta-foo

This is all licensed under the MIT license, contributions are most welcome.

About

A command-t/quicksilver inspired string ranking algorithm for autocompletion.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published