Barebones terminal emulator built with ReasonML + Revery + libvterm
A terminal emulator built with Revery.
This is a barebones terminal emulator factored out from the work to include a terminal emulator in Onivim 2.
It's also a fun exploration in leveraging an Elm-style architecture in a natively compiled application.
glibtool
(brew install libtool
)npm install -g [email protected]
esy install
esy build
esy run
This is just meant as an exploration, and isn't production-ready. In particular, there are some pieces missing:
openpty
API which is not available on WindowsThese would all be great contribution opportunities, though!
src/bin/App.re
- this is the entry point for the application (where we start the window, wire up our store).src/bin/Model.re
- this is the heart of our application - that provides the definition of Model.t
as well as how it changes over time (by providing an updater
function).src/lib/ReveryTerminal.rei
- contains cross-platform utilities for working with a terminal.src/pty
- small OCaml binding to the openpty
system call, to create a pseudoterminal.We also use the JetBrains Mono font.
MIT