The Haskell-Scriptable Editor
Browse cluster: Haskell tooling and libraries →Yi is a collection of Haskell packages that serve as building blocks for creating customized text editors. The project is structured into four modular components: frontends (including textual and graphical options via yi-frontend-vty and yi-frontend-pango), actions organized around three monadic DSLs for buffer, editor, and IO-level operations, keymaps supporting vim-like, emacs-like, and cua-like bindings, and glue code to integrate these parts. The ecosystem also includes several plugins such as yi-fuzzy-open for file searching, yi-intero for Haskell development support via intero integration, yi-keymap-vim for vim keybindings, and yi-snippet for snippet editing.