/tower-of-babix

Run snippets for many languages with Emacs and Nix

Primary LanguageEmacs Lisp

Tower of Babix

Tons of languages. Tons of snippets. Run them all!

Quickstart:

If you have Nix then clone the repo and:

nix-env -i -f .
babix babix.org

The initial install will take ..a while.

Once running, Ctrl-C Ctrl-C on any code-block.

./etc/demo.gif

Installation:

Add the following to your system or user packages:

pkgs.fetchFromGitHub {
      owner = "dustinlacewell";
      repo = "tower-of-babix";
      rev = "a6c8ece992bffeae3788425dd4b3b5871e66a900";
      sha256 = "0ww2q5gykxm802z1kffmnrfahjlx123j1gfszklpsv0b1fccm100";
}

Usage:

babix [BABIX-OPTS] [EMACS-OPTS] FILE

BABIX-OPTS:
  -h             list usage
  -themes        list theme names & exit
  -theme NAME    use theme called NAME

EMACS-OPTS:
  typical Emacs options

What is this?

It’s kind of like Rosetta Code, but you can actually run all the snippets.

By leveraging Nix, you can browse and execute snippets from our library right inside Emacs.

Of course you can write your own snippets too!

How does it work?

Emacs has a crazy package called Orgmode which is like a souped up Markdown made by nerd geniuses (god bless them).

One of its features is that it can execute code-blocks!

But in order to execute block of various languages, you need all those compilers and runtimes.

Nix makes it easy to get them all to you.

What languages are included?

  • Awk
  • Bash
  • C
  • C++
  • C#
  • D
  • Emacs Lisp
  • F#
  • Fortran
  • Go
  • Javascript
  • Lua
  • NASM
  • OCaml
  • Python
  • R
  • Ruby
  • Rust
  • Scheme