SpeedReaderRust
RSVP (Rapid Serial Visual Presentation) оверлей для скорочтения. Открывает файл и показывает слова одно за другим в центре экрана. Ключевая особенность — подсветка центральной буквы (ORP — Optimal Recognition Point), которая позволяет глазу быстрее схватывать слово.
Возможности
- Пауза и прыжок в редактор на точную позицию (пробел)
- Настройка скорости (WPM) и команды редактора
- Перетаскивание оверлея мышью
- Работает с любым редактором: Zed, VS Code, Vim, Helix
- Открытый исходный код (MIT)
Установка
cargo install speed-reader
Или из репозитория: cargo install --path gui
Использование в Zed
1. Глобальный таск
Сделай так, чтобы speed-reader был доступен из любого проекта. Для этого добавь таск в глобальный конфиг Zed:
~/.config/zed/tasks.json:
[
{
"label": "SpeedReader: Read current file",
"command": "speed-reader",
"args": ["$ZED_FILE"],
"tags": ["speed-reader"],
"hide": "on_success"
}
]
Файл — это массив тасков. Если там уже есть другие таски — просто добавь этот объект в массив.
"tags": ["speed-reader"] не обязателен, но помогает фильтровать в палитре команд. "hide": "on_success" убирает терминал после закрытия оверлея — не захламляет интерфейс.
2. Запуск
Cmd+Shift+P → начни печатать SpeedReader → выбери таск.
3. Хоткей (рекомендуется)
Чтобы читать любой файл одной кнопкой — назначь хоткей в ~/.config/zed/keybindings.json:
{
"context": "Editor",
"bindings": {
"cmd-shift-r": ["task::Spawn", { "task_name": "SpeedReader: Read current file" }]
}
}
После этого Cmd+Shift+R из любого открытого буфера запускает RSVP-чтение.
4. Конфигурация редактора (не только Zed)
По умолчанию speed-reader открывает редактор по адресу файл:строка:колонка. Можно настроить команду редактора в ~/.config/speed-reader/config.json:
{
"editor_cmd": "code",
"wpm": 300
}
Поддерживаются Zed, VS Code, Vim, Helix и любой редактор с CLI-синтаксисом editor file:line:col.