Extensible Emacs-like text editor with GNU Guile Scheme.
- 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
forfind-file
). For the complete list of supported commands, useM-x TAB
. - Fully hackable and extensible with GNU Guile
- Tree-sitter based syntax highlighting (currently only C++ is supported)
- GNU Guile 3.0+ (may support Guile 2.2 but not tested)
- CMake (>= 3.11)
- Conan
- GNU Readline
- Freetype
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
Under the build
directory, run:
../run.sh