A modern, hardware-accelerated rewrite of Emacs in C and OpenGL
- Hardware-accelerated rendering powered by OpenGL through the Lume engine
- Blazing-fast performance with native C implementation
- Runtime extensibility using C without VM overhead
- Tree-sitter integration for robust syntax analysis
-
Smart Cursor Behavior
- Crystal cursor mode that adapts to syntax context
- Customizable blinking with configurable intervals
- Emacs-style intelligent cursor movement
-
Sophisticated Buffer Management
- Independent window scrolling
- Per-window cursor positions (not true TODO)
-
Emacs-Compatible Features
- Kill ring for advanced cut/paste operations
- Mark and region
- Incremental search (I-search)
- Electric pair and rainbow mode
- Tree-sitter powered syntax highlighting
- Flexible window management
C-x C-f
- Find fileC-x C-s
- Save buffer
C-n
- Next lineC-p
- Previous lineC-f
- Forward characterC-b
- Backward characterM-f
- Forward wordM-b
- Backward wordC-e
- Move to end of lineC-a
- Move to beginning of lineM->
- End of bufferM-<
- Beginning of buffer
C-space
- Set markC-d
- Delete character/kill regionC-k
- Kill line/kill regionC-y
- YankM-w
- Kill ring saveC-w
- Kill regionC-o
- Open lineC-O
- Duplicate line
C-s
- Incremental search forwardC-r
- Incremental search backward
M-q
/C-x 0
- Delete windowM-j
/C-x 2
- Split window belowM-k
- Split window aboveM-h
- Split window leftM-l
/C-x 3
- Split window right
M-=
- Next themeM--
- Previous themeC-=
- Increase font sizeC--
- Decrease font size
For the complete list of keybindings, start reading the keyCallback()
function in main.c
.
- FreeType
- Tree-sitter
- OpenGL 4.6+
- GLFW
- Lume engine
- Clone and install the Lume library:
git clone https://github.com/laluxx/lume.git
cd lume
make && make install
- Clone build and run Glemax:
cd
git clone https://github.com/laluxx/glemax.git
cd glemax
make && ./glemax
- Iedit mode
- Rainbow delimiters mode
- Undo system
- Fringe implementation
- Dired and wdired
- Proced functionality
- Org-mode support
- Runtime variable/function inspection
- Integrated debugger
- Eshell implementation
- EWW browser
- C evaluation support
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.