Skip to content

Jimx-/zem

Repository files navigation

ZEM

Extensible Emacs-like text editor with GNU Guile Scheme.

screenshot

Features

  • Emacs-like editing: ZEM uses Emacsy to provide an Emacsy feel (keymaps, minibuffer with completion, major & minor modes, etc.). Default key bindings are the same as vanilla Emacs (e.g. C-x C-f for find-file). For the complete list of supported commands, use M-x TAB.
  • Fully hackable and extensible with GNU Guile
  • Tree-sitter based syntax highlighting (currently only C++ is supported)

Installation

Requirements

  1. GNU Guile 3.0+ (may support Guile 2.2 but not tested)
  2. CMake (>= 3.11)
  3. Conan
  4. GNU Readline
  5. Freetype

Building

Clone this repo first:

git clone https://github.com/Jimx-/zem.git
cd zem
git submodule update --init --recursive

Build the editor with:

mkdir build
conan install . --output-folder=build --build=missing --settings=build_type=Debug
cd build
ln -s ../data/monospace.ttf
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake
make

Usage

Under the build directory, run:

../run.sh

About

Extensible Emacs-like text editor with Guile

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published