#emacs #module #dynamic

emacs-rs-module

An Emacs dynamic module that helps developing other dynamic modules, in Rust

11 releases (7 breaking)

✓ Uses Rust 2018 edition

0.11.0 Aug 5, 2019
0.10.1 Jul 19, 2019
0.7.0 Apr 15, 2019
0.6.0 Mar 26, 2019
0.1.2 Dec 23, 2017
Download history 5/week @ 2019-04-19 2/week @ 2019-04-26 12/week @ 2019-05-03 19/week @ 2019-05-10 19/week @ 2019-05-17 18/week @ 2019-05-24 1/week @ 2019-05-31 54/week @ 2019-06-07 36/week @ 2019-06-21 27/week @ 2019-06-28 63/week @ 2019-07-05 27/week @ 2019-07-12 28/week @ 2019-07-19 23/week @ 2019-07-26

109 downloads per month

BSD-3-Clause

4KB

Emacs Rust Module

This is an Emacs dynamic module that aims to streamline the development of other Emacs dynamic modules, written in Rust.

Installation

  • Build
    cargo build
    
  • Load the module in Emacs
    (module-load "/path/to/emacs-rs-module/target/debug/libemacs_rs_module.dylib")
    

Live reloading another module

To be reloadable, the module must export an entry point named emacs_rs_module_init. See test-module.

Run this in Emacs after each cargo build to reload the module:

(rs-module/load "/path/to/my-module/target/debug/libmy_module.dylib")

TODOs

  • Add debug facilities.
  • Define interface for unloading.
  • Report ERT test results to cargo.

Dependencies

~1.7–3.5MB
~72K SLoC