All Projects → ubolonton → Emacs Module Rs

ubolonton / Emacs Module Rs

Rust binding and tools for emacs-module (Emacs's dynamic module support)

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Emacs Module Rs

Rustler
Safe Rust bridge for creating Erlang NIF functions
Stars: ✭ 3,052 (+1403.45%)
Mutual labels:  ffi, binding
Pyo3
Rust bindings for the Python interpreter
Stars: ✭ 5,110 (+2417.24%)
Mutual labels:  ffi, binding
Emacs Tree Sitter
Tree-sitter for Emacs
Stars: ✭ 409 (+101.48%)
Mutual labels:  emacs, binding
Elispcheatsheet
Quick reference to the core language of Emacs ---Editor MACroS.
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Smudge
Control the Spotify app from within Emacs.
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Emacs Direnv
direnv integration for emacs
Stars: ✭ 194 (-4.43%)
Mutual labels:  emacs
Company Sourcekit
Completion for Swift projects via SourceKit with the help of SourceKitten
Stars: ✭ 203 (+0%)
Mutual labels:  emacs
Super Save
Save Emacs buffers when they lose focus
Stars: ✭ 184 (-9.36%)
Mutual labels:  emacs
Lsp Treemacs
lsp-mode ❤️ treemacs
Stars: ✭ 200 (-1.48%)
Mutual labels:  emacs
Build Emacs For Macos
Somewhat hacky script to automate building of Emac.app on macOS.
Stars: ✭ 192 (-5.42%)
Mutual labels:  emacs
Emacs
🧛🏻‍♂️ Dark theme for Emacs
Stars: ✭ 190 (-6.4%)
Mutual labels:  emacs
Cairocffi
CFFI-based cairo bindings for Python.
Stars: ✭ 186 (-8.37%)
Mutual labels:  binding
Evil Snipe
2-char searching ala vim-sneak & vim-seek, for evil-mode
Stars: ✭ 196 (-3.45%)
Mutual labels:  emacs
Emacs History
Historical Emacs Software Preservation
Stars: ✭ 184 (-9.36%)
Mutual labels:  emacs
Evil Multiedit
Multiple cursors for evil-mode, based on iedit
Stars: ✭ 200 (-1.48%)
Mutual labels:  emacs
Org Books
Reading list management with org mode
Stars: ✭ 186 (-8.37%)
Mutual labels:  emacs
Hackernews.el
Hacker News client for Emacs
Stars: ✭ 200 (-1.48%)
Mutual labels:  emacs
Know Your Http Well
HTTP headers, media-types, methods, relations and status codes, all summarized and linking to their specification.
Stars: ✭ 2,205 (+986.21%)
Mutual labels:  emacs
El Compilador
An SSA-based compiler for Emacs Lisp
Stars: ✭ 187 (-7.88%)
Mutual labels:  emacs
Dimmer.el
Interactively highlight which buffer is active by dimming the others.
Stars: ✭ 194 (-4.43%)
Mutual labels:  emacs

Emacs Module in Rust

crates.io doc.rs Build Status

User Guide | Change Log | Examples

This provides a high-level binding to emacs-module, Emacs's support for dynamic modules.

Code for a minimal module looks like this:

use emacs::{defun, Env, Result, Value};

emacs::plugin_is_GPL_compatible!();

#[emacs::module(name = "greeting")]
fn init(_: &Env) -> Result<()> { Ok(()) }

#[defun]
fn say_hello(env: &Env, name: String) -> Result<Value<'_>> {
    env.message(&format!("Hello, {}!", name))
}
(require 'greeting)
(greeting-say-hello "Emacs")

Example Modules

Development

  • Building:
    bin/build
    
  • Testing:
    bin/test
    
  • Continuous testing (requires cargo-watch):
    bin/test watch
    

On Windows, use PowerShell to run the corresponding .ps1 scripts.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].