This is a custom text editor developed in C++ with terminal support, designed to function similarly to popular word processors. It includes real-time typing, cursor movement, file handling, word count, autocomplete, undo/redo, auto-capitalization,spell check and color changing feature.
- Functionality: As you type, the text appears instantly on the terminal screen.
- Core Functions:
runEditor(),displayText() - Description: Captures each key press and updates the display without delay, providing an immediate typing response.
- Functionality: Move the cursor using arrow keys (left, right, up, down).
- Core Functions:
moveCursorLeft(),moveCursorRight(),moveCursorUp(),moveCursorDown(),setCursorPosition() - Description: Allows easy navigation through the document using the arrow keys. The cursor can move horizontally or vertically in the text.
- Functionality: Move the cursor using arrow keys (left, right, up, down).
- Core Functions:
backspace(),deleteChar() - Description: Allows user to use the backspace and delete keys to rectify mistakes.
- Functionality: Open and save files to/from the system.
- Core Functions:
updateTextFile() - Description: Saves your work to a new txt file, which gets updated simultaneously as the user types on the terminal.
- Functionality: Display the number of words in the document.
- Core Functions:
word_count() - Description: Calculates and displays the word count in real-time as the user types, ensuring up-to-date information.
- Functionality: Auto-completes words based on partially typed input.
- Description: Uses a predefined list of words stored in a HashMap to provide suggestions. The user can press
Tabto auto-complete the word.
- Functionality: Undo and redo recent changes to the document.
- Core Functions:
undo(),redo(),isStateChanged() - Description: Allows multiple levels of undo(using
Ctrl+Z) and redo(usingCtrl+Y) operations using a stack to track changes. Undo reverts the last change, and redo reinstates it.
- Functionality: Automatically capitalizes the first letter of each new sentence as well as after a punctuation mark.
- Core Functions:
shouldCapitalize(),insert_Capital(),insertCapitalNewLine(),insert_capital_i() - Description: Detects when the user starts a new sentence and capitalizes the first letter, improving typing speed and accuracy.
- Functionality: Changes color of text in the terminal
- Core Functions:
setTextColour() - Description: Pn pressing
Ctrl+R, changes color of text on the terminal from a fixed set of colors for beautification.
- C++ Compiler (like GCC)
- Terminal or Console to run the application
Clone the repository:
git clone https://github.com/yourusername/your-repo-name.git-
Sarah Fatima — Implemented Undo, Redo, and Auto Capitalization features.
-
Satvik Garg — Developed Real-time Display, File Handling, and Autocomplete functionality.
-
Sohom Sarkar — Added Cursor Movement, Backspace & Delete, and Spellchecker features.
-
Soham Kulkarni — Integrated Color Change and Live Word Count functionality.