Проект «Текстовый редактор (псевдографика)»
Реализовать простой текстовый редактор наподобие того, что реализован в FAR Manager.
Использовать библиотеку для работы с консольной псевдографикой.
Функциональность:
- Режим просмотра/редактирования.
- Корректное отображение длинных строк (вариант отображения с принудительным переносом).
- Корректное отображение символов табуляции.
- Навигация клавишами PgUp/PgDown, стрелками влево/вправо/вверх/вниз.
- Сохранение отредактированного файла.
В режиме просмотра:
- Клавиши навигации перемещают всю страницу целиком.
- Смена (например по F2) режима переноса длинных строк (не переносятся / принудительно переносятся).
- Смена (например по F12) режима отображения табуляции (tab = 4 / 8 пробелов).
В режиме редактирования:
- Клавиши навигации перемещают курсор, редактор автоматически перемещает страницу так чтобы курсор был всегда виден на экране.
- Текст можно вставлять в любом месте файла.
- Enter - перевод строки, Del - удаление символа в позиции курсора, Backspace - удаление символа перед позицией курсора.
- Возможность сохранения файла (например по F2).
Имя файла и режим открытия передается через аргумент командной строки:
editor -e filename
-- открыть/создать файл для редактирования
editor -r filename
-- открыть файл для просмотра
Как вариант дальнейшего усложнения
- поддержка таблиц кодировок (KOI-8 / CP886 / Windows-1251)
- поиск подстроки в режиме просмотра, поиск и замена в режиме редактирования