A Chimera between the best text editor and the best operating system: Vim and Emacs
Replace the GtkEntry based menu with text buffer based one
README: Complete dependencies list and add screenshot


browse  log 



You can also use your local clone with git send-email.


A Chimera between the best text editor and the best operating system: Vim and Emacs.


Devil is a:

  • Text editor
  • Image viewer
  • PDF viewer
  • Web browser
  • Whatever you can program in GNU Guile
  • ... 👹

NOTE: Devil is in a very early development stage, expect bugs, breaking changes and lack of documentation. Feel free to contact me if you have any question or find a bug!


Although Devil is in early development, it already offers some cool features:

  • Usage of GTK4
  • Integrated WebKit
  • Poppler for PDF rendering
  • Image rendering
  • Tree-sitter highlighting support
  • Hackable via GNU Guile (make changes to the editor at runtime via the REPL)
  • It's fast!


Please ensure that you have the following dependencies installed before building (names correspond to debian packages, but should have similar names in other distros, this might help):

  • rust
  • libtree-sitter
  • guile-3.0-dev
  • libclang-dev
  • libpoppler-glib-dev
  • libwebkit2gtk-5.0-dev
  • libsoup-3.0-dev
  • libjavascriptcoregtk-5.0-dev

Currently devil has only been tested in Debian (sid) and Arch Linux, but it should also work in other linux distros.

Download the repository:

git clone https://git.sr.ht/~mikelma/devil_editor
cd devil_editor

Devil requires some nightly features of Rust. Execute the following command to make the nightly🌃 compiler the default choice when building devil:

rustup override set nightly

Then simply execute make to start compiling!

make build

Once compilation finishes, to run the editor:


You can open some files with:

./devil path/to/a/file other/file.other

Type Alt-x to open the commands menu!💃