Skip to content

jcs090218/flx-c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

License: MIT Release

flx-c

Rewrite emacs-flx in C

CI

🔧 Usage

flx_result* result = flx_score("buffer-file-name", "bfn");

if (result == NULL) {
    return -1;
}

printf("Score: %d\n", result->score);

for (int i = 0; i < arrlen(result->indices); ++i) {
    printf("idicies: %d %d\n", i, (*result).indices[i]);
}

flx_free(result);

🛠 Development

How to detect memory leaks: (macOS only)

# leaks -atExit -- ./path/to/exe/test_flx

On Linux, you should use Valgrind instead!

🔍 See Also

  • flx - Original algorithm in Emacs Lisp
  • flx-rs - Rewrite emacs-flx in Rust for dynamic modules
  • FlxCs - Rewrite emacs-flx in C#
  • flx-ts - Rewrite emacs-flx in TypeScript, with added support for JavaScript
  • flx-zig - Rewrite emacs-flx in Zig

⚜️ License

flx-c is distributed under the terms of the MIT license.

See LICENSE for details.