A text editor inspired by Emacs with Lua at it's core
|
|
1 місяць тому | |
|---|---|---|
| documentation | 1 місяць тому | |
| examples | 1 місяць тому | |
| include | 1 місяць тому | |
| scripts | 1 місяць тому | |
| src | 1 місяць тому | |
| tests | 1 місяць тому | |
| .envrc | 1 місяць тому | |
| .gitignore | 1 місяць тому | |
| CMakeLists.txt | 1 місяць тому | |
| CONTINUATION_PROMPT.md | 1 місяць тому | |
| README.md | 1 місяць тому | |
| init.lua | 1 місяць тому | |
| shell.nix | 1 місяць тому | |
| test.txt | 1 місяць тому | |
| themes.lua | 1 місяць тому |
A modern text editor in C++20, inspired by Emacs with powerful Lua scripting support.
./scripts/build.sh
./build/lumacs [file]
C-x t v (Dracula), C-x t e (Everforest), C-x t d (Default)C-x 2 (horizontal), C-x 3 (vertical), C-x 0 (close)C-x b (switch), C-x k (kill), C-x C-b (list)F3/F4 (macros), C-x r s/i (registers), C-x r k/y/t (rectangles)mkdir build && cd build
cmake ..
cmake --build .
nix-shell
./scripts/build.sh
lumacs/
├── src/ # Core implementation
│ ├── main_ncurses.cpp # ncurses frontend
│ ├── editor_core.cpp # Editor engine
│ ├── theme.cpp # Theme system
│ └── lua_api.cpp # Lua scripting API
├── include/lumacs/ # Public headers
│ ├── editor_core.hpp # Editor core interface
│ ├── theme.hpp # Theme system
│ └── lua_api.hpp # Lua API headers
├── tests/ # Unit tests
├── scripts/ # Build and utility scripts
├── examples/ # Test files and examples
├── documentation/ # Detailed documentation
├── init.lua # Main configuration
├── themes.lua # Theme definitions
└── CMakeLists.txt # Build configuration
The project uses modern C++ practices:
std::optional for fallible operationsIEditorView)./scripts/test.sh
init.lua for keybindings and configurationthemes.lua for theme customizationsrc/theme.cppREADME.md - This fileCONTINUATION_PROMPT.md - Development continuation guidedocumentation/ - Detailed feature documentationexamples/ - Test files and usage examplesTBD