A high-performance terminal-based rich text editor designed for speed and functionality. It supports autosuggestions, undo/redo, and customizable shortcuts. The editor leverages advanced data structures to ensure smooth and efficient text editing.
- Autosuggestions: Real-time autocomplete powered by Trie.
- Undo/Redo: Stack-based undo/redo operation.
- GapBuffer Efficiency: Smooth editing and fast cursor movement.
- Custom Shortcuts: Bind frequently used actions for faster workflow.
- GapBuffer: For efficient text editing and cursor movement within a line.
- GapBufferLinkedList: Extends GapBuffer to support multi-line text editing.
- Trie: Powers the autosuggestion system for real-time word predictions.
- Stack: Implements undo/redo functionality.
- Install a Nerd Font for enhanced terminal visuals from nerdfonts.com.
- Clone the repository and build the project with C++14 support:
Ensure your compiler supports C++14.
git clone https://github.com/abdxdev/TerminalBasedRichTextEditor.git cd TerminalBasedRichTextEditor start TerminalBasedRichTextEditor.sln - Launch the editor in a terminal supporting Nerd Fonts.
Note: You need to set the font in your terminal settings.
Ctrl+S: Save fileESC: Quit editor
Ctrl+Z: UndoCtrl+Y: RedoArrow Keys: Move cursor
TaborEnter: Apply suggestionEsc: Dismiss suggestion
F1: Change foreground colorF2: Change background colorF3: Toggle autosuggestionsF4: Refresh screenF5: Change cursor styleCtrl+B: Toggle boldCtrl+I: Toggle italicsCtrl+U: Toggle underlineCtrl+T: Toggle strikethrough
This project is licensed under the MIT License - see the LICENSE file for details.

