В: рядок без розривів рядків *
Дозволити користувачеві редагувати та надсилати рядок
Вихід: модифікована рядок (необов'язково із заднім рядком)
Редактор рядків повинен як мінімум дозволяти користувачеві:
перемістити видимий курсор вліво і вправо
вставити та / або перезаписати символи на позиції курсору
видалити символи в позиції курсору
подати новий рядок, тобто припинити редагування, тому що змінений рядок буде повернутий / надрукований / відображений / збережений… (без іншого тексту)
Оцінено, але не потрібно:
пояснення вашого коду.
посилання на веб-сайт для тестування, який може продемонструвати вашу програму / функцію
анімоване зображення, що демонструє використання (TIO, наприклад, не дозволяє взаємодія)
Примітка:
прив'язки клавіш - лише пропозиції
GUI або візуальний стиль не потрібно
Приклади
Далі курсор зображено с _
.
В: Just some text
Дозволити користувачеві редагувати:
Just some text_
Користувач натискає ←(ліва клавіша зі стрілкою) дев'ять разів
Just ̲some text
Користувач натискає Delчотири рази
Just ̲ text
Користувач натискає Користувач натискає :any
Just any_text
Enter
Just any text
В: Remove me
Дозволити користувачеві редагувати:
Remove me_
Користувач натискає Backspaceдев'ять разів
_
Користувач натискає : (порожній рядок)Enter
* Щоб запобігти тривіальним рішенням редактора, це повинно або надаватися за допомогою іншого способу введення, ніж команди редагування, або бути відокремленим від них новим рядком або подібним.