Skip to content
Fast and precise fuzzy scoring/matching utils for Emacs, powered by rust
Emacs Lisp Rust
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

Fuz.el – Fast and precise fuzzy match scoring/matching utils for Emacs.


fuz.el provides some fuzzy match scoring/matching functions for Emacs, they are powered by Rust so it’s fast enough.

Why fuz?

  • It’s powered by Rust, so it can be much more faster than Elisp implementation
  • It use a better subsequence alignment algorithm (O(m*n) time complexity)


The core part of fuz.el is written in Rust, provided as a dynamic module, so you need an Emacs at least 25.1, compiled with dynamic module support.

  1. Setup Rust compile toolchain, you can check here for some information.
  2. And you also need LLVM.
  3. Clone the repository and put it under your Emacs’s load-path
  4. Load fuz.el. Run fuz-build-and-load-dymod to build dynamic module.

Add this snippet to your .emacs.d to make compilation automatically

(require 'fuz)
(unless (require 'fuz-core nil t)


Using with completion frameworks


fuz.el can help you enhance your helm fuzzy searching quality and speed with simple setup.

(with-eval-after-load 'helm
  (require 'helm-fuz)


Please see

Company (WIP)

Using fuz’s score/match function in your Elisp

Add documentation here


Add a benchmark here

Support me

如果你觉得这个插件可以帮到你, 欢迎使用爱发电支持我 :)

If you like fuz, you can buy a cup of coffee for me :)

You can’t perform that action at this time.