Да, я форкнул Klavaro 3.14 и добавил в него режим «работа над ошибками» (error-practice) с анализом Парето. Тренажёр теперь сам записывает каждую ошибку, вычисляет символы, на которые приходится 80% промахов, и генерирует тренировочный текст из реального словаря русского языка, насыщенный именно этими буквами. Форк лежит на GitHub, собрать его на Arch можно за пару минут.
Klavaro, свободный клавиатурный тренажёр (GPL v3), лежит в репозиториях Arch как пакет klavaro. Программа честная и удобная, но есть одна дыра: она показывает общий процент ошибок, а не говорит, какие именно символы у тебя не выходят. Я печатаю по-русски, и у меня вечно путались «ц» и «щ», «х» и «ж». Хотелось не гадать, а видеть список своих слабых мест и тренировать их прицельно.
Так появился форк. Он не меняет механику тренажёра, а добавляет слой анализа поверх: статистика по каждому символу, правило Парето 80/20 и отдельный режим урока, который бьёт точно по проблемным буквам. Подробнее про сам Arch и его экосистему можно почитать в обзоре Arch Linux.
Каждое неверное нажатие записывается в ~/.local/share/klavaro/error_detail_<layout>.log. Для каждого символа хранится: сам символ, его UTF-8 код, сколько раз ошиблись, сколько раз нажали верно, всего попыток и процент ошибок.
Отдельный файл pareto_analysis_<layout>.log собирает символы, дающие 80% всех ошибок. Идея простая: обычно 20% «плохих» клавиш дают 80% промахов. Вот их и тренируем.
Новая кнопка в главном окне. Режим берёт реальный словарь языка (ru.words) и генерирует текст, отдавая предпочтение словам с проблемными символами из Парето-анализа. Вместо случайных упражнений ты получаешь текст, напичканный именно твоими слабыми буквами.
Добавлен вызов setlocale(). Без него интерфейс всегда был английским, даже при русской системной локали. Теперь меню на русском. Плюс починен краш: раньше режим error-practice падал, если данных об ошибках ещё нет.
В статистике режима цель теперь честные 100%, а не заглушка -1%.
Тренируешься как обычно, в любом режиме: Базовый, Адаптируемость, Скорость, Беглость. Ошибки копятся сами. Потом открываешь лог:
$ cat ~/.local/share/klavaro/error_detail_ru.log
Строка выглядит так:
Char UTF8 Wrong Correct Total ErrorRate
ц U+0446 12 3 15 0.8000
То есть «ц» нажали 15 раз, из них 12 мимо, процент ошибок 80%. Дальше смотришь Парето:
$ cat ~/.local/share/klavaro/pareto_analysis_ru.log
Там топ символов с рангами и пометкой, какие входят в 80%. Жмёшь «Error Practice», и тренажёр собирает текст из словаря, где этих букв много. После пары сессий загляни в лог снова: символы, которые перестали быть проблемными, уходят из топа. Прогресс видно по цифрам, а не на глаз.
Зависимости: base-devel intltool gtk3 gtkdatabox curl autoconf automake libtool.
git clone https://github.com/ordanax/klavaro-custom
cd klavaro-custom
autoreconf -fi
./configure
make
sudo make install
Запуск: klavaro. Если не хочешь ставить в систему, собери без sudo make install и запускай ./src/klavaro из каталога сборки. Кстати, если предпочитаешь ставить софт из AUR, у нас есть отдельная инструкция по AUR.
Что дальше: хочу добавить экспорт статистики по сессиям, чтобы видеть динамику по дням, и, возможно, график прямо в тренажёре. Из готового уже работает главное: прицельная тренировка слабых символов. За месяц использования процент ошибок на «ц» и «щ» у меня заметно упал, и теперь это видно не на глаз, а по логам.
Нет, это отдельная сборка. Пакет klavaro из репозитория можно не удалять, но запускать лучше форк, он умеет всё то же самое плюс анализ ошибок.
В ~/.local/share/klavaro/. Если задана переменная $XDG_DATA_HOME, путь берётся от неё.
Нет. Словарь берётся по выбранной раскладке, для английского будет en.words. Логи тоже раздельные: error_detail_en.log, error_detail_ru.log и так далее.
Проверь, что есть хотя бы один лог ошибок. Без данных режим теперь не падает, но и текст не соберёт. Сначала потренируйся в обычных режимах.
Форк Klavaro с режимом «работа над ошибками» и анализом Парето: это способ перестать гадать, какие клавиши у тебя слабые, и начать тренировать их прицельно. Логирование, правило 80/20, генерация текста из реального словаря, фиксы локализации и краша: всё это уже работает и собрано из исходников на Arch. Код открыт под GPL v3, бери, собирай, дорабатывай. Исходники и историю изменений можно посмотреть на GitHub.
Задай вопрос в чате — отвечаем быстро, по делу и без воды.
Комментарии